improved differential attacks for echo and gr stl
play

Improved Differential Attacks for ECHO and Grstl (extended version - PowerPoint PPT Presentation

Introduction Results ECHO Grstl Improved Differential Attacks for ECHO and Grstl (extended version available on eprint) Thomas Peyrin CRYPTO 2010 Santa Barbara - November 19, 2010 Introduction Results ECHO Grstl Outline


  1. Introduction Results ECHO Grøstl Improved Differential Attacks for ECHO and Grøstl (extended version available on eprint) Thomas Peyrin CRYPTO 2010 Santa Barbara - November 19, 2010

  2. Introduction Results ECHO Grøstl Outline Introduction ECHO (Benadjila et al.) Grøstl (Gauravaram et al.) Results and future works

  3. Introduction Results ECHO Grøstl Outline Introduction ECHO (Benadjila et al.) Grøstl (Gauravaram et al.) Results and future works

  4. Introduction Results ECHO Grøstl SHA-3 competition The SHA-3 hash function competition: • started in October 2008, 64 submissions • 51 candidates accepted for the first round • 14 semi-finalists selected in 2009 • finalists to be selected end 2010 • winner to be announced in 2012 Among the 14 semi-finalists, one can identify 4 AES -based candidates. For example ECHO and Grøstl .

  5. Introduction Results ECHO Grøstl What is an AES -like permutation ? SubBytes AddConstant ShiftRows MixColumns ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ S S S S S S S S ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ S S S S S S S S ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ S S S S S S S S ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ S S S S S S S S r cells ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ S S S S S S S S ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ S S S S S S S S ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ S S S S S S S S ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ S S S S S S S S c bits r cells MixColumns ◦ ShiftRows ◦ SubBytes ◦ AddConstant ( C ) • AddConstant: in known-key model, just add a round-dependent constant (breaks natural symmetry of the three other functions) • SubBytes: application of a c -bit Sbox (only non-linear part) • ShiftRows: rotate column position of all cells in a row, according to its row position • MixColumns: linear diffusion layer.

  6. Introduction Results ECHO Grøstl Hash function collision attacks In general, there are two basic tools in order to find a collision: the differential path building technique and the freedom degree utilization method. The differential path building techniques (for SHA-1 ): • local collisions • linear perturbation mask • non-linear parts The freedom degree utilization methods (for SHA-1 ): • neutral bits • message modifications • boomerang trails

  7. Introduction Results ECHO Grøstl Hash function collision attacks In general, there are two basic tools in order to find a collision: the differential path building technique and the freedom degree utilization method. The differential path building techniques (for AES -based): • truncated differential paths The freedom degree utilization methods (for AES -based): • rebound attacks • multiple-inbound attacks • start-from-the-middle attacks • super-Sbox attacks In this talk, we will mostly focus on how to find good differential paths for ECHO and Grøstl

  8. Introduction Results ECHO Grøstl The Super-Sbox method In general, the Super-Sbox method seem to be more powerful than classical rebound or start-from-the-middle attacks. It allows to control 3 rounds in the middle (controlled rounds): a valid pair can be found with one operation on average and a minimal cost of 2 r · c . round 0 round 1 round 2 round 3 round 4 round 5 round 6 AC AC AC AC AC AC AC SB SB SB SB SB SB SB ShR ShR ShR ShR ShR ShR ShR MC MC MC MC MC MC The rest is fulfilled probabilistically (uncontrolled rounds). In our example, we have twice a probability 2 − 8 × 3 = 2 − 24 to pay.

  9. Introduction Results ECHO Grøstl Outline Introduction ECHO (Benadjila et al.) Grøstl (Gauravaram et al.) Results and future works

  10. Introduction Results ECHO Grøstl ECHO compression function CV M CV’ P 128-bit cell One round of the internal permutation P

  11. Introduction Results ECHO Grøstl ECHO compression function CV M CV’ P 128-bit cell One round of the internal permutation P

  12. Introduction Results ECHO Grøstl ECHO compression function CV M CV’ P 128-bit cell One round of the internal permutation P

  13. Introduction Results ECHO Grøstl Previous attacks Previous attacks focused on the internal permutation only , because the complexities were already very high. B.SB 0 B.MC 0 B.SB 1 B.MC 1 B.SB 2 B.MC 2 B.SB 3 B.MC 3 B.ShR 0 B.ShR 1 B.ShR 2 B.ShR 3 B.SB 4 B.MC 4 B.SB 5 B.MC 5 B.SB 6 B.MC 6 B.ShR 4 B.ShR 5 B.ShR 6 For this 7-round trail, one can find a valid pair with 2 128 × 3 = 2 384 computations on average ... but with a minimal cost of 2 512 because of the super-Sbox method.

  14. Introduction Results ECHO Grøstl Improved differential paths for ECHO 1 F C D Increase the granularity of the path: Force all intra-word differences to be of the same type B.SB 0 B.MC 0 B.SB 1 B.MC 1 B.SB 2 B.MC 2 B.SB 3 B.MC 3 F F F D D C C C C C D D D D F F D C C C C C D D D D F F D C C C C C D D D D B.ShR 0 B.ShR 1 B.ShR 2 B.ShR 3 F F D C C C C C D D D D B.SB 4 B.MC 4 B.SB 5 B.MC 5 B.SB 6 B.MC 6 D F F F F F F F F F D F F F F F F F D F F F F F F F B.ShR 4 B.ShR 5 B.ShR 6 D F F F F F F F Problem: this path has an average complexity of 2 96 comp. per solution, but we still have to pay the huge 2 512 minimal cost of the Super-Sbox method anyway. Idea: improve the Super-Sbox technique for this particular differential path: 2 32 comp. and memory for one solution in the controlled round.

  15. Introduction Results ECHO Grøstl Results for ECHO computational memory target rounds type complexity requirements 2 64 2 32 3/8 free-start collision ECHO -256 2 96 2 32 3/8 semi-free-start collision* comp. function 2 96 2 32 4.5/8 distinguisher 2 96 2 32 ECHO -512 3/10 (semi)-free-start collision* 2 96 2 32 comp. function 6.5/10 distinguisher 2 64 2 32 ECHO-SP -256 3/8 (semi)-free-start collision 2 64 2 32 comp. function 3/8 distinguisher 2 64 2 32 3/10 free-start collision ECHO-SP -512 2 96 2 32 3/10 semi-free-start collision* comp. function 2 96 2 32 4.5/10 distinguisher * because of a lack of freedom degrees, these attacks requires some randomization on the salt. Thus they are applicable in the chosen-salt setting only

  16. Introduction Results ECHO Grøstl Outline Introduction ECHO (Benadjila et al.) Grøstl (Gauravaram et al.) Results and future works

  17. Introduction Results ECHO Grøstl Grøstl compression function CV P CV’ Q M Round i of permutations P and Q : SubBytes AddConstant ShiftRows MixColumns ⊕ S S S S S S S S i for P S S S S S S S S S S S S S S S S S S S S S S S S 8 bytes S S S S S S S S S S S S S S S S S S S S S S S S i ⊕ 0xff ⊕ S S S S S S S S for Q 8 bytes MixColumns ◦ ShiftRows ◦ SubBytes ◦ AddConstant ( C )

  18. Introduction Results ECHO Grøstl The internal differential attack Problem: all previous attacks build classical differential paths for the permutation P and Q (allows to reach 8/10 rounds) Idea: look at the difference between the two parallel branches It works well on Grøstl because P and Q are almost identical (only the constant addition differs) H P H’ ∆ OUT ∆ IN Q M attacked primitive Let A and B be s.t. A ⊕ B = ∆ IN and Q ( A ) ⊕ P ( B ) = ∆ OUT We have h ( H , M ) = ∆ IN ⊕ ∆ OUT

  19. Introduction Results ECHO Grøstl What can we do with such a pair A and B ? • Distinguishing attack: • assume ∆ IN is maintained in a set of x elements • assume ∆ OUT is maintained in a set of y elements • thus h ( H , M ) is maintained in a set of k = x · y elements • we can distinguish the Grøstl compression function from an ideal one: such pair ( H , M ) can be generically obtained with 2 n / k computations • one can also distinguish the permutations P and Q from ideal permutations (see “limited birthday distinguishers” in [Gilbert Peyrin FSE 2010]) • Collision attack: • because of a lack of freedom degrees, no improvement for the compression function attacks • but we can attack 5/10 rounds of the hash function

  20. Introduction Results ECHO Grøstl An example with 9 rounds: • we have SB 0 ShR 0 MC 0 • x = 2 56 AC 0 • y = 2 128 SB 1 ShR 1 MC 1 • k = 2 184 AC 1 SB 2 ShR 2 MC 2 • thus the generic complexity is AC 2 2 512 − 184 = 2 328 operations SB 3 ShR 3 MC 3 AC 3 • we can find a valid candidate with only 2 80 computations and SB 4 ShR 4 MC 4 AC 4 2 64 memory SB 5 ShR 5 MC 5 AC 5 • the amount of freedom degrees SB 6 ShR 6 MC 6 only allows us to compute one AC 6 such candidate, but SB 7 ShR 7 MC 7 generalization of the internal AC 7 differential attack gives SB 8 ShR 8 MC 8 additional freedom degrees AC 8

  21. Introduction Results ECHO Grøstl Results for Grøstl computational memory target rounds type section complexity requirements 2 80 2 64 Grøstl -256 9/10 distinguisher new 2 192 2 64 internal perm. 10/10 distinguisher new Grøstl -512 2 640 2 64 11/14 distinguisher new internal perm. 2 112 2 64 8/10 distinguisher [Gilbert Peyrin 2009] Grøstl -256 2 80 2 64 9/10 distinguisher* new comp. function 2 192 2 64 10/10 distinguisher* new Grøstl -512 2 640 2 64 11/14 distinguisher* new comp. function 2 64 2 64 Grøstl -256 4/10 collision [Mendel et al. 2010] 2 79 2 64 hash function 5/10 collision new 2 176 2 64 Grøstl -512 5/14 collision [Mendel et al. 2010] 2 177 2 64 hash function 6/14 collision new * for these distinguishers, the amount of available freedom degrees allows us to generate only one valid candidate with good probability

Recommend


More recommend