Random number generator and generation method
DCFirst Claim
1. A general purpose computer that generates true random numbers and utilizes at least some of the true random numbers in an application program, said computer comprising:
- a true random number generator circuit, mounted on a motherboard of said general purpose computer and receiving power from said motherboard, said true random number generator circuit including an entropy source that, in conjunction with a clock signal, generates random numbers, wherein said entropy source is selected from the group consisting of a thermal noise source and a semiconductor noise source;
a memory buffer that stores said random numbers;
an interface that interfaces with said random number generator circuit, wherein said interface automatically tests said true random number generator circuit when said general purpose computer is turned on; and
an application program installed on said general purpose computer that is capable of performing an operation to read random numbers from said memory buffer, wherein said application program utilizes at least some of said read random numbers within the context of said application program.
1 Assignment
Litigations
0 Petitions
Accused Products
Abstract
An RNG circuit is connected to the parallel port of a computer. The circuit includes a flat source of white noise and a CMOS amplifier circuit compensated in the high frequency range. A low-frequency cut-off is selected to maintain high band-width yet eliminate the 1/f amplifier noise tail. A CMOS comparator with a 10 nanosecond rise time converts the analog signal to a binary one. A shift register converts the serial signal to a 4-bit parallel one at a sample rate selected at the knee of the serial dependence curve. Two levels of XOR defect correction produce a BRS at 20 kHZ, which is converted to a 4-bit parallel word, latched and buffered. The entire circuit is powered from the data pins of the parallel port. A device driver interface in the computer operates the RNG. The randomness defects with various levels of correction and sample rates are calculated and the RNG is optimized before manufacture.
69 Citations
32 Claims
-
1. A general purpose computer that generates true random numbers and utilizes at least some of the true random numbers in an application program, said computer comprising:
-
a true random number generator circuit, mounted on a motherboard of said general purpose computer and receiving power from said motherboard, said true random number generator circuit including an entropy source that, in conjunction with a clock signal, generates random numbers, wherein said entropy source is selected from the group consisting of a thermal noise source and a semiconductor noise source; a memory buffer that stores said random numbers; an interface that interfaces with said random number generator circuit, wherein said interface automatically tests said true random number generator circuit when said general purpose computer is turned on; and an application program installed on said general purpose computer that is capable of performing an operation to read random numbers from said memory buffer, wherein said application program utilizes at least some of said read random numbers within the context of said application program. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A true random number generator system, comprising:
-
a hardware true random number generator circuit that implements a noise source for generating a true random sequence of signals, wherein said noise source is selected from the group consisting of a thermal noise source and a semiconductor noise source; and a personal computer including a true random number generator circuit interface, said interface consisting of one or more of the following;
a device driver, a portion of an operating system of said personal computer, or a program stored in a BIOS memory of said personal computer;wherein said interface further comprises software for locating and testing said hardware true random number generator circuit when said personal computer is turned on or when said hardware true random number generator circuit is initialized. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 20, 21, 22, 23, 24)
-
-
11. A system as in 10, wherein said interface comprises a device driver, and said device driver tests said hardware true random number generator circuit automatically each time said personal computer is turned on.
-
19. A system as in 78, wherein said interface is incorporated into an application program.
-
25. A general purpose personal computer, said personal computer including a processor, a motherboard, operating system software, and at least one application program, said personal computer comprising:
-
a hardware true random number generator circuit mounted on said motherboard and receiving power from said motherboard, wherein said hardware true random number generator circuit includes a non-deterministic analog noise source and a dedicated clock circuit that generates a clock signal that is used to sample said non-deterministic analog noise source to generate random numbers; a memory buffer into which said random numbers are stored after being provided by said hardware true random number generator circuit; a device driver that interfaces said hardware true random number generator circuit to said application program, wherein said processor reads said random numbers from said memory buffer in response to a request from said application program to enable utilization of said random numbers by said application program. - View Dependent Claims (27, 28, 29, 30, 31, 32)
-
-
26. A personal computer as in 25, wherein said device driver tests said hardware true random number generator circuit automatically when the personal computer is turned on.
Specification