Date of Award





Master of Science

Degree Type

Master of Science


TSYS School of Computer Science

First Advisor

Yesem Kurt-Peker

Second Advisor

Radhouane Chouchane

Third Advisor

Rodrigo Obando


A pseudorandom number generator (PRNG) is an algorithm that produces a sequence of numbers which emulates the characteristics of a random sequence. In comparison to its genuine counterpart, PRNGs are considered more suitable for computing devices in that they do not consume a lot of resources (in terms of memory) and their portability; they can also be used on a wide range of devices. Cryptographically Secure PRNGs (CSPRNGs) are the only type of PRNGs suitable for cryptographic applications. They are specially designed to withstand security attacks. In this thesis, we provide descriptions of two CSPRNGs: Trivium, a hardware-based stream cipher designed for constrained computing environments, and OpenJDK SecureRandom, a traditional CSPRNG recommended for Java programs that include a cryptographic algorithm. Our contributions are Quadrivium, a PRNG inspired by Trivium and analysis results comparing statistical properties of SecureRandom, Trivium and Quadrivium.