2014 | OriginalPaper | Chapter
7. Generation and Testing of Random Numbers
Published in:
What Is Computer Science?
Abstract
The concept of randomness is quite abstract: what does random even mean, when can we describe a number as random, and what can random numbers be used for? Although we might have an intuition about such questions, the central role of random numbers in cryptography (e.g., as key material) demands care via more formal treatment.
This forms motivation for the chapter, whose goal is to provide answers in two main parts. First it explores metrics for differentiating between random versus non-random (or ”good” and ”bad” randomness); various simple experiments to generate and test random numbers provide practical evidence. It then introduces the concept of pseudo-randomness, which unlike real randomness can be generated by algorithms such as the Linear Congruential Generator (LCG).