Senior Honors Theses

Publication Date



Center for Computer and Information Technology


Computer Science

Primary Subject Area

Computer Science


Random Number Generation, RNG, PRNG, TRNG


Numerical Analysis and Computation | Numerical Analysis and Scientific Computing | Other Statistics and Probability | Theory and Algorithms


What does it mean to have random numbers? Without understanding where a group of numbers came from, it is impossible to know if they were randomly generated. However, common sense claims that if the process to generate these numbers is truly understood, then the numbers could not be random. Methods that are able to let their internal workings be known without sacrificing random results are what this paper sets out to describe. Beginning with a study of what it really means for something to be random, this paper dives into the topic of random number generators and summarizes the key areas. It covers the two main groups of generators, true-random and pseudo-random, and gives practical examples of both. To make the information more applicable, real life examples of currently used and currently available generators are provided as well. Knowing the how and why of a number sequence without knowing the values that will come is possible, and this thesis explains how it is accomplished.