JP3502065B2 - 乱数発生装置 - Google Patents

乱数発生装置

Info

Publication number
JP3502065B2
JP3502065B2 JP2001163428A JP2001163428A JP3502065B2 JP 3502065 B2 JP3502065 B2 JP 3502065B2 JP 2001163428 A JP2001163428 A JP 2001163428A JP 2001163428 A JP2001163428 A JP 2001163428A JP 3502065 B2 JP3502065 B2 JP 3502065B2
Authority
JP
Japan
Prior art keywords
random
pulse wave
random number
noise
pulse train
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
JP2001163428A
Other languages
English (en)
Other versions
JP2002323971A (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.)
Sangikyo Corp
Original Assignee
Sangikyo Corp
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 Sangikyo Corp filed Critical Sangikyo Corp
Priority to JP2001163428A priority Critical patent/JP3502065B2/ja
Priority to PCT/JP2002/003075 priority patent/WO2002091167A1/ja
Publication of JP2002323971A publication Critical patent/JP2002323971A/ja
Priority to US10/692,483 priority patent/US7349935B2/en
Application granted granted Critical
Publication of JP3502065B2 publication Critical patent/JP3502065B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • 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

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)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、情報セキュリティ
用のIDパスワードや各種暗号鍵などに使用するための
乱数を発生する乱数発生装置に関する。
【0002】
【発明が解決しようとする課題】IDパスワードや各種
暗号鍵などの安全性を高めるには、1/0の出現確率が
各々1/2の等確率で、各ビットが他と独立してビット
間に相関のない真正乱数を使用する必要がある。真正乱
数は、実際にサイコロやコインを振るわけにもいかない
ので、電気的な雑音の電圧変化を測定するなどの物理乱
数を用いて生成することが多いが、物理乱数をそのまま
用いても真正乱数とはならない。
【0003】物理乱数のビット列は、1/0が無規則に
出現するが、1/0の出現バランスは不確定さを持つた
めインバランスとなる。そのため、物理乱数のインバラ
ンスを解消する方法として、出力パルス列の積分値を乱
数生成側にフィードバックして雑音レベルを制御した
り、出力パルス列をシフトレジスタに入力してパラレル
変換したパルス列の論理和を求めて乱数を生成するなど
の方法が提案されている。ところが、いずれの方法も偶
然性に支配される要素が多いため、確実に1/0の出現
バランスを等確率にすることは困難であった。
【0004】そこで本発明は、偶然性に支配されること
なく物理乱数のインバランスを解消して確実に1/0の
出現バランスを等確率にできる乱数発生装置を提供する
ことを目的になされたものである。
【0005】
【課題を解決するための手段】かかる目的を達成するた
めに、本発明は以下のように構成した。すなわち、請求
項1の発明は、物理的な雑音を測定してランダム雑音を
発生するランダム雑音発生手段と、このランダム雑音を
波形整形してランダムパルス波を生成するランダムパル
ス波生成手段と、このランダムパルス波を一定周期のク
ロックでサンプリングしてサンプル値のオン・オフをパ
ルス符号とする一定周期の2値パルス列に変換する2値
パルス列変換手段と、この2値パルス列の極性を一定周
期おきに反転させて所定の単位符号長における1/0符
号の出現バランスを平滑化する2値パルス列符号平滑化
手段と、を備え、前記2値パルス列符号の乱数列を発生
してなる乱数発生装置である。
【0006】請求項2の発明は、前記ランダム雑音の発
生間隔をパルスのオン・オフ時間として前記ランダムパ
ルス波を生成してなる請求項1記載の乱数発生装置であ
る。請求項3の発明は、前記ランダム雑音発生手段を複
数用いて合成したランダム雑音を前記ランダムパルス波
生成手段に入力して前記ランダムパルス波のオン・オフ
の発生頻度を増大させてなる請求項1記載の乱数発生装
置である。請求項4の発明は、前記ランダムパルス波生
成手段を対数増幅器とコンパレータおよび単安定マルチ
バイブレータまたはトグルフリップフロップで構成して
なる請求項1記載の乱数発生装置である。請求項5の発
明は、前記2値パルス列符号平滑化手段を前記クロック
の周波数を1/2に分周する1/2分周器とマルチプレ
クサまたはXORゲートで構成してなる請求項1記載の
乱数発生装置である。
【0007】
【発明の実施の形態】以下に図面を参照して本発明の実
施の形態について説明する。図1に、本発明を実施した
乱数発生装置のブロック図を示す。また、各ブロックの
信号波形とそのタイミングチャートを図2に示す。乱数
発生装置は、雑音源1が発生する周期性のないランダム
雑音nを波形整形回路2に入力してランダムパルス波p
1を生成する。
【0008】次に、ランダムパルス波p1と発振器3の
クロックc1をサンプル&ホールド回路4に入力して一
定周期の2値パルス列p2を生成する。そして、2値パ
ルス列p2とクロックc1を分周器5で1/2に分周し
た1/2分周クロックc2をスイッチング回路6に入力
して2値パルス列p2の極性を1周期おきに反転させ、
1/0符号の出現バランスを平滑化した平滑2値パルス
列p3を出力する。
【0009】雑音源1は、熱雑音、ショット雑音、電子
なだれなどによる白色雑音を物理的な雑音の発生源とす
る。
【0010】波形整形回路2は、ランダム雑音nを対数
増幅回路で所定の電圧レベルに増幅し、これをコンパレ
ータに入力してトリガレベル以上の雑音波形をトリガパ
ルスとして取り出す。そして、これを単安定マルチバイ
ブレータに入力して外付けのCRによって決まる所定の
パルス幅を有するランダムパルス波p1を生成する。こ
のときのパルス幅は、サンプリング定理によりクロック
c1のパルス幅の2倍以上に設定する。また、このとき
のトリガパルスはランダムパルス波p1の立ち上がり、
もしくは立ち下がりのエッジ部分となり、トリガパルス
の幅が長くなったり短くなったりしても一定のパルス幅
を得ることができる。
【0011】ランダム雑音nの発生間隔にばらつきがあ
る場合は、トリガパルスをT入力のたびにQ出力が反転
するT−FF2進カウンタに入力してトリガパルスの発
生間隔をパルスのオン・オフ時間とするランダムパルス
波p1を生成してもよい。これにより、ランダムパルス
波p1のオン・オフ時間の割合を均等にすることができ
る。
【0012】乱数の発生を高速化する場合は、複数の同
一あるいは多種類の雑音源1の出力を合成し、波形整形
回路2を介してサンプル&ホールド回路4に入力する。
これにより、ランダム雑音nの発生頻度を増大させてラ
ンダムパルス波p1のオン・オフの切換えを頻繁にす
る。この場合、ランダム雑音nの発生頻度に応じてクロ
ックc1の周期を短くし、クロックc1の周期に応じて
ランダムパルス波p1のパルス幅を適正な長さに調節す
る必要がある。
【0013】サンプル&ホールド回路4は、図3に示す
ように、FFを2個使用してC入力は入力側のFFに直
接、出力側のFFにはインバータを介して反転したクロ
ックc1を供給する。これにより、C入力のアップエッ
ジで入力側のFFに記憶されたD入力のランダムパルス
波p1のオン・オフは、出力側のFFのC入力が“0”
なのでそのまま出力側のFFのQ出力に転送され、C入
力のダウンエッジでは出力側のFFのC入力がアップエ
ッジになるのでQ出力を保持し、次のC入力のアップエ
ッジまでその状態を変えずにいる。このため、C入力の
アップエッジでランダムパルス波p1のオン・オフ状態
を記憶した2値パルス列p2がクロックc1の1/2の
周期でクロックc1に同期して出力される。
【0014】分周器5は、T−FFのT入力にクロック
c1を2発入力するたびにQ出力を元の状態に戻してク
ロックc1を1/2に分周する。あるいは、図4に示す
ように、D−FFの反転Q出力をD入力に接続してD−
FFをT−FFとして動作させてもよい。このとき、反
転Q出力が次のD入力となるので、C入力のあるたびに
Q出力が反転する。
【0015】スイッチング回路6は、図5に示すよう
に、2個のANDゲートとORゲートおよびインバータ
を組み合わせたマルチプレクサで構成し、1/2分周ク
ロックc2を制御入力として制御入力の“1”または
“0”により2値パルス列p2の正相出力と逆相出力の
いずれか一方を選択して平滑2値パルス列p3を出力す
る。あるいは、図6に示すように、2値パルス列p2と
1/2分周クロックc2をXORゲートに入力して両者
を排他的論理和で加算し、1/2分周クロックc2の1
/0に同期して2値パルス列p2の符号を1周期毎に正
逆転させて平滑2値パルス列p3を出力してもよい。な
お、実施例では1/2分周により正相出力と逆相出力を
切換える方法をとっているが、分周度合いを高めて所定
の単位符号長における1/0符号の出現バランスを平滑
化する方法も実施可能である。
【0016】
【発明の効果】以上説明したように、本発明の乱数発生
装置は、ランダム雑音を波形整形してランダムパルス波
を生成し、これをクロックでサンプリングして一定周期
の2値パルス列に変換し、その極性を一定周期おきに反
転させて2値パルス列符号の乱数列を発生する。従っ
て、本発明によれば、通常、2値パルス列の1/0の出
現バランスは、雑音の発生頻度に左右されるのでインバ
ランスとなるが、このように2値パルス列の極性を一定
周期おきに反転させると、符号配列のインバランス性が
平滑化されて確実に1/0の出現確率がおのおの1/2
に近い2値パルス列が得られる。
【0017】例えば、2値パルス列を“0110001
1001110000100”とすると、1/0の出現
確率はおのおの8/20と12/20となり“0”に偏
っているが、その極性を1周期おきに反転させると“0
0110110011011010001”となり、1
/0の出現確率はおのおの10/20と10/20で、
1/2あるいはそれに近い値となる。
【0018】また、本発明の乱数発生装置は、ランダム
雑音の発生間隔をパルスのオン・オフ時間としてランダ
ムパルス波を生成する。従って、本発明によれば、通
常、ランダムパルス波のオン・オフ時間の割合は、雑音
の発生頻度に左右されるのでいずれか一方に偏るが、こ
のようにランダム雑音の発生間隔をパルスのオン・オフ
時間とすると、その割合を均等にすることができる。
【0019】また、本発明の乱数発生装置は、ランダム
雑音発生手段を複数用いて合成したランダム雑音をラン
ダムパルス波生成手段に入力してランダムパルス波のオ
ン・オフの発生頻度を増大させる。従って、本発明によ
れば、ランダムパルス波をサンプリングして生成する2
値パルス列の周波数をランダムパルス波のオン・オフの
発生頻度に応じて高くできるので、乱数の発生をより高
速化できる。
【0020】また、本発明の乱数発生装置は、ランダム
パルス波生成手段を対数増幅器とコンパレータおよび単
安定マルチバイブレータまたはトグルフリップフロップ
で構成する。また、2値パルス列符号平滑化手段をクロ
ックの周波数を1/2に分周する1/2分周器とマルチ
プレクサまたはXORゲートで構成する。
【0021】従って、本発明によれば、デジタル回路を
主体に装置を構成できるので、微弱信号を扱うアナログ
回路の部分が少なくなり、外乱などの影響を受け難くな
って装置の信頼性が向上する。また、回路が簡素化さ
れ、アナログ的な調整もほとんど不要になるので、製造
コストを低減すると共に、量産化も容易になる。
【図面の簡単な説明】
【図1】本発明を実施した乱数発生装置のブロック図で
ある。
【図2】図1の各ブロックの信号波形とそのタイミング
チャートである。
【図3】本発明を実施したサンプル&ホールド回路の論
理図である。
【図4】本発明を実施した分周器の論理図の変形例であ
る。
【図5】本発明を実施したスイッチング回路の論理図で
ある。
【図6】本発明を実施したスイッチング回路の論理図の
変形例である。
【符号の説明】
1 雑音源 2 波形整形回路 3 発振器 4 サンプル&ホールド回路 5 分周器 6 スイッチング回路
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開2000−298577(JP,A) 特開2000−66592(JP,A) 特開2000−276330(JP,A) 特開2000−276329(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 7/58

Claims (5)

    (57)【特許請求の範囲】
  1. 【請求項1】物理的な雑音を測定してランダム雑音を発
    生するランダム雑音発生手段と、 このランダム雑音を波形整形してランダムパルス波を生
    成するランダムパルス波生成手段と、 このランダムパルス波を一定周期のクロックでサンプリ
    ングして、サンプル値のオン・オフをパルス符号とする
    一定周期の2値パルス列に変換する2値パルス列変換手
    段と、 この2値パルス列の極性をクロックの分周周期毎に正逆
    転させて、所定の単位符号長における1/0符号の出現
    バランスを平滑化する2値パルス列符号平滑化手段と、 を備え、 前記2値パルス列符号の乱数列を発生してなる乱数発生
    装置。
  2. 【請求項2】 前記ランダム雑音の発生間隔をパルスの
    オン・オフ時間として前記ランダムパルス波を生成して
    なる請求項1記載の乱数発生装置。
  3. 【請求項3】 前記ランダム雑音発生手段を複数用いて
    合成したランダム雑音を前記ランダムパルス波生成手段
    に入力して前記ランダムパルス波のオン・オフの発生頻
    度を増大させてなる請求項1記載の乱数発生装置。
  4. 【請求項4】 前記ランダムパルス波生成手段を対数増
    幅器とコンパレータおよび単安定マルチバイブレータま
    たはトグルフリップフロップで構成してなる請求項1記
    載の乱数発生装置。
  5. 【請求項5】 前記2値パルス列符号平滑化手段を前記
    クロックの周波数を1/2に分周する1/2分周器とマ
    ルチプレクサまたはXORゲートで構成してなる請求項
    1記載の乱数発生装置。
JP2001163428A 2001-04-24 2001-04-24 乱数発生装置 Expired - Fee Related JP3502065B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2001163428A JP3502065B2 (ja) 2001-04-24 2001-04-24 乱数発生装置
PCT/JP2002/003075 WO2002091167A1 (fr) 2001-04-24 2002-03-28 Generateur de nombres aleatoires
US10/692,483 US7349935B2 (en) 2001-04-24 2003-10-23 Random number generation apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001163428A JP3502065B2 (ja) 2001-04-24 2001-04-24 乱数発生装置

Publications (2)

Publication Number Publication Date
JP2002323971A JP2002323971A (ja) 2002-11-08
JP3502065B2 true JP3502065B2 (ja) 2004-03-02

Family

ID=19006402

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001163428A Expired - Fee Related JP3502065B2 (ja) 2001-04-24 2001-04-24 乱数発生装置

Country Status (3)

Country Link
US (1) US7349935B2 (ja)
JP (1) JP3502065B2 (ja)
WO (1) WO2002091167A1 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6707345B2 (en) * 2002-01-14 2004-03-16 Ip-First, Llc Oscillator frequency variation mechanism
GB0218716D0 (en) * 2002-08-12 2002-09-18 Mitel Knowledge Corp Privacy and security mechanism fo presence systems with tuple spaces
US7328304B2 (en) * 2004-02-27 2008-02-05 Intel Corporation Interface for a block addressable mass storage system
WO2005114386A1 (ja) 2004-05-24 2005-12-01 Leisure Electronics Technology Co., Ltd. 乱数取出し方法及びこれを用いた乱数生成装置
US7688976B2 (en) * 2005-07-14 2010-03-30 Tara Chand Singhal Random wave envelope derived random numbers and their use in generating transient keys in communication security application part I
US8738675B2 (en) * 2006-08-03 2014-05-27 Salih Ergun Random numbers generation using continuous-time chaos
CN1949708B (zh) * 2006-11-10 2011-02-02 华为技术有限公司 随机数发生装置、方法及对应的数据交互***
US7904494B2 (en) * 2006-12-08 2011-03-08 International Business Machines Corporation Random number generator with random sampling
US20100281088A1 (en) * 2009-04-29 2010-11-04 Psigenics Corporation Integrated true random number generator
US20110191129A1 (en) * 2010-02-04 2011-08-04 Netzer Moriya Random Number Generator Generating Random Numbers According to an Arbitrary Probability Density Function
EP3147774A1 (fr) 2015-09-25 2017-03-29 Gemalto Sa Generateur d'horloge aleatoire

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5436973A (en) * 1988-05-09 1995-07-25 Hughes Aircraft Company Pseudo-random signal synthesizer with smooth, flat power spectrum
JPH0520292A (ja) * 1991-07-12 1993-01-29 Ricoh Co Ltd 乱数パルス列発生回路装置及び信号処理装置
US5402488A (en) * 1991-08-30 1995-03-28 Karlock; James A. Method and apparatus for modifying a video signal
JP2541480B2 (ja) * 1993-10-06 1996-10-09 日本電気株式会社 擬似乱数発生装置
JP3382695B2 (ja) * 1994-01-27 2003-03-04 エヌイーシーネットワーク・センサ株式会社 2値化雑音信号発生方法とその装置
JP2000066592A (ja) 1998-08-19 2000-03-03 Syst Kogaku Kk 乱数生成装置
JP2000066590A (ja) * 1998-08-26 2000-03-03 Nippon Telegr & Teleph Corp <Ntt> データ保管システム、データ保管方法、保管データ存在証明方法、プログラム記録媒体
JP3447976B2 (ja) * 1999-03-26 2003-09-16 システム工学株式会社 故障判断機能を備えた乱数生成装置
JP2000276329A (ja) * 1999-03-26 2000-10-06 Takeshi Saito 超高速物理乱数生成装置
JP3680091B2 (ja) * 1999-04-13 2005-08-10 株式会社日立製作所 乱数生成装置
FR2806555A1 (fr) * 2000-03-17 2001-09-21 St Microelectronics Sa Generateur de nombres pseudo-aleatoires

Also Published As

Publication number Publication date
WO2002091167A1 (fr) 2002-11-14
JP2002323971A (ja) 2002-11-08
US7349935B2 (en) 2008-03-25
US20040114761A1 (en) 2004-06-17

Similar Documents

Publication Publication Date Title
US7720895B2 (en) Random number generator and method for generating random numbers
US7376687B2 (en) Pseudo-random number generator
KR100847213B1 (ko) 난수 생성 방법 및 난수 생성기
US8583712B2 (en) Multi-bit sampling of oscillator jitter for random number generation
Golic New methods for digital generation and postprocessing of random data
Cherkaoui et al. Design, evaluation, and optimization of physical unclonable functions based on transient effect ring oscillators
KR101987141B1 (ko) 난수 발생기
JP3502065B2 (ja) 乱数発生装置
CN111258548A (zh) 一种真随机数发生器
US7295139B2 (en) Triggered data generator
JPH06509200A (ja) 乱数発生装置並びに方法
Yakut et al. Secure and efficient hybrid random number generator based on sponge constructions for cryptographic applications
JP2004537119A (ja) 疑似ランダムシーケンスを用いて乱数発生器を非相関とするための方法および装置
JPH04229495A (ja) 線形帰還シフト・レジスタの状態を模擬する方法および装置
JP5171420B2 (ja) 擬似乱数生成装置
US7436725B2 (en) Data generator having stable duration from trigger arrival to data output start
SE9301327D0 (sv) Sammansatt klocksignal
WO2004040838A1 (ja) 乱数生成装置
KR20120101836A (ko) 난수 발생 장치
JP2545010B2 (ja) ゲ―ト装置
JPH01265609A (ja) 擬似乱数発生装置
KR100333717B1 (ko) 입력신호의에지검출을이용한클럭발생장치
KR930005653B1 (ko) 클럭 가변회로
JPH03291577A (ja) 波形生成回路
JPH06244728A (ja) 波形発生器のトリガ同期化回路

Legal Events

Date Code Title Description
A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20031203

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20071212

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20081212

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20081212

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20091212

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20101212

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20101212

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20111212

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20111212

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20121212

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20131212

Year of fee payment: 10

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