10.3. 乱数安全が必要なプログラムは、攻撃者が推定できない「ランダムな」数(乱数)を さまざまな場面で生成しなければいけません。 たとえばランダムな数には、セッション鍵を含む公開もしくは秘密鍵や対称鍵、 さまざまなプロトコルで使用している nonce(その時だけ有効な情報)や初期 ベクトル(IV)、salt 等が該当します。 理想を言えば、乱数は真にランダムであるデータを元にすべきです。そのような 値には、放射線崩壊(ガイガー・カウンターの雑音を正確に計測)や大気の雑音、 電気回路の熱雑音があります。 コンピュータには、本物の乱数生成器として機能するハードウェア部品を搭載する ものもあります。利用できるものなら利用してください。 しかし、たいていのコンピュータには真に乱数を発生するハードウェアはついて いません。そこで乱数を発生させる方法が必要になるケースがほとんどです。発生 させる方