(57)【要約】 【課題】高品位の物理乱数を高速に生成できる安価で信頼性の高い物理乱数発生器を提供する。【解決手段】２組のノイズ源１ａ、１ｂと、これらノイズ源より発生するノイズの直流分を除去して増幅する第１増幅回路２と第２増幅回路３と、第１増幅回路２と第２増幅回路３の出力電圧を比較して０または１を出力する比較回路４と、比較回路４の出力を基準クロックに同期して保持し、物理乱数を得るフリップ・フロップ５と、比較回路４の一方の入力に接続され、比較回路４のオフセット電圧を設定するオフセット電圧回路７と、オフセット電圧回路７を制御する一様化フィードバック回路６とで構成される。【選択図】図１
2008165500.tif 000002
【特許請求の範囲】
【請求項１】
２組のノイズ源と、
これらのノイズ源より発生する各々ノイズの直流分を除去して増幅する第１増幅回路と第２増幅回路と、
前記第１増幅回路と前記第２増幅回路の各出力電圧を比較して０または１を出力する比較回路と、
当該比較回路の出力を基準クロックに同期して保持し、物理乱数を得るフリップ・フロップと、
前記比較回路の一方の入力に接続されて、当該比較回路のオフセット電圧を設定するオフセット電圧回路と、
前記オフセット電圧回路を制御する一様化フィードバック回路とで構成されることを特徴とする物理乱数発生器。
【請求項２】
２組のノイズ源と、
これらノイズ源より発生する各々ノイズの直流分を除去してノイズの差分を増幅する差動増幅回路と、
前記差動増幅回路の出力電圧と基準電圧を比較して０または１を出力する比較回路と、
前記比較回路の出力を基準クロックに同期して保持し、物理乱数を得るフリップ・フロップと、
当該比較回路の基準電圧側の入力に接続され、前記比較回路のオフセット電圧を設定するオフセット電圧回路と、
前記オフセット電圧回路を制御する一様化フィードバック回路とで構成されることを特徴とする物理乱数発生器。
【請求項３】
前記一様化フィードバック回路は、前記フリップ・フロップ出力を保持するレジスターと、
当該レジスターの出力に１を加算し、比較値を生成する加算器と、
前記基準クロック数を計測する第１カウンターと、
当該第１カウンターの計数値と前記加算器からの比較値より当該比較値の２倍の前記繰り返し周期を発生する第１比較器と、
前記繰り返し周期毎に前記フリップ・フロップ出力の０または１の出現数を計測する第２カウンターと、
前記第２カウンターの計数値と前記比較値とを比較して比較出力（計数値＜比較値）または比較出力（計数値＞比較値）を発生する第２比較器とを備えることにより、前記フリップ・フロップ出力の０または１の出現率が前記物理乱数で決まる繰り返し周期内で５０％になるように前記オフセット電圧回路を制御することを特徴とする請求項１または請求項２に記載の物理乱数発生器。
【請求項４】
前記オフセット電圧回路は、前記第２比較器出力（計数値＜比較値、計数値＞比較値）に基づいて動作する２組のスイッチ回路と、当該スイッチ回路に接続された抵抗、コンデンサのＣＲ回路を備え、前記スイッチ回路のオン動作により前記コンデンサの充放電を行う充放電回路と、
当該充放電回路の出力を増幅してオフセット電圧を発生する第３増幅回路とで構成されることを特徴とする請求項３に記載の物理乱数発生器。
【請求項５】
前記比較回路の、前記オフセット電圧回路が接続される入力とは別の入力に、前記第３増幅回路と同じ構成の増幅回路を設けたことを特徴とする請求項４に記載の物理乱数発生器。  
【請求項６】
前記オフセット電圧回路は、前記第２比較器の出力（ｎ＜ｍ、ｎ＞ｍ）にて動作する可逆カウンターと、当該可逆カウンターの出力値をアナログ値に変換してオフセット電圧を発生するＤ／Ａコンバータとで構成されることを特徴とする請求項３に記載の物理乱数発生器。
【請求項７】
前記繰り返し周期中において、前記第２比較器の出力（計数値＜比較値）または、出力（計数値＞比較値）の何れか一方が連続して予め設定した回数出現したことを検出した時、異常信号を発生する異常検知手段を備えることを特徴とする請求項３から請求項６までの何れかに記載の物理乱数発生器。
【請求項８】
前記ノイズ源は、抵抗とツェナーダイオードの直列回路、または、定電流源に接続されたツェナーダイオード、または、ＰチャンネルＭＯＳトランジスタとＮチャンネルＭＯＳトランジスタを直列に接続し、入出力間を短絡したトランジスタ回路で構成されることを特徴とする請求項１から請求項７までの何れかに記載の物理乱数発生器。
【請求項９】
シフトレジスターと、当該シフトレジスターの保持データの一部を入力データとすると共に、その他の一部をアドレスデータとする選択回路と、当該選択回路の出力と前記フリップ・フロップより出力された物理乱数との排他的論理和を行う排他的論理和回路とを備え、当該排他的論理和回路の出力を前記シフトレジスターの入力データとする一様化回路を備えることを特徴とする請求項１から請求項８までの何れかに記載物理乱数発生器。
【請求項１０】
並列動作可能に配設された請求項１から請求項９までの何れかに記載の複数の物理乱数発生器と、これら複数の物理乱数発生器の内の１つの物理乱数発生器の乱数出力と残りの物理乱数発生器の乱数出力のそれぞれと個々に排他的論理和を行う複数の排他的論理和回路とを備えることを特徴とする物理乱数発生装置。
【請求項１１】
請求項１０に記載の物理乱数発生装置にて生成された物理乱数の品質を検証する方法であって、
前記複数の物理乱数発生器または複数の排他的論理和回路から出力される各々乱数を複数バイト同時に取得し、これら複数の乱数列の内の任意の２列間について各バイト間の相関係数を求め、得られた相関係数より各乱数列間の相関関係を検証することを特徴とする乱数検証方法。
【請求項１２】
請求項１０に記載の物理乱数発生装置にて生成された物理乱数の品質を検証する方法であって、
前記複数の物理乱数発生器または複数の排他的論理和回路から出力される各々乱数を複数バイト同時に取得し、各乱数列について偶数番目のバイトと、奇数番目のバイト間の相関係数を求め、得られた相関係数より各乱数列における自己相関関係を検証することを特徴とする乱数検証方法。
【請求項１３】
請求項１０に記載の物理乱数発生装置にて生成された物理乱数の品質を検証する方法であって、
前記複数の物理乱数発生器または複数の排他的論理和回路から出力される各々乱数を複数バイト同時に取得し、各乱数列について予め設定したバイト数おいたバイト間の相関係数を求め、得られた相関係数より各乱数列における自己相関関係を検証することを特徴とする乱数検証方法。
【請求項１４】
請求項１０に記載の物理乱数発生装置にて生成された物理乱数の品質を検証する方法であって、
前記複数の物理乱数発生器または複数の排他的論理和回路から出力される各々乱数を複数バイト同時に取得し、各乱数列について１バイト度数のカイ自乗値を求め、得られたカイ自乗値より各乱数列における一様性を検証することを特徴とする乱数検証方法。
【請求項１５】
前記乱数列における物理乱数の検証をバイト単位に換えて複数ビット単位にて行うことを特徴とする請求項１１から請求項１４までの何れかに記載の乱数検証方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、各種の用途に用いて好適な物理乱数発生器に関するものであり、その具体的な用途として、シミュレーション（例えば、確率モデルシミュレーション、マルコフ連鎖モンテカルロ法、粒子フィルタ）、セキュリティ（例えば、共通鍵暗号の鍵、認証鍵、認証用乱数、量子暗号の鍵）、ゲーム機（例えば、アミューズメント、アーケードゲーム、パソコンゲーム、シミュレーションゲーム）、コンピュータグラフィックス等が挙げられる。
【背景技術】
【０００２】
近年、通信技術の進歩や個人情報、電子取引等の取り扱いにより、大量のデータを暗号化処理したり認証したりするために、セキュリティ通信分野等において高速で高品位な乱数が必要とされており、また、数値シミュレーションにおいても、ＣＰＵの高速化や並列処理の進歩、高精度高効率の追求等により、さらなる大量のデータを処理できるようになったため、高速で高品位の大量な乱数が必要とされている。
【０００３】
乱数には、アルゴリズム（計算）により生成される疑似乱数と、自然界の物理現象を利用して生成される物理乱数（真性乱数）とがある。
疑似乱数は計算により生成されるため高速化が容易であるが、初期値を与えたアルゴリズムで算出されることから再現性が有り、初期値やアルゴリズムから乱数列が予測され易いという欠点がある。加えて、疑似乱数は乱数列に周期性を有するため、セキュリティやシミュレーション等の分野での使用には不向きな場合がある。
他方、物理乱数は、半導体内部の熱雑音に代表されるランダムな物理現象を利用して生成されるため、疑似乱数のような初期値やアルゴリズムは不要であり、且つ、乱数列に周期性がないことから、乱数を予測することは不可能であり、よって、予測の困難さを必要とするセキュリティ通信分野や再現性のない真の乱数を必要とする統計シミュレーション分野等においては、物理乱数の需要が急増している。
【０００４】
物理乱数は、乱数源としてダイオードやトランジスタ等で発生する電気的ノイズをフィルター回路、増幅回路、Ａ／Ｄ変換器等を通してデータ化（２値化）する方式が主流である（例えば、特許文献１、特許文献２）。
【特許文献１】特開平１１−０８５４７２号公報
【特許文献２】特開２００２−４１２８１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、物理乱数を高速に生成するためには、乱数源となる電気的ノイズを高速に発生させて増幅し、確実にデータ化できる高速回路が必要であるが、回路の高速化には多大なコストと高度な回路技術が要求されるため（通常、乱数の生成速度は、使用するＡ／Ｄ変換器の性能に大きく影響される）、低コストで手軽に高速の物理乱数を得ることは困難であった。
また、高速化することにより、乱数源が不安定になったり、ノイズの計測精度が低下したりして、生成される物理乱数の品質が低下する場合もある。
【０００６】
本発明は、このような問題点に鑑み成されたもので、高品位の物理乱数を高速に生成できる安価で信頼性の高い物理乱数生発生器および物理乱数発生装置および乱数検証方法を提供することを目的としている。  
【課題を解決するための手段】
【０００７】
すなわち、請求項１に記載の物理乱数発生器は、２組のノイズ源と、これらのノイズ源より発生する各々ノイズの直流分を除去して増幅する第１増幅回路と第２増幅回路と、前記第１増幅回路と前記第２増幅回路の各出力電圧を比較して０または１を出力する比較回路と、当該比較回路の出力を基準クロックに同期して保持し、物理乱数を得るフリップ・フロップと、前記比較回路の一方の入力に接続されて、当該比較回路のオフセット電圧を設定するオフセット電圧回路と、前記オフセット電圧回路を制御する一様化フィードバック回路とで構成されることを特徴としている。
【０００８】
また、請求項２に記載の物理乱数発生器は、２組のノイズ源と、これらノイズ源より発生する各々ノイズの直流分を除去してノイズの差分を増幅する差動増幅回路と、前記差動増幅回路の出力電圧と基準電圧を比較して０または１を出力する比較回路と、前記比較回路の出力を基準クロックに同期して保持し、物理乱数を得るフリップ・フロップと、当該比較回路の基準電圧側の入力に接続され、前記比較回路のオフセット電圧を設定するオフセット電圧回路と、前記オフセット電圧回路を制御する一様化フィードバック回路とで構成されることを特徴としている。
【０００９】
また、請求項３に記載の発明は、請求項１または請求項２に記載の物理乱数発生器において、前記一様化フィードバック回路は、前記フリップ・フロップ出力を保持するレジスターと、当該レジスターの出力に１を加算し、比較値を生成する加算器と、前記基準クロック数を計測する第１カウンターと、当該第１カウンターの計数値と前記加算器からの比較値より当該比較値の２倍の前記繰り返し周期を発生する第１比較器と、前記繰り返し周期毎に前記フリップ・フロップ出力の０または１の出現数を計測する第２カウンターと、前記第２カウンターの計数値と前記比較値とを比較して比較出力（計数値＜比較値）または比較出力（計数値＞比較値）を発生する第２比較器とを備えることにより、前記フリップ・フロップ出力の０または１の出現率が前記物理乱数で決まる繰り返し周期内で５０％になるように前記オフセット電圧回路を制御することを特徴としている。
【００１０】
また、請求項４に記載の発明は、請求項３に記載の物理乱数発生器において、前記オフセット電圧回路は、前記第２比較器出力（計数値＜比較値、計数値＞比較値）に基づいて動作する２組のスイッチ回路と、抵抗、コンデンサのＣＲ回路を備え、前記スイッチ回路のオン動作により前記コンデンサの充放電を行う充放電回路と、当該充放電回路の出力を増幅してオフセット電圧を発生する第３増幅回路とで構成されることを特徴としている。
【００１１】
また、請求項５に記載の発明は、請求項４に記載の物理乱数発生器において、
前記比較回路の、前記オフセット電圧回路が接続される入力とは別の入力に、前記第３増幅回路と同じ構成の増幅回路を設けたことを特徴としている。
【００１２】
また、請求項６に記載の発明は、請求項３に記載の物理乱数発生器において、前記オフセット電圧回路は、前記第２比較器の出力（ｎ＜ｍ、ｎ＞ｍ）にて動作する可逆カウンターと、当該可逆カウンターの出力値をアナログ値に変換して前記オフセット電圧を発生するＤ／Ａコンバータとで構成されることを特徴としている。
【００１３】
また、請求項７に記載の発明は、請求項３から請求項６までの何れかに記載の物理乱数発生器において、前記繰り返し周期中において、前記第２比較器の出力（計数値＜比較値）または、出力（計数値＞比較値）の何れか一方が連続して所定回数出現したことを検出した時、異常信号を発生する異常検知手段を備えることを特徴としている。
【００１４】
また、請求項８に記載の発明は、請求項１から請求項７までの何れかに記載の物理乱数発生器において、前記ノイズ源は、抵抗とツェナーダイオードの直列回路、または、定電流源に接続されたツェナーダイオード、または、ＰチャンネルＭＯＳトランジスタとＮチャンネルＭＯＳトランジスタを直列に接続し、入出力間を短絡したトランジスタ回路で構成されることを特徴としている。
【００１５】
また、請求項９に記載の発明は、請求項１から請求項８までの何れかに記載の物理乱数発生器において、シフトレジスターと、当該シフトレジスターの保持データの一部を入力データとすると共に、その他の一部をアドレスデータとする選択回路と、当該選択回路の出力と前記フリップ・フロップより出力された物理乱数との排他的論理和を行う排他的論理和回路とを備え、当該排他的論理和回路の出力を前記シフトレジスターの入力データとする一様化回路を備えることを特徴としている。
【００１６】
また、請求項１０に記載の物理乱数発生装置は、並列動作可能に配設された請求項１から請求項９までの何れかに記載の複数の物理乱数発生器と、これら複数の物理乱数発生器の内の１つの物理乱数発生器の乱数出力と残りの物理乱数発生器の乱数出力のそれぞれと個々に排他的論理和を行う複数の排他的論理和回路とを備えることを特徴としている。
【００１７】
また、請求項１１に記載の乱数検証方法は、請求項１０に記載の物理乱数発生装置にて生成された物理乱数の品質を検証する方法であって、前記複数の物理乱数発生器または複数の排他的論理和回路から出力される各々乱数を複数バイト同時に取得し、これら複数の乱数列の内の任意の２列間について各バイト間の相関係数を求め、得られた相関係数より各乱数列間の相関関係を検証することを特徴としている。
【００１８】
また、請求項１２に記載の乱数検証方法は、請求項１０に記載の物理乱数発生装置にて生成された物理乱数の品質を検証する方法であって、前記複数の物理乱数発生器または複数の排他的論理和回路から出力される各々乱数を複数バイト同時に取得し、各乱数列について偶数番目のバイトと、奇数番目のバイト間の相関係数を求め、得られた相関係数より各乱数列における自己相関関係を検証することを特徴としている。
【００１９】
また、請求項１３に記載の乱数検証方法は、請求項１０に記載の物理乱数発生装置にて生成された物理乱数の品質を検証する方法であって、前記複数の物理乱数発生器または複数の排他的論理和回路から出力される各々乱数を複数バイト同時に取得し、各乱数列について所定バイト数おいたバイト間の相関係数を求め、得られた相関係数より各乱数列における自己相関関係を検証することを特徴としている。
【００２０】
また、請求項１４に記載の乱数検証方法は、請求項１０に記載の物理乱数発生装置にて生成された物理乱数の品質を検証する方法であって、前記複数の物理乱数発生器または複数の排他的論理和回路から出力される各々乱数を複数バイト同時に取得し、各乱数列について１バイト度数のカイ自乗値を求め、得られたカイ自乗値より各乱数列における一様性を検証することを特徴としている。
【００２１】
また、請求項１５に記載の発明は、請求項１１から請求項１４までの何れかに記載の乱数検証方法において、前記乱数列における物理乱数の検証をバイト単位に換えて複数ビット単位にて行うことを特徴としている。
【発明の効果】
【００２２】
請求項１〜９に記載の発明によれば、ノイズ源からのノイズを高価なＡ／Ｄ変換器を用いずに、増幅回路と比較回路によりデータ化（２値化）する構成としたので、外来ノイズ、電源変動、環境変化等に影響されることなく高品位の物理乱数を高速で生成できる物理乱数発生器を実現することができる。
また、一様化フィードバック回路を設け、乱数出力に基づき上記比較回路のオフセット電圧を調整して、乱数の０または１の出現率が５０％になるように補正するようにしたので、一様性を有し、且つ、規則性や相関性や周期性を有しない高品位な物理乱数を高速で生成することができる。
さらに、請求項９に記載のように、一様化回路を設けることにより、より一様性に優れる物理乱数を高速で生成することができる。
【００２３】
また、請求項１０に記載の発明によれば、上記物理乱数発生器を多段に接続して並列動作させると共に、これら物理乱数発生器の各乱数出力を別の物理乱数発生器の乱数出力と排他的論理和を行うことにより、高品位の高速物理乱数を大量に生成できる物理乱数発生装置を実現することができる。
【００２４】
また、請求項１１〜１５に記載の発明によれば、上記物理乱数発生装置で生成された物理乱数の品質、すなわち、一様性、規則性や相関性や周期性の有無を効率良く容易に検定することができ、物理乱数の品質確保に大いに寄与できる。
【発明を実施するための最良の形態】
【００２５】
以下、図面に基づいて本発明に係る物理乱数発生器の実施形態を説明する。
【００２６】
図１は、本発明による物理乱数発生器の第１実施形態を示し、図２は各部の波形を示している。
図１、図２に示すように、本実施形態の物理乱数発生器１０は、２組のノイズ源１ａ、１ｂと、これらのノイズ源１ａ、１ｂから発生するノイズＡ、ノイズＢの直流分を除去して高周波成分を増幅する第１増幅回路２と第２増幅回路３と、これら第１増幅回路２と第２増幅回路３の出力電圧を相互に比較して０または１を出力する比較回路４と、この比較回路４の比較出力、０または１を基準クロックの立ち上がりに同期して逐次保持し、物理乱数を生成するＤタイプのフリップ・フロップ５と、上記比較回路４の＋入力にオフセット電圧ｖｆｂを供給するオフセット電圧回路７と、このオフセット電圧回路７のオフセット電圧ｖｆｂを調整する一様化フィードバック回路６とで構成されている。
【００２７】
ここで、上記したノイズ源１ａ、１ｂとしては、図９（ａ）に示すような、抵抗Ｒ１とツェナーダイオードＤ１の直列回路によるノイズ源、図９（ｂ）のような、定電流源２５に接続されたツェナーダイオードＤ１によるノイズ源、図９（ｃ）のような、ＰチャンネルＭＯＳトランジスタＱ１とＮチャンネルＭＯＳトランジスタＱ２を直列に接続（カスケード接続）し、その入出力間を短絡したトランジスタ回路で構成されるノイズ源等、様々なノイズ源を用いることができる。
【００２８】
一様化フィードバック回路６は、図３に示すように、レジスター１１（例えば、シフトレジスター）、加算器１２、第１比較器１３、第１カウンター１４、第２カウンター１５、第２比較器１６、制御回路１７等で構成されている。
【００２９】
図３、および図４のタイミング図に示すように、レジスター１１は、上記フリップ・フロップ５からの乱数出力の一部を基準クロックに同期して順次保持し、その保持データの値（ｃ）を、当一様化フィードバック回路６の繰り返し周期を設定するための周期設定値（ｃ）とする。
加算器１２は、この周期設定値（ｃ）に１を加算して比較値（ｍ＝ｃ＋１）を生成し、この比較値（ｍ）が第１比較器１３の一方の比較入力に比較データ（２ｍ−１）となるように入力される。この第１比較器１３は、フィードバック制御の繰り返し周期を発生するための比較器であり、周期設定値（ｃ）に１を加算するのは、レジスター１１に保持される出力乱数（０〜ｍ−１）の範囲を（１〜ｍ）の範囲に変換するためである。
【００３０】
第１カウンター１４は、基準クロックの数を計測し、その計数値を第１比較器１３の他方の比較入力に入力して上記した比較データ（２ｍ−１）と比較することにより、その比較出力として基準クロックの（２ｍ）倍の繰り返し周期を有する一致信号（ｔ＝２ｍ）を発生する。
また、この繰り返し周期（ｔ）によって、上記したレジスター１１および第１カウンターはリセットされ、リセット解除後、レジスター１１による乱数保持動作と第１カウンター１４による基準クロックの計側動作が新たに開始される。
本構成では、レジスター１１に保持される乱数値に応じて、繰り返し周期（ｔ）はランダムに変化する。
【００３１】
第２カウンター１５は、上記した繰り返し周期（ｔ）毎に上記フリップ・フロップ５の乱数出力の１（または０）の出現数を計測し、その計数値（ｎ）が第２比較器１６の一方の比較入力に入力される。また、この第２比較器１６の他方の比較入力には加算器１２で生成された比較値（ｍ）が入力されており、第２比較器１６において計測値（ｎ）と比較値（ｍ）が比較され、その比較結果に応じた比較出力（ｎ＜ｍ、ｎ＞ｍ）が出力される。
比較出力（ｎ＜ｍ、ｎ＞ｍ）は制御回路１７において電流増幅され、後述するオフセット電圧回路７のスイッチ回路Ｑ１、Ｑ２を駆動するための駆動信号Ｄｒｉｖ＿ｐとＤｒｉｖ＿ｎが出力される。
【００３２】
オフセット電圧回路７は、図１に示すように、制御回路１７から出力された駆動信号Ｄｒｉｖ＿ｐとＤｒｉｖ＿ｎにより動作する２組のスイッチ回路（ＰチャンネルＭＯＳトランジスターＱ１、ＮチャンネルＭＯＳトランジスターＱ２）と抵抗器Ｒ１、Ｒ２、およびコンデンサーＣ１のＣＲ回路で成る充放電回路９と、この充放電回路９の出力を増幅してオフセット電圧ｖｆｂを発生するバッファ用の第３増幅回路８とで構成されている。
【００３３】
そして、図４に示すように、制御回路１７より駆動信号Ｄｒｉｖ＿ｐが出力されＭＯＳトランジスターＱ１がオンすると（この時、ＭＯＳトランジスターＱ２はオフ）、電源ＶｃｃよりＭＯＳトランジスターＱ１と抵抗Ｒ１を介してコンデンサーＣ１が充電され、その充電電圧によりオフセット電圧ｖｆｂが上昇する。また、制御回路１７より駆動信号Ｄｒｉｖ＿ｎが出力されＭＯＳトランジスターＱ２がオンすると（この時、ＭＯＳトランジスターＱ１はオフ）、抵抗Ｒ２とＭＯＳトランジスターＱ２を介して、コンデンサーＣ１の電荷が電源Ｖｅｅ側へ放電され、オフセット電圧ｖｆｂは降下する。
オフセット電圧ｖｆｂを高くすると、比較回路４の比較出力の１の出現数が多くなり、０の出現数が少なくなる。逆に、オフセット電圧ｖｆｂを低くすると、１の出現数が少なくなり、０の出現数は多くなる。
【００３４】
このように、一様化フィードバック回路６の制御により繰り返し周期（ｔ）内に発生する乱数出力の１（または０）の数に応じて比較回路４の＋入力側のオフセット電圧を調整し、比較回路４の比較出力、すなわち、０と１の出現状態を変化させることにより、フリップ・フロップ５からの乱数出力の１または０の出現率を確率的に５０％に収束するように自動調整することができる。これにより、一様化された物理乱数の生成が可能となる。
【００３５】
また、本第１実施形態の物理乱数発生器１０では、図１に替えて、図５に示すように、比較回路４の−入力側に上記したオフセット電圧回路７を構成する第３増幅回路８と同様の回路構成を設けることにより、比較回路４の入力形態を対称型とすることができ、これにより、上記第３増幅回路８を介して比較回路４の各入力に重畳される外来ノイズや電源ノイズ、或いは電源変動による波形歪み等を比較回路４において確実に相殺することができ、耐ノイズ性に優れる回路構成を実現することができる。尚、その他の回路構成は図１と全く同様である。
【００３６】
また、オフセット電圧回路７は、図１、図５に示すような、充放電回路９と第３増幅回路８の組み合わせ回路に替え、図６に示すように、可逆カウンター１８（アップ・ダウンカウンター）とＤ／Ａコンバータ１９との組み合わせ回路で構成することもできる。
【００３７】
上記構成のオフセット電圧回路７において、可逆カウンター１８は、第２比較器１６より比較出力（ｎ＜ｍ、ｎ＞ｍ）が出力された時に基準クロックに同期して動作する。すなわち、比較出力（ｎ＜ｍ）が出力されると可逆カウンター１８はカウントアップし、比較出力（ｎ＜ｍ）にてカウントダウンするように動作する。
この可逆カウンター１８のデジタル出力値はＤ／Ａコンバータ１９によりアナログ値に変換され、オフセット電圧ｖｆｂとして比較回路４の＋入力に供給される。すなわち、可逆カウンター１８のカウントアップによりオフセット電圧ｖｆｂが上昇し、可逆カウンター１８のカウントダウンによりオフセット電圧ｖｆｂが降下するように動作する。可逆カウンター１８は、繰り返し周期（ｔ）毎にリセットされる。リセット解除後、可逆カウンター１８は比較出力（ｎ＜ｍ、ｎ＞ｍ）に基づいてカウント動作を開始する。
【００３８】
このように、本回路構成においても、一様化フィードバック回路６により繰り返し周期（ｔ）内に発生する乱数出力の１（または０）の数に応じて比較回路４の＋入力側のオフセット電圧を調整し、比較回路４の比較出力、すなわち、０と１の出現状態を変化させることにより、フリップ・フロップ５からの乱数出力、１または０の出現率を確率的に５０％に自動調整することができる。
【００３９】
また、本実施形態の物理乱数発生器１０は、上記した一様化フィードバック回路６によるフィードバック制御の動作を監視する異常検知回路（異常検知手段）を備えている。
【００４０】
図７は、その一例を示し、第２比較器１６の比較出力（ｎ＜ｍ）または（ｎ＞ｍ）が連続的に出力されることを検出する連続性検出器２１と、比較出力（ｎ＜ｍ）および（ｎ＞ｍ）の連続回数を計測する第３カウンター２２と、この第３カウンター２２の計数値を予め定めた所定数（比較データ）と比較する第３比較器２３とで構成され、何らかの理由で第３カウンター２２の計数値が所定数を越えた場合に、第３比較器２３より異常動作確認信号が出力される。
【００４１】
図８は、異常検知回路の別の例を示し、オフセット電圧回路７の可逆カウンター１８（アップ・ダウンカウンター）出力にオーバーフローを検出するオーバーフロー検出回路２４を設けたものである。
可逆カウンター１８に第２比較器１６の比較出力（ｎ＜ｍ）或いは比較出力（ｎ＞ｍ）が連続的に入力され、カウントオーバーした場合に（例えば、可逆カウンター１８が８ビット構成であれば、オーバーフローすることにより、カウンタ出力はＦＦＨ、或いは００Ｈとなる）、オーバーフロー検出回路２４においてカウント出力ＦＦＨ、或いは００Ｈが検知された場合に、異常動作確認信号が出力される。
【００４２】
異常検知回路からの異常動作確認信号を監視し、物理乱数発生器１０における回路動作の異常を素早く察知することにより、物理乱数発生器１０にて生成される物理乱数の品質劣化を未然に防止することが可能となる。
【００４３】
図１０は、本発明による物理乱数発生器の第２実施形態を示している。
第２実施形態による物理乱数発生器１０は、第１増幅回路２と第２増幅回路３の代わりに１個の差動増幅回路２６を用いたことを除き、図１に示す第１実施形態の物理乱数発生器１０と同様である。
【００４４】
第２実施形態の物理乱数発生器１０では、差動増幅回路２６により各々直流分を除去したノイズの差分が増幅され、その出力電圧が比較回路４において基準電圧と比較され、比較出力０または１が出力される。比較回路４の基準電圧は、オフセット電圧回路７の出力（オフセット電圧ｖｆｂ）であり、第１実施形態と同様に、一様化フィードバック回路６を介してオフセット電圧ｖｆｂを調整することにより、乱数出力の１または０の出現率を確率的に５０％に収束するように自動調整することができる。
尚、この場合も、図示しないが、図５と同様に、比較回路４の−入力側に第３増幅回路８と同様の回路を設けて、比較回路４の入力形態を対称型とすることにより、耐ノイズ性を向上することができる。
【００４５】
図１１は、物理乱数の一様化回路３０の構成を示し、排他的論理和回路３３、シフトレジスター３１、セレクター３２（選択回路）とで構成されている。シフトレジスター３１の保持データの一部はセレクター３２の入力データとなり、その他の一部はアドレスデータとされている。
物理乱数発生器１０（フリップ・フロップ５）にて生成された物理乱数は、排他的論理和回路３３においてセレクター３２の乱数出力との排他的論理和が行われると共に、シフトレジスター３１のデータ入力に入力される。
【００４６】
このように、シフトレジスター３１のデータ入力に入力される物理乱数は、その一部がアドレスデータとなって、自分自身の保持データをランダムに選択して出力するので、物理乱数発生器１０からの乱数が偏りを持っていても、この一様化回路３０にて一様化されることになるため、一様性に優れる物理乱数（一様化物理乱数）を得ることができる。
【００４７】
図１２は、物理乱数発生器１０を複数（Ｐ台）配設して並列動作させる多ビット出力の物理乱数発生装置４０である。この物理乱数発生装置４０は、上記したＰ台の物理乱数発生器１０の他にさらなる一台の品位向上用の物理乱数発生器１０を具備すると共に、各物理乱数出力に対応して設けたＰ個の排他的論理和回路４１により、この（Ｐ＋１台）目の品位向上用の物理乱数発生器１０の乱数出力とＰ台の各物理乱数発生器１０の乱数出力の排他的論理和が行なわれることにより、物理乱数の更なる品位向上が図られ、高品位の多ビット（Ｐビット）物理乱数（高品位物理乱数）を得ることができる。
【００４８】
尚、この物理乱数発生装置４０は、図１１に示した乱数一様化回路３０を具備した物理乱数発生器１０を用いることにより、優れた一様性を有するより高品位な多ビット物理乱数が得られるようになる。
【００４９】
次に、図１２の物理乱数発生装置４０にて生成される物理乱数の一様性を検証する検証方法について説明する。
【００５０】
第１の検証方法は、図１２において複数（Ｐ＋１）台の物理乱数発生器１０から出力される各々乱数（一様化物理乱数（１〜Ｐ＋１））を、図１３に示すように、複数バイト（ｑバイト）乱数列として同時に取得し（例えば、装置搭載のメモリに保存しておく）、これら複数の乱数列（１〜Ｐ＋１列）の内の任意の２列間について各バイト間の相関係数（ｒ）を式１より算出し、得られた相関係数より各乱数列間の相関関係を検証する方法である。
表１は、相関関数（ｒ）に対する相関関係の一例を示し、算出された相関関数（ｒ）の０〜１の範囲値で表１に基づいて相関性の善し悪しを判断する。
【００５１】
2008165500.tif 000003
【００５２】
次に第２の検証方法は、上記同様、図１２において複数（Ｐ＋１）台の物理乱数発生器１０から出力される各々乱数（一様化物理乱数（１〜Ｐ＋１））を、複数バイト同時に取得し、各乱数列（１〜Ｐ＋１列）について任意のバイト間の相関計数（ｒ）を式１より算出し、得られた相関係数より、表１に基づいて各乱数列における自己相関関係を検証する方法である。
【００５３】
この検証方法では、図１４に示すように、複数（Ｐ＋１）台の物理乱数発生器１０から出力される各々乱数の取得バイト数を（２×ｑ）バイトとして、各乱数列について偶数番目のバイトと、奇数番目のバイト間の相関係数を求める方法、或いは、図１５に示すように、複数（Ｐ＋１）台の物理乱数発生器１０から出力される各々乱数の取得バイト数を（ｑ＋ｓ）として、各乱数列について（ｓ）バイトおいたバイト間の相関関係を求める方法等を採用できる。
【００５４】
【表１】
2008165500.tif 000004
【００５５】
次に、第３の検証方法は、上記同様、図１２において複数（Ｐ＋１）台の物理乱数発生器１０から出力される各々乱数（一様化物理乱数（１〜Ｐ＋１））を、複数バイト同時に取得し、各乱数列１バイト度数のカイ自乗値（Ｘ2）を式２より算出すると共に、得られたカイ自乗値と有意水準値を比較して各乱数列における一様性を検証する方法である。
すなわち、例えば、検証基準として有意水準１％のカイ自乗値（Ｘ2）は３１０．４７５、有意水準５％のカイ自乗値（Ｘ2）は２９３．２４８とし、検証データ量（バイト量）に対して算出されたカイ自乗値が有意水準を下回るかを検証する。
【００５６】
2008165500.tif 000005
式２において、ｋは乱数を表現するビット数で８、ｎは乱数の数量でバイト数、ｐｉは乱数値ｉの出現確率（一様乱数の場合は全てのｉについてｐｉ＝１／２５６）、ｘｉは乱数値ｉの度数を示す。
【００５７】
以上、本実施形態による検証方法では、各乱数列における乱数の検証をバイト単位で行ったが、複数ビット単位で行うことも勿論可能である。また、検証用データとして各物理乱数発生器１０の出力乱数（一様化物理乱数（１〜Ｐ＋１））を用いたが、複数（Ｐ個）の排他的論理和回路４１の出力乱数（高品位物理乱数（１〜Ｐ））を検証用データとしても良い。
【００５８】
当検証方法により、物理乱数発生装置４０で生成される物理乱数の品質、すなわち、一様性、規則性や相関性や周期性の有無を効率良く容易に検証することができ、物理乱数の品質確保に大いに寄与できるものである。
【図面の簡単な説明】
【００５９】
【図１】本発明の第１実施形態による物理乱数発生器の構成を示す図。
【図２】本発明の物理乱数発生器の各部の波形を示す図。
【図３】一様化フィードバック回路の構成を示す図。
【図４】図３の一様化フィードバック回路の動作を示すタイミング図。
【図５】本発明の第１実施形態による物理乱数発生器の図１とは別の構成を示す図。
【図６】オフセット電圧回路の図１とは別の構成を示す図。
【図７】異常検知回路の構成を示す図。
【図８】異常検知回路の図７とは別の構成を示す図。
【図９】ノイズ源の構成例を示す図。
【図１０】本発明の第２実施形態による物理乱数発生器の構成を示す図。
【図１１】乱数一様化回路の構成を示す図。
【図１２】本発明の実施形態による物理乱数発生装置の構成を示す。
【図１３】本発明の物理乱数発生装置の検定用データを示す図。
【図１４】本発明の物理乱数発生装置の自己相関検定用データを示す図。
【図１５】本発明の物理乱数発生装置の図１４とは別の自己相関検定用データを示す図。
【符号の説明】
【００６０】
１ａ、１ｂ  ノイズ源
２  第１増幅回路
３  第２増幅回路
４  比較回路
５  フリップ・フロップ
６  一様化フィードバック回路
７  オフセット電圧回路
８  第３の増幅回路
９  充放電回路
１０  物理乱数発生器
１１  レジスター
１２  加算器
１４  第１カウンター
１３  第１比較器
１５  第２カウンター
１６  第２比較器
１８  可逆カウンター（アップ・ダウンカウンター）
１９  Ｄ／Ａコンバータ
２６  差動増幅回路
３０  一様化回路
３１  シフトレジスター
３２  選択回路（セレクター）
３３、４１  排他的論理和回路
４０  物理乱数発生装置
Ｑ１、Ｑ２  スイッチ回路（ＭＯＳトランジスター）
【図１】
2008165500.tif 000006
【図２】
2008165500.tif 000007
【図３】
2008165500.tif 000008
【図４】
2008165500.tif 000009
【図５】
2008165500.tif 000010
【図６】
2008165500.tif 000011
【図７】
2008165500.tif 000012
【図８】
2008165500.tif 000013
【図９】
2008165500.tif 000014
【図１０】
2008165500.tif 000015
【図１１】
2008165500.tif 000016
【図１２】
2008165500.tif 000017
【図１３】
2008165500.tif 000018
【図１４】
2008165500.tif 000019
【図１５】
2008165500.tif 000020