Question: RC4 This problem involves a bias in the key-stream output of RC4. The key-scheduling algorithm and key-stream generator algorithm are given at the end of
RC4
This problem involves a bias in the key-stream output of RC4. The key-scheduling algorithm and key-stream generator algorithm are given at the end of this assignment for reference.
a) If the input to the key-stream generator satises (S[1] != 2) and (S[2] == 0), prove that the second key-stream byte that is output by the generator is 0.
code
RC4 Key-schedule algorithm (input: key) --------------------------------------------------- for i from 0 to 255 do S[i] := i end for j := 0 for i from 0 to 255 do j := (j + S[i] + key[i % key.length]) % 256 swap values of S[i] and S[j] end for --------------------------------------------------- RC4 Key-stream generator (input: S[0],...,S[255]) --------------------------------------------------- i := 0 j := 0 while NeedMoreBytes do i := (i + 1) % 256 j := (j + S[i]) % 256 swap values of S[i] and S[j] K := S[(S[i] + S[j]) % 256] output K end while ---------------------------------------------------
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
