Ruby 2.4.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Randomクラス > raw_seed

singleton method Random.raw_seed

raw_seed(size) -> String[permalink][rdoc]

プラットフォームの提供する機能を使って、文字列を返します。

[PARAM] size:
結果の文字列のサイズをバイト数で指定します。
[RETURN]
返り値はバイナリ形式で、暗号的に安全な擬似乱数だと期待できます。
[RETURN]
プラットフォームの提供する機能の準備に失敗した場合は nil を返します。

2017年の時点で、Linuxのmanpage(random(7))には「今日256ビット以上の セキュリティを約束できる暗号化プリミティブが入手可能だとは期待できません」と 書いてあります。そのため、sizeとして32より大きい値を指定することには疑問の 余地があります。

例:

Random.raw_seed(8)  #=> "\x78\x41\xBA\xAF\x7D\xEA\xD8\xEA"