要約
PKCS#12 (秘密鍵、証明書、関連するCA証明書を1つのファイルに保存する形式) を表すクラスです。
目次
特異メソッド
create(pass, name, pkey, cert, ca=nil, key_nid=nil, cert_nid=nil, key_iter=nil, mac_iter=nil, keytype=nil) -> OpenSSL::PKCS12
[permalink][rdoc][edit]-
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_iter, mac_iter, keytype すべてに nil を渡すとデフォルトとして、証明書は 40 bit RC2 で暗号化、秘密鍵は triple DES で暗号化、key_iter は2048、mac_iter は1、keytypeなしとなります。
mac_iter がデフォルトで1なのは古いソフトウェアとの互換性のためです。互換性が問題でなければ 2048(PKCS12_DEFAULT_ITER)を用いてください。
- [PARAM] pass:
- パスフレーズ文字列
- [PARAM] name:
- 名前文字列
- [PARAM] pkey:
- 秘密鍵(OpenSSL::PKey::PKey のサブクラスのオブジェクト)
- [PARAM] cert:
- 証明書(OpenSSL::X509::Certificate のオブジェクト)
- [PARAM] ca:
- CA証明書群(OpenSSL::X509::Certificate の配列)
- [PARAM] key_nid:
- 秘密鍵の暗号化方式を表す文字列
- [PARAM] cert_nid:
- 証明書の暗号化方式を表す文字列
- [PARAM] key_iter:
- 暗号化アルゴリズムにイテレーション回数
- [PARAM] mac_iter:
- MAC のイテレーション回数
- [PARAM] keytype:
- 鍵の種類(整数)
- [EXCEPTION] OpenSSL::PKCS12::PKCS12Error:
- オブジェクト生成に失敗した場合に発生します
new(obj=nil, pass=nil) -> OpenSSL::PKCS12
[permalink][rdoc][edit]-
文字列もしくは IO オブジェクトから PKCS#12 オブジェクトを生成します。
データは通常パスフレーズで暗号化されているため、pass でそのパスワードを渡します。
- [PARAM] obj:
- PKCS#12データを読み込むオブジェクト(文字列もしくは IO)
- [PARAM] pass:
- パスフレーズ文字列
- [EXCEPTION] OpenSSL::PKCS12::PKCS12Error:
- データの読み込みに失敗した場合に発生します
インスタンスメソッド
ca_certs -> [OpenSSL::X509::Certificate]
[permalink][rdoc][edit]-
自身が保持しているCA証明書を配列で返します。
certificate -> OpenSSL::X509::Certificate
[permalink][rdoc][edit]-
自身が保持している証明書を返します。
key -> OpenSSL::PKey::PKey
[permalink][rdoc][edit]-
自身が保持している鍵を返します。
to_der -> String
[permalink][rdoc][edit]-
自身を DER 形式の文字列に変換します。
- [EXCEPTION] OpenSSL::PKCS12::PKCS12Error:
- 変換に失敗した場合に発生します