JPH0658623B2 - 乱数発生器 - Google Patents
乱数発生器Info
- Publication number
- JPH0658623B2 JPH0658623B2 JP1211541A JP21154189A JPH0658623B2 JP H0658623 B2 JPH0658623 B2 JP H0658623B2 JP 1211541 A JP1211541 A JP 1211541A JP 21154189 A JP21154189 A JP 21154189A JP H0658623 B2 JPH0658623 B2 JP H0658623B2
- Authority
- JP
- Japan
- Prior art keywords
- random number
- shift register
- circuit
- stages
- delay
- 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 - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/582—Pseudo-random number generators
- G06F7/584—Pseudo-random number generators using finite field arithmetic, e.g. using a linear feedback shift register
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/588—Random number generators, i.e. based on natural stochastic processes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K3/00—Circuits for generating electric pulses; Monostable, bistable or multistable circuits
- H03K3/84—Generating pulses having a predetermined statistical distribution of a parameter, e.g. random pulse generators
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/58—Indexing scheme relating to groups G06F7/58 - G06F7/588
- G06F2207/581—Generating an LFSR sequence, e.g. an m-sequence; sequence may be generated without LFSR, e.g. using Galois Field arithmetic
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/58—Indexing scheme relating to groups G06F7/58 - G06F7/588
- G06F2207/583—Serial finite field implementation, i.e. serial implementation of finite field arithmetic, generating one new bit or trit per step, e.g. using an LFSR or several independent LFSRs; also includes PRNGs with parallel operation between LFSR and outputs
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Manipulation Of Pulses (AREA)
- Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Description
【発明の詳細な説明】 A.産業上の利用分野 本発明は、一般に半導体回路に関し、具体的には、乱数
発生のための改良集積回路に関する。
発生のための改良集積回路に関する。
B.従来技術 高品質の乱数発生器が利用できるということは、暗号シ
ステムの有効性にとつて重要である。超大規模集積回路
(LLSI)の出現と、VLSI中で暗号システムが具
体化されるようになつて以来その一部の乱数発生器はV
LSI回路の処理に適合することが重要になつた。従
来、種々の擬似乱数発生器が開発されているが、これ等
は暗号システムの裏をかきたいという意志を持つ盗聴者
によつてすべて侵害されている。
ステムの有効性にとつて重要である。超大規模集積回路
(LLSI)の出現と、VLSI中で暗号システムが具
体化されるようになつて以来その一部の乱数発生器はV
LSI回路の処理に適合することが重要になつた。従
来、種々の擬似乱数発生器が開発されているが、これ等
は暗号システムの裏をかきたいという意志を持つ盗聴者
によつてすべて侵害されている。
乱数発生の従来の一つの方法は、線形フイードバツク・
シフト・レジスタを使用するものである。たとえば、1
967年米国サン・フランシスコ市のホールデン・デイ
社によつて出版されたS.W.グロム著“シフト・レジ
スタ系列”(S.W.Glomb,“Shift Register Sequen
ces”Holden‐Day,Inc.,San Francisco,1967)
は、偶然性(ランダムネス)についてのいくつかの規準
を満足する、最大長線形フイードバツク・シフト・レジ
スタを開示している。これ等の規準は3つあるが、第1
は、各周期中で、1の数と0の数が1個以上違わないと
いうことである。第2の規準は、周期中で半分はラン長
が1であり、1/4はラン長が2であり、1/8はラン
長が3である等々ということである。さらに、これ等の
ラン長の各々について、1のランと同数の0のランが存
在する。第3の規準は、0シフトの場合の自己相関関数
は1であり、全ての他のシフトについては−1/nであ
ることである(nはシフト・レジスタの段数である)。
シフト・レジスタを使用するものである。たとえば、1
967年米国サン・フランシスコ市のホールデン・デイ
社によつて出版されたS.W.グロム著“シフト・レジ
スタ系列”(S.W.Glomb,“Shift Register Sequen
ces”Holden‐Day,Inc.,San Francisco,1967)
は、偶然性(ランダムネス)についてのいくつかの規準
を満足する、最大長線形フイードバツク・シフト・レジ
スタを開示している。これ等の規準は3つあるが、第1
は、各周期中で、1の数と0の数が1個以上違わないと
いうことである。第2の規準は、周期中で半分はラン長
が1であり、1/4はラン長が2であり、1/8はラン
長が3である等々ということである。さらに、これ等の
ラン長の各々について、1のランと同数の0のランが存
在する。第3の規準は、0シフトの場合の自己相関関数
は1であり、全ての他のシフトについては−1/nであ
ることである(nはシフト・レジスタの段数である)。
グロム(Glomb)等が指摘しているように、この線形フ
イードバツク・シフト・レジスタの系列は本来周期的で
あり、従つてこのシフト・レジスタの出力は真の乱数で
なく、擬似乱数であるに過ぎない。従つて、このシフト
・レジスタは暗号システムの部品としての有効性は少な
いが、従来技術の慣習では、線形フイードバツク・シフ
ト・レジスタ段数を十分多くして、周期の持続時間を増
大していた。たとえば、1MHzのクロツク周波数で走行
する、64ビツトの最大長フイードバツク・レジスタ
は、585000年間も同じ値を出力しない。
イードバツク・シフト・レジスタの系列は本来周期的で
あり、従つてこのシフト・レジスタの出力は真の乱数で
なく、擬似乱数であるに過ぎない。従つて、このシフト
・レジスタは暗号システムの部品としての有効性は少な
いが、従来技術の慣習では、線形フイードバツク・シフ
ト・レジスタ段数を十分多くして、周期の持続時間を増
大していた。たとえば、1MHzのクロツク周波数で走行
する、64ビツトの最大長フイードバツク・レジスタ
は、585000年間も同じ値を出力しない。
しかしながら、暗号の応用では、線形フイードバツク・
シフト・レジスタによる方法は、これが決定論的である
ために、侵害を受けやすい。このシフト・レジスタは、
現在の状態がわかると、すべての将来及びすべての過去
の状態が予測できる。従来技術の線形フイードバツク・
シフト・レジスタの結果の出力が優れた統計的性質を有
することも事実であるが、その結果は不幸にして、完全
に予測可能である。
シフト・レジスタによる方法は、これが決定論的である
ために、侵害を受けやすい。このシフト・レジスタは、
現在の状態がわかると、すべての将来及びすべての過去
の状態が予測できる。従来技術の線形フイードバツク・
シフト・レジスタの結果の出力が優れた統計的性質を有
することも事実であるが、その結果は不幸にして、完全
に予測可能である。
C.発明が解決しようとする問題点 本発明の目的は、改良乱数発生器を与えることにある。
本発明の他の目的は、VLSIの製造過程と両立する、
改良乱数発生器を与えることにある。
改良乱数発生器を与えることにある。
本発明の他の目的は、統計的品質の高い、非決定論的な
乱数を発生できる、改良乱数発生器を与えることにあ
る。
乱数を発生できる、改良乱数発生器を与えることにあ
る。
D.問題点を解決するための手段 本発明の目的は、フイードバツク・シフト・レジスタの
出力を低周波でサンプルするか、自走リング・オツシレ
ータの発振周波数を変えることによつて達成される。第
1の実施例では、自走リング・オツシレータを使用し
て、サンプルされる線形フイードバツク・シフト・レジ
スタを駆動する。シフト・レジスタの状態は、線形フイ
ードバツク・シフト・レジスタを低周波でサンプルする
ことによつて外部から守られる。低周波のサンプリング
によつて、次のサンプルが取出される前のシフト・レジ
スタの情報はクリヤされる。これによつて外部に得られ
るシフト・レジスタの状態に関する情報の量は減少す
る。又、電力原の電圧及び他の回路パラメータを変動さ
せると、リング・オツシレータによつて発生される周波
数が線形フイードバツク・シフト・レジスタへのクロツ
ク入力に印加される時は、線形フイードバツク・シフト
・レジスタは非周期的に動作する。線形フイードバツク
・シフト・レジスタの出力が、外部のクロツク信号によ
つて、周期的クロツク速度で駆動されるサンプリング・
フリツプ・フロツプによつてサンプルされる。線形フイ
ードバツク・シフト・レジスタからの非同期的直列乱数
出力は、サンプリング・フリツプ・フロツプによつて周
期的にサンプルされ、擬似乱数列からランダムな偏差を
生ずる。外部のクロツキング信号が自走リング・カウン
タの周波数よりも低いサンプリング周波数に保持される
と、侵害者によるシフト・レジスタの状態による発見が
防止される。サンプリング・フリツプ・フロツプで生ず
る競合状態は、線形フイードバツク・シフト・レジスタ
の出力を全部分析することに依存していた侵害者の作業
を著しく複雑にする。
出力を低周波でサンプルするか、自走リング・オツシレ
ータの発振周波数を変えることによつて達成される。第
1の実施例では、自走リング・オツシレータを使用し
て、サンプルされる線形フイードバツク・シフト・レジ
スタを駆動する。シフト・レジスタの状態は、線形フイ
ードバツク・シフト・レジスタを低周波でサンプルする
ことによつて外部から守られる。低周波のサンプリング
によつて、次のサンプルが取出される前のシフト・レジ
スタの情報はクリヤされる。これによつて外部に得られ
るシフト・レジスタの状態に関する情報の量は減少す
る。又、電力原の電圧及び他の回路パラメータを変動さ
せると、リング・オツシレータによつて発生される周波
数が線形フイードバツク・シフト・レジスタへのクロツ
ク入力に印加される時は、線形フイードバツク・シフト
・レジスタは非周期的に動作する。線形フイードバツク
・シフト・レジスタの出力が、外部のクロツク信号によ
つて、周期的クロツク速度で駆動されるサンプリング・
フリツプ・フロツプによつてサンプルされる。線形フイ
ードバツク・シフト・レジスタからの非同期的直列乱数
出力は、サンプリング・フリツプ・フロツプによつて周
期的にサンプルされ、擬似乱数列からランダムな偏差を
生ずる。外部のクロツキング信号が自走リング・カウン
タの周波数よりも低いサンプリング周波数に保持される
と、侵害者によるシフト・レジスタの状態による発見が
防止される。サンプリング・フリツプ・フロツプで生ず
る競合状態は、線形フイードバツク・シフト・レジスタ
の出力を全部分析することに依存していた侵害者の作業
を著しく複雑にする。
本発明の第2の実施例では、擬似乱数発生器として、自
走リング・オツシレータの変形を使用する。ここで自走
リング・オツシレータのフイードバツク・ループに、排
他的OR回路が導入される。その接続はこれによつて通
常の線形フイードバツク・シフト・レジスタの場合と同
じように直列乱数系列が発生されるように行われる。こ
の実施例でも、低周波サンプリングを使用して、外部で
得られる発生器の状態に関する情報が減少される。時間
的に変動する、電力源電圧と他の回路パラメータによつ
て、自走擬似乱数発生器の動作周波数が、発生器の出力
に非周期的な直列乱数系列を発生する。自走擬似乱数発
生器によつて発生される乱数系列の他の不確かさは、発
生器に接続される排他的OR回路の入力に生ずる競合状
態によつて生ずる。この状態は電力源電圧及び他の回路
パラメータの変動により、発生器に遅延の不均衡が生じ
た時に生じ、擬似乱数系列の第1の部分から第2の部分
に予測不能なスキツプを生ずる。自走擬似乱数発生器の
出力にサンプリング・フリツプ・フロツプが接続され、
このリツプ・フロツプが周期的な外部クロツク信号によ
つて駆動される。従つて非周期的な擬似乱数の周期的な
サンプリングによつて生ずる競合状態に加えて、排他的
OR回路の競合状態により、系列の第1の部分から第2
の部分への予測不能なスキツプにより、発生器によつて
発生される結果の乱数に非予測性が追加される。これに
よつて、システム破りをして、発生器によつて発生され
る次の乱数を予測しようとする侵害者の試みはさらに複
雑になる。
走リング・オツシレータの変形を使用する。ここで自走
リング・オツシレータのフイードバツク・ループに、排
他的OR回路が導入される。その接続はこれによつて通
常の線形フイードバツク・シフト・レジスタの場合と同
じように直列乱数系列が発生されるように行われる。こ
の実施例でも、低周波サンプリングを使用して、外部で
得られる発生器の状態に関する情報が減少される。時間
的に変動する、電力源電圧と他の回路パラメータによつ
て、自走擬似乱数発生器の動作周波数が、発生器の出力
に非周期的な直列乱数系列を発生する。自走擬似乱数発
生器によつて発生される乱数系列の他の不確かさは、発
生器に接続される排他的OR回路の入力に生ずる競合状
態によつて生ずる。この状態は電力源電圧及び他の回路
パラメータの変動により、発生器に遅延の不均衡が生じ
た時に生じ、擬似乱数系列の第1の部分から第2の部分
に予測不能なスキツプを生ずる。自走擬似乱数発生器の
出力にサンプリング・フリツプ・フロツプが接続され、
このリツプ・フロツプが周期的な外部クロツク信号によ
つて駆動される。従つて非周期的な擬似乱数の周期的な
サンプリングによつて生ずる競合状態に加えて、排他的
OR回路の競合状態により、系列の第1の部分から第2
の部分への予測不能なスキツプにより、発生器によつて
発生される結果の乱数に非予測性が追加される。これに
よつて、システム破りをして、発生器によつて発生され
る次の乱数を予測しようとする侵害者の試みはさらに複
雑になる。
E.実施例 第1図は、自走リング・オツシレータを有する、サンプ
ルされる線形フイードバツク・シフト・レジスタによる
乱数発生器の第1の実施例の論理ブロツク図である。N
段の線形フイードバツク・シフト・レジスタ20は、第
3A図の回路図に示したような、たとえばD型フリツプ
・フロツプでよいシフト・レジスタの素子の直列接続列
より成る。
ルされる線形フイードバツク・シフト・レジスタによる
乱数発生器の第1の実施例の論理ブロツク図である。N
段の線形フイードバツク・シフト・レジスタ20は、第
3A図の回路図に示したような、たとえばD型フリツプ
・フロツプでよいシフト・レジスタの素子の直列接続列
より成る。
第3A図のフリツプ・フロツプをシフト・レジスタの素
子として使用する時の端子の接続方法は第3B図に示さ
れている。第1図の線形フイードバツク・シフト・レジ
スタ20のシフト・レジスタ段1、2、…、i、i+
1、…、nは出力周波数f0を有する自走リング・オツ
シレータ22(第2図)によつてクロツクされる。自走
リング・オツシレータ22は、たとえば第2図に示した
ようにカスケード接続された、相補型MOS反転器の列
より構成できる。ドレイン電圧Vdd及び大地電位G
ndは第2図に示すように電力源40によつて供給され
る。この電力源は完全に一定のDC電圧を発生するよう
に構成されていてはならない。代表的な電力源電圧の時
間変動を第13図に示す。大規模集積回路に電力を供給
する代表的な電力源は、略±10%の公差で動作してい
る。Vddと大地電位Gd間の差が5VであるCMOS
技術では、電力源の経時変化は±0.5Vである。この
電圧変動の周波数はランダムであり、電力源及びその供
給線上の雑音によつて発生され、又同じ半導体チツプ上
の他の回路をスイツチするオン・チツプ雑音源40′に
よつても発生される。すべてのこのようなスイツチング
及び雑音の発生は比較的高頻度で行われ、電力源の電圧
Vddの一定の公称値にランダムに変化する雑音波形を
加えている。第12図は、電力源40からのVddが時
間的に変化することによる結果をしている。第12図
は、電力源電圧Vddの変動の関数として、リング・オ
ツシレータのカスケード接続反転器列中の1反転器段当
りの遅延を示したグラフである。CMOS反転器リング
・オツシレータの最良のケース(BC)でも、電力源電
圧が約10%変ると、段当りの遅延は約10%変化する
ことが明らかであろう。第12図に示した回路の動作の
より悪いケース(WC)では、変動は±10%以上にも
なる。この結果、リング・オツシレータ22によつて発
生される周波数f0は一定値ではなく、予測できないよ
うに変化する。
子として使用する時の端子の接続方法は第3B図に示さ
れている。第1図の線形フイードバツク・シフト・レジ
スタ20のシフト・レジスタ段1、2、…、i、i+
1、…、nは出力周波数f0を有する自走リング・オツ
シレータ22(第2図)によつてクロツクされる。自走
リング・オツシレータ22は、たとえば第2図に示した
ようにカスケード接続された、相補型MOS反転器の列
より構成できる。ドレイン電圧Vdd及び大地電位G
ndは第2図に示すように電力源40によつて供給され
る。この電力源は完全に一定のDC電圧を発生するよう
に構成されていてはならない。代表的な電力源電圧の時
間変動を第13図に示す。大規模集積回路に電力を供給
する代表的な電力源は、略±10%の公差で動作してい
る。Vddと大地電位Gd間の差が5VであるCMOS
技術では、電力源の経時変化は±0.5Vである。この
電圧変動の周波数はランダムであり、電力源及びその供
給線上の雑音によつて発生され、又同じ半導体チツプ上
の他の回路をスイツチするオン・チツプ雑音源40′に
よつても発生される。すべてのこのようなスイツチング
及び雑音の発生は比較的高頻度で行われ、電力源の電圧
Vddの一定の公称値にランダムに変化する雑音波形を
加えている。第12図は、電力源40からのVddが時
間的に変化することによる結果をしている。第12図
は、電力源電圧Vddの変動の関数として、リング・オ
ツシレータのカスケード接続反転器列中の1反転器段当
りの遅延を示したグラフである。CMOS反転器リング
・オツシレータの最良のケース(BC)でも、電力源電
圧が約10%変ると、段当りの遅延は約10%変化する
ことが明らかであろう。第12図に示した回路の動作の
より悪いケース(WC)では、変動は±10%以上にも
なる。この結果、リング・オツシレータ22によつて発
生される周波数f0は一定値ではなく、予測できないよ
うに変化する。
リング・オツシレータ20からの周波数f0は第1図の
線形フイードバツク・シフト・レジスタ20中のD型フ
リツプ・フロツプ遅延素子をクロツクするのに使用され
る。この結果、線形フイードバツク・シフト・レジスタ
20のビツト・ストリーム出力中の擬似乱数の発生速度
は時間とともに変化する。線形フイードバツク・レジス
タ20の出力は、排他的OR回路(EXOR)23の出
力であるノード24か、線形フイードバツク・シフト・
レジスタ20の第N番目、即ち最後の段の出力に接続さ
れたEXOR23の入力ノード24′に接続できる。
線形フイードバツク・シフト・レジスタ20中のD型フ
リツプ・フロツプ遅延素子をクロツクするのに使用され
る。この結果、線形フイードバツク・シフト・レジスタ
20のビツト・ストリーム出力中の擬似乱数の発生速度
は時間とともに変化する。線形フイードバツク・レジス
タ20の出力は、排他的OR回路(EXOR)23の出
力であるノード24か、線形フイードバツク・シフト・
レジスタ20の第N番目、即ち最後の段の出力に接続さ
れたEXOR23の入力ノード24′に接続できる。
いずれの場合にも、線形フイードバツク・シフト・レジ
スタ20の出力は、線形フイードバツク・シフト・レジ
スタ20の出力をサンプルするのに使用されるD型フリ
ツプ・フロツプ26のD入力に接続される。
スタ20の出力は、線形フイードバツク・シフト・レジ
スタ20の出力をサンプルするのに使用されるD型フリ
ツプ・フロツプ26のD入力に接続される。
線形フイードバツク・シフト・レジスタは従来技術で一
般に知られていて、擬似乱数系列を発生するものであ
る。これについては、たとえば、1976年12月刊の
IEEE論文集、第64巻、第12号、第1715−1
730頁のF.J.マツクウイリアムズ等による論文
“擬似乱数系列及び装置”(F.J.MacWilliams,et a
l.,“Pseudo-Random Sequences and Arrays.”Proceed
ings of theIEEE.Vel.64,No,12,Dec
ember1976,pp.1715−1730)に説明がなさ
れている。この論文には、線形フイードバツク・シフト
・レジスタに基づく、多くの例示的な擬似乱数発生器が
説明されている。この線形フイードバツク・シフト・レ
ジスタは直列のビツト・ストリームを発生するが、その
2進の数値は、繰返される自然の周期を有する擬似乱数
の系列をなしている。擬似乱数発生器に使用される線形
フイードバツク・シフト・レジスタ中の遅延段の数が多
くなればなる程、周期的な繰返しが発生される迄の系列
中の擬似乱数の数は多くなる。もし侵害者が擬似乱数系
列を発生するのに使用されている線形フイードバツク・
シフト・レジスタのタイプを識別でき、且侵害者が擬似
乱数値の1つを傍受できると、侵害者は発生器が擬似乱
数系列のどの部分を発生しているかを知ることができる
ので、次に発生する擬似乱数値を予測できる。
般に知られていて、擬似乱数系列を発生するものであ
る。これについては、たとえば、1976年12月刊の
IEEE論文集、第64巻、第12号、第1715−1
730頁のF.J.マツクウイリアムズ等による論文
“擬似乱数系列及び装置”(F.J.MacWilliams,et a
l.,“Pseudo-Random Sequences and Arrays.”Proceed
ings of theIEEE.Vel.64,No,12,Dec
ember1976,pp.1715−1730)に説明がなさ
れている。この論文には、線形フイードバツク・シフト
・レジスタに基づく、多くの例示的な擬似乱数発生器が
説明されている。この線形フイードバツク・シフト・レ
ジスタは直列のビツト・ストリームを発生するが、その
2進の数値は、繰返される自然の周期を有する擬似乱数
の系列をなしている。擬似乱数発生器に使用される線形
フイードバツク・シフト・レジスタ中の遅延段の数が多
くなればなる程、周期的な繰返しが発生される迄の系列
中の擬似乱数の数は多くなる。もし侵害者が擬似乱数系
列を発生するのに使用されている線形フイードバツク・
シフト・レジスタのタイプを識別でき、且侵害者が擬似
乱数値の1つを傍受できると、侵害者は発生器が擬似乱
数系列のどの部分を発生しているかを知ることができる
ので、次に発生する擬似乱数値を予測できる。
しかしながら、本発明に従えば、D型フリツプ・フロツ
プ26が低い周波数でサンプングされるので、侵害者は
シフト・レジスタの各ビツトを知ることができなくな
る。低い周波数でサンプルすると、他のビツトが取出さ
れる前にすべてのビツトをクリヤすることができる。こ
れによつて、外界で得られる情報は最小になる。さら
に、サンプリング・フリツプ・フロツプ26に競合状態
を導入すると、発生される擬似乱数値にある程度の予測
不可能性が発生し、侵害者は現在の発生値を端に傍受す
るだけでは、次の値の予測することは一層困難になる。
これは第1図の線形フイードバツク・シフト・レジスタ
からの擬似乱数値の非同期的出力を、外部クロツクによ
つて線25上上に発生される周期的サンプリング信号で
サンプリングすることによつて達成される。周期的外部
サンプリング信号は線25を介してカウンタ28に入力
され、これによつてその周波数が逓減され、効果的クロ
ツク信号がカウンタ28から出力されて、D型フリツプ
・フロツプ26のクロツク入力(CK)に印加される。
カウンタ28によつて、サンプリング・フリツプ・フロ
ツプ26に印加されるクロツク信号の周波数fは、線形
フイードバツク・レジスタの最初の段1から最後の段N
迄信号を巡回させる時の周波数f0よりも低くなくては
ならない。即ちfはf0/nよりも低い。外部のクロツ
ク信号による低周波サンプリングによつて、侵害者がシ
ステム破りに必要なシフト・レジスタの状態の発見が防
止される。もし侵害者が、シフト・レジスタの各ビツト
をサンプルできる程十分高い外部のクロツク周波数で走
らせようとしても、カウンタ28の論理回路は(十分高
速でないために)これに応答できない。線形フイードバ
ツク・シフト・レジスタ20によつて発生された擬似乱
数系列の結果のサンプル値は、次にサンプリング・フリ
ツプ・フロツプ26の出力Qから、乱数出力線32上に
出力される。この出力は、線形フイードバツク・シフト
・レジスタ20の非同期出力を周期的にサンプリングし
たことによつて、予測不能の値の系列を表わす直列ビツ
ト・ストリームである。
プ26が低い周波数でサンプングされるので、侵害者は
シフト・レジスタの各ビツトを知ることができなくな
る。低い周波数でサンプルすると、他のビツトが取出さ
れる前にすべてのビツトをクリヤすることができる。こ
れによつて、外界で得られる情報は最小になる。さら
に、サンプリング・フリツプ・フロツプ26に競合状態
を導入すると、発生される擬似乱数値にある程度の予測
不可能性が発生し、侵害者は現在の発生値を端に傍受す
るだけでは、次の値の予測することは一層困難になる。
これは第1図の線形フイードバツク・シフト・レジスタ
からの擬似乱数値の非同期的出力を、外部クロツクによ
つて線25上上に発生される周期的サンプリング信号で
サンプリングすることによつて達成される。周期的外部
サンプリング信号は線25を介してカウンタ28に入力
され、これによつてその周波数が逓減され、効果的クロ
ツク信号がカウンタ28から出力されて、D型フリツプ
・フロツプ26のクロツク入力(CK)に印加される。
カウンタ28によつて、サンプリング・フリツプ・フロ
ツプ26に印加されるクロツク信号の周波数fは、線形
フイードバツク・レジスタの最初の段1から最後の段N
迄信号を巡回させる時の周波数f0よりも低くなくては
ならない。即ちfはf0/nよりも低い。外部のクロツ
ク信号による低周波サンプリングによつて、侵害者がシ
ステム破りに必要なシフト・レジスタの状態の発見が防
止される。もし侵害者が、シフト・レジスタの各ビツト
をサンプルできる程十分高い外部のクロツク周波数で走
らせようとしても、カウンタ28の論理回路は(十分高
速でないために)これに応答できない。線形フイードバ
ツク・シフト・レジスタ20によつて発生された擬似乱
数系列の結果のサンプル値は、次にサンプリング・フリ
ツプ・フロツプ26の出力Qから、乱数出力線32上に
出力される。この出力は、線形フイードバツク・シフト
・レジスタ20の非同期出力を周期的にサンプリングし
たことによつて、予測不能の値の系列を表わす直列ビツ
ト・ストリームである。
第1図の回路の傍聴者よる侵害の受け易さは、線形フイ
ードバツク・シフト・レジスタ20の状態が、LSIチ
ツプ30の入/出力ピンで関知されないように、LSI
チツプ30上に第1図の回路を物理的に位置付けること
によつてさらに減少することができる。これは、通常の
レベル感知走査設計(LSSD)テストのように、線形
フイードバツク・シフト・レジスタ20中のシフト・レ
ジスタ段のテストを行わせないようにして行われる。さ
らに、自走リング・オツシレータのリング・オツシレー
タ周波数は、カウンタ28に印加される、線25上の外
部入力クロツクに関連があつてはならない。この非関連
連付けは、リング・オツシレータ22をチツプの外部か
らアクセスできないようにすることによつて達成され
る。第1図の回路を干渉されにくくする一つの方法は、
フリツプ・チツプ結合技術によつて通常行われているよ
うに、回路をチツプの下側に形成する方法である。
ードバツク・シフト・レジスタ20の状態が、LSIチ
ツプ30の入/出力ピンで関知されないように、LSI
チツプ30上に第1図の回路を物理的に位置付けること
によつてさらに減少することができる。これは、通常の
レベル感知走査設計(LSSD)テストのように、線形
フイードバツク・シフト・レジスタ20中のシフト・レ
ジスタ段のテストを行わせないようにして行われる。さ
らに、自走リング・オツシレータのリング・オツシレー
タ周波数は、カウンタ28に印加される、線25上の外
部入力クロツクに関連があつてはならない。この非関連
連付けは、リング・オツシレータ22をチツプの外部か
らアクセスできないようにすることによつて達成され
る。第1図の回路を干渉されにくくする一つの方法は、
フリツプ・チツプ結合技術によつて通常行われているよ
うに、回路をチツプの下側に形成する方法である。
回路に電力を供給中、もしくは雑音による過渡状態とし
て、第1図の線形フイードバツク・シフト・レジスタ2
0の遅延段1乃至N中にすべて0の状態が発生した場合
には、このすべて0の状態を検出して訂正するために追
加の周辺回路を与えることができる。
て、第1図の線形フイードバツク・シフト・レジスタ2
0の遅延段1乃至N中にすべて0の状態が発生した場合
には、このすべて0の状態を検出して訂正するために追
加の周辺回路を与えることができる。
第4図は、、本発明の第2の実施例の、自走擬似乱数発
生器を示す。この発生器はEXOR段44を介して接続
される、第1図のリング・オツシレータ22の変形のカ
スケード接続遅延段からのフイードバツク・ループを有
し、擬似乱数系列を発生している。この様子は第4図に
反転器段A0乃至A3のカスケード接続列が自走擬似乱
数発生器42中の遅延段の列を形成するものとして示さ
れている。発生器42の出力ノードCは2入力EXOR
回路44の1入力に接続されている。EXOR44への
他の入力Eは発生器42の遅延段A1乃至A3の1つの
出力に接続されている。この構成は通常の線形フイード
バツク・シフト・レジスタの構成と同じであり、ノード
BもしくはノードCの2進ビツト・ストリームは擬似乱
数系列となる。従つてノードBが第4図の出力ノードと
して使用でき、この出力は第1図の回路で説明したのと
同じように線43を介してD型フリツプ・フロツプ26
のD入力に接続される。
生器を示す。この発生器はEXOR段44を介して接続
される、第1図のリング・オツシレータ22の変形のカ
スケード接続遅延段からのフイードバツク・ループを有
し、擬似乱数系列を発生している。この様子は第4図に
反転器段A0乃至A3のカスケード接続列が自走擬似乱
数発生器42中の遅延段の列を形成するものとして示さ
れている。発生器42の出力ノードCは2入力EXOR
回路44の1入力に接続されている。EXOR44への
他の入力Eは発生器42の遅延段A1乃至A3の1つの
出力に接続されている。この構成は通常の線形フイード
バツク・シフト・レジスタの構成と同じであり、ノード
BもしくはノードCの2進ビツト・ストリームは擬似乱
数系列となる。従つてノードBが第4図の出力ノードと
して使用でき、この出力は第1図の回路で説明したのと
同じように線43を介してD型フリツプ・フロツプ26
のD入力に接続される。
第4図の自走擬似乱数発生器の動作は、第1図のサンプ
ルされる線形フイードバツク・シフト・レジスタには存
在しない追加の特徴を有する。電力源40の電圧の時間
変動による、発生器42の遅延段A0乃至A3中に生ず
る遅延の不均衡によつて、EXOR回路44への2入力
間には時々競合状態が生ずる。この様子は、第4図の発
生器の動作の例として第11A図、第11B図及び次の
表に示されている。第4図の発生器は、夫々の遅延段を
線形フイードバツク・シフト・レジスタ表示の簡単な遅
延ブロツクとして示した第7図のように簡単に表示でき
る。次の表は第7図の回路の通常の動作中に生ずる擬似
乱数値の系列を示すものである。
ルされる線形フイードバツク・シフト・レジスタには存
在しない追加の特徴を有する。電力源40の電圧の時間
変動による、発生器42の遅延段A0乃至A3中に生ず
る遅延の不均衡によつて、EXOR回路44への2入力
間には時々競合状態が生ずる。この様子は、第4図の発
生器の動作の例として第11A図、第11B図及び次の
表に示されている。第4図の発生器は、夫々の遅延段を
線形フイードバツク・シフト・レジスタ表示の簡単な遅
延ブロツクとして示した第7図のように簡単に表示でき
る。次の表は第7図の回路の通常の動作中に生ずる擬似
乱数値の系列を示すものである。
表から明らかなように、系列が繰返される前には、1状
態当り4個の2進ビツトより成る15状態の状態周期が
存在する。通常の動作における状態3、4及び5を第1
1図に示す。この場合は、遅延段A0乃至A3中には公
称の遅延が発生している。第5状態では、第7図の回路
によつて系列0110が発生される。遅延段A1は2進
値1(x項)をEXOR44の第1の入力Eに加え、遅
延段A0は2進値0をEXOR44の第2の入力Cに加
えている。通常の動作では、これによつてEXORはノ
ードBに2進1を出力し、このことは表の乱数系列の状
態6に対応する最初のビツト(x3)として示されてい
る。しかしながら、電力源電圧Vddに時間変動がある
か、回路のパラメータに他の変動があつて、段A0乃至
A3中の信号の伝搬に遅延の不均衡が生じた時は、EX
OR44の2入力E及びCに競合状態が生ずる。たとえ
ば、段A1からのE上の出力がA0からC上の出力に刊
して、第11B図に示すように遅延している時は、その
出力には誤つて2進0が発生する。この様子を表の第2
サイクルのところに示す。ここでは状態5に続く状態は
もはや意図された状態6、即ち2進系列1011でな
く、状態13、即ち2進系列0011になる。本発明に
従うこの擬似乱数系列の位置の予測できないシフトによ
つて、さらに予測が困難になる。
態当り4個の2進ビツトより成る15状態の状態周期が
存在する。通常の動作における状態3、4及び5を第1
1図に示す。この場合は、遅延段A0乃至A3中には公
称の遅延が発生している。第5状態では、第7図の回路
によつて系列0110が発生される。遅延段A1は2進
値1(x項)をEXOR44の第1の入力Eに加え、遅
延段A0は2進値0をEXOR44の第2の入力Cに加
えている。通常の動作では、これによつてEXORはノ
ードBに2進1を出力し、このことは表の乱数系列の状
態6に対応する最初のビツト(x3)として示されてい
る。しかしながら、電力源電圧Vddに時間変動がある
か、回路のパラメータに他の変動があつて、段A0乃至
A3中の信号の伝搬に遅延の不均衡が生じた時は、EX
OR44の2入力E及びCに競合状態が生ずる。たとえ
ば、段A1からのE上の出力がA0からC上の出力に刊
して、第11B図に示すように遅延している時は、その
出力には誤つて2進0が発生する。この様子を表の第2
サイクルのところに示す。ここでは状態5に続く状態は
もはや意図された状態6、即ち2進系列1011でな
く、状態13、即ち2進系列0011になる。本発明に
従うこの擬似乱数系列の位置の予測できないシフトによ
つて、さらに予測が困難になる。
自走擬似乱数発生器42の出力は線43を介して、サン
プリング・フリツプ・フロツプ26のD入力に印加され
る。フリツプ・フロツプ26は線25上に印加される外
部クロツク信号により、カウンタ28を介して周期的な
クロツク周波数で駆動する。このクロツキングの周波数
は、遅延後A0乃至A3を巡回させて、擬似乱数値を発
生するための周波数Fより小さくなければならない。換
言すると、サンプリング・フリツプ・フロツプ26はそ
の周期が発生器42のすべての遅延段A0、A1、A
2、A3を信号が伝搬する持続時間よりも長い周波数で
サンプルされる。サンプリング・フリツプ・フロツプ2
6による線43上に非同期的に発生されるビツト・スト
リームの同期的サンプリングによつて、第1図のサンプ
ルされる線形フイードバツク・シフト・レジスタについ
て上述したのと同じ型の、出力線32上の出力の予測不
能性が得られる。
プリング・フリツプ・フロツプ26のD入力に印加され
る。フリツプ・フロツプ26は線25上に印加される外
部クロツク信号により、カウンタ28を介して周期的な
クロツク周波数で駆動する。このクロツキングの周波数
は、遅延後A0乃至A3を巡回させて、擬似乱数値を発
生するための周波数Fより小さくなければならない。換
言すると、サンプリング・フリツプ・フロツプ26はそ
の周期が発生器42のすべての遅延段A0、A1、A
2、A3を信号が伝搬する持続時間よりも長い周波数で
サンプルされる。サンプリング・フリツプ・フロツプ2
6による線43上に非同期的に発生されるビツト・スト
リームの同期的サンプリングによつて、第1図のサンプ
ルされる線形フイードバツク・シフト・レジスタについ
て上述したのと同じ型の、出力線32上の出力の予測不
能性が得られる。
第4図に示した本発明の第2の実施例は、擬似乱数値の
ランダムな発生源が2つある。第1のものはEXOR4
4に発生する競合状態であり、第2のものは線43上の
信号の非同期的発生と、サンプリング・フリツプ・フロ
ツプ26に印加される、入力クロツク線25からの周期
的サンプリング信号間に発生される競合状態である。従
つて、この結果得られる擬似乱数系列の予測不可能性の
レベルは、侵害者が発生器によつて発生されるその後の
値を予測するのを極めて困難にする。
ランダムな発生源が2つある。第1のものはEXOR4
4に発生する競合状態であり、第2のものは線43上の
信号の非同期的発生と、サンプリング・フリツプ・フロ
ツプ26に印加される、入力クロツク線25からの周期
的サンプリング信号間に発生される競合状態である。従
つて、この結果得られる擬似乱数系列の予測不可能性の
レベルは、侵害者が発生器によつて発生されるその後の
値を予測するのを極めて困難にする。
第6A図は、段当り2つの反転器を有するリング・オツ
シレータの遅延段素子A2を示す。遅延段A2等は、最
小限少なくとも2個の反転器ではカスケード接続されて
いる。任意の偶数個の反転器が、遅延段の入力と出力間
の信号の極性を保存して、段当りの所望の遅延を発生す
るのに必要である。段当りの反転器の数は増加でき、第
6B図は段たとえばA2“当り8個の反転器を示してい
る。1段当り6乃至10個の反転器で、本発明にとつて
妥当な良好な動作を与えることがわかつている。第4図
の遅延素子A0、A1、A2、A3は十分速い立上り、
立下り特性を有して、次の信号の遷移が始まる前に、入
力信号が常に定常状態に達していなくてはならない。そ
うでないと、各素子A0、A1、A2、A3の有効遅延
量が減少する。もし遅延量が減少すると、EXOR44
の入力への信号の到着時間が乱れる。適切な応答は各遅
延段A0、A1、A2及びA3の持続時間を長くするこ
とによつて保証できるが、これは各遅延素子に十分大き
な遅延−立上り時間比を与えることによつて達成され
る。各素子A0、A1、A2及びA3のための遅延−立
上り時間比は少なくとも3対1、好ましくは5対1でな
ければならない。従つて、第4図の発生器42中の各遅
延素子A0、A1、A2及びA3はLSIチツプ30上
の回路を形成するための半導体技術に依存して、段当り
少なくとも6個、好ましくは10個の反転器を使用する
必要がある。
シレータの遅延段素子A2を示す。遅延段A2等は、最
小限少なくとも2個の反転器ではカスケード接続されて
いる。任意の偶数個の反転器が、遅延段の入力と出力間
の信号の極性を保存して、段当りの所望の遅延を発生す
るのに必要である。段当りの反転器の数は増加でき、第
6B図は段たとえばA2“当り8個の反転器を示してい
る。1段当り6乃至10個の反転器で、本発明にとつて
妥当な良好な動作を与えることがわかつている。第4図
の遅延素子A0、A1、A2、A3は十分速い立上り、
立下り特性を有して、次の信号の遷移が始まる前に、入
力信号が常に定常状態に達していなくてはならない。そ
うでないと、各素子A0、A1、A2、A3の有効遅延
量が減少する。もし遅延量が減少すると、EXOR44
の入力への信号の到着時間が乱れる。適切な応答は各遅
延段A0、A1、A2及びA3の持続時間を長くするこ
とによつて保証できるが、これは各遅延素子に十分大き
な遅延−立上り時間比を与えることによつて達成され
る。各素子A0、A1、A2及びA3のための遅延−立
上り時間比は少なくとも3対1、好ましくは5対1でな
ければならない。従つて、第4図の発生器42中の各遅
延素子A0、A1、A2及びA3はLSIチツプ30上
の回路を形成するための半導体技術に依存して、段当り
少なくとも6個、好ましくは10個の反転器を使用する
必要がある。
第5図は、第4図に示したようにノードBでサンプルさ
れるのでなく、ノードCでサンプルされる第4図の発生
器の変形である。このサンプリング方法は第4図の場合
と同じである。それは発生器42のノードBで始まり、
段A3、A2、A1及びA0のカスケード列を通る2進
信号の値が、最後にはノードCに同じ極性で発生するか
らである。
れるのでなく、ノードCでサンプルされる第4図の発生
器の変形である。このサンプリング方法は第4図の場合
と同じである。それは発生器42のノードBで始まり、
段A3、A2、A1及びA0のカスケード列を通る2進
信号の値が、最後にはノードCに同じ極性で発生するか
らである。
第8図は、第4図及び第5図に示された4つの遅延段で
なく8つの遅延段を使用した第4図及び第5図の発生器
42の変形を示す。第8図の発生器には、第7図に示し
た単一のEXORに代わつて、3つのEXOR44、4
4′及び44″が与えられている。自走擬似乱数発生器
42に具体化できる線形フイードバツク・シフト・レジ
スタ構造には、上出のマツクウイリアムズ等による論文
に示されているように種々の変形がある。各例の擬似乱
数発生器で、発生器42の遅延段を形成する反転器に印
加される電力源の電圧の時間変動は、EXOR44、4
4′、44″の入力に競合状態を発生し、擬似乱数系列
の第1の部分から第2の部分へのスキツプを生ずる。
なく8つの遅延段を使用した第4図及び第5図の発生器
42の変形を示す。第8図の発生器には、第7図に示し
た単一のEXORに代わつて、3つのEXOR44、4
4′及び44″が与えられている。自走擬似乱数発生器
42に具体化できる線形フイードバツク・シフト・レジ
スタ構造には、上出のマツクウイリアムズ等による論文
に示されているように種々の変形がある。各例の擬似乱
数発生器で、発生器42の遅延段を形成する反転器に印
加される電力源の電圧の時間変動は、EXOR44、4
4′、44″の入力に競合状態を発生し、擬似乱数系列
の第1の部分から第2の部分へのスキツプを生ずる。
第9図は、図示されているように接続された4つの2入
力NAND回路より成る排他的OR回路の論理ブロツク
図である。
力NAND回路より成る排他的OR回路の論理ブロツク
図である。
第10図は、第9図のNAND論理ブロツクに使用でき
るNAND論理機能を実行するCMOS回路の回路図で
ある。
るNAND論理機能を実行するCMOS回路の回路図で
ある。
上述のように、本発明は予測できない擬似乱数を発生し
て、出力ビツト・ストリーム中の次の値を予測できない
ものにする。本発明は、予測できない乱数の発生が暗号
発生に使用されるマスタ・キー値の発生に不可欠な暗号
発生に特に応用できる。本発明は機密度の高い暗号発生
に使用できる予測不能な擬寺乱数系列のための信頼性の
ある発生源を与える。
て、出力ビツト・ストリーム中の次の値を予測できない
ものにする。本発明は、予測できない乱数の発生が暗号
発生に使用されるマスタ・キー値の発生に不可欠な暗号
発生に特に応用できる。本発明は機密度の高い暗号発生
に使用できる予測不能な擬寺乱数系列のための信頼性の
ある発生源を与える。
F.発明の効果 本発明に従えば、信頼性が相当に改良された乱数発生器
が与えられる。
が与えられる。
第1図は、自走リング・オツシレータを有する、サンプ
ルされる線形フイードバツク・シフト・レジスタ乱数発
生器の本発明の第1の実施例の論理図である。 第2図は、自走リング・オツシレータの回路図である。 第3A図は、第1図のシフト・レジスタの遅延素子に使
用できる、D型フリツプ・フロツプの回路図である。 第3B図は、第3A図のD型フリツプ・フロツプをシフ
ト・レジスタ素子として使用される時の端子の接続方法
を示した図である。 第4図は、ノードBでサンプルされる、自走擬似乱数発
生器を示した、本発明の第2の実施例の回路兼論理図で
ある。 第5図は、ノードCでサンプルされる第4図の実施例の
変形を示した図である。 第6A図は、段が2つのカスケード接続された反転器よ
り成る、自走擬似乱数発生器の1段を示す回路図であ
る。 第6B図は、段が8つのカスケード接続反転器より成
る、自走擬似乱数発生器の代替1段を示した図である。 第7図は、4つの遅延段及び単一の排他的ORブロツク
を有する、自走擬似乱数発生器の論理ブロツク図であ
る。 第8図は、8つの遅延段及び3つの排他的ORブロツク
を有する、自走擬似乱数発生器の論理ブロツク図であ
る。 第9図は、排他的OR回路の論理ブロツク図である。 第10図は、NAND回路の回路図である。 第11A図は、第7図の発生器の、通常遅延の場合の動
作を示したタイミング図である。 第11B図は、第7図の発生器の遅延が不均衡な場合の
動作を示した図である。 第12図は、電力源電圧Vddの関数として、自走擬似
乱数発生器の1段の遅延を示したグラフ図である。 第13図は、時間とともに変化する電力源電圧を示した
グラフ図である。 20……フイードバツク・シフト・レジスタ、 22……自走リング・オツシレータ、23……EXOR
回路、26……サンプリング・フリツプ・フロツプ、2
8……カウンタ、40……電力源、42……自走擬似乱
数発生器、44、44′、44″……EXOR回路。
ルされる線形フイードバツク・シフト・レジスタ乱数発
生器の本発明の第1の実施例の論理図である。 第2図は、自走リング・オツシレータの回路図である。 第3A図は、第1図のシフト・レジスタの遅延素子に使
用できる、D型フリツプ・フロツプの回路図である。 第3B図は、第3A図のD型フリツプ・フロツプをシフ
ト・レジスタ素子として使用される時の端子の接続方法
を示した図である。 第4図は、ノードBでサンプルされる、自走擬似乱数発
生器を示した、本発明の第2の実施例の回路兼論理図で
ある。 第5図は、ノードCでサンプルされる第4図の実施例の
変形を示した図である。 第6A図は、段が2つのカスケード接続された反転器よ
り成る、自走擬似乱数発生器の1段を示す回路図であ
る。 第6B図は、段が8つのカスケード接続反転器より成
る、自走擬似乱数発生器の代替1段を示した図である。 第7図は、4つの遅延段及び単一の排他的ORブロツク
を有する、自走擬似乱数発生器の論理ブロツク図であ
る。 第8図は、8つの遅延段及び3つの排他的ORブロツク
を有する、自走擬似乱数発生器の論理ブロツク図であ
る。 第9図は、排他的OR回路の論理ブロツク図である。 第10図は、NAND回路の回路図である。 第11A図は、第7図の発生器の、通常遅延の場合の動
作を示したタイミング図である。 第11B図は、第7図の発生器の遅延が不均衡な場合の
動作を示した図である。 第12図は、電力源電圧Vddの関数として、自走擬似
乱数発生器の1段の遅延を示したグラフ図である。 第13図は、時間とともに変化する電力源電圧を示した
グラフ図である。 20……フイードバツク・シフト・レジスタ、 22……自走リング・オツシレータ、23……EXOR
回路、26……サンプリング・フリツプ・フロツプ、2
8……カウンタ、40……電力源、42……自走擬似乱
数発生器、44、44′、44″……EXOR回路。
Claims (1)
- 【請求項1】(イ)列をなすように直列に接続された複
数の遅延段を有し、前記列の最初の段に入力及び最後の
段に出力を有し、各段は少なくとも2つの反転器より成
り、各反転器は時間的に電圧がランダムに変動する電力
源に接続された入力端子を有し、 (ロ)前記最後の段の出力と最初の段間のフィードバッ
ク経路中に結合された排他的OR回路を有し、 (ハ)前記複数の遅延段は前記排他的OR回路の第1の
入力として結合された出力を有する第1の部分複数の段
を有し、 (ニ)前記複数の遅延段は前記排他的OR回路の第2の
入力として結合された出力を有する残りの第2の部分複
数の段を有し、 (ホ)前記排他的OR回路は、前記遅延段の第1及び第
2の部分複数の段からの入力に応答して、疑似乱数を発
生し、 (ヘ)前記複数の遅延段中の相継ぐ各段は、伝搬する信
号に、前記時間的に電圧がランダムに変動する電力源電
圧に応答してランダムに変動する伝搬遅延を与えて、前
記排他的OR回路の第1及び第2の入力間にランダムに
発生する競合状態を発生し、 (ト)前記排他的OR回路が、前記ランダムに発生する
競合状態に応答して前記疑似乱数信号パターンをランダ
ムに変化させるように構成されている 乱数発生器。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US264467 | 1988-10-28 | ||
| US07/264,467 US4905176A (en) | 1988-10-28 | 1988-10-28 | Random number generator circuit |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH02128218A JPH02128218A (ja) | 1990-05-16 |
| JPH0658623B2 true JPH0658623B2 (ja) | 1994-08-03 |
Family
ID=23006191
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1211541A Expired - Lifetime JPH0658623B2 (ja) | 1988-10-28 | 1989-08-18 | 乱数発生器 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US4905176A (ja) |
| EP (1) | EP0365930A3 (ja) |
| JP (1) | JPH0658623B2 (ja) |
Families Citing this family (118)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5208705A (en) * | 1991-11-05 | 1993-05-04 | At&T Bell Laboratories | Optical linear feedback shift register |
| SE470242B (sv) * | 1992-05-12 | 1993-12-13 | Ericsson Telefon Ab L M | Anordning för generering av slumptal |
| US5222142A (en) * | 1992-06-22 | 1993-06-22 | Hughes Aircraft Company | Sequence generator |
| US5258936A (en) * | 1992-08-05 | 1993-11-02 | Motorola, Inc. | Method and apparatus for generating pseudo-random numbers |
| US5363448A (en) * | 1993-06-30 | 1994-11-08 | United Technologies Automotive, Inc. | Pseudorandom number generation and cryptographic authentication |
| US5377270A (en) * | 1993-06-30 | 1994-12-27 | United Technologies Automotive, Inc. | Cryptographic authentication of transmitted messages using pseudorandom numbers |
| US5416783A (en) * | 1993-08-09 | 1995-05-16 | Motorola, Inc. | Method and apparatus for generating pseudorandom numbers or for performing data compression in a data processor |
| US5680131A (en) * | 1993-10-29 | 1997-10-21 | National Semiconductor Corporation | Security system having randomized synchronization code after power up |
| US5404402A (en) * | 1993-12-21 | 1995-04-04 | Gi Corporation | Clock frequency modulation for secure microprocessors |
| JP3469941B2 (ja) * | 1994-07-15 | 2003-11-25 | 三菱電機株式会社 | プログラム実行制御装置および方法 |
| US5570307A (en) * | 1995-01-06 | 1996-10-29 | Vlsi Technology, Inc. | Digital randomizer for on-chip generation and storage of random self-programming data block |
| US6324558B1 (en) | 1995-02-14 | 2001-11-27 | Scott A. Wilber | Random number generator and generation method |
| US5633816A (en) * | 1995-09-01 | 1997-05-27 | National Semiconductor Corporation | Random number generator with wait control circuitry to enhance randomness of numbers read therefrom |
| JP2842389B2 (ja) * | 1996-07-11 | 1999-01-06 | 日本電気株式会社 | 乱数発生装置 |
| US6201870B1 (en) * | 1997-03-20 | 2001-03-13 | Massachusetts Institue Of Technology | Pseudorandom noise sequence generator |
| US6061703A (en) * | 1997-05-15 | 2000-05-09 | International Business Machines Corporation | Pseudorandom number generator with normal and test modes of operation |
| US6104810A (en) * | 1997-05-15 | 2000-08-15 | International Business Machines Corporation | Pseudorandom number generator with backup and restoration capability |
| US6044388A (en) * | 1997-05-15 | 2000-03-28 | International Business Machine Corporation | Pseudorandom number generator |
| US7587044B2 (en) * | 1998-01-02 | 2009-09-08 | Cryptography Research, Inc. | Differential power analysis method and apparatus |
| ATE325478T1 (de) * | 1998-01-02 | 2006-06-15 | Cryptography Res Inc | Leckresistentes kryptographisches verfahren und vorrichtung |
| IL139935A (en) * | 1998-06-03 | 2005-06-19 | Cryptography Res Inc | Des and other cryptographic processes with leak minimization for smartcards and other cryptosystems |
| WO1999063696A1 (en) * | 1998-06-03 | 1999-12-09 | Cryptography Research, Inc. | Using unpredictable information to minimize leakage from smartcards and other cryptosystems |
| DE69935913T2 (de) | 1998-07-02 | 2008-01-10 | Cryptography Research Inc., San Francisco | Leckresistente aktualisierung eines indexierten kryptographischen schlüssels |
| US6240432B1 (en) | 1998-12-28 | 2001-05-29 | Vanguard International Semiconductor Corporation | Enhanced random number generator |
| JP2000310942A (ja) * | 1999-02-25 | 2000-11-07 | Yazaki Corp | 疑似乱数発生器、ストリーム暗号化方法、及びストリーム暗号通信方法 |
| GB2353155A (en) * | 1999-08-05 | 2001-02-14 | Mitsubishi Electric Inf Tech | A random binary signal generator with a narrowed autocorrelation function |
| US7978847B1 (en) | 1999-09-24 | 2011-07-12 | Lawrence Livermore National Security, Llc | System using data compression and hashing adapted for use for multimedia encryption |
| GB2357610B (en) * | 1999-12-20 | 2004-04-28 | Mitsubishi Electric Inf Tech | Method and apparatus for generating numbers |
| DE10000502A1 (de) * | 2000-01-08 | 2001-07-12 | Philips Corp Intellectual Pty | Datenverarbeitungseinrichtung und Verfahren zu dessen Betrieb |
| 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 |
| US6480072B1 (en) | 2000-04-18 | 2002-11-12 | Advanced Micro Devices, Inc. | Method and apparatus for generating random numbers |
| US6859545B1 (en) * | 2000-08-10 | 2005-02-22 | Chung Shan Institute Of Science And Technology | Information hiding method with reduced fuzziness |
| FR2817361B1 (fr) * | 2000-11-28 | 2003-01-24 | St Microelectronics Sa | Generateur de signal aleatoire |
| JP2002215030A (ja) * | 2001-01-17 | 2002-07-31 | Advanced Mobile Telecommunications Security Technology Research Lab Co Ltd | 乱数発生方法 |
| US6766312B2 (en) * | 2001-01-31 | 2004-07-20 | International Business Machines Corporation | Method and system for a random number generator |
| US6507247B2 (en) * | 2001-02-27 | 2003-01-14 | Corrent Corporation | Circuit and method for generating a variable frequency clock signal |
| EP1237071B1 (en) * | 2001-03-01 | 2006-05-03 | Matsushita Electric Industrial Co., Ltd. | Method for generating a random number and electronic apparatus having a memory for storing a random number |
| US6760739B2 (en) | 2001-03-01 | 2004-07-06 | Corrent Corporation | Pipelined digital randomizer based on permutation and substitution using data sampling with variable frequency and non-coherent clock sources |
| JP2002268874A (ja) * | 2001-03-07 | 2002-09-20 | Toshiba Corp | 乱数シード生成回路及びこれを備えたドライバ、並びに、sdメモリカードシステム |
| US6807553B2 (en) * | 2001-04-23 | 2004-10-19 | Safenet B.V. | Digital true random number generator circuit |
| DE10128573A1 (de) * | 2001-06-13 | 2003-01-02 | Infineon Technologies Ag | Verhindern der unerwünschten externen Erfassung von Operationen in integrierten Digitalschaltungen |
| US7139397B2 (en) * | 2001-07-20 | 2006-11-21 | Stmicroelectronics S.R.L. | Hybrid architecture for realizing a random numbers generator |
| US6954770B1 (en) | 2001-08-23 | 2005-10-11 | Cavium Networks | Random number generator |
| US7587439B1 (en) * | 2001-08-31 | 2009-09-08 | Intergrated Device Technology, Inc. | Method and apparatus for generating a random bit stream in true random number generator fashion |
| US20030059045A1 (en) * | 2001-09-26 | 2003-03-27 | Ruehle Michael D. | Hash-based pseudo-random number generator |
| US7227951B2 (en) * | 2001-11-06 | 2007-06-05 | Ntt Docomo, Inc. | Enhanced ANSI X9.17 pseudorandom number generators with forward security |
| US6771104B2 (en) * | 2002-07-25 | 2004-08-03 | Koninklijke Philips Electronics N.V. | Switching electronic circuit for random number generation |
| JP2004127217A (ja) * | 2002-07-30 | 2004-04-22 | Univ Niigata | 乱数発生方法及び乱数発生装置 |
| US20040049525A1 (en) * | 2002-09-06 | 2004-03-11 | Koninklijke Philips Electronics N.V. | Feedback random number generation method and system |
| US7248696B2 (en) * | 2002-09-12 | 2007-07-24 | International Business Machines Corporation | Dynamic system bus encryption using improved differential transitional encoding |
| US7188131B2 (en) * | 2002-11-27 | 2007-03-06 | Stmicroelectronics S.A. | Random number generator |
| US7356552B2 (en) * | 2003-03-14 | 2008-04-08 | Nxp B.V. | VLSI implementation of a random number generator using a plurality of simple flip-flops |
| JP4248950B2 (ja) * | 2003-06-24 | 2009-04-02 | 株式会社ルネサステクノロジ | 乱数発生装置 |
| FR2857172B1 (fr) * | 2003-07-04 | 2006-04-28 | Thales Sa | Procede et dispositif de generation de nombres aleatoires fondes sur des oscillateurs chaotiques |
| US7177888B2 (en) * | 2003-08-01 | 2007-02-13 | Intel Corporation | Programmable random bit source |
| US8229108B2 (en) * | 2003-08-15 | 2012-07-24 | Broadcom Corporation | Pseudo-random number generation based on periodic sampling of one or more linear feedback shift registers |
| US7502468B2 (en) * | 2003-09-02 | 2009-03-10 | Ncipher Corporation Ltd. | Method and system for generating a cryptographically random number stream |
| US7293054B2 (en) * | 2004-03-11 | 2007-11-06 | Harris Corporation | Random number source and associated methods |
| FR2870058B1 (fr) * | 2004-05-04 | 2006-12-01 | Sagem | Generateur de vrai alea integre a un reseau numerique programmable |
| US8150900B2 (en) | 2004-08-09 | 2012-04-03 | Telecom Italia S.P.A. | Random number generation based on logic circuits with feedback |
| WO2006015625A1 (en) * | 2004-08-09 | 2006-02-16 | Telecom Italia S.P.A. | Method and apparatus for generating random data |
| DE102004047425B4 (de) * | 2004-09-28 | 2007-06-21 | Micronas Gmbh | Zufallszahlengenerator sowie Verfahren zur Erzeugung von Zufallszahlen |
| US7233212B2 (en) * | 2005-03-31 | 2007-06-19 | International Business Machines Corporation | Oscillator array with row and column control |
| US7890561B2 (en) * | 2005-08-16 | 2011-02-15 | International Business Machines Corporation | Random number generator |
| WO2007049268A1 (en) * | 2005-10-27 | 2007-05-03 | Fortressgb Ltd. | A digital component deterministic pseudo-random clock and noise source device based on a random frequency modulated oscillator |
| WO2008013083A1 (en) * | 2006-07-25 | 2008-01-31 | Nec Corporation | Pseudo random number generator, stream encrypting device, and program |
| JP2008180592A (ja) * | 2007-01-24 | 2008-08-07 | Nec Electronics Corp | テストパターン生成回路及びテスト回路 |
| WO2008141167A2 (en) * | 2007-05-10 | 2008-11-20 | Dis-Ent, Llc | Non-deterministic statistical data generator |
| US8583712B2 (en) | 2007-09-18 | 2013-11-12 | Seagate Technology Llc | Multi-bit sampling of oscillator jitter for random number generation |
| IL187035A0 (en) | 2007-10-30 | 2008-02-09 | Sandisk Il Ltd | Configurable random number generator |
| US9594541B2 (en) * | 2009-01-06 | 2017-03-14 | Inside Secure | System and method for detecting FRO locking |
| US20100281088A1 (en) * | 2009-04-29 | 2010-11-04 | Psigenics Corporation | Integrated true random number generator |
| CA2664620A1 (en) * | 2009-05-07 | 2009-07-20 | Avalon Microelectronics, Inc. | Pseudo-random bit sequence generator |
| US8742814B2 (en) | 2009-07-15 | 2014-06-03 | Yehuda Binder | Sequentially operated modules |
| US8602833B2 (en) | 2009-08-06 | 2013-12-10 | May Patents Ltd. | Puzzle with conductive path |
| US8379847B2 (en) | 2010-06-30 | 2013-02-19 | International Business Machines Corporation | Data and control encryption |
| IL210169A0 (en) | 2010-12-22 | 2011-03-31 | Yehuda Binder | System and method for routing-based internet security |
| US20120244969A1 (en) | 2011-03-25 | 2012-09-27 | May Patents Ltd. | System and Method for a Motion Sensing Device |
| WO2012141680A1 (en) | 2011-04-11 | 2012-10-18 | Hewlett-Packard Development Company, L.P. | Mass serialization |
| US9019718B2 (en) | 2011-08-26 | 2015-04-28 | Littlebits Electronics Inc. | Modular electronic building systems with magnetic interconnections and methods of using the same |
| US9597607B2 (en) | 2011-08-26 | 2017-03-21 | Littlebits Electronics Inc. | Modular electronic building systems with magnetic interconnections and methods of using the same |
| US11330714B2 (en) | 2011-08-26 | 2022-05-10 | Sphero, Inc. | Modular electronic building systems with magnetic interconnections and methods of using the same |
| US8788551B2 (en) | 2011-11-15 | 2014-07-22 | Seagate Technology Llc | Random number generation using switching regulators |
| US20130201316A1 (en) | 2012-01-09 | 2013-08-08 | May Patents Ltd. | System and method for server based control |
| US9201630B2 (en) | 2012-02-10 | 2015-12-01 | Seagate Technology Llc | Random number generation using startup variances |
| WO2013175269A1 (en) | 2012-05-24 | 2013-11-28 | May Patents Ltd. | System and method for a motion sensing device |
| US9323957B2 (en) * | 2013-03-01 | 2016-04-26 | Marvell World Trade Ltd. | Anti-tamper system based on dual random bits generators for integrated circuits |
| US10708043B2 (en) | 2013-03-07 | 2020-07-07 | David Mayer Hutchinson | One pad communications |
| US9755822B2 (en) | 2013-06-19 | 2017-09-05 | Cryptography Research, Inc. | Countermeasure to power analysis attacks through time-varying impedance of power delivery networks |
| US9009495B2 (en) | 2013-06-28 | 2015-04-14 | Envieta, LLC | High speed cryptographic combining system, and method for programmable logic devices |
| US9092284B2 (en) * | 2013-09-25 | 2015-07-28 | Netronome Systems, Inc. | Entropy storage ring having stages with feedback inputs |
| US9189202B2 (en) | 2013-12-23 | 2015-11-17 | The University Of Massachusetts | Generate random numbers using metastability resolution time |
| US9195434B2 (en) | 2014-01-14 | 2015-11-24 | Nvidia Corporation | Power supply for ring-oscillator based true random number generator and method of generating true random numbers |
| US10095477B2 (en) | 2014-12-18 | 2018-10-09 | Cryptography Research Inc. | Self-timed random number generator |
| LT3767494T (lt) | 2017-08-28 | 2023-03-10 | Bright Data Ltd. | Būdas pagerinti turinio parsisiuntimą, pasirenkant tunelinius įrenginius |
| US11190374B2 (en) | 2017-08-28 | 2021-11-30 | Bright Data Ltd. | System and method for improving content fetching by selecting tunnel devices |
| CN107678731B (zh) * | 2017-11-06 | 2023-03-21 | 何安平 | 一种基于fpga的高频异步随机数发生器 |
| US10430161B1 (en) | 2018-04-09 | 2019-10-01 | Jan J. Tatarkiewicz | Apparatus, systems, and methods comprising tritium random number generator |
| US12179011B2 (en) | 2018-08-14 | 2024-12-31 | Neurotrigger Ltd. | Method and apparatus for transcutaneous facial nerve stimulation and applications thereof |
| EP3780557B1 (en) | 2019-02-25 | 2023-02-15 | Bright Data Ltd. | System and method for url fetching retry mechanism |
| US11616844B2 (en) | 2019-03-14 | 2023-03-28 | Sphero, Inc. | Modular electronic and digital building systems and methods of using the same |
| EP4383686A1 (en) | 2019-04-02 | 2024-06-12 | Bright Data Ltd. | System and method for managing non-direct url fetching service |
| US10901695B1 (en) | 2020-03-03 | 2021-01-26 | Randaemon Sp. Z O.O. | Apparatus, systems, and methods for beta decay based true random number generator |
| US11048478B1 (en) | 2020-03-03 | 2021-06-29 | Randaemon Sp. Z O.O. | Method and apparatus for tritium-based true random number generator |
| US11188306B1 (en) * | 2020-08-18 | 2021-11-30 | Nuvoton Technology Corporation | Distributed random-number generator |
| CN112199074B (zh) * | 2020-10-10 | 2022-10-25 | 安徽大学 | 一种真随机数发生电路及其真随机数发生芯片 |
| US11601120B2 (en) * | 2021-02-03 | 2023-03-07 | Nuvoton Technology Corporation | Attack-resistant ring oscillators and random-number generators |
| US11249725B1 (en) | 2021-07-22 | 2022-02-15 | Randaemon Sp. Zo.O. | Method and apparatus for highly effective on-chip true random number generator utilizing beta decay |
| US11281432B1 (en) | 2021-07-22 | 2022-03-22 | Randaemon Sp. Z O.O. | Method and apparatus for true random number generator based on nuclear radiation |
| US12360742B2 (en) | 2021-07-22 | 2025-07-15 | RANDAEMON sp. z o.o | Method and apparatus for true random number generator based on nuclear radiation |
| US11586421B2 (en) | 2021-07-22 | 2023-02-21 | Randaemon Sp. Z O.O. | Method for making cost-effective nickel-63 radiation source for true random number generators |
| EP4377817A4 (en) | 2021-07-26 | 2025-05-28 | Bright Data Ltd. | Emulating web browser in a dedicated intermediary box |
| US11567734B1 (en) | 2021-10-22 | 2023-01-31 | Randaemon Sp. Z O.O. | Method and apparatus for highly effective on-chip quantum random number generator |
| FR3129549A1 (fr) | 2021-11-19 | 2023-05-26 | Stmicroelectronics (Grenoble 2) Sas | Générateur d'un signal vobulé |
| US20230394347A1 (en) * | 2022-06-07 | 2023-12-07 | International Business Machines Corporation | Controlled jitter injection into a signal |
| US12014153B1 (en) | 2022-12-05 | 2024-06-18 | Randaemon Sp. Z O.O. | Method and apparatus for implementing on chip quantum random number generator using beta decay |
| US12034834B1 (en) | 2023-01-30 | 2024-07-09 | Randaemon Sp. Z O.O. | Method and apparatus for steganographic cipher encryption using true random number generator |
Family Cites Families (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| FR1532396A (fr) * | 1967-05-12 | 1968-07-12 | Lignes Telegraph Telephon | Appareillages électroniques destinés à la génération de séquences pseudo-aléatoires de signaux à quatre niveaux |
| US3614399A (en) * | 1968-08-30 | 1971-10-19 | John C Linz | Method of synthesizing low-frequency noise |
| GB1322362A (en) * | 1970-06-16 | 1973-07-04 | Maritsas D | Generating pseudo-random sequences |
| US3790768A (en) * | 1972-09-28 | 1974-02-05 | Prayfel Inc | Random number generator |
| FR2304222A1 (fr) * | 1975-03-12 | 1976-10-08 | Cit Alcatel | Generateur de sequences numeriques pseudo-aleatoires |
| DE2649502C2 (de) * | 1976-10-28 | 1978-11-23 | Guenter Wulff-Apparatebau Gmbh, 1000 Berlin | Schaltungsanordnung für die Zufallsauswahl einer Zahlenmenge |
| US4348597A (en) * | 1980-05-27 | 1982-09-07 | Weber Harold J | Latchup resistant pseudorandom binary sequence generator |
| US4646032A (en) * | 1980-09-22 | 1987-02-24 | Rockwell International Corporation | Controlled oscillator having random variable frequency |
| US4684903A (en) * | 1980-09-22 | 1987-08-04 | Rockwell International Corporation | Controlled oscillator having random variable frequency |
| US4545024A (en) * | 1983-04-27 | 1985-10-01 | At&T Bell Laboratories | Hybrid natural random number generator |
| US4769777A (en) * | 1986-06-25 | 1988-09-06 | General Electric Company | Unpredictable bit stream generator |
-
1988
- 1988-10-28 US US07/264,467 patent/US4905176A/en not_active Expired - Fee Related
-
1989
- 1989-08-18 JP JP1211541A patent/JPH0658623B2/ja not_active Expired - Lifetime
- 1989-10-12 EP EP19890118953 patent/EP0365930A3/en not_active Withdrawn
Also Published As
| Publication number | Publication date |
|---|---|
| JPH02128218A (ja) | 1990-05-16 |
| US4905176A (en) | 1990-02-27 |
| EP0365930A2 (en) | 1990-05-02 |
| EP0365930A3 (en) | 1992-04-29 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH0658623B2 (ja) | 乱数発生器 | |
| US8260835B2 (en) | Random number generator with ring oscillation circuit | |
| US8150900B2 (en) | Random number generation based on logic circuits with feedback | |
| JP3604674B2 (ja) | 乱数生成回路 | |
| US6163224A (en) | PLL circuit and method of controlling the same | |
| US6065029A (en) | Method and system for providing a random number generator | |
| US5425074A (en) | Fast programmable/resettable CMOS Johnson counters | |
| Durga et al. | Design and synthesis of lfsr based random number generator | |
| US20070244950A1 (en) | Method and Apparatus for Generating Random Data | |
| US4769777A (en) | Unpredictable bit stream generator | |
| JP2006139756A (ja) | 乱数発生器および乱数を発生する方法 | |
| TW202034158A (zh) | 隨機數產生器 | |
| JP2012186809A (ja) | 乱数を発生させるための装置および方法 | |
| EP0238874B1 (en) | Double clock frequency timing signal generator | |
| US7233212B2 (en) | Oscillator array with row and column control | |
| US9858042B1 (en) | Configurable ring oscillator | |
| JPH06509200A (ja) | 乱数発生装置並びに方法 | |
| US7587439B1 (en) | Method and apparatus for generating a random bit stream in true random number generator fashion | |
| TWI579763B (zh) | 具有亂數產生模式的儲存電路 | |
| US10140096B1 (en) | Preventing ring oscillator phase-lock | |
| EP0511423B1 (en) | Electrical circuit for generating pulse strings | |
| US6661864B2 (en) | Counter circuit for detecting erroneous operation and recovering to normal operation by itself | |
| WO2004051458A2 (en) | System and method for true random number generation | |
| JPH03114315A (ja) | 擬似雑音符号発生装置における先頭又は任意ビットパルス生成回路およびサンプリングパルス生成回路 | |
| JP2002539662A (ja) | ランダム信号発生器並びにランダム信号の発生方法 |