GB2447243A - Random number generation method - Google Patents
Random number generation method Download PDFInfo
- 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
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
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.
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)
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 |
-
2007
- 2007-03-05 GB GB0704196A patent/GB2447243A/en not_active Withdrawn
Patent Citations (5)
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) |