KISS (
Keep it Simple Stupid
KISS, an acronym for "Keep it simple, stupid!", is a design principle noted by the U.S. Navy in 1960. First seen partly in American English by at least 1938, the KISS principle states that most systems work best if they are kept simple rather ...
) is a family of
pseudorandom number generators introduced by
George Marsaglia. Starting from 1998 Marsaglia posted on various
newsgroups including
sci.math,
comp.lang.c,
comp.lang.fortran and
sci.stat.math several versions of the generators. All KISS generators combine three or four independent random number generators with a view to improving the quality of randomness. KISS generators produce 32-bit or 64-bit random integers, from which random floating-point numbers can be constructed if desired. The original 1993 generator is based on the combination of a
linear congruential generator and of two
linear feedback shift-register generators. It has a period 2
95, good speed and good statistical properties; however, it fails the LinearComplexity test in the Crush and BigCrush tests of the
TestU01 suite. A newer version from 1999 is based on a linear congruential generator, a
3-shift linear feedback shift-register and two multiply-with-carry generators. It is 10–20% slower than the 1993 version but has a larger period 2
123 and passes all tests in TestU01. In 2009 Marsaglia presented a version based on 64-bit integers (appropriate for 64-bit processors) which combines a
multiply-with-carry In computer science, multiply-with-carry (MWC) is a method invented by George Marsaglia for generating sequences of random integers based on an initial set from two to many thousands of randomly chosen seed values. The main advantages of the MWC m ...
generator, a
Xorshift generator and a linear congruential generator.
It has a period of around 2
250 (around 10
75).
References
Further reading
*
*
* {{cite journal , last1=Rose , first1=Gregory G. , title=KISS: A bit too simple, journal=Cryptography and Communications , volume=10 , pages=123–137 , year=2017 , issn=1936-2447 , doi=10.1007/s12095-017-0225-x, doi-access=free
Pseudorandom number generators