GB2447243A - Random number generation method - Google Patents

Random number generation method Download PDF

Info

Publication number
GB2447243A
GB2447243A GB0704196A GB0704196A GB2447243A GB 2447243 A GB2447243 A GB 2447243A GB 0704196 A GB0704196 A GB 0704196A GB 0704196 A GB0704196 A GB 0704196A GB 2447243 A GB2447243 A GB 2447243A
Authority
GB
United Kingdom
Prior art keywords
generate
digital
unpredictable
random number
value
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
GB0704196A
Other versions
GB0704196D0 (en
Inventor
Richard Hoptroff
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to GB0704196A priority Critical patent/GB2447243A/en
Publication of GB0704196D0 publication Critical patent/GB0704196D0/en
Publication of GB2447243A publication Critical patent/GB2447243A/en
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

Abstract

The invention relates to a method of generating random numbers in digital electronic devices such as microcontrollers, such that two devices, when programmed and operated in the same manner, generate different random numbers. The method involves using a variable property of a component in a digital device to generate an unpredictable value for a random number seed. Internal clock inaccuracies of an oscillator, ADC conversion variations or digital logic trigger level variations can be used to generate an unpredictable value. The properties may vary as a result of manufacture, temperature or operating voltage.

Description

Random Number Generation Method This invention relates to a method of
generating random numbers in digital electronic devices such as microcontrollers, such that two devices, when programmed and operated in exactly the same manner, generate different random numbers.
Typically, random numbers are generated from a nonlinear mathematical sequence and a seed' value which is used to derive the next value in the sequence and the next seed'. The numbers are pseudo-random, since knowledge of the seed makes the sequence entirely predictable. Without knowledge of the seed, however, the numbers generated are effectively
unpredictable.
A limitation of seed-based random number generators is that the seed must be unique and unknown if the random numbers are to be unpredictable. At some point a seed has to be imparted to the device, and this point is a potential weakness, for example if the random number generator is intended for purposes of encryption of sensitive information.
Accordingly, the Invention is a method for deriving a random number seed within a digital electronic device such that the seed cannot be externally determined, and such that if two devices follow the same method, they will derive different seeds. The method is to rely on analogue components within the device having unpredictable and non-repeatable properties. These properties are measured in order to derive to generate a seed value.
Three embodiments are now detailed.
A. Using internal clock inaccuracies. Many microcontrollers contain internal clocks, such as watch-dog timers, based on resistor-capacitor switching networks. Their timing is subject to variations in manufacturing, temperature and operating voltages. The embodiment is to determine a time-related value with reference to the clock. This event may be an external event, such as state of an externally imparted signal, or an internal event such as another timer with an independent clock. The result of the timed event will vary from device to device, and may form the basis of a random number seed.
B. Using analog to digital conversion variationr. Many microcontrollers contain analog to digital converters. Their accuracy is such that the least significant bits are subject to fluctuation, even when the input pin is held as constant as possible, due to leakages from other signal lines, power rail fluctuations, etc. The embodiment is to capture the least significant bits, repeatedly if necessary, to form the basis of a random number seed.
C. Digital logic trigger level variations. Digital inputs are not designed to be operated at voltages intermediate to their intended logic levels, and their trigger thresholds are not predictable. For example, if an analogue input voltage slowly increases from logic 0 to logic 1, the exact moment that the digital electronics will switch from 0 to 1 is subject to variations in manufacturing, temperature and operating voltages. In this embodiment, the device is provided with an external analogue signal and resulting digital input value is recorded. This measurement will vary from device to device, and may form the basis of a random number seed.

Claims (5)

1. A method for generating values within digital electronic devices by taking measurements using an analog component therein, and such that variations in analog properties of said component render the generated value unpredictable, even if the method is known.
2. A method as claimed in claim 1 where the digital electronic device is a microcontroller.
3. A method as claimed 1 or 2 wherein the timing of an internal oscillator circuit is the analog property used to generate an unpredictable value.
4. A method as claimed in claim I or 2 wherein an analog-to-digital converter measures a voltage, and where such voltage is liable to slight fluctuation, in order to generate an unpredictable value.
5. A method as claimed in claim I or 2 wherein the state of a digital input is measured when stimulated with voltages intermediate to its normal logic voltage levels in order to generate an unpredictable value.
GB0704196A 2007-03-05 2007-03-05 Random number generation method Withdrawn GB2447243A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB0704196A GB2447243A (en) 2007-03-05 2007-03-05 Random number generation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB0704196A GB2447243A (en) 2007-03-05 2007-03-05 Random number generation method

Publications (2)

Publication Number Publication Date
GB0704196D0 GB0704196D0 (en) 2007-04-11
GB2447243A true GB2447243A (en) 2008-09-10

Family

ID=37965917

Family Applications (1)

Application Number Title Priority Date Filing Date
GB0704196A Withdrawn GB2447243A (en) 2007-03-05 2007-03-05 Random number generation method

Country Status (1)

Country Link
GB (1) GB2447243A (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001092640A (en) * 1999-09-21 2001-04-06 Sony Corp Random number generating device
WO2001079989A1 (en) * 2000-04-18 2001-10-25 Advanced Micro Devices, Inc. Method and apparatus for generating random numbers
US20030219928A1 (en) * 2001-12-28 2003-11-27 Semiconductor Energy Laboratory Co., Ltd. Substrate identification circuit and semiconductor device
JP2005044090A (en) * 2003-07-28 2005-02-17 Renesas Technology Corp Random number generator
US20060020647A1 (en) * 2004-07-23 2006-01-26 Simon Harris S Method and apparatus for random-number generator

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001092640A (en) * 1999-09-21 2001-04-06 Sony Corp Random number generating device
WO2001079989A1 (en) * 2000-04-18 2001-10-25 Advanced Micro Devices, Inc. Method and apparatus for generating random numbers
US20030219928A1 (en) * 2001-12-28 2003-11-27 Semiconductor Energy Laboratory Co., Ltd. Substrate identification circuit and semiconductor device
JP2005044090A (en) * 2003-07-28 2005-02-17 Renesas Technology Corp Random number generator
US20060020647A1 (en) * 2004-07-23 2006-01-26 Simon Harris S Method and apparatus for random-number generator

Also Published As

Publication number Publication date
GB0704196D0 (en) 2007-04-11

Similar Documents

Publication Publication Date Title
US8583712B2 (en) Multi-bit sampling of oscillator jitter for random number generation
Yu et al. A floating memristor emulator based relaxation oscillator
US6631390B1 (en) Method and apparatus for generating random numbers using flip-flop meta-stability
KR101112576B1 (en) Integrated time and/or capacitance measurement system, method and apparatus
Ito et al. Stochastic TDC architecture with self-calibration
TWI384210B (en) Thermal detecting apparatus and method
Lampert et al. Robust, low-cost, auditable random number generation for embedded system security
CN111052611B (en) Analog-to-digital converter self-test using time base and current source
Rashidzadeh et al. An all-digital self-calibration method for a vernier-based time-to-digital converter
Rivoir Fully-digital time-to-digital converter for ATE with autonomous calibration
US10411883B2 (en) Devices and methods for multi-channel sampling
Klepacki et al. Low-jitter wide-range integrated time interval/delay generator based on combination of period counting and capacitor charging
Hlaváč et al. True random number generation on an Atmel AVR microcontroller
Czaja Self-testing of analog parts terminated by ADCs based on multiple sampling of time responses
Duncan et al. Repurposing SoC analog circuitry for additional COTS hardware security
Bohl et al. A two-dimensional chaotic logic gate for improved computer security
Yu et al. On-chip jitter measurement using vernier ring time-to-digital converter
Li et al. Timing measurement BOST architecture with full digital circuit and self-calibration using characteristics variation positively for fine time resolution
GB2447243A (en) Random number generation method
Napolitano et al. A novel sample-and-hold-based time-to-digital converter architecture
Amaki et al. An oscillator-based true random number generator with process and temperature tolerance
Chen et al. A low power 10-bit time-to-digital converter utilizing vernier delay lines
JP2008165500A (en) Physical random number generator, physical random number generating device, and random number verification method
Della Colletta et al. A successive approximation a/d converter using a pwm modulator dac
Park et al. Time-interleaved pulse-shrinking time-to-digital converter with reduced conversion time

Legal Events

Date Code Title Description
WAP Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1)