efficient algorithms for differential properties of
play

Efficient Algorithms for Differential Properties of Addition Helger - PowerPoint PPT Presentation

Efficient Algorithms for Differential Properties of Addition Helger Lipmaa Helsinki University of Technology (Finland) helger@tml.hut.fi Shiho Moriai NTT Laboratories (Japan) shiho@isl.ntt.co.jp FSE 2001, 04.04.2001 Efficient Algorithms for


  1. Efficient Algorithms for Differential Properties of Addition Helger Lipmaa Helsinki University of Technology (Finland) helger@tml.hut.fi Shiho Moriai NTT Laboratories (Japan) shiho@isl.ntt.co.jp FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 1

  2. Outline • Motivations • Our contributions • RAM model • Algorithm for differential probability of addition • Conclusion FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 2

  3. Differential Cryptanalysis • DC: one of best known general attacks against block ciphers • Security against DC is one of main criteria for new ciphers • Known how to construct DC-secure ciphers • . . . but this knowledge is rather limited • Reason: hard to find good differentials in “real” ciphers FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 3

  4. Motivations: Differential Properties of Addition • Bottom-up approach: ⋆ Start from the primitive cornerstones ⋆ Work your way up to the whole cipher • It is hard to DC-analyse + w.r.t. ⊕ • Some block ciphers use this by intermingling ⊕ and + to create “con- fusion” both in Shannon’s and layman’s sense • Makes the ciphers harder to analyse — but does it make them more secure? FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 4

  5. Our Goals • To throughoutly analyse + w.r.t. ⊕ • Hopefully results in a bottom-up approach to give us ⋆ Tighter proofs of security of some ciphers ⋆ Better attacks against others ⋆ New ciphers? FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 5

  6. What is a Bottom-Up Approach? (1) X 1 X 1 X 1 X 1 1 2 3 4 ⊙ + + ⊙ Z 1 Z 1 Z 1 Z 1 1 2 2 4 ⊕ ⊕ ⊙ + Z 1 5 + ⊙ Z 1 6 ⊕ ⊕ ⊕ ⊕ X 2 X 2 X 2 X 2 1 2 3 4 FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 6

  7. What is a Bottom-Up Approach? (2) X 1 X 1 X 1 X 1 1 2 3 4 ⊙ + + ⊙ Z 1 Z 1 Z 1 Z 1 1 2 2 4 ⊕ ⊕ ⊙ + Z 1 5 + ⊙ Z 1 6 ⊕ ⊕ ⊕ ⊕ X 2 X 2 X 2 X 2 1 2 3 4 FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 7

  8. Some differential properties of addition DP + ( α, β �→ γ ) def := P x,y [( x + y ) ⊕ (( x ⊕ α )+( y ⊕ β )) = γ ] FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 8

  9. Some differential properties of addition DP + ( α, β �→ γ ) def := P x,y [( x + y ) ⊕ (( x ⊕ α )+( y ⊕ β )) = γ ] Let δ = ( α, β �→ γ ) . Equivalently, := ♯ { x, y ∈ { 0 , 1 } n : ( x + y ) ⊕ (( x ⊕ α )+( y ⊕ β )) = γ } DP + ( δ ) def . 2 2 n ⇒ Trivial algorithm works in time 2 2 n . FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 9

  10. Some differential properties of addition DP + ( α, β �→ γ ) def := P x,y [( x + y ) ⊕ (( x ⊕ α )+( y ⊕ β )) = γ ] max ( α, β ) def DP + DP + ( α, β �→ γ ) := max γ def opt + ( α, β ) := γ in previous formula FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 10

  11. Some differential properties of addition DP + ( α, β �→ γ ) def := P x,y [( x + y ) ⊕ (( x ⊕ α )+( y ⊕ β )) = γ ] max ( α, β ) def DP + DP + ( α, β �→ γ ) := max γ def opt + ( α, β ) := γ in previous formula def DP + β,γ DP + ( α, β �→ γ ) 2max ( α ) := max def opt + ( α ) :=( β, γ ) in previous formula FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 11

  12. More differential properties of addition def := δ �→ DP + ( δ ) , then find If δ = ( α, β �→ γ ) and X  k = 0 , density of impossible differentials ,  P [ X = k ] = k � = 0 , in general .  and def � E [ X ] := X · P [ X = k ] k var [ X ] def := E [ X 2 ] − E [ X ] 2 . More generally, what is the distribution of X ? Our contributions : We give efficient answers to all these questions! FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 12

  13. The RAM model • We are interested in the software speed ⋆ Use the unit-cost RAM model • Minimal set of unit-cost operations: Boolean operations, addition, left and right shifts, equality tests, (conditional) jumps • This model is surprisingly powerful! FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 13

  14. Example: Hamming weight Hamming weight: given x = � x i 2 i , compute � x i . Traditional algorithm of Θ( n ) complexity: w = 0; for(i = 0; i < n; i++) if(word & (1<<i)) w++; FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 14

  15. Example: Hamming weight Hamming weight: given x = � x i 2 i , compute � x i . A RAM-model algorithm of Θ(log n ) complexity (for n = 32 ): w = x; w = (w & 0x55555555) + ((w >> 1) & 0x55555555); w = (w & 0x33333333) + ((w >> 2) & 0x33333333); w = (w & 0x0f0f0f0f) + ((w >> 4) & 0x0f0f0f0f); w = (w & 0x00ff00ff) + ((w >> 8) & 0x00ff00ff); w = (w & 0x0000ffff) + ((w >> 16) & 0x0000ffff); FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 15

  16. Algorithm for DP + ( δ ) def Definition. DP + ( α, β �→ γ ) := P x,y [( x + y ) ⊕ (( x ⊕ α )+( y ⊕ β )) = γ ] . Let eq ( α, β, γ ) i = 1 iff α i = β i = γ i . Theorem . We say δ = ( α, β �→ γ ) is “good” if eq ( α ≪ 1 , β ≪ 1 , γ ≪ 1) ∧ ( α ⊕ β ⊕ γ ⊕ ( β ≪ 1)) = 0 . Then  0 , δ is not “good”,  DP + ( δ ) = 2 − w h ( ¬ eq ( α,β,γ ) ∧ (2 n − 1 − 1)) , otherwise .  DP + ( δ ) can be computed in time Θ(log n ) for any δ . Hence, DP + is either 0 or 2 − k for 0 ≤ k < n − 1 . FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 16

  17. DP + ( δ ) : How it works? • Replace + with a XOR with carry, x + y = x ⊕ y ⊕ carry ( x, y ) . Then DP + ( δ ) = P x,y [ carry ( x, y ) ⊕ carry ( x ⊕ α, y ⊕ β ) = α ⊕ β ⊕ γ ] � �� � � �� � c c ∗ • Then DP + ( δ ) = � n − 1 i =0 P x,y [ c i ⊕ c ∗ i = α i ⊕ β i ⊕ γ i ] • Compute the multiplicand probabilities • We prove that if δ is “good” then P x,y [ c i ⊕ c ∗ i = α i ⊕ β i ⊕ γ i ] = 1 if α i = β i = γ i or = 1 / 2 otherwise FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 17

  18. “Possibility” of DP + ( δ ) : Pictorially 0 1 0 1 0 0 1 α 1 1 0 0 0 0 1 β 0 1 1 1 0 0 0 γ FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 18

  19. “Possibility” of DP + ( δ ) : Pictorially 0 1 0 1 0 0 1 α 1 1 0 0 0 0 1 β 0 1 1 1 0 0 0 γ ⊕ ? = 0 The LSB of carry must be 0 FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 19

  20. “Possibility” of DP + ( δ ) : Pictorially 0 1 0 1 0 0 1 α 1 1 0 0 0 0 1 β 0 1 1 1 0 0 0 γ = = = 1 0 0 Find all columns with equal bits. FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 20

  21. “Possibility” of DP + ( δ ) : Pictorially 0 1 0 1 0 0 1 α 1 1 0 0 0 0 1 β 0 1 1 1 0 0 0 γ ⊕ ⊕ ⊕ 1 0 0 = = = 1 0 0 Compute ⊕ of previous columns and compare. FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 21

  22. DP + ( δ ) : Pictorially 0 1 0 1 0 0 1 α 1 1 0 0 0 0 1 β 0 1 1 1 0 0 0 γ � = � = � = w h = 3 • Establish that δ is possible • w h = ♯ { columns that have both 0 and 1 entries } • Return 2 − w h FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 22

  23. Statistical properties of DP + (1/2) P δ [ DP + ( δ ) � = 0] = P δ [ δ is not “good” ] = P δ [ eq ( α ≪ 1 , β ≪ 1 , γ ≪ 1) ∧ ( . . . ) = 0] . . . = 1 2 · (7 / 8) n − 1 . Other properties: similar approach (calculate the probability that the algo- rithm for DP + does “something”) FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 23

  24. Statistical properties of DP + (2/2) • X : δ �→ DP + ( δ ) is a sum of two distributions, X = X 0 + X 1 • X 0 is defined on impossible differentials. X 1 is defined on possible differentials • X 0 is a constant distribution, − log 2 X 1 is a binomial distribution with p = 6 / 7 • It is now easy to calculate probabilities that for random δ , DP + ( δ ) ≥ 2 − k for any k . But how to find suitable differentials? FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 24

  25. Maximum Differential Probability There exists a Θ(log n ) -time algorithm that finds a γ , s.t. Theorem . DP + ( α, β �→ γ ) = DP + max ( α, β ) . Improves upon the trivial algorithm of Θ(2 3 n ) Theorem . There exists a Θ(log n ) -time algorithm that finds a ( β, γ ) s.t. DP + ( α, β �→ γ ) = DP + 2max ( α ) . Improves upon the trivial algorithm of Θ(2 4 n ) Both algorithm use complicated RAM-model algorithms that are interesting by themselves FSE 2001, 04.04.2001 Efficient Algorithms for Differential Properties of Addition 25

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