JP4837549B2 - Physical random number generator and physical random number generator - Google Patents
Physical random number generator and physical random number generator Download PDFInfo
- Publication number
- JP4837549B2 JP4837549B2 JP2006354453A JP2006354453A JP4837549B2 JP 4837549 B2 JP4837549 B2 JP 4837549B2 JP 2006354453 A JP2006354453 A JP 2006354453A JP 2006354453 A JP2006354453 A JP 2006354453A JP 4837549 B2 JP4837549 B2 JP 4837549B2
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- random number
- output
- physical random
- comparison
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 230000002441 reversible effect Effects 0.000 claims description 15
- 238000007599 discharging Methods 0.000 claims description 12
- 230000005856 abnormality Effects 0.000 claims description 11
- 239000003990 capacitor Substances 0.000 claims description 11
- 238000001514 detection method Methods 0.000 claims description 10
- 238000000034 method Methods 0.000 description 14
- 238000012795 verification Methods 0.000 description 12
- 238000004088 simulation Methods 0.000 description 6
- 230000007423 decrease Effects 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 3
- 230000003321 amplification Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 3
- 238000003199 nucleic acid amplification method Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000005314 correlation function Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000000342 Monte Carlo simulation Methods 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Description
本発明は、各種の用途に用いて好適な物理乱数発生器に関するものであり、その具体的な用途として、シミュレーション(例えば、確率モデルシミュレーション、マルコフ連鎖モンテカルロ法、粒子フィルタ)、セキュリティ(例えば、共通鍵暗号の鍵、認証鍵、認証用乱数、量子暗号の鍵)、ゲーム機(例えば、アミューズメント、アーケードゲーム、パソコンゲーム、シミュレーションゲーム)、コンピュータグラフィックス等が挙げられる。 The present invention relates to a physical random number generator suitable for various uses, and specific examples of the use include simulation (eg, stochastic model simulation, Markov chain Monte Carlo method, particle filter), security (eg, common) Key encryption key, authentication key, authentication random number, quantum encryption key), game machine (for example, amusement, arcade game, personal computer game, simulation game), computer graphics, and the like.
近年、通信技術の進歩や個人情報、電子取引等の取り扱いにより、大量のデータを暗号化処理したり認証したりするために、セキュリティ通信分野等において高速で高品位な乱数が必要とされており、また、数値シミュレーションにおいても、CPUの高速化や並列処理の進歩、高精度高効率の追求等により、さらなる大量のデータを処理できるようになったため、高速で高品位の大量な乱数が必要とされている。 In recent years, high-speed and high-quality random numbers are required in the security communication field, etc. to encrypt and authenticate large amounts of data due to advances in communication technology, handling of personal information, electronic transactions, etc. Also, in numerical simulations, it has become possible to process a larger amount of data due to CPU speedup, advances in parallel processing, pursuit of high accuracy and high efficiency, etc., requiring a large amount of random numbers at high speed and high quality. Has been.
乱数には、アルゴリズム(計算)により生成される疑似乱数と、自然界の物理現象を利用して生成される物理乱数(真性乱数)とがある。
疑似乱数は計算により生成されるため高速化が容易であるが、初期値を与えたアルゴリズムで算出されることから再現性が有り、初期値やアルゴリズムから乱数列が予測され易いという欠点がある。加えて、疑似乱数は乱数列に周期性を有するため、セキュリティやシミュレーション等の分野での使用には不向きな場合がある。
他方、物理乱数は、半導体内部の熱雑音に代表されるランダムな物理現象を利用して生成されるため、疑似乱数のような初期値やアルゴリズムは不要であり、且つ、乱数列に周期性がないことから、乱数を予測することは不可能であり、よって、予測の困難さを必要とするセキュリティ通信分野や再現性のない真の乱数を必要とする統計シミュレーション分野等においては、物理乱数の需要が急増している。
The random number includes a pseudo random number generated by an algorithm (calculation) and a physical random number (intrinsic random number) generated using a physical phenomenon in the natural world.
Since the pseudo-random number is generated by calculation, it is easy to increase the speed. However, since the pseudo-random number is calculated by the algorithm given the initial value, there is a drawback that the random number sequence is easily predicted from the initial value and the algorithm. In addition, since pseudorandom numbers have periodicity in a random number sequence, they may not be suitable for use in fields such as security and simulation.
On the other hand, since physical random numbers are generated using random physical phenomena represented by thermal noise inside the semiconductor, initial values and algorithms such as pseudo-random numbers are unnecessary, and the random number sequence has periodicity. Therefore, it is impossible to predict random numbers.Therefore, physical random numbers are not used in security communication fields that require difficulty in prediction or statistical simulation fields that require non-reproducible true random numbers. Demand is increasing rapidly.
物理乱数は、乱数源としてダイオードやトランジスタ等で発生する電気的ノイズをフィルター回路、増幅回路、A/D変換器等を通してデータ化(2値化)する方式が主流である(例えば、特許文献1、特許文献2)。
ところで、物理乱数を高速に生成するためには、乱数源となる電気的ノイズを高速に発生させて増幅し、確実にデータ化できる高速回路が必要であるが、回路の高速化には多大なコストと高度な回路技術が要求されるため(通常、乱数の生成速度は、使用するA/D変換器の性能に大きく影響される)、低コストで手軽に高速の物理乱数を得ることは困難であった。
また、高速化することにより、乱数源が不安定になったり、ノイズの計測精度が低下したりして、生成される物理乱数の品質が低下する場合もある。
By the way, in order to generate a physical random number at a high speed, a high-speed circuit capable of generating and amplifying electrical noise as a random number source at a high speed and converting it into data reliably is necessary. Because cost and advanced circuit technology are required (usually, the random number generation speed is greatly affected by the performance of the A / D converter used), it is difficult to obtain high-speed physical random numbers easily at low cost. Met.
In addition, by increasing the speed, the random number source may become unstable or noise measurement accuracy may decrease, and the quality of the generated physical random number may decrease.
本発明は、このような問題点に鑑み成されたもので、高品位の物理乱数を高速に生成できる安価で信頼性の高い物理乱数生発生器および物理乱数発生装置を提供することを目的としている。 The present invention has been made in view of such problems, aims to provide highly reliable physical random number producing generator and a physical random number generation equipment at low cost to the physical high quality random numbers can be generated at high speed It is said.
すなわち、請求項1に記載の物理乱数発生器は、2組のノイズ源と、これらのノイズ源より発生する各々ノイズの直流分を除去して増幅する第1増幅回路と第2増幅回路と、前記第1増幅回路と前記第2増幅回路の各出力電圧を比較して0または1を出力する比較回路と、当該比較回路の出力を基準クロックに同期して保持し、物理乱数を得るフリップ・フロップと、前記比較回路の一方の入力に接続されて、当該比較回路のオフセット電圧を設定するオフセット電圧回路と、前記オフセット電圧回路を制御する一様化フィードバック回路とで構成されてなり、かつ前記一様化フィードバック回路は、前記フリップ・フロップ出力を保持するレジスターと、当該レジスターの出力に1を加算し、比較値を生成する加算器と、前記基準クロック数を計測する第1カウンターと、当該第1カウンターの計数値と前記加算器からの比較値より当該比較値の2倍の前記繰り返し周期を発生する第1比較器と、前記繰り返し周期毎に前記フリップ・フロップ出力の0または1の出現数を計測する第2カウンターと、前記第2カウンターの計数値と前記比較値とを比較して比較出力(計数値<比較値)または比較出力(計数値>比較値)を発生する第2比較器とを備えることにより、前記フリップ・フロップ出力の0または1の出現率が前記物理乱数で決まる繰り返し周期内で50%になるように前記オフセット電圧回路を制御するとともに、前記オフセット電圧回路は、前記第2比較器出力(計数値<比較値、計数値>比較値)に基づいて動作する2組のスイッチ回路と、当該スイッチ回路に接続された抵抗、コンデンサのCR回路を備え、前記スイッチ回路のオン動作により前記コンデンサの充放電を行う充放電回路と、当該充放電回路の出力を増幅してオフセット電圧を発生する第3増幅回路とで構成されることを特徴としている。
That is, the physical random number generator according to
また、請求項2に記載の物理乱数発生器は、2組のノイズ源と、これらノイズ源より発生する各々ノイズの直流分を除去してノイズの差分を増幅する差動増幅回路と、前記差動増幅回路の出力電圧と基準電圧を比較して0または1を出力する比較回路と、前記比較回路の出力を基準クロックに同期して保持し、物理乱数を得るフリップ・フロップと、当該比較回路の基準電圧側の入力に接続され、前記比較回路のオフセット電圧を設定するオフセット電圧回路と、前記オフセット電圧回路を制御する一様化フィードバック回路とで構成されてなり、かつ前記一様化フィードバック回路は、前記フリップ・フロップ出力を保持するレジスターと、当該レジスターの出力に1を加算し、比較値を生成する加算器と、前記基準クロック数を計測する第1カウンターと、当該第1カウンターの計数値と前記加算器からの比較値より当該比較値の2倍の前記繰り返し周期を発生する第1比較器と、前記繰り返し周期毎に前記フリップ・フロップ出力の0または1の出現数を計測する第2カウンターと、前記第2カウンターの計数値と前記比較値とを比較して比較出力(計数値<比較値)または比較出力(計数値>比較値)を発生する第2比較器とを備えることにより、前記フリップ・フロップ出力の0または1の出現率が前記物理乱数で決まる繰り返し周期内で50%になるように前記オフセット電圧回路を制御するとともに、前記オフセット電圧回路は、前記第2比較器出力(計数値<比較値、計数値>比較値)に基づいて動作する2組のスイッチ回路と、当該スイッチ回路に接続された抵抗、コンデンサのCR回路を備え、前記スイッチ回路のオン動作により前記コンデンサの充放電を行う充放電回路と、当該充放電回路の出力を増幅してオフセット電圧を発生する第3増幅回路とで構成されることを特徴としている。
The physical random number generator according to
また、請求項3に記載の発明は、請求項1または2に記載の物理乱数発生器において、前記比較回路の、前記オフセット電圧回路が接続される入力とは別の入力に、前記第3増幅回路と同じ構成の増幅回路を設けたことを特徴としている。 According to a third aspect of the present invention, in the physical random number generator according to the first or second aspect , the third amplification is connected to an input of the comparison circuit different from an input to which the offset voltage circuit is connected. An amplifier circuit having the same configuration as the circuit is provided.
また、請求項4に記載の発明は、請求項1または2に記載の物理乱数発生器において、前記オフセット電圧回路は、前記第2比較器の出力(n<m、n>m)にて動作する可逆カウンターと、当該可逆カウンターの出力値をアナログ値に変換して前記オフセット電圧を発生するD/Aコンバータとで構成されることを特徴としている。 According to a fourth aspect of the present invention, in the physical random number generator according to the first or second aspect , the offset voltage circuit operates at an output (n <m, n> m) of the second comparator. And a D / A converter that converts the output value of the reversible counter into an analog value to generate the offset voltage.
また、請求項5に記載の発明は、請求項2〜4の何れかに記載の物理乱数発生器において、前記繰り返し周期中において、前記第2比較器の出力(計数値<比較値)または、出力(計数値>比較値)の何れか一方が連続して所定回数出現したことを検出した時、異常信号を発生する異常検知手段を備えることを特徴としている。
The invention according to
また、請求項6に記載の発明は、請求項1〜5の何れかに記載の物理乱数発生器において、前記ノイズ源は、抵抗とツェナーダイオードの直列回路、または、定電流源に接続されたツェナーダイオード、または、PチャンネルMOSトランジスタとNチャンネルMOSトランジスタを直列に接続し、入出力間を短絡したトランジスタ回路で構成されることを特徴としている。
The invention according to
また、請求項7に記載の発明は、請求項1〜6の何れかに記載の物理乱数発生器において、シフトレジスターと、当該シフトレジスターの保持データの一部を入力データとすると共に、その他の一部をアドレスデータとする選択回路と、当該選択回路の出力と前記フリップ・フロップより出力された物理乱数との排他的論理和を行う排他的論理和回路とを備え、当該排他的論理和回路の出力を前記シフトレジスターの入力データとする一様化回路を備えることを特徴としている。
The invention according to
また、請求項8に記載の物理乱数発生装置は、並列動作可能に配設された請求項1〜7の何れかに記載の複数の物理乱数発生器と、これら複数の物理乱数発生器の内の1つの物理乱数発生器の乱数出力と残りの物理乱数発生器の乱数出力のそれぞれと個々に排他的論理和を行う複数の排他的論理和回路とを備えることを特徴としている。
Further, a physical random number generator according to
請求項1〜7に記載の発明によれば、ノイズ源からのノイズを高価なA/D変換器を用いずに、増幅回路と比較回路によりデータ化(2値化)する構成としたので、外来ノイズ、電源変動、環境変化等に影響されることなく高品位の物理乱数を高速で生成できる物理乱数発生器を実現することができる。
また、一様化フィードバック回路を設け、乱数出力に基づき上記比較回路のオフセット電圧を調整して、乱数の0または1の出現率が50%になるように補正するようにしたので、一様性を有し、且つ、規則性や相関性や周期性を有しない高品位な物理乱数を高速で生成することができる。
さらに、請求項7に記載のように、一様化回路を設けることにより、より一様性に優れる物理乱数を高速で生成することができる。
According to the first to seventh aspects of the present invention, since the noise from the noise source is converted into data (binarized) by the amplifier circuit and the comparison circuit without using an expensive A / D converter, It is possible to realize a physical random number generator capable of generating high-quality physical random numbers at high speed without being affected by external noise, power supply fluctuations, environmental changes, and the like.
Further, the uniform feedback circuit is provided, and the offset voltage of the comparison circuit is adjusted based on the random number output so that the appearance rate of the
Furthermore, as described in
また、請求項8に記載の発明によれば、上記物理乱数発生器を多段に接続して並列動作させると共に、これら物理乱数発生器の各乱数出力を別の物理乱数発生器の乱数出力と排他的論理和を行うことにより、高品位の高速物理乱数を大量に生成できる物理乱数発生装置を実現することができる。
According to the invention described in
以下、図面に基づいて本発明に係る物理乱数発生器の実施形態を説明する。 Embodiments of a physical random number generator according to the present invention will be described below with reference to the drawings.
図1は、本発明による物理乱数発生器の第1実施形態を示し、図2は各部の波形を示している。
図1、図2に示すように、本実施形態の物理乱数発生器10は、2組のノイズ源1a、1bと、これらのノイズ源1a、1bから発生するノイズA、ノイズBの直流分を除去して高周波成分を増幅する第1増幅回路2と第2増幅回路3と、これら第1増幅回路2と第2増幅回路3の出力電圧を相互に比較して0または1を出力する比較回路4と、この比較回路4の比較出力、0または1を基準クロックの立ち上がりに同期して逐次保持し、物理乱数を生成するDタイプのフリップ・フロップ5と、上記比較回路4の+入力にオフセット電圧vfbを供給するオフセット電圧回路7と、このオフセット電圧回路7のオフセット電圧vfbを調整する一様化フィードバック回路6とで構成されている。
FIG. 1 shows a first embodiment of a physical random number generator according to the present invention, and FIG. 2 shows waveforms of respective parts.
As shown in FIGS. 1 and 2, the physical
ここで、上記したノイズ源1a、1bとしては、図9(a)に示すような、抵抗R1とツェナーダイオードD1の直列回路によるノイズ源、図9(b)のような、定電流源25に接続されたツェナーダイオードD1によるノイズ源、図9(c)のような、PチャンネルMOSトランジスタQ1とNチャンネルMOSトランジスタQ2を直列に接続(カスケード接続)し、その入出力間を短絡したトランジスタ回路で構成されるノイズ源等、様々なノイズ源を用いることができる。
Here, the
一様化フィードバック回路6は、図3に示すように、レジスター11(例えば、シフトレジスター)、加算器12、第1比較器13、第1カウンター14、第2カウンター15、第2比較器16、制御回路17等で構成されている。
As shown in FIG. 3, the
図3、および図4のタイミング図に示すように、レジスター11は、上記フリップ・フロップ5からの乱数出力の一部を基準クロックに同期して順次保持し、その保持データの値(c)を、当一様化フィードバック回路6の繰り返し周期を設定するための周期設定値(c)とする。
加算器12は、この周期設定値(c)に1を加算して比較値(m=c+1)を生成し、この比較値(m)が第1比較器13の一方の比較入力に比較データ(2m−1)となるように入力される。この第1比較器13は、フィードバック制御の繰り返し周期を発生するための比較器であり、周期設定値(c)に1を加算するのは、レジスター11に保持される出力乱数(0〜m−1)の範囲を(1〜m)の範囲に変換するためである。
As shown in the timing diagrams of FIGS. 3 and 4, the
The
第1カウンター14は、基準クロックの数を計測し、その計数値を第1比較器13の他方の比較入力に入力して上記した比較データ(2m−1)と比較することにより、その比較出力として基準クロックの(2m)倍の繰り返し周期を有する一致信号(t=2m)を発生する。
また、この繰り返し周期(t)によって、上記したレジスター11および第1カウンターはリセットされ、リセット解除後、レジスター11による乱数保持動作と第1カウンター14による基準クロックの計側動作が新たに開始される。
本構成では、レジスター11に保持される乱数値に応じて、繰り返し周期(t)はランダムに変化する。
The
In addition, the
In this configuration, the repetition period (t) changes randomly according to the random value held in the
第2カウンター15は、上記した繰り返し周期(t)毎に上記フリップ・フロップ5の乱数出力の1(または0)の出現数を計測し、その計数値(n)が第2比較器16の一方の比較入力に入力される。また、この第2比較器16の他方の比較入力には加算器12で生成された比較値(m)が入力されており、第2比較器16において計測値(n)と比較値(m)が比較され、その比較結果に応じた比較出力(n<m、n>m)が出力される。
比較出力(n<m、n>m)は制御回路17において電流増幅され、後述するオフセット電圧回路7のスイッチ回路Q1、Q2を駆動するための駆動信号Driv_pとDriv_nが出力される。
The
The comparison outputs (n <m, n> m) are current-amplified in the
オフセット電圧回路7は、図1に示すように、制御回路17から出力された駆動信号Driv_pとDriv_nにより動作する2組のスイッチ回路(PチャンネルMOSトランジスターQ1、NチャンネルMOSトランジスターQ2)と抵抗器R1、R2、およびコンデンサーC1のCR回路で成る充放電回路9と、この充放電回路9の出力を増幅してオフセット電圧vfbを発生するバッファ用の第3増幅回路8とで構成されている。
As shown in FIG. 1, the
そして、図4に示すように、制御回路17より駆動信号Driv_pが出力されMOSトランジスターQ1がオンすると(この時、MOSトランジスターQ2はオフ)、電源VccよりMOSトランジスターQ1と抵抗R1を介してコンデンサーC1が充電され、その充電電圧によりオフセット電圧vfbが上昇する。また、制御回路17より駆動信号Driv_nが出力されMOSトランジスターQ2がオンすると(この時、MOSトランジスターQ1はオフ)、抵抗R2とMOSトランジスターQ2を介して、コンデンサーC1の電荷が電源Vee側へ放電され、オフセット電圧vfbは降下する。
オフセット電圧vfbを高くすると、比較回路4の比較出力の1の出現数が多くなり、0の出現数が少なくなる。逆に、オフセット電圧vfbを低くすると、1の出現数が少なくなり、0の出現数は多くなる。
Then, as shown in FIG. 4, when the drive signal Drive_p is output from the
When the offset voltage vfb is increased, the number of occurrences of 1 in the comparison output of the comparison circuit 4 increases and the number of occurrences of 0 decreases. Conversely, when the offset voltage vfb is lowered, the number of occurrences of 1 decreases and the number of occurrences of 0 increases.
このように、一様化フィードバック回路6の制御により繰り返し周期(t)内に発生する乱数出力の1(または0)の数に応じて比較回路4の+入力側のオフセット電圧を調整し、比較回路4の比較出力、すなわち、0と1の出現状態を変化させることにより、フリップ・フロップ5からの乱数出力の1または0の出現率を確率的に50%に収束するように自動調整することができる。これにより、一様化された物理乱数の生成が可能となる。
As described above, the offset voltage on the + input side of the comparison circuit 4 is adjusted according to the number of 1 (or 0) of the random number output generated within the repetition period (t) by the control of the
また、本第1実施形態の物理乱数発生器10では、図1に替えて、図5に示すように、比較回路4の−入力側に上記したオフセット電圧回路7を構成する第3増幅回路8と同様の回路構成を設けることにより、比較回路4の入力形態を対称型とすることができ、これにより、上記第3増幅回路8を介して比較回路4の各入力に重畳される外来ノイズや電源ノイズ、或いは電源変動による波形歪み等を比較回路4において確実に相殺することができ、耐ノイズ性に優れる回路構成を実現することができる。尚、その他の回路構成は図1と全く同様である。
Further, in the physical
また、オフセット電圧回路7は、図1、図5に示すような、充放電回路9と第3増幅回路8の組み合わせ回路に替え、図6に示すように、可逆カウンター18(アップ・ダウンカウンター)とD/Aコンバータ19との組み合わせ回路で構成することもできる。
Further, the offset
上記構成のオフセット電圧回路7において、可逆カウンター18は、第2比較器16より比較出力(n<m、n>m)が出力された時に基準クロックに同期して動作する。すなわち、比較出力(n<m)が出力されると可逆カウンター18はカウントアップし、比較出力(n<m)にてカウントダウンするように動作する。
この可逆カウンター18のデジタル出力値はD/Aコンバータ19によりアナログ値に変換され、オフセット電圧vfbとして比較回路4の+入力に供給される。すなわち、可逆カウンター18のカウントアップによりオフセット電圧vfbが上昇し、可逆カウンター18のカウントダウンによりオフセット電圧vfbが降下するように動作する。可逆カウンター18は、繰り返し周期(t)毎にリセットされる。リセット解除後、可逆カウンター18は比較出力(n<m、n>m)に基づいてカウント動作を開始する。
In the offset
The digital output value of the
このように、本回路構成においても、一様化フィードバック回路6により繰り返し周期(t)内に発生する乱数出力の1(または0)の数に応じて比較回路4の+入力側のオフセット電圧を調整し、比較回路4の比較出力、すなわち、0と1の出現状態を変化させることにより、フリップ・フロップ5からの乱数出力、1または0の出現率を確率的に50%に自動調整することができる。
Thus, also in this circuit configuration, the offset voltage on the + input side of the comparison circuit 4 is set in accordance with the number of random output 1 (or 0) generated within the repetition period (t) by the
また、本実施形態の物理乱数発生器10は、上記した一様化フィードバック回路6によるフィードバック制御の動作を監視する異常検知回路(異常検知手段)を備えている。
Further, the physical
図7は、その一例を示し、第2比較器16の比較出力(n<m)または(n>m)が連続的に出力されることを検出する連続性検出器21と、比較出力(n<m)および(n>m)の連続回数を計測する第3カウンター22と、この第3カウンター22の計数値を予め定めた所定数(比較データ)と比較する第3比較器23とで構成され、何らかの理由で第3カウンター22の計数値が所定数を越えた場合に、第3比較器23より異常動作確認信号が出力される。
FIG. 7 shows an example, and a
図8は、異常検知回路の別の例を示し、オフセット電圧回路7の可逆カウンター18(アップ・ダウンカウンター)出力にオーバーフローを検出するオーバーフロー検出回路24を設けたものである。
可逆カウンター18に第2比較器16の比較出力(n<m)或いは比較出力(n>m)が連続的に入力され、カウントオーバーした場合に(例えば、可逆カウンター18が8ビット構成であれば、オーバーフローすることにより、カウンタ出力はFFH、或いは00Hとなる)、オーバーフロー検出回路24においてカウント出力FFH、或いは00Hが検知された場合に、異常動作確認信号が出力される。
FIG. 8 shows another example of the abnormality detection circuit, in which an
When the comparison output (n <m) or comparison output (n> m) of the
異常検知回路からの異常動作確認信号を監視し、物理乱数発生器10における回路動作の異常を素早く察知することにより、物理乱数発生器10にて生成される物理乱数の品質劣化を未然に防止することが可能となる。
By monitoring the abnormal operation confirmation signal from the abnormality detection circuit and quickly detecting an abnormality in the circuit operation in the physical
図10は、本発明による物理乱数発生器の第2実施形態を示している。
第2実施形態による物理乱数発生器10は、第1増幅回路2と第2増幅回路3の代わりに1個の差動増幅回路26を用いたことを除き、図1に示す第1実施形態の物理乱数発生器10と同様である。
FIG. 10 shows a second embodiment of the physical random number generator according to the present invention.
The physical
第2実施形態の物理乱数発生器10では、差動増幅回路26により各々直流分を除去したノイズの差分が増幅され、その出力電圧が比較回路4において基準電圧と比較され、比較出力0または1が出力される。比較回路4の基準電圧は、オフセット電圧回路7の出力(オフセット電圧vfb)であり、第1実施形態と同様に、一様化フィードバック回路6を介してオフセット電圧vfbを調整することにより、乱数出力の1または0の出現率を確率的に50%に収束するように自動調整することができる。
尚、この場合も、図示しないが、図5と同様に、比較回路4の−入力側に第3増幅回路8と同様の回路を設けて、比較回路4の入力形態を対称型とすることにより、耐ノイズ性を向上することができる。
In the physical
In this case as well, although not shown, by providing a circuit similar to the
図11は、物理乱数の一様化回路30の構成を示し、排他的論理和回路33、シフトレジスター31、セレクター32(選択回路)とで構成されている。シフトレジスター31の保持データの一部はセレクター32の入力データとなり、その他の一部はアドレスデータとされている。
物理乱数発生器10(フリップ・フロップ5)にて生成された物理乱数は、排他的論理和回路33においてセレクター32の乱数出力との排他的論理和が行われると共に、シフトレジスター31のデータ入力に入力される。
FIG. 11 shows a configuration of a physical random
The physical random number generated by the physical random number generator 10 (flip-flop 5) is subjected to exclusive OR with the random number output of the
このように、シフトレジスター31のデータ入力に入力される物理乱数は、その一部がアドレスデータとなって、自分自身の保持データをランダムに選択して出力するので、物理乱数発生器10からの乱数が偏りを持っていても、この一様化回路30にて一様化されることになるため、一様性に優れる物理乱数(一様化物理乱数)を得ることができる。
In this way, a part of the physical random number input to the data input of the
図12は、物理乱数発生器10を複数(P台)配設して並列動作させる多ビット出力の物理乱数発生装置40である。この物理乱数発生装置40は、上記したP台の物理乱数発生器10の他にさらなる一台の品位向上用の物理乱数発生器10を具備すると共に、各物理乱数出力に対応して設けたP個の排他的論理和回路41により、この(P+1台)目の品位向上用の物理乱数発生器10の乱数出力とP台の各物理乱数発生器10の乱数出力の排他的論理和が行なわれることにより、物理乱数の更なる品位向上が図られ、高品位の多ビット(Pビット)物理乱数(高品位物理乱数)を得ることができる。
FIG. 12 shows a multi-bit output physical random number generator 40 in which a plurality (P units) of physical
尚、この物理乱数発生装置40は、図11に示した乱数一様化回路30を具備した物理乱数発生器10を用いることにより、優れた一様性を有するより高品位な多ビット物理乱数が得られるようになる。
The physical random number generator 40 uses the physical
次に、図12の物理乱数発生装置40にて生成される物理乱数の一様性を検証する検証方法について説明する。 Next, a verification method for verifying the uniformity of physical random numbers generated by the physical random number generator 40 of FIG. 12 will be described.
第1の検証方法は、図12において複数(P+1)台の物理乱数発生器10から出力される各々乱数(一様化物理乱数(1〜P+1))を、図13に示すように、複数バイト(qバイト)乱数列として同時に取得し(例えば、装置搭載のメモリに保存しておく)、これら複数の乱数列(1〜P+1列)の内の任意の2列間について各バイト間の相関係数(r)を式1より算出し、得られた相関係数より各乱数列間の相関関係を検証する方法である。
表1は、相関関数(r)に対する相関関係の一例を示し、算出された相関関数(r)の0〜1の範囲値で表1に基づいて相関性の善し悪しを判断する。
In the first verification method, each random number (uniform physical random number (1 to P + 1)) output from a plurality of (P + 1) physical
Table 1 shows an example of the correlation with respect to the correlation function (r). Based on the range value of 0 to 1 of the calculated correlation function (r), whether the correlation is good or bad is determined.
次に第2の検証方法は、上記同様、図12において複数(P+1)台の物理乱数発生器10から出力される各々乱数(一様化物理乱数(1〜P+1))を、複数バイト同時に取得し、各乱数列(1〜P+1列)について任意のバイト間の相関計数(r)を式1より算出し、得られた相関係数より、表1に基づいて各乱数列における自己相関関係を検証する方法である。
Next, the second verification method obtains each random number (uniform physical random number (1 to P + 1)) output from a plurality of (P + 1) physical
この検証方法では、図14に示すように、複数(P+1)台の物理乱数発生器10から出力される各々乱数の取得バイト数を(2×q)バイトとして、各乱数列について偶数番目のバイトと、奇数番目のバイト間の相関係数を求める方法、或いは、図15に示すように、複数(P+1)台の物理乱数発生器10から出力される各々乱数の取得バイト数を(q+s)として、各乱数列について(s)バイトおいたバイト間の相関関係を求める方法等を採用できる。
In this verification method, as shown in FIG. 14, even-numbered bytes are obtained for each random number sequence, where the number of acquired random numbers output from the (P + 1) physical
次に、第3の検証方法は、上記同様、図12において複数(P+1)台の物理乱数発生器10から出力される各々乱数(一様化物理乱数(1〜P+1))を、複数バイト同時に取得し、各乱数列1バイト度数のカイ自乗値(X2)を式2より算出すると共に、得られたカイ自乗値と有意水準値を比較して各乱数列における一様性を検証する方法である。
すなわち、例えば、検証基準として有意水準1%のカイ自乗値(X2)は310.475、有意水準5%のカイ自乗値(X2)は293.248とし、検証データ量(バイト量)に対して算出されたカイ自乗値が有意水準を下回るかを検証する。
Next, in the third verification method, as described above, each random number (uniform physical random number (1 to P + 1)) output from plural (P + 1) physical
That is, for example, a significance level of 1% chi-squared value as the verification criteria (X 2) is 310.475, significance level of 5% of the chi-square value (X 2) is set to 293.248, the verification data amount (byte amount) Verify whether the calculated chi-square value is below the significance level.
式2において、kは乱数を表現するビット数で8、nは乱数の数量でバイト数、piは乱数値iの出現確率(一様乱数の場合は全てのiについてpi=1/256)、xiは乱数値iの度数を示す。
In
以上、本実施形態による検証方法では、各乱数列における乱数の検証をバイト単位で行ったが、複数ビット単位で行うことも勿論可能である。また、検証用データとして各物理乱数発生器10の出力乱数(一様化物理乱数(1〜P+1))を用いたが、複数(P個)の排他的論理和回路41の出力乱数(高品位物理乱数(1〜P))を検証用データとしても良い。
As described above, in the verification method according to the present embodiment, verification of random numbers in each random number sequence is performed in units of bytes, but of course, it is also possible to perform in units of multiple bits. Further, although the output random numbers (uniform physical random numbers (1 to P + 1)) of each physical
当検証方法により、物理乱数発生装置40で生成される物理乱数の品質、すなわち、一様性、規則性や相関性や周期性の有無を効率良く容易に検証することができ、物理乱数の品質確保に大いに寄与できるものである。 With this verification method, it is possible to efficiently and easily verify the quality of the physical random number generated by the physical random number generator 40, that is, the presence or absence of uniformity, regularity, correlation, and periodicity. It can greatly contribute to securing.
1a、1b ノイズ源
2 第1増幅回路
3 第2増幅回路
4 比較回路
5 フリップ・フロップ
6 一様化フィードバック回路
7 オフセット電圧回路
8 第3の増幅回路
9 充放電回路
10 物理乱数発生器
11 レジスター
12 加算器
14 第1カウンター
13 第1比較器
15 第2カウンター
16 第2比較器
18 可逆カウンター(アップ・ダウンカウンター)
19 D/Aコンバータ
26 差動増幅回路
30 一様化回路
31 シフトレジスター
32 選択回路(セレクター)
33、41 排他的論理和回路
40 物理乱数発生装置
Q1、Q2 スイッチ回路(MOSトランジスター)
1a,
19 D /
33, 41 Exclusive OR circuit 40 Physical random number generators Q1, Q2 Switch circuit (MOS transistor)
Claims (8)
かつ前記一様化フィードバック回路は、前記フリップ・フロップ出力を保持するレジスターと、当該レジスターの出力に1を加算し、比較値を生成する加算器と、前記基準クロック数を計測する第1カウンターと、当該第1カウンターの計数値と前記加算器からの比較値より当該比較値の2倍の前記繰り返し周期を発生する第1比較器と、前記繰り返し周期毎に前記フリップ・フロップ出力の0または1の出現数を計測する第2カウンターと、前記第2カウンターの計数値と前記比較値とを比較して比較出力(計数値<比較値)または比較出力(計数値>比較値)を発生する第2比較器とを備えることにより、前記フリップ・フロップ出力の0または1の出現率が前記物理乱数で決まる繰り返し周期内で50%になるように前記オフセット電圧回路を制御するとともに、
前記オフセット電圧回路は、前記第2比較器出力(計数値<比較値、計数値>比較値)に基づいて動作する2組のスイッチ回路と、当該スイッチ回路に接続された抵抗、コンデンサのCR回路を備え、前記スイッチ回路のオン動作により前記コンデンサの充放電を行う充放電回路と、当該充放電回路の出力を増幅してオフセット電圧を発生する第3増幅回路とで構成されることを特徴とする物理乱数発生器。 Two sets of noise sources, a first amplifier circuit and a second amplifier circuit for amplifying by removing a DC component of each noise generated from these noise sources, and outputs of the first amplifier circuit and the second amplifier circuit A comparison circuit that compares voltages and outputs 0 or 1; a flip-flop that holds the output of the comparison circuit in synchronization with a reference clock and obtains a physical random number; and one input of the comparison circuit The offset voltage circuit for setting the offset voltage of the comparison circuit, and a uniform feedback circuit for controlling the offset voltage circuit ,
The uniform feedback circuit includes a register that holds the flip-flop output, an adder that adds 1 to the output of the register to generate a comparison value, and a first counter that measures the number of reference clocks. A first comparator that generates the repetition period twice as large as the comparison value from the count value of the first counter and the comparison value from the adder; and 0 or 1 of the flip-flop output for each repetition period A second counter that counts the number of occurrences of the second counter, and compares the count value of the second counter with the comparison value to generate a comparison output (count value <comparison value) or a comparison output (count value> comparison value). 2 comparators so that the occurrence rate of 0 or 1 of the flip-flop output is 50% within a repetition period determined by the physical random number. It controls the circuit,
The offset voltage circuit includes two sets of switch circuits that operate based on the output of the second comparator (count value <comparison value, count value> comparison value), and a resistor and capacitor CR circuit connected to the switch circuit. the provided a charging and discharging circuit that performs charging and discharging of the capacitor by the on operation of the switching circuit, and wherein Rukoto and a third amplifier circuit for generating an offset voltage by amplifying the output of the charging and discharging circuit A physical random number generator.
かつ前記一様化フィードバック回路は、前記フリップ・フロップ出力を保持するレジスターと、当該レジスターの出力に1を加算し、比較値を生成する加算器と、前記基準クロック数を計測する第1カウンターと、当該第1カウンターの計数値と前記加算器からの比較値より当該比較値の2倍の前記繰り返し周期を発生する第1比較器と、前記繰り返し周期毎に前記フリップ・フロップ出力の0または1の出現数を計測する第2カウンターと、前記第2カウンターの計数値と前記比較値とを比較して比較出力(計数値<比較値)または比較出力(計数値>比較値)を発生する第2比較器とを備えることにより、前記フリップ・フロップ出力の0または1の出現率が前記物理乱数で決まる繰り返し周期内で50%になるように前記オフセット電圧回路を制御するとともに、
前記オフセット電圧回路は、前記第2比較器出力(計数値<比較値、計数値>比較値)に基づいて動作する2組のスイッチ回路と、当該スイッチ回路に接続された抵抗、コンデンサのCR回路を備え、前記スイッチ回路のオン動作により前記コンデンサの充放電を行う充放電回路と、当該充放電回路の出力を増幅してオフセット電圧を発生する第3増幅回路とで構成されることを特徴とする物理乱数発生器。 Two sets of noise sources, a differential amplifier circuit that amplifies the difference in noise by removing the DC component of each noise generated from these noise sources, the output voltage of the differential amplifier circuit and the reference voltage are compared, and 0 Or a comparator circuit that outputs 1, a flip-flop that holds the output of the comparator circuit in synchronization with a reference clock and obtains a physical random number, and an input on the reference voltage side of the comparator circuit, An offset voltage circuit for setting an offset voltage, and a uniform feedback circuit for controlling the offset voltage circuit ,
The uniform feedback circuit includes a register that holds the flip-flop output, an adder that adds 1 to the output of the register to generate a comparison value, and a first counter that measures the number of reference clocks. A first comparator that generates the repetition period twice as large as the comparison value from the count value of the first counter and the comparison value from the adder; and 0 or 1 of the flip-flop output for each repetition period A second counter that counts the number of occurrences of the second counter, and compares the count value of the second counter with the comparison value to generate a comparison output (count value <comparison value) or a comparison output (count value> comparison value). 2 comparators so that the occurrence rate of 0 or 1 of the flip-flop output is 50% within a repetition period determined by the physical random number. It controls the circuit,
The offset voltage circuit includes two sets of switch circuits that operate based on the output of the second comparator (count value <comparison value, count value> comparison value), and a resistor and capacitor CR circuit connected to the switch circuit. the provided a charging and discharging circuit that performs charging and discharging of the capacitor by the on operation of the switching circuit, and wherein Rukoto and a third amplifier circuit for generating an offset voltage by amplifying the output of the charging and discharging circuit A physical random number generator.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006354453A JP4837549B2 (en) | 2006-12-28 | 2006-12-28 | Physical random number generator and physical random number generator |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006354453A JP4837549B2 (en) | 2006-12-28 | 2006-12-28 | Physical random number generator and physical random number generator |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008165500A JP2008165500A (en) | 2008-07-17 |
JP4837549B2 true JP4837549B2 (en) | 2011-12-14 |
Family
ID=39694912
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006354453A Expired - Fee Related JP4837549B2 (en) | 2006-12-28 | 2006-12-28 | Physical random number generator and physical random number generator |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4837549B2 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5433686B2 (en) | 2009-05-22 | 2014-03-05 | 株式会社東芝 | Random number generation circuit and encryption circuit using the same |
CN110838835B (en) * | 2019-11-19 | 2023-04-28 | 天津津航计算技术研究所 | Random signal generating circuit based on high-speed dynamic comparator |
CN110808728B (en) * | 2019-11-19 | 2023-10-20 | 天津津航计算技术研究所 | Random signal generation method based on high-speed dynamic comparator |
CN114461178A (en) * | 2022-02-15 | 2022-05-10 | 清华大学 | Random number generator, electronic device and operation method |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2980576B2 (en) * | 1997-09-12 | 1999-11-22 | 株式会社東芝 | Physical random number generating apparatus and method, and physical random number recording medium |
JP2004310314A (en) * | 2003-04-04 | 2004-11-04 | Fdk Corp | Physical random number generating device |
JP4148807B2 (en) * | 2003-03-17 | 2008-09-10 | 株式会社ルネサステクノロジ | Random number generator and information processing apparatus |
-
2006
- 2006-12-28 JP JP2006354453A patent/JP4837549B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2008165500A (en) | 2008-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11750361B2 (en) | Clock period randomization for defense against cryptographic attacks | |
KR100668554B1 (en) | Random number generator with ring oscillation circuit | |
US7797361B2 (en) | System and method for generating random numbers using parity feedback | |
JP4893895B2 (en) | Multi-bit sampling of oscillator jitter for random number generation | |
JP6034153B2 (en) | Random number generator | |
US10146507B2 (en) | Randomness test apparatus and method for random number generator | |
US8390313B2 (en) | Semiconductor integrated circuit device | |
JP4837549B2 (en) | Physical random number generator and physical random number generator | |
US20130191427A1 (en) | Pseudo-noise generator | |
JP5670849B2 (en) | Pseudorandom number generation device and pseudorandom number generation method | |
US9836280B2 (en) | Arrangement and method for checking the entropy of a random number sequence | |
CN109656514B (en) | Random number generation system and random number generation method thereof | |
EP1662375B1 (en) | Random number generator and method for testing the generator | |
US20150199174A1 (en) | Method for Checking an Output | |
US20090226007A1 (en) | Mute circuit | |
WO2022048245A1 (en) | Random number generation circuit | |
CN113258894B (en) | Signal detection circuit and transmission equipment | |
JP4869879B2 (en) | Semiconductor integrated circuit | |
EP2933719A1 (en) | A digital method and device for generating true random numbers | |
Mao et al. | Zero-bias true random number generator using LFSR-based scrambler | |
Lee et al. | Metastability-based feedback method for enhancing fpga-based trng | |
WO2022048231A1 (en) | Random number generating circuit | |
CN115145539A (en) | Quantum random number generator and integrated circuit comprising same | |
JP6386904B2 (en) | Random number generation apparatus and random number generation method | |
EP2372528A1 (en) | Pseudo-noise generator |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20091127 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110614 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110809 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110830 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110928 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141007 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4837549 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |