Cryptographically secure pseudo random number generator

Cryptography – Key management – Having particular key generator

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C380S044000, C380S047000, C708S250000, C708S251000, C708S252000

Reexamination Certificate

active

06275586

ABSTRACT:

FIELD OF THE INVENTION
The present invention relates generally to random number generators. Specifically, the present invention relates to a method and apparatus for improving the cryptographic security of a random number generator without changing essential characteristics of the generator including its invalid output set.
DESCRIPTION OF THE PRIOR ART
Many electronic devices utilize random number generators (RNG's) for implementing random functions. For example, in electronic casino gaming devices for implementing games of chance (e.g., poker, roulette, and slot machines), randomness is critically important to ensure proper game play and payment of winnings. Electronic casino gaming devices typically include game event modules for implementing game events which depend on chance. These event modules normally include an RNG, and an outcome generator which is responsive to the random numbers and operative to implement play of a particular casino type game. The random number generator usually has a valid output set and an invalid output set, and is only capable of generating random numbers of the invalid output set. Therefore, the outcome generator is programmed to be responsive only to numbers of the valid output set of the RNG.
A casino gaming application requires an RNG that is highly unpredictable and cryptographically secure. In addition, an RNG for use in casino gaming applications should have the following characteristics: every possible permutation in the valid output set of random numbers should be obtainable; the probability of a permutation occurring should be the same as the probability of any other permutation occurring; the occurrence of a permutation should not favor or disfavor the occurrence of any other permutation occurring; and should generate random permutations having a large recycling period, defined as the number of output cycles between occurrences of a permutation. Furthermore, it is desirable that the random number generator use minimal hardware and have fast execution speed.
There exist in the prior art a variety of methods for increasing the cryptographic security of random number generators. One method of generating cryptographically secure random numbers includes translating the valid output set of a the generator by encrypting the random numbers of the set using an encryption engine to provide an encrypted output set. However, the translation of the valid output set by the encryption engine can result in an encrypted output set which cannot be directly provided to the outcome generator. Firstly, an element of the encrypted set may be mapped from the invalid output value of the generator in which case the encrypted set will have an element which is non-occurring because the generator does not provide the invalid output value to the encryption engine. Secondly, the encrypted set may have an element which is equal to the invalid output of the generator and which cannot be provided to the outcome generator without re-programming the outcome generator. Such reprogramming is costly and time consuming.
What is needed is a method and apparatus for improving the cryptographic security of a random number generator without varying the valid and invalid output sets of the generator.
What is further needed is such a method and apparatus which achieves the requirements that: every possible permutation in the valid output set of random numbers of the generator is obtainable; the probability of a permutation occurring is the same as the probability of any other permutation occurring; the occurrence of a permutation does not favor or disfavor the occurrence of any other permutation occurring; and the RNG generates random permutations having a large recycling period, which is defined as the number of output cycles between occurrences of a permutation.
SUMMARY OF THE INVENTION
It is therefore an objective of the present invention to provide a method and apparatus for enhancing the cryptographic security of an RNG used in an electronic gaming application wherein the valid and invalid output sets of the generator are not changed so that the outcome generator of the gaming system need not be reprogrammed.
Another objective of the present invention is to provide a cryptographically secure random number generator system wherein every possible permutation occurring in the output of the generator is randomly obtainable.
Further objectives of the present invention are to provide a cryptographically secure RNG system wherein: the probability of each permutation is the same as the probability of any other permutation; the occurrence of one permutation does not favor or disfavor the occurrence of any other permutation; each of the random numbers generated has a large recycling period; only minimal hardware is required; and the execution speed is fast.
Briefly, the present invention provides a cryptographically secure random number generating system including an RNG for generating random numbers, an encryption engine, and a modulus offset unit. The RNG has a valid output set consisting of M−1 random numbers, and an invalid output set including one invalid output value. The encryption engine is responsive to the random number and to the invalid output value, and is operative to encrypt the random number to provide an encrypted random number. The engine is further operative to encrypt the invalid output value to provide an encrypted invalid output value. The modulus offset unit includes: a sub-modulo for adding, in modulo M, the invalid output value to the encrypted random number to determine a sum; and a sub-modulo for subtracting, in modulo M, the encrypted invalid output value from the sum to determine a cryptographically secure random number.
The present invention also provides a process of generating a cryptographically secure stream of random numbers. In the process, the random numbers are received from a generator having a valid output set consisting of M−1 random numbers, and an invalid output set including one invalid output value. The invalid output value is received. The random number is encrypted using an encryption function to provide an encrypted random number. The invalid output value is encrypted using the encryption function to generate an encrypted invalid output value. The invalid output value is added in modulus M to the encrypted random number to determine a sum. The encrypted invalid output value is then subtracted in modulus M from the sum to determine a cryptographically secure random number. A computer readable medium contains program instructions for generating a cryptographically secure random number, the program instructions including instructions for performing the above described process steps.
An advantage of the present invention is that the cryptographic security of a random number generator of an electronic casino gaming application can be enhanced using an encryption engine without varying the invalid output of the RNG.
Another advantage of the present invention is that is provides a method and apparatus for generating random numbers wherein every possible permutation is randomly obtainable. Further advantages of the present invention are that: the probability of each permutation is the same as the probability of any other permutation; the occurrence of one permutation does not favor or disfavor the occurrence of any other permutation; each random number generated has a large recycling period; only minimal hardware is required; and the execution speed is fast.
These and other objects and advantage of the present invention will no doubt become apparent to those of ordinary skill in the art after having read the following detailed description of the preferred embodiments. It is understood that the present invention can be used in a variety of applications and devices, even though the following description pertains to casino game applications.


REFERENCES:
patent: 4694412 (1987-09-01), Domenik et al.
patent: 5440640 (1995-08-01), Anshel et al.
patent: 5452358 (1995-09-01), Normile et al.
patent: 5760700 (1998-06-01), Ellis
patent:

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Cryptographically secure pseudo random number generator does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Cryptographically secure pseudo random number generator, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Cryptographically secure pseudo random number generator will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2486509

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.