EP1573509A2 - System and method for true random number generation - Google Patents
System and method for true random number generationInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
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)
- Pulse Circuits (AREA)
- Manipulation Of Pulses (AREA)
- Networks Using Active Elements (AREA)
- Oscillators With Electromechanical Resonators (AREA)
Abstract
Description
Claims
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 (en) | 2005-09-14 |
Family
ID=32469604
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP03772477A Withdrawn EP1573509A2 (en) | 2002-12-05 | 2003-11-18 | System and method for true random number generation |
Country Status (6)
Country | Link |
---|---|
EP (1) | EP1573509A2 (en) |
JP (1) | JP2006509286A (en) |
KR (1) | KR20050084153A (en) |
CN (1) | CN1720501A (en) |
AU (1) | AU2003280091A1 (en) |
WO (1) | WO2004051458A2 (en) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE602005023910D1 (en) | 2004-10-15 | 2010-11-11 | Nxp Bv | Integrated circuit with a true random number generator |
CN100505540C (en) * | 2004-11-24 | 2009-06-24 | 中国科学院物理研究所 | Method and device for producing true random numbers |
CN100461089C (en) * | 2006-03-15 | 2009-02-11 | 中兴通讯股份有限公司 | Method for generating random number |
CN100458685C (en) * | 2006-05-26 | 2009-02-04 | 北京中星微电子有限公司 | Device and method for generating randow number |
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 (en) * | 2014-02-27 | 2017-01-11 | 浙江大学 | Low-power-consumption random number generator |
KR101630791B1 (en) | 2015-03-27 | 2016-06-16 | 황순영 | Method of generating true random number from pseudo random number and computer readable medium |
Citations (1)
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)
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 (en) * | 1989-03-15 | 1990-09-26 | Oki Electric Ind Co Ltd | Random number generator |
JP2002268874A (en) * | 2001-03-07 | 2002-09-20 | Toshiba Corp | Random number seed generating circuit, driver provided with the same and sd memory card system |
JP4521708B2 (en) * | 2001-03-12 | 2010-08-11 | ルネサスエレクトロニクス株式会社 | Random number generator |
-
2003
- 2003-11-18 KR KR1020057010124A patent/KR20050084153A/en not_active Application Discontinuation
- 2003-11-18 CN CNA2003801052696A patent/CN1720501A/en active Pending
- 2003-11-18 EP EP03772477A patent/EP1573509A2/en not_active Withdrawn
- 2003-11-18 WO PCT/IB2003/005265 patent/WO2004051458A2/en active Application Filing
- 2003-11-18 JP JP2004556611A patent/JP2006509286A/en active Pending
- 2003-11-18 AU AU2003280091A patent/AU2003280091A1/en not_active Abandoned
Patent Citations (1)
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)
Title |
---|
See also references of WO2004051458A3 * |
Also Published As
Publication number | Publication date |
---|---|
WO2004051458A3 (en) | 2004-12-02 |
KR20050084153A (en) | 2005-08-26 |
JP2006509286A (en) | 2006-03-16 |
CN1720501A (en) | 2006-01-11 |
WO2004051458A2 (en) | 2004-06-17 |
AU2003280091A1 (en) | 2004-06-23 |
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 | |
US8209367B2 (en) | Random number generator | |
JP3696209B2 (en) | Seed generation circuit, random number generation circuit, semiconductor integrated circuit, IC card and information terminal device | |
ATE254775T1 (en) | FAST RANDOM NUMBER GENERATOR | |
US20130346459A1 (en) | Method for generating random numbers | |
KR950009450A (en) | Data Synchronization System and Method | |
JPH06509200A (en) | Random number generator and method | |
EP1573509A2 (en) | System and method for true random number generation | |
CN100359803C (en) | Random variation analog bias signal device in random number generator | |
US6424691B1 (en) | Phase locked loop clock divider utilizing a high speed programmable linear feedback shift register | |
CN111124363B (en) | True random number generation method and true random number generator | |
JP4417389B2 (en) | Random number generator and method using digital logic | |
CN114115807A (en) | Random number generator and random number generation method | |
JP5119417B2 (en) | Pseudo random number generator | |
JP2010002959A (en) | Pseudo-random number generating device | |
CN111782179B (en) | True random number generator | |
US9116764B2 (en) | Balanced pseudo-random binary sequence generator | |
JP6886700B2 (en) | Random number generation circuit | |
EP1660988B1 (en) | Hardware generator employing analog and digital correction circuits for generating uniform and gaussian distributed true random numbers | |
CN100416492C (en) | Random number generator and probability generator | |
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 |