EP1573509A2 - System und verfahren zur echten zufallszahlenerzeugung - Google Patents

System und verfahren zur echten zufallszahlenerzeugung

Info

Publication number
EP1573509A2
EP1573509A2 EP03772477A EP03772477A EP1573509A2 EP 1573509 A2 EP1573509 A2 EP 1573509A2 EP 03772477 A EP03772477 A EP 03772477A EP 03772477 A EP03772477 A EP 03772477A EP 1573509 A2 EP1573509 A2 EP 1573509A2
Authority
EP
European Patent Office
Prior art keywords
frequency
counter
oscillator
shifter
stages
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.)
Withdrawn
Application number
EP03772477A
Other languages
English (en)
French (fr)
Inventor
Sam Mitchum
Jack Ehrhardt
Bill Lester
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.)
NXP BV
Original Assignee
Koninklijke Philips Electronics NV
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 Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of EP1573509A2 publication Critical patent/EP1573509A2/de
Withdrawn 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
    • 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

Definitions

  • the present invention relates to a method for providing a true random number generator. More particularly, the present invention relates to a system and method for providing an entirely digital and/or digitally synthesizable true random number generator for incorporation on integrated circuits (IC) using any standard logic synthesis tool or comparable technique.
  • IC integrated circuits
  • Random number generation is employed in a variety of applications, including for example, computer security, cryptography, audio systems testing, bit error testing and secure communications.
  • Current efforts in the area of random number generation typically require an analog oscillator to obtain frequency variance, or metastable flip flops to provide an unpredictable pattern, or analog circuitry to filter and amplify thermal noise, or some combination of each.
  • TRNGs true random number generators
  • the system and method comprise providing at least a counter, a shifter, a first oscillator for cooperating with the counter, a second oscillator for cooperating with the shifter, and a microprocessor for cooperating with each of the aforesaid components.
  • the system and method of the present invention provides for the generation of a random number without the use of analog clocks or metastable configurations because the generating clocks of the present invention are digitally controlled ring oscillators designed with frequency perturbation based on digital (high or low) input signals thereby allowing random frequencies to be generated from truly digital signals. Accordingly, random numbers can be generated using simple counters and shifters. TRNGs designed using the system and method of the present invention can be synthesized for incorporation on an IC using any standard logic synthesis tool or comparable technique.
  • Fig. 1 is a block diagram of a system in accordance with an illustrative embodiment of the present invention
  • Fig. 2 is a block diagram of another illustrative embodiment of the present invention.
  • Fig. 3 is a schematic diagram of a true random number generating circuit in accordance with an illustrative embodiment of the present invention
  • Fig. 4 is a flow chart of one method for providing a true random number in accordance with the present invention.
  • Ring oscillators typically have an odd number of gates that are connected in series to form a ring, and in some cases a gate of such ring oscillators may have as an input a combination of outputs of other gates in the ring. Ring oscillators can be sampled at a certain point to provide a random or a pseudo random number.
  • TRNGs can provide random numbers and/or pseudo random numbers, it is realized by those in the art that many of these TRNGs can be periodic in nature and consequently generate numbers that are less random than desirable. Further, as it is desirable to efficiently incorporate TRNGs on a chip or an IC so as to not require special components on the chip or IC to generate random numbers, a system that is relatively compact and that dissipates relatively small amounts of power is desirable.
  • system 10 can accommodate at least a 2 Mbits/sec (62,500 numbers per second) rate while providing unpredictable/non-deterministic number generation, and can optionally operate with or without a seed value.
  • System 10 is preferably biased against long runs of digital 0's and digital l's.
  • System 10 preferably can also have a sleep mode to reduce required power requirements.
  • System 10 has at least one counter 20 for generating bits, at least one shifter 30 for scrambling bits, at least one first oscillator 40 for cooperating with said at least one counter 20, at least one second oscillator 50 for cooperating with said at least one shifter 30, and a microprocessor 60 for cooperating with each of the aforesaid components to provide a frequency perturbation based on digital input signals.
  • Counter 20 preferably has an initialization register for receiving an initialization bit value 5, the bit value preferably being inserted at a trailing edge of an initialization write of microprocessor 60.
  • Counter 20 is preferably a 32-bit up counter.
  • counter 20 can also be 16-bit up counter and a 16-bit down counter, and/or any other comparable type of counter suitable for accomplishing the above-identified objects of the present invention. If the 16-bit counters are used, the outputs thereof may be interleaved into shifter 30. Shifter 30 preferably being a barrel shifter, and more particularly a 32-bit barrel shifter. Shifter 30 can be any other comparable type of shifter suitable for accomplishing the above-identified objects of the present invention.
  • First and second oscillators 40 and 50 are preferably ring oscillators each having a differing odd number of stages, first oscillator 40 preferably being a 5-stage oscillator and second oscillator 50 preferably being a 7-stage oscillator.
  • first and second oscillators 40 and 50 can also be any other comparable type of oscillator sufficient to accomplish the above-identified objects of the present invention.
  • First and second oscillators 40 and 50 can preferably be constructed from a combination of inverters, AND gates, NAND gates, NOR gates, XOR gates, and/or any other similar type components. Refer generally to Fig. 3 for one illustrative embodiment of system 10 employing an illustrative combination of components in accordance with the present invention.
  • system 10 can preferably include a whitening filter and/or a linear feedback shift register (“LFSR") 70 between shifter 30 and microprocessor 60. This arrangement preferably facilitates using a counter value to modify an output of shifter 30.
  • LFSR 70 can have any number of stages appropriate for accomplishing the above-identified objectives of the present invention.
  • System 10 can also include a one- hot shift selector 80 between second oscillator 50 and shifter 30.
  • Fig. 4 is a flow chart of one method for providing a true random number in accordance with an illustrative embodiment of the present invention generally represented by reference numeral 100. Method 100 comprising at least the steps of 110, 120, 130 and 140.
  • Step 110 is to utilize at least one counters 20 to generate bits.
  • counter 20 is initialized by a write from microprocessor 60 to an initialization register of the counter, the microprocessor having some rate or frequency.
  • counter 20 is clocked by first oscillator 40 at a rate or frequency that is preferably chip dependent on the physical characteristics of the components used to form the first oscillator and asynchronous to that of the microprocessor.
  • Step 120 is to utilize at least one shifter 30 to scramble bits.
  • shifter 30 cooperates with counter 20, shifter 30 being continuously spun by second oscillator 50 at a rate or frequency asynchronous to that of counter 20 and microprocessor 60.
  • the shifter rate or frequency is faster than that of the microprocessor.
  • Step 130 is to utilize oscillators 40 and 50 to simultaneously cooperate with counter 20 and shifter 30, respectively.
  • Step 140 is to cross couple asynchronous frequency control bits for oscillators 40 and 50 from counter 20 and shifter 30. Accordingly, it is preferable that when microprocessor 60 reads a random number having a certain number of bits, such as for example 32 bits, shifter 30 will preferably inputs a current counter 20 value and shift it by a current shift count (e.g. 0 to 31). Preferably, as the frequencies of each of components (i.e., the counter, the shifter and the microprocessor) are asynchronous to each other, a non- predictable pattern of bit numbers is returned to the microprocessor.

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)
  • Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)
  • Manipulation Of Pulses (AREA)
  • Pulse Circuits (AREA)
  • Oscillators With Electromechanical Resonators (AREA)
  • Networks Using Active Elements (AREA)
EP03772477A 2002-12-05 2003-11-18 System und verfahren zur echten zufallszahlenerzeugung Withdrawn EP1573509A2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US43134102P 2002-12-05 2002-12-05
US431341P 2002-12-05
PCT/IB2003/005265 WO2004051458A2 (en) 2002-12-05 2003-11-18 System and method for true random number generation

Publications (1)

Publication Number Publication Date
EP1573509A2 true EP1573509A2 (de) 2005-09-14

Family

ID=32469604

Family Applications (1)

Application Number Title Priority Date Filing Date
EP03772477A Withdrawn EP1573509A2 (de) 2002-12-05 2003-11-18 System und verfahren zur echten zufallszahlenerzeugung

Country Status (6)

Country Link
EP (1) EP1573509A2 (de)
JP (1) JP2006509286A (de)
KR (1) KR20050084153A (de)
CN (1) CN1720501A (de)
AU (1) AU2003280091A1 (de)
WO (1) WO2004051458A2 (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE483197T1 (de) 2004-10-15 2010-10-15 Nxp Bv Integrierte schaltung mit einem echten zufallszahlengenerator
CN100505540C (zh) * 2004-11-24 2009-06-24 中国科学院物理研究所 一种产生真随机数的方法及其装置
CN100461089C (zh) * 2006-03-15 2009-02-11 中兴通讯股份有限公司 一种随机数的产生方法
CN100458685C (zh) * 2006-05-26 2009-02-04 北京中星微电子有限公司 产生随机数的装置及方法
US8676870B2 (en) 2007-09-18 2014-03-18 Seagate Technology Llc Active test and alteration of sample times for a ring based random number generator
CN103885747B (zh) * 2014-02-27 2017-01-11 浙江大学 低功耗随机数发生器
KR101630791B1 (ko) 2015-03-27 2016-06-16 황순영 의사 난수로부터 진성 난수를 생성하는 방법 및 이 방법을 컴퓨터상에서 실행할 수 있는 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4855690A (en) * 1987-08-10 1989-08-08 Dallas Semiconductor Corporation Integrated circuit random number generator using sampled output of variable frequency oscillator

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5065256A (en) * 1987-09-21 1991-11-12 Fuji Photo Film Co., Ltd. Method of and apparatus for processing image signal
JPH02242327A (ja) * 1989-03-15 1990-09-26 Oki Electric Ind Co Ltd 乱数発生装置
JP2002268874A (ja) * 2001-03-07 2002-09-20 Toshiba Corp 乱数シード生成回路及びこれを備えたドライバ、並びに、sdメモリカードシステム
JP4521708B2 (ja) * 2001-03-12 2010-08-11 ルネサスエレクトロニクス株式会社 乱数生成装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4855690A (en) * 1987-08-10 1989-08-08 Dallas Semiconductor Corporation Integrated circuit random number generator using sampled output of variable frequency oscillator

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of WO2004051458A3 *

Also Published As

Publication number Publication date
AU2003280091A1 (en) 2004-06-23
WO2004051458A3 (en) 2004-12-02
WO2004051458A2 (en) 2004-06-17
JP2006509286A (ja) 2006-03-16
CN1720501A (zh) 2006-01-11
KR20050084153A (ko) 2005-08-26

Similar Documents

Publication Publication Date Title
US6480072B1 (en) Method and apparatus for generating random numbers
US8150900B2 (en) Random number generation based on logic circuits with feedback
JP3696209B2 (ja) シード生成回路、乱数生成回路、半導体集積回路、icカード及び情報端末機器
US20090172055A1 (en) Random Number Generator
DE60006650D1 (de) Schneller zufallszahlengenerator
US20130346459A1 (en) Method for generating random numbers
KR950009450A (ko) 데이타 동기 시스템 및 방법
JPH06509200A (ja) 乱数発生装置並びに方法
EP1573509A2 (de) System und verfahren zur echten zufallszahlenerzeugung
CN100359803C (zh) 随机数产生器中的随机变化模拟偏压信号装置
US6424691B1 (en) Phase locked loop clock divider utilizing a high speed programmable linear feedback shift register
CN111124363B (zh) 一种真随机数生成方法及真随机数发生器
JP4417389B2 (ja) デジタルロジックを利用した乱数発生装置及び方法
CN114115807A (zh) 随机数生成器及随机数生成方法
JP5119417B2 (ja) 擬似乱数生成装置
JP2010002959A (ja) 擬似乱数生成装置
US9116764B2 (en) Balanced pseudo-random binary sequence generator
JP6886700B2 (ja) 乱数生成回路
EP1660988B1 (de) Hardware-generator mit analogen und digitalen korrekturschaltungen zur erzeugung von gleichförmigen und gaussverteilten echten zufallszahlen
CN100416492C (zh) 随机数发生装置和概率发生装置
CN111782179A (zh) 一种真随机数发生器
US20060198479A1 (en) Data synchronizer system
Sekhar et al. An Efficient Pseudo Random Number Generator for Cryptographic Applications
US6639435B2 (en) Adjustable frequency divider
Mehra et al. Design of Hexagonal Oscillator for True Random Number Generation

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20050705

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LI LU MC NL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL LT LV MK

DAX Request for extension of the european patent (deleted)
RIN1 Information on inventor provided before grant (corrected)

Inventor name: LESTER, BILLC/O NXP SEMICONDUCTORS

Inventor name: EHRHARDT, JACKC/O NXP SEMICONDUCTORS

Inventor name: MITCHUM, SAMC/O NXP SEMICONDUCTORS

17Q First examination report despatched

Effective date: 20070215

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: NXP B.V.

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20080520