生成器に対する初期種と以降の値の計算方法は、下記のとおりです。底から数ビットだけを使うように注意してください。最低位順のビットのみを使うことが常に安全です。素因数分解することと同等に困難であることが証明できます。望まれれば公開することができます。値を計算できること」です。0これは、「このように多くの鍵が生成されているアプリケーションにおいては、それらすべてを保存することは、必要不可欠ではないこと」を意味します。記述されているような、多くの現代の擬似乱数源は、ビット列の「プール」を維持管理し、入力をそのプール中に何らかの乱雑性で強く撹拌するための操作を提供し、このプールから擬似乱数ビット列を得るテクニックを活用します。これは、下図中に表現されています。|+-----------+このプール中に入力されるビット列は、上記の様々なハードウェア源泉、環境的源泉あるいはユーザ入力源泉のいずれからも来る可能性があります。安定したストレージが利用可能なとき、システムのシャットダウン時に、そのプールの状態を保存し、再起動時に復元することも、卑近に行われています。「特定の出力が要するものを使うこと」をサポートするために、十分なエントロピーが、そのプールに加えられるように、注意が払われなければなりません。Englishいくつかの公的標準と、広く配備された例が、現在、鍵もしくは他の暗号技術的に乱雑な数の生成のために存在します。中には、エントロピー源泉を含むものがあります。記述されたものは、強い擬似乱数シーケンス生成器を提供しますが、乱雑な種の入力、もしくは、エントロピーの源泉からの入力を想定します。つの標準が、以下に記述されます。基づく、より新しく、より強い標準です。乱数生成器が記述されます。使うことを示唆します。日付と時刻を使います。システム割り込みレジスタ、システム状態レジスタ、およびシステムカウンタによって決定される鍵を使います。「暗号文」から計算できます。得られ、発音可能な単語、文句、もしくは他のフォーマットに拡張されるからです。オペレーティングシステムのいくつかのバージョンは、カーネル中において乱数生成器を提供しています。このような生成器には、通常のシステム運用において、カーネルによって捕捉されたイベントを使うものがあります。乱雑性のプールから成ります。次のプリミティブ多項式を通じて撹拌されます。プール自体は、リングバッファとして扱われ、新しいデータについては、プール全体に渡って、(多項式について活発に処理したあとに)排他的論理和がとられます。そのプールにエントロピーを加える各呼び出しは、その入力が含んでいる概ね真のエントロピーの量を見積もります。そのプール自体は、そのプールのエントロピー全体を見積もるアキュムレータを含みます。入力イベントは、下記のように、いくつかの源泉から来ます。番目のものは、入手できず、エントロピーは、その場合において、ゆっくりと加えられる可能性があります。キーボード入力:割り込みとスキャンコードの時刻が、プールに追加されます。これは、結果として、人間の操作から打鍵間時間を測定することによってエントロピーを加えます。ディスク関連の割り込み:ある人によって使われているシステムは、ディスクアクセスの予測困難なパターンをもつ傾向があります。(しかし、すべてのディスクドライブが、このタイミング情報を有用な程度に十分な精度で捕捉することをサポートするわけではありません。)マウスの動き:そのタイミングとマウスの位置が、加えられます。返される乱雑なバイト列を生成するようにハッシュ化されます。得るために行われます。数がプールから除かれるにしたがって、エントロピーの見積もりは、対応して、減少します。つのユーザとのインタフェイスがあります。そのプールからのバイト列を返しますが、見積もられるエントロピーがゼロとなるとき、ブロックします。通じて利用可能になります。デバイスから得られた乱雑なデータは、十分な乱雑なビット列がそのプール中にある場合、あるいは、合理的な時間が延長されている場合、長期鍵用の鍵生成のために適切です。これは、たとえ乱雑性のプールについてのエントロピー見積もりがゼロに落ちるときでさえ、データを提供します。これは、セッション鍵生成用、あるいは、より多くの乱雑なビット列を待ち受けるのをブロックすることが許されないような他の鍵生成用に適切である可能性があります。逆算できるとしたら、現在の出力から計算可能でしょう。繰り返されないように設計されている場合、これは、合理的なリスクです。いずれかを開けて、必要なバイト数を読むことです。中の乱数生成器に基づきました。擬似乱数生成呼び出しを使うことです。呼び手がエントロピーを提供できるようにするとともに、生成された擬似的な乱雑性が返されるバッファへのポインタ、および、「何オクテットの乱雑性が必要とされるか?」の表示を受け取ります。暗号技術的サービスプロバイダは、ユーザによって変化する可能性がある種の状態を蓄積します。ID、システム時計、システム時刻、システムカウンタ、メモリ状態、空いているディスククラスタ、および、ハッシュ化されたユーザ環境ブロックと組み合わされます。鍵ストリームの種として使われます。その鍵ストリームは、要求された擬似乱数データを作りだし、そのユーザの種の状態変数を更新するために使われます。手法のインタフェイスを使うことがより容易であることに気づくことでしょう。節において記述されている擬似乱数生成器は、すべて、「十分なエントロピーをもつシード値が、それらに提供される」を想定します。委員会は、真正乱数生成器と擬似乱数生成器の両方を扱う乱数生成についての標準策定の最終段階にあります。運用論点を省略して、後述されます。関数が、特定の用途について選択されなければなりません。入力エントロピーの源泉が要求されます。同一のハッシュ関数が、この生成器の導入を通じて使われなければなりません。English以降の節において、後述する表記法が使われます。基づいて使われているハッシュ関数の出力の大きさです。提供する入力ビット列です。これは、生成器の状態の一部であり、少なくとも乱雑なビット列が生成されるたびに一度は更新されます。ビット列であり、その生成器の状態の一部です。ビットが生成されるたびに毎回、更新されます。結合(concatenation)を表現します。セットし、次に、下記のようにセットする。English出力が呼び出されたとき、下記のように単純にセットします。先頭からのビット列を使います。ビット列をセットし、次に、繰り返し、下記にの処理を行います。直後で止めると、要求される乱雑なビット列の数と同等以上になります。多くを要求することを禁止します。