Every true random number generator (TRNG)
requires a physical source of entropy. Entropy is in general a measure of
disorder in a physical system. In terms of Information Theory, entropy can be
thought of as a measure of how unpredictable the measured properties of the
entropy source are. A simple analogy is the flip of a coin. If each flip is
entirely unpredictable, that is, each flip has exactly a 50/50 chance of landing
on heads (a "fair" coin), the entropy is 1.0. In the opposite extreme, if a coin
had two heads, every flip of that coin would be completely predictable and the
entropy would be 0.0. All real physical measurements are inherently imperfect so
every realizable generator of random bits has at least some defect in
statistical randomness in its raw or uncorrected output, though it can be made
The entropy source in the QNG Model
R2000KU is a combination of thermal or Johnson noise and transistor noise.
Thermal noise is produced by thermally excited vibration of electrons in every
circuit element with resistance. Its statistical properties are well known and
its noise spectrum is flat or "white." Transistor noise is more complex and its
amplitude is frequency dependent. The exact mixture of transistor noise
components also depends on the type of transistor, such as a junction or MOS. At
low frequencies the transistor noise spectrum is dominated by the well-known 1/f
response. Above the "knee" in the 1/f spectrum, shot noise and thermal noise
become dominant, producing a relatively flat noise spectrum. Four independent,
high-frequency oscillating signal sources, each including combined noise signals
of the type described above, continuously operate at different frequencies
between 200 and 400 MHz. The resulting noisy oscillator signals are each sent
through multi-stage delay lines to produce 16 additional noisy outputs.
Permutations of these additional noisy outputs are used to produce 32 sampled
binary signals. The sampled binary signals are combined and resampled at an
output frequency of 112 MHz. The effect of the delay lines and the many permuted
binary samples is to greatly increase the rate of sampling of the entropy, that
is, the unpredictability of the combined output bits.
The R2000KU contains three
independent generators of the type described above. The statistics of each of
these three generators is continuously monitored in the generator hardware. The
monitoring includes 1/0 bias, 1st order autocorrelation and an
estimated minimum entropy. The outputs of each of the three generators is then sent
through a linear feedback shift register (LFSR) whitening function to correct
defects in statistical randomness. The LFSR's do not change the total amount of
entropy, but distribute it equally over the bits in the output sequences. The
three corrected outputs are combined by XOR function and finally 56 of these
bits (112 bits if the output rate is set to 1 Mbps) are combined in another XOR
to produce each final output bit. The internal hardware monitoring requires at
least two of the three generators to have an estimated entropy of at least 0.9
bits/bit. If this requirement fails, the output from the generator is halted. Output
bits are also tested for entropy, and the generator will be halted if the
estimated entropy falls below 0.99 bits/bit. The internal hardware testing also
acts as a startup test program. At startup random data will not be output until
a block of 1,048,576 bits (220 bits) from at least two of the three
redundant generators has produced the required minimum entropy level.
Software in the host computer
monitors the flow of data from the generator. If the monitoring program detects
a halt condition, a request for the internal statistics will be automatically
generated. These statistics are checked to determine if there has been an
actual fault in the hardware, and if this check indicates a fault, an error
message will be generated and no random data will be provided. The automatic
check of the hardware may also indicate there was simply a delay caused by
normal functioning in the computer's operating system, programs or other
attached components. If the check shows the hardware is operating correctly,
the monitoring software will restart the generator output and random data flow
will resume. The internal statistical test results are accessible at any time
through simple commands in the user interface.
Power for the generator is
provided through the USB connector and is filtered at entry into the grounded,
1/16 inch aluminum device enclosure. Independent regulation of power for the
generator section prevents any external effect on the random number generation by
fluctuations in the power source.
The theoretical effect on the output
sequence statistics of XORing a number of bits, n, in an input sequence of
given statistics is known, .
For n=56, the maximum defect in bias or autocorrelation is less than 100 ppm to
the fifth power, or 1 part in 1020. This assumes statistical defects
as large as 100 ppm in the output of the LFSR whitening function, while the
actual level is typically below 10 ppm. A sequence of any testable length with statistical
defects so low will be indistinguishable from a theoretically perfect random sequence.
The R2000KU output is guaranteed to pass any provably correct test for
randomness. The entropy level of the output bits will also be indistinguishable
from 1.0 since more than 100 bits of true entropy (nominally 150-160 bits) are
used to produce each output bit. The generator output bits are transferred at a
rate of 2 Mbps (jumper selectable to 1 Mbps) via USB interface to the R2000KU
driver in your computer. These bits are made available to your programs by
ActiveX communications in a number of different formats including 32-bit
integers, 48-bit [0, 1) uniformly distributed fractions and mean=0.0, standard
deviation=1.0 Gaussian variates of maximum ±8.0 SD.
The random generation method used
in the R2000KU is highly resistant to failure due to long-term aging effects and is tolerant
to expected variations in components from different production runs. The high
level of redundancy provided by the three independent generators and the large
number of entropic bits used to produce each output bit ensures consistent and
highest quality true random numbers for any application
 Davies, R., Exclusive OR (XOR) and hardware random number generators, Feb. 28, 2002, http://www.robertnz.net/pdf/xor2.pdf
 Wilber, S., Random Number Generator and Generation Method, Nov. 27, 2001, US Pat. No. 6,324,558
 Gaussian (Normally distributed) variates are calculated from pairs of uniformly distributed random variates using the Box-Muller transform.
 Patent pending.
 The R2000KU is protected under US patent numbers 6,763,364, 6,862,605, 7,096,242 and
7,752,247; other patent(s) pending.