Reference Work Entry

Encyclopedia of Cryptography and Security

pp 721-721

Linear Congruential Generator

  • Caroline FontaineAffiliated withLab-STICC/CID and Telecom Bretagne/ITI, CNRS/Lab-STICC/CID and Telecom Bretagne

Related Concepts

Pseudorandom Generator; Stream Cipher

Definition

A linear congruential generator is a pseudorandom generator that produces a sequence of numbers x1, x2, x3, according to the following linear recurrence:

$${x}_{t} = a{x}_{t-1} + b\quad \mathrm{mod}\ n$$
for t ≥ 1 (modular arithmetic); integers a,  b, and n characterize entirely the generator, and the seed is x0.

Example

Considering for example a = 3,  b = 5,  n = 17, and x0 = 2, the sequence produced by the linear congruential generator will be 11, 4, 0, 5, 3, 14, 13, 10, 1, 8, 12, 7, 9, 15, 16,

Background

Pseudorandom generators are very useful in cryptography, in protocols, but also in the generation of keystreams in stream ciphers. In this case, they have to present strong properties to face cryptanalysis.

Applications

Such generators are easy to implement and pass the following statistical tests: Golomb’s randomness postulates, frequency test, serial test, poker test ...

This is an excerpt from the content