Schneier on Security: Random Number Generators
Bruce Scheneierのblogからのネタ
NISTから
Recommendation for Random Number Generation Using Deterministic Random Bit Generators
というタイトルの文書が発刊されたらしい。
SP800-90
リンクはココ(注意:PDFファイル(592KB))です。
ざっくりと読んでみたところでは、
・ハッシュ関数ベースの乱数生成器
・ブロック暗号ベースの乱数生成器
・数論ベースの乱数生成器
の三つに分かれます。
ハッシュ関数ベースのものは、
SHA-1とかSHA-224/256/384/512を使うものとHMACを使うものに分かれます。
前者は、NIST SP800-22(乱数検定の文書)のサンプルとして使われていたものと同じものです。
ブロック暗号ベースのものは、いわゆるCTRモードを使ったものです。
ブロック暗号アルゴリズムとしては、3Key TDEA(TripleDES)とAES-128/192/256
さすがにCamelliaとかSEEDは使われていません(w
数論ベースのものは、二つの楕円曲線を用いたものです。
それぞれ、ビット長256,384,521(512の誤植じゃないのか?)が指定されています。
最終出力の前にハッシュ関数を使う必要があるようなことが書かれているような気がします。
ちょっと、ざっくり読んでみると面白い文書かもしれません。
でも、ぶっちゃけ、速度を考えたら、ハッシュ関数ベースのだけでじゅうぶんじゃないかなぁ。
