WO2023018476A1 - A circuit and system for a very high throughput true random number generator (trng) for next generation secure hardware and communication systems - Google Patents
A circuit and system for a very high throughput true random number generator (trng) for next generation secure hardware and communication systems Download PDFInfo
- Publication number
- WO2023018476A1 WO2023018476A1 PCT/US2022/033332 US2022033332W WO2023018476A1 WO 2023018476 A1 WO2023018476 A1 WO 2023018476A1 US 2022033332 W US2022033332 W US 2022033332W WO 2023018476 A1 WO2023018476 A1 WO 2023018476A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- entropy
- source blocks
- random number
- output signals
- number generator
- Prior art date
Links
- 238000004891 communication Methods 0.000 title abstract description 7
- 238000005070 sampling Methods 0.000 claims abstract description 24
- 230000010355 oscillation Effects 0.000 claims abstract description 12
- 238000005516 engineering process Methods 0.000 claims abstract description 11
- 238000004519 manufacturing process Methods 0.000 claims abstract description 6
- 238000000034 method Methods 0.000 claims description 61
- 230000000739 chaotic effect Effects 0.000 claims description 34
- 239000000872 buffer Substances 0.000 claims description 24
- 230000004044 response Effects 0.000 claims description 8
- 239000000306 component Substances 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000012805 post-processing Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 239000000428 dust Substances 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003071 parasitic effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000001583 randomness test Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/065—Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
- H04L9/0656—Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
- H04L9/0662—Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K3/00—Circuits for generating electric pulses; Monostable, bistable or multistable circuits
- H03K3/84—Generating pulses having a predetermined statistical distribution of a parameter, e.g. random pulse generators
Definitions
- the invention described herein discloses a system of circuits for a very' high throughput True Random Number Generator (TRNG).
- TRNG True Random Number Generator
- the system of circuits utilizes multiple classes of entropy sources including but not limited to metastability, chaos, power supply noise and perturbations. Further disclosed are the components and modules that implement the TRNG invention, as is evident from the embodiments and aspects described herein and from the accompanying drawings.
- Random Numbers are an essential part of any modern communication system to ensure encryption and security wherein they are used to generate and manage secure keys for encryption algorithms.
- devices currently communicate at several Mbps up to Gbps. These systems include satellites and base stations that form the core of the network and communicate with hundreds of devices simultaneously and will require the generation of random numbers at very high data rates.
- MMIMO Massive Multiple Input Multiple Output
- the number of these devices is expected to exponentially grow, as billions of Internet of Things (loT) devices/ sensors get connected to the cloud systems, thereby requiring very high data rate random numbers.
- the generated random numbers must be statistically independent to pass the randomness tests, and the generation systems must be robust against different types of hardware attacks.
- Some examples of these attacks are: initial condition determination by rigorous statistical analysis, forced biasing using environment tampering attacks such as EMI, temperature manipulation, etc.; and other methods that empower an attacker to predict the next bit. by analyzing the previous ones. Last but not least, these random number generators must also be able to easily integrate into the current microchip technology without requiring extra cost or manufacturing steps.
- Random numbers are generated either from hardware-based True Random Number Generators (TRNGs) or software-based Pseudo-Random Number Generators (PRNGs), where the output of a TRNG is the seed for a PRNG.
- TRNGs that use various entropy sources are available in the prior art including the ones that use thermal/shot noise of resistors with amplifiers, sampling jitter of the oscillator(s), deterministic but unpredictable chaos, metastability, quantum entropy sources, just to name few. However, all of them have their strengths and weaknesses.
- the metastability and thermal noise based TRNGs are relatively less sensitive to initial conditions, but they are susceptible to environmental attacks such as EMI that enhance or suppress the circuit noise or bias the average voltages more towards one side, or manipulate temperature, pressure, humidity, etc.
- the chaos-based TRNGs are immune to voltage biasing or EMI based attacks, but their outputs can be tracked given the initial conditions.
- the chaos-based TRNGs generally operate in the discrete domain and have relatively low generation rates, due to the limitation of the buffer and sample-and-hold circuits involved.
- the jitter-based oscillator sampling method is widely used because it can be implemented both in a semi-customized digital circuit and a fully customized digital -analog hybrid one, but it cannot provide very high data rates without compromising the randomness of the generated stream.
- TRNGs that incorporate weak random sources and use post-processing to reduce the bias in the output stream, such as the Von Neumann scheme, are prone to data rate fluctuations with time due to the bits that they discard.
- a new set of TRNGs based on quantum noise sources use entropy sources such as single- photon detection or the variations in the intensity of a light source, etc.
- QRNGs Quantum Random Number Generators
- QRNGs Quantum Random Number Generators
- these QRNGs are difficult to implement in the Bulk CMOS technology since they typically require additional and costly manufacturing steps.
- a known class of TRNGs combines the output streams of multiple entropy sources to get a single stream using functions such as XOR, etc. Although the generation of the streams is independent in these TNRGs, they use the same type of generation source, i.e., taking the output of two different instances of the same TRNG. In comparison, the design of the disclosed invention set forth below combines output of different classes of entropy sources so that, the output of one source directly affects that of the other to increase the randomness of the output steam.
- the TRNGs in prior art generate multiple independent streams from different sources and then combine them.
- Our invention as set forth below, in comparison, changes the input or biasing or initial conditions of one entropy source based on the output of other entropy sources.
- the invention described herein combines different classes of entropy sources in a novel way and makes it less susceptible to different types of above-mentioned attacks. Accordingly, since all of the entropy sources send analog voltages to the subsequent stages instead of the digital bits, therefore, their entropy remains preserved until the final sampling.
- a novel ring oscillator constitutes a significant aspect of our invention thereby enabling it to achieve very high generation rates with a small on-chip area.
- the generation rate of one randomness source is significantly higher than the others, then their output approximately stays constant for a short time period during which only that source generates random numbers.
- some of the generated output bits get discarded by a post-processing technique to remove bias by analyzing the previous output. bit(s).
- the Von-Neumann technique compares a pair of bits for similarity; it uses only one of them if they are different or discards both of them if they are the same.
- the Random Number Generator allows the Random Number Generator to use multiple entropy sources even when the generation rates of some sources are significantly higher than the other ones.
- the random bits of the TRNG are generated at the rate of the fastest source in the system, but its output is still affected by the entropy of the slower randomness sources.
- the invention described herein mangles the generated bits, by using bit order multiplexers, to remove the bias. Since the system described herein does not process the outputs of all entropy sources in a single stage to determine the most random bit in comparison with the previous output bit, as a result, the output bits become less dependent on the earlier bits.
- the novel TRNG described herein is also scalable as it can be manufactured by using any IC technology and can be optimized for performance, speed, power consumption, area, etc. as the usage scenario demands.
- the novel TRNG described herein can be implemented for a variety of processors ranging from low-power microcontrollers that are used in embedded systems to high throughput multicore server processors, GPUs, etc.
- Figure 1 is a system level depiction of the novel True Random Number Generator where each entropy source acts as a series stage and controls the input or biasing conditions of the subsequent stage according to aspects to the invention
- Figure 2 is a system level depiction of the prior True Random Number Generators where all entropy sources act as a single, parallel stage and the outputs of all sources are passed through an entropy combiner module according to aspects to the invention;
- Figure 3 is a novel Taie Random Number Generator acting as a seed for Pseudo-Random Number Generator to generate random numbers at a higher data rate according to aspects to the invention
- Figure 4 is a block diagram of a True Random Number Generator with different entropy sources according to aspects to the invention.
- Figure 5 is a block diagram of the ring oscillator with a variable delay and support for metastability according to aspects to the invention;
- Figure 6 is a variable delay cell with delay control transistors and pull up switches for metastability according to aspects to the invention
- Figure 7 is a variable delay ring oscillator circuit with a bandwidth extension inductor to achieve higher generation rates according to aspects to the invention; [0015].
- Figure 8 is a differential amplifier circuit with additional pull down transistors for faster transition to the metastable state according to aspects to the invention; [0016].
- Figure 9 i s a three transistor based non-linear tent map circuit with four bias voltages for bifurcation control according to aspects to the invention;
- Figure 10 is a block diagram of the discrete time chaotic generator circuit In which the non-linear chaotic map circuit can be tent map, chua’s circuit, gauss map, etc. or any other similar circuit according to aspects to the invention,
- Figure 11 show's normalized power supply variations due to noise including a combination of thermal, 1/f, and switching noise of transistors according to aspects to the invention
- Figure 12 shows normalized input/output characteristics of the non-linear tent map circuit according to aspects to the invention
- Figure 13 is a normalized chaotic signal generated for controlling the delay path of the ring oscillator circuit according to aspects to the invention.
- Figure 14 show's a normalized nieta-stable response of the ring oscillator circuit of Figure 5 according to aspects to the invention
- Figure 15 is a Taie Random Number Generator with only one output bit for reduced area and power, wherein the XOR gate and delay element are used to remove the bias according to aspects to the invention;
- Figure 16 is a multicore TRNG using N different instances of the TRNG 100 of Figure 1 for generating random numbers at a faster rate according to aspects to the invention
- Figure 17 is a flowchart depicting the generation of True Random Numbers using different entropy sources according to aspects to the invention.
- Figure 18 is a flowchart depicting the generation of True Random Numbers using different entropy sources according to aspects to the invention. [0026].
- Figure 19 is an embodiment of the delay cell shown in Figure 6 with an additional transistor to improve the operation of the oscillator circuit in its metastable state.
- Figure 20 is an embodiment of the delay cell shown in Figure 7 with an additional transistor to improve the operation of the oscillator circuit in its metastable state.
- FIG. 1 shows a system-level embodiment of a novel TRNG 100 based on aspects of the present invention in which each entropy source acts as a block, and its output controls the input/bias of the next block and that next block again may be a different type of entropy source.
- the various entropy sources 102 can include power supply noise or perturbations 104, deterministic chaos sources (generator) 106, metastability circuits (generator) 110, oscillator jitter-based circuits (generator) 108, or quantum noise extraction circuits, or any other systems, circuits, or sub-circuits that can be the source of the entropy that are not explicitly mentioned in this disclosure but are known to one skilled in the art.
- the TRNG 100 extracts the maximum entropy, as most of the sources are combined in a series fashion, from the final bit generation stage 112 and subsequently generates the random bit stream as its output 114.
- Figure 2 shows a typical known TRNG 200 (disclosed in the prior art) where the outputs of all entropy sources 202 are combined at a single bit generation stage 214 to generate the random output bits.
- the entropy sources 204, 206, 208, and 210 of the typical TRNG 200 may be the same as entropy sources 104, 106, 108, and 110 of novel TRNG 100 but the output of the entropy sources are combined differently.
- the entropy sources 204, 206, 208, and 210 of typical TRNG 200 are combined in parallel and hence one source cannot affect the output of others.
- the outputs of all entropy sources are processed digitally at the bit generation 214, which acts as an entropy extractor, to create the random number string which is the TRNG Output 216 of the typical TRNG 200.
- FIG. 3 shows a system 300 incorporating an embodiment of the invention in which the TRNG 308 is an instance of TRNG 100 of Figure 1 and provides one or more seeds (or secure keys) 304 for the user application 302.
- the user application 302 generates the output random bit stream 310 using seed or secure keys 304 and an encryption software method or algorithm 306 to achieve even higher generation rates, albeit requiring more processing power.
- FIG. 4 shows a detailed schematic description of TRNG 400 which is one possible implementation of novel TRNG 100, according to aspects of the invention.
- the Ring Oscillator 406 of TRNG 400 has a variable delay and supports metastability. Both characteristics are controlled via separate voltage signals: ‘V stage Ctrl’ 422 and ‘Metastability Ctrl’ 420. These voltage sources are controlled via the ‘Chaotic Entropy Source 1’ 404 and ‘V_clk’ 402 signals.
- the ‘V_clk’ 402 signal is from a predetermined clock source that controls the TRNG’s 400 generation rate.
- the ‘Chaotic Entropy Source 1 ’ 404 signal is from a chaotic entropy source with a slow varying entropy and controls the oscillation frequency of the ring oscillator circuit 406 that is a fast-varying entropy source.
- Different possible incarnations of source 404 are: Chua’s circuit implementation or a chaotic circuit based on a non-linear map such as the tent map, logistic map, etc., or any source capable of generating chaotic signals.
- the ring oscillator 406 utilizes power supply noise perturbations (Entropy Source 2) 408, which are inherent to the circuit and can also be generated using transistors.
- ring oscillator 406 generates five random outputs, since it has five delay cells as shown in Figure 5 as Delay Cells 524, Output 2 526, 528, 530 and 532.
- this number of delay cells and random outputs can be changed to any other number depending on the application requirements.
- Ring oscillator 406 also supports using an even number of delay cells by changing the polarity of the differential signals. Using five outputs is beneficial because it allows for two different oscillation frequencies, one with all five delay cells active and the other with only three of them active. Although increasing the number of delay cells 524, 526, 528, 530, and 532 would give an increased number of outputs, it would also reduce the ring oscillator’s frequency.
- the output signals of ring oscillator 406 are fed to the sampling circuit 412 through buffers (and/or amplifiers) 410. Subsequently they pass through the multiplexer (bit order multiplexers)) 416 to remove bias.
- the sampling circuit 412 changes its sampling instance because of input from jitter source (entropy source 3) 414 that is external or may be a part of the circuit.
- the order of five signals is controlled by the voltage signal of the chaotic source (entropy source 4) 418 as an input to multiplexer(s) 416 that further enhances the entropy of the system.
- the output of 416 is sent as a five-digit random stream 422 through optional parallel in/serial out shift register 420.
- some, or all, of the chaotic sources 404 and 418, the jitter source 414, and the power supply variations source 408 are replaced by other entropy sources.
- the bit order multiplexer 416 and chaotic source 418 are removed to thereby produce the generated bits in a fixed order.
- FIG. 5 show's a schematic block diagram 500 of ring oscillator 502 which is an embodiment of ring oscillator 406 that is a component of novel TRNG 100 according to an aspect of the invention.
- Ring oscillator 502 has two different delayed paths, and hence two oscillation frequencies.
- the first path consists of the delay cells 524, 526 and 528, and switch 536.
- the second path consists of the delay cells 524, 526 and 528, the switch 538, and also the delay cells 532 and 530.
- the two switches (such as transistors) 536 and 538 are controlled by the two complementary signals ‘V_fast’ 510 and ‘V_slow’ 512.
- the switch 536 When the switch 536 is ON, the signal propagates through the first delay path with a corresponding delay.
- Each delay cell can be a simple inverter-based delay cell, a transmission line-based delay cell, the delay cell 600 of Figure 6 described below, the delay cell 700 of Figure 7 described below, etc., or any other type of known delay cell not explicitly mentioned herein.
- Q Pull up transistor 534 represents one of the transistors which connect all five of the outputs 514, 516, 518, 520 and 522 to the supply ‘VDD’ 504 thereby enforcing metastability. Multiple Q Pull up transistors 534 may be used based on the design requirements as would be known to one skilled in the art. These Q Pull up transistors 534 are controlled through ‘V_meta_stability’ signal 506 which also determines the bit generation rate of TRNG 500.
- the circuit instead of pulling the output nodes up to VDD, the circuit can also pull them down to GND without altering the circuit’s functionality and operation.
- the delay cells 524, 526, 528, 530, and 532 of ring oscillator 502 can be implemented with the delay cell schematic circuit 600 shown in Figure 6.
- the transistors/switches 536 and 538 of Figure 5 are not needed, as the delay path controlling feature is incorporated within the delay cell 600.
- the input signals ‘V_fast’ 616 and ‘ V_slow’ 618 are connected to the base transistors 624 and 626 respectively.
- the base transistors 624 and 626 act as the current sources and do not need to be in a single transistor configuration, i.e., any other form of current source is also suitable for this circuit.
- the input signals ‘V fast’ 616 and 'V slow” 618 analogous to the input signals ‘ V_fast’ 510 and ‘V_slow’ 512 of the two delay paths of ring oscillator 500 of Figure 5, are applied at the inputs of two differential pairs even though the output is common.
- the first, input is at ‘Vin n 3’ 608 and ‘Vin p 3’ 610, while the second input is at ‘Vin_n_5’ 612 and ‘‘Vin_p_5’ 614, and the output at ‘Vout_n’ 620 and ‘Vout p’ 622, respectively.
- the transistor 624 turns ON, thereby enabling the differential pair 1 consisting of transistors 628 and 630 which propagates the input in the delay path 1 of ring oscillator 500
- the transistor 626 turns ON thereby enabling the differential pair 2 consisting of transistors 632 and 634 enabling the input in the delay path 2 of ring oscillator 500.
- the ‘Q_Pull up’ transistors 638 and 636 which act as switches, are used to force the delay cell into the nieta-stable state.
- the Q Pull up transistors 636 and 638 can also be replaced with Q Pull down transistors (NMOS) that pull the output nodes 620 and 622 to GND 604.
- the circuit can also be modified to have a PMOS differential pair and an NMOS cross coupled pair or it can also be altered in other ways, not described herein but known or understood to the persons skilled in the art, by retaining its basic functionality.
- the resistors can be implemented by active loads.
- an inductor 702 can be placed between the output nodes Vout n 620 and Vout p 622.
- the inductor 702 is used for bandwidth extension. It resonates out the parasitic capacitances of the transistors in the delay cell, thereby reducing the delay cell’s delay and increasing the frequency of the ring oscillator.
- the inductor 702 increases the TRNG’s generation rates up by to 30 percent but may occupy more area on the chip. Further, it also makes the circuit’s delay independent of the resistors used which thereby enables a greater signal strength.
- the buffers/amplifiers 410 can be replaced with Flip Flops. In other embodiments, they can be implemented using any inverting or non-inverting single stage amplifiers, or amplifier-based buffers, or any other similar components not mentioned herein but which are known or understood to one skilled in the art.
- the buffers/amplifiers 410 are replaced with a modified differential amplifier 800, as shown in Figure 8, for improving its performance.
- Modified differential amplifier 800 consists of a differential pair 812 and 814 with resistive/active loads 816 and 818, a current source 810, and a pair of pull-down transistors 808 and 806,
- the control signals ‘V Pull down’ 802 and ‘V Pull down_inv’ 804 are used to switch the circuit between the normal and metastable states.
- the amplifier needs to be pulled into the metastable state because it has an inherent slew rate. When the input signals enter their meta-stable state (both high), the differential pair of transistors pulls down both output nodes.
- this pull-down speed is limited by the current in the amplifier’s base transistor 810, which slows the circuit’s operation.
- the high current is passed through the two pull-down transistors 808 and 806. These high current carrying transistors are turned ON only for a fraction of the time during the meta-stable state and therefore do not have to stay in the conduction mode all the time.
- the resistors 816 and 818 of 800 can also be implemented with active loads.
- the pull-down operation can also be replaced with a pull-up operation without altering the circuit’s functionality and operation.
- Figure 9 depicts a three-transistor tent map circuit 900 that has a non-linear response and is used to generate the chaotic signals in chaotic entropy source 404 or 418 of Figure 4.
- the tent map circuit 900’ s response is controlled by changing the size of the transistors 920 and 922, the voltage ’ V__gate’ 906, and the body bias voltages 908, 910 and 912 of transistors 918, 920, and 922, respectively.
- the transistor 918 acts as a current source, and the transistors 920 and 922 act as the pull-down transistors.
- the circuit achieves the desired non-linear characteristics by leveraging the opposite operation regions of the NMOS and PMOS transistors 920 and 922, respectively.
- the PMOS transistor 920 turns ON thereby pulling the output 916 to the ground 904.
- the NMOS transistor 922 turns ON that pulls the output low.
- both transistors are partially OFF which causes the output to be pulled towards the supply ‘VDD’ 902.
- the non-linear tent map circuit 900 may be used to generate discrete-time chaotic signals as an embodiment of the chaotic map circuit 1002 in chaotic source 1000 of Figure 10.
- the number of bifurcations of the generated chaotic signal, and hence its chaotic nature, is controlled by varying the gate voltage of transistor 918 and the body bias voltages of the transistors 920 and 922, or transistor sizes, as mentioned above in the description of non-linear tent map circuit 900.
- chaotic source 1000 may be implemented with other chaotic map circuits that provide the desired non-linear response such as the Logistic map, Gauss map, Lorenz system, etc., or any other similar systems well known to the one skilled in the art.
- the buffers 1012, 1014 and 1016 can also be implemented in any other suitable way.
- the chaotic output at the hold capacitor 1010 is inverted using inverter 1008 to generate two signals ‘V fast’ 1004 and ‘V slow' 1006. These two signals can be used as chaotic signals 510 and 512, respectively, in the embodiment 500 of Figure 5 for chaotically switching the number of stages therein.
- the circuit’s speed is controlled by switching speed of the swatches 1018 and 1020 and is a much lower speed than that of the ring oscillator 406 of Figure 4.
- the chaotic sources 404 and 418 of Figure 4 both can be implemented with the chaotic circuit 1000 of Figure 10, or with any other chaotic source known to the one skilled in the art.
- Figure 11 shows a graph 1 100 of the normalized power supply noise perturbations in the voltage VDD 1102 with time.
- This noise is a combination of thermal, 1/E and switching noise of transistors. It is well known that, these noise sources are inherent and provide maximum randomness in their behavior and attributes. If required, this noise can also be generated.
- Figure 12 show's a graph 1200 of the non-linear transfer characteristics of the tent map circuit 900 of Figure 9.
- the horizontal axis 1218 and the vertical axis 1216 show the normalized input voltage and the normalized output voltage, respectively.
- the sign of the slope changes at the graphs’ peak 1206, and the two regions of operation before and after this point are 1202 and 1204, respectively.
- Region 1202 is the region of operation of the PMOS transistor 920 of tent map circuit 900
- region 1204 is the region of operation of the NMOS transistor 922 of tent map circuit 900.
- Figure 13 show's a graph 1300 of the chaotic signal 1302 as the normalized output voltage of the chaotic signal generator block of chaotic source 1000 of Figure 10 in which the non-linear chaotic map circuit 1002 is the tent map circuit 900 of Figure 9.
- Figure 14 shows a graph 1400 of the normalized differential signal 1402 and 1404 as one of the differential outputs of the ring oscillator 500 of Figure 5, in w'hich the delay cell is the circuit 600 of Figure 6.
- the differential signal shifts between two operating states: the meta-stable state 1420 with zero differential voltage and the oscillation state 1414 with a dominant differential voltage.
- the rate of this shift is controlled using the standard clock signal ‘V_meta stability’ 506 which is input to ring oscillator 500 of Figure 5.
- V_meta stability’ 506 which is input to ring oscillator 500 of Figure 5.
- the randomness of this polarity /phase is further enhanced at the sampling instances 1406, 1408, 1410, and 1412 as the oscillation frequency shifts between different oscillation states that are controlled by the chaotic signals 510 and 512 from chaotic source 508 of Figure 5. This is further supplemented by varying the sampling instances 1406, 1408, 1410, and 1412 and introducing jitter to sampling circuit 412 of Figure 4 with the jitter source 414.
- the circuit 400 of Figure 4 generates five such outputs, one of which is shown in 1400 which are further processed as earlier described.
- the five random outputs can be combined to generate a single random stream.
- Figure 15 shows another embodiment of a TRNG 1500, according to aspects of the invention, in which the TRNG circuit 400 of Figure 4 can be modified to generate less than 5 outputs as well and they may be combined to get a single random bit stream. Though this reduces the generation rate, the chip area and power consumption are also significantly reduced. Moreover, in case of one output bit, the bit order multiplexer 416 of TRNG 400 is replaced by a delay element 1506 and an XORgate 1504 for removing the bias; as a result, only one buffer 1502 is needed.
- the total on-chip area of the complete circuit of TRNG 400 including the bit order multiplexers, parallel/in serial out shift register, and the biasing circuitry may be calculated to be about 85x85 gm 2 in 65-nm CMOS.
- TRNG’s generation rate can go up to 20 Gbps with a power consumption of less than 15W.
- Figure 16 show's another embodiment of the invention wherein the multicore TRNG 1602 is composed of multiple TRNG core units 1604, 1606, 1608, and 1610.
- the cores 1604, 1606, 1618, and 1610 are all separate instances of the TRNG 400 of Figure 4, and they generate the output bits Do --- DN (1612-1618).
- This is exceptionally beneficial when using multiple cores of the TRNG that use the delay cell 600 of the embodiment of Figure 6.
- N such TRNG cores
- 20* N Gbps can be generated using on-chip area of approximately Nx85x85 pm 2 and a power of N*15 W,
- 10 such TRNG cores will only require a total area of 270x270 ⁇ m 2 yet deliver a rate of 200 Gbps by consuming only 150 W.
- the TRNG circuit described herein can be modified to operate at even lower frequencies of a few Mbps to enable use of the invention for low power devices and applications. Furthermore, the TRNG circuit described herein can be modified to provide high data rate at expense of large area and power or low data rates with low power and small area.
- This aspect of the invention makes it a unit block that is suitable for a wide range of electronics and communication systems.
- the low frequency, single core TRNG embodiment described herein makes it ideal for low powered microcontrollers based embedded systems, loT devices and smart dust.
- the multicore, high frequency TRNG embodiment described herein makes it. suitable for high generation rate demanding GPUs, servers, 5G gNB etc., or any other similar circuits or communication systems.
- FIG. 17 is a flowchart 1700 depicting a method for generating true random numbers at a high frequency rate according to aspects of the invention.
- Step 1702 is the step of generating an entropy output signal from each of a plurality of entropy source blocks, wherein the entropy output signal of each entropy source block being used as an input condition for each next entropy source block in the plurality of entropy source blocks.
- the next step in step 1704 is sampling the entropy output signals from the plurality of entropy source blocks, followed by combining the sampled entropy output signals into a combined entropy output signal in step 1706.
- step 1708 is using the combined entropy output signal to generate a plurality of random output bits. It should be appreciated that any of the vari ations and features described above with respect to the other fi gures can be utilized in the above method, either alone or in any combination.
- FIG. 18 is a flowchart 1800 depicting a method for generating true random numbers at a high frequency rate according to aspects of the invention.
- Step 1802 is the step of generating an entropy output signal from each of a plurality of entropy source blocks, wherein the entropy output signals of at least some of the plurality of entropy source blocks affect the entropy output signals of at least some others of the plurality of entropy source blocks.
- Step 1804 is receiving, at a ring oscillator, the entropy output signals of two of the plurality of entropy source blocks and a clock signal and outputting a plurality of random output signals from the ring oscillator.
- step 1808 is sampling, by a sampling circuit that receives the entropy output signal of a third one of the plurality of entropy source blocks, the plurality of buffered random output signals from the plurality of buffers and outputting a plurality of sampled random output signals from the sampling circuit.
- the delay cells 524, 526, 528, and 532 of the ring oscillator 502 can be implemented with the delay cell schematic circuit 1900 shown in Figure 19.
- this embodiment uses an additional transistor 1902 under the base transistors 624 and 626.
- the transistor 1902 is a control transistor that is used to turn OFF the base transistors 624 and 626, and consequently, the differential pair transistors 628, 630, 632 and 634, during the metastable state. It receives the same control signal 606 'V metastable' as the pull-up transistors 636 and 638.
- control transistor 1902 can also be used in the delay cell 700 of Figure 7, to get the delay cell 2000 of Figure 20.
- the operation principle of the control transistor 1902 remains the same in this embodiment with only the addition of the inductor 702 which enables higher frequency operation of the ring oscillator 502.
- the pull function in the illustrated exemplary embodiment of Figure 19 is performed by one PMOS transistor (on each side), it will be understood that the pull function may also be performed by a complete transmission gate (NMOS-PMOS pair). In other words, a complete transmission gate can also be used in place of this single PMOS pull-up to achieve the same functionality.
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)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
- Pulse Circuits (AREA)
Abstract
Description
Claims
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU2022327059A AU2022327059A1 (en) | 2021-08-09 | 2022-06-14 | A circuit and system for a very high throughput true random number generator (trng) for next generation secure hardware and communication systems |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PK57721 | 2021-08-09 | ||
PK577-2021 | 2021-08-09 | ||
PK95521 | 2021-12-22 | ||
PK955-2021 | 2021-12-22 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023018476A1 true WO2023018476A1 (en) | 2023-02-16 |
Family
ID=85201107
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2022/033332 WO2023018476A1 (en) | 2021-08-09 | 2022-06-14 | A circuit and system for a very high throughput true random number generator (trng) for next generation secure hardware and communication systems |
Country Status (2)
Country | Link |
---|---|
AU (1) | AU2022327059A1 (en) |
WO (1) | WO2023018476A1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115913553A (en) * | 2023-03-08 | 2023-04-04 | 广东广宇科技发展有限公司 | Data encryption method based on nonlinear mapping |
CN117075850A (en) * | 2023-08-29 | 2023-11-17 | 海光云芯集成电路设计(上海)有限公司 | Chaotic circuit, random number sequence generator, chip and related equipment |
CN117672492A (en) * | 2023-11-28 | 2024-03-08 | 上海六颗蚕豆医疗科技有限公司 | Circulating tumor cell detection system and control method thereof |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100281088A1 (en) * | 2009-04-29 | 2010-11-04 | Psigenics Corporation | Integrated true random number generator |
US20100332574A1 (en) * | 2009-06-26 | 2010-12-30 | Herbert Howard C | Digital random number generator |
US20150154006A1 (en) * | 2013-11-29 | 2015-06-04 | The Regents Of The University Of Michigan | True random number generator |
US9335971B1 (en) * | 2009-02-27 | 2016-05-10 | Calamp Corp. | High entropy random bit source |
US20180239592A1 (en) * | 2011-09-30 | 2018-08-23 | Los Alamos National Security, Llc | Quantum random number generators |
-
2022
- 2022-06-14 WO PCT/US2022/033332 patent/WO2023018476A1/en active Application Filing
- 2022-06-14 AU AU2022327059A patent/AU2022327059A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9335971B1 (en) * | 2009-02-27 | 2016-05-10 | Calamp Corp. | High entropy random bit source |
US20100281088A1 (en) * | 2009-04-29 | 2010-11-04 | Psigenics Corporation | Integrated true random number generator |
US20100332574A1 (en) * | 2009-06-26 | 2010-12-30 | Herbert Howard C | Digital random number generator |
US20180239592A1 (en) * | 2011-09-30 | 2018-08-23 | Los Alamos National Security, Llc | Quantum random number generators |
US20150154006A1 (en) * | 2013-11-29 | 2015-06-04 | The Regents Of The University Of Michigan | True random number generator |
Non-Patent Citations (1)
Title |
---|
PASCAL PAILLIER; INGRID VERBAUWHEDE;: "Cryptographic Hardware and Embedded Systems - CHES 2007", vol. 4727, 10 September 2007, SPRINGER BERLIN HEIDELBERG , Berlin, Heidelberg , ISBN: 978-3-540-74734-5, article MARKUS DICHTL; JOVAN DJ. GOLIć;: "High-Speed True Random Number Generation with Logic Gates Only", pages: 45 - 62, XP019069567, 033645 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115913553A (en) * | 2023-03-08 | 2023-04-04 | 广东广宇科技发展有限公司 | Data encryption method based on nonlinear mapping |
CN117075850A (en) * | 2023-08-29 | 2023-11-17 | 海光云芯集成电路设计(上海)有限公司 | Chaotic circuit, random number sequence generator, chip and related equipment |
CN117075850B (en) * | 2023-08-29 | 2024-02-09 | 海光云芯集成电路设计(上海)有限公司 | Chaotic circuit, random number sequence generator, chip and related equipment |
CN117672492A (en) * | 2023-11-28 | 2024-03-08 | 上海六颗蚕豆医疗科技有限公司 | Circulating tumor cell detection system and control method thereof |
Also Published As
Publication number | Publication date |
---|---|
AU2022327059A1 (en) | 2023-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2022327059A1 (en) | A circuit and system for a very high throughput true random number generator (trng) for next generation secure hardware and communication systems | |
US7161846B2 (en) | Dual-edge triggered multiplexer flip-flop and method | |
US8285767B2 (en) | Apparatus and method for generating a random number | |
US20100005128A1 (en) | Random numbers generation using continuous-time chaos | |
US20100146025A1 (en) | Method and hardware for generating random numbers using dual oscillator architecture and continuous-time chaos | |
US20180302229A1 (en) | Security device having physical unclonable function | |
CN112130809B (en) | True random number generator | |
US9377997B2 (en) | Random number generator | |
Li et al. | A metastability-based true random number generator on FPGA | |
CN111490757A (en) | Random number generating electronic circuit and method | |
Cao et al. | An energy-efficient true random number generator based on current starved ring oscillators | |
Wieczorek | Dual‐metastability fpga‐based true random number generator | |
CN1938948B (en) | Apparatus for providing a random bit stream | |
Che et al. | A random number generator for application in RFID tags | |
US7079055B2 (en) | Low-power serializer with half-rate clocking and method | |
Jin et al. | A dynamically reconfigurable entropy source circuit for high-throughput true random number generator | |
KR100871810B1 (en) | Random signal generator, Random number generator including the same and method of generating a random number | |
Luo et al. | A 2.5 pJ/bit PVT-tolerant true random number generator based on native-NMOS-regulated ring oscillator | |
CN110336536B (en) | Circuit and device for true random number generator | |
Johansson et al. | Random number generation by chaotic double scroll oscillator on chip | |
CN110795063B (en) | Physical random number generation method with adjustable power consumption and rate | |
Kumar et al. | 0.4 mW, 0.27 pJ/bit true random number generator using jitter, metastability and current starved topology | |
Gomez et al. | Low‐cost TRNG IPs | |
Kiruthiga et al. | LFSR using CDFF and GDI | |
Kumar et al. | Design of Energy Efficient True Random Number Generator using MUX-Metastable Approach |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22856377 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2022327059 Country of ref document: AU |
|
ENP | Entry into the national phase |
Ref document number: 2022327059 Country of ref document: AU Date of ref document: 20220614 Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 22856377 Country of ref document: EP Kind code of ref document: A1 |