JP4307493B2 - ランダムビットストリームを提供するための装置 - Google Patents

ランダムビットストリームを提供するための装置 Download PDF

Info

Publication number
JP4307493B2
JP4307493B2 JP2006551777A JP2006551777A JP4307493B2 JP 4307493 B2 JP4307493 B2 JP 4307493B2 JP 2006551777 A JP2006551777 A JP 2006551777A JP 2006551777 A JP2006551777 A JP 2006551777A JP 4307493 B2 JP4307493 B2 JP 4307493B2
Authority
JP
Japan
Prior art keywords
signal
random
providing
clock signal
sampling
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
Application number
JP2006551777A
Other languages
English (en)
Other versions
JP2007520959A (ja
Inventor
ルッツィ,ライモンド
ブッチ,マルコ
ボック,ホルガー
ドレクセル,ヴェルナー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Infineon Technologies AG filed Critical Infineon Technologies AG
Publication of JP2007520959A publication Critical patent/JP2007520959A/ja
Application granted granted Critical
Publication of JP4307493B2 publication Critical patent/JP4307493B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/84Generating pulses having a predetermined statistical distribution of a parameter, e.g. random pulse generators

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Description

発明の詳細な説明
本発明は、ランダムビットストリームを提供するための装置に関するものであり、具体的には、ジッタされた発振器のサンプリングに基づいた装置に関する。
対称および非対称な暗号を行うアルゴリズムは、キー生成のために高品質のランダム数源を利用できる必要がある。ランダムマスキングのためのパディングバイトおよびブラインド値を作成するために、ランダム数は、認証プロトコルにおけるチャレンジを生成するためにも使用される。
たとえ暗号化による安全な決定論アルゴリズムに基づく擬似的なランダム数生成器(PRNG;PRNG=pseudo random number generator)をこれらの目的のために採用することができるとしても、アルゴリズムシーディング(algorithm seeding)にとって真正の無作為性の物理的な源が必要である。それゆえ、暗号的なトークン(例えば、チップカード)は、その周辺の機器の間で、真正のランダム数生成器(RNG;RNG=random number generator)も特徴付けている必要がある。
高品質な無作為性の源の主な特徴は、生成されるビットストリームの予測不可能性である。観察者または攻撃者でさえ、たとえRNGの設計を知っているとしても、本当のRNG出力についての何らかの有効な予測を行えないはずである。
真正RNG生成器は、ランダムビットストリームを、電子雑音または放射性崩壊のような非決定論的な自然の源から生成する。実際、総合的な実施では、熱雑音または散弾雑音のような電子雑音源は、利用可能な単なる確率過程である。
従来技術によれば、ランダムビットストリームを生成するための3つの異なる技術、すなわち、雑音源の直接増幅と、ジッタされた発振器のサンプリングと、離散時間型無秩序マップとが考えられる。
第1の技術、すなわち雑音源の直接増幅は、白色雑音源の増幅を利用する。白色雑音は、通常、集積レジスタからの熱雑音、または、能動素子からの散弾雑音である。高利得増幅器は、雑音信号を得るために要求される。雑音信号の振幅は、電圧基準に対する比較およびサンプリングのようなさらなるプロセスに対して、充分に大きなものである。増幅を基礎とするRNGを設計する場合の主な課題は、雑音増幅器の後のオフセット電圧である。ランダムビットストリームの品質を良くするには、オフセットを雑音標準偏差よりもかなり小さくする必要がある。第1サンプリング周波数が要求される場合は、雑音増幅器の帯域幅も課題である。更なる欠点は、電力供給、基板、または、クロスカップリングからの内部妨害と、外部妨害との存在である。適切な設計技術が採用されない場合は、外部妨害の電力レベルは、増幅器入力部におけるランダム雑音レベルよりも高い可能性がある。その結果、周期的なパターンが真正RNGの出力部に出力される可能性があり、したがって、その統計的な品質および予測不可能性に影響が及ぶ。RNGのチップカード実施においては、周期的なパターンが主に注目されている。なぜなら、充分な外部からの遮蔽を使用できないし、RNGは、雑音のあるデジタル回路の付近の共通のシリコン基板上に集積されているからである。オフセット問題に対処するために、非特許文献1(W. T. Holman、J. A. Connelly、および、A. B. Downlatabadiの“An integrated analog/digital random noise source”, IEEE Trans. Circuits and Syst. I、44巻、6号、521〜528頁、1007年6月)では、簡単なローパスフィルターが、増幅器出力部においてオフセット電圧を取り消すために使用されている。この提案されたソリューションでは、所要チップ面積が大きすぎるし、さらに、コンパレータオフセットは、充分に除去されない。非特許文献2(M. Bucci, L. Germani, R. Luzzi, P. Tommasino, A. Trifiletti, M. Varanonuovo, “A high speed truly IC random number source for Smart Card microcontrollers”, Proc. 9th IEEE International Conf. on Electronics, Circuits and Systems (ICECS 2002), 239〜242頁、2002年9月)、および非特許文献3(M. Bucci, L. Germani, R. Luzzi, P. Tommasino, A. Trifiletti, M. Varanonuovo, “A high speed IC random number source for Smart Card microcontrollers”, IEEE Trans. Circuits and Syst. I, 50巻、11号、1377〜1380頁、2003年11月)に、増幅を基礎とする真正RNGが報告されており、この真正RNGは、外部部品および大きなキャパシタを採用せずに、正確にオフセットをゼロにするシステムを特徴としている。
第2の技術を基礎とする真正RNG、すなわちジッタされた発振器のサンプリングは、基本的に、単一のD型フリップフロップのようなサンプリング素子、および2つの自由継続の発振器を備えている。2つの発振器の低速な方からの出力信号は、2つの発振器の高速な方の出力をサンプルし、ビットストリームを生成する。結果として生じるビットシーケンスは、発振器平均度数比およびその周期間ジッタから派生する。度数比を適切に選択することにより、ビットストリームは、統計的な無作為性試験が適用される場合に、よりランダムに見えるようになる。それにもかかわらず、出力ビットエントロピーは、このようなシステムにおける単なる無作為性の源である発振器のジッタによるものである。高速発振器のサンプル信号が、不均衡な平均値を特徴とする場合は、このサンプル信号は、採用されたサンプリング素子に応じて、出力ビットストリームにおける不均衡な平均値、または、そのビット対ビットの相関の増大を引きこす。いずれにせよ、このことは、考慮する主な欠点ではない。さらに、システムクロックのような周期的な妨害は、サンプリング発振器を同期化することができ、したがって、そのジッタは劇的に低下される。非特許文献4(M. Bucci, L. Germani, R. Luzzi, A. Trifiletti, M. Varanonuovo, “A high-speed oscillator-based truly random number source for Cryptographic Applications on a Smart Card IC”, IEEE Trans. Computers, 52巻、4号、403〜490頁、2003年4月)には、約10%の非常に高いジッタ対平均周期比を得ることができる、内部増幅雑音源を特徴とするサンプリング発振器を基礎とする真正RNGが報告されている。このことは、ランダムビットストリームの品質を上昇させるが、面積および電力所要量を増大させてしまう。
図1に、従来技術のジッタされた発振器のサンプリングに基づくRNGの概略図を示す。RNG源100は、高周波発振器102と、低周波発振器104と、プリスケーラ106と、サンプラー108とを備えている。サンプラー108は、Dフリップフロップである。高周波発振器102は、高速クロック信号110を生成する。高速クロック信号110は、サンプラー108への入力データである。低周波発振器104は、低速クロック信号112を生成する。低速クロック信号112は、プリスケーラ106によってプリスケールされる。プリスケーラ106は、サンプル信号114を出力する。サンプル信号114は、サンプラー108のクロック入力部に対する入力である。サンプラー108は、サンプル信号114の立ち上がりエッジにおいて高速クロック信号110をサンプルし、サンプルされる間の高速クロック信号110のサンプリング状態に応じたランダムビット116を出力する。ここで、逐次的ランダムビット116は、ランダムビットストリーム122を出力するデジタルポストプロセッサ120に対する入力である。
図2に、図1に示す高速クロック信号110と、低速クロック信号112と、サンプル信号114との特徴を示す。高速クロック信号110は、周期T高速とデューティサイクルdとを有している。低速クロック信号112は、周期T低速を有している。低速クロック信号112のエッジはジッタを備えている。サンプル信号114は、プリスケーラにおいて定義された因数によってサンプル信号112をプリスケールすることにより低速クロック信号112から生成される。ここでは、低速クロック信号112は、4の因数によってプリスケールされる。サンプル信号114は、低速クロック信号112から生成されるので、サンプル信号114のエッジもジッタを含んでいる。サンプル信号114の周期は、Tサンプルであり、サンプル信号114のジッタの標準偏差は、δ(Tサンプル)である。サンプル信号114と高速クロック信号110とのエッジは同期していない。ここでは、高速クロック信号110のエッジは、サンプル信号114のエッジよりも時間周期tだけ遅く生じる。自由継続する2つの発振器102・104(図1に示す)の周波数ビートは、非白色雑音信号を生成する。典型的にジッタの強度が低い標準セルを基礎とするRNGでは、このことが特に問題となる。さらに、高速クロック信号110のデューティサイクルdが不均衡である場合は、不均衡なランダムビットストリーム122が得られる。高速クロック信号に関連する相対的ジッタは有用である。
前述の第3の技術(すなわち、離散時間型無秩序マップに基づく技術)は、ランダムビットシーケンスを生成するための無秩序なシステムのサンプリングを利用する。非線形システムまたは部分的に線形のシステムは、その内部パラメータに対して、適切な条件下で、無秩序な挙動を示す可能性がある。2つの任意の近接した初期状態は、無秩序な条件下で、2つの全く異なるシステム進化となる。したがって、無作為性の源は、初期状態の測定におけるエラーまたは雑音、および、状態がトランジションしている間の雑音寄与である。残念ながら、無秩序なシステムを物理的なデバイスに実施する場合は、環境的変動およびプロセスの変動がパラメータの変動を引き起こし、パラメータの変動は、その無秩序な挙動を残すようにシステムに対して強制する可能性があり、その結果、周期的な軌道に基づいて進化する。無秩序なベースの真正RNGについての参考文献は、非特許文献5(T. Stojanovski and L. Kocarev, “Chaos-based random number generators - Part I: Analysis”, IEEE Trans. Circuits and Syst. I, 48巻、3号、281〜288頁、2001年3月)、および非特許文献6(T. Stojanovski, J. Pihl, L. Kocarev, “Chaos-based random number generators - Part II: Practical realization”, IEEE Trans. Circuits and Syst. I, 48巻、3号、382〜385頁、2001年3月)にある。
異なる技術が異なる利点を特徴付けていることを利用して源の全体的な品質を上げるため、非特許文献7(C. S. Petrie, J. A. Connelly, “A noise-based IC random number generator for applications in cryptography”, IEEE Trans. Circuits and Systems I, 47巻、5号、615〜621頁、2000年5月)には、上記3つのRNG技術を混合したものを採用した真正RNGが記載されている。たとえ、動作を認証するシステムに対して統計的なモデルを提供することが、異なる技術を組み合わせることにより困難であろうとも、源は、決定論的な妨害に対して非常に耐性のあるものとなっている。より効果的なソリューション、何らかの圧縮の特徴でもある、注意深く設計された、修正または非相関のアルゴリズムによる、源からのビットストリーム全体のポストプロセスを採用することができる。増大された統計的品質を有する、速度のより低いビットストリームは、ほぼランダムな高速入力ストリームから、そのエントロピー部分を選択することによって生成される。
上記のことから、各ランダム源は、たとえ好適に設計されていようとも、帯域幅制限、製造公差、経年変化、および、温度変動または決定論的な妨害のせいで、通常は、他のものとの間にある程度の相関性のあるビットストリームを生成してしまう。
そこで、本発明の目的は、高品質のランダムビットストリームを提供するための装置を提供することにある。この目的は、本願の請求項1に記載のランダムビットストリームを提供するための装置によって達成される。
本発明に係るランダムビットストリームを提供するための装置は、
第1の状態と第2の状態との間を周期的に切り替わるクロック信号(310;510)を生成するための第1の手段(302)と、
サンプリングエッジを有するサンプル信号を生成するための第2の手段(302)と、
上記サンプリングエッジを上記クロック信号のエッジ(472)と並ぶようにするために、第1の手段(302)と第2の手段(302)とを起動するための第3の手段(322;540)と、
上記サンプル信号のサンプリングエッジに応じて、上記クロック信号をサンプリングし、サンプリング結果に応じて、ランダムビット(316;516)を生成するための第4の手段(308;508)と、
上記サンプリングエッジに応じて、上記第1の手段および上記第2の手段を停止するための第5の手段(328;646)と、備えているランダムビットストリームを提供するための装置であって、
逐次ランダムビットがランダムビットストリームを形成するように構成されていることを特徴としている。
本発明の上記した構成により、サンプル信号のサンプリングエッジをサンプリングされたクロック信号のエッジに同期化することによって、高品質のランダムビットストリームを生成することを可能にした。
本発明の構成によれば、クロック信号を提供するための手段を起動する手段、及びサンプル信号を提供するための手段によって、クロック信号とサンプル信号とを同期させる。これにより、たとえクロック信号を提供するための手段とサンプル信号を提供するための手段とが非常に低いジッタレベルであったとしても、所望の品質のランダムビットストリームを生成することができる。さらには、完全にデジタル設計で上記の全構成を実行することができる。これは、より簡易な内蔵実行を可能としている。このような実行は、チップカード制御装置に用いる際に有利である。また、本発明の構成は、起動するための手段をシステムクロックに同期化させることによって、同期化したランダムビットストリームを提供することが可能となる。これにより、システムクロックのあらゆる妨害に対して補償することが可能となる。
本発明に係るランダムビットストリームを提供するための装置は、それぞれ別の技術によって達成されるアナログ回路、短い設計時間、高収量、及び高い可搬性を必要とすることなく、標準的なセルライブラリーで得ることができるデジタルゲートだけを用いて実行することができる。
好適な実施形態によれば、デジタルリング発振器を有する、クロック信号を提供する手段およびサンプル信号を提供する手段と、遅延ラインを有する同期化する手段とは、共にデジタルゲートを利用することによって実行可能である。
また、別の実施形態によれば、クロック信号のエッジへのサンプル信号のサンプリングエッジの整列は、フィードバックループと遅延ラインによって調整される。これにより、たとえサンプル信号がクロック信号よりも低いジッタであっても、平衡型ランダムビットストリームを提供することができる。さらに、フィードバックループは、クロック信号およびサンプル信号の信号経路間の全ての非対称性の補償を可能にする。サンプリングはクロック信号の周辺において行われるので、クロック信号の不平衡デューティサイクルは提供されたランダムビットストリームの平衡度に影響しない。本発明の他の利点は、次の構成に基づくものである。それは、クロック信号およびサンプル信号のビートによって、提供されたランダムビットストリームにおいてトランジションがないことを保証するランダムビットを生成した後の、クロック信号を提供するための手段およびサンプル信号を提供するための手段を停止するための手段に基づいている。これもまた、下記の非特許文献8・9に記載されているように、ランダムビットストリーム品質を検査するための単純なランタイム試験として計数されるトランジションを用いることが可能となる(非特許文献8:V. Bagini and M. Bucci, “A design of a reliable true random number generator for cryptographic applications”, Proc. Workshop on Cryptographic Hardware Embedded Systems (CHES 99), Lecture Notes in Computer Science 1717, Springer-Verlag, Heidelberg, Germany, 1999, pp.204-218.)(非特許文献9:E. Trichina, M. Bucci, D. De Seta, and R. Luzzi, “Supplemental cryptographic hardware for Smart Cards”, IEEE Micro, vol.21, no.6, pp.26-35, Nov. 2001 and NIST FIPS 140-2, Security requirement for cryptographic modules”, May 2001.)。
本発明の好ましい実施形態を、添付の図を参照して以下で説明する。
図1は、従来技術のランダム数生成器源を示す図である。
図2は、従来技術のランダム数生成器源における信号の特徴を示す図である。
図3は、本発明のランダムビットストリームを提供するための装置の概略図である。
図4は、本発明のランダムビットストリームを提供するための装置における信号の特徴を示す図である。
図5は、本発明の他の一実施形態のランダムビットストリームを提供するための装置の概略図である。
図6は、本発明の他の一実施形態のランダムビットストリームを提供するための装置の概略図である。
図7は、本発明のランダムビットストリームを提供するための装置に基づいたランダム数生成器の概略図である。
図3に、本発明のランダムビットストリームを提供するための装置300に基づいた、真正ランダム数生成器の好ましい一実施形態の概略図を示す。ランダムビットストリームを提供するための装置300は、クロック信号を提供するための手段302と、サンプル信号を提供するための手段306と、サンプリングのための手段308とを備えている。クロック信号を提供するための手段302は、サンプリングのための手段308に入力される高速クロック信号310を生成する。サンプル信号を提供するための手段306は、サンプリングのための手段308に入力されるサンプル信号314を生成する。サンプル信号314に応答して、サンプリングのための手段308は、高速クロック信号310をサンプルし、サンプリング結果に応じて、ランダムビット316を出力する。逐次的なランダムビット316は、ランダムビットストリームを形成する。
図示したランダム数生成器は、さらに、起動のための手段322と、停止のための手段328と、平均値を決定するための手段330とを備えている。起動のための手段322は、クロック信号を提供するための手段302と、サンプル信号を提供するための手段306とを制御する。起動のための手段322は、サンプル信号を提供するための手段306に入力される開始信号340と、クロック信号を提供するための手段302に入力されるイネーブル(Enable)信号342とを出力する。手段302・306は、イネーブル信号342と開始信号340とに応答して、第1クロック信号310と、サンプル信号314とを生成し始める。クロック信号を提供するための手段302と、サンプル信号を提供するための手段306とは、停止のための手段328によって停止する。したがって、停止のための手段328には、サンプル信号314が入力する。サンプル信号314に応答して、停止のための手段328は、手段302・306に入力される停止信号346を生成する。停止信号346に応答して、手段302・306は、高速クロック信号310とサンプル信号314との生成を停止する。
他の一実施形態では、開始信号340とイネーブル信号342とを調整することができる。したがって、平均値を決定するための手段330は、ランダムビットストリーム316に接続されている。平均値を決定するための手段330は、逐次的なランダムビット316の平均値を決定する。上記手段330は、制御信号348を出力する。制御信号348は、逐次的なランダムビット316の決定された平均値に応じて、起動のための手段322を調整する。
図4に、図3に示す開始信号340と、高速クロック信号310と、サンプル信号314と、図5〜図7に示すdone信号との特徴を示す。図4から分かるように、サンプル信号314は、開始信号314に応答している。サンプル信号314は、Tサンプルの時間周期を有している。半分の時間周期Tサンプル/2の後、サンプリングエッジ470が生じる。サンプル信号314の最初の立ち上がりエッジであるサンプリングエッジ470は、第1の状態と第2の状態との間を周期的に切り替える高速クロック信号310のエッジ472に整列している。サンプリングエッジ470と高速クロック信号310のエッジ472とは、遅延時間474によって整列される。遅延時間472は、起動のための手段322(図3に示す)によって制御されており、サンプル信号をプロセスするための手段306を起動した後、クロック信号を提供するための手段302が起動されるまでの時間である。こうしてエッジ470・472は整列される。
サンプリングエッジ470とクロック信号のエッジ472との整列により、周波数ビード(frequency beating)が回避され、特に低くジッタされたサンプリングクロック信号の存在下では、ランダムビットストリームデータ品質が最大化される。さらに、不均衡デューティサイクルdは、生成されたランダムビットストリーム316(図3に示す)の均衡に影響を及ぼさない。done信号417は、サンプリングエッジ470に応答して起動され、ランダムビット316の生成を示す。
図5に、ランダムビットストリームを提供するための装置の他の実施形態を示す。ランダムビットストリームを提供するための装置500は、高周波リング発振器502によって形成されたクロック信号を提供するための手段と、低周波リング発振器504とコンフィギュレーション可能なプリスケーラ(configurable prescaler)506とによって形成されたサンプル信号を提供するための手段と、サンプリング素子またはサンプラー508によって形成されたサンプリングのための手段とを備えている。高周波発振器502は、サンプラー508に入力される、図4に示す高速クロック信号310のような高速クロック信号510を生成する。低周波発振器504は、プリスケーラ506に入力される、図2に示す低速クロック信号112のような低速クロック信号512を生成する。プリスケーラ506は、低速クロック信号512をプリスケールし、サンプラー508に入力される、図4に示すサンプル信号314のようなサンプル信号514を出力する。サンプラー508は、サンプル信号514のサンプリングエッジに応答して、高速クロック信号510をサンプルする。サンプリングの結果に対応して、サンプラー508は、ランダムビット516とdone信号517とを出力する。done信号517は、新しいランダムビット516の生成を表し、発振器502・504を停止するために使用される。装置500は、さらに、開始信号540を遅延し、イネーブル信号542を出力するための手段524を備えている。遅延のための手段524は、図3に示すような起動のための手段322の一部である。開始信号540は、低周波発振器504を起動する。イネーブル信号542は、高周波発振器502を起動する。遅延のための手段524は、開始信号540を図4に示すような遅延時間だけ遅延することにより、サンプリングエッジと高速クロック信号510のエッジとを整列する。遅延のための手段524は、制御信号548に応答する。
制御信号548は、サンプル信号のサンプリングエッジを高速クロック信号のエッジに同期させるための、図3において説明したような、フィードバックループの一部である。その結果、たとえ低周波発振器504とプリスケーラ506とが高速クロック信号510の周期に関して低いジッタを特徴とするとしても、逐次的なランダムビット516によって形成されたランダムビットストリームは均衡である。
サンプリングエッジのジッタの標準偏差σ’(Tサンプル)を調整するために、プリスケーラ506のプリスケール因数は調整可能である。
図6に、ランダムビットストリームを提供するための装置600の他の実施形態の概略図を示す。尚、図5に既に記載し説明された構成については、同じ参照番号を付し、その説明を省略する。この実施形態では、低周波リング発振器504は、低周波リング発振器604と、線形フィードバックシフトレジスタ(LFSR; linear feedback shift register)605とを備えている。低周波リング発振器604とLFSR605とには、開始信号540が入力される。LFSR605に対して、開始信号540はリセット信号である。LFSR605は、低速クロック信号512が入力するように構成されており、低速クロック信号512によってクロックされる。LFSR605は、低周波リング発振器604に接続されていることにより、低周波リング発振器604の平均周期を妨害する。
開始信号514を遅延するための手段524は、第1遅延ライン624と、第2遅延ライン625とを備えている。第1遅延ライン624は、大まかな遅延を行う線であり、第2遅延ライン625は、細かい遅延を行うラインである。2つの遅延ライン624・625を調整するために、制御信号548は、図5に示すように、大まかな制御を行う信号648と、細かい制御を行う信号649とを有している。
本実施形態では、停止のための手段は、停止信号646によって形成されている。停止信号646は、サンプル信号514に等しく、高周波発振器502と、低周波発振器604とに入力する。サンプル信号514のサンプリングエッジと、高速クロック信号510のエッジとを同期させるために、発振器502・604は、各サンプリング工程の後に停止され、開始信号540によって提供される外部命令に応じて再び開始される。高速リング発振器502は、低周波リング発振器に関する遅延時間の後に開始する。図3において説明したように、ランダムビット516出力ストリームの平均値に応じて、フィードバックループによって、遅延時間を調整することができ、したがって、エッジの同期化が得られる。遅延時間は、大まかな制御を行う信号648によって制御される大まかな遅延を行うライン624と、細かい制御を行う信号649によって制御される細かい遅延を行うライン625とによって調整される。フィードバックループのトランジション応答の速度を上げるために、遅延のための調整可能な手段524は、2つの異なる粒状の遅延ライン624・625によって実施されている。フィードバックループは、高速クロック信号510の信号経路と、開始信号540からサンプラー508への低速クロック信号512およびサンプル信号514の信号経路との間の各非対称を、ワイヤ伝播遅延時間とサンプラーセットアップ時間とを含めて、補償する。
低周波発振器604が周期的な妨害に同期するのを回避するため、低速クロック信号512の平均周期の擬似ランダムスクランブリングが採用される。したがって、低周波発振器504は、擬似ランダムスクランブリングを行うためのLFSR605を備えており、周期的な妨害との同期化が回避される。LFSR605は、新しい生成サイクルの開始時に、開始信号540に応答して、再びそのリセット値から開始する。したがって、装置600が新しいランダムビット516を生成し始める度に、同じ擬似ランダムシーケンスが繰り返される。その結果、プリスケーラ506の後、サンプル信号514の周期における変動は、低周波発振器604自体のジッタによるものであり、擬似ランダム変調は見られない。したがって、何らかの人工的な擬似無作為性をランダムビットストリーム516に導入せずに、同期化問題は対処される。
上記で説明した実施形態では、低周波発振器は、開始信号の開始パルスの立ち下がりエッジにおいてイネーブルされ、高速発振器は、フィードバックループによって調整される遅延の後にイネーブルされる。サンプリング信号の第1の立ち上がりエッジにおいてクロック信号をサンプリングした後、doneパルスが生成され、双方の発振器は、停止され、新しいサイクルを再び開始することが出来る。done信号の代わりに、サンプル信号が発振器に入力して、サンプルエッジによって停止する構成としてもよい。なお、開始パルスがシステムクロックに同期している場合は、ランダムビット生成も同期するであろう。その結果、クロックからの何らかの妨害は、各生成サイクルの間は同じものであり、フィードバックループによって補償されている。上記信号は、デューティサイクルとトランジションとに関しては異なる特徴を有していてもよいことは明らかである。
図7に、図6に示すようなランダムビット源を提供するための、提案された装置600を採用した真正ランダム数生成器の最上位のアーキテクチャを示す。真正ランダム数生成器は、ランダムビットストリームを提供するための装置600と、最上位制御器(RNGP CTRL)750と、遅延ライン制御器752と、ポスト処理レジスタ754とを含む主要な4つの機能ブロックを備えている。ポスト処理レジスタ754は、装置600とdone信号517とによって生成された逐次的なランダムビットによって形成されるランダムビットストリーム516に接続されており、32ビット幅のランダムビット出力ワード760を出力する。遅延ライン制御器752は、ランダムビットストリーム516とdone信号517とに接続されており、大まかな制御を行う信号648と、細かい制御を行う信号649とを生成する。最上位制御器750は、done信号517と、ランダムビットストリーム516と、出力信号760とに接続されている。さらに、最上位制御器750は、要求信号762を入力し、肯定応答信号764と、警告信号766と、エラー信号768とを出力する。
新しいランダムワード760に対する要求が要求信号762を介して受信される場合、ランダムビット516は、装置600によって生成され、ポスト処理レジスタ754によって処理される。最上位制御器750は、ランダムビットストリーム516における所望のトランジション数が達成されるまで、開始信号540によって、ランダムビット516の生成を制御する。次に、肯定応答信号764が立ち上がるか、または、最大圧縮率の後に検出されるトランジションがあまりにも少ない場合は、警告信号766が起動する。したがって、ランダムビットストリームの圧縮率は、ランダムビットストリーム516の統計的品質に応じて劇的に変化する。ランダムビットストリーム516のこのような適応性ポスト処理は、ランダムビットストリームを提供するための提案された装置600の更なる利点である。
上記の実施形態では、インバーターのチェーンまたはバッファのチェーンを、遅延ラインの代わりに使用することができる。他の一実施形態では、第2手段は、サンプリング周波数に対して制御可能なように配置されている。その結果、処理量とランダム数品質とを交換することができる。このことにより、ランダムビットストリームを提供するための装置を異なるアプリケーションへ適用することができる。
従来技術のランダム数生成器源を示す図である。 従来技術のランダム数生成器源の信号の特徴を示す図である。 本発明のランダムビットストリームを提供するための装置の概略図である。 本発明のランダムビットストリームを提供するための装置の信号の特徴を示す図である。 本発明の他の一実施形態のランダムビットストリームを提供するための装置の概略図である。 本発明の他の一実施形態のランダムビットストリームを提供するための装置の概略図である。 本発明のランダムビットストリームを提供するための装置に基づいたランダム数生成器の概略図である。
符号の説明
100 ランダム数生成器源
102 高周波発振器
104 低周波発振器
106 プリスケーラ
108 サンプラー
110 高速クロック信号
112 低速クロック信号
114 サンプル信号
116 ランダムビット信号
120 デジタルポストプロセッサ
122 ランダムビットストリーム
300 ランダムビットストリームを提供するための装置
302 クロック信号を提供するための手段
306 サンプル信号を提供するための手段
308 サンプリングのための手段
310 高速クロック信号
314 サンプル信号
316 ランダムビット
322 起動のための手段
328 停止のための手段
330 平均値を決定するための手段
340 開始信号
342 イネーブル信号
346 停止信号
348 制御信号
417 done信号
470 サンプリングエッジ
472 高速クロック信号のエッジ
474 遅延時間
500 ランダムビットストリームを提供するための装置
502 高周波発振器
504 低周波発振器
506 プリスケーラ
508 サンプラー
510 高速クロック信号
512 低速クロック信号
514 サンプル信号
516 ランダムビット
517 done信号
524 遅延のための手段
540 開始信号
548 制御信号
600 ランダムビット信号を提供するための装置
604 低速発振器
605 線形フィードバックシフトレジスタ
624 大まかな遅延を行う線
625 細かい遅延を行う線
646 停止信号
648 大まかな制御を行う信号
649 細かい制御を行う信号
750 制御器
752 遅延線制御器
754 ポスト処理レジスタ
760 ランダムワード
762 要求信号
764 肯定応答信号
766 警告信号
768 エラー信号

Claims (8)

  1. 第1の状態と第2の状態との間を周期的に切り替わるクロック信号(510)を生成するための第1の手段(502)と、
    サンプリングエッジを有するサンプル信号を生成するための第2の手段(504;506)と、
    上記サンプリングエッジを上記クロック信号のエッジ(472)と並ぶようにするために、上記第1の手段と上記第2の手段とを起動するための第3の手段と
    上記サンプル信号のサンプリングエッジに応じて、上記クロック信号をサンプリングし、サンプリング結果に応じて、ランダムビット(516)を生成するための第4の手段(508)と、
    上記サンプリングエッジに応じて、上記第1の手段および上記第2の手段を停止するための第5の手段(646)と、
    逐次ランダムビット(516)の平均値を決定するとともに、上記平均値に基づいて制御信号(548;648、649)を生成するための第6の手段(752)と、を備えているランダムビットストリームを提供するための装置であって、
    上記第3の手段は、上記第1の手段(502)を起動するための開始信号(540)を、遅延時間(474)を用いて遅延するための遅延ライン(524)を有しており、該遅延時間は、上記制御信号(548;648、649)に対応しているとともに、クロック信号(510)のエッジ(472)にサンプリングエッジ(470)が整列するように調整するように構成されており、
    逐次ランダムビットがランダムビットストリームを形成するように構成されていることを特徴とするランダムビットストリームを提供するための装置。
  2. 上記第1の手段は、第1の発振器(502)であることを特徴とする請求項1に記載のランダムビットストリームを提供するための装置。
  3. 上記第2の手段は、
    別のクロック信号(512)を生成するための第2の発振器(504)と、
    上記別のクロック信号をプリスケールし、サンプル信号(514)を生成するためのプリスケーラ(506)と、を有していることを特徴とする請求項1または2に記載のランダムビットストリームを提供するための装置。
  4. 上記サンプル信号(514)のサンプリングエッジ(470)がジッタされた、サンプリングエッジのジッタの標準偏差σ’(Tサンプル)は、クロック信号(510)の周期(T高速)よりも小さいことを特徴とする請求項1から3の何れか1項に記載のランダムビットストリームを提供するための装置。
  5. 上記第2の発振器(504)は、上記別のクロック信号(512)の平均周期をスクランブルするための第7の手段(605)を有していることを特徴とする請求項3または4に記載のランダムビットストリームを提供するための装置。
  6. ランダムビットストリームのポスト処理を行うとともに、ランダムビットストリームの統計的品質に依存した警告信号(766)を生成するための手段(750、754)をさらに備えていることを特徴とする請求項1から5の何れか1項に記載のランダムビットストリームを提供するための装置。
  7. 上記第1の発振器および第2の発振器(502、504)は、リング発振器であることを特徴とする請求項3から6の何れか1項に記載のランダムビットストリームを提供するための装置。
  8. デジタルゲートによって実現されることを特徴とする請求項1から7の何れか1項に記載のランダムビットストリームを提供するための装置。
JP2006551777A 2004-02-04 2005-01-31 ランダムビットストリームを提供するための装置 Expired - Fee Related JP4307493B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP04002484A EP1562291B1 (en) 2004-02-04 2004-02-04 Apparatus for providing a random bit stream
PCT/EP2005/000926 WO2005076474A1 (en) 2004-02-04 2005-01-31 Apparatus for providing a random bit stream

Publications (2)

Publication Number Publication Date
JP2007520959A JP2007520959A (ja) 2007-07-26
JP4307493B2 true JP4307493B2 (ja) 2009-08-05

Family

ID=34673670

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006551777A Expired - Fee Related JP4307493B2 (ja) 2004-02-04 2005-01-31 ランダムビットストリームを提供するための装置

Country Status (6)

Country Link
US (1) US7664807B2 (ja)
EP (1) EP1562291B1 (ja)
JP (1) JP4307493B2 (ja)
CN (1) CN1938948B (ja)
DE (1) DE602004005959T2 (ja)
WO (1) WO2005076474A1 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE339820T1 (de) * 2000-03-23 2006-10-15 Infineon Technologies Ag Vorrichtung und verfahren zur erhöhung der betriebssicherheit und gleichmässigkeit einer rauschquelle
EP1686458B1 (en) * 2005-01-28 2008-07-23 Infineon Technologies AG Oscillator-based random number generator
US7590674B2 (en) * 2005-06-30 2009-09-15 Conexant Systems, Inc. Method and apparatus for generating a random bit stream
US7720896B2 (en) * 2006-06-05 2010-05-18 Infineon Technologies Ag Method and apparatus for post-processing a raw bit sequence of a noise source
KR100730086B1 (ko) * 2006-07-10 2007-06-19 삼성전기주식회사 듀얼 시스템 송수신장치
US20090223738A1 (en) * 2008-02-22 2009-09-10 Yamaha Corporation Sound absorbing structure and vehicle component having sound absorption property
DE102008022918A1 (de) 2008-05-09 2009-12-03 Siemens Aktiengesellschaft Vorrichtung und Verfahren zum Erzeugen einer Zufallsbitfolge
US9335971B1 (en) * 2009-02-27 2016-05-10 Calamp Corp. High entropy random bit source
US20100281088A1 (en) * 2009-04-29 2010-11-04 Psigenics Corporation Integrated true random number generator
JP5259830B2 (ja) 2009-09-29 2013-08-07 株式会社東芝 乱数生成回路
CN102104370B (zh) * 2009-12-16 2013-04-24 华东光电集成器件研究所 伪随机噪声信号产生电路
CN101788899B (zh) * 2010-01-08 2011-08-24 浙江大学 一种低功耗数字真随机源
US20130191427A1 (en) * 2010-03-22 2013-07-25 Astrium Limited Pseudo-noise generator
TWI554036B (zh) * 2014-12-27 2016-10-11 群聯電子股份有限公司 資料取樣電路模組、資料取樣方法及記憶體儲存裝置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4355366A (en) * 1980-11-28 1982-10-19 Ncr Corporation Circuitry for minimizing auto-correlation and bias in a random number generator
FR2768276B1 (fr) * 1997-09-10 2000-06-02 Inside Technologies Generateur d'alea
US6362695B1 (en) * 1999-12-21 2002-03-26 Intel Corporation Method and apparatus to produce a random bit sequence
DE10003472C1 (de) * 2000-01-27 2001-04-26 Infineon Technologies Ag Zufallszahlengenerator
US6631390B1 (en) * 2000-03-06 2003-10-07 Koninklijke Philips Electronics N.V. Method and apparatus for generating random numbers using flip-flop meta-stability
US6512405B1 (en) * 2002-01-14 2003-01-28 Ip-First Llc Oscillator bias variation mechanism
DE10213269A1 (de) * 2002-03-25 2003-10-23 Infineon Technologies Ag Zufallszahlengenerator
DE60309703T2 (de) * 2003-09-04 2007-10-11 Infineon Technologies Ag Vorrichtung zur Erzeugung eines Takt-Signals mit Jitter und zum Erzeugen von Zufallsbits

Also Published As

Publication number Publication date
EP1562291B1 (en) 2007-04-18
CN1938948B (zh) 2010-10-13
CN1938948A (zh) 2007-03-28
DE602004005959D1 (de) 2007-05-31
JP2007520959A (ja) 2007-07-26
DE602004005959T2 (de) 2007-12-20
EP1562291A1 (en) 2005-08-10
WO2005076474A1 (en) 2005-08-18
US7664807B2 (en) 2010-02-16
US20070043797A1 (en) 2007-02-22

Similar Documents

Publication Publication Date Title
JP4307493B2 (ja) ランダムビットストリームを提供するための装置
US7720895B2 (en) Random number generator and method for generating random numbers
US8744073B2 (en) Digital random number generator based on digitally-controlled oscillators
US7376687B2 (en) Pseudo-random number generator
US9513872B2 (en) Random number generator
US20100281088A1 (en) Integrated true random number generator
Bucci et al. A high-speed IC random-number source for smartcard microcontrollers
KR20140110142A (ko) 난수 발생기
US20090327381A1 (en) True random number generator
WO2021232255A1 (zh) 真随机数发生器及电子设备
Bock et al. An offset-compensated oscillator-based random bit source for security applications
Fujieda On the feasibility of TERO-based true random number generator on Xilinx FPGAs
US7925684B2 (en) Method and apparatus for distributing random elements
US9525457B1 (en) Spread spectrum clock generation using a tapped delay line and entropy injection
US11567733B2 (en) System, method and apparatus for race-condition true random number generator
Dejun et al. Research of true random number generator based on PLL at FPGA
Tebelmann et al. On-chip side-channel analysis of the loop PUF
JP6697776B2 (ja) 固有情報生成装置
Bucci et al. A high speed truly IC random number source for smart card microcontrollers
Ergun et al. Truly random number generators based on a double-scroll attractor
Ergün Modeling and analysis of chaos-modulated dual oscillator-based random number generators
Bucci et al. A novel concept for stateless random bit generators in cryptographic applications
Chauhan et al. Intensifying Challenge Obfuscation by Cascading FPGA RO-PUFs for Random Number Generation
Kohlbrenner The design and analysis of a true random number generator in a field programmable gate array
Rozic et al. Random numbers generation: investigation of narrowtransitions suppression on FPGA

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090106

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090303

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: 20090331

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: 20090428

R150 Certificate of patent or registration of utility model

Ref document number: 4307493

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120515

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130515

Year of fee payment: 4

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