Question
Problem 1 Linear Feedback Shift Register Key Streams (10 marks) Stream ciphers such as the one-time pad require a secret key stream of random bits
Problem 1 Linear Feedback Shift Register Key Streams (10 marks)
Stream ciphers such as the one-time pad require a secret key stream of random bits which is bitwise x-ored with the plaintext to produce a ciphertext. In this problem, you will cryptanalyze one possible approach for generating such a key stream.
Let m be a positive integer and c0, c1, . . . , cm1 {0, 1} a sequence of m fixed bits. Let z0, z1, . . . , zm1 be any sequence of m bits and define zm, zm+1, zm+1, . . . via the linear recurrence zn+m cm1zn+m1 + cm2zn+m2 + + c1zn+1 + c0zn (mod 2) , (1)
with the usual arithmetic modulo 2. The fixed bits c0, c1, . . . cm1 are the coefficients of the linear recurrence (1) and the intial values z0, z1, . . . , zm1 are its seed. If the seed and the coefficients are appropriately chosen, then (1) generates a sequence of 2m pseudorandom bits1 (zi) i0 from a seed of length m. This type of construction is popular since it can be implemented very efficiently in hardware using a linear feedback shift register ; see pp. 36-37 of the Stinson-Paterson book.
(a) (2 marks) Let m = 4 and consider the recurrence zn+4 zn+3 + zn (mod 2) with seed (z0, z1, z2, z3) = (1, 0, 1, 0). Write down the first 19 bits z0, z1, . . . , z18 generated by this recurrence and seed.
(b) (4 marks) A user with knowledge of the coefficients and of any m consecutive bits zi , zi+1, . . . , zi+m1 (such as the seed, corresponding to the case i = 0) can use (1) to generate the entire sequence of bits (zn)ni starting at zi . This user is then able to decrypt everything from that point in the plaintext onwards. Explain how an attacker who intercepts a sequence of any 2m consecutive bits zi , zi+1, . . . , zi+2m1 can potentially obtain the (unknown) coefficients c0, c1, . . . , cm1 and thus completely break the stream cipher. Your description need not be long, but it should be clear and concise.
(c) (4 marks) Suppose the sequence (1, 1, 1, 1, 0, 0, 1, 1) of 8 consecutive bits was generated using an unknown linear recurrence of the form (1) with m = 4. Use your attack of part (b) to find the coefficients c0, c1, c2, c3 of this recurrence. (Suggestion: check your answer, i.e. ensure that the coefficients you obtain define a recurrence that produces the second four bits from the first four.)
1Since there are only 2m 1 distinct non-zero bit patterns of length m, there must be repetition after at most 2 m 1 bits. So in practice, m must be large.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started