Ruby 2.6.0 リファレンスマニュアル > ライブラリ一覧 > opensslライブラリ > OpenSSL::PKey::RSAクラス > new

singleton method OpenSSL::PKey::RSA.new

new -> OpenSSL::PKey::RSA[permalink][rdoc]
new(size, exponent = 65537) -> OpenSSL::PKey::RSA
new(size, exponent = 65537) {|u,n| ... } -> OpenSSL::PKey::RSA
new(obj, pass = nil) -> OpenSSL::PKey::RSA
new(obj, pass = nil) {|flag| ... } -> OpenSSL::PKey::RSA

RSA 暗号鍵オブジェクトを生成します。

引数なしの場合は空の RSA オブジェクトを返します。

第一引数に整数を指定した場合には、OpenSSL::PKey::RSA.generate により 公開鍵と秘密鍵のペアを生成し、それを返します。

それ以外の場合には、以下のようにして鍵データを読みこみ、RSA オブジェクト を生成します。

pass が指定された場合は、秘密鍵を pass を使って復号化します。

鍵データにパスフレーズが設定されているにもかかわらず、passが省略された場合は、 渡されたブロックを呼びだしてパスフレーズを要求します。ブロックの返り値を パスフレーズとみなして復号します。ブロックの引数は通常は false が渡されますが、 これはそのパスフレーズが秘密鍵の復号に使われることを意味します。 ブロックが渡されなかった場合にはターミナルに問い合わせをします。

[PARAM] size:
鍵生成をする場合の鍵のサイズ
[PARAM] exponent:
public exponent
[PARAM] obj:
鍵データ
[PARAM] pass:
鍵データに設定したパスフレーズ
[EXCEPTION] OpenSSL::PKey::RSAError:
鍵の読み込みに失敗した場合に発生します。