8.11 NONLINEAR KEY STREAM GENERATION

We illustrate two ways for nonlinear key stream generation, using a read-only memory ROM to implement a nonlinear mapping. A k-bit ROM is a table with k-bit input x = (x0, x1, …, xk−1) and output y = (y0, y1, …, yk−1)

Figure 8.11 uses the outputs of k-LFSRs as the input of a k-bit ROM from which either a single or k-bit output can be read:

image

Figure 8.11 XORing to a ROM.

  • A min-term for n Boolean variable s0, s1, …, sn−1 is a product in which either si or its complement image occurs;
  • An mth order product a product of m distinct Boolean variables;
  • The algebraic normal form for a Boolean function f(s0, s1, …, sn−1) is the (modulo 2) sum of different mth products; and
  • The nonlinear order of f is the maximum order of the terms appearing in its algebraic normal form.

Example 8.8

  1. image is a min-term in the Boolean variables s0, s1, …, sn−1,
  2. The Boolean function f(s0, s1, …, sn−1) = s1 + s2 + sn−1 and has nonlinear order 1,
  3. The Boolean function f(s0, s1, …, sn−1) = s1 + s1s2 + s0s1s3 has nonlinear order 3.

        Proposition 8.10: [Menezes et al., 1996, p. 205] If the lengths N0, N1, …, Nk−1 of the k LFSRs are pairwise distinct and >2, the nonlinear order of the ...

Get Computer Security and Cryptography now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.