EP3563229A1 - Method for environmental resistant true random number generation - Google Patents
Method for environmental resistant true random number generationInfo
- Publication number
- EP3563229A1 EP3563229A1 EP17823168.4A EP17823168A EP3563229A1 EP 3563229 A1 EP3563229 A1 EP 3563229A1 EP 17823168 A EP17823168 A EP 17823168A EP 3563229 A1 EP3563229 A1 EP 3563229A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- analog
- noise
- signals
- noise source
- digital
- 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
Definitions
- the present invention relates to random number generators (RNG) and more particularly to a system and method for implementing a true random number generator (TRNG).
- RNG random number generators
- TRNG true random number generator
- This random number can be used in electronics and computing applications and aspects can be applied in probability, statistics, or numerical analysis.
- Example applications can include generation of data-encryption keys, simulation and modeling, random sample selection from large data sets, or gaming applications.
- the simulation can be wireless channel simulation (e.g., the random number is used for multiple iterations of a simulated loop) and/or simulation of white noise on a modeled electronic circuit or photonic system.
- Random numbers are created by a random number generator.
- a True Random Number Generator TRNG
- PRNG Pseudo Random Number Generator
- a PRNG is an algorithm that given some "seed” will produce a deterministic sequence of pseudo random numbers and is also known as a Deterministic Random Bit Generator (DRBG).
- DRBG Deterministic Random Bit Generator
- the PRNG generates random numbers using a deterministic process (that is, predictable given knowledge of the process) to generate a series of outputs derived from an initial seed state. That initial seed state is best if provided from a true random number generator.
- Most "random" number sources used in systems today are built in software and are based upon a pseudo-random generator.
- PRNGs have historically been faster than TRNGs but PRNGs cannot generate a true random number because PRNGs employ deterministic algorithms. Thus, if the seed can be determined, the supposedly random numbers can be deterministically known
- Entropy is in general a measure of disorder in a physical system. In this specification, entropy refers to a measure of how unpredictable the measured properties of the entropy source are.
- a TRNG can only be built using a HW-based "entropy source” and can produce a nondeterministic sequence of truly random numbers.
- the TRNG is often used to "seed" software PRNGs and is also known as a Nondeterministic Random Bit Generator (NRBG).
- NRBG Nondeterministic Random Bit Generator
- the TRNG generates random numbers from a physical non-deterministic entropy source, such as white noise generated by a resistor, diode, or other electronic device, the time between radioactive particle decay, or other signal source that is essentially random.
- PRNGs pseudorandom number generators
- PRNGs software programs commonly used in computers to generate "random” numbers.
- PRNGs use a deterministic algorithm to produce numerical sequences. Although these pseudorandom sequences pass statistical pattern tests for randomness, by knowing the algorithm and the conditions used to initialize it, called the "seed", the output can be predicted.
- a dedicated TRNG is oftentimes not available on resource-constrained and/or space limited devices, such as mobile or portable electronic devices including phones, tablets and the like, for various reasons.
- resource-constrained devices such as mobile or portable electronic devices including phones, tablets and the like
- the monitoring equipment for certain physical processes can tend to be bulky, which makes it unsuitable for space limited applications.
- TRNG that can be implemented in resource-constrained and space limited devices that can produce high-quality random numbers in a cost- effective and space conserving manner in a way that is not sensitive to the
- a true random number generator (TRNG) system includes a first noise source configured to generate first analog noise signals and a second noise source identical to the first noise source and configured to generate second analog noise signals.
- An analog comparator receives the first analog noise signals and the second analog noise signals as inputs and outputs digital signals based on comparisons of the first analog noise signals and the second analog noise signals.
- a conversion system receives the digital signals and generates a random bit stream signal from the digital signals.
- An output pin is coupled to receive the random bit stream signal from the conversion system.
- a method of generating a true random number includes outputting first analog noise signals from a first noise source, and outputting a second analog noise signals from a second noise source, the second noise source being identical to the first noise source.
- the first analog noise signals and the second analog noise signals are compared with an analog
- Digital signals are output from the analog comparator which are indicative of the comparisons of the first analog noise signals and the second analog noise signals.
- the digital signals are converted to a random bit stream signal using a conversion system, and the random bit stream signal is outputted.
- TRNG system includes a first noise source configured to generate first analog noise signals, and a second noise source identical to the first noise source and configured to generate second analog noise signals.
- a differential amplifier receives the first analog noise signals and the second analog noise signals as inputs and outputs amplified difference signals indicative of a difference between the first analog noise signals and the second analog noise signals.
- An analog comparator receives the amplified difference signals, compares the analog difference signals to an analog reference signal and outputs digital signals based on the comparisons.
- a conversion system receives the digital signals and generates a random bit stream signal from the digital signals. An output connections is coupled to receive the random bit stream signal from the conversion system.
- FIG. 1 depicts a first embodiment of a true random number generation (TRNG) system 12.
- the TRNG system 12 includes a first noise source 14, a second noise source 16, an analog comparator 22 and a conversion system 24.
- the TRNG system 12 is implemented in a resource-constrained device 10, such as a mobile phone, tablet or other type of portable electronic device.
- the components of the TRNG system 12 can be implemented in any suitable combination of hardware, software, firmware, or combinations thereof on the resource-constrained device.
- the first noise source 14 and the second noise source 14 are configured to output or generate first and second noise signals, respectively.
- the first and second noise sources 14, 16 comprise unconnected analog pins.
- the noise signals are indicative of the voltages at the respective pins.
- the term "unconnected” means that the pins are not electronically connected to an external source or influence. Therefore, the voltages at the analog pins in theory should be 0 V.
- the ambient environmental conditions such as temperature, can add "noise", such as thermal noise, to the voltage present at the pins.
- the thermal noise influencing the voltages at the analog pins is random. This randomness is used by the system as entropy for generating true random numbers.
- the analog pins 14, 16 are identical for all intents and purposes. Because the pins are essentially identical, they will be equally affected by environmental bias.
- the analog pins may be incorporated onto a circuit board.
- other components which are susceptible to environmental bias can be used to generate noise signals.
- resistors, diodes, and the like can be used to provide noise signals.
- the components used for both the first noise source and the second noise source are identical.
- the resistors or diodes should have the same specifications and should preferably be from the same manufacturer so that the environmental influence on the components can be expected to be the same.
- the noise signals may be amplified.
- the first noise source further comprises a first amplifier 18 that receives the noise signal (i.e., voltage) from the first analog pin 14, and the second noise source further comprises a second amplifier 20 that receives the noise signal from the second analog pin 16.
- the amplifiers 18, 20 comprise op-amps with the inputs tied together. Preferably, the amplifiers have the same gain.
- the amplified noise signals enable a higher sampling rate.
- the amplified noise signals are fed to the analog comparator 22.
- the first noise signal is connected to a first input of the analog comparator 22, and the second noise signal is connected to a second input of the analog comparator 22.
- the output of the analog comparator 22 is a digital signal which alternates between a high and low value depending on which of the voltages at the inputs is greater. Because both noise signals are affected by the same bias, e.g., temperature, this bias gets canceled out.
- the digital signal output by the comparator 22 is supplied to the conversion system 24.
- the conversion system 24 is configured to generate a random number stream 30 from the digital signals received from the comparator 22.
- the random number stream 30 is supplied to an output connection, such as an output pin, where it is made available to other systems and applications.
- the conversion system 24 includes any necessary components for generating the random number stream from the digital signals, such as shift registers, flip-flops, latches, counters, and the like.
- the digital signal output by the comparator 22 is the digital signal output by the comparator 22
- the conversion system 24 may be configured to extract certain bits from the 10-bit signals for use in generating the random number stream 30. In one embodiment, the conversion system 24 is
- the conversion system 24 may be coupled to receive a reference clock signal which can be used for timing the reading of the bits of the digital signal.
- FIG. 2 depicts another embodiment of TRNG system 12'.
- TRNG system 12' comprises a first noise source 14, a second noise source 16, a differential amplifier 28, and an analog comparator 22.
- the first and second noise sources 14, 16 may comprise unconnected analog pins (or alternatively other suitable components).
- the first and second noise signals output by the first and second noise sources 14, 16 are supplied to the inputs of the differential amplifier 28.
- the differential amplifier 28 outputs an amplified signal which is proportional to the difference between the voltages at the inputs of the amplifier.
- the amplified difference signal is supplied to a first input of the analog comparator 22.
- the second input of the analog comparator 22 is connected to receive a reference voltage signal.
- the reference voltage is 0 V.
- the reference voltage is provided by reference voltage source 32 as a digital voltage.
- the digital reference voltage 32 is converted to an analog voltage signal by a digital to analog (D/A) converter 34.
- the output of the D/A converter 34 is supplied to the second input of the analog comparator 22.
- the digital reference voltage source is in the same device 10' as the first and second noise sources 14, 16 so they are affected by the same environmental bias. Similar to above, the output of the analog comparator 22 is a digital signal which alternates between a high and low value depending on which of the voltages at the inputs is greater. Because both noise signals are affected by the same bias, e.g., temperature, this bias gets canceled out.
- FIG. 3 is graph of actual 10-bit measurements yielded by the comparator 22. The measurements are indicated by the jagged line in the graph. As can be seen, the digital output of the comparator still exhibits bias in the form of a sine curve. With postprocessing, this sine can be removed.
- the conversion system may be configured to implement any suitable kind of post-processing, such as Fast Fourier transforms, to eliminate bias from the digital signal output by the comparator.
- the output of the conversion system 24 in the embodiments described above is a random number stream or random bit stream 30.
- the random number stream 30 can be supplied to other systems for use in different applications.
- the TRNG system may be configured to supply the random number stream 30 to a cryptographic system 26.
- the cryptographic system 26 can use the random number stream to generate cryptographic keys, as known in the art.
- the cryptographic key can be used for data encryption and decryption, digital signature verification, digital signature creation, message authentication, key transport, key wrapping, and the like.
- the least significant bit of the measurement signals may be used to generate a stream of random bits.
- ten million measurements were performed and the least significant bit was extracted from the measurement signals to generate a random bit stream for testing.
- the ten million bits were tested using the National Institute of Standards and Technology (NIST) Statistical Test Suite. The generated random bit stream passed these tests.
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)
- Analogue/Digital Conversion (AREA)
Abstract
Description
Claims
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662440763P | 2016-12-30 | 2016-12-30 | |
PCT/EP2017/084611 WO2018122240A1 (en) | 2016-12-30 | 2017-12-27 | Method for environmental resistant true random number generation |
Publications (1)
Publication Number | Publication Date |
---|---|
EP3563229A1 true EP3563229A1 (en) | 2019-11-06 |
Family
ID=60915539
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP17823168.4A Withdrawn EP3563229A1 (en) | 2016-12-30 | 2017-12-27 | Method for environmental resistant true random number generation |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP3563229A1 (en) |
KR (1) | KR20190097075A (en) |
CN (1) | CN110100234A (en) |
WO (1) | WO2018122240A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110808728B (en) * | 2019-11-19 | 2023-10-20 | 天津津航计算技术研究所 | Random signal generation method based on high-speed dynamic comparator |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6070178A (en) * | 1999-02-17 | 2000-05-30 | Starium Ltd | Generating random numbers from random signals without being affected by any interfering signals |
JP3507886B2 (en) * | 2000-07-24 | 2004-03-15 | 新潟大学長 | Random number generation method |
US7007060B2 (en) * | 2002-05-08 | 2006-02-28 | Agilent Technologies, Inc. | Random bit stream generation by amplification of thermal noise in a CMOS process |
KR100725978B1 (en) * | 2005-07-06 | 2007-06-08 | 삼성전자주식회사 | Low Power Random Bit Generator and Generation Method Using Thermal Noise |
GB0603523D0 (en) * | 2006-02-22 | 2006-04-05 | Qinetiq Ltd | Apparatus and method for generating random numbers |
CN202970175U (en) * | 2012-06-01 | 2013-06-05 | 杭州双华智能家居有限公司 | Keyless entry intelligent lock capable of increasing and deleting key |
CN106055307A (en) * | 2016-05-23 | 2016-10-26 | 深圳华视微电子有限公司 | Random number generator |
CN106020770B (en) * | 2016-05-23 | 2018-12-04 | 深圳华视微电子有限公司 | A kind of real random number generator based on Resistance Thermal Noise |
CN105827396B (en) * | 2016-05-28 | 2019-01-18 | 浙江中星光电子科技有限公司 | A kind of car antenna and set top box communication encryption method |
-
2017
- 2017-12-27 CN CN201780081533.9A patent/CN110100234A/en active Pending
- 2017-12-27 WO PCT/EP2017/084611 patent/WO2018122240A1/en unknown
- 2017-12-27 KR KR1020197018498A patent/KR20190097075A/en not_active Ceased
- 2017-12-27 EP EP17823168.4A patent/EP3563229A1/en not_active Withdrawn
Non-Patent Citations (4)
Title |
---|
ANONYMOUS: "What is a floating input gate? - Quora", 31 December 2014 (2014-12-31), pages 1 - 5, XP055795652, Retrieved from the Internet <URL:https://www.quora.com/What-is-a-floating-input-gate> [retrieved on 20210415] * |
PARKS MIKE: "Don't Leave Your Pins Floating | Bench Talk", 28 October 2014 (2014-10-28), pages 1 - 4, XP055795624, Retrieved from the Internet <URL:https://www.mouser.com/blog/dont-leave-your-pins-floating> [retrieved on 20210415] * |
PATRIK FIMML: "HOWTO: A Simple Random Number Generator for the ATmega1280 Microcontroller", 24 April 2013 (2013-04-24), XP055710771, Retrieved from the Internet <URL:https://ti.tuwien.ac.at/ecs/teaching/courses/mclu_2014/misc/task1-specific-stuff/rand_howto.pdf> [retrieved on 20200701] * |
See also references of WO2018122240A1 * |
Also Published As
Publication number | Publication date |
---|---|
CN110100234A (en) | 2019-08-06 |
KR20190097075A (en) | 2019-08-20 |
WO2018122240A1 (en) | 2018-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Garcia-Bosque et al. | Chaos-based bitwise dynamical pseudorandom number generator on FPGA | |
Killmann et al. | A proposal for: Functionality classes for random number generators | |
US8804949B2 (en) | Method for protecting IC cards against power analysis attacks | |
Kalanadhabhatta et al. | PUF-based secure chaotic random number generator design methodology | |
Wang et al. | Design of pseudo-random bit generator based on chaotic maps | |
US10142103B2 (en) | Hardware assisted fast pseudorandom number generation | |
Das et al. | PUF-based secure test wrapper design for cryptographic SoC testing | |
Merah et al. | A pseudo random number generator based on the chaotic system of Chua’s circuit, and its real time FPGA implementation | |
Chen et al. | FPGA implementation of SRAM PUFs based cryptographically secure pseudo-random number generator | |
Liu et al. | A true random-based differential power analysis countermeasure circuit for an AES engine | |
Wu et al. | Design and implementation of true random number generators based on semiconductor superlattice chaos | |
Rajski et al. | A lightweight true random number generator for root of trust applications | |
AL-khatib et al. | Acoustic lightweight pseudo random number generator based on cryptographically secure LFSR | |
US8321773B1 (en) | Hardware true random number generator in integrated circuit with tamper detection | |
US20090327381A1 (en) | True random number generator | |
JP2003131867A (en) | Random number generation device | |
Siswanto et al. | Designing of quantum random number generator (QRNG) for security application | |
Dubrova et al. | Keyed logic BIST for Trojan detection in SoC | |
US9836280B2 (en) | Arrangement and method for checking the entropy of a random number sequence | |
Kounelis et al. | Run-time effect by inserting hardware trojans, in combinational circuits | |
WO2018122240A1 (en) | Method for environmental resistant true random number generation | |
Tehranipoor et al. | A study of power supply variation as a source of random noise | |
Latif et al. | Hardware-based random number generation in wireless sensor networks (WSNs) | |
Tebelmann et al. | On-chip side-channel analysis of the loop PUF | |
Falih | A Pseudorandom Binary Generator Based on Chaotic Linear Feedback Shift Register |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: UNKNOWN |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE |
|
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 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
17P | Request for examination filed |
Effective date: 20190730 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
AX | Request for extension of the european patent |
Extension state: BA ME |
|
DAV | Request for validation of the european patent (deleted) | ||
DAX | Request for extension of the european patent (deleted) | ||
RAP1 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: ROBERT BOSCH GMBH |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
17Q | First examination report despatched |
Effective date: 20200707 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
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: 20221018 |