Ruby#SSLを利用したサーバーとクライアント
文字を大文字にするサーバー
server.rb
require 'socket'
require 'openssl'
include OpenSSL
ctx = SSL::SSLContext.new()
ctx.cert = X509::Certificate.new(File.read('server-cert.pem'))
ctx.key = PKey::RSA.new(File.read('server-key.pem'))
svr = TCPServer.new(4443)
serv = SSL::SSLServer.new(svr, ctx)
socket = serv.accept
text = socket.gets
socket.puts(text.upcase)
"hello"を送るだけのクライアント
client.rb
require 'socket'
require 'openssl'
include OpenSSL
soc = TCPSocket.new('localhost', 4443)
socket = SSL::SSLSocket.new(soc)
socket.connect
socket.puts("hello")
puts socket.gets
サーバー起動
$ ruby server.rb
クライアント実行
$ ruby client.rb
HELLO # helloが大文字になって帰って来ます
おまけ: 秘密鍵とかを作るコマンド
$ openssl genrsa -out server-key.pem 1024
$ openssl req -new -key server-key.pem -out server-csr.pem
$ openssl x509 -req -in server-csr.pem -signkey server-key.pem -out server-cert.pem
Author And Source
この問題について(Ruby#SSLを利用したサーバーとクライアント), 我々は、より多くの情報をここで見つけました https://qiita.com/nwtgck/items/01cd52fcc790cf9a022f著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .