Differential-Linear Attacks against the Stream Cipher Phelix - - PowerPoint PPT Presentation

differential linear attacks against the stream cipher
SMART_READER_LITE
LIVE PREVIEW

Differential-Linear Attacks against the Stream Cipher Phelix - - PowerPoint PPT Presentation

Differential-Linear Attacks against the Stream Cipher Phelix Hongjun Wu and Bart Preneel Katholieke Universiteit Leuven ESAT/COSIC Overview 1. Introduction to Helix and Phelix 2. Description of Phelix 3. Differential propagation of


slide-1
SLIDE 1

Differential-Linear Attacks against the Stream Cipher Phelix

Hongjun Wu and Bart Preneel Katholieke Universiteit Leuven ESAT/COSIC

slide-2
SLIDE 2

K.U. Leuven, ESAT/COSIC 2

Overview

  • 1. Introduction to Helix and Phelix
  • 2. Description of Phelix
  • 3. Differential propagation of addition
  • 4. A basic attack on Phelix
  • 5. Improving the attack on Phelix
  • 6. Improving the security of Phelix
  • 7. Open problems
  • 8. Conclusion
slide-3
SLIDE 3

K.U. Leuven, ESAT/COSIC 3

1 Background (1)

Stream Cipher Helix (FSE 2003)

stream cipher + message authentication message is applied to update the internal state encryption: message is XORed with the keystream MAC: generated from internal state after finishing encryption gain – no separate MAC cost – error propagation + security concern

slide-4
SLIDE 4

K.U. Leuven, ESAT/COSIC 4

1 Background (2)

Attacks against Helix

Differential key recovery attack (Muller, 2004): nonce reuse; 212 adaptively chosen plaintext words, 288 operations Reducing the number of plaintext words (Paul-Preneel, 2005) about 210 adaptively chosen plaintext words;

  • r 235.6 chosen plaintext words
slide-5
SLIDE 5

K.U. Leuven, ESAT/COSIC 5

  • 1. Background (3)

Stream Cipher Phelix (2005)

Phelix: the strengthened version of Helix 1) message passing through more operations before affecting the keystream: half block in Helix, one full block in Phelix 2) more internal state words in generating a keystream word:

  • ne internal state word in Helix, two in Phelix

Is Phelix secure? Still vulnerable to the differential key recovery attack, effective key size being reduced to 41.5 bits

slide-6
SLIDE 6

K.U. Leuven, ESAT/COSIC 6

  • 2. Stream Cipher Phelix (1)

Stream Cipher Phelix

stream cipher + message authentication code 256-bit key, 128-bit IV eSTREAM Phase II software and hardware focus cipher Fast in software: 6.6 cycles/byte on Pentium M processor Hardware: twelve 32-bit additions are required for one 32-bit keystream word: efficient ?

slide-7
SLIDE 7

K.U. Leuven, ESAT/COSIC 7

  • 2. Stream Cipher Phelix (2)

Stream Cipher Phelix

160-bit internal state: updated by message 512-bit internal state: simply related to the key and IV incremented during the encryption

slide-8
SLIDE 8

K.U. Leuven, ESAT/COSIC 8

Phelix: one block

Z0, Z1, Z2, Z3, Z4 : 160-bit internal state updated by message Xi,0, Xi,1 : 512-bit internal state, determined by key, IV; Encryption:

i i i

S P C ⊕ =

slide-9
SLIDE 9

K.U. Leuven, ESAT/COSIC 9

  • 3. Differential Propagation of Addition

Observation:

addend bits strongly correlated with the difference of the sums => By observing the distribution of the difference of the sums, the value of addend bits can be determined with the linear attack technique

slide-10
SLIDE 10

K.U. Leuven, ESAT/COSIC 10

  • 3. Differential Propagation of Addition

The following theorem shows that the check sum of two adjacent addend bits does affect significantly the distribution of the difference of the sums

slide-11
SLIDE 11

K.U. Leuven, ESAT/COSIC 11

  • 4. A Basic Attack on Phelix (1)

1) Introducing one bit difference in Pi 2) heavily biased

) 1 ( 3 ) 1 ( 3 + +

′ ⊕

i i

B B

slide-12
SLIDE 12

K.U. Leuven, ESAT/COSIC 12

  • 4. A Basic Attack on Phelix (2)

3) Since and that is heavily biased, we can predict which bits of Xi+1,0 may have significant effect on the distribution of the difference of the keystream according to Theorem 2.

) (

, 1 ) 1 ( 3 ) 1 ( ) 1 ( + + + +

+ ⊕ =

i i i i

X B A T

) 1 ( 3 ) 1 ( 3 + +

′ ⊕

i i

B B

slide-13
SLIDE 13

K.U. Leuven, ESAT/COSIC 13

  • 4. A Basic Attack on Phelix (3)

4) When the one-bit difference is in the least significant bit of Pi , for , the 17th least significant bit of is 0 with probability 0.50227; for , the probability is 0.50117 => The value of is highly correlated to the distribution of . => Recovering with 222.3 plaintext pairs

14 , 1 15 , 1

= ⊕

+ + i i

X X

1 1 + +

′ ⊕

i i

S S

1

14 , 1 15 , 1

= ⊕

+ + i i

X X

14 , 1 15 , 1 + +

i i

X X

17 1 17 1 + +

′ ⊕

i i

S S

14 , 1 15 , 1 + +

i i

X X

slide-14
SLIDE 14

K.U. Leuven, ESAT/COSIC 14

  • 4. A Basic Attack on Phelix (4)

Experiment 1. With 225 chosen plaintext pairs with difference in the least significant bit of Pi, the values of of 192 keys among 200 keys are determined correctly. The success rate is about 0.96. Lower than expected. Reason: the other bits of interfere with Shifting the one-bit difference, 23 bits of are recovered.

14 , 1 15 , 1 + +

i i

X X

14 , 1 15 , 1 + +

i i

X X

, 1 + i

X

, 1 + i

X

slide-15
SLIDE 15

K.U. Leuven, ESAT/COSIC 15

  • 5. Improving the Attack on Phelix (1)

Aims: Recovering more key bits and improving the success rate Reducing the number of chosen plaintext pairs Methods: Recovering before recovering Fine tuning of the threshold values in the attack

, 1 + i

X

) 3 ( 4 − i

Z

slide-16
SLIDE 16

K.U. Leuven, ESAT/COSIC 16

  • 5. Improving the Attack on Phelix (2)

Recovering

1) Introducing difference in the least significant bit of Pi 2) is heavily biased

) 3 ( 4 − i

Z

) 1 ( 4 ) 1 ( 4 + +

′ ⊕

i i

Y Y

slide-17
SLIDE 17

K.U. Leuven, ESAT/COSIC 17

  • 5. Improving the Attack on Phelix (3)

3) Since is heavily biased and , the value of the bits of affects the distribution of 4) When , for , the 5th least significant bit of is 0 with probability 0.5461; for , this probability is 0.5193 => Recovering requires 214 plaintext pairs

) 1 ( 4 ) 1 ( 4 + +

′ ⊕

i i

Y Y

) 3 ( 4 ) 1 ( 4 1 − + +

⊕ =

i i i

Z Y S

) 3 ( 4 − i

Z

1 1 + +

′ ⊕

i i

S S

1 = ′ ⊕

i i

P P

2 ), 1 ( 4 3 ), 1 ( 4

= ⊕

+ + i i

Y Y

3 3 − −

′ ⊕

i i

S S

1

2 ), 1 ( 4 3 ), 1 ( 4

= ⊕

+ + i i

Y Y

2 ), 1 ( 4 3 ), 1 ( 4 + +

i i

Y Y

slide-18
SLIDE 18

K.U. Leuven, ESAT/COSIC 18

  • 5. Improving the Attack on Phelix (4)

5) In the attack, we determine the least significant bit of first, then proceed to determine the more significant bits of by shifting the one-bit difference. 6) When is analyzed, is subtracted from and so that does not interfere with . The success rate becomes very close to 1 with small number of plaintext pairs.

) 3 ( 4 − i

Z

) 3 ( 4 − i

Z

j i

Z

), 3 ( 4 − ) 3 ( 4 − i

Z

), 3 ( 4 2 ), 3 ( 4 1 ), 3 ( 4 − − − − − i j i j i

Z Z Z L

i

S

i

S′

), 3 ( 4 2 ), 3 ( 4 1 ), 3 ( 4 − − − − − i j i j i

Z Z Z L

j i

Z

), 3 ( 4 −

slide-19
SLIDE 19

K.U. Leuven, ESAT/COSIC 19

  • 5. Improving the Attack on Phelix (5)

7) With 217 plaintext pairs, 30 bits of (except the two most significant bits of ) can be determined with success rate about 0.999. After recovering , we recover from the distribution of instead of .

) 3 ( 4 − i

Z

) 3 ( 4 − i

Z

) 3 ( 4 − i

Z

, 1 + i

X

) 1 ( 4 ) 1 ( 4

' +

+ ⊕ i i

Y Y

1 1 + +

′ ⊕

i i

S S

slide-20
SLIDE 20

K.U. Leuven, ESAT/COSIC 20

  • 5. Improving the Attack on Phelix (6)

Recovering from

Due to the interference between the bits of on the distribution of , we need the fine tuning of the threshold values in the attack. For example, when , if and the value of is 00, 11, 01, 10, then with prob.

0.53033, 0.52334, 0.51946, 0.51864; if , the prob. becomes 0.52334, 0.53030, 0.51861, 0.51948.

=> affect the distribution of

, 1 + i

X

) 1 ( 4 ) 1 ( 4 + +

′ ⊕

i i

Y Y

, 1 + i

X

1 4 1 4 + +

′ ⊕

i i

Y Y 1 = ′ ⊕

i i

P P

9 , 1 = + i

X

10 , 1 11 , 1 || + + i i

X X

13 , 1 4 13 , 1 4

= ′ ⊕

+ + i i

Y Y

1

9 , 1 = + i

X

10 , 1 11 , 1 9 , 1

|| and

+ + + i i i

X X X

13 , 1 4 13 , 1 4 + +

′ ⊕

i i

Y Y

slide-21
SLIDE 21

K.U. Leuven, ESAT/COSIC 21

  • 5. Improving the Attack on Phelix (7)

Other bits of also affect the distribution of In the attack, we need to tune the threshold value to 0.52035, so that the value of can be recovered with success rate 0.99 with 221 chosen plaintext pairs. The values of can be determined in a similar way

, 1 + i

X

13 , 1 4 13 , 1 4 + +

′ ⊕

i i

Y Y

10 , 1 11 , 1 + +

i i

X X

j i j i

X X

, 1 1 , 1 + + +

⊕ ) 28 2 ( ≤ ≤ j

slide-22
SLIDE 22

K.U. Leuven, ESAT/COSIC 22

  • 5. Improving the Attack on Phelix (8)

The lsb is recovered in a different way: 216 chosen plaintext pairs with

  • bserving the distribution of

The second lsb can be recovered if 216.4 chosen plaintext pairs with

  • bserving the distribution of

The value of can be recovered if and

, 1 + i

X

21

2 = ′ ⊕

i i

P P

2 ), 1 ( 4 2 ), 1 ( 4 + +

′ ⊕

i i

Y Y

1 , 1 + i

X

, 1 = + i

X

22

2 = ′ ⊕

i i

P P

3 ), 1 ( 4 3 ), 1 ( 4 + +

′ ⊕

i i

Y Y

2 , 1 + i

X

, 1 = + i

X

1 , 1 = + i

X

slide-23
SLIDE 23

K.U. Leuven, ESAT/COSIC 23

  • 5. Improving the Attack on Phelix (9)

The above attack recovers 28.75 bits of After recovering eight consecutive , 230 key bits are recovered. Considering the error rate of about 0.01, the effective key size is reduced to 41.5 bits. The attack requires 232.7 chosen plaintext pairs.

, 1 + i

X

, 1 + i

X

slide-24
SLIDE 24

K.U. Leuven, ESAT/COSIC 24

  • 6. Improving the Security of Phelix

Problem in Phelix: The plaintext affects the keystream before passing through enough confusion and diffusion operations Solution 1: plaintext passing through more operations => resulting in slow cipher Solution 2: using strong one-way function to generate the initial internal state from key and IV => secure against key recovery attack but the leaked internal state allows message forgery

slide-25
SLIDE 25

K.U. Leuven, ESAT/COSIC 25

  • 7. Open problems (1)

Open Problem 1. How to design an efficient stream cipher with embedded MAC, secure against the key recovery attack in the applications where an attacker has the ability to control the nonce generation for a while? Helix and Phelix are insecure in these applications

slide-26
SLIDE 26

K.U. Leuven, ESAT/COSIC 26

  • 7. Open problems (2)

Open Problem 2. How to design an efficient stream cipher with embedded MAC, secure against the key recovery attack only in the applications where the nonce generation is secure Helix and Phelix are secure in these applications. But there may be dedicated and more efficient designs

slide-27
SLIDE 27

K.U. Leuven, ESAT/COSIC 27

  • 8. Conclusion
  • 1. The computational complexity of the attack against Phelix is

241.5, less than the 288 operations required to break Helix => Phelix fails to strengthen Helix in this respect

  • 2. Open problems: Efficient embedded MACs for stream cipher
slide-28
SLIDE 28

K.U. Leuven, ESAT/COSIC 28

Thank you! Q & A