110 likes | 313 Views
Lecture 5 STREAM CIPHER SYSTEM. By: NOOR DHIA AL- SHAKARCHY 2012-2013. Shift register. I 0. r n. r n-1. r 1. t n. n. t n-1. t 1. +. Linear Feedback Shift Register (LFSR). STREAM CIPHER SYSTEMS. 1- Linear Feedback Shift Register (LFSR):
E N D
Lecture 5STREAM CIPHER SYSTEM By: NOOR DHIA AL- SHAKARCHY 2012-2013
Shift register I0 rn rn-1 ...... r1 tn n tn-1 ...... t1 + Linear Feedback Shift Register (LFSR) STREAM CIPHER SYSTEMS 1- Linear Feedback Shift Register (LFSR): Is a one method used to generate a stream key . this method dependent on n-stage feedback shift register with linear operation that represent the relationship between the bits in the stage.
STREAM CIPHER SYSTEMS Ri' = ri+1 i = 1,2,....., n-1 Rn' = TR = ∑in=1 tiri mod 2 = t1r1 mod 2 Ө t2r2 mod 2 Ө ..... Ө tnrn mod 2 An n-stage LFSR can generated pseudo random bits with a period of 2n-1 (maximum period) if the polynomial : T(x) = tnxn + tn-1xn-1 + ….. + t1x +1 is primitive. A primitive polynomial of degree n is an irreducible polynomial that divides X2n-1 , but not Xd+1 for any d that divides 2n-1 Some of primitive polynomial are: T(x) = x4 + x + 1 T(x) = x4 + x3 + 1 T(x) = x3 + x + 1 T(x) = x3 + x2 + 1
Shift register I0 r4 r3 r2 r1 n + 4-stage Linear Feedback Shift Register (LFSR) STREAM CIPHER SYSTEMS Example:- Use the 4-stage LFSR and the polynomial T(x) = x4 + x + 1 and the I0=0001 to generate key stream. 24 -1 = 15 I0 = 0001 Key = 100011110101100
STREAM CIPHER SYSTEMS • H.W:-Use the 4-stage LFSR and the polynomial T(x) = x4 + x3 +x2 + 1 and the I0=1001 to generate key stream. • Randomness: If a cryptanalyst intercept part of the sequence, and have no information on how to predict what comes next, the sequence is called pseudo-random sequence. St : any binary sequence. RUN: is the string of consecutive identical sequence elements which is neither preceded nor succeeded by sum symbol. Gap: a RUN of zeros (0). Block: a RUN of ones (1). • Example:- St = O 1 1 1 0 0 1 RUN RUNRUNRUN =1 =3 =2 =1 gap block gap block
STREAM CIPHER SYSTEMS • Auto Correlation Function:- Suppose; st : is a binary sequence of period P. Ţ: any fixed. We compare the first P terms of st and it's translated (st + Ţ). If; A: is the number of positions which these two sequences agree. D: (P –A) is the number of positions in which theydisagree. Then autocorrelation function C(Ţ) = A – D P Clearly C (Ţ + P) = C(Ţ) for all Ţ, so 0 ≤ Ţ ≤P. When Ţ =0 ( A=P , D =0, C( 0) = p - 0 =1) We have In- Phase Autocorrelation. p Ţ ≠ 0 we have out-of-autocorrelation .
STREAM CIPHER SYSTEMS Example: P =7, Ţ =3; st = 1001010 St = 1 0 0 1 0 1 0 S1 S2 S3 S4 S5 S6 S7 First P term 1 0 0 1 0 1 0 1 0 0 1 0 1 0 St = 1 0 0 1 0 1 0 s(t+T ) = 1 0 1 0 1 0 0 A =3 ; D = 7-3=4 C(T) = C(3) = = = - A – D P 3 – 4 7 1 7 H.W:- C(3+7) == C(3)
STREAM CIPHER SYSTEMS • Golomb Randomness Postulates: R1: if P is even the cycle of length P shall cantainan equal nmber of zeros and ones. If P is odd number then the number of zeros shall be one more or less then the number of ones. R2: in the sycle of length P, half length 1, a guarter have length 2, an aither have length 3. R3: the out- of- phase autocorrelation is a constant. Example: 100010 111 0110001110010 R1: p = n = 22 (even) n0 = 11 n1 = 11 then R1 true R2: no. of RUN = 12 (1/2) no. of RUN = 6 { must be that length 1} no. of RUN that length (1 ) = 6 {true} (1/4) no. of RUN = 3 { must be that length 2} no. of RUN that length (2 ) = 2 {false} (1/3) no. of RUN = 4 { must be that length 3} no. of RUN that length (3 ) = 4 {true}
STREAM CIPHER SYSTEMS R3: T = 1 A = 10 D = P – A = 22-10 = 12 C(T = 1) = (A- D ) / P = (10- 12 ) / 22 = -2/22 = -1/11 T = 2 A = 10 D = P – A = 22-10 = 12 C(T = 2) = (A- D ) / P = (10- 12 ) / 22 = -2/22 = -1/11 T = 3 A = 8 D = P – A = 22-8 = 14 C(T = 1) = (A- D ) / P = (8- 14 ) / 22 = -6/22 = -3/11 That's mean the function not constant and R3 is false The sequence not good randomness