singleton method OpenSSL::PKCS12.create

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]

PKCS#12 オブジェクトを生成します。

pass はデータを暗号化するためのパスフレーズです。 name は利用者の利便性のためにオブジェクトに与える名前です。 pkey は秘密鍵、certは証明書、caはCA証明書の配列です。 ca に nil を渡すのは空の配列を渡すのと同じ意味です。 nid_key と nid_cert は 秘密鍵、証明書の暗号化方式を文字列で指定します。 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:
オブジェクト生成に失敗した場合に発生します