Skip to content

Pseudorandomness

Definition

SS is a set of binary strings of length \ell, then

  • GG is some probability distribution on SS
  • UU is uniform probability distribution on SS

Then GG is called pseudorandom if a string drawn according to GG is indistinguishable from a string drawn according to UU to an PPT adversary.

Pseudorandom Generator

Let GG be a deterministic polynomial-time algorithm such that for any nn and any input s{0,1}ns \in \{0,1\}^n, the result G(s)G(s) is a string of length (n)\ell(n). GG is a pseudorandom generator if:

  • n,(n)>n\forall n, \ell(n) > n
  • The output of GG looks like a uniform string to any PPT observer

Formal definition:

GG is a pseudorandom generator, if A,ε\forall \mathcal{A}, \exists \varepsilon such that

Pr[A(U)=1]Pr[A(G(s))]ε(n) \left| Pr[\mathcal{A}(U) = 1] - Pr[\mathcal{A}(G(s))] \right| \le \varepsilon(n)

Where A\mathcal{A} is PPT adversaries, ε\varepsilon is a negligible function.

EAV-Security from a Pseudorandom Generator

Let GG be a pseudorandom generator with expansion factor (n)\ell(n), then define a fixed-length private-key encryption scheme Π\Pi for messages of length (n)\ell(n) as:

  • GenGen: on input 1n1^n, choose uniform key k{0,1}nk \in \{0,1\}^n and output it as the key
  • EncEnc: on input key k{0,1}nk \in \{0,1\}^n and a message m{0,1}(n)m \in \{0,1\}^{\ell(n)}, output the ciphertext c:G(k)m c: G(k) \oplus m
  • DecDec: on input key k{0,1}nk \in \{0,1\}^n and a ciphertext c{0,1}(n)c \in \{0,1\}^{\ell(n)}, output the message c:G(k)c c: G(k) \oplus c

If GG is a pseudorandom generator, then Π\Pi is an EAV-Secure, fixed-length private-key encryption scheme for messages of length (n)\ell(n)

Pseudorandom Number Generators (PRNGs)

PRNGs often use deterministic algorithmic techniques to create random like numbers.

Linear Feedback Shift Registers (LFSR) as PRNGs

Feed back function is linear over F2\mathbb{F}_2

Period

The maximum period for an nn-bit register is 2n12^n - 1

Nonlinear Shift Registers (NSFR)

Feed back function is nonlinear (with high degree).

Last updated on