new -> OpenSSL::PKey::DSA
[permalink][rdoc][edit]new(size) -> OpenSSL::PKey::DSA
new(obj, pass=nil) -> OpenSSL::PKey::DSA
new(obj, pass=nil) {|flag| ... } -> OpenSSL::PKey::DSA
-
DSA オブジェクトを生成します。
引数なしの場合は空の DSA オブジェクトを返します。
第一引数に整数を指定した場合には、OpenSSL::PKey::DSA.generate により公開鍵と秘密鍵のペアを生成し、それを返します。
それ以外の場合には、以下のようにして鍵データを読みこみ、DSA オブジェクトを生成します。
- 第一引数が文字列の場合は、PEM 形式もしくは DER 形式と仮定して 鍵データを読み込みます
- 第一引数が IO オブジェクトの場合は、その内容を 読み込んで DSA オブジェクトを生成します。
- 第一引数が to_der メソッドを持つ場合は、それにより DER 形式の 文字列に変換してから読み込みます
pass が指定された場合は、秘密鍵を pass を使って復号化します。
鍵データにパスフレーズが設定されているにもかかわらず、passが省略された場合は、渡されたブロックを呼びだしてパスフレーズを要求します。ブロックの返り値をパスフレーズとみなして復号します。ブロックの引数は通常は false が渡されますが、これはそのパスフレーズが秘密鍵の復号に使われることを意味します。ブロックが渡されなかった場合にはターミナルに問い合わせをします。
- [PARAM] size:
- 鍵を生成する時の素数のビット数
- [PARAM] obj:
- 鍵データ
- [PARAM] pass:
- 鍵データに設定したパスフレーズ
- [EXCEPTION] OpenSSL::PKey::DSAError:
- 鍵の読み込みに失敗した場合に発生します。