ライブラリ
- openssl (19)
クラス
-
OpenSSL
:: BN (4) -
OpenSSL
:: Cipher (2) -
OpenSSL
:: Engine (2)
モジュール
-
OpenSSL
:: Random (9)
キーワード
-
METHOD
_ RAND (1) - Random (1)
- RandomError (1)
- egd (1)
-
egd
_ bytes (1) -
load
_ random _ file (1) -
pseudo
_ bytes (1) -
pseudo
_ rand (1) -
pseudo
_ rand _ range (1) -
rand
_ range (1) -
random
_ add (1) -
random
_ bytes (1) -
random
_ iv (1) -
random
_ key (1) - seed (1)
-
set
_ default (1) - status? (1)
-
write
_ random _ file (1)
検索結果
先頭5件
-
OpenSSL
:: BN . rand(bits , fill=0 , odd=false) -> OpenSSL :: BN (72940.0) -
暗号論的に強い擬似乱数を生成し、返します。
暗号論的に強い擬似乱数を生成し、返します。
bits ビットの長さの正の整数を生成します。
fill が -1 なら、生成させる数の最上位ビットが
0である場合を許容します。fill が 0 なら、
生成させる数の最上位ビットは1にセットされます、
つまり必ず bits ビットの整数となります。
fill が1の場合は、上位2ビットが1にセットされます。
odd が真なら、生成される整数は奇数のみとなります。
@param bits 発生させる数のビット数
@param fill 上位ビットの性質を決める整数
@param odd 真なら発生させる数は奇数のみとなる
@raise Op... -
OpenSSL
:: Random . # write _ random _ file(filename) -> true (54901.0) -
乱数生成器で生成された 1024 バイトのランダムなバイト列を ファイルに書き込みます。
乱数生成器で生成された 1024 バイトのランダムなバイト列を
ファイルに書き込みます。
これで出力したランダムなバイト列はあとで乱数生成器を初期化するの
に使えます。リブート直後などシステムからのエントロピーが少ない場合に
利用できます。
このファイルは利用者以外には読めないように保存しなければなりません。
部外者がこのファイルを読めることはセキュリティ上の問題を引き起します。
@param filename 書き込むファイルの名前
@raise OpenSSL::Random::RandomError ファイルの書き出しに失敗した場合に発生します -
OpenSSL
:: Random . # load _ random _ file(filename) -> true (54601.0) -
ファイルを読み込み、その内容をエントロピー源として 乱数生成器に渡します。
ファイルを読み込み、その内容をエントロピー源として
乱数生成器に渡します。
エントロピーの推定量はファイルのバイト数と同じであると見なします。
OpenSSL::Random.seed(File.read(filename)) と同じです。
@param filename 読み込むファイル名
@raise OpenSSL::Random::RandomError ファイルの読み込みに失敗した場合に発生します
@raise OpenSSL::Random::RandomError -
OpenSSL
:: Random . # random _ add(str , entropy) -> self (45601.0) -
乱数生成器にエントロピーを追加します。
乱数生成器にエントロピーを追加します。
entropy には str が持っているエントロピーの予測値(の下限)を
バイト単位で渡します。
@param str 予測不可能な内容の文字列
@param entropy str が持っているエントロピーの予測値(バイト単位)の浮動小数点数 -
OpenSSL
:: Random . # random _ bytes(len) -> String (45601.0) -
暗号論的な予測不可能性を持つ乱数生成器によって、 len バイトの ランダムなバイト列を返します。
暗号論的な予測不可能性を持つ乱数生成器によって、 len バイトの
ランダムなバイト列を返します。
@param len 必要なランダムバイト列の長さ -
OpenSSL
:: Random :: RandomError (45001.0) -
OpenSSL の乱数関連のエラーが起きた場合に発生する例外
OpenSSL の乱数関連のエラーが起きた場合に発生する例外 -
OpenSSL
:: BN . pseudo _ rand(bits , fill=0 , odd=false) -> OpenSSL :: BN (36940.0) -
乱数を生成し、返します。
乱数を生成し、返します。
乱数系列に暗号論的な強さはないため、暗号関連でない場合や、
強さが必要でない場合に用いることができます。
鍵生成のような場合には使えません。
bits ビットの長さの正の整数を生成します。
fill が -1 なら、生成させる数の最上位ビットが
0である場合を許容します。fill が 0 なら、
生成させる数の最上位ビットは1にセットされます、
つまり必ず bits ビットの整数となります。
fill が1の場合は、上位2ビットが1にセットされます。
odd が真なら、生成される整数は奇数のみとなります。
@param bits 発生させる数のビット数
@p... -
OpenSSL
:: BN . pseudo _ rand _ range(range) -> OpenSSL :: BN (36940.0) -
乱数を 0 から range-1 までの間で生成し、返します。
乱数を 0 から range-1 までの間で生成し、返します。
乱数系列に暗号論的な強さはありません。
@param range 生成する乱数の範囲
@raise OpenSSL::BNError 乱数の生成に失敗した場合に発生します
@see OpenSSL::BN.pseudo_rand, OpenSSL::BN.rand_range -
OpenSSL
:: BN . rand _ range(range) -> OpenSSL :: BN (36940.0) -
暗号論的に強い擬似乱数を 0 から range-1 までの間で生成し、返します。
暗号論的に強い擬似乱数を 0 から range-1 までの間で生成し、返します。
@param range 生成する乱数の範囲
@raise OpenSSL::BNError 乱数の生成に失敗した場合に発生します
@see OpenSSL::BN.rand, OpenSSL::BN.pseudo_rand_range -
OpenSSL
:: Engine :: METHOD _ RAND -> Integer (36304.0) -
デフォルトのセキュアな乱数生成のための engine に設定することを意味します。
デフォルトのセキュアな乱数生成のための engine に設定することを意味します。
OpenSSL::Engine#set_default のフラグとして使います。 -
OpenSSL
:: Cipher # random _ iv -> String (36301.0) -
IV を乱数で生成し、暗号オブジェクトに設定します。
IV を乱数で生成し、暗号オブジェクトに設定します。
生成した IV を文字列で返します。 -
OpenSSL
:: Cipher # random _ key -> String (36301.0) -
鍵を乱数で生成し、暗号オブジェクトに設定します。
鍵を乱数で生成し、暗号オブジェクトに設定します。
生成した鍵を文字列で返します。 -
OpenSSL
:: Random (36037.0) -
OpenSSL が利用する擬似乱数生成器関連のモジュールです。
OpenSSL が利用する擬似乱数生成器関連のモジュールです。
* 4086
=== 暗号と乱数
OpenSSL では、鍵を生成するためなどに乱数を用いています。例えば RSA では
巨大(512bitや1024bitなど)な素数の組を乱数で生成し、そこから公開鍵、秘密鍵の
ペアを計算します。鍵は他人に知られてはならないため、
その乱数は外部からの推論が不可能な良い性質を持っている必要があります。
このようなメソッドには以下のものがあります。
* OpenSSL::PKey::RSA.generate
* OpenSSL::PKey::DSA.generate
* Open... -
OpenSSL
:: Random . # egd _ bytes(filename , length) -> true (27601.0) -
EGD(Entropy Gathering Daemon) から length バイト分のエントロピーを得ます。
EGD(Entropy Gathering Daemon) から length バイト分のエントロピーを得ます。
filename で指定した Unix domain socket から EGD に問い合わせ、
指定した大きさのエントロピーを乱数生成器に追加します。
@param filename EGD のソケットのファイル名
@param length 読み込むバイト数
@raise OpenSSL::Random::RandomError
@raise OpenSSL::Random::RandomError -
OpenSSL
:: Engine # set _ default(flags) -> true (27319.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
:: Random . # egd(filename) -> true (27301.0) -
EGD(Entropy Gathering Daemon) からエントロピーを得、 乱数生成器に追加します。
EGD(Entropy Gathering Daemon) からエントロピーを得、
乱数生成器に追加します。
filename で指定した Unix domain socket から EGD に問い合わせ、
255 バイト分のエントロピーを取得します。
OpenSSL::Random.egd_bytes(filename, 255) と同じです。
@param filename EGD のソケットのファイル名
@raise OpenSSL::Random::RandomError -
OpenSSL
:: Random . # pseudo _ bytes(len) -> String (27301.0) -
暗号論的な予測不可能性を持たない(が高速な) 乱数生成器によって、 len バイトの ランダムなバイト列を返します。
暗号論的な予測不可能性を持たない(が高速な)
乱数生成器によって、 len バイトの
ランダムなバイト列を返します。
@param len 必要なランダムバイト列の長さ -
OpenSSL
:: Random . # status? -> bool (27301.0) -
乱数生成器内のエントロピーが十分である場合に true を返します。
乱数生成器内のエントロピーが十分である場合に true を返します。 -
OpenSSL
:: Random . # seed(str) -> str (27001.0) -
乱数生成器にエントロピーを 「エントロピー予測値 = str のバイト数」として 追加します。
乱数生成器にエントロピーを
「エントロピー予測値 = str のバイト数」として
追加します。
OpenSSL::Random.random_add(str, str.size) と同じです。
@param str 予測不可能な内容の文字列
@see OpenSSL::Random.#random_add