ライブラリ
- openssl (75)
-
rubygems
/ gem _ openssl (1)
クラス
モジュール
-
Gem
:: SSL (1) -
OpenSSL
:: ASN1 (4) -
OpenSSL
:: SSL (11)
キーワード
-
METHOD
_ RSA (1) -
NO
_ PADDING (1) -
OP
_ DONT _ INSERT _ EMPTY _ FRAGMENTS (1) -
OP
_ EPHEMERAL _ RSA (1) -
OP
_ MICROSOFT _ BIG _ SSLV3 _ BUFFER (1) -
OP
_ MICROSOFT _ SESS _ ID _ BUG (1) -
OP
_ MSIE _ SSLV2 _ RSA _ PADDING (1) -
OP
_ NETSCAPE _ CHALLENGE _ BUG (1) -
OP
_ NETSCAPE _ REUSE _ CIPHER _ CHANGE _ BUG (1) -
OP
_ SSLEAY _ 080 _ CLIENT _ DH _ BUG (1) -
OP
_ SSLREF2 _ REUSE _ CERT _ TYPE _ BUG (1) -
OP
_ TLS _ BLOCK _ PADDING _ BUG (1) -
OP
_ TLS _ D5 _ BUG (1) -
PKCS1
_ OAEP _ PADDING (1) -
PKCS1
_ PADDING (1) -
PKEY
_ RSA (1) - PKey (1)
- RSAError (1)
- Random (1)
- Request (1)
- SSLServer (1)
-
SSLV23
_ PADDING (1) - UNIVERSALSTRING (1)
-
UNIVERSAL
_ TAG _ NAME (1) - UniversalString (3)
- ciphers (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 (7)
- openssl (1)
- 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)
-
ruby 1
. 8 . 2 feature (1) -
rubygems
/ security (1) -
set
_ default (1) -
to
_ der (1) -
to
_ pem (3) -
to
_ s (2) -
to
_ text (1) -
write
_ smime (1)
検索結果
先頭5件
- OpenSSL
:: PKey :: RSA - OpenSSL
:: SSL :: OP _ EPHEMERAL _ RSA -> Integer - OpenSSL
:: ASN1 . # UniversalString(value) -> OpenSSL :: ASN1 :: UniversalString -> OpenSSL :: ASN1 :: UniversalString - OpenSSL
:: ASN1 . # UniversalString(value , tag , tagging , tag _ class) -> OpenSSL :: ASN1 :: UniversalString - OpenSSL
:: SSL :: OP _ MSIE _ SSLV2 _ RSA _ PADDING -> Integer
-
OpenSSL
:: PKey :: RSA (63301.0) -
RSA 暗号鍵のクラスです。
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
のいずれかでしょう。これ以外のメソッドを利用するときは
RSA についてよく理解し、必要な場... -
OpenSSL
:: SSL :: OP _ EPHEMERAL _ RSA -> Integer (45700.0) -
RSA を使う場合に常に一時的 RSA 鍵を使うことを意味するフラグです。
RSA を使う場合に常に一時的 RSA 鍵を使うことを意味するフラグです。
OpenSSL::SSL::SSLContext#options= で利用します。 -
OpenSSL
:: ASN1 . # UniversalString(value) -> OpenSSL :: ASN1 :: UniversalString -> OpenSSL :: ASN1 :: UniversalString (37801.0) -
ASN.1 の UniversalString 型の値を表現する Ruby のオブジェクトを 生成します。
ASN.1 の UniversalString 型の値を表現する Ruby のオブジェクトを
生成します。
OpenSSL::ASN1::UniversalString.new と同じです。
@param value ASN.1 値を表す Ruby のオブジェクト(文字列)
@param tag タグ番号
@param tagging タグ付けの方法(:IMPLICIT もしくは :EXPLICIT)
@param tag_class タグクラス(:UNIVERSAL, :CONTEXT_SPECIFIC, :APPLICATION, :PRIVATE のいずれか) -
OpenSSL
:: ASN1 . # UniversalString(value , tag , tagging , tag _ class) -> OpenSSL :: ASN1 :: UniversalString (37201.0) -
ASN.1 の UniversalString 型の値を表現する Ruby のオブジェクトを 生成します。
ASN.1 の UniversalString 型の値を表現する Ruby のオブジェクトを
生成します。
OpenSSL::ASN1::UniversalString.new と同じです。
@param value ASN.1 値を表す Ruby のオブジェクト(文字列)
@param tag タグ番号
@param tagging タグ付けの方法(:IMPLICIT もしくは :EXPLICIT)
@param tag_class タグクラス(:UNIVERSAL, :CONTEXT_SPECIFIC, :APPLICATION, :PRIVATE のいずれか) -
OpenSSL
:: SSL :: OP _ MSIE _ SSLV2 _ RSA _ PADDING -> Integer (36604.0) -
SSL 通信での各種バグ回避コードを有効にするフラグです。
SSL 通信での各種バグ回避コードを有効にするフラグです。
OpenSSL::SSL::SSLContext#options= で利用します。
通常は OpenSSL::SSL::OP_ALL でこれらすべてを有効にします。
特定のフラグのみ無効にしたい場合は例えば
ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS
などとします。 -
OpenSSL
:: ASN1 :: UNIVERSALSTRING -> Integer (36601.0) -
ASN.1 UNIVERSAL タグの、 UNIVERSALSTRING のタグ番号 28 を表す定数です。
ASN.1 UNIVERSAL タグの、
UNIVERSALSTRING のタグ番号 28 を表す定数です。 -
OpenSSL
:: ASN1 :: UNIVERSAL _ TAG _ NAME -> [String] (36601.0) -
タグ番号が表す ASN.1 オブジェクト名を収録した配列です。
タグ番号が表す ASN.1 オブジェクト名を収録した配列です。
例:
require 'openssl'
p OpenSSL::ASN1::UNIVERSAL_TAG_NAME[0] # => "EOC"
p OpenSSL::ASN1::UNIVERSAL_TAG_NAME[12] # => "UTF8STRING"
ASN.1 オブジェクトのタグ番号を表す定数が以下のように定義されています。
require 'openssl'
p OpenSSL::ASN1::UTF8STRING # => 12 -
OpenSSL
:: ASN1 :: UniversalString (36001.0) -
ASN.1 の UniversalString 型(Universal タグのタグ番号28)を表すクラスです。
ASN.1 の UniversalString 型(Universal タグのタグ番号28)を表すクラスです。 -
OpenSSL
:: PKey :: RSA # public _ encrypt(str , mode = OpenSSL :: PKey :: RSA :: PKCS1 _ PADDING) -> String (27676.0) -
文字列 str を公開鍵で暗号化します。
文字列 str を公開鍵で暗号化します。
暗号化されたデータを文字列で返します。
mode でパディングモードを指定します。以下の4つのうちいずれかが
利用可能です。
* 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:... -
OpenSSL
:: PKey :: RSA # public _ key -> OpenSSL :: PKey :: RSA (27652.0) -
公開鍵を複製して RSA オブジェクトとして返します。
公開鍵を複製して RSA オブジェクトとして返します。 -
OpenSSL
:: PKey :: RSA # public _ decrypt(str , mode = OpenSSL :: PKey :: RSA :: PKCS1 _ PADDING) -> String (27640.0) -
文字列 str を公開鍵で復号化します。
文字列 str を公開鍵で復号化します。
復号化されたデータを文字列で返します。
mode でパディングモードを指定します。以下のいずれかが
利用可能です。暗号化に利用したパディングモードと同じものを
指定する必要があります。
* OpenSSL::PKey::RSA::PKCS1_PADDING
* OpenSSL::PKey::RSA::NO_PADDING
@param str 復号化する文字列
@param mode パディングモード
@raise OpenSSL::PKey::RSAError 復号化に失敗した場合に発生します。 -
Gem
:: SSL :: PKEY _ RSA -> Symbol | Class (27604.0) -
@todo
@todo -
OpenSSL
:: Engine :: METHOD _ RSA -> Integer (27352.0) -
デフォルトの RSA アルゴリズムのための engine に設定することを意味します。
デフォルトの RSA アルゴリズムのための engine に設定することを意味します。
OpenSSL::Engine#set_default のフラグとして使います。 -
OpenSSL
:: PKey :: RSA :: SSLV23 _ PADDING -> Integer (27337.0) -
PKCS #1 v1.5 で定義されているものに SSL特有の変更を加えたパディングモードです。
PKCS #1 v1.5 で定義されているものに
SSL特有の変更を加えたパディングモードです。
互換性目的以外での利用は推奨しません。
OpenSSL::PKey::RSA#public_encrypt、
OpenSSL::PKey::RSA#private_decrypt の
第二引数に指定できます。 -
OpenSSL
:: SSL :: OP _ MICROSOFT _ BIG _ SSLV3 _ BUFFER -> Integer (27304.0) -
SSL 通信での各種バグ回避コードを有効にするフラグです。
SSL 通信での各種バグ回避コードを有効にするフラグです。
OpenSSL::SSL::SSLContext#options= で利用します。
通常は OpenSSL::SSL::OP_ALL でこれらすべてを有効にします。
特定のフラグのみ無効にしたい場合は例えば
ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS
などとします。 -
OpenSSL
:: SSL :: OP _ NETSCAPE _ CHALLENGE _ BUG -> Integer (27304.0) -
SSL 通信での各種バグ回避コードを有効にするフラグです。
SSL 通信での各種バグ回避コードを有効にするフラグです。
OpenSSL::SSL::SSLContext#options= で利用します。
通常は OpenSSL::SSL::OP_ALL でこれらすべてを有効にします。
特定のフラグのみ無効にしたい場合は例えば
ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS
などとします。 -
OpenSSL
:: SSL :: OP _ SSLEAY _ 080 _ CLIENT _ DH _ BUG -> Integer (27304.0) -
SSL 通信での各種バグ回避コードを有効にするフラグです。
SSL 通信での各種バグ回避コードを有効にするフラグです。
OpenSSL::SSL::SSLContext#options= で利用します。
通常は OpenSSL::SSL::OP_ALL でこれらすべてを有効にします。
特定のフラグのみ無効にしたい場合は例えば
ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS
などとします。 -
OpenSSL
:: SSL :: OP _ SSLREF2 _ REUSE _ CERT _ TYPE _ BUG -> Integer (27304.0) -
SSL 通信での各種バグ回避コードを有効にするフラグです。
SSL 通信での各種バグ回避コードを有効にするフラグです。
OpenSSL::SSL::SSLContext#options= で利用します。
通常は OpenSSL::SSL::OP_ALL でこれらすべてを有効にします。
特定のフラグのみ無効にしたい場合は例えば
ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS
などとします。 -
OpenSSL
:: SSL :: OP _ TLS _ BLOCK _ PADDING _ BUG -> Integer (27304.0) -
SSL 通信での各種バグ回避コードを有効にするフラグです。
SSL 通信での各種バグ回避コードを有効にするフラグです。
OpenSSL::SSL::SSLContext#options= で利用します。
通常は OpenSSL::SSL::OP_ALL でこれらすべてを有効にします。
特定のフラグのみ無効にしたい場合は例えば
ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS
などとします。 -
OpenSSL
:: SSL :: OP _ TLS _ D5 _ BUG -> Integer (27304.0) -
SSL 通信での各種バグ回避コードを有効にするフラグです。
SSL 通信での各種バグ回避コードを有効にするフラグです。
OpenSSL::SSL::SSLContext#options= で利用します。
通常は OpenSSL::SSL::OP_ALL でこれらすべてを有効にします。
特定のフラグのみ無効にしたい場合は例えば
ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS
などとします。 -
OpenSSL
:: PKey :: RSA # public? -> true (27301.0) -
自身が公開鍵を持っているかどうか判定します。
自身が公開鍵を持っているかどうか判定します。
秘密鍵は公開鍵も持っているため、常に true を返します。 -
OpenSSL
:: PKey :: RSAError (27049.0) -
RSA 関連のエラーが起きた場合に発生する例外のクラスです。
RSA 関連のエラーが起きた場合に発生する例外のクラスです。 -
OpenSSL
:: SSL :: SSLServer (27019.0) -
SSL サーバーのためのクラス。
SSL サーバーのためのクラス。
TCPServer をラップするクラスで、TCPServer で接続した
ソケットを OpenSSL::SSL::SSLSocket でラップする機能を持ちます。
おおよそ TCPServer と同様のメソッドを持ちます。
基本的には SSL サーバを簡単に実装するためのクラスであり、
これを利用せずとも SSL サーバを実装することは可能です。
以下はクライアントからの入力を標準出力に出力するだけのサーバです。
require 'socket'
require 'openssl'
include OpenSSL
ctx =... -
OpenSSL
:: PKey :: RSA . new -> OpenSSL :: PKey :: RSA (18736.0) -
RSA 暗号鍵オブジェクトを生成します。
RSA 暗号鍵オブジェクトを生成します。
引数なしの場合は空の RSA オブジェクトを返します。
第一引数に整数を指定した場合には、OpenSSL::PKey::RSA.generate により
公開鍵と秘密鍵のペアを生成し、それを返します。
それ以外の場合には、以下のようにして鍵データを読みこみ、RSA オブジェクト
を生成します。
* 第一引数が文字列の場合は、PEM 形式もしくは DER 形式と仮定して
鍵データを読み込みます
* 第一引数が IO オブジェクトの場合は、その内容を
読み込んで RSA オブジェクトを生成します。
* 第一引数が to_d... -
OpenSSL
:: PKey :: RSA . new(obj , pass = nil) -> OpenSSL :: PKey :: RSA (18736.0) -
RSA 暗号鍵オブジェクトを生成します。
RSA 暗号鍵オブジェクトを生成します。
引数なしの場合は空の RSA オブジェクトを返します。
第一引数に整数を指定した場合には、OpenSSL::PKey::RSA.generate により
公開鍵と秘密鍵のペアを生成し、それを返します。
それ以外の場合には、以下のようにして鍵データを読みこみ、RSA オブジェクト
を生成します。
* 第一引数が文字列の場合は、PEM 形式もしくは DER 形式と仮定して
鍵データを読み込みます
* 第一引数が IO オブジェクトの場合は、その内容を
読み込んで RSA オブジェクトを生成します。
* 第一引数が to_d... -
OpenSSL
:: PKey :: RSA . new(obj , pass = nil) {|flag| . . . } -> OpenSSL :: PKey :: RSA (18736.0) -
RSA 暗号鍵オブジェクトを生成します。
RSA 暗号鍵オブジェクトを生成します。
引数なしの場合は空の RSA オブジェクトを返します。
第一引数に整数を指定した場合には、OpenSSL::PKey::RSA.generate により
公開鍵と秘密鍵のペアを生成し、それを返します。
それ以外の場合には、以下のようにして鍵データを読みこみ、RSA オブジェクト
を生成します。
* 第一引数が文字列の場合は、PEM 形式もしくは DER 形式と仮定して
鍵データを読み込みます
* 第一引数が IO オブジェクトの場合は、その内容を
読み込んで RSA オブジェクトを生成します。
* 第一引数が to_d... -
OpenSSL
:: PKey :: RSA . new(size , exponent = 65537) -> OpenSSL :: PKey :: RSA (18736.0) -
RSA 暗号鍵オブジェクトを生成します。
RSA 暗号鍵オブジェクトを生成します。
引数なしの場合は空の RSA オブジェクトを返します。
第一引数に整数を指定した場合には、OpenSSL::PKey::RSA.generate により
公開鍵と秘密鍵のペアを生成し、それを返します。
それ以外の場合には、以下のようにして鍵データを読みこみ、RSA オブジェクト
を生成します。
* 第一引数が文字列の場合は、PEM 形式もしくは DER 形式と仮定して
鍵データを読み込みます
* 第一引数が IO オブジェクトの場合は、その内容を
読み込んで RSA オブジェクトを生成します。
* 第一引数が to_d... -
OpenSSL
:: PKey :: RSA . new(size , exponent = 65537) {|u , n| . . . } -> OpenSSL :: PKey :: RSA (18736.0) -
RSA 暗号鍵オブジェクトを生成します。
RSA 暗号鍵オブジェクトを生成します。
引数なしの場合は空の RSA オブジェクトを返します。
第一引数に整数を指定した場合には、OpenSSL::PKey::RSA.generate により
公開鍵と秘密鍵のペアを生成し、それを返します。
それ以外の場合には、以下のようにして鍵データを読みこみ、RSA オブジェクト
を生成します。
* 第一引数が文字列の場合は、PEM 形式もしくは DER 形式と仮定して
鍵データを読み込みます
* 第一引数が IO オブジェクトの場合は、その内容を
読み込んで RSA オブジェクトを生成します。
* 第一引数が to_d... -
OpenSSL
:: PKey :: RSA . generate(size , exponent = 65537) -> OpenSSL :: PKey :: RSA (18721.0) -
乱数により RSA 公開鍵と秘密鍵のペアを生成して、RSA オブジェクトを返します。
乱数により RSA 公開鍵と秘密鍵のペアを生成して、RSA オブジェクトを返します。
このメソッドを呼ぶ前に OpenSSL::Random の各モジュール関数に
よって乱数が適切に初期化されている必要があります。
size で鍵の modulus のビット数つまりは鍵のサイズを指定します。
最低でも1024を指定してください。
exponent で public exponent を指定します。exponent には奇数を指定し、
大抵の場合、3、17 あるいは 65537 を指定します。
このメソッドにブロックが渡された場合には、鍵生成の途中経過の
情報を引数としてブロックが呼び出さ... -
OpenSSL
:: PKey :: RSA . generate(size , exponent = 65537) {|u , n| . . . } -> OpenSSL :: PKey :: RSA (18721.0) -
乱数により RSA 公開鍵と秘密鍵のペアを生成して、RSA オブジェクトを返します。
乱数により RSA 公開鍵と秘密鍵のペアを生成して、RSA オブジェクトを返します。
このメソッドを呼ぶ前に OpenSSL::Random の各モジュール関数に
よって乱数が適切に初期化されている必要があります。
size で鍵の modulus のビット数つまりは鍵のサイズを指定します。
最低でも1024を指定してください。
exponent で public exponent を指定します。exponent には奇数を指定し、
大抵の場合、3、17 あるいは 65537 を指定します。
このメソッドにブロックが渡された場合には、鍵生成の途中経過の
情報を引数としてブロックが呼び出さ... -
OpenSSL
:: PKey :: RSA # private _ decrypt(str , mode = OpenSSL :: PKey :: RSA :: PKCS1 _ PADDING) -> String (18676.0) -
文字列 str を秘密鍵で復号化します。
文字列 str を秘密鍵で復号化します。
復号化されたデータを文字列で返します。
mode でパディングモードを指定します。暗号化に利用した
パディングモードと同じものを指定する必要があります。
以下の4つのうちいずれかが利用可能です。
* OpenSSL::PKey::RSA::PKCS1_PADDING
* OpenSSL::PKey::RSA::SSLV23_PADDING
* OpenSSL::PKey::RSA::PKCS1_OAEP_PADDING
* OpenSSL::PKey::RSA::NO_PADDING
@param str 暗号化する文字列
@param ... -
OpenSSL
:: PKey :: RSA # private _ encrypt(str , mode = OpenSSL :: PKey :: RSA :: PKCS1 _ PADDING) -> String (18640.0) -
文字列 str を秘密鍵で暗号化します。
文字列 str を秘密鍵で暗号化します。
暗号化されたデータを文字列で返します。
mode でパディングモードを指定します。以下のいずれかが利用可能です。
* OpenSSL::PKey::RSA::PKCS1_PADDING
* OpenSSL::PKey::RSA::NO_PADDING
@param str 暗号化する文字列
@param mode パディングモード
@raise OpenSSL::PKey::RSAError 暗号化に失敗した場合に発生します。
自身が秘密鍵でない場合などに発生します。 -
OpenSSL
:: ASN1 :: UniversalString . new(value) -> OpenSSL :: ASN1 :: UniversalString (18601.0) -
ASN.1 の UniversalString 型の値を表現する OpenSSL::ASN1::UniversalString オブジェクトを 生成します。
ASN.1 の UniversalString 型の値を表現する OpenSSL::ASN1::UniversalString オブジェクトを
生成します。
value 以外の引数を省略した場合はタグクラスは :UNIVERSAL、
タグ は OpenSSL::ASN1::UNIVERSALSTRING となります。
@param value ASN.1 値を表す Ruby のオブジェクト(文字列)
@param tag タグ番号
@param tagging タグ付けの方法(:IMPLICIT もしくは :EXPLICIT)
@param tag_class タグクラス(:UNIVERS... -
OpenSSL
:: ASN1 :: UniversalString . new(value , tag , tagging , tag _ class) -> OpenSSL :: ASN1 :: UniversalString (18601.0) -
ASN.1 の UniversalString 型の値を表現する OpenSSL::ASN1::UniversalString オブジェクトを 生成します。
ASN.1 の UniversalString 型の値を表現する OpenSSL::ASN1::UniversalString オブジェクトを
生成します。
value 以外の引数を省略した場合はタグクラスは :UNIVERSAL、
タグ は OpenSSL::ASN1::UNIVERSALSTRING となります。
@param value ASN.1 値を表す Ruby のオブジェクト(文字列)
@param tag タグ番号
@param tagging タグ付けの方法(:IMPLICIT もしくは :EXPLICIT)
@param tag_class タグクラス(:UNIVERS... -
OpenSSL
:: PKey :: RSA # params -> {String => OpenSSL :: BN} (18463.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
:: Engine # set _ default(flags) -> true (18319.0) -
engine をデフォルトで利用するようにします。
engine をデフォルトで利用するようにします。
flags は engine を openssl のどの機能に関してデフォルトに
するかを指定します。
flags は以下の値の OR を取ります。
* OpenSSL::Engine::METHOD_CIPHERS
* OpenSSL::Engine::METHOD_DH
* OpenSSL::Engine::METHOD_DIGESTS
* OpenSSL::Engine::METHOD_DSA
* OpenSSL::Engine::METHOD_RSA
* OpenSSL::Engine::METHOD_RA... -
OpenSSL
:: PKey :: EC # public _ key? -> bool (18319.0) -
EC オブジェクトが公開鍵を保持していれば真を返します。
EC オブジェクトが公開鍵を保持していれば真を返します。
OpenSSL::PKey::RSA や OpenSSL::PKey::DSA と
異なり、EC オブジェクトが公開鍵を含まない場合が存在します。
例えば、OpenSSL::PKey::EC.new でパラメータとなる群のみを
指定して EC オブジェクトを作った場合は、公開鍵も秘密鍵も
保持していません。この場合 OpenSSL::PKey::EC#generate_key で
鍵を生成するまで、その状態のままです。
このメソッドを呼ぶ前に OpenSSL::Random の各モジュール関数に
よって乱数が適切に初期化されている必... -
OpenSSL
:: X509 :: Certificate # public _ key -> OpenSSL :: PKey :: PKey (18319.0) -
証明書に記載された公開鍵を返します。
証明書に記載された公開鍵を返します。
鍵の種類によって以下のいずれかのクラスのインスタンスを返します。
* OpenSSL::PKey::RSA
* OpenSSL::PKey::DSA
* OpenSSL::PKey::DH
* OpenSSL::PKey::EC
@raise OpenSSL::X509::CertificateError 鍵の取得に失敗した場合に発生します
@raise OpenSSL::PKey::PKeyError サポートしていない種類の鍵である場合に発生します -
OpenSSL
:: PKey :: RSA # d -> OpenSSL :: BN (18301.0) -
鍵の private exponent です。
鍵の private exponent です。
これは秘密鍵の一部です。 -
OpenSSL
:: PKey :: RSA # dmp1 -> OpenSSL :: BN (18301.0) -
鍵の exponent1 (d mod (p-1)) です。
鍵の exponent1 (d mod (p-1)) です。
秘密鍵の情報です。 -
OpenSSL
:: PKey :: RSA # dmq1 -> OpenSSL :: BN (18301.0) -
鍵の exponent2 (d mod (q-1)) です。
鍵の exponent2 (d mod (q-1)) です。
秘密鍵の情報です。 -
OpenSSL
:: PKey :: RSA # e -> OpenSSL :: BN (18301.0) -
鍵の public exponent を返します。
鍵の public exponent を返します。
これは公開鍵の一部です。 -
OpenSSL
:: PKey :: RSA # export(cipher=nil , pass=nil) -> String (18301.0) -
鍵を PEM 形式で出力します。
鍵を PEM 形式で出力します。
cipher と pass が指定された場合、
秘密鍵を暗号 cipher OpenSSL::Cipher::Cipher
とパスワード pass を使って暗号化します。
cipher を指定して pass を省略した場合は
渡されたブロックを呼びだしてパスフレーズを要求します。ブロックの返り値を
パスフレーズとみなして暗号化します。
ブロックの引数は通常は true が渡されますが、
これはそのパスフレーズが秘密鍵の暗号化に使われることを意味します。
ブロックが渡されなかった場合にはターミナルに問い合わせをします。
公開鍵を出力する場合は ciphe... -
OpenSSL
:: PKey :: RSA # export(cipher=nil , pass=nil) {|flag| . . . } -> String (18301.0) -
鍵を PEM 形式で出力します。
鍵を PEM 形式で出力します。
cipher と pass が指定された場合、
秘密鍵を暗号 cipher OpenSSL::Cipher::Cipher
とパスワード pass を使って暗号化します。
cipher を指定して pass を省略した場合は
渡されたブロックを呼びだしてパスフレーズを要求します。ブロックの返り値を
パスフレーズとみなして暗号化します。
ブロックの引数は通常は true が渡されますが、
これはそのパスフレーズが秘密鍵の暗号化に使われることを意味します。
ブロックが渡されなかった場合にはターミナルに問い合わせをします。
公開鍵を出力する場合は ciphe... -
OpenSSL
:: PKey :: RSA # iqmp -> OpenSSL :: BN (18301.0) -
鍵の coefficient (inverse of q mod p) です。
鍵の coefficient (inverse of q mod p) です。
秘密鍵の情報です。 -
OpenSSL
:: PKey :: RSA # n -> OpenSSL :: BN (18301.0) -
鍵の modulus です。
鍵の modulus です。
公開鍵、秘密鍵両方の一部です。 -
OpenSSL
:: PKey :: RSA # p -> OpenSSL :: BN (18301.0) -
鍵の1つめの素数です。
鍵の1つめの素数です。
秘密鍵の情報です。 -
OpenSSL
:: PKey :: RSA # private? -> bool (18301.0) -
自身が秘密鍵を持っているかどうか判定します。
自身が秘密鍵を持っているかどうか判定します。 -
OpenSSL
:: PKey :: RSA # q -> OpenSSL :: BN (18301.0) -
鍵の2つめの素数です。
鍵の2つめの素数です。
秘密鍵の情報です。 -
OpenSSL
:: PKey :: RSA # to _ pem(cipher=nil , pass=nil) -> String (18301.0) -
鍵を PEM 形式で出力します。
鍵を PEM 形式で出力します。
cipher と pass が指定された場合、
秘密鍵を暗号 cipher OpenSSL::Cipher::Cipher
とパスワード pass を使って暗号化します。
cipher を指定して pass を省略した場合は
渡されたブロックを呼びだしてパスフレーズを要求します。ブロックの返り値を
パスフレーズとみなして暗号化します。
ブロックの引数は通常は true が渡されますが、
これはそのパスフレーズが秘密鍵の暗号化に使われることを意味します。
ブロックが渡されなかった場合にはターミナルに問い合わせをします。
公開鍵を出力する場合は ciphe... -
OpenSSL
:: PKey :: RSA # to _ pem(cipher=nil , pass=nil) {|flag| . . . } -> String (18301.0) -
鍵を PEM 形式で出力します。
鍵を PEM 形式で出力します。
cipher と pass が指定された場合、
秘密鍵を暗号 cipher OpenSSL::Cipher::Cipher
とパスワード pass を使って暗号化します。
cipher を指定して pass を省略した場合は
渡されたブロックを呼びだしてパスフレーズを要求します。ブロックの返り値を
パスフレーズとみなして暗号化します。
ブロックの引数は通常は true が渡されますが、
これはそのパスフレーズが秘密鍵の暗号化に使われることを意味します。
ブロックが渡されなかった場合にはターミナルに問い合わせをします。
公開鍵を出力する場合は ciphe... -
OpenSSL
:: PKey :: RSA # to _ s(cipher=nil , pass=nil) -> String (18301.0) -
鍵を PEM 形式で出力します。
鍵を PEM 形式で出力します。
cipher と pass が指定された場合、
秘密鍵を暗号 cipher OpenSSL::Cipher::Cipher
とパスワード pass を使って暗号化します。
cipher を指定して pass を省略した場合は
渡されたブロックを呼びだしてパスフレーズを要求します。ブロックの返り値を
パスフレーズとみなして暗号化します。
ブロックの引数は通常は true が渡されますが、
これはそのパスフレーズが秘密鍵の暗号化に使われることを意味します。
ブロックが渡されなかった場合にはターミナルに問い合わせをします。
公開鍵を出力する場合は ciphe... -
OpenSSL
:: PKey :: RSA # to _ s(cipher=nil , pass=nil) {|flag| . . . } -> String (18301.0) -
鍵を PEM 形式で出力します。
鍵を PEM 形式で出力します。
cipher と pass が指定された場合、
秘密鍵を暗号 cipher OpenSSL::Cipher::Cipher
とパスワード pass を使って暗号化します。
cipher を指定して pass を省略した場合は
渡されたブロックを呼びだしてパスフレーズを要求します。ブロックの返り値を
パスフレーズとみなして暗号化します。
ブロックの引数は通常は true が渡されますが、
これはそのパスフレーズが秘密鍵の暗号化に使われることを意味します。
ブロックが渡されなかった場合にはターミナルに問い合わせをします。
公開鍵を出力する場合は ciphe... -
OpenSSL
:: PKey :: RSA :: NO _ PADDING -> Integer (18073.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 (18073.0) -
PKCS #1 v1.5 で定義されているパディングモードです。
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 (18037.0) -
PKCS #1 v2.0 で定義されているパディングモードです。
PKCS #1 v2.0 で定義されているパディングモードです。
互換性に問題ない場合はこのモードを利用すべきです。
OpenSSL::PKey::RSA#public_encrypt、
OpenSSL::PKey::RSA#private_decrypt の
第二引数に指定できるパディングモード。 -
OpenSSL
:: SSL :: SSLContext # ciphers -> [[String , String , Integer , Integer]] (18019.0) -
利用可能な共通鍵暗号の種類を配列で返します。
利用可能な共通鍵暗号の種類を配列で返します。
配列の各要素は以下のような配列です
[暗号方式の名前の文字列, 利用可能なSSL/TLSのバージョン文字列, 鍵長(ビット数), アルゴリズムのビット長]
例:
require 'openssl'
ctx = OpenSSL::SSL::SSLContext.new('TLSv1')
ctx.ciphers
# => [["DHE-RSA-AES256-SHA", "TLSv1/SSLv3", 256, 256],
# ["DHE-DSS-AES256-SHA", "TLSv1/SSLv3", 256, 256]... -
OpenSSL
:: SSL :: SSLContext # options=(options) (18019.0) -
オプションを設定します。
オプションを設定します。
以下の値の OR で指定します。
* OpenSSL::SSL::OP_ALL
* OpenSSL::SSL::OP_CIPHER_SERVER_PREFERENCE
* OpenSSL::SSL::OP_EPHEMERAL_RSA
* OpenSSL::SSL::OP_NETSCAPE_CA_DN_BUG
* OpenSSL::SSL::OP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG
* OpenSSL::SSL::OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION
* OpenSS... -
openssl (18019.0)
-
OpenSSL(https://www.openssl.org/) を Ruby から扱うためのライブラリです。
OpenSSL(https://www.openssl.org/)
を Ruby から扱うためのライブラリです。
このドキュメントでは SSL/TLS の一般的事項については
解説をしません。利用者は、SSL/TLSの各概念、例えば
以下の事項について理解している必要があります。
* 暗号と認証に関する一般的概念
* セキュリティに対する攻撃法
* 公開鍵暗号と秘密鍵暗号
* 署名の役割、署名の方法とその検証
* 公開鍵基盤(PKI, Public Key Infrastructure)
* X.509 証明書
* 暗号と乱数について
SSLのようなセキュリティ技... -
OpenSSL
:: SSL :: OP _ DONT _ INSERT _ EMPTY _ FRAGMENTS -> Integer (18004.0) -
SSL 通信での各種バグ回避コードを有効にするフラグです。
SSL 通信での各種バグ回避コードを有効にするフラグです。
OpenSSL::SSL::SSLContext#options= で利用します。
通常は OpenSSL::SSL::OP_ALL でこれらすべてを有効にします。
特定のフラグのみ無効にしたい場合は例えば
ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS
などとします。 -
OpenSSL
:: SSL :: OP _ MICROSOFT _ SESS _ ID _ BUG -> Integer (18004.0) -
SSL 通信での各種バグ回避コードを有効にするフラグです。
SSL 通信での各種バグ回避コードを有効にするフラグです。
OpenSSL::SSL::SSLContext#options= で利用します。
通常は OpenSSL::SSL::OP_ALL でこれらすべてを有効にします。
特定のフラグのみ無効にしたい場合は例えば
ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS
などとします。 -
OpenSSL
:: SSL :: OP _ NETSCAPE _ REUSE _ CIPHER _ CHANGE _ BUG -> Integer (18004.0) -
SSL 通信での各種バグ回避コードを有効にするフラグです。
SSL 通信での各種バグ回避コードを有効にするフラグです。
OpenSSL::SSL::SSLContext#options= で利用します。
通常は OpenSSL::SSL::OP_ALL でこれらすべてを有効にします。
特定のフラグのみ無効にしたい場合は例えば
ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS
などとします。 -
OpenSSL
:: PKey :: RSA # d=(new _ d) (18001.0) -
private exponent を設定します。
private exponent を設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param new_d 設定する整数値 -
OpenSSL
:: PKey :: RSA # dmp1=(new _ dmp1) (18001.0) -
鍵の exponent1 を設定します。
鍵の exponent1 を設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param new_dmp1 設定する整数 -
OpenSSL
:: PKey :: RSA # dmq1=(new _ dmq1) (18001.0) -
鍵の exponent2 を設定します。
鍵の exponent2 を設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param new_dmq1 設定する整数 -
OpenSSL
:: PKey :: RSA # e=(new _ e) (18001.0) -
鍵の public exponent を変更します。
鍵の public exponent を変更します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param new_e 設定する public exponent の整数値 -
OpenSSL
:: PKey :: RSA # iqmp=(new _ iqmp) (18001.0) -
鍵の coefficient を設定します。
鍵の coefficient を設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param new_iqmp 設定する整数値 -
OpenSSL
:: PKey :: RSA # n=(new _ n) (18001.0) -
鍵の modulus を設定します。
鍵の modulus を設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param new_n 設定する整数値 -
OpenSSL
:: PKey :: RSA # p=(new _ p) (18001.0) -
鍵の1つめの素数を設定します。
鍵の1つめの素数を設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param new_p 設定する素数 -
OpenSSL
:: PKey :: RSA # q=(new _ q) (18001.0) -
鍵の2つめの素数を設定します。
鍵の2つめの素数を設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param new_q 設定する素数 -
OpenSSL
:: PKey :: RSA # to _ der -> String (18001.0) -
自身を DER 形式に変換します。
自身を DER 形式に変換します。 -
OpenSSL
:: PKey :: RSA # to _ text -> String (18001.0) -
鍵を人間が読める形式に変換します。
鍵を人間が読める形式に変換します。 -
OpenSSL
:: PKCS7 . write _ smime(p7sig , data=nil , flags = 0) -> String (9319.0) -
PKCS7 オブジェクトから S/MIME 形式の文字列を返します。
PKCS7 オブジェクトから S/MIME 形式の文字列を返します。
data には署名対象のデータを渡します。
data に nil を渡すと OpenSSL::PKCS7#data で得られる
文字列を用います。通常は nil を渡してください。
flags には以下の定数の or を渡します。
* OpenSSL::PKCS7::DETACHED
クリア署名をします。これは OpenSSL::PKCS7.sign で
OpenSSL::PKCS7::DETACHED を渡した場合にのみ意味を持ちます。
* OpenSSL::PKCS7::TEXT
... -
OpenSSL
:: X509 :: Request (9073.0) -
X.509 の証明書署名要求(Certificate Signing Request, CSR)を表わす クラスです。
X.509 の証明書署名要求(Certificate Signing Request, CSR)を表わす
クラスです。
X.509 CSR については 2986 などを参照してください。
=== 例
CSR を生成する例。
require 'openssl'
# ファイルから秘密鍵を読み込む
rsa = OpenSSL::PKey::RSA.new(File.read("privkey.pem"))
# 新しい CSR オブジェクトを生成
csr = OpenSSL::X509::Request.new
# DN を生成
name = OpenSSL::X50... -
OpenSSL
:: Random (9037.0) -
OpenSSL が利用する擬似乱数生成器関連のモジュールです。
OpenSSL が利用する擬似乱数生成器関連のモジュールです。
* 4086
=== 暗号と乱数
OpenSSL では、鍵を生成するためなどに乱数を用いています。例えば RSA では
巨大(512bitや1024bitなど)な素数の組を乱数で生成し、そこから公開鍵、秘密鍵の
ペアを計算します。鍵は他人に知られてはならないため、
その乱数は外部からの推論が不可能な良い性質を持っている必要があります。
このようなメソッドには以下のものがあります。
* OpenSSL::PKey::RSA.generate
* OpenSSL::PKey::DSA.generate
* Open... -
OpenSSL
:: PKey :: EC # to _ pem -> String (9019.0) -
鍵を PEM 形式の文字列に変換します。
鍵を PEM 形式の文字列に変換します。
現在の仕様では OpenSSL::PKey::RSA#to_pem のように
出力をパスフレーズで暗号化することはできません。
@raise OpenSSL::PKey::ECError 文字列への変換に失敗した場合に発生します。
公開鍵が含まれていない場合や、鍵が妥当でない場合などに失敗します。 -
OpenSSL
:: PKey :: PKey (9019.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.sign("dss1", data)
# 署名の検証
p dsa512.verify(dss1, sign,... -
ruby 1
. 8 . 2 feature (145.0) -
ruby 1.8.2 feature ruby 1.8.2 での ruby 1.8.1 からの変更点です。
ruby 1.8.2 feature
ruby 1.8.2 での ruby 1.8.1 からの変更点です。
掲載方針
*バグ修正の影響も含めて動作が変わるものを収録する。
*単にバグを直しただけのものは収録しない。
*ライブラリへの単なる定数の追加は収録しない。
以下は各変更点に付けるべきタグです。
*カテゴリ
* [ruby]: ruby インタプリタの変更
* [api]: 拡張ライブラリ API
* [lib]: ライブラリ
*レベル
* [bug]: バグ修正
* [new]: 追加されたクラス/メソッドなど
* [compat]: 変更されたクラス/... -
rubygems
/ security (91.0) -
このライブラリは暗号署名を RubyGems パッケージに使用するために使用します。
このライブラリは暗号署名を RubyGems パッケージに使用するために使用します。
=== 署名付きの Gem パッケージ
==== 目次
* 概要
* 解説
* コマンドラインオプション
* OpenSSL リファレンス
* Bugs / TODO
* 作者について
==== 概要
このライブラリは暗号署名を RubyGems パッケージに使用するために使用します。
以下のセクションでは、署名付きの Gem パッケージを作成する方法を
ステップバイステップで解説しています。
==== 解説
@todo メソッドではない
あなたが自分の Gem に署名するためには、...