別のキーワード
種類
- インスタンスメソッド (35)
- 特異メソッド (8)
- クラス (4)
- 定数 (4)
- モジュール (1)
クラス
-
OpenSSL
:: PKCS7 (1) -
OpenSSL
:: PKey :: EC (2) -
OpenSSL
:: PKey :: RSA (43) -
OpenSSL
:: X509 :: Certificate (1)
キーワード
-
NO
_ PADDING (1) -
PKCS1
_ OAEP _ PADDING (1) -
PKCS1
_ PADDING (1) - PKey (1)
- RSA (1)
- RSAError (1)
- Random (1)
- Request (1)
-
SSLV23
_ PADDING (1) - d (1)
- d= (1)
- dmp1 (1)
- dmp1= (1)
- dmq1 (1)
- dmq1= (1)
- e (1)
- e= (1)
- export (2)
- generate (2)
- iqmp (1)
- iqmp= (1)
- n (1)
- n= (1)
- new (5)
- p (1)
- p= (1)
- params (1)
- private? (1)
-
private
_ decrypt (1) -
private
_ encrypt (1) - public? (1)
-
public
_ decrypt (1) -
public
_ encrypt (1) -
public
_ key (2) -
public
_ key? (1) - q (1)
- q= (1)
-
to
_ der (1) -
to
_ pem (3) -
to
_ s (2) -
to
_ text (1) -
write
_ smime (1)
検索結果
先頭5件
- OpenSSL
:: PKey :: RSA - OpenSSL
:: PKey :: RSA # private _ decrypt(str , mode = OpenSSL :: PKey :: RSA :: PKCS1 _ PADDING) -> String - OpenSSL
:: PKey :: RSA # public _ encrypt(str , mode = OpenSSL :: PKey :: RSA :: PKCS1 _ PADDING) -> String - OpenSSL
:: PKey :: RSA # private _ encrypt(str , mode = OpenSSL :: PKey :: RSA :: PKCS1 _ PADDING) -> String - OpenSSL
:: PKey :: RSA # public _ decrypt(str , mode = OpenSSL :: PKey :: RSA :: PKCS1 _ PADDING) -> String
-
OpenSSL
:: PKey :: RSA (69169.0) -
RSA 暗号鍵のクラスです。
...通常このクラスで利用するのは、
OpenSSL::PKey::RSA.generate, OpenSSL::PKey::RSA.new,
OpenSSL::PKey::RSA#public?, OpenSSL::PKey::RSA#private?,
OpenSSL::PKey::RSA#public_key, OpenSSL::PKey::RSA#to_text,
OpenSSL::PKey::RSA#to_pem, OpenSSL::PKey::RSA#to_der
のいずれかでしょう。......ついてよく理解し、必要な場合のみにすべきです。
例:
require 'openssl'
# initialize random seed
OpenSSL::Random.seed(File.read("/dev/random", 16))
# 鍵対を生成
rsa = OpenSSL::PKey::RSA.generate(2048)
# 秘密鍵をAES256で暗号化して private_key.pem に......PEM 形式で保存
passphrase = "!secret passphrase!"
File.open("private_key.pem", "w") do |f|
f.write(rsa.export(OpenSSL::Cipher.new("aes256"), passphrase))
end
# 公開鍵をpublic_key.pemに保存
public_key = rsa.public_key
File.open("public_key.pem", "w") do |f|
f.write(pu... -
OpenSSL
:: PKey :: RSA # private _ decrypt(str , mode = OpenSSL :: PKey :: RSA :: PKCS1 _ PADDING) -> String (63382.0) -
文字列 str を秘密鍵で復号化します。
...かが利用可能です。
* OpenSSL::PKey::RSA::PKCS1_PADDING
* OpenSSL::PKey::RSA::SSLV23_PADDING
* OpenSSL::PKey::RSA::PKCS1_OAEP_PADDING
* OpenSSL::PKey::RSA::NO_PADDING
@param str 暗号化する文字列
@param mode パディングモード
@raise OpenSSL::PKey::RSAError 復号化に失... -
OpenSSL
:: PKey :: RSA # public _ encrypt(str , mode = OpenSSL :: PKey :: RSA :: PKCS1 _ PADDING) -> String (63382.0) -
文字列 str を公開鍵で暗号化します。
...かが
利用可能です。
* OpenSSL::PKey::RSA::PKCS1_PADDING
* OpenSSL::PKey::RSA::SSLV23_PADDING
* OpenSSL::PKey::RSA::PKCS1_OAEP_PADDING
* OpenSSL::PKey::RSA::NO_PADDING
@param str 暗号化する文字列
@param mode パディングモード
@raise OpenSSL::PKey::RSAError 暗号化に失... -
OpenSSL
:: PKey :: RSA # private _ encrypt(str , mode = OpenSSL :: PKey :: RSA :: PKCS1 _ PADDING) -> String (63346.0) -
文字列 str を秘密鍵で暗号化します。
...ドを指定します。以下のいずれかが利用可能です。
* OpenSSL::PKey::RSA::PKCS1_PADDING
* OpenSSL::PKey::RSA::NO_PADDING
@param str 暗号化する文字列
@param mode パディングモード
@raise OpenSSL::PKey::RSAError 暗号化に失敗した場合に発生します。... -
OpenSSL
:: PKey :: RSA # public _ decrypt(str , mode = OpenSSL :: PKey :: RSA :: PKCS1 _ PADDING) -> String (63346.0) -
文字列 str を公開鍵で復号化します。
...グモードと同じものを
指定する必要があります。
* OpenSSL::PKey::RSA::PKCS1_PADDING
* OpenSSL::PKey::RSA::NO_PADDING
@param str 復号化する文字列
@param mode パディングモード
@raise OpenSSL::PKey::RSAError 復号化に失敗した場合に発生します。... -
OpenSSL
:: PKey :: RSA . new -> OpenSSL :: PKey :: RSA (63340.0) -
RSA 暗号鍵オブジェクトを生成します。
...を生成します。
引数なしの場合は空の RSA オブジェクトを返します。
第一引数に整数を指定した場合には、OpenSSL::PKey::RSA.generate により
公開鍵と秘密鍵のペアを生成し、それを返します。
それ以外の場合には、以下のよ......ルに問い合わせをします。
@param size 鍵生成をする場合の鍵のサイズ
@param exponent public exponent
@param obj 鍵データ
@param pass 鍵データに設定したパスフレーズ
@raise OpenSSL::PKey::RSAError 鍵の読み込みに失敗した場合に発生します。... -
OpenSSL
:: PKey :: RSA . new(obj , pass = nil) -> OpenSSL :: PKey :: RSA (63340.0) -
RSA 暗号鍵オブジェクトを生成します。
...を生成します。
引数なしの場合は空の RSA オブジェクトを返します。
第一引数に整数を指定した場合には、OpenSSL::PKey::RSA.generate により
公開鍵と秘密鍵のペアを生成し、それを返します。
それ以外の場合には、以下のよ......ルに問い合わせをします。
@param size 鍵生成をする場合の鍵のサイズ
@param exponent public exponent
@param obj 鍵データ
@param pass 鍵データに設定したパスフレーズ
@raise OpenSSL::PKey::RSAError 鍵の読み込みに失敗した場合に発生します。... -
OpenSSL
:: PKey :: RSA . new(obj , pass = nil) {|flag| . . . } -> OpenSSL :: PKey :: RSA (63340.0) -
RSA 暗号鍵オブジェクトを生成します。
...を生成します。
引数なしの場合は空の RSA オブジェクトを返します。
第一引数に整数を指定した場合には、OpenSSL::PKey::RSA.generate により
公開鍵と秘密鍵のペアを生成し、それを返します。
それ以外の場合には、以下のよ......ルに問い合わせをします。
@param size 鍵生成をする場合の鍵のサイズ
@param exponent public exponent
@param obj 鍵データ
@param pass 鍵データに設定したパスフレーズ
@raise OpenSSL::PKey::RSAError 鍵の読み込みに失敗した場合に発生します。... -
OpenSSL
:: PKey :: RSA . new(size , exponent = 65537) -> OpenSSL :: PKey :: RSA (63340.0) -
RSA 暗号鍵オブジェクトを生成します。
...を生成します。
引数なしの場合は空の RSA オブジェクトを返します。
第一引数に整数を指定した場合には、OpenSSL::PKey::RSA.generate により
公開鍵と秘密鍵のペアを生成し、それを返します。
それ以外の場合には、以下のよ......ルに問い合わせをします。
@param size 鍵生成をする場合の鍵のサイズ
@param exponent public exponent
@param obj 鍵データ
@param pass 鍵データに設定したパスフレーズ
@raise OpenSSL::PKey::RSAError 鍵の読み込みに失敗した場合に発生します。... -
OpenSSL
:: PKey :: RSA . new(size , exponent = 65537) {|u , n| . . . } -> OpenSSL :: PKey :: RSA (63340.0) -
RSA 暗号鍵オブジェクトを生成します。
...を生成します。
引数なしの場合は空の RSA オブジェクトを返します。
第一引数に整数を指定した場合には、OpenSSL::PKey::RSA.generate により
公開鍵と秘密鍵のペアを生成し、それを返します。
それ以外の場合には、以下のよ......ルに問い合わせをします。
@param size 鍵生成をする場合の鍵のサイズ
@param exponent public exponent
@param obj 鍵データ
@param pass 鍵データに設定したパスフレーズ
@raise OpenSSL::PKey::RSAError 鍵の読み込みに失敗した場合に発生します。... -
OpenSSL
:: PKey :: RSA . generate(size , exponent = 65537) -> OpenSSL :: PKey :: RSA (63313.0) -
乱数により RSA 公開鍵と秘密鍵のペアを生成して、RSA オブジェクトを返します。
...乱数により RSA 公開鍵と秘密鍵のペアを生成して、RSA オブジェクトを返します。
このメソッドを呼ぶ前に OpenSSL::Random の各モジュール関数に
よって乱数が適切に初期化されている必要があります。
size で鍵の modulus のビッ... -
OpenSSL
:: PKey :: RSA . generate(size , exponent = 65537) {|u , n| . . . } -> OpenSSL :: PKey :: RSA (63313.0) -
乱数により RSA 公開鍵と秘密鍵のペアを生成して、RSA オブジェクトを返します。
...乱数により RSA 公開鍵と秘密鍵のペアを生成して、RSA オブジェクトを返します。
このメソッドを呼ぶ前に OpenSSL::Random の各モジュール関数に
よって乱数が適切に初期化されている必要があります。
size で鍵の modulus のビッ... -
OpenSSL
:: PKey :: RSA # public _ key -> OpenSSL :: PKey :: RSA (63310.0) -
公開鍵を複製して RSA オブジェクトとして返します。
公開鍵を複製して RSA オブジェクトとして返します。 -
OpenSSL
:: PKey :: RSA # params -> {String => OpenSSL :: BN} (63169.0) -
鍵のパラメータ(OpenSSL::PKey::RSA#e,OpenSSL::PKey::RSA#n, OpenSSL::PKey::RSA#dなど)を{パラメータ名文字列 => パラメータ値} というハッシュで返します。
...鍵のパラメータ(OpenSSL::PKey::RSA#e,OpenSSL::PKey::RSA#n,
OpenSSL::PKey::RSA#dなど)を{パラメータ名文字列 => パラメータ値}
というハッシュで返します。
鍵が公開鍵の場合、OpenSSL::PKey::RSA#d
のように公開鍵が持っていない値は 0 になりま... -
OpenSSL
:: PKey :: RSA :: NO _ PADDING -> Integer (63079.0) -
パディングをしないパディングモードです。
...です。
セキュリティ上の問題を引き起すため、基本的に使わないでください。
OpenSSL::PKey::RSA#public_encrypt、
OpenSSL::PKey::RSA#public_decrypt、
OpenSSL::PKey::RSA#private_encrypt、
OpenSSL::PKey::RSA#private_decrypt の
第二引数に指定できます。... -
OpenSSL
:: PKey :: RSA :: PKCS1 _ PADDING -> Integer (63079.0) -
PKCS #1 v1.5 で定義されているパディングモードです。
...されているパディングモードです。
互換性目的以外での利用は推奨しません。
OpenSSL::PKey::RSA#public_encrypt、
OpenSSL::PKey::RSA#public_decrypt、
OpenSSL::PKey::RSA#private_encrypt、
OpenSSL::PKey::RSA#private_decrypt の
第二引数に指定できます。... -
OpenSSL
:: PKey :: RSA :: PKCS1 _ OAEP _ PADDING -> Integer (63043.0) -
PKCS #1 v2.0 で定義されているパディングモードです。
...PKCS #1 v2.0 で定義されているパディングモードです。
互換性に問題ない場合はこのモードを利用すべきです。
OpenSSL::PKey::RSA#public_encrypt、
OpenSSL::PKey::RSA#private_decrypt の
第二引数に指定できるパディングモード。... -
OpenSSL
:: PKey :: RSA :: SSLV23 _ PADDING -> Integer (63043.0) -
PKCS #1 v1.5 で定義されているものに SSL特有の変更を加えたパディングモードです。
...PKCS #1 v1.5 で定義されているものに
SSL特有の変更を加えたパディングモードです。
互換性目的以外での利用は推奨しません。
OpenSSL::PKey::RSA#public_encrypt、
OpenSSL::PKey::RSA#private_decrypt の
第二引数に指定できます。... -
OpenSSL
:: PKey :: RSA # d -> OpenSSL :: BN (63007.0) -
鍵の private exponent です。
鍵の private exponent です。
これは秘密鍵の一部です。 -
OpenSSL
:: PKey :: RSA # d=(new _ d) (63007.0) -
private exponent を設定します。
private exponent を設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param new_d 設定する整数値 -
OpenSSL
:: PKey :: RSA # dmp1 -> OpenSSL :: BN (63007.0) -
鍵の exponent1 (d mod (p-1)) です。
鍵の exponent1 (d mod (p-1)) です。
秘密鍵の情報です。 -
OpenSSL
:: PKey :: RSA # dmp1=(new _ dmp1) (63007.0) -
鍵の exponent1 を設定します。
鍵の exponent1 を設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param new_dmp1 設定する整数 -
OpenSSL
:: PKey :: RSA # dmq1 -> OpenSSL :: BN (63007.0) -
鍵の exponent2 (d mod (q-1)) です。
鍵の exponent2 (d mod (q-1)) です。
秘密鍵の情報です。 -
OpenSSL
:: PKey :: RSA # dmq1=(new _ dmq1) (63007.0) -
鍵の exponent2 を設定します。
鍵の exponent2 を設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param new_dmq1 設定する整数 -
OpenSSL
:: PKey :: RSA # e -> OpenSSL :: BN (63007.0) -
鍵の public exponent を返します。
鍵の public exponent を返します。
これは公開鍵の一部です。 -
OpenSSL
:: PKey :: RSA # e=(new _ e) (63007.0) -
鍵の public exponent を変更します。
鍵の public exponent を変更します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param new_e 設定する public exponent の整数値 -
OpenSSL
:: PKey :: RSA # export(cipher=nil , pass=nil) -> String (63007.0) -
鍵を PEM 形式で出力します。
...鍵を PEM 形式で出力します。
cipher と pass が指定された場合、
秘密鍵を暗号 cipher OpenSSL::Cipher::Cipher
とパスワード pass を使って暗号化します。
cipher を指定して pass を省略した場合は
渡されたブロックを呼びだしてパスフ... -
OpenSSL
:: PKey :: RSA # export(cipher=nil , pass=nil) {|flag| . . . } -> String (63007.0) -
鍵を PEM 形式で出力します。
...鍵を PEM 形式で出力します。
cipher と pass が指定された場合、
秘密鍵を暗号 cipher OpenSSL::Cipher::Cipher
とパスワード pass を使って暗号化します。
cipher を指定して pass を省略した場合は
渡されたブロックを呼びだしてパスフ... -
OpenSSL
:: PKey :: RSA # iqmp -> OpenSSL :: BN (63007.0) -
鍵の coefficient (inverse of q mod p) です。
鍵の coefficient (inverse of q mod p) です。
秘密鍵の情報です。 -
OpenSSL
:: PKey :: RSA # iqmp=(new _ iqmp) (63007.0) -
鍵の coefficient を設定します。
鍵の coefficient を設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param new_iqmp 設定する整数値 -
OpenSSL
:: PKey :: RSA # n -> OpenSSL :: BN (63007.0) -
鍵の modulus です。
鍵の modulus です。
公開鍵、秘密鍵両方の一部です。 -
OpenSSL
:: PKey :: RSA # n=(new _ n) (63007.0) -
鍵の modulus を設定します。
鍵の modulus を設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param new_n 設定する整数値 -
OpenSSL
:: PKey :: RSA # p -> OpenSSL :: BN (63007.0) -
鍵の1つめの素数です。
鍵の1つめの素数です。
秘密鍵の情報です。 -
OpenSSL
:: PKey :: RSA # p=(new _ p) (63007.0) -
鍵の1つめの素数を設定します。
鍵の1つめの素数を設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param new_p 設定する素数 -
OpenSSL
:: PKey :: RSA # private? -> bool (63007.0) -
自身が秘密鍵を持っているかどうか判定します。
自身が秘密鍵を持っているかどうか判定します。 -
OpenSSL
:: PKey :: RSA # public? -> true (63007.0) -
自身が公開鍵を持っているかどうか判定します。
自身が公開鍵を持っているかどうか判定します。
秘密鍵は公開鍵も持っているため、常に true を返します。 -
OpenSSL
:: PKey :: RSA # q -> OpenSSL :: BN (63007.0) -
鍵の2つめの素数です。
鍵の2つめの素数です。
秘密鍵の情報です。 -
OpenSSL
:: PKey :: RSA # q=(new _ q) (63007.0) -
鍵の2つめの素数を設定します。
鍵の2つめの素数を設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param new_q 設定する素数 -
OpenSSL
:: PKey :: RSA # to _ der -> String (63007.0) -
自身を DER 形式に変換します。
自身を DER 形式に変換します。 -
OpenSSL
:: PKey :: RSA # to _ pem(cipher=nil , pass=nil) -> String (63007.0) -
鍵を PEM 形式で出力します。
...鍵を PEM 形式で出力します。
cipher と pass が指定された場合、
秘密鍵を暗号 cipher OpenSSL::Cipher::Cipher
とパスワード pass を使って暗号化します。
cipher を指定して pass を省略した場合は
渡されたブロックを呼びだしてパスフ... -
OpenSSL
:: PKey :: RSA # to _ pem(cipher=nil , pass=nil) {|flag| . . . } -> String (63007.0) -
鍵を PEM 形式で出力します。
...鍵を PEM 形式で出力します。
cipher と pass が指定された場合、
秘密鍵を暗号 cipher OpenSSL::Cipher::Cipher
とパスワード pass を使って暗号化します。
cipher を指定して pass を省略した場合は
渡されたブロックを呼びだしてパスフ... -
OpenSSL
:: PKey :: RSA # to _ s(cipher=nil , pass=nil) -> String (63007.0) -
鍵を PEM 形式で出力します。
...鍵を PEM 形式で出力します。
cipher と pass が指定された場合、
秘密鍵を暗号 cipher OpenSSL::Cipher::Cipher
とパスワード pass を使って暗号化します。
cipher を指定して pass を省略した場合は
渡されたブロックを呼びだしてパスフ... -
OpenSSL
:: PKey :: RSA # to _ s(cipher=nil , pass=nil) {|flag| . . . } -> String (63007.0) -
鍵を PEM 形式で出力します。
...鍵を PEM 形式で出力します。
cipher と pass が指定された場合、
秘密鍵を暗号 cipher OpenSSL::Cipher::Cipher
とパスワード pass を使って暗号化します。
cipher を指定して pass を省略した場合は
渡されたブロックを呼びだしてパスフ... -
OpenSSL
:: PKey :: RSA # to _ text -> String (63007.0) -
鍵を人間が読める形式に変換します。
鍵を人間が読める形式に変換します。 -
OpenSSL
:: PKey :: RSAError (9007.0) -
RSA 関連のエラーが起きた場合に発生する例外のクラスです。
RSA 関連のエラーが起きた場合に発生する例外のクラスです。 -
OpenSSL
:: PKCS7 . write _ smime(p7sig , data=nil , flags = 0) -> String (25.0) -
PKCS7 オブジェクトから S/MIME 形式の文字列を返します。
...l を渡すと OpenSSL::PKCS7#data で得られる
文字列を用います。通常は nil を渡してください。
flags には以下の定数の or を渡します。
* OpenSSL::PKCS7::DETACHED
クリア署名をします。これは OpenSSL::PKCS7.sign で
OpenSSL::PKCS7::DETAC......。
* OpenSSL::PKCS7::TEXT
MIME ヘッダに text/plain を付加します。
これは OpenSSL::PKCS7.sign で
OpenSSL::PKCS7::DETACHED を渡した場合にのみ意味を持ちます。
例:
require 'openssl'
data = "foobar"
p7 = OpenSSL::PKCS7.sign( OpenSSL::X509::Ce......ert.pem')),
OpenSSL::PKey::RSA.new(File.read('privkey.pem')),
data)
smime = PKCS7.write_smime(p7)
@param p7sig PKCS#7 オブジェクト
@param data 署名されたデータ文字列
@param flags フラグ(整数値)
@raise OpenSSL::PKCS::PK... -
OpenSSL
:: PKey :: EC # public _ key? -> bool (25.0) -
EC オブジェクトが公開鍵を保持していれば真を返します。
...ブジェクトが公開鍵を保持していれば真を返します。
OpenSSL::PKey::RSA や OpenSSL::PKey::DSA と
異なり、EC オブジェクトが公開鍵を含まない場合が存在します。
例えば、OpenSSL::PKey::EC.new でパラメータとなる群のみを
指定して EC......った場合は、公開鍵も秘密鍵も
保持していません。この場合 OpenSSL::PKey::EC#generate_key で
鍵を生成するまで、その状態のままです。
このメソッドを呼ぶ前に OpenSSL::Random の各モジュール関数に
よって乱数が適切に初期化され... -
OpenSSL
:: PKey :: EC # to _ pem -> String (25.0) -
鍵を PEM 形式の文字列に変換します。
...鍵を PEM 形式の文字列に変換します。
現在の仕様では OpenSSL::PKey::RSA#to_pem のように
出力をパスフレーズで暗号化することはできません。
@raise OpenSSL::PKey::ECError 文字列への変換に失敗した場合に発生します。
公開鍵が... -
OpenSSL
:: PKey :: PKey (25.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.sig... -
OpenSSL
:: Random (25.0) -
OpenSSL が利用する擬似乱数生成器関連のモジュールです。
...OpenSSL が利用する擬似乱数生成器関連のモジュールです。
* 4086
=== 暗号と乱数
OpenSSL では、鍵を生成するためなどに乱数を用いています。例えば RSA では
巨大(512bitや1024bitなど)な素数の組を乱数で生成し、そこから公開鍵......ます。
* OpenSSL::PKey::RSA.generate
* OpenSSL::PKey::DSA.generate
* OpenSSL::PKey::DH.generate
* OpenSSL::Cipher#random_key
そのような乱数は適切な実装を持つ擬似乱数生成器に適切なシードを渡す
ことによって実現できます。
OpenSSL にはそのよ......。
そして、この擬似乱数生成器は OpenSSL の様々なモジュールから利用されています。
上に挙げた鍵生成メソッドの他に、
* OpenSSL::BN.rand
* OpenSSL::BN.rand_range
* OpenSSL::BN.generate_prime
* OpenSSL::Cipher#random_iv
などでも利用され... -
OpenSSL
:: X509 :: Certificate # public _ key -> OpenSSL :: PKey :: PKey (25.0) -
証明書に記載された公開鍵を返します。
...クラスのインスタンスを返します。
* OpenSSL::PKey::RSA
* OpenSSL::PKey::DSA
* OpenSSL::PKey::DH
* OpenSSL::PKey::EC
@raise OpenSSL::X509::CertificateError 鍵の取得に失敗した場合に発生します
@raise OpenSSL::PKey::PKeyError サポートしていない種類の... -
OpenSSL
:: X509 :: Request (25.0) -
X.509 の証明書署名要求(Certificate Signing Request, CSR)を表わす クラスです。
...CSR を生成する例。
require 'openssl'
# ファイルから秘密鍵を読み込む
rsa = OpenSSL::PKey::RSA.new(File.read("privkey.pem"))
# 新しい CSR オブジェクトを生成
csr = OpenSSL::X509::Request.new
# DN を生成
name = OpenSSL::X509::Name.new
name.add_entry('C......sa.public_key
# attribute を設定
factory = OpenSSL::X509::ExtensionFactory.new
exts = [ factory.create_ext("subjectAltName", "DNS:foo.example.com") ]
asn1exts = OpenSSL::ASN1::Set([OpenSSL::ASN1::Sequence(exts)])
csr.add_attribute(OpenSSL::X509::Attribute.new("extReq", asn1exts))
#...