a new algorithm for the unbalanced meet in the middle
play

A New Algorithm for the Unbalanced Meet-in-the-Middle Problem Ivica - PowerPoint PPT Presentation

Definitions State-of-the-art New Algorithm Conclusion A New Algorithm for the Unbalanced Meet-in-the-Middle Problem Ivica Nikoli c (joint with Yu Sasaki) NTU, Singapore Ivica Nikoli c (joint with Yu Sasaki) NTU, Singapore A New


  1. Definitions State-of-the-art New Algorithm Conclusion A New Algorithm for the Unbalanced Meet-in-the-Middle Problem Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

  2. Definitions State-of-the-art New Algorithm Conclusion 1 Definitions 2 State-of-the-art 3 New Algorithm 4 Conclusion Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

  3. Definitions State-of-the-art New Algorithm Conclusion Unbalanced Meet-in-the-Middle Example: From pseudo-preimage to preimage attack on SHA-256 Let the compression function be invertible in 2 64 Store 2 96 preimages for the second compression function Generate 2 160 images for the first Produce a collision in the middle H * IV SHA-256 SHA-256 compression compression Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

  4. Definitions State-of-the-art New Algorithm Conclusion MITM � = meeting in the middle Diffie–Hellman introduced MITM to attack Double-DES. There, the two functions were indeed ”meeting in the middle” However, today MITM has a different, more general meaning Example, MITM attacks on AES have nothing to do with ”meeting in the middle”. Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

  5. Definitions State-of-the-art New Algorithm Conclusion MITM = Collision search MITM attack is synonym for collision search So, instead of MITM we can talk about collisions between two functions f ( x ) and g ( y ) g f X Y Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

  6. Definitions State-of-the-art New Algorithm Conclusion Collision types We can differentiate two types of collisions between f and g 1 f , g have range larger than domain. g f X Y 2 f , g have range not larger than domain. g f X Y Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

  7. Definitions State-of-the-art New Algorithm Conclusion Our target: Unbalanced Collisions We deal only with the case 2. Furthermore, to simplify, we focus only on collision search between two n -bit functions f , g : f : { 0 , 1 } n → { 0 , 1 } n g : { 0 , 1 } n → { 0 , 1 } n Unbalanced collisions – g is R times more ”expensive” than f (in the previous example of SHA-256, R = 2 64 ) Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

  8. Definitions State-of-the-art New Algorithm Conclusion 1 Definitions 2 State-of-the-art 3 New Algorithm 4 Conclusion Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

  9. Definitions State-of-the-art New Algorithm Conclusion The balanced case When R = 1 ( f , g have the same cost) then use Floyd’s cycle finding algorithm √ n 2 = it requires time T = 2 N it requires negligible memory Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

  10. Definitions State-of-the-art New Algorithm Conclusion The unbalanced case When R > 1, then use MITM √ � � N N Store R images of g (in time R R = RN ) √ Produce around RN images of f and check for collision √ � N Success because RN = N R √ Time: RN � N Memory: R Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

  11. Definitions State-of-the-art New Algorithm Conclusion The unbalanced case - Tradeoff The standard MITM algorithm allows a tradeoff TM = N , √ where T ≥ RN . Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

  12. Definitions State-of-the-art New Algorithm Conclusion Why the standard MITM algorithm can be bad Standard MITM : Huge jump of memory requirement when R goes beyond 1 Weird: the smaller the R , the larger the memory requirement Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

  13. Definitions State-of-the-art New Algorithm Conclusion 1 Definitions 2 State-of-the-art 3 New Algorithm 4 Conclusion Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

  14. Definitions State-of-the-art New Algorithm Conclusion Ideas New algorithm combines 2 ideas: 1 Unbalanced interleaving 2 van Oorschot-Wiener parallel collision search Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

  15. Definitions State-of-the-art New Algorithm Conclusion Unbalanced interleaving Balanced interleaving Floyd’s algorithm used for collision search of 2 balanced functions selects the used function with equal probability. i.e. it finds a collision for H ( x ) defined as � f ( x ) if σ ( x ) = 0 H ( x ) = g ( x ) if σ ( x ) = 1 σ ( x ) outputs 0 or 1, with equal probability Collisions for H ( x ) is collision between f , g with probability 1 2 = ⇒ repeat the search 2 times Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

  16. Definitions State-of-the-art New Algorithm Conclusion Balanced interleaving - Floyd’s cycle finding algorithm f g Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

  17. Definitions State-of-the-art New Algorithm Conclusion Balanced interleaving - Floyd’s cycle finding algorithm f g Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

  18. Definitions State-of-the-art New Algorithm Conclusion Unbalanced interleaving Unbalanced interleaving Define H ( x ) as � f ( x ) if σ ( x ) = 0 H ( x ) = g ( x ) if σ ( x ) = 1 σ ( x ) outputs 0 around R times more often than 1 Collisions for H ( x ) is collision between f , g with probability 1 R = ⇒ repeat the search R times Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

  19. Definitions State-of-the-art New Algorithm Conclusion Unbalanced interleaving - Floyd’s cycle finding algorithm f g Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

  20. Definitions State-of-the-art New Algorithm Conclusion Unbalanced interleaving - Floyd’s cycle finding algorithm f g Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

  21. Definitions State-of-the-art New Algorithm Conclusion Unbalanced interleaving - Floyd’s cycle finding algorithm f g Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

  22. Definitions State-of-the-art New Algorithm Conclusion van Oorschot-Wiener Parallel Collision Search van Oorschot-Wiener algorithm can be used to find multiple collisions faster than Floyd’s algorithm: Useful when many collisions are required It requires memory Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

  23. Definitions State-of-the-art New Algorithm Conclusion van Oorschot-Wiener Algorithm: Hash Table First, construct a hash table: Take a random point v 1 and produce a chain of values n − m v i = f ( v i − 1 ) , i = 2 , . . . , 2 2 Store ( v 2 , v 1 ) in hash table L n − m 2 Repeat for 2 m different points v f f f f f v 2 n-m . . . 1 2 2 2 f f f f v . . . f v 2 n-m 1 2 . . . m m 2 2 f f f f f v . . . v 2 n-m 1 2 Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

  24. Definitions State-of-the-art New Algorithm Conclusion van Oorschot-Wiener Algorithm: Collision Search 1 Pick a random value w 1 2 Produce w i = f ( w i − 1 ) 3 Check if w i is in L . If not go to 2 4 By backtracking find the colliding values v f f f f f v 2 n-m . . . 1 2 2 2 v f f f f f v 2 n-m . . . 1 2 . . . m m 2 2 f f f f f v . . . v 2 n-m 1 2 f w f 1 Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

  25. Definitions State-of-the-art New Algorithm Conclusion van Oorschot-Wiener Algorithm: Collision Search n + m During construction of L passed 2 values 2 n + m n − m If chain of w i ’s is of length around 2 n / 2 = 2 a collision 2 2 will occur n − m Time complexity of one collision: 2 2 v f f f . . . f f v 2 n-m 1 2 2 2 v f f f . . . f f v 2 n-m 1 2 . . . m m 2 2 v f f f f f v 2 n-m . . . 1 2 f w f 1 Ivica Nikoli´ c (joint with Yu Sasaki) NTU, Singapore A New Algorithm for the Unbalanced Meet-in-the-Middle Problem

Recommend


More recommend