るりまサーチ (Ruby 2.3.0)

最速Rubyリファレンスマニュアル検索!
6件ヒット [1-6件を表示] (0.080秒)

別のキーワード

  1. openssl new
  2. openssl digest
  3. openssl to_der
  4. openssl hexdigest
  5. openssl to_s

キーワード

検索結果

OpenSSL::PKey::PKey (96226.0)

公開鍵暗号のための抽象クラスです。

...クラスです。

以下のサブクラスを持ちます。
* OpenSSL::PKey::RSA
* OpenSSL::PKey::DSA
* OpenSSL::PKey::DH
* OpenSSL::PKey::EC

例:

require "openssl"
# 署名用の鍵を新規作成
dsa512 = OpenSSL::PKey::DSA.new(512)
data = 'hoge'
# 署名
sign = dsa512.sig...

OpenSSL::PKey::RSA (42424.0)

RSA 暗号鍵のクラスです。

...通常このクラスで利用するのは、
OpenSSL
::PKey::RSA.generate, OpenSSL::PKey::RSA.new,
OpenSSL
::PKey::RSA#public?, OpenSSL::PKey::RSA#private?,
OpenSSL
::PKey::RSA#public_key, OpenSSL::PKey::RSA#to_text,
OpenSSL
::PKey::RSA#to_pem, OpenSSL::PKey::RSA#to_der
のいずれかでしょう。...
...ついてよく理解し、必要な場合のみにすべきです。


例:
require 'openssl'

# initialize random seed
OpenSSL
::Random.seed(File.read("/dev/random", 16))
# 鍵対を生成
rsa = OpenSSL::PKey::RSA.generate(2048)
# 秘密鍵をAES256で暗号化して private_key.pem に...
...PEM 形式で保存
passphrase = "!secret passphrase!"
File.open("private_key.pem", "w") do |f|
f.write(rsa.export(OpenSSL::Cipher.new("aes256"), passphrase))
end
# 公開鍵をpublic_key.pemに保存
public_key = rsa.public_key
File.open("public_key.pem", "w") do |f|
f.write(pu...

OpenSSL::PKey::DH (42262.0)

Diffie-Hellman 鍵共有クラス

...有クラス

Diffie-Hellman 鍵共有プロトコルは署名ができないため、
OpenSSL
::PKey::PKey#sign や OpenSSL::PKey::PKey#verify
を呼び署名や署名の検証を行おうとすると例外
OpenSSL
::PKey::PKeyError が発生します。

Diffie-Hellman はこのライブラリで...
...は基本的には鍵共有にしか利用できません。


=== 例

鍵共有の例。
require 'openssl'

# パラメータの生成
dh = OpenSSL::PKey::DH.generate(1024, 5)
# パラメータのチェック
raise "bad DH parameter" unless dh.params_ok?
# 以下、dh1 と dh2 が通...
...つ複製することにしている

# dh1 は dh をそのまま使う
dh1 = dh
# パラメータを複製して dh2 に渡す
dh2 = OpenSSL::PKey::DH.new(dh)

# 両端が鍵パラメータから鍵対を生成する
dh1.generate_key!
dh2.generate_key!
# 通信の両端で公...

OpenSSL::PKey::DSA (42082.0)

DSA 公開鍵暗号クラス

...ゴリズムであり、暗号化はできません。

以下は、data に署名し、署名をもとに data を検証する簡単な例です。

require "openssl"
dsa512 = OpenSSL::PKey::DSA.new(512)
data = 'hoge'
sign = dsa512.sign('dss1', data)
p dsa512.verify('dss1', sign, data)...

OpenSSL::X509::Request (33262.0)

X.509 の証明書署名要求(Certificate Signing Request, CSR)を表わす クラスです。

...CSR を生成する例。
require 'openssl'
# ファイルから秘密鍵を読み込む
rsa = OpenSSL::PKey::RSA.new(File.read("privkey.pem"))
# 新しい CSR オブジェクトを生成
csr = OpenSSL::X509::Request.new
# DN を生成
name = OpenSSL::X509::Name.new
name.add_entry('C...
...sa.public_key
# attribute を設定
factory = OpenSSL::X509::ExtensionFactory.new
exts = [ factory.create_ext("subjectAltName", "DNS:foo.example.com") ]
asn1exts = OpenSSL::ASN1::Set([OpenSSL::ASN1::Sequence(exts)])
csr.add_attribute(OpenSSL::X509::Attribute.new("extReq", asn1exts))
#...

絞り込み条件を変える

OpenSSL::SSL::SSLServer (33172.0)

SSL サーバーのためのクラス。

...SSL サーバーのためのクラス。

TCPServer をラップするクラスで、TCPServer で接続した
ソケットを OpenSSL::SSL::SSLSocket でラップする機能を持ちます。
おおよそ TCPServer と同様のメソッドを持ちます。

基本的には SSL サーバを簡単...
...

以下はクライアントからの入力を標準出力に出力するだけのサーバです。

require 'socket'
require 'openssl'

include OpenSSL

ctx = SSL::SSLContext.new()
ctx.cert = X509::Certificate.new(File.read('cert.pem'))
ctx.key = PKey::RSA.new(File.read('privke...