(57)【要約】連続時間カオス振動子に基づく新規乱数発生方法、及び乱数発生器（ＲＮＧ）が提示される。出力列の統計的品質を最大限に高めるため、及びパラメータ変動やアタックに対して強固にするため、オフセットと周波数の補正ループが付加される。一次セクションが分布に応じて領域に分割される場合、発生ビット列はＦＩＰＳ‐１４０‐２とＮＩＳＴ８００‐２２統計的テスト一式の両方で使用されるテストを後処理なしでパスすることを、我々は数値的及び実験的の両方で証明している。この新手法で提示される数値的及び実験的結果は提案の回路の実現可能性を証明するだけでなく、高性能ＩＣ‐ＲＮＧの核としてのその使用も促す。離数時間カオス地図、ノイズソースの増幅、及び振動子ジッタサンプリングに基づくＲＮＧを比較して、連続時間カオス振動子に基づくＲＮＧは、後処理なしに、非常に速く、かつ一定のデータ速度を提供できることが分かる。結論として、我々は、提案の回路は集積回路で実現することが可能であり、提案の新手法で連続時間カオスを利用することは、非常に高いスループットで乱数を発生させることにおいて非常に有望であることを予測することができる。【選択図】図４
2009545769.tif 000002
【特許請求の範囲】
【請求項１】
連続時間カオス振動子に基づき、及び分布に応じて局部的に非可逆ランダムバイナリビットを発生させることに依存する、前記カオス振動子の波形の１つに対応する状態の１つからのバイナリランダムビットの発生方法。
【請求項２】
非自律連続時間カオス振動子に基づき、分布に応じて局部的にバイナリランダムビット(Ｓ（ｘｏｒ）ｉ)を発生させる方法であって、
（ａ）.以下のｉ.〜vｉによりｖ１に対応する前記状態の１つ、例えばｘ１に属するサンプルのみを考慮することにより、サンプルの前記分布が２つの領域を有する非可逆の適切なセクションを決定する,
(ｉ)ｄｘ２…ｎ/ｄｔ>０またはｄｘ２…ｎ/ｄｔ<０で、ｘ２…ｎ（ｔ）=ｘ２…ｎ(０)と定義される別の状態(ｘ２、ｘ３，…またはｘｎ)の状態遷移で得られる一次元セクションからの前記状態ｘ１のサンプルが、２つの領域を有する標準化量の適切なパラメータセットを決定する、または、
(ｉｉ)ｄｘ２...ｎ/ｄｔ>０またはｄｘ２…ｎ/ｄｔ<０で、ｘ２…ｎ（ｔ）=ｘ２…ｎ(０)と定義される別の状態(ｘ２、ｘ３，…またはｘｎ)の前記状態遷移で得られる前記一次元セクションからの状態ｘ１のサンプルが，２つの領域を有する、ｖ２…ｎ（０）に対応する適切なｘ２…ｎ（０）の値を調節するか、または、
(ｉｉｉ)ωｔｍｏｄπ＝ｔ０（ωはパルス信号の周波数）を満足させる時刻ｔに、外部の周期的パルス信号の立ち上がり、または立ち下り部で得られる前記状態ｘ１の周期的サンプルが２つの領域を有する、標準化量の適切なパラメータセットを決定するか、または、
(ｉv)ωｔｍｏｄ２π＝ｔ０（ωはパルス信号の周波数）を満足させる時刻ｔに、外部の周期的パルス信号の立ち上がり、または立ち下り部で得られる前記状態ｘ１の周期的サンプルが２つの領域を有する、適切なｔ０を調節するか、または、
(v)前記非自立カオス振動子を駆動するために使用される、ωｔｍｏｄ２π＝ｔ０（ωはパルス信号の周波数で０≦ｔ０≦１）を満足させる時刻ｔに、周期的パルス信号の立ち上がり、または立下り部で得られる前記一次元セクションからの状態ｘ１のサンプルが２つの領域を有する、標準化量の適切なパラメータセットを決定するか、または、
(vｉ)前記非自立カオス振動子を駆動するために使用される、ωｔｍｏｄ２π＝ｔ０（ωはパルス信号の周波数で０≦ｔ０≦１）を満足させる時刻ｔに、周期的パルス信号の立ち上がり、または立下り部で得られる前記一次元セクションからの状態ｘ１のサンプルが２つの領域を有する適切なｔ０を調節し、
（ｂ）.以下の数式により局部閾値に対して請求項２.ａで定義される前記適切なセクションから得られる局部ｘ１ｉからランダムバイナリ列Ｓ（ｔｏｐ）ｉとＳ（ｂｏｔｔｏｍ）ｉを発生させる、
Ｓ（ｔｏｐ）ｉ＝ｓｇｎ（ｘ１ｉ−ｑｔｏｐ）      ｘ１ｉ≧ｑｍｉｄｄｌｅの場合
Ｓ（ｂｏｔｔｏｍ）ｉ＝ｓｇｎ（ｘ１ｉ−ｑｂｏｔｔｏｍ）ｘ１ｉ＜ｑｍｉｄｄｌｅの場合
ここでｓｇｎ（.）は符号関数で、ｑｔｏｐとｑｂｏｔｔｏｍは、その初期値が夫々中央値である上部と下部の分布に対する前記閾値であり、ｑｍｉｄｄｌｅは前記分布間の境界であり、
（ｃ）モノビットテストを実施することにより、請求項２.ｂに定義されるｑｔｏｐとｑｂｏｔｔｏｍ閾値に対するオフセット補正を実現し、
（ｄ）ｘ1のオーバサンプリングを回避するため、ランテストを実施することにより、ｘ１の前記サンプリング周波数に対する周波数補正を実現し、
（ｅ）.以下の数式により、請求項２.ｂに定義される前記バイナリ列Ｓ（ｔｏｐ）ｉとＳ（ｂｏｔｔｏｍ）ｉを使用することによりランダムバイナリデータＳ（ｘｏｒ）ｉを発生させる：
Ｓ（ｘｏｒ）ｉ＝Ｓ（ｔｏｐ）ｉ（Ｅｘｏｒ）Ｓ（ｂｏｔｔｏｍ）ｉ
ここで排他的論理和（Ｅｘｏｒ）操作はスループットを減少させないように前記バイアスを除去するために使用される、方法。
【請求項３】
自律連続時間カオス振動子に基づき、分布に応じて局部的にバイナリランダムビット(Ｓ（ｘｏｒ）ｉ)を発生させる方法であって、
（ａ）以下の（ｉ.）〜（vｉ）によりｖ１に対応する前記状態の１つ、例えばｘ１に属する前記サンプルのみを考慮することにより、前記サンプルの分布が２つの領域を有する非可逆の適切なセクションを決定する,
(ｉ)ｄｘ２...ｎ/ｄｔ>０またはｄｘ２…ｎ/ｄｔ<０で、ｘ２…ｎ（ｔ）=ｘ２…ｎ(０)と定義される別の状態(ｘ２、ｘ３，…またはｘｎ)の状態遷移で得られる前記一次元セクションからの状態ｘ１のサンプルが２つの領域を有する、標準化量の適切なパラメータセットを決定するか、または、
(ｉｉ)ｄｘ２...ｎ/ｄｔ>０またはｄｘ２…ｎ/ｄｔ<０で、ｘ２…ｎ（ｔ）=ｘ２…ｎ(０)と定義される別の状態(ｘ２、ｘ３，…またはｘｎ)の前記状態遷移で得られる前記一次元セクションからの前記状態ｘ１のサンプルが２つの領域を有する、ｖ２…ｎに対応する適切なｘ２…ｎ（０）値を調節するか、または、
(ｉｉｉ)ωｔｍｏｄ２π＝ｔ０（ωはパルス信号の周波数）を満足させる時刻ｔに、外部の周期的パルス信号の立ち上がり、または立ち下り部で得られる状態ｘ１、ｘ２…またはｘｎの周期的サンプルが２つの領域を有する、標準化量の適切なパラメータセットを決定するか、または、
(ｉv)ωｔｍｏｄ２π＝ｔ０（ωはパルス信号の周波数）を満足する時刻ｔに、外部の周期的パルス信号の立ち上がり、または立ち下り部で得られる状態ｘ１、ｘ２…またはｘｎの周期的サンプルが２つの領域を有する、適切なｔ０を調節し、
（ｂ）以下の数式により局部閾値に対して請求項３.ａで定義される前記適切なセクションから得られる局部ｘ１ｉからランダムバイナリ列Ｓ（ｔｏｐ）ｉとＳ（ｂｏｔｔｏｍ）ｉを発生させる、
Ｓ（ｔｏｐ）ｉ＝ｓｇｎ（ｘ１ｉ−ｑｔｏｐ）      ｘ１ｉ≧ｑｍｉｄｄｌｅの場合
Ｓ（ｂｏｔｔｏｍ）ｉ＝ｓｇｎ（ｘ１ｉ−ｑｂｏｔｔｏｍ）ｘ１ｉ＜ｑｍｉｄｄｌｅの場合
ここで，ｓｇｎ（.）は符号関数で、ｑｔｏｐとｑｂｏｔｔｏｍは、その初期値が夫々中央値である上部と下部の分布に対する前記閾値であり、ｑｍｉｄｄｌｅは前記分布間の境界であり、
（ｃ）モノビットテストを実施することにより、請求項３.ｂに定義されるｑｔｏｐとｑｂｏｔｔｏｍ閾値に対するオフセット補正を実現し、
（ｄ）ｘ１のオーバサンプリングを回避するため、ランテストを実施することにより、ｘ１の前記サンプリング周波数に対する周波数補正を実現し、
（ｅ）以下の数式により、請求項３.ｂに定義される前記バイナリ列Ｓ（ｔｏｐ）ｉとＳ（ｂｏｔｔｏｍ）ｉを使用することによりランダムバイナリデータＳ（ｘｏｒ）ｉを発生させる：
Ｓ（ｘｏｒ）ｉ＝Ｓ（ｔｏｐ）ｉ（Ｅｘｏｒ）Ｓ（ｂｏｔｔｏｍ）ｉ
ここで、排他的論理和（Ｅｘｏｒ）はスループットを減少させないように前記バイアスを除去するために使用される、方法。
【請求項４】
別の状態ｘ２，ｘ３…またはｘｎでもよい、請求項２または請求項３に記載される状態ｘ１の利用。
【請求項５】
連続時間カオス振動子に基づき、分布に応じて局部的に非可逆ランダムバイナリビットの発生に依存する、前記カオス振動子の波形からのランダムビット発生器。
【請求項６】
以下のａ〜ｅから構成される自律または非自律連続時間カオス振動子に基づく分布に応じて、局部的にバイナリビットを発生させるためのハードウェア：
（ａ）２つの領域を有し，ｘ１に対応する連続時間カオス振動子ｖ１の波形から、ｖｔｏｐ、ｖｂｏｔｔｏｍ、およびｖｍｉｄｄｌｅ閾値を使用して、局部バイナリ列Ｓ（ｔｏｐ）ｉとＳ（ｂｏｔｔｏｍ）ｉを発生させるための３つのコンパレータ、
（ｂ）局部バイナリ列Ｓ（ｔｏｐ）ｉとＳ（ｂｏｔｔｏｍ）ｉを周期的にサンプリングするための周期的パルス信号発生器と２つのＤフリップ−フロップ（Ｄフリップ−フロップ）、
（ｃ）夫々、上部と下部の分布に使用されるｑｔｏｐとｑｂｏｔｔｏｍに対応する閾値ｖｔｏｐとｖｂｏｔｔｏｍを発生させ、及び補正するための２つのモノビットテストブロック（モノビットテスト）と２つのＤＡ変換器（ＤＡC）、
（ｄ）ｘ１に対応するｖ１の前記サンプリング周波数を補正するためのランテストブロック（ランテスト）とプリスケーラブロック（プリスケーラ）、
（ｅ）前記バイナリ列Ｓ（ｔｏｐ）ｉとＳ（ｂｏｔｔｏｍ）ｉを使用して、前記バイアスを除去し、ランダムバイナリデータＳ（ｘｏｒ）ｉを発生させるための排他的論理和（ＸＯＲ）ゲート。
【請求項７】
以下のａ〜ｅから構成される自律または非自律連続時間カオス振動子に基づく分布に応じて、局部的にバイナリビットを発生させるためのハードウェア：
（ａ）２つの領域を有し，ｘ１に対応する前記連続時間カオス振動子ｖ１の波形から、ｖｔｏｐ、ｖｂｏｔｔｏｍ、およびｖｍｉｄｄｌｅ閾値を使用して、局部バイナリ列Ｓ（ｔｏｐ）ｉとＳ（ｂｏｔｔｏｍ）ｉを発生させるための３つのコンパレータ、
（ｂ）ｄｘ２...ｎ/ｄｔ>０またはｄｘ２…ｎ/ｄｔ<０で、ｘ２…ｎ（ｔ）=ｘ２…ｎ(０)に対応するｘ２…ｎ（ｔ）=ｘ２…ｎ(０)と定義される別の状態(ｘ２、ｘ３、…またはｘｎ)に対応する別の波形（ｖ2、ｖ3、…またはｖｎ）の前記状態遷移で得られるｘ１に対応するｖ1の一次元セクションから、局部バイナリ列Ｓ（ｔｏｐ）ｉとＳ（ｂｏｔｔｏｍ）ｉをサンプリングするための２つのＤフリップ−フロップ（Ｄフリップ−フロップ）と別のコンパレータ、
（ｃ）夫々、上部と下部の分布に使用されるｑｔｏｐとｑｂｏｔｔｏｍに対応する閾値ｖｔｏｐとｖｂｏｔｔｏｍを発生させ、及び補正するための２つのモノビットテストブロック（モノビットテスト）と２つのＤＡ変換器、
（ｄ）ｘ１に対応するｖ１のサンプリング周波数を補正するためのランテストブロック（ランテスト）とプリスケーラブロック（プリスケーラ）、
（ｅ）バイナリ列Ｓ（ｔｏｐ）ｉとＳ（ｂｏｔｔｏｍ）ｉを使用して、前記バイアスを除去し、ランダムバイナリデータＳ（ｘｏｒ）ｉを発生させるための排他的論理和（ＸＯＲ）ゲート。
【請求項８】
以下のａ〜ｅから構成される非自律連続時間カオス振動子に基づく分布に応じて、局部的にバイナリビットを発生させるためのハードウェア：
（ａ）２つの領域を有し，ｘ１に対応する前記非自律カオス振動子ｖ１の波形から、ｖｔｏｐ、ｖｂｏｔｔｏｍ、およびｖｍｉｄｄｌｅ閾値を使用して、局部バイナリ列Ｓ（ｔｏｐ）ｉとＳ（ｂｏｔｔｏｍ）ｉを発生させるための３つのコンパレータ、
（ｂ）前記非自律カオス振動子を駆動するために使用される周期的パルス信号発生器（ｖｐ（ｔ））；適切なｔ０を調節するための遅延ブロック（遅延）；および局部バイナリ列Ｓ（ｔｏｐ）ｉとＳ（ｂｏｔｔｏｍ）ｉをサンプリングするための２つのＤフリップ−フロップ（Ｄフリップ−フロップ）、
（ｃ）夫々、上部と下部の分布に使用されるｑｔｏｐとｑｂｏｔｔｏｍに対応する閾値ｖｔｏｐとｖｂｏｔｔｏｍを発生させ、及び補正するための２つのモノビットテストブロック（モノビットテスト）と２つのＤＡ変換器（ＤＡＣ）、
（ｄ）ｘ１に対応するｖ１のサンプリング周波数を補正するためのランテストブロック（ランテスト）とプリスケーラブロック（プリスケーラ）、
（ｅ）バイナリ列Ｓ（ｔｏｐ）ｉとＳ（ｂｏｔｔｏｍ）ｉを使用して、前記バイアスを除去し、ランダムバイナリデータＳ（ｘｏｒ）ｉを発生させるための排他的論理和（ＸＯＲ）ゲート。
【請求項９】
先行請求項で記載されるモノビットランテストはＦＩＰＳ−１４０−１，ＦＩＰＳ−１４０−２またはＮＩＳＴ８００−２２の統計的テスト一式から選択されるランテストである。
【請求項１０】
先行請求項で記載されるランテストはＦＩＰＳ−１４０−１，ＦＩＰＳ−１４０−２またはＮＩＳＴ８００−２２の統計的テスト一式から選択されるランテストである。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は連続時間カオスを使用した乱数の発生に関する。
【背景技術】
【０００２】
この１０年間に、電子式の公共金融取引の需要増加、デジタル署名申請の利用、及び情報機密の要請が、乱数発生器（ＲＮＧ）をよりポピュラなものにしてきた。これに関して、過去に軍隊の暗号用に主に使用されてきたＲＮＧは、一般的なデジタル通信装置の設計において今や重要な役割を有する。
【０００３】
殆ど全ての暗号システムは予測できない値を必要とし、従ってＲＮＧは暗号機構にとって基礎的な構成要素である。非対象アルゴリズム用の公的／私的キーペアー、及び対称で複合型暗号システム用のキーの発生には乱数が必要である。１回限りのパッド、課題、ノンス（ワンタイムパスワード）、パッドバイト、ブラインド値は、真正乱数発生器（ＴＲＮＧ）［１］を使用することにより生成される。擬似乱数発生器（ＰＲＮＧ）は決定論的方法でビットを発生させる。ＴＲＮＧにより発生されるように見えるためには、擬似ランダム列は、より短い真正ランダム列［２］から求められなければならない。ＲＮＧは、モンテカルロ解析、コンピュータシミュレーション、統計的サンプリング、確率的最適化法、画像認証用透かし技術、２つの暗号装置間認証手順、及びアルゴリズムを実現する暗号モジュールの初期値ランダム化を含む多くの分野でも利用される。
【０００４】
例え、ＲＮＧ設計が既知であっても、出力に関するいかなる有効な予測もできない。１回限りのパッド、キー発生装置、及び他のいかなる暗号適用の機密要件をも満たすため、ＴＲＮＧは以下の特性を満足させなければならない：ＴＲＮＧの出力ビット列はランダム性の全ての統計的テストをパスしなければならない；次のランダムビットは予測不可能でなければならない［３］。ＴＲＮＧの同一出力ビット列は再生成できてはならない［４］；真正乱数を発生させる最良の方法は、通常発生するランダムな事象を発見することにより、実世界における自然のランダム性を利用することである［４］。この種の利用できる事象の例には、放射性崩壊中の経過時間、サーマルショットノイズ、振動子ジッタ、及び半導体キャパシタの電荷量［２］がある。
【発明の概要】
【０００５】
文献で報告されるＲＮＧ設計は僅かしかないが、乱数の発生には基本的に４つの異なる技術が述べられている：即ち、ノイズソースの増幅［５、６］、振動子ジッタサンプリング［１、７〜９］、離散時間カオス地図［１０〜１４］、及び連続時間カオス振動子［１５、１８］である。ＲＮＧの実現における離散時間カオス地図の利用は、しばらくの間よく知られているという事実にも拘らず、連続時間カオス振動子もＴＲＮＧの実現に利用できることが示されたのはごく最近であった。この方向を追及して、我々はランダムバイナリデータを連続時間カオス振動子から発生させるため、提案の新手法の有効性を調査した。
【０００６】
文献と商品に一般に見られるＲＮＧのビット速度は、デジタル通信装置のデータ速度の増加のため、不十分となってきた。離散時間カオス地図、ノイズソースの増幅、及び振動子ジッタサンプリングに基づくＲＮＧと比較して、連続時間カオス振動子に基づくＲＮＧは、後処理の必要なく、より簡単な集積回路で、非常に速く、かつ一定のデータ速度を提供できることが分かる。結論として、連続時間カオス振動子は、ギガへルツレンジで今日のプロセスで組み立てることができ、提案の新手法での連続時間カオスの利用は、非常に高いスループットで乱数を発生させることにおいて非常に有望であることを、我々は推論することができる。
【０００７】
他のシステム要素と互換性を持たせるため、シリコン上で組み立てることができるカオス振動子を使用することが望ましい。連続時間ＣＭＯＳカオス振動子を始め、離散時間方式を導入するため多くの試みが実施されてきた。それらの試みの大部分において、製作された回路は複雑で、広いシリコン面積を占有するものであった。離散時間カオス振動子はスイッチＣ又はスイッチ電流技術のいずれかを通常採用する。多くのキャパシタとオペアンプに加え、乗算器の使用により必然的に大きな回路になる。離散時間カオスソースに基づくＲＮＧと比較して連続時間カオスソースに基づくＲＮＧは、より簡単でかつノイズの少ない集積回路で、特に、連続するサンプル・ホールド段階がないことにより、非常に速いデータ速度を提供することができる。
【図面の簡単な説明】
【０００８】
【図１】ノイズソースの増幅技術
【図２】ｘ１の分布
【図３】周期的サンプルを使用した局部乱数発生
【図４】状態遷移で得られる一次元セクションからの局部乱数発生
【図５】ｖｐ（ｔ）の立ち上がり部で得られる非自律カオス振動子の一次元セクションからの局部乱数発生
【図６】ｖ１の周波数スペクトル
【図７】自律ＭＯＳカオス振動子
【図８】カオス振動子の数値的解析結果
【図９】レイアウト後の回路シミュレーションからのカオスアトラクタ
【図１０】ωｔｍｏｄ２π＝０で得られるｘ１のヒストグラム
【図１１】カオス振動子の実験結果
【図１２】ｖｐ（ｔ）の立ち上がり部で得られるｖ１のヒストグラム
【図１３】ｖ１の周波数スペクトル
【図１４】カオス振動子の数値的解析結果
【図１５】ωｔｍｏｄ２π＝０（ω＝1＝2）で得られるｘのヒストグラム
【図１６】ダブルスクロールアトラクタの回路実現
【図１７】カオス振動子の実験的結果
【図１８】カオス振動子を使用した局部乱数発生
【図１９】ｖｐ（ｔ）の立ち上がり部で得られるｖ１のヒストグラム
【図２０】ｖ１の周波数スペクトル
【図２１】Ｖｔｏｐに対するオフセット補正の効果
【図２２】カオス振動子の数値的解析結果
【図２３】ｚ（ｔ）＝０と定義されるカオスシステムのポアンカレセクション
【図２４】ｚ（ｔ）＝０で得られるｘのヒストグラム
【図２５】ダブルスクロールアトラクタの回路実現
【図２６】カオス振動子の実験的結果
【図２７】カオス振動子を使用した局部乱数発生
【図２８】ｄｖ３／ｄｔ＞0で、ｖ３（ｔ）＝０で得られるｖ１のヒストグラム
【図２９】提案のバイポーラ振動子
【図３０】バイポーラ振動子の数値的解析結果
【図３１】提案のＣＭＯＳ振動子
【図３２】ＣＭＯS振動子の数値的解析結果
【図３３】左上隅に示すホモクリニック軌道上で計算されるメルニコフ関数のゼロ
【図３４】ωｔｍｏｄ２π＝０：３０に対するバイポーラシステムのポアンカレ地図
【図３５】ωｔｍｏｄ２π＝０：３０に対するバイポーラシステムから得られるｘのヒストグラム
【図３６】ωｔｍｏｄ２π＝０：５５に対するＣＭＯＳシステムのポアンカレ地図
【図３７】ωｔｍｏｄ２π＝０：５５に対するＣＭＯＳシステムから得られるｘのヒストグラム
【図３８】バイポーラカオス振動子の実験結果
【図３９】ＣＭＯＳカオス振動子の実験結果
【図４０】提案のカオス振動子のみを使用した局部乱数発生
【図４１】バイポーラ回路に対するｖｐ（ｔ）の立ち上がり部４６μｓｅｃ後に得られるｖ１のヒストグラム
【図４２】ＣＭＯＳ回路に対するｖｐ（ｔ）の立ち上がり部３５μｓｅｃ前に得られるｖ１のヒストグラム
【０００９】
図１に示すノイズソース増幅技術は、僅かなＡＣ電圧を有するホワイトノイズを処理するため、高出力で広帯域のアンプを使用する。ノイズは、それをクロック付きコンパレータにより、バイアスなしで精確に識別できるレベル迄増幅されなければならない。
【００１０】
低電圧ＣＭＯＳ集積回路で、２つの異なるノイズ機構が広帯域ホワイトノイズを発生させる：即ち、ショットノイズ（ｐ‐ｎ結合間の電流により発生）とサーマルノイズ（抵抗器内でのランダムな電子運動により発生）である。アバランシェノイズは、大型ＣＭＯＳプロセスで組み立てられるチェナーダイオードの一般的な高破壊電圧（＞６ＶＤＣ）のため、ノイズソースとしては実用的選択ではない。図１に示すように、集積されるノイズソース接続形態にはサーマルノイズ発生器として大型抵抗器を使用する。抵抗器は多結晶シリコン又は拡散層から容易に組み立てられ、半導体接合と同様に、ノイズの発生のためのバイアス電流を必要としない。多結晶シリコン抵抗器は低いフリッカノイズ指数（一般に−３０ｄＢ）も有し、低い１／ｆノイズレベルを保証する。
【００１１】
無視できる１／ｆノイズを仮定して、ソース抵抗器ＲＳｒｃのサーマルノイズ電圧はＥｔ＝
2009545769.tif 000003
及び△ｆはノイズバンド幅である。Ｅｔのノイズバンド幅はＲＳｒｃと等価アンプ入力キャパシタンスＣＡｍｐにより形成される一次ローパスフィルタにより，通常限定される。アンプの−３ｄＢバンド幅がノイズバンド幅より広いと仮定すると、アンプ入力でのＥｔによる全
2009545769.tif 000004
抵抗器により発生するサーマルノイズの理論的限界である。１Ｈｚバンド幅を超えるサーマルノイズの電圧増幅は、ＲＳｒｃの値を増加することにより増加できるが、サーマルノイズバンド幅の減少を犠牲にするため、Ｅｎｉは任意のＣＡｍｐに対し一定に留まる。
【００１２】
発振子ジッタサンプリング技術は、一つは速く、もう一つはこれより遅い２つの自励振動子から導かれるランダムソースを使用する。この技術を使用する公表されたＲＮＧ設計は、振動子ジッタの一般的レベルは統計的ランダム性を生成するにはとても十分ではないと報告している。このためノイズソースを利用して、遅い方のクロック周波数を変調し、ノイズ変調された遅い方のクロックの立ち上がり部で、速いクロックをサンプリングする。２つのクロック間のドリフトは、このようにランダムバイナリデジットソースを提供する。ノイズソース増幅技術と同様に、それを利用して遅い方のクロック周波数を変調できるレベル迄、ノイズを増幅しなければならない。スループットデータ速度を決定する、遅い方のクロック周波数は、変調に利用されるノイズ信号のバンド幅により基本的に限定され、限界の主な理由はアンプのバンド幅である
【００１３】
提案の新手法で、公称中心周波数がギガヘルツレンジである、数ボルトオーダのカオス振動子の波形は、アンプを使用せずコンパレータにより、直接バイナリ列に変換され、スループットデータ速度の理論的限界は、カオス振動子の公称中心周波数により決定され、この結果数ギガビット／秒のオーダになる。このように速いデータ速度は、他の技術に基づくＲＮＧに比較して、連続時間ＲＮＧを魅力的なものにする。自律及び非自律カオス振動子は、共に提案のＲＮＧ設計のコアーとして使用することができ、ここでは一次元セクションから又はカオスシステムの状態の１つを周期的にサンプリングすることによりランダムデータを得ることができる。
【００１４】
提案の新手法と［１５］に示す連続時間カオス振動子に基づく先のＲＮＧ設計を比較すると、提案の新手法は７倍の速さが可能であることが数値的に証明されている。更にhttp://www.esat.kuleuven.ac.be/〜mey/Ds2RbG/Ds2RbG.htmlで示されるサンプルビット列は全ＮＩＳＴテスト一式のブロック周波数、ラン＆エイペン（Ｂｌｏｃｋ-ｆｒｅｑｕｅｎｃｙ、Ｒｕｎｓ＆Ａｐｅｎ）テストに合格していない。更に、出力列の統計的品質を最大限に向上させ、パラメータ変動とアタックに強固にするため、提案の新手法で使用されるオフセット補正ループは、得られるビット列がフォンノイマン処理のお陰でダイハード（Ｄｉｅｈａｒｄ）の全テスト一式をパスできる理由により、［５］で示す先の設計には実施できない。
【００１５】
最初に、提案の新手法から発生するビット列は、ＦＩＰＳ‐１４０‐２テスト一式［１６］の４つの基本的乱数テストをパスすることを、我々は数値的に証明している。外部干渉は、干渉される信号とランダムな信号が同等のレベルを有するので、ＲＮＧ設計では主要な関心事である。この問題を解決するため、及びスループットを強固にする目的で、パラメータ変動とアタックに強固にするため、我々は発生ビット列の統計的品質を向上させる、オフセットと周波数の補正ループを提案している。更に、提案の新手法から得られるバイナリデータは、全ＮＩＳＴ乱数テスト一式［１７］のテストをパスすることも、我々は実験的に証明している。初期条件に対するその高感度性、及び正のリアプノフ指数とノイズ状パワースペクトラルを有するため、カオスシステムは乱数発生に利用されるのに適する。連続時間カオスシステムからランダムバイナリデータを得るため、我々は任意のカオス振動子の波形から、非可逆バイナリデータを発生させることに依存する興味深い技術を提示している。非可逆性はＰＲＮＧ［１９］を発生させるための鍵になる特性であることに注目すべきである。提案の新手法で、自律又は非自律カオス振動子からバイナリランダムビットを得るため、我々は以下を使用した：
１．ｄｘ2..ｎ／ｄｔ＞0、またはｄｘ2..ｎ／ｄｔ＜0で、ｘ2..ｎ（ｔ）＝ｘ2..ｎ（0）と定義される他の状態（ｘ２、ｘ３、…又はｘｎ）の状態遷移で得られる一次元セクションからの状態ｘ１のサンプル。
２．ωｔｍｏｄ２π＝０を満たす（ωはパルス信号の周波数）時刻ｔで外部の周期的パルス信号の立ち上がり部で得られる、状態ｘ１、ｘ２、…又はｘｎの周期的サンプル。
提案のＲＮＧ設計のコアーとして非自律カオス振動子を使用する場合：
３．非自律カオス振動子を駆動するため利用される外部の周期的パルス信号（ωｔｍｏｄ２π＝ｔ０を満足させる時刻ｔで、ωはパルス信号の周波数で０≦ｔ０≦１）の立ち上がり部で得られる状態ｘ１の一次元セクションは、バイナリランダムビットを得るためにも利用された。
【００１６】
上で定義されるセクションで、ｘ１、ｘ２、…及びｘｎは提案のＲＮＧのコアーとして使用されるカオス振動子の標準化量である。ｘ１−ｘ２−…−ｘｎ平面でのｎ次元曲線は可逆であるが、状態の1つ、例えばｘ１に対応する値のみを考慮することにより、非可逆セクションを得ることができる。
【００１７】
最初に、我々はｘ１´を数値的に発生させ、分布がランダム信号のように見える適切なセクションを決定するため、サンプル値の分布を調査した。ｘ1値が異なるパラメータセットに対する単一正規又はχ２分布［２］を有するセクションを見つけることができなかったが、ｘ1の分布が少なくとも２つの領域を有する様々なセクションを決定した。適切なパラメータセットに対して、上で定義したセクションの状態ｘ1の分布は図２のようである。
【００１８】
２つの領域を有するｘ１の分布は、局部閾値に対する局部ｘ１値からランダムバイナリデー
タを発生させることを我々に示唆する。この方向を追求して、我々は、数式(１)により一次元セクションからバイナリデータＳ（ｔｏｐ）ｉとＳ（ｂｏｔｔｏｍ）ｉを発生させている。
Ｓ（ｔｏｐ）ｉ＝ｓｇｎ（ｘ１ｉ−ｑｔｏｐ）         ｘ１ｉ≧ｑｍｉｄｄｌｅの場合      （1）
Ｓ（ｂｏｔｔｏｍ）ｉ＝ｓｇｎ（ｘ１ｉ−ｑｂｏｔｔｏｍ）  ｘ１ｉ＜ｑｍｉｄｄｌｅの場合
（１）
ここで、ｓｇｎ（.）は符号関数，ｘ１ｉは上で定義されるセクションの1つから得られるｘ１の値であり、ｑｔｏｐとｑｂｏｔｔｏｍは、夫々、上部と下部の分布に対する閾値であり、ｑｍｉｄｄｌｅは分布間の境界値である。閾値を適切に選択できるように、我々は図２に示すように、上部と下部の分布を調査し、次に、ｑｔｏｐとｑｂｏｔｔｏｍを、夫々上部と下部の分布の中央値と決定した。
【００１９】
このようにして得られるバイナリ列の発生は、ｑｍｉｄｄｌｅ値に対しては、ｘの分布密度が最小であるため、この境界値にそれほど依存しない。しかし、閾値(ｑｔｏｐ、ｑｂｏｔｔｏｍ)に対するｘの分布密度は最大であり、そのため得られるバイナリ列はバイアスされる。この列の未知のバイアスを除去するため、有名なフィンノイマンのスキュー補正技術［２０］が利用できる。この技術はビット対０１を出力０に、１０を出力１に変換し、ビット対００と１１を捨てることから構成される。しかしこの技術は、４ビットから約１ビットを発生させるため、スループットを減少させる。
【００２０】
バイアスを除去するため、スループットを減少させないために、フォンノイマン処理の代
2009545769.tif 000005
は、入力ビット間の少量の相関が、出力［４］へかなりのバイアスを付加することである。上で定義されるセクションから得られる発生バイナリ列ＳｔｏｐとＳｂｏｔｔｏｍの相関係数は、０に極めて近いと算出され、発生バイナリ列は独立であると決定される。カオスシステムが正のリアプノフ指数［２１］を有することにより特徴づけられるように、これは事実期待され、カオス時間シリーズの自動相関は突然消滅する。この結果、我々は表示の数式（２）を利用して、新バイナリデータＳ（ｘｏｒ）ｉを発生させている：
2009545769.tif 000006
こうして得られるバイナリ列Ｓｘｏｒの平均値ψは、表示の数式（３）により計算できる：
2009545769.tif 000007
ここで、Ｓｔｏｐの平均値はμで、Ｓｂｏｔｔｏｍの平均値はνである。このように、もしμとνが１／２に近ければ、ψは１／２に非常に近い。この結果、数式（２）で示す手順により、適切な閾値に対して上で定義される様々なセクションから得られるビット列Ｓｘｏｒは、フォンノイマン処理なしにＦＩＰＳ‐１４０‐２テスト一式のテストをパスすることを、我々は数値的に証明している。我々は上記手順による乱数発生を局部ＲＮＧと称した。適切な組み立て施設がないため、我々は回路の実現可能性を示すために、個別部品を使用して提案の新手法を構築することを選択し、ビット列を実験的にも発生させている。
【００２１】
局部ＲＮＧで、非可逆セクションを得るため、ｘ1、変数のみを使用し、変数ｘ１に対応する電圧ｖ１をバイナリ列に変換した。ｘ１の周期的サンプルを使用して、自律又は非自律カオス振動子からバイナリランダムビットを生成するため、図３に示す回路が使用された。ωｔｍｏｄ２π＝０と定義されるセクションでｖ１値を得るため、外部の周期的短形波発生器ｖｐ（ｔ）の立ち上がり部で、コンパレータの出力ビット列がサンプリングされ、バイナリ形式で記憶された。
【００２２】
ｄｘ２..ｎ／ｄｔ＞０、又はｄｘ２..ｎ／ｄｔ＜０で、ｘ２..ｎ（ｔ）＝ｘ２．ｎ（０）と定義される他の状態（ｘ２、ｘ３、…又はｘｎ）の状態遷移で得られる、自律又は非自律カオス振動子の一次元セクションから、ｘ1サンプルが使用される手順を実施するため、ｖ１コンパレータの出力ビット列は図４に示す回路を使用して、他の状態、ｖ２..ｎコンパレータの立ち上がりまたは立下り部でサンプリングされ、バイナリ形式で記憶された。
【００２３】
提案の新手法で、ωｔｍｏｄ２π＝ｔ０を満足させる時刻ｔに、非自律カオス振動子から得られるｘ１の一次元セクションは、ランダムビットを発生させるためにも使用することができる。定義されるセクションでｘ１値を得るため、コンパレータの出力ビット列は非自律カオス振動子を駆動するためにも使用される外部の周期的パルス列ｖｐ（ｔ）の期間中の調節された時刻に、遅延ゲートの後で、サンプリングされバイナリ形式で記憶された。
【００２４】
上で示す局部乱数発生回路で、コンパレータはＬＭ２１１チップが実装され、及び電圧レベルＶｔｏｐ、Ｖｍｉｄｄｌｅ及びＶｂｏｔｔｏｍは、夫々数式（１）の閾値を実現するために使用された。ＶｔｏｐとＶｂｏｔｔｏｍは２つの１２ビット電圧モードＤＡ変換器（ＤＡＣ）により発生した。各ＤＡＣは０．５８５９３７５ｍＶステップで調節することができ、ＤＡＣの基準電圧は２．４Ｖである。実施において、数式（１）と（２）は次のように変換される：
Ｓ（ｔｏｐ）ｉ＝ｓｇｎ（ｖ１ｉ−Ｖｔｏｐ）         ｖ１ｉ≧Ｖｍｉｄｄｌｅの場合
Ｓ（ｂｏｔｔｏｍ）ｉ＝ｓｇｎ（ｖ１ｉ−Ｖｂｏｔｔｏｍ）  ｖ１ｉ＜Ｖｍｉｄｄｌｅの場合    （４）
2009545769.tif 000008
【００２５】
ＰＣＩインターフェースを有するＦＰＧＡベースのハードウェアはバイナリデータをコンピュータへアップロードするように設計された。ＶｔｏｐとＶｂｏｔｔｏｍ閾値に対するオフセット補正、周波数補正、遅延ゲート、及び排他的論理和操作はＦＰＧＡの中で実施された。オフセットと周波数補正及び排他的論理和操作の後、候補乱数がＰＣＩインターフェースを介してコンピュータへアップロードされた。我々のＦＰＧＡベースのハードウェアの最大データ記憶速度は６２Ｍｂｐｓである。
【００２６】
我々は適切なセットのパラメータと調節されたサンプリング遅れに対して、ｖ１の分布は図２のように、２つの領域を有する様々なセクションがあることを実験的に実現している。
【００２７】
初期閾値を適切に決定できるように、数値ビット発生に類似して、上部と下部の分布が調査された。次に、ＶｔｏｐとＶｂｏｔｔｏｍの初期値が、夫々上部と下部の分布の中央値として決定された。ｖ１のサンプリング周波数はｖｐ（ｔ）の周波数またはｖ２．．ｎ．コンパレータの出力をＦＰＧＡ内のプリスケーラ値を割ることにより決定された。プリスケーラの初期値を適切に決定するため、図６のようなｖ１の周波数スペクトルが観察された。図に示すように、カオス信号ｖ１はノイズ状パワースペクトルを有する。カオス振動子の中心周波数は実線マークで表示される。パワースペクトルが平坦な領域である破線マーク迄は、カオス信号ｖ１は全周波数を等量含んでおり、パワースペクトル密度はその最大値にある。従って、一般性を喪失することなく、ｖ１（ｔ）とｖ１（ｔ＋ｔ０）は、全てのｔ０≠０に対して相関なしと考えることができ、ｖ１はランダム信号ソースとして破線マークにより表示されるｆｓａｍｐｌｉｎｇ迄、サンプリングすることができる。最後に、プリスケーラの初期値は、ｖｐ（ｔ）の周波数、又はｖ２…ｎコンパレータの出力でｆｓａｍｐｌｉｎｇを割ることにより決定された。
【００２８】
ＶｔｏｐとＶｂｏｔｔｏｍ閾値のオフセット補正は、ＳｔｏｐとＳｂｏｔｔｏｍのバイナリ列に対するＦＩＰＳ‐１４０‐２テスト一式〔１６〕のモノビットテストを実施することにより実現された。各列に対しては、２０，０００ビット長のビット列が確保され、０の数が＞１０，２７５であれば、対応する閾値は減少し、もし、０の数が＜９，７２５であれば、対応する閾値は増加した。周波数補正ループは、Ｓｘｏｒバイナリ列に対してＦＩＰＳ‐１４０‐２テスト一式のランテストを実施することにより実現された。もし列に確保された２０，０００ビット長の３Ｓｘｏｒのビット列がランテストに失敗すれば、これはｖ１のオーバサンプリングを意味し、次に、ｖ１のサンプリング周波数はプリスケーラ値を増加させることにより低下させた。必要ならば、サンプリング周波数は、外部からＰＣＩインターフェースを介して増加させることができる。
【００２９】
プリスケーラと閾値が安定した後、少なくとも５００ＭＢ長のビット列が図３、図４、及び図５に示す回路を使用して、上で定義するセクションから確保され、全ＮＩＳＴテスト一式を受けた。その結果、ビット列Ｓｘｏｒがフォンノイマン処理なしに全ＮＩＳＴ乱数テスト一式のテストをパスすることを我々は実験的に証明している。Ｐ値は均一であり、通過列の比率は、各統計的テストに対する最低通過速度より大きかった。
【００３０】
Ｓｘｏｒのスループットデータ速度は分布に応じてｖ１を２つの領域に分割するので、事実上（ｆｓａｍｐｌｉｎｇ／２）になる。Ｓｘｏｒのスループットデータ速度は、ｆｘｏｒ≒０．０５／τと予測することができ、ここでτはカオス振動子の時定数である。カオス振動子は、ギガヘルツレンジの公称中心周波数により、今日のプロセスで容易に組み立てることができることを我々は推論することができる。しかし非常に高い周波数で作動するカオス回路が文献で報告されていることに注目すべきである。例えば、５．３ＧＨｚで作動するカオス振動子のＢＪＴ版のカデンツェシミュレーション結果は［１８］に提示される。従って、連続時間カオスの利用は非常に高いスループットで乱数を発生させることにおいて非常に有望であることを、これらの全ては示している。この結果、ここでは、提案の方法も改良されたアーキテクチャであり、出力列の統計的品質を最大限に向上させ、及びスループットの強化を目的とした外部干渉、パラメータ変動とアタックに対して強固にするため、オフセットと周波数補正ループが付加される
【００３１】
（工業への適用）
２．暗号文への適用のための自律カオス振動子に基づくオフセット、及び周波数補正付き真正乱数発生器
提案の設計で、我々はカオスシステムの状態の１つを周期的にサンプリングすることにより、ランダムデータを得、及び提案のＲＮＧから発生するビット列がＦＩＰＳ‐１４０‐２テスト一式の４つの基本乱数テストをパスすることを数値的に証明している。外部干渉は、干渉される信号とランダム信号が同等レベルを有しているので、ＲＮＧ設計では主要な関心事である。この問題を解決し、スループットを強化することを目的として、パラメータ変動とアタックに対して強固にするため、我々は発生ビット列の統計的品質を向上させるオフセットと周波数の補正ループを提案している。更に、カオス振動子から得られるバイナリデータが、ＮＩＳＴ全乱数テスト一式のテストをパスすることを実験的にも証明している。
【００３２】
３．自律カオス振動子
ＲＮＧのコアーとして使用される自律カオス振動は[１８]で提案された。ＭＯＳカオス振動子は図７で提示され、ＲＣ３セクションと差動対ステージ（Ｍ３‐Ｍ４）を付加することにより、古典的交差結合正弦波振動子から導き出される。Ｍ９‐Ｍ８とＭ１０‐Ｍ１１トランジスタ対を使用して、ｋの電流転送率で簡単な電流ミラーを実装する。Ｃ１＝Ｃ２＝Ｃ３＝Ｃと仮定して、回路のルーチン分析により、以下の数式（５）を生じる：
2009545769.tif 000009
2009545769.tif 000010
β＝μｎＣＯＸ（Ｗ／Ｌ）１，２、ＹＴＨはＮＭＯＳの閾値電圧、μｎは電子可動性、CＯＸはＭＯＳ酸化物キャパシタンス、Ｗ／ＬはＭ１−Ｍ２トランジスタ対のアスペクト比である。
【００３３】
以下の標準化量を使用して：
2009545769.tif 000011
2009545769.tif 000012
2009545769.tif 000013
ここで、ｂ＝βＲＶＴＨ、ｃ＝Ｉ０Ｒ／２ＶＴＨ、ｄ＝（ｋＩ０−ＩＢ）Ｒ／２ＶＴＨ、
2009545769.tif 000014
【００３４】
（６）の数式は異なるパラメータセットに対してカオスを発生させる。例えば、図８に示すカオスアトラクタは、適応ステップサイズで４次ルンゲクッタ（Ｒｕｎｇｅ‐Ｋｕｔｔａ）アルゴリズムを利用して、ｂ＝０．９、Ｃ＝０．１５、ｄ＝０．７、及びｋ＝８であるシステムの数値解析から得られる。
【００３５】
利用されるカオス振動子は現在のものに対していくらかの考慮すべき利点を提供する。その高いＩＣ性能により最も広く使用される基本的アナログ構築ブロックである回路は、要求される非線型を実現するため、差動対を使用する。更に、カオス振動子はバランスがとれており、従ってそれはよりよい電源排除とノイズ耐性を提供する。
【００３６】
４．回路シミュレーション
ＭＯＳカオス振動子の高周波作動能力を示すため、図７に示す回路レイアウトはカデンツェを利用して描かれ、レイアウト後の回路は１.５μＣＭＯＳプロセスのモデルパラメータと共に、ＳＰＩＣＥ（レベル３）を使用してシミュレートされている。この回路は±２．５Ｖ電源でバイアスをかけられた。受動部品値は：
2009545769.tif 000015
Ｒ＝１，０００Ωで、バイアス電流は夫々、Ｉ０＝２４０μＡ、ＩＢ＝１００μＡであった。
ｖｃ２‐ｖｃ１対ｖｃ３に対応する観察される位相空間を図９に示す。
【００３７】
カオス振動子のこのＭＯＳ版は、外部インダクタを必要とすることは明らかである。機能性を維持しながら、インダクタ値を減少させる試みは、電源電圧、バイアス電流、及びトランジスタアスペクト比の増加なしには不可能であった。しかし、類似カオスアトラクタはＬ＝２０ｎＨ、Ｃ＝０．３ｐＦ（ｆ０≒２ＧＨｚ）、Ｒ＝２５８Ω、及び０．３５μＢｉＣＭＯＳプロセスのモデルパラメータで、ＳＰＩＣＥシミュレーションを利用しても得られる一方、電源電圧は±２．５Vで、バイアス電流はＩ０＝１，３００μＡ、ＩＢ＝４００μＡであった。最後に、カオス振動子回路はモノリシック実装に非常に適しており、非常に高い周波数で作動できる。
【００３８】
５．乱数発生器
初期条件に対するその高感度性と正のリアプノフ指数及びノイズ状パワースペクトルを有することにより、カオスシステムは乱数発生に利用されるのに適する。連続時間カオスシステムからランダムバイナリデータを得るため、我々は、任意のカオス振動子の波形から非可逆バイナリデータの発生に依存する興味深い技術を提示している。非可逆性はＰＲＮＧの発生にとって鍵になる特性であることは注目すべきである。
【００３９】
カオスアトラクタからバイナリランダムビットを得るため、我々は、ωｔｍｏｄ２π＝０（ωはパルス信号周波数）を満たす時刻ｔでの外部の周期的パルス信号の立ち上がり部で得られる数式（６）におけるシステムの状態ｘ１のサンプルを使用した。ｘ１−ｙ−ｘ２−ｚ平面の４次元曲線は可逆であるが、状態の１つ、例えばｘ１に対応する値のみを考慮することにより、非可逆セクションを得ることができる。
【００４０】
我々は、分布がランダム信号に似た適切なセクションを決定するため、周期的にサンプリングしたｘ１値の分布を最初に調査した。我々はｘ１値が数式（６）で示される異なるパラメータセットに対して単一正規又はχ２分布を有するセクションを見つけることはできなかったが、ｘ１の分布が少なくとも２つの領域を有する様々なセクションを決定した。ｂ＝０．９、ｃ＝０．１５、ｄ＝０．７、及びｋ＝８に対して、上で定義されるセクションの状態ｘ１の分布を図１０に示す。
【００４１】
２つの領域を有するｘ１の分布は、局部閾値に対する局部ｘ１値からランダムバイナリデータを発生させることを我々に示唆する。この方向を追求して、我々は数式（７）により一次元セクションからバイナリデータＳ（ｔｏｐ）ｉとＳ（ｂｏｔｔｏｍ）ｉを発生させている：
Ｓ（ｔｏｐ）ｉ＝ｓｇｎ（ｘ１ｉ−ｑｔｏｐ）         ｘ１ｉ≧ｑｍｉｄｄｌｅの場合      （７）
Ｓ（ｂｏｔｔｏｍ）ｉ＝ｓｇｎ（ｘ１ｉ−ｑｂｏｔｔｏｍ）  ｘ１ｉ＜ｑｍｉｄｄｌｅの場合
ここでｓｇｎ（．）は符号関数であり、ｘ１ｉはｔｍｏｄ２π＝０で得られる一次元セクションでのｘ１値であり、ｑｔｏｐとｑｂｏｔｔｏｍは、夫々上部と下部の分布に対する閾値であり、及びｑｍｉｄｄｌｅは分布間の境界である。閾値を適切に選択することができるように、我々は図１０に示すように、上部と下部の分布を調査し、次に、ｑｔｏｐとｑｂｏｔｔｏｍは、ｑｍｉｄｄｌｅが０と決定される場合、夫々０．７９５６９６７８５１５と、−０．７９３２９５６１９２である上部と下部の分布の中央値として決定された。
【００４２】
こうして得られるバイナリ列の発生は、ｑｍｉｄｄｌｅ値に対して、ｘの分布密度は最小であるため、この境界値にはそれほど依存しない。しかし、閾値（ｑｔｏｐ、ｑｂｏｔｔｏｍ）に対するｘの分布密度は最大であり、そのため得られるバイナリ列はバイアスされる。この列の未知バイアスを除去するため、有名なフォンノイマンのスキュー除去技術が利用できる。この技術は、ビット１対０１を出力０へ、１０を出力１に変換し、ビット対００と１１を捨てることから構成される。しかし、この技術は４ビットから約１ビットを発生させるため、スループットを減少させる。
【００４３】
バイアスを除去するため、スループットを減少させないように、ノイマン処理の代わりに、
2009545769.tif 000016
問題は、入力ビット間の僅かな相関が，かなりのバイアスを出力へ付加することである。１９６Ｋビット長の発生バイナリ列ＳｔｏｐとＳｂｏｔｔｏｍの相関係数は、０．００４４６と計算され、発生ビット列は独立であると決定される。カオスシステムは正のリアプノフ指数を有することを特徴とするように、これは事実期待され、カオス時間シリーズの自己相関は突然消滅する。この結果により、我々は示された数式（８）を利用することにより新バイナリデータＳ（ｘｏｒ）ｉを発生させている。
2009545769.tif 000017
【００４４】
こうして得られるバイナリ列Ｓｘｏｒの平均値ψは、表示の数式（９）により計算することができる：
2009545769.tif 000018
ここで、Ｓｔｏｐの平均値はμで、Ｓｂｏｔｔｏｍの平均価はνである。このように、もしμとνが１／２に近ければ、ψは１／２に非常に近くなる。この結果、数式（８）で示される手順により、任意の適切な閾値に対して得られる、ビット列Ｓｘｏｒは、フォンノイマン処理なしにＦＩＰＳ‐１４０‐２テスト一式のテストをパスすることを、我々は数値的に証明している。上記手順による乱数発生を、局部ＲＮＧと称した。
【００４５】
６．ＲＮＧの実験的証明とハードウェア実現
適切な組み立て施設がないため、回路の実現可能性を示すために、個別部品を使用して、カオス振動子と提案のＲＮＧを構築することを選択している。図７に関して、受動部品値は：
Ｌ＝９ｍＨ、Ｃ＝１０ｎＦ、Ｒ＝１，０００Ω、ＩＢ＝１００μＡ、及びＩ０＝２５０μＡである。簡単な電流ミラーを使用して実現されたＭＯＳトランジスタと電流ソースは、ＬＭ４００７ＣＭＯＳトランジスタアレーが実装された。電流ミラー負荷抵抗の比を調節することにより、ｋを８に等しく設定した。カオス振動子の中心作動周波数、
2009545769.tif 000019
低い周波数値に調節された。この回路は±５Ｄ電源でバイアスされ、観察されるアトラクタを図１１に示す。５章に説明される手順によると、我々はカオス振動子の状態の１つを周期的にサンプリングすることにより局部的にランダムビットを発生させている。
【００４６】
６．１局部ＲＮＧ
局部ＲＮＧで、非可逆セクションを得るため、ｘ１変数のみを使用して、変数ｘ１に対応する電圧ｖ１＝ｖＣ２−ｖＣ１はバイナリ列へ変換された。この手順を実施するため、図１８に示す回路が使用された。この回路で、コンパレータはＬＭ２１１チップが実装され、電圧レベルＶｔｏｐ、Ｖｍｉｄｄｌｅ、及びＶｂｏｔｔｏｍは、夫々数式（７）で閾値を実現するために使用された。ＶｔｏｐとＶｂｏｔｔｏｍは２つの１２ビット電圧モードＤＡ変換器（ＤＡＣ）により発生させた。各ＤＡＣは０．５８５９３７５ｍＶステップで調節することができ、ＤＡＣの基準電圧は２．４Ｖである。実施において、数式（７）と（８）は次のように変換される：
Ｓ（ｔｏｐ）ｉ＝ｓｇｎ（ｖ１ｉ−Ｖｔｏｐ）         ｖ１ｉ≧Ｖｍｉｄｄｌｅの場合
Ｓ（ｂｏｔｔｏｍ）ｉ＝ｓｇｎ（ｖ１ｉ−Ｖｂｏｔｔｏｍ）  ｖ１ｉ＜Ｖｍｉｄｄｌｅの場合    （１０）
2009545769.tif 000020
【００４７】
ＰＣＩインターフェースを有するＦＰＧＡベースのハードウェアはバイナリデータをコンピュータへアップロードするように設計された。ｔｍｏｄ２π＝０と定義されるセクションでｘ値を得るため、コンパレータの出力ビット列はサンプリングされ、外部の周期的矩形波発生器ｖｐ（ｔ）の立ち上がり部で、バイナリ形式で記憶された。ＶｔｏｐとＶｂｏｔｔｏｍ閾値に対するオフセット補正、周波数補正及び排他的論理和操作はＦＰＧＡ内で実施された。オフセット・周波数補正と排他的論理和操作の後、候補乱数がＰＣＩインターフェースを介してコンピュータへアップロードされた。我々のＦＰＧＡベースのハードウェアの最大データ記憶速度は６２Ｍｂｐｓである。
【００４８】
５章で説明される手順により、我々はｖ１の分布を調査した。その結果、ｖｐ（ｔ）の立ち上がり部で得られるｖ１の分布を図１２に示す。
【００４９】
初期閾値を適切に決定できるように、数値ビット発生に類似して、上部と下部の分布が調査された。次に、ＶｔｏｐとＶｂｏｔｔｏｍの初期値は、夫々１．１１４Vと−１．１２２Ｖである上部と下部の分布の中央値として決定される一方、Ｖｍｉｄｄｌｅは０ｍＶと決定された。ｖ１のサンプリング周波数はνｐ（ｔ）の周波数をＦＰＧＡ内のプリスケーラ値に分割することにより決定された。プリオスケーラ値の初期値を適切に決定するため、図１３で示されるｖ１の周波数スペクトルが観察された。図に示すように、カオス信号ｖ１はノイズ状パワースペクトルを有する。カオス振動子の中心周波数は、１７ＫＨｚに設定される実線マークで表示される。パワースペクトルが平坦な領域である、４ＫＨｚに設定される破線マーク迄は、カオス信号ｖ１は全周波数を均等量包含し、パワースペクトル密度はその最大値にある。従って、一般性を失うことなく、ｖ１（ｔ）とｖ１（ｔ＋ｔｏ）は全ｔ０≠０に対して相関なしと考えられ、ｖ１はランダムノイズソースとして４ＫＨｚ迄サンプリングすることができる。最後に、プリスケーラの初期値は６と決定される一方、ｖｐ（ｔ）の周波数は２４ＫＨｚであった。
【００５０】
ＶｔｏｐとＶｂｏｔｔｏｍ閾値のオフセット補正は、ＳｔｏｐとＳｂｏｔｔｏｍバイナリ列に対するＦＩＰＳ‐１４０‐２テスト一式のモノビットテストを実施することにより実現された。各列に対して、２０，０００ビット長のビット列が確保され、０の数＞１０，２７５ならば、対応する閾値は減少し、もし０の数＜９，７２５ならば、対応する閾値は増加した。周波数補正ループは、Ｓｘｏｒバイナリ列に対してＦＩＰＳ‐１４０‐２テスト一式のランテストを実施することにより実現された。もし列に確保された２０，０００ビット長の３Ｓｘｏｒビット列がランテストに合格しなかったならば、これはｖ１のオーバサンプリングを意味し、その場合、ｖ１のサンプリング周波数を、プリスケーラ値を増加させることにより低下させた。必要ならば、サンプリング周波数をＰＣＩインターフェースを介して外部から増加させることができる。
【００５１】
プリスケーラと閾値が安定した後、５０３Ｍビット長のビット列が確保され、全ＮＩＳＴテスト一式を受けた。その結果、ビット列Ｓｘｏｒはフォンノイマン処理なしに、全ＮＩＳＴ乱数テスト一式のテストをパスすることを我々は実験的に証明している。ｐ値の均一性と局部ＲＮＧ回路の通過列の比率に対する結果を１表に示す。例えば５０３×１Ｍビットのサンプルサイズに対して、ランダムエクスカーション（バリアント）テストを除き、各統計的テストに対する最小通過速度は約０．９７６６９１である。
【００５２】
カオス振動子の中心周波数が１６．７７ＫＨｚである場合、プリスケーラ値は７で安定し、Ｓｘｏｒのスループットデータ速度は分布に従いｖ１を２つの領域に分割するので、事実上（２４ＫＨｚ／７・２）１７１４ｂｐｓになる。Ｓｘｏｒの最大スリープットデータ速度は：
2009545769.tif 000021
と予測することができる。４章で、我々は（ｆ０≒３３．９ＭＨｚ）で操作中心周波数に至るレイアウト後の回路シミュレーション結果を提示している。この回路が、４章（ｆ０≒２ＧＨｚ）で示すように、０．３５μＢｉＣＭＯＳプロセス上で実現されたことを考慮して、カオス振動子はギガヘルツレンジの公称中心周波数により、今回のプロセス上で容易に組み立てることができることを、我々は推論できる。しかし、非常に高い周波数で作動するカオス回路が文献で報告されていることは注目すべきである。例えば、５．３ＧＨｚで作動する同一カオス振動子のＢＪＴ版のカデンツェシミュレーション結果が［１８］に提示される。従って連続時間カオスの使用は、１００Ｍｂｐｓオーダの非常に高いスループットを備える乱数の発生において非常に有望であることを、これら全てが示している。
2009545769.tif 000022
１表  局部ＲＮＧに対するＮＩＳＴテスト一式の結果
【００５３】
７．ダブルスクロールアトラクタに基づく、補正真正乱数発生器
提案の設計で、我々は最初にカオスシステムの状態の１つを周期的にサンプリングすることによりランダムデータを得、及び提案のＲＮＧから発生するビット列がＦＩＰＳ‐１４０‐２テスト一式の４つの基本的乱数テストをパスすることを数値的に証明している。外部干渉は、干渉されるランダム信号が同程度のレベルを有するので、ＲＮＧ設計での主要な関心事である。この問題を解決し、スループットを強化することを目的としたパラメータ変動とアタックに対して強固にするため、我々は発生ビット列の統計的品質を向上させるオフセットと周波数の補正ループを提案している。最後に、提案の回路から得られるバイナリデータが、後処理なしにＮＩＳＴ全乱数テスト一式のテストをパスすることを、我々は実験的に証明している。
【００５４】
８．ダブルスクロールアトラクタ
ＲＮＧのコアーとして使用されるダブルスクロールアトラクタは、数式（１１）で表現される［２２］に示す簡単なモデルから得られる。非線型が連続非線型で置換される場合、システムはチュア（Ｃｈｕａ）の振動子に“質的に類似”であることに注目すべきである。
ｘ＝ｙ
ｙ＝ｚ                                  （１１）
ｚ＝−ａｘ−ａｙ−ａｚ＋ｓｇｎ（ｘ）
ここで、ｓｇｎ（.）は符号関数である。（１１）の数式は異なるパラメータセットに対してカオスを発生させる。例えば、図１４に示すカオスアトラクタは、適応ステップサイズで４次ルンゲクッタ（Ｒｕｎｇｅ‐Ｋｕｔｔａ）アルゴリズムを使用して、ａ＝０．６６６…であるシステムの数値解析から得られる。
【００５５】
９．ランダムビットの発生
連続時間カオスシステムからランダムバイナリデータを得るため、我々は任意のカオスシステム波形からの非可逆バイナリデータの発生に依存する興味深い技術を提示している。非可逆性は疑似乱数の発生にとってキーになる特性であることは注目すべきである。
【００５６】
カオスアトラクタからバイナリランダムビットを得るため、我々は、ωｔｍｏｄ2π＝０（ωはパルス信号周波数）を満たす時刻ｔに、外部の周波数パルス信号の立ち上がり部で得られる、数式（１１）におけるシステムの状態ｘのサンプルを使用した。ｘ−ｙ−ｚ平面における３次元曲線は可逆であるが、状態の１つ、例えばｘに対応する値のみを考慮することにより、非可逆セクションを得ることができる。
【００５７】
我々は、最初に分布がランダム信号のような適切なセクションを決定するため、周期的にサンプリングされるｘ値の分布を調査した。ｘ値が数式（１１）で示されるａの異なる値に対して単一正規又はχ２分布を有するセクションを、我々は発見できなかったが、ｘ分布が少なくとも２つの領域を有する様々なセクションを決定した。ａ＝０．６６６…に対して、上で定義されるセクションの状態ｘの分布を図１５に示す。
【００５８】
２つの領域を有するｘの分布は、局部閾値に対する局部ｘ値からランダムバイナリデータを発生させることを我々に示唆する。この方向を追求して、我々は数式（１２）による一次元セクションからバイナリデータＳ（ｔｏｐ）ｉとＳ（ｂｏｔｔｏｍ）ｉを発生させている：
Ｓ（ｔｏｐ）ｉ＝ｓｇｎ（ｘｉ−ｑｔｏｐ）         ｘｉ≧ｑｍｉｄｄｌｅの場合      （１２）
Ｓ（ｂｏｔｔｏｍ）ｉ＝ｓｇｎ（ｘｉ−ｑｂｏｔｔｏｍ）  ｘｉ＜ｑｍｉｄｄｌｅの場合
ここで、ｘｉは１／２ｔｍｏｄ２π＝０（ω＝１／２）に対して得られる一次元セクションにおけるｘの値であり、ｑｔｏｐとｑｂｏｔｔｏｍは、夫々上部と下部の分布に対する閾値であり、ｑｍｉｄｄｌｅは両分布間の境界である。閾値を適切に選択できるように、我々は図１５に示すように、上部と下部の分布を調査し、次にｑｔｏｐとｑｂｏｔｔｏｍは、ｑｍｉｄｄｌｅが０と決定される場合、夫々０．９６５６１５８８４９と−０．９６４０５１８９６６である上部と下部の分布の中央値として決定された。
【００５９】
こうして得られるバイナリ列の発生は、この境界値に対して、ｘの分布密度は最小であるため、ｑｍｉｄｄｌｅ値にはそれほど依存しない。しかし、閾値（ｑｔｏｐ、ｑｂｏｔｔｏｍ）に対するｘの分布密度は最大であり、そのため得られるバイナリ列はバイアスされる。この列の未知バイアスを除去するため、有名なフォンノイマンのスキュー除去技術が利用できる。この技術は、ビット１対０１を出力０へ、１０を出力１に変換し、ビット対００と１１を捨てることから構成される。しかし、この技術は４ビットから約１ビットを発生させるため、スループットを減少させる。
【００６０】
バイアスを除去するため、スループットを減少させないように、ノイマン処理の代わりに、
2009545769.tif 000023
入力ビット間の僅かな相関が，かなりのバイアスを出力へ付加することである。１５２Ｋビット長の発生バイナリ列ＳｔｏｐとＳｂｏｔｔｏｍの相関係数は、０．０００１８と計算され、発生ビット列は独立であると決定される。カオスシステムは正のリアプノフ指数を有することを特徴とするように、これは事実期待され、カオス時間シリーズの自己相関は突然消滅する。この結果により、我々は示された数式（１３）を利用することにより新バイナリデータＳ（ｘｏｒ）ｉを発生させている。
2009545769.tif 000024
【００６１】
こうして得られるバイナリ列Ｓｘｏｒの平均値ψは、表示の数式（１４）により計算することができる：
2009545769.tif 000025
ここで、Ｓｔｏｐの平均値はμで、Ｓｂｏｔｔｏｍの平均価はνである。このように、もしμとνが１／２に近ければ、ψは１／２に非常に近くなる。この結果、数式（１３）で示される手順により、任意の適切な閾値に対して得られる、ビット列Ｓｘｏｒは、フォンノイマン処理なしにＦＩＰＳ‐１４０‐２テスト一式のテストをパスすることを、我々は数値的に証明している。上記手順による乱数発生を、局部ＲＮＧと称した。
【００６２】
１０．ＲＮＧのハードウェア実現
適切な組み立て施設がないため、我々は回路の実現可能性を示すため、個別部品を使用して提案の回路を構築することを選択している。
【００６３】
１０．１  カオス振動子の実験的証明
ダブルスクロールアトラクタを実現する回路図を図１６に示す。ＡＤ８４４は高速オペアンプとして使用され、ＬＭ２１１電圧コンパレータは必要な非線型の実現のために使用される。受動部品値は以下のように設定された：
Ｒ１＝Ｒ２＝ａＲ３＝Ｒ＝１０ｋΩ、Ｒ３＝１５ｋΩ（ａ＝０．６６６…に対して）Ｃ１７＝Ｃ１８＝Ｃ１９＝Ｃ２．２ｎＦ、及びＲｋ＝１００ｋΩ。
【００６４】
従って、時定数τ（＝ＲＣ）に対応するカオス振動子の中心作動周波数：ｆ＝１／２πτは、回路が依存容量に影響されないように、７．２３４ＫＨｚと低い周波数値に調節された。この回路は±５Ｖ電源でバイアスされ、観察されるアトラクタを図１７に示す。
【００６５】
１０．２  局部ＲＮＧ
局部ＲＮＧで、変数ｘに対応する電圧ｖ１は、９章で説明される手順によりバイナリ列に変換された。この手順を実施するため、図１８に示す回路が使用された。この回路でコンパレータはＬＭ２１１４チップが実装され、電圧レベルＶｔｏｐ、Ｖｍｉｄｄｌｅ及びＶｂｏｔｔｏｍが夫々数式（１２）の閾値を実現するために使用された。ＶｔｏｐとＶｂｏｔｔｏｍは１２ビット電圧モードＤＡ変換器（ＤＡＣ）により発生させた。各ＤＡＣはＤＡＣの基準電圧が２．４Ｖで０．５８５９３７５ｍＶステップで調節することができる。
【００６６】
ＰＣＩインターフェースを有するＦＰＧＡベースのハードウェアはバイナリデータをコンピュータへアップロードするように設計された。ｔｍｏｄ２π＝０と定義されるセクションでｘ値を得るため、コンパレータの出力ビット列はサンプリングされ、外部の周期的矩形波発生器ｖｐ（ｔ）の立ち上がり部で、バイナリ形式で記憶された。ＶｔｏｐとＶｂｏｔｔｏｍ閾値に対するオフセット補正、周波数補正及び排他的論理和操作はＦＰＧＡ内で実施された。オフセット・周波数補正と排他的論理和操作の後、候補乱数がＰＣＩインターフェースを介してコンピュータへアップロードされた。我々のＦＰＧＡベースのハードウェアの最大データ記憶速度は６２Ｍｂｐｓである。
１０．３  オフセット及び周波数の補正
【００６７】
９章で説明される手順により、我々はｖ１の分布を調査した。その結果、ｖｐ（ｔ）の立ち上がり部で得られるｖ１の分布を図１９に示す。
【００６８】
初期閾値を適切に決定できるように、数値ビット発生に類似して、上部と下部の分布が調査された。次に、ＶｔｏｐとＶｂｏｔｔｏｍの初期値は、夫々４７０ｍVと−４７０ｍＶである上部と下部の分布の中央値として決定される一方、Ｖｍｉｄｄｌｅは０ｍＶと決定された。ｖ１のサンプリング周波数はνｐ（ｔ）の周波数をＦＰＧＡ内のプリスケーラ値に分割することにより決定された。
【００６９】
プリオスケーラ値の初期値を適切に決定するため、図２０で示されるｖ１の周波数スペクトルが観察された。図２０に示すように、カオス信号ｖ１はノイズ状パワースペクトルを有する。カオス振動子の中心周波数は、７．２３４ＫＨｚに設定される実線マークで表示される。パワースペクトルが平坦な領域である、１．５５ＫＨｚに設定される破線マーク迄は、カオス信号ｖ１は全周波数を均等量包含し、パワースペクトル密度はその最大値にある。従って、一般性を犠牲にせず、ｖ１（ｔ）とｖ１（ｔ＋ｔｏ）は全ｔ０≠０に対して相関なしと考えられ、ｖ１はランダムノイズソースとして１．５５ＫＨｚ迄サンプリングすることができる。最後に、プリスケーラの初期値は３と決定される一方、ｖｐ（ｔ）の周波数は４．６５ＫＨｚであった。
【００７０】
ＶｔｏｐとＶｂｏｔｔｏｍ閾値のオフセット補正は、ＳｔｏｐとＳｂｏｔｔｏｍバイナリ列に対するＦＩＰＳ‐１４０‐２テスト一式のモノビットテストを実施することにより実現された。各列に対して、２０，０００ビット長のビット列が確保され、もし０の数＞１０，２７５ならば、対応する閾値は減少し、もし０の数＜９，７２５ならば対応する閾値は増加した。
【００７１】
周波数補正ループは、Ｓｘｏｒバイナリ列に、ＦＩＰＳ‐１４０‐２テスト一式のランテストを実施することにより実現された。列に確保される２０，０００ビット長の3Ｓｘｏｒビット列がランテストに合格しなかったならば、これはｖ１のオーバサンプリングを意味し、次に、ｖ１のサンプリング周波数をプリスケーラ値を増加させることにより低下させた。その初期値が３と決定されたプリスケーラ値は４で安定した。必要ならば、サンプリング周波数はＰＣＩインターフェースを介して外部から増加させることができる。閾値の初期値は適切に調節されず、２０，０００ビット長のビット列の平均値は、補正により１／２に到達し安定した事実にも拘らず、Ｖｂｏｔｔｏｍに対する1つに類似のＶｔｏｐに対するオフセット補正の効果を図２１に示す。
【００７２】
１０．４  テスト結果
プリスケーラと閾値が安定した後、２２３Ｍビット長のビット列が確保され、全ＮＩＳテスト一式を受けた。この結果、ビット列Ｓｘｏｒは、フォンノイマン処理なしに、全ＮＩＳＴ乱数テスト一式のテストをパスすることを、我々は実験的に証明している。Ｐ値の均一性及び局部ＲＮＧ回路の通過列の比率に対する結果を２表に示し、ここではＰ値（０≦Ｐ値≦１）は、完全なＲＮＧが任意列よりランダム性の少ない列を生成する確率を予測する実数である。２２３×１Ｍビットのサンプルに対して、ランダムエクスカーション（バリアント）テストを除いて、各統計的テストサイズに対する最小通過速度は、約０．９７００１１であることが報告されている。
【００７３】
カオス振動子の中心周波数が７．２３４ＫＨｚである場合、ｖ１を分布に応じて２つの領域に分割するので、Ｓｘｏｒのスループットデータ速度は事実上（４．６５ＫＨｚ／４・２）５８１ｂｐｓ（プリスケーラ値は４）になる。Ｓｘｏｒのスループットデータ速度を、τｎｅｗ＝ＲｎｅｗＣｎｅｗで、ｆｘｏｒ＝５８１τ／τｎｅｗ＝０．０１２７８２／τｎｅｗと一般化することができる。［２２］で、Ｒｎｅｗ＝２８．５ＫΩ、Ｃｎｅｗ＝１５ｐＦで、ダブルスクロールシステムのチップの実現が提示され、これがｆ＝１／２πτｎｅｗ＝５００ＫＨｚでの作動中心周波数となる。［２２］の回路が比較的遅い１．２ｕＣＭＯＳプロセス上で実現されたことを考慮して、この回路は１０ＭＨｚ×２で今日のプロセス上で組み立てることができ、Ｍｂｐｓにより近いスループットを発生させることができることを、我々は推論することができる。しかし、非常に高い周波数で作動するカオス回路が文献で報告されていることに注目すべきである。例えば、５．３ＧＨｚで作動するカオス回路のカデンツェシュミレーション結果が〔１８〕に提示される。
2009545769.tif 000026
２表  局部ＲＮＧに対するＮＩＳＴテスト一式の結果
【００７４】
我々の局部ＲＮＧを［１５］に示す先の１つと比較して、同一カオス振動子に対して、［１５］に示すＲＮＧ法のスループットデータ速度は３８５Ｂｐｓであることを、我々は実験的に証明している。更に、［１５］に示すＲＮＧ法から得られるビット列は、フォンノイマン処理のみで、ダイハード（Ｄｉｅｈａｒｄ）の全テスト一式をパスすることができる。
【００７５】
この結果、提案の設計、自律カオス振動子に基づく補正ＴＲＮＧ、及びダブルスクロールアトラクタは、改良された設計思想であり、ここでは出力列の統計的品質を最大限に向上させ、及びスループットを強化する目的で、外部干渉、パラメータ変動とアタックに強固にするため、オフセットと周波数の補正ループが付加される。
【００７６】
１１．ダブルスクロールアトラクタに基づく真正乱数発生器
提案のＴＲＮＧで、我々は、カオスシステムのポアンカレセクションからランダムデータを得、提案の乱数発生器から発生したビット列がＦＩＰＳ‐１４０‐２テスト一式の４つの基本的乱数テストをパスすることを、数値的に証明している。更に、提案の回路から得られるバイナリデータがＮＩＳＴ全乱数テスト一式のテストをパスすることを実験的にも証明している。
【００７７】
１２．ダブルスクロールアトラクタ
ＲＮＧのコアーとして使用されるダブルスクロールアトラクタは、数式（１５）で表現される［２２］に示す簡単なモデルから得られる。非線型が連続非線型で置換される場合、システムはチュア（Ｃｈｕａ）の振動子に“質的に類似”であることに注目すべきである。
ｘ＝ｙ
ｙ＝ｚ                                  （１５）
ｚ＝−ａｘ−ａｙ−ａｚ＋ｓｇｎ（ｘ）
【００７８】
（１５）の数式は異なるパラメータセットに対してカオスを発生させる。例えば、図２２に示すカオスアトラクタは、適応ステップサイズで４次ルンゲクッタ（Ｒｕｎｇｅ‐Ｋｕｔｔａ）アルゴリズムを使用して、ａ＝０．６６６であるシステムの数値解析から得られる。
【００７９】
１３．ランダムビットの発生
連続時間カオスシステムからランダムバイナリデータを得るため、我々は任意のカオスシステム波形からの非可逆バイナリデータの発生に依存する興味深い技術を提示している。非可逆性は疑似乱数の発生にとってキーになる特性であることは注目すべきである。
【００８０】
カオスアトラクタからバイナリランダムビットを得るため、我々は数式（１５）で、システムのｚ（ｔ）＝０で定義されるポアンカレセクションを使用した。ｘ−ｙ平面における二次元ポアンカレセクションは可逆であるが、状態の１つ、例えばｘに対応する値のみを考慮することにより非可逆セクションを得ることができる。
【００８１】
我々は、分布がランダム信号に似た適切なセクションを決定するため、ｄｘ／ｄｔ＞０で、ｚ（ｔ）＝ｚ０（ｚ０はｚｍｉｎ〜ｚｍａｘで変動）と定義されるポアンカレセクションのｘ分布を最初に調査した。ｘ値がｚ０の異なる値に対して、単一正規又はχ２分布を有するポアンカレセクションを発見できなかったが、ｘの分布が少なくとも２つの領域を有する様々なポアンカレセクションを決定した。カオスシステムに対して、ｚ（ｔ）＝０に対する上で定義されるポアンカレセクションの状態ｘの値、及びその分布を、夫々図２３と図２４に示す。
【００８２】
２つの領域を有するｘの分布は、局部閾値に対して、局部ｘ値からランダムバイナリデータを発生させることを我々に示唆する。この方向を追求して、我々は数式（１６）によりポアンカレセクションからバイナリデータＳ（ｔｏｐ）ｉとＳ（ｂｏｔｔｏｍ）ｉを発生させている。
Ｓ（ｔｏｐ）ｉ＝ｓｇｎ（ｘｉ−ｑｔｏｐ）          ｘｉ≧ｑｍｉｄｄｌｅの場合    （１６）
Ｓ（ｂｏｔｔｏｍ）ｉ＝ｓｇｎ（ｘｉ−ｑｂｏｔｔｏｍ）  ｘｉ＜ｑｍｉｄｄｌｅの場合
ここでｓｇｎ（．）は符号関数であり、ｘｉはポアンカレセクションでのｘの値であり、ｑｔｏｐとｑｂｏｔｔｏｍは、夫々上部と下部の分布に対する閾値であり、及びｑｍｉｄｄｌｅは分布間の境界である。閾値を適切に選択できるように、我々は図２４に示すような上部と下部の分布を調査し、次にｑｔｏｐとｑｂｏｔｔｏｍは、ｑｍｉｄｄｌｅが０と決定される場合、夫々０．８１５８と―１．０１６９である上部と下部の分布の中央値として決定された。
【００８３】
こうして得られるバイナリ列の発生は、この境界値に対して、ｘの分布密度は最小であるため、ｑｍｉｄｄｌｅ値にはそれほど依存しない。しかし、閾値（ｑｔｏｐ、ｑｂｏｔｔｏｍ）に対するｘの分布密度は最大であり、そのため得られるバイナリ列はバイアスされる。この列の未知バイアスを除去するため、有名なフォンノイマンのスキュー除去技術が利用できる。この技術は、ビット１対０１を出力０へ、１０を出力１に変換し、ビット対００と１１を捨てることから構成される。しかし、この技術は４ビットから約１ビットを発生させるため、スループットを減少させる。
【００８４】
2009545769.tif 000027
入力ビット間の僅かな相関が，かなりのバイアスを出力へ付加することである。３２，０００ビット長の発生バイナリ列ＳｔｏｐとＳｂｏｔｔｏｍの相関係数は、約０．０００８７と計算され、発生ビット列は独立であると決定される。この結果により、我々は示された数式（１７）を利用することにより新バイナリデータＳ（ｘｏｒ）ｉを発生させている。
2009545769.tif 000028
【００８５】
こうして得られるバイナリ列Ｓｘｏｒの平均値ψは、表示の数式（１８）により計算することができる：
2009545769.tif 000029
ここで、Ｓｔｏｐの平均値はμで、Ｓｂｏｔｔｏｍの平均価はνである。このように、もしμとνが１／２に近ければ、ψは１／２に非常に近い。この結果、数式（１７）で示される手順により、任意の適切な閾値に対して得られる、ビット列Ｓｘｏｒは、フォンノイマン処理なしにＦＩＰＳ‐１４０‐２テスト一式のテストをパスすることを、我々は数値的に証明している。上記手順による乱数発生を、局部ＲＮＧと称した。
【００８６】
１４．ＲＮＧのハードウェア実現
適切な組み立て施設がないため、我々は回路の実現可能性を示すため、個別部品を使用して、提案の回路を構築することを選択している。
【００８７】
回路は±５Ｖ電源でバイアスされた。ダブルスクロールアトラクタを実現する回路図を図２５に示す。ＡＤ８４４は高速オペアンプとして使用され、ＬＭ２１１電圧コンパレータは必要な非線型を実現するために使用される。受動部品値は：
Ｒ１＝Ｒ２＝ａＲ３＝Ｒ＝１０ｋΩ、ａ＝０．６６６に対してＲ３＝１５ｋΩ、Ｃ１７＝Ｃ１８＝Ｃ１９＝Ｃ＝２．２ｎＦ、及びＲＫ＝１００ｋΩである。
【００８８】
従って、時定数τ（＝ＲＣ）に対応するカオス振動子の主作動周波数：ｆ＝１／２πτは、回路が寄生容量に影響されないように、７．２３４ＫＨｚと低い周波数値に調節された。観察されるアトラクタを図２６に示す。
【００８９】
１４．１局部ＲＮＧ
局部ＲＮＧで、非線型地図を得るため、ポアンカレセクションのｘ変数のみが使用された。変数ｘに対応する電圧ｖ1は、１３章で説明される手順により、バイナリ列へ変換された。この手順を実施するため、図２７に示す回路が使用された。この回路で、コンパレータはＬＭ２１１チップが実装され、電圧レベルＶｔｏｐ、Ｖｍｉｄｄｌｅ及びＶｂｏｔｔｏｍは、夫々数式（１６）の閾値を実現するために使用された。実施において、数式（１６）と（１７）は以下のように変換される：
Ｓ（ｔｏｐ）ｉ＝ｓｇｎ（ｖ１ｉ−Ｖｔｏｐ）         ｖ１ｉ≧Ｖｍｉｄｄｌｅの場合
Ｓ（ｂｏｔｔｏｍ）ｉ＝ｓｇｎ（ｖ１ｉ−Ｖｂｏｔｔｏｍ）  ｖ１ｉ＜Ｖｍｉｄｄｌｅの場合    （１９）
2009545769.tif 000030
【００９０】
ＰＣＩインターフェースを有するＦＰＧＡベースのハードウェアはバイナリデータをコンピュータへアップロードするように設計された。ｄｚ／ｄｔ＞０で、ｚ（ｔ）＝０と定義されるポアンカレセクションにおけるｘ値を得るため、変数ｚに対応する電圧ｖ３を、このコンパレータの立ち上がり部で０Ｖと比較し、他のコンパレータの出力ビット列をサンプリングし、バイナリ形式で記憶した。Ｓｘｏｒ列に対する排他的倫理和操作をＦＰＧＡ内で実施し、排他的論理和操作の後、候補乱数を、ＰＣインターフェースを介してコンピュータへアップロードした。ハードウェアに基づく我々のＦＰＧＡの最大データ記憶速度は６２Ｍｂｐｓである
【００９１】
１３章で説明する手順により、我々はｖ１の分布を調査した。この結果、ｄｖ３／ｄｔ＞０で、ｖ３（ｔ）＝０で得られるν１の分布を示すオッシロスコープスナップ写真を図２８に図示する。
【００９２】
閾値を適切に決定できるように、数値ビット発生に類似して、我々は上部と下部の分布を調査した。次に、Ｖｍｉｄｄｌｅを０ｍＶと決定し、ＶｔｏｐとＶｂｏｔｔｏｍは、夫々５２４ｍＶと−４１７Ｖである上部と下部の分布の中央値として決定された。
【００９３】
次に、１０５Ｍバイト長のＳｘｏｒビット列は任意の適切な閾値に対して、局部ＲＮＧ回路から確保された。得られたビットは全ＮＩＳＴテスト一式を受け、ラン、長期ラン＆エイペン（Ｒｕｎｓ、Ｌｏｎｇｅｓｔ  Ｒｕｎ  ａｎｄ  Ａｐｅｎ）テストに合格しなかった。これはｖ１のオーバサンプリングを我々に示した。次に、結果を改善するため、我々はＦＰＧＡ内にカウンタを実装することにより第２列のビットを得た。ｖ１コンパレータの出力ビット列はｖ３コンパレータの第２立ち上がり部でサンプリングされる。
【００９４】
この結果、第２立ち上がり部上で発生するビット列Ｓｘｏｒは±２ｍＶの許容範囲で任意の適切な閾値に対して、フォンノイマン処理なしに、全ＮＩＳＴ乱数テスト一式のテストをパスすることを、我々は実験的に証明している。
【００９５】
局部ＲＮＧ回路の通過比率に対応するテスト結果を表３に示す。カオス振動子の主周波数が７．２３４ＫＨｚである場合、第２立ち上がり部上に発生するＳｘｏｒのスループットデータ速度は、事実上１，８２０ｂｐｓになる。Ｓｘｏｒのスループットデータ速度は：
ｆｘｏｒ＝１，８２０τ／τｎｅｗ＝０．０４００４／τｎｅｗ（τｎｅｗ＝ＲｎｅｗＣｎｅｗ）として一般化できる。［２２］において、ｆ＝１／２πτｎｅｗ＝５００ＫＨｚでの作動中心周波数で、ダブルスクロールシステムのチップの実現が提示されている。［２２］における回路は、比較的遅い１．２ｕＣＭＯＳプロセス上で実現されたことを考慮して、回路は２０ＭＨｚで今日のプロセス上で容易に組み立てることができ、数Ｍｂｐｓオーダのスループットを発生することができる。しかし、非常に高い周波数で作動するカオス回路が文献に報告されていることは注目すべきである。例えば、５．３ＧＨｚで作動するカオス回路のガデンツェシミュレーション結果を［１８］に提示する。
【００９６】
局部ＲＮＧ設計を［１５］に示す先の１つと比較すると、［１５］で示すＲＮＧ法のスループットデータ速度は、１００，０００ユニット標準化時間に対して１，６３４ビットであり、一方局部列Ｓｘｏｒのスループットデータ速度は１００，０００ユニット標準化時間に対して７，７１９ビットであった。更に、［１５］に示されるＲＮＧ法から得られるビット列は、フォンノイマン処理のみで、ダイハードの全テスト一式をパスすることができ、http://www.esat.kuleuven.ac.be/mey/Ds2RbG/Ds2RbG.htmlで示されるサンプルビット列は全ＮＩＳＴテスト一式のブロック周波数、ラン＆エイペン（Ｂｌｏｃｋ‐ｆｒｅｑ、Ｒｕｎｓ＆Ａｐｅｎ）テストに合格していない。
2009545769.tif 000031
3表  局部ＲＮＧに対するＮＩＳＴテスト一式の結果
【００９７】
結論として、カオス振動子の主周波数が、フォンノイマン処理なしで、７．２３４ＫＨｚの場合、局部列ｘｏｒ出力のスループットデータ速度は１，８２０ｂｐｓである。例えば４０ＭＨｚの主周波数の連続時間カオス振動子は、ＩＣ内の提案のＲＮＧのコアーとして使用されることを考慮して、局部ＲＮＧのスループットデータ速度はおそらく１０Ｍｂｐｓ迄増加するだろう。結論として、連続時間カオスの使用は、後処理なしに、非常に速く、かつ一定のデータ速度で乱数を発生させることにおいて非常に有望であることを、我々は推論することができる。
【００９８】
１５.連続時間カオスに基づく真正乱数発生器
ＲＮＧの実現における離散時間カオス地図の使用は、しばらくの間有名であった事実にも関わらず、連続時間カオス振動子はＴＲＮの実現にも使用できることが示されたのは、つい最近のことである。この方向を追求して、我々は提案のカオス振動子のＲＮＧコアーとしての有効性を調査した。
【００９９】
多くのカオス振動子は文献に存在するが、低消費電力、高周波数作動、低電圧レベルでの作動能力などの高性能ＩＣ設計問題に関するものは僅かしか設計されていない。この作業で我々は、高性能ＩＣ実現に適した簡単な自律カオス振動子を提示する。
【０１００】
最初に、我々は提案のカオスシステムの一次元ストロボコープ式ポアンカレ地図からランダムデータを得、地図を分布に応じて領域へ分割する場合、提案の回路の周りに構築されるＲＮＧにより発生するビット列は、ＦＩＰＳ‐１４０‐２テスト一式の４つの基本的乱数テストをパスすることを数値的に証明している。更に、カオス回路から得られるバイナリデータはＮＩＳＴ全乱数テスト一式のテストをパスすることを、我々は実験的にも証明している。
【０１０１】
１６．提案の振動子
提案のバイポーラカオス振動子は図２９に提示される。バイポーラトランジスタとアース間に現れる寄生容量はＣｐで表示されると仮定して、回路のルーチン分析により以下の状態方程式が生ずる：
2009545769.tif 000032
ここで、ｉ３＝ｉＲ−ｉＬで、Ｖｐ（ｔ）はｓｇｎ（ｓｉｎΩｔ）と定義される外部の周期的パルス列であり、ＶＴはサーマル電圧（ＶＴ＝ｋＴ／ｑ）で、これは室温では２５．８ｍＶに等しい。
【０１０２】
以下の標準化量を使用して：
2009545769.tif 000033
及びｔｎ＝ｔ／ＲＣとし、ここで、Ｖｓは任意のスケーリング電圧であり、数式（２０）のシステム方程式は以下のように変換される：
ｘ＝−ｙ
ｙ＝ｘ−ｚ                                                    （２１）
εｚ＝ｙ−（α＋β）ｚ＋αｓｇｎ（ｓｉｎωｔ）＋ｃ０ｔａｎｈ（ｘ）
【０１０３】
（２１）の数式は異なるパラメータセットに対して、カオスを発生させる。例えば、図３０に示すカオスアトラクタは、４次ルンゲクッタアルゴリズムを適応ステップサイズで使用してｃ０＝２５、α＝４、β＝１２、ω＝０．２７、ε＝０．３で、システムの数値解析から得られる。
【０１０４】
提案のＣＭＯＳカオス振動子は図３１に提示される。Ｔ３‐Ｔ４とＴ５‐Ｔ６のトランジスタ対を使用して、簡単な電流ミラーを実装し、ここでミラーの電流比はＫで表示される。
Ｔ１‐Ｔ２トランジスタ対のゲートとアース間に現れる依存容量はＣｐで表示され、回路のルーチン解析は以下の数式（２２）を生ずる：
2009545769.tif 000034
2009545769.tif 000035
【０１０５】
以下の標準化量を使用して：
2009545769.tif 000036
Ｖｐ＝０．５Ｖｓ、ｔｎ＝ｔ／ＲＣとして、ここでＶｓは任意スケーリング電圧であり、数式（２２）のシステムの方程式は次のように変換される：
2009545769.tif 000037
【０１０６】
（２３）の数式は異なるパラメータセットに対して、カオスを発生させる。例えば、図３２に示すカオスアトラクタは、４次ルンゲクッタアルゴリズムを適応ステップサイズで使用してｃ０＝１．５、α＝２．６７、β＝３．３８、ω＝０．２７、ω＝０．３３、ｂ０＝０．９、ε＝０．１で、システムの数値解析から得られる。
【０１０７】
提案のカオス振動子は既存の振動子に対して、いくらかの考慮できる利点を提供する。両回路共、その高いＩＣ性能により、最も広く使用される基本的アナログ構築ブロックである必要とする非線型を実現するため、差動対を利用する。回路に採用される抵抗器は非常に小さい値で、そのためそれらはＩＣ上で効果的に実現できる。更に、提案のカオス振動子はバランスしている；従って、それらはよりよい電源排除とノイズ耐性を提供する。最後に、回路を駆動するために使用される外部ソースは周期的なパルス列で、これはチップ上で既に利用できるクロック信号を使用して精確に、かつ容易に実現できる。
【０１０８】
１７．カオスの発生機構
メルニコフ（Ｍｅｌｎｉｋｏｖ）条件は、ハミルトンに近い強制平面拡散システムにおける馬蹄形の存在を示すために使用できることが知られている。スメールバークホフ（Ｓｍａｌｅ‐Ｂｉｒｋｈｏｆｆ）定理によると、ｘ＝ｆ（ｘ）＋μｇ（ｘ、ｔ）の形の任意の平面
摂動非線型システムに対して、もし以下の条件が満足されれば、（ｔとｇは平滑関数で、ｇはＴγの周期で時間周期である）：
μ＝０に対して、システムはハミルトンでサドル型臨界点を通過するホモクリニック起動を有する。
μ＝０に対して、システムはδθγ（０）／δγ≠０でホモクリニック軌道の内部で周期Ｔγの周期的軌道θγ（ｔ）の１つのパラメータファミリを有する。
ｔ０∈［０，Ｔ］に対して、メルニコフ関数
2009545769.tif 000038
はシンプルゼロを有する。次に、システムはカオス運動と馬蹄形を有する。
【０１０９】
ε=０（寄生容量は無視する）に対して、数式（２１）のシステムは以下のように記述できる：
2009545769.tif 000039
ここで、ｘｐ（ｔ）＝ｓｇｎ（ｓｉｎ(ωｔ)）、α＝ｃ０／（α＋β）、及びμ＝１／（α＋β）である。この場合、μ＝０に対して得られる非摂動システムは、ａ＞１に対して原点にサドル型臨界点を有することは容易に証明できる。又、非摂動システムはハミルトンであり、臨界点を通過するホモクリニック軌道を有する。非平滑関数ｘｐ（ｔ）＝ｓｇｎ（ｓｉｎ(ωｔ)）を、その平滑近似ｘｐ（ｔ）＝ｔａｎｈ（１０ｓｉｎ(ωｔ)）と置換した後、我々は数式（２５）で示されるメルニコフ関数を図３３の右上隅に示す数式（２４）のホモクリニック軌道上で、数値的に計算している：
2009545769.tif 000040
図３３に示すように、メルニコフ関数はｔ０∈［０，Ｔ］に対してシンプルゼロを有し、数式（２４）のシステムはカオス運動と馬蹄型を有する。システムの数値解析は、システムがノンゼロで小さいε値に対してカオスに留まることを示す。例えば、システムの最大リアプノフ指数はε＝０．２７に対して０．９となる。
【０１１０】
１８．ランダムビットの発生
自律カオスシステムからランダムバイナリデータを得るため、任意のカオスシステム波形から非可逆バイナリデータを発生させることに依存する、興味ある技術が提案されている。非可逆性はＰＲＮＧ発生のキーになる特性であることは注目すべきである。
【０１１１】
提案のカオスアトラクタからバイナリランダムビットを得るため、我々は数式（２１）と（２３）のカオスシステムのストロボスコープポアンカレ地図を使用した。ｘ−ｙ平面の二次元ポアンカレセクションは可逆であるが、状態の１つ、例えばｘに対応する値のみを考慮することにより、非可逆地図を得ることができる。
【０１１２】
我々は、分布がランダム信号に似た適切な地図を決定するため、外部の周期的パルス信号の１周期に沿ったポアンカレ地図のｘ値分布を最初に調査した。我々は、ｘ値が単一正規又はχ２分布を有する地図を発見できなかったが、ｘ分布が少なくとも２つの領域を有する適切なポアンカレセクションを決定した。バイポーラシステムに対して、ωｔｍｏｄ２π＝０．３０に対するポアンカレ地図、及びこれに対応する分布を、夫々図３４と３５に示す。バイポーラシステムに類似して、ｗｔｍｏｄ２π＝０．５５に対するポアンカレ地図、及びそれに対応する分布をＣＭＯＳシステムに対して夫々図３６と３７に示す。
【０１１３】
２つの領域を有するｘの分布は、局部閾値に対して、局部ｘ値からランダムバイナリデータを発生させることを我々に示唆する。この方向を追求して、我々は数式（２６）によりポアンカレセクションからバイナリデータＳ（ｔｏｐ）ｉとＳ（ｂｏｔｔｏｍ）ｉを発生させている。
Ｓ（ｔｏｐ）ｉ＝ｓｇｎ（ｘｉ−ｑｔｏｐ）          ｘｉ≧ｑｍｉｄｄｌｅの場合    （２６）
Ｓ（ｂｏｔｔｏｍ）ｉ＝ｓｇｎ（ｘｉ−ｑｂｏｔｔｏｍ）  ｘｉ＜ｑｍｉｄｄｌｅの場合
ここでｓｇｎ（．）は符号関数であり、ｘｉはポアンカレセクションでのｘの値であり、ｑｔｏｐとｑｂｏｔｔｏｍは、夫々上部と下部の分布に対する閾値であり、及びｑｍｉｄｄｌｅは分布間の境界である。閾値を適切に選択できるように、我々は図３５と図３７に示すような上部と下部の分布を調査し、次にｑｔｏｐとｑｂｏｔｔｏｍは、ｑｍｉｄｄｌｅが−１．３９４と決定される場合、夫々−０．５９３と―２．１８３である上部と下部の分布の中央値として決定された。バイポーラシステムと同様に、ＣＭＯＳシステムに対して、ｑｔｏｐとｑｂｏｔｔｏｍはｑｍｉｄｄｌｅが−０．６１０として決定される場合、夫々０．５４９と−１．５７６である上部と下部の分布の中央値として決定された。
【０１１４】
こうして得られるバイナリ列の発生は、ｑｍｉｄｄｌｅ値に対して、ｘの分布密度は最小であるため、これらの境界値にはそれほど依存しない。しかし、閾値（ｑｔｏｐ、ｑｂｏｔｔｏｍ）に対するｘの分布密度は最大であり、そのため得られるバイナリ列はバイアスされる。この列の未知バイアスを除去するため、有名なフォンノイマンのスキュー除去技術が利用できる。この技術は、ビット１対０１を出力０へ、１０を出力１に変換し、ビット対００と１１を捨てることから構成される。
【０１１５】
上記手順を使用して、２４０，０００長のビット列（Ｓｔｏｐ、Ｓｂｏｔｔｏｍ）が、バイポーラとＣＭＯＳシステムの両方に対して得られ、ＦＩＰＳ‐１４０‐２テスト一式の４つのテスト（モノビット、ポーカ、ラン及び長期ラン）を受けている。ビット列は、許容範囲±０．０３で任意の閾値に対して、これらのテストをパスすることを、我々は証明している。
【０１１６】
2009545769.tif 000041
利用された。排他的論理和法の潜在的な問題は、入力ビット間の僅かな相関が，かなりのバイアスを出力へ付加することである。３２，０００ビット長の発生バイナリ列ＳｔｏｐとＳｂｏｔｔｏｍの相関係数は、約０．０００１１と計算され、発生ビット列は独立であると決定される。この結果により、我々は示された数式（２７）を利用することにより新バイナリデータＳ（ｘｏｒ）ｉを発生させている。
2009545769.tif 000042
【０１１７】
こうして得られるバイナリ列Ｓｘｏｒの平均値ψは、表示の数式（２８）により計算することができる：
2009545769.tif 000043
ここで、Ｓｔｏｐの平均値はμで、Ｓｂｏｔｔｏｍの平均価はνである。このように、もしμとνが１／２に近ければ、ψは１／２に非常に近くなる。この結果、バイポーラとＣＭＯＳの両方に対して、数式（１７）で示される手順により、任意の適切な閾値に対して得られる、ビット列Ｓｘｏｒは、フォンノイマン処理なしにＦＩＰＳ‐１４０‐２テスト一式のテストをパスすることを、我々は数値的に証明している。上記手順による乱数（Ｓｔｏｐ、Ｓｂｏｔｔｏｍ、Ｓｘｏｒ）発生を、局部ＲＮＧと称した。
【０１１８】
１９．実験的証明
適切な組み立て施設がないため、我々は回路の実現可能性を示すため、個別部品を使用して、提案のカオス振動子を構築することを選択している。バイポーラとＣＭＯＳ回路は両方共、単一の５Ｖ電源でバイアスされ、外部信号ｖｐ（ｔ）は短形波発生器により発生させた。
【０１１９】
バイポーラ振動子の受動部品値は：Ｌ＝１０ｍＨ、Ｃ＝１０ｎＦ、Ｒ＝１８０Ω、Ｒｐ＝１２０Ω、及びＩ０＝１．２ｍＡである。図２９で、単一電流ミラーを使用して実現された、バイポーラトランジスタとＩ０で表示される電流ソースは、ＣＡ３０４６とＣＡ３０９６ＮＰＮと、ＰＮＰトランジスタアレーを実装した。ｖｐ（ｔ）の振幅は２６ｍＶであった。提案のバイポーラ回路は、ｖｐ（ｔ）の以下の周波数（５．９５ＫＨｚ、６．２３ＫＨｚ、７．１２ＫＨｚ、１３．０３ＫＨｚ、１４．４８ＫＨｚ、１４．９１ＫＨｚ、１７．０７ＫＨｚ、１７．２３ＫＨｚ、１８．０８ＫＨｚ）に対して、カオス運動を有することを、我々は実験的に証明している。
【０１２０】
ＣＭＯＳ振動子の受動部品値は：Ｌ＝１０ｍＨ、Ｃ＝１０ｎＦ、Ｒ＝３４０Ω、Ｒｐ＝４３０Ω、及びＩ０＝０．５ｍＡであった。図３１で、単一電流ミラーを使用して実現された、ＣＭＯＳトランジスタとＩ０で表示される電流ソースはＬＭ４００７ＣＭＯＳトランジスタアレーを実装した。ｖｐ（ｔ）の振幅は３８３ｍＶであった。提案のＣＭＯＳ回路はｖｐ（ｔ）の以下の周波数値（５．９５ＫＨｚ、１０ＫＨｚ、１１．１ＫＨｚ、１２．６ＫＨｚ）に対してカオス運動を有することを、我々は実験的に証明している。
【０１２１】
バイポーラとＣＭＯＳ振動子の両方に対して、ｖｐ（ｔ）の周波数は回路が寄生容量に影響されないように、５．９５ＫＨｚと低い周波数値に調節した。観察されるアトラクタを、夫々バイポーラとＣＭＯＳに対して図３８と３９に示す。
【０１２２】
２０．ＲＮＧのハードウェア実現
我々は提案のカオス振動子のストロボスコープポアンカレ地図から局部的にランダムビットを発生させている。
【０１２３】
２０．１局部ＲＮＧ
局部ＲＮＧで、非線型地図を得るため、ポアンカレセクションのｘ変数のみが使用された。変数ｘに対応する電圧ｖ1は、１８章で説明される手順により、バイナリ列へ変換された。この手順を実施するため、図４０に示す回路が使用された。この回路で、コンパレータはＬＭ３１１チップが実装され、電圧レベルＶｔｏｐ、Ｖｍｉｄｄｌｅ及びＶｂｏｔｔｏｍは、夫々数式（２６）の閾値を実現するために使用された。実施において、数式（２６）と（２７）は以下のように変換される：
Ｓ（ｔｏｐ）ｉ＝ｓｇｎ（ｖ１ｉ−Ｖｔｏｐ）         ｖ１ｉ≧Ｖｍｉｄｄｌｅの場合
Ｓ（ｂｏｔｔｏｍ）ｉ＝ｓｇｎ（ｖ１ｉ−Ｖｂｏｔｔｏｍ）  ｖ１ｉ＜Ｖｍｉｄｄｌｅの場合    （２９）
2009545769.tif 000044
【０１２４】
ＰＣＩインターフェースを有するＦＰＧＡベースのハードウェアは、バイナリデータをコンピュータへアップロードするように設計された。外部の周期的パルス列ｖｐ（ｔ）の期間内の調節時刻に、コンパレータの出力ビット列はサンプリングされ、バイナリ形式で記憶された。ＳｔｏｐとＳｂｏｔｔｏｍ列に対するフォンノイマン処理、及びＳｘｏｒ列に対する（排他的論理和）操作もＦＰＧＡ内で実施された。フォンノイマン処理と（排他的論理和）操作の後、候補乱数はＰＣＩインターフェースを介してコンピュータへアップロードされた。我々のＦＰＧＡベースのハードウェアの最大データ記憶速度は６２Ｍｂｐｓである。
【０１２５】
１８章で説明される手順によると、我々はｖｐ（ｔ）の１つの期間に沿ったｖ1の分布を調査した。この結果、バイポーラ回路に対して、ｖｐ（ｔ）の立ち上がり部４６μｓｅｃ後に得られるｖ１の分布と、ＣＭＯS回路に対してｖｐ（ｔ）の立ち上がり部３５μｓｅｃ前に得られるｖ１の分布を、夫々図４１と４２に示す。
【０１２６】
閾値を適切に決定できるように、数値ビット発生に類似して、我々は、バイポーラとＣＭＯＳ回路の上部と下部の分布を調査した。次にバイポーラ回路に対して、Ｖｍｉｄｄｌｅを−１０７ｍＶと決定し、ＶｔｏｐとＶｂｏｔｔｏｍは、夫々１０３ｍＶと−２８７ｍＶである上部と下部の分布の中央値と決定された。バイポーラ回路に類似して、ＣＭＯＳ回路に対して、ＶｔｏｐとＶｂｏｔｔｏｍは、Ｖｍｉｄｄｌｅは５６０ｍＶと決定され、夫々９９９ｍＶと−２１７ｍＶである上部と下部の分布の中央値と決定された。
【０１２７】
次に、２Ｇバイト長のＳｔｏｐ、Ｓｂｏｔｔｏｍ及びＳｘｏｒは、任意の適切な閾値に対して、バイポーラとＣＭＯＳカオスの回路の両方から確保された。得られたビットは全ＮＩＳＴテスト一式を受けた。その結果、こうして得られるビット列ＳｔｏｐとＳｂｏｔｔｏｍは、フォンノイマン処理の後、全ＮＩＳＴテスト一式のテストをパスし、ＳｔｏｐとＳｂｏｔｔｏｍにより発生されるビット列Ｓｘｏｒは、フォンノイマン処理なしに、全ＮＩＳＴ乱数テスト一式のテストをパスすることを、我々は実験的に証明している。ＣＭＯＳカオス回路の通過速度に対応するテスト結果を４表に示す。
【０１２８】
上部と下部の分布は殆ど同一密度を有すると仮定して、ＳｔｏｐとＳｂｏｔｔｏｍのビット速度は外部の周期的パルス列の半分に等しい。１８章で説明されるように、フォンノイマン処理は４ビットから約１ビットを発生させる。ｖｐ（ｔ）の周波数が５．９５ＫＨｚである場合、ＳｔｏｐとＳｂｏｔｔｏｍのスループットデータ速度は（５．９５ＫＨｚ／２・４）７４３ｂｐｓへ減少し、Ｓｘｏｒのスループットデータ速度は、事実上（５．９５ＫＨｚ／２）２，９７５ｂｐｓになる。この結果、ＩＣ実現に適したバイポーラとＣＭＯＳの２つの新しい連続時間カオス振動子、及びこれらの振動子に基づく新規ＴＲＮＧが提示された。この章で提示される数値的及び実験的結果は、提案の回路の実現可能性を証明するだけでなく、高性能ＩＣＴＲＮＧのコアーとしてのこれらの使用も促す。結論として、外部の周期的パルス信号の周波数が５．９５ＫＨｚに調節される場合、局部列とＸ又は出力のスループットデータ速度は、夫々フォンノイマン処理の後は７４３ｂｐｓであり、フォンノイマン処理なしでは２，９７５ｂｐｓである。
2009545769.tif 000045
４表  ＣＭＯＳカオス振動子のみを使用した局部ＲＮＧに対するＮＩＳＴテスト
一式の結果
＊参考文献
Jun,B.,Kocher,P,:The Ｉntel Rondom Number Generator. Cryptograph Research, Ｉnc. Whｉte paper prepared for Ｉnter Corp. 
http://ｗｗｗ.cryptography.com/resources/whｉtepapers/ＩntelRNG.pdf(1999)
Menezes, A., Oorshot, P.van, Vanstone, S.: Handbook of Applｉed Cryptography. CRC Press(1996)
Schrｉft, A. Ｗ., Shamｉr, A.: On the Unｉversalｉty of the Next Bｉt Test. Proceedｉng of the CRYPTO. (1990) 394-408.
Shneｉer, B.: Applｉed Cryptography. 2nd edn. John Ｗｉley & Sons(1996)
Holman, Ｗ. T., Connelly, J. A., Downlatabadｉ. A. B.: An Ｉntegrated Analog-Dｉgｉtal Random Noｉse Source. ＩEEE Trans. Cｉrcuｉts and Systems Ｉ, Vol.44.6(1997)521-528
Bagｉnｉ, V., Buccｉ, M.: A Desｉgn of Relｉable True Random Number Generator for Cryptographｉc Applｉcatｉons. Proc. Ｗorkshop Cryptographｉc Hardware and Embedded Systems (CHES).(1999) 204-218
Dｉchtl, M., Janssen, N.: A Hｉgh Qualｉty Physｉcal Random Number Generator. Proc. Sophｉa. Antｉpolｉs Forum Mｉcroelectronｉcs (SAME). (2000) 48-53
Petrｉe, C. S., Connelly, J. A.: A Noｉse-Based ＩC Random Number Generator for Applｉcatｉons ｉn Cryptography. ＩEEE Trans. Cｉrcuｉts and Systems Ｉ, Vol. 47. 5 (2000) 615-621
Buccｉ, M., Germanｉ, L., Luzzｉ, R., Trｉfｉlettｉ, A., Varanonuovo, M.: A Hｉgh Speed Oscｉllator-based Truly Random Number Source for Cryptographｉc Applｉcatｉons on a SmartCard ＩC. ＩEEE Trans. Comput., Vol. 52. (2003) 403-409
Stojanovskｉ, T., Kocarev, L.: Chaos-Based Random Number Generators-Part Ｉ: Analysｉs. ＩEEE Trans. Cｉrcuｉts and Systems Ｉ, Vol. 48, 3 (2001) 281-288
Stojanovskｉ, T., Pｉhl, J., Kocarev, L.: Chaos-Based Random Number Generators-Part ＩＩ: Practｉcal Realｉzatｉon. ＩEEE Trans. Cｉrcuｉts and Systems Ｉ, Vol. 48, 3 (2001) 382-385
Delgado-Restｉtuto, M., Medeｉro, F., Rodrｉguez-Vazquez, A.: Nonlｉnear Swｉtched-current CMOS ＩC for Random Sｉgnal Generatｉon. Electronｉcs Letters, Vol. 29(25). (1993) 2190-2191
Callegarｉ, S., Rovattｉ, R., Settｉ, G.: Embeddable ADC-Based True Random Number Generator for Cryptographｉc Applｉcatｉons Exploｉtｉng Nonlｉnear Sｉgnal Processｉng and Chaos. ＩEEE Transactｉons on Sｉgnal Processｉng, Vol. 53, 2 (2005) 793-805 
Callegarｉ, S., Rovattｉ, R., Settｉ, G.: Fｉrst Dｉrect Ｉmplementatｉon of a True Random, Source on Programmable Hardware. Ｉnternatｉonal Journal of Cｉrcuｉt Theory and Applｉcatｉons, Vol. 33 (2005) 1-16
Yalcｉn, M. E., Suykens, J. A. K., Vandewalle, J,: True Random Bｉt Generatｉon from a Double Scroll Attractor. ＩEEE Transactｉons on Cｉrcuｉts and Systems Ｉ: 
Fundamental Theory and Applｉcatｉons, Vol. 51(7). (2004) 1395-1404
Natｉonal Ｉnstｉtute of Standard and Technology, FＩPS PUB 140-2, Securｉty Requｉrements for Cryptographｉc Modules, NＩST, Gaｉthersberg, MD 20899, (2001)
Natｉonal Ｉnstｉtute of Standard and Technology,: A Statｉstｉcal Test Suｉte for Random and Pseudo Random Number Generators for Cryptographｉc Applｉcatｉons. NＩST 800-22, http://csrc.nｉst.gov/rng/SP800-22b.pdf (2001)
Ozoguz, S., Ates, O., Elwakｉl, A. S.: An ｉntegrated cｉrcuｉt chaotｉc oscｉllator and ｉts applｉcatｉon for hｉgh speed random bｉt generatｉon. Proceedｉng of the Ｉnternatｉonal Symposｉum on Cｉrcuｉt and Systems (ＩSCAS). (2005) 4345-4348
Shamｉr, A.: On The Generatｉon of Cryptographｉcally Strong Pseudorandom Sequences. ACM Transactｉon on Computer systems, Vol. 1. (1983) 38-44
Von Neumann, J.: Varｉous Technｉques Used ｉn Connectｉon Ｗｉth Random Dｉgｉts. Applｉed Math Serｉes-Notes by G. E. Forsythe, Ｉn Natｉonal Bureau of Standards, Vol. 12. (1951) 36-38
Young, L.: Entropy, Lyapunov exponents and Hausdorff dｉmensｉon ｉn dｉfferentｉable dynamｉcal systems. ＩEEE Trans. Cｉrcuｉts syst. Ｉ, Vol. 30. (1983) 599-607
Elwakｉl, A. S., Salama, K. N. and Kennedy, M. P.: An equatｉon for generatｉng chaos and ｉts monolｉthｉc ｉmplementatｉon. Ｉnt. J. Bｉfurcatｉon Chaos, Vol. 12, no. 12, (2002) 2885-2896
【図１】
2009545769.tif 000046
【図２】
2009545769.tif 000047
【図３】
2009545769.tif 000048
【図４】
2009545769.tif 000049
【図５】
2009545769.tif 000050
【図６】
2009545769.tif 000051
【図７】
2009545769.tif 000052
【図８】
2009545769.tif 000053
【図９】
2009545769.tif 000054
【図１０】
2009545769.tif 000055
【図１１】
2009545769.tif 000056
【図１２】
2009545769.tif 000057
【図１３】
2009545769.tif 000058
【図１４】
2009545769.tif 000059
【図１５】
2009545769.tif 000060
【図１６】
2009545769.tif 000061
【図１７】
2009545769.tif 000062
【図１８】
2009545769.tif 000063
【図１９】
2009545769.tif 000064
【図２０】
2009545769.tif 000065
【図２１】
2009545769.tif 000066
【図２２】
2009545769.tif 000067
【図２３】
2009545769.tif 000068
【図２４】
2009545769.tif 000069
【図２５】
2009545769.tif 000070
【図２６】
2009545769.tif 000071
【図２７】
2009545769.tif 000072
【図２８】
2009545769.tif 000073
【図２９】
2009545769.tif 000074
【図３０】
2009545769.tif 000075
【図３１】
2009545769.tif 000076
【図３２】
2009545769.tif 000077
【図３３】
2009545769.tif 000078
【図３４】
2009545769.tif 000079
【図３５】
2009545769.tif 000080
【図３６】
2009545769.tif 000081
【図３７】
2009545769.tif 000082
【図３８】
2009545769.tif 000083
【図３９】
2009545769.tif 000084
【図４０】
2009545769.tif 000085
【図４１】
2009545769.tif 000086
【図４２】
2009545769.tif 000087
【国際調査報告】
2009545769.tif 000088
2009545769.tif 000089
2009545769.tif 000090