LFSRs
An LFSR, or linear feedback shift register, is a shift register whose input bit is a linear function of its previous state, typically an XOR of selected bits. The register has n stages, each storing one bit. At each step the register shifts, and the new input bit is computed from a subset of the current bits, known as taps. The sequence of states and the output bit are determined by the length n and the chosen taps, which correspond to a feedback polynomial over the finite field GF(2).
Two common hardware realizations are the Fibonacci form and the Galois form. In the Fibonacci configuration,
For a nonzero initial state and a primitive (i.e., maximal-length) feedback polynomial, an LFSR can generate a
Because LFSR sequences are linear, they can be predicted if the internal state becomes known. Cryptographic