multiple differential cryptanalysis theory and practice
play

Multiple Differential Cryptanalysis: Theory and Practice C eline - PowerPoint PPT Presentation

Multiple Differential Cryptanalysis: Theory and Practice C eline Blondeau, Beno t G erard SECRET-Project-Team, INRIA, France aaa FSE, February 14th, 2011 C.Blondeau and B.G erard. Multiple differential cryptanalysis 1/ 20


  1. Multiple Differential Cryptanalysis: Theory and Practice C´ eline Blondeau, Benoˆ ıt G´ erard SECRET-Project-Team, INRIA, France aaa FSE, February 14th, 2011 C.Blondeau and B.G´ erard. Multiple differential cryptanalysis 1/ 20

  2. Outline Multiple differential cryptanalysis 1 Data complexity and success probability 2 Attack on PRESENT 3 C.Blondeau and B.G´ erard. Multiple differential cryptanalysis 2/ 20

  3. Outline Multiple differential cryptanalysis 1 Data complexity and success probability 2 Attack on PRESENT 3 C.Blondeau and B.G´ erard. Multiple differential cryptanalysis 3/ 20

  4. Differential cryptanalysis [Biham-Shamir 1990] Differential ✲ ✲ F K r ◦ · · · ◦ F K 1 ✻ ✻ δ 0 δ r ❄ ❄ ✲ ✲ F K r ◦ · · · ◦ F K 1 C.Blondeau and B.G´ erard. Multiple differential cryptanalysis 4/ 20

  5. Differential cryptanalysis [Biham-Shamir 1990] Differential ✲ ✲ F K r ◦ · · · ◦ F K 1 ✻ ✻ δ 0 δ r ❄ ❄ ✲ ✲ F K r ◦ · · · ◦ F K 1 Differential probability Pr [ δ 0 → δ r ] def = Pr X , K [ F r K ( x ) ⊕ F r K ( x ⊕ δ 0 ) = δ r ] . C.Blondeau and B.G´ erard. Multiple differential cryptanalysis 4/ 20

  6. Differential cryptanalysis [Biham-Shamir 1990] Differential cryptanalysis ✲ ✲ ✲ ✲ y x F K r ◦ · · · ◦ F K 1 F K r +1 ? ✻ δ 0 ❄ ✲ ✲ ✲ ✲ x ′ = x ⊕ δ 0 y ′ F K r ◦ · · · ◦ F K 1 F K r +1 ? C.Blondeau and B.G´ erard. Multiple differential cryptanalysis 4/ 20

  7. Differential cryptanalysis [Biham-Shamir 1990] ✬ ✩ Last round attack F − 1 k ❄ ✲ ✲ ✲ ✲ y x F K r ◦ · · · ◦ F K 1 F K r +1 ? ✻ ✻ δ 0 δ r ❄ ❄ ✲ ✲ ✲ ✲ x ′ = x ⊕ δ 0 y ′ F K r ◦ · · · ◦ F K 1 F K r +1 ? ✻ F − 1 ✫ ✪ k C.Blondeau and B.G´ erard. Multiple differential cryptanalysis 4/ 20

  8. Differential cryptanalysis [Biham-Shamir 1990] ✬ ✩ Last round attack F − 1 k ❄ ✲ ✲ ✲ ✲ y x F K r ◦ · · · ◦ F K 1 F K r +1 ? ✻ ✻ δ 0 δ r ❄ ❄ ✲ ✲ ✲ ✲ x ′ = x ⊕ δ 0 y ′ F K r ◦ · · · ◦ F K 1 F K r +1 ? ✻ F − 1 ✫ ✪ k Basic Principle: For each last-round subkey candidate k , compute C ( k ) = # { ( y , y ′ ) such that F − 1 k ( y ) ⊕ F − 1 k ( y ′ ) = δ r } C.Blondeau and B.G´ erard. Multiple differential cryptanalysis 4/ 20

  9. Wrong Key Randomization Hypothesis 1 if F − 1 k ( y ) ⊕ F − 1 k ( y ′ ) = δ r , � C x ( k ) def = 0 otherwise . C ( k ) def � = C x ( k ) . x Hypothesis � p ∗ if k = K r +1 , F − 1 ( y ) ⊕ F − 1 � ( y ′ ) = δ r � Pr X = k k p if k � = K r +1 . Counters C x ( k ) follows a Bernoulli distribution of parameter p ∗ or p . ⇒ C ( k ) follows a Binomial distribution. C.Blondeau and B.G´ erard. Multiple differential cryptanalysis 5/ 20

  10. Previous Works Previous works using many differentials: [Biham Shamir 1990] Collection of differentials with same output difference. [Knudsen 1994] Collection of differentials with same input difference. [Sugita et al. 2000] Same set of output differences for each input difference. C.Blondeau and B.G´ erard. Multiple differential cryptanalysis 6/ 20

  11. Multiple differential cryptanalysis Collection of differentials  δ (1) ( δ (1) 0 , δ (1 , 1) ) ( δ (1) 0 , δ (1 , 2) ( δ (1) 0 , δ (1 , 5)   ) · · · ) 0  r r r        δ (2)   ( δ (2) 0 , δ (2 , 1) ) ( δ (2) 0 , δ (2 , 2) ( δ (2) 0 , δ (2 , 9) ∆ 0 ) · · · ) 0 r r r   δ (3)   ( δ (3) 0 , δ (3 , 1) ) ( δ (3) 0 , δ (3 , 2) ( δ (3) 0 , δ (3 , 7)     ) · · · ) 0  r r r   C.Blondeau and B.G´ erard. Multiple differential cryptanalysis 7/ 20

  12. Multiple differential cryptanalysis Collection of differentials  δ (1) ( δ (1) 0 , δ (1 , 1) ) ( δ (1) 0 , δ (1 , 2) ( δ (1) 0 , δ (1 , 5)   ) · · · ) 0  r r r        δ (2)   ( δ (2) 0 , δ (2 , 1) ) ( δ (2) 0 , δ (2 , 2) ( δ (2) 0 , δ (2 , 9) ∆ 0 ) · · · ) 0 r r r   δ (3)   ( δ (3) 0 , δ (3 , 1) ) ( δ (3) 0 , δ (3 , 2) ( δ (3) 0 , δ (3 , 7)     ) · · · ) 0  r r r   p ( i , j ) : Probability of the differential ( δ ( i ) 0 , δ ( i , j ) ) ∗ r C.Blondeau and B.G´ erard. Multiple differential cryptanalysis 7/ 20

  13. Multiple differential cryptanalysis Collection of differentials  δ (1) ( δ (1) 0 , δ (1 , 1) ) ( δ (1) 0 , δ (1 , 2) ( δ (1) 0 , δ (1 , 5)   ) · · · ) 0  r r r        δ (2)   ( δ (2) 0 , δ (2 , 1) ) ( δ (2) 0 , δ (2 , 2) ( δ (2) 0 , δ (2 , 9) ∆ 0 ) · · · ) 0 r r r   δ (3)   ( δ (3) 0 , δ (3 , 1) ) ( δ (3) 0 , δ (3 , 2) ( δ (3) 0 , δ (3 , 7)     ) · · · ) 0  r r r   p ( i , j ) : Probability of the differential ( δ ( i ) 0 , δ ( i , j ) ) ∗ r ∆ ( i ) r : Set of output differences for the i-th input difference. ∆ 0 : Set of input differences. C.Blondeau and B.G´ erard. Multiple differential cryptanalysis 7/ 20

  14. The counters � E K ∗ ( x ⊕ δ ( i ) ∈ ∆ ( i ) 1 if F − 1 ⊕ F − 1 � � � � E K ∗ ( x ) 0 ) r , C ( i ) x ( k ) def = k k 0 . #∆ 0 C x ( k ) def C ( i ) C ( k ) def � � = x ( k ) and = C x ( k ) . x i =1 C ( i ) x ( k ) follows a Bernoulli distribution of parameter p ( i ) or p ( i ) where ∗ #∆ ( i ) r p ( i ) = #∆ ( i ) p ( i ) p ( i , j ) � · 2 − m . = and ∗ ∗ r j =1 What is the distribution of C ( k )? C.Blondeau and B.G´ erard. Multiple differential cryptanalysis 8/ 20

  15. Outline Multiple differential cryptanalysis 1 Data complexity and success probability 2 Attack on PRESENT 3 C.Blondeau and B.G´ erard. Multiple differential cryptanalysis 9/ 20

  16. Poisson approximation [Le Cam 1960]: Let C ( i ) x ( k ) be some independent Bernoulli random variables with probability p ( i ) . Then C x ( k ) def i =1 C ( i ) = � #∆ 0 x ( k ) follows a distribution close to a Poisson distribution of parameters λ = � #∆ 0 i =1 p ( i ) . #∆ 0 #∆ 0 � � � � p ( i ) � � p ( i ) C ( K r +1 ) approx P ∼ N , C ( k ) approx P ∼ N . ∗ i =0 i =0 The cumulative function G P is not a good estimate for the tails of the distribution of the counters !!! C.Blondeau and B.G´ erard. Multiple differential cryptanalysis 10/ 20

  17. Tails of the cumulative functions i p ( i ) i p ( i ) � � def ∗ p def = = p ∗ and #∆ 0 #∆ 0 Using [Gallager 1968]: G − ( τ, q ) def = Pr [ C ( k ) ≤ τ #∆ 0 N ] � � � q (1 − τ ) 1 ≈ e − #∆ 0 · N · KL ( τ || q ) · ( q − τ ) √ 2 πτ #∆ 0 N + √ 8 πτ #∆ 0 N Where q = p ∗ or p . � � � � 1 − τ KL ( τ || q ) = τ log τ + (1 − τ ) log . q 1 − q C.Blondeau and B.G´ erard. Multiple differential cryptanalysis 11/ 20

  18. Data complexity In [Blondeau-G´ erard-Tillich-2010], the data complexity is computed by approximating one tail of binomial cumulative function with: (1 − p ) √ τ 1 − e − N · KL ( τ || p ) . � ( τ − p ) 2 π N (1 − τ ) C.Blondeau and B.G´ erard. Multiple differential cryptanalysis 12/ 20

  19. Data complexity Here one tail of the cumulative function of the counters is: (1 − p ) √ τ � � 1 G + ( τ, p ) ≈ 1 − e − #∆ 0 N · KL ( τ || p ) √ 8 π #∆ 0 N τ + . � ( τ − p ) 2 π N (1 − τ ) C.Blondeau and B.G´ erard. Multiple differential cryptanalysis 12/ 20

  20. Data complexity Here one tail of the cumulative function of the counters is: (1 − p ) √ τ � � 1 G + ( τ, p ) ≈ 1 − e − #∆ 0 N · KL ( τ || p ) √ 8 π #∆ 0 N τ + . � ( τ − p ) 2 π N (1 − τ ) With similar arguments, the data complexity is N ≈ − 2 · ln(2 √ πℓ 2 − n ) #∆ 0 KL ( p ∗ || p ) . Where: n : Number of bits of the subkey, ℓ : Size of the list of kept candidates. C.Blondeau and B.G´ erard. Multiple differential cryptanalysis 12/ 20

  21. Success probability Success probability: � � 1 − ℓ − 1 � � G − 1 P s ≈ 1 − G ∗ − 1 , 2 n − 2 where G and G ∗ are the cumulative functions of the distri- bution of the random variables. For G and G ∗ we can take: Normal distribution ([Sel¸ cuk2007]) Poisson distribution (First Idea) C.Blondeau and B.G´ erard. Multiple differential cryptanalysis 13/ 20

  22. Experiments on SMALLPRESENT-[8] 1 0.8 0.6 P S 0.4 Poisson Normal 0.2 Experimental 0 28.5 29 29.5 30 30.5 31 log 2 ( N ) C.Blondeau and B.G´ erard. Multiple differential cryptanalysis 14/ 20

  23. Distribution of the counters We use the following estimate for the cumulative function of the C ( k )’s:  � G − ( x , q ) if x < q − 3 · q / N , G ∗ ( x ) = G ( x , p ∗ )  � G ( x , q ) = G + ( x , q ) if x > q + 3 · q / N , G ( x ) = G ( x , p ) G P ( x , q ) otherwise.  G ( τ, q ) τ C.Blondeau and B.G´ erard. Multiple differential cryptanalysis 15/ 20

  24. Experiments on SMALLPRESENT-[8] 1 0.8 0.6 P S 0.4 Ours Poisson 0.2 Normal Experimental 0 28.5 29 29.5 30 30.5 31 log 2 ( N ) C.Blondeau and B.G´ erard. Multiple differential cryptanalysis 16/ 20

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend