別のキーワード
種類
- インスタンスメソッド (26)
- クラス (3)
- 特異メソッド (3)
- 定数 (1)
ライブラリ
-
net
/ http (1) - openssl (30)
-
rubygems
/ security (1) -
webrick
/ ssl (1)
クラス
-
Gem
:: Security :: Signer (1) -
Net
:: HTTP (1) -
OpenSSL
:: Engine (2) -
OpenSSL
:: Netscape :: SPKI (4) -
OpenSSL
:: OCSP :: BasicResponse (1) -
OpenSSL
:: OCSP :: Request (1) -
OpenSSL
:: PKCS12 (2) -
OpenSSL
:: PKCS7 (2) -
OpenSSL
:: PKCS7 :: SignerInfo (1) -
OpenSSL
:: PKey :: DSA (1) -
OpenSSL
:: PKey :: PKey (2) -
OpenSSL
:: SSL :: SSLContext (3) -
OpenSSL
:: X509 :: CRL (2) -
OpenSSL
:: X509 :: Certificate (2) -
OpenSSL
:: X509 :: Request (4)
モジュール
-
OpenSSL
:: PKCS12 (2) -
WEBrick
:: Config (1)
キーワード
- DH (1)
- PKey (1)
- PKeyError (1)
- SSL (1)
-
client
_ cert _ cb= (1) - create (1)
- decrypt (1)
- key (4)
- key= (1)
-
load
_ private _ key (1) -
load
_ public _ key (1) - new (1)
-
public
_ key (3) -
public
_ key= (3) - sign (7)
- syssign (1)
- verify (4)
検索結果
先頭5件
-
OpenSSL
:: PKey :: PKey (69001.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.sign("dss1", data)
# 署名の検証
p dsa512.verify(dss1, sign,... -
OpenSSL
:: PKey :: PKey # sign(digest , data) -> String (63001.0) -
秘密鍵で data に署名し、署名の文字列を返します。
秘密鍵で data に署名し、署名の文字列を返します。
digest は利用するハッシュ関数の名前を "sha256" や "md5"
といった文字列で指定します。
DSA で署名をする場合はハッシュ関数には "dss1" を指定してください。
@param digest 利用するハッシュ関数の名前
@param data 署名する文字列
@raise OpenSSL::PKey::PKeyError 署名時にエラーが起きた場合に発生します -
OpenSSL
:: PKey :: PKey # verify(digest , sign , data) -> bool (63001.0) -
data を秘密鍵で署名したその署名文字列が sign であることを公開鍵を使って検証し、検証に成功すれば true を返します。
data を秘密鍵で署名したその署名文字列が sign
であることを公開鍵を使って検証し、検証に成功すれば true
を返します。
digest は利用するハッシュ関数の名前を "sha256" や "md5"
といった文字列で指定します。
DSA で検証をする場合はハッシュ関数には "dss1" を指定してください。
検証に失敗した、つまり署名時と異なるハッシュ関数を使った、
sign が正しい署名でなかった場合などは false を返します。
@param digest 利用するハッシュ関数の名前
@param sign 検証に利用する署名文字列
@param data 検証対... -
OpenSSL
:: PKey :: PKeyError (9001.0) -
OpenSSL の公開鍵関連のエラーの場合に発生する例外
OpenSSL の公開鍵関連のエラーの場合に発生する例外 -
OpenSSL
:: X509 :: Request # public _ key -> OpenSSL :: PKey :: PKey (322.0) -
申請者の公開鍵を返します。
申請者の公開鍵を返します。
実際には OpenSSL::PKey::PKey 自体のインスタンスでなく、
そのサブクラスを返します。
@raise OpenSSL::X509::RequestError 公開鍵の取得に失敗した場合に発生します
@raise OpenSSL::PKey::PKeyError 鍵の形式が不正であった場合に発生します -
Gem
:: Security :: Signer # key -> OpenSSL :: PKey :: PKey (304.0) -
鍵を返します。
鍵を返します。 -
Net
:: HTTP # key -> OpenSSL :: PKey :: PKey | nil (304.0) -
クライアント証明書の秘密鍵を返します。
クライアント証明書の秘密鍵を返します。
@see Net::HTTP#key=, OpenSSL::SSL::SSLContext#key -
OpenSSL
:: Engine # load _ private _ key(id=nil , data=nil) -> OpenSSL :: PKey :: PKey (304.0) -
秘密鍵を engine にロードします。
秘密鍵を engine にロードします。
@param id key id(文字列)
@param data 文字列 -
OpenSSL
:: Engine # load _ public _ key(id=nil , data=nil) -> OpenSSL :: PKey :: PKey (304.0) -
公開鍵を engine にロードします。
公開鍵を engine にロードします。
@param id key id(文字列)
@param data 文字列 -
OpenSSL
:: Netscape :: SPKI # public _ key -> OpenSSL :: PKey :: PKey (304.0) -
SPKI オブジェクトに設定された公開鍵を返します。
SPKI オブジェクトに設定された公開鍵を返します。
@raise OpenSSL::Netscape::SPKIError 公開鍵が設定されていない場合に発生します
@see OpenSSL::Netscape::SPKI#public_key= -
OpenSSL
:: PKCS12 # key -> OpenSSL :: PKey :: PKey (304.0) -
自身が保持している鍵を返します。
自身が保持している鍵を返します。 -
OpenSSL
:: SSL :: SSLContext # key -> OpenSSL :: PKey :: PKey | nil (304.0) -
OpenSSL::SSL::SSLContext#cert で得られる自分自身を証明するための 証明書の公開鍵に対応する秘密鍵を返します。
OpenSSL::SSL::SSLContext#cert で得られる自分自身を証明するための
証明書の公開鍵に対応する秘密鍵を返します。
@see OpenSSL::SSL::SSLContext#key= -
OpenSSL
:: X509 :: Certificate # public _ key -> OpenSSL :: PKey :: PKey (304.0) -
証明書に記載された公開鍵を返します。
証明書に記載された公開鍵を返します。
鍵の種類によって以下のいずれかのクラスのインスタンスを返します。
* OpenSSL::PKey::RSA
* OpenSSL::PKey::DSA
* OpenSSL::PKey::DH
* OpenSSL::PKey::EC
@raise OpenSSL::X509::CertificateError 鍵の取得に失敗した場合に発生します
@raise OpenSSL::PKey::PKeyError サポートしていない種類の鍵である場合に発生します -
OpenSSL
:: PKey :: DH (37.0) -
Diffie-Hellman 鍵共有クラス
Diffie-Hellman 鍵共有クラス
Diffie-Hellman 鍵共有プロトコルは署名ができないため、
OpenSSL::PKey::PKey#sign や OpenSSL::PKey::PKey#verify
を呼び署名や署名の検証を行おうとすると例外
OpenSSL::PKey::PKeyError が発生します。
Diffie-Hellman はこのライブラリでは基本的には鍵共有にしか利用できません。
=== 例
鍵共有の例。
require 'openssl'
# パラメータの生成
dh = OpenSSL::PKey::DH.generate(10... -
OpenSSL
:: Netscape :: SPKI # public _ key=(pubkey) (19.0) -
SPKI オブジェクトに公開鍵を設定します。
SPKI オブジェクトに公開鍵を設定します。
@param pubkey 設定する公開鍵(OpenSSL::PKey::PKey オブジェクト)
@raise OpenSSL::Netscape::SPKIError 公開鍵の設定に失敗した場合に発生します
@see OpenSSL::Netscape::SPKI#public_key -
OpenSSL
:: Netscape :: SPKI # sign(key , digest) -> self (19.0) -
SPKI オブジェクトに署名をします。
SPKI オブジェクトに署名をします。
@param key 署名に使う秘密鍵(OpenSSL::PKey::PKey オブジェクト)
@param digest 署名に使うダイジェスト関数(文字列もしくは OpenSSL::Digest オブジェクト)
@raise OpenSSL::Netscape::SPKIError 署名に失敗した場合に発生します
@see OpenSSL::Netscape::SPKI#verify -
OpenSSL
:: Netscape :: SPKI # verify(key) -> bool (19.0) -
署名を検証します。
署名を検証します。
検証に成功した場合は true を返し、失敗した場合は false を返します。
@param key 署名に使う公開鍵(OpenSSL::PKey::PKey オブジェクト)
@raise OpenSSL::Netscape::SPKIError 検証時にエラーが起きた場合に発生します
@see OpenSSL::Netscape::SPKI#sign -
OpenSSL
:: OCSP :: BasicResponse # sign(signer _ cert , signer _ key , certs = [] , flags=0) -> self (19.0) -
Response に署名します。
Response に署名します。
OCSP レスポンダ(もしくは CA)はレスポンスに署名をすることで、
レスポンスの内容を保証します。
flags には以下の値の OR を渡すことができます。
* OpenSSL::OCSP::NOTIME
* OpenSSL::OCSP::RESPID_KEY
* OpenSSL::OCSP::NOCERTS
certs に証明書の配列を渡すことで、この署名を検証するために
必要となる別の証明書を付加することができます。
@param signer_cert 署名者の証明書(OpenSSL::X509::Certificate オブジェ... -
OpenSSL
:: OCSP :: Request # sign(signer _ cert , signer _ key , certs=nil , flags=nil) -> self (19.0) -
Request オブジェクトに署名をします。
Request オブジェクトに署名をします。
この署名はリクエスタが自分自身を証明するために署名します。
OCSP レスポンダはこの署名を確認します。
Request に対する署名は必須ではありません。
certs に証明書の配列を渡すことで、この署名を検証するために
必要となる別の証明書を付加することができます。
@param signer_cert 署名者の証明書(OpenSSL::X509::Certificate オブジェクト)
@param signer_key 証明に用いる秘密鍵(OpenSSL::PKey::PKey オブジェクト)
@param certs 添付する証明書... -
OpenSSL
:: PKCS12 . create(pass , name , pkey , cert , ca=nil , key _ nid=nil , cert _ nid=nil , key _ iter=nil , mac _ iter=nil , keytype=nil) -> OpenSSL :: PKCS12 (19.0) -
PKCS#12 オブジェクトを生成します。
PKCS#12 オブジェクトを生成します。
pass はデータを暗号化するためのパスフレーズです。
name は利用者の利便性のためにオブジェクトに与える名前です。
pkey は秘密鍵、certは証明書、caはCA証明書の配列です。
ca に nil を渡すのは空の配列を渡すのと同じ意味です。
key_nid と cert_nid は 秘密鍵、証明書の暗号化方式を
文字列で指定します。
key_iter は暗号化アルゴリズムにイテレーション回数、
mac_iter は MAC のイテレーション回数、
keytype は鍵の種類を渡します。
key_nid, cert_nid, key_i... -
OpenSSL
:: PKCS7 # decrypt(pkey , cert , flags = 0) -> String (19.0) -
暗号化されたデータを復号化し、復号化されたデータを返します。
暗号化されたデータを復号化し、復号化されたデータを返します。
復号には暗号化に使った公開鍵に対応する秘密鍵と、その公開鍵を
含む証明書が必要です。
flags には以下のいずれかを指定できます。
* OpenSSL::PKCS7::TEXT
暗号化されたデータに付けられた text/plain タイプの MIME ヘッダ
を取り除きます。もしヘッダがなければエラーとなります。
@param pkey 復号化に使う秘密鍵(OpenSSL::PKey::PKey オブジェクト)
@param cert 対応する証明書(OpenSSL::X509::Certific... -
OpenSSL
:: PKCS7 . sign(cert , key , data , certs = [] , flags = 0) -> OpenSSL :: PKCS7 (19.0) -
data に証明書と秘密鍵で署名します。
data に証明書と秘密鍵で署名します。
cert に署名に使う証明書を、key にその証明書に対応する秘密鍵を
渡します。certs に OpenSSL::X509::Certificate オブジェクトの配列 を
渡すと OpenSSL::PKCS7 オブジェクトにそれらの証明書が追加で保持されます。
例えば中間 CA 証明書などを渡します。
flags は以下の値の OR を渡します。
* OpenSSL::PKCS7::TEXT
text/plain 用の MIME ヘッダをデータに付け加える。
* OpenSSL::PKCS7::NOCERTS
署... -
OpenSSL
:: PKCS7 :: SignerInfo . new(cert , key , digest) -> OpenSSL :: PKCS7 :: SignerInfo (19.0) -
署名者オブジェクトを証明書、秘密鍵、ダイジェスト方式から生成します。
署名者オブジェクトを証明書、秘密鍵、ダイジェスト方式から生成します。
証明書、秘密鍵、ダイジェスト方式は署名をするために利用します。
@param cert 証明書(OpenSSL::X509::Certificate オブジェクト)
@param key 秘密鍵(OpenSSL::PKey::PKey オブジェクト)
@param digest メッセージダイジェスト方式(文字列もしくは OpenSSL::Digest オブジェクト) -
OpenSSL
:: PKey :: DSA # syssign(data) -> String (19.0) -
自身で data に署名をし、 DER 形式の文字列で署名を返します。
自身で data に署名をし、 DER 形式の文字列で署名を返します。
data は適切なハッシュ関数で計算されたダイジェストであると仮定
しています。
通常は OpenSSL::PKey::PKey#sign を使い、署名をすべきです。
@param data 署名の対象 -
OpenSSL
:: SSL :: SSLContext # client _ cert _ cb=(cb) (19.0) -
OpenSSL::SSL::SSLContext#cert= でクライアント証明書を セットしていなかった場合にサーバからクライアント証明書の要求が来たときに 呼びだされるコールバックオブジェクトを設定します。
OpenSSL::SSL::SSLContext#cert= でクライアント証明書を
セットしていなかった場合にサーバからクライアント証明書の要求が来たときに
呼びだされるコールバックオブジェクトを設定します。
コールバックに渡される引数は以下のように
proc{|sslsocket| ... }
1つで、利用している OpenSSL::SSL::SSLSocket
オブジェクトが渡されます。そのオブジェクトから必要な証明書を見つけるのに
必要な情報を取得します。
コールバックはクライアント証明書(OpenSSL::X509::Certificate)
とその秘密鍵(OpenSSL::P... -
OpenSSL
:: SSL :: SSLContext # key=(key) (19.0) -
OpenSSL::SSL::SSLContext#cert= で設定された自分自身を証明するための 証明書の公開鍵に対応する秘密鍵を設定します。
OpenSSL::SSL::SSLContext#cert= で設定された自分自身を証明するための
証明書の公開鍵に対応する秘密鍵を設定します。
デフォルトな nil です。
@param key 設定する秘密鍵(OpenSSL::PKey::PKey のサブクラスのインスタンス)
@see OpenSSL::SSL::SSLContext#key -
OpenSSL
:: X509 :: CRL # sign(pkey , digest) -> self (19.0) -
CRL に秘密鍵で署名します。
CRL に秘密鍵で署名します。
@param pkey 秘密鍵(OpenSSL::PKey::PKey オブジェクト)
@param digest ハッシュアルゴリズム
@raise OpenSSL::X509::CRLError 署名に失敗した場合に発生します -
OpenSSL
:: X509 :: CRL # verify(key) -> bool (19.0) -
発行者の公開鍵で CRL に記載されている署名を検証します。
発行者の公開鍵で CRL に記載されている署名を検証します。
検証に成功した場合は true を返します。
@param key 公開鍵(OpenSSL::PKey::PKey オブジェクト)
@raise OpenSSL::X509::CRLError 検証時にエラーが生じた場合に発生します -
OpenSSL
:: X509 :: Certificate # public _ key=(pkey) (19.0) -
証明書に公開鍵を設定します。
証明書に公開鍵を設定します。
@param pkey 公開鍵(OpenSSL::PKey::PKeyのサブクラスのインスタンス)
@raise OpenSSL::X509::CertificateError 鍵の設定に失敗した場合に発生します -
OpenSSL
:: X509 :: Request # public _ key=(pkey) (19.0) -
申請者の公開鍵を設定します。
申請者の公開鍵を設定します。
@param pkey 設定する公開鍵を OpenSSL::PKey::PKey のサブクラスのインスタンスで渡します
@raise OpenSSL::X509::RequestError 公開鍵の設定に失敗した場合に発生します -
OpenSSL
:: X509 :: Request # sign(key , digest) -> self (19.0) -
証明書署名要求に秘密鍵で署名をします。
証明書署名要求に秘密鍵で署名をします。
通常、証明書署名要求は申請者の秘密鍵で署名されます。
@param key 秘密鍵(OpenSSL::PKey::PKey のサブクラスのオブジェクト)
@param digest ハッシュ関数を表す文字列("sha1" など)
@raise OpenSSL::X509::RequestError 署名に失敗した場合に発生します
@see OpenSSL::X509::Request#verify -
OpenSSL
:: X509 :: Request # verify(key) -> bool (19.0) -
署名を検証します。
署名を検証します。
検証に成功した場合には true を、失敗した場合には false を返します。
@param key 検証に利用する公開鍵(OpenSSL::PKey::PKey のサブクラスのインスタンス)
@raise OpenSSL::X509::RequestError 検証時にエラーが生じた場合に発生します
@see OpenSSL::X509::Request#sign -
WEBrick
:: Config :: SSL -> Hash (19.0) -
以下のほとんどの項目はサーバが保持する OpenSSL::SSL::SSLContext オブジェクト を設定するためのものです。詳しくは OpenSSL::SSL::SSLContext を参照して下さい。
以下のほとんどの項目はサーバが保持する OpenSSL::SSL::SSLContext オブジェクト
を設定するためのものです。詳しくは OpenSSL::SSL::SSLContext を参照して下さい。
: :ServerSoftware
サーバソフト名を設定する。デフォルトでは
"WEBrick/VERSION (Ruby/VERSION/RELEASE_DATE) OpenSSL/VERSION"。
: :SSLEnable
ssl を有効にするかどうかを設定します。
Ruby 1.8.2 まではデフォルトで true です。
Ruby 1.8.3 以降はデフ...