basic idea guess and determine
play

Basic Idea Guess And Determine Determine partial internal state by - PowerPoint PPT Presentation

Gain : Practical Key-Recovery Attacks on Round-Reduced PAEQ Dhiman Saha Sourya Kakarla Srinath Mandava Dipanwita Roy Chowdhury Crypto Research Lab, Department of Computer Science and Engineering, IIT Kharagpur, India {


  1. Gain : Practical Key-Recovery Attacks on Round-Reduced PAEQ Dhiman Saha Sourya Kakarla Srinath Mandava Dipanwita Roy Chowdhury Crypto Research Lab, Department of Computer Science and Engineering, IIT Kharagpur, India { dhimans,skakarla,smandava,drc } @cse.iitkgp.ernet.in SPACE 2016 Hyderabad, India

  2. Basic Idea Guess And Determine Determine partial internal state by guessing Use this to reduce state space of some other part ◮ Exploits limited diffusion ◮ Build upon guessing strategy to mount key-recovery or forgery ◮ Our motivation: Use this strategy on Authenticated Encryption Schemes ◮ Demonstrated by Boura et al. in FSE 2016 on π − cipher We look at CAESAR submission PAEQ

  3. Authenticated Encryption Confidentiality + Authenticity Two at the cost of One!

  4. Preliminaries Authenticated Encryption ◮ Conventionally, ◮ Encryption scheme → confidentiality ◮ Message Authentication Code (MAC) → authentication and message integrity Authenticated Cipher Tries to merge both these primitives preferably at the cost of one. ◮ Many attempts to build AE schemes ◮ Serious attacks on OpenSSL and TLS exploiting AE!!! ◮ Lack of proper understanding of the problem ◮ Inspired CAESAR competition

  5. Preliminaries CAESAR CAESAR Competition for Authenticated Encryption: Security, Applicability, and Robustness ◮ A multi-year competition announced in 2014 ◮ Select final portfolio of AE schemes ◮ Possible standardization ◮ Benchmark: AES-GCM ◮ 57 accepted submissions ◮ Round 2 → 30 Candidates ◮ Round 3 → 15 Candidates (On-going) PAEQ was a Round 2 candidate at the time of this work

  6. PAEQ Bio PAEQ ↔ Parallelizable Authenticated Encryption based on Quadrupled AES ◮ Introduced by Biryukov and Khovratovich in ISC 2014 ◮ Along with a new generic mode of operation PPAE ◮ Parallelizable Permutation-based Authenticated Encryption ◮ And an AES based permutation AESQ ◮ Security level up to 128 bits & higher, equal to the key length ◮ Third-party Cryptanalysis ◮ Fault Attack - Saha and Roy Chowdhury (CHES 2016) ◮ Rebound attack - Bagheri et al. (ACISP 2016)

  7. Different PAEQ variants PAEQ | Key | | Nonce | | Tag | Security Extra Features 64 64 64 64-bit paeq-64 Primary paeq-80 80 80 80 80-bit sets paeq-128 128 96 128 128-bit Quick 64 64 512 64-bit paeq-64-t Tag Update Nonce-misuse + 64 128 512 64-bit paeq-64-tnm Tag Update Quick Secondary paeq-128-t 128 128 512 128-bit Tag Update sets Nonce-misuse + 128 256 512 128-bit paeq-128-tnm Tag Update 192 128 128 128-bit paeq-192 160 128 160 160-bit paeq-160 256 128 128 128-bit paeq-256

  8. PAEQ Focus of Current Attack PAEQ | Key | | Nonce | | Tag | Security Extra Features 64 64 64 64-bit paeq-64 Primary 80 80 80 80-bit paeq-80 sets PAEQ 128 96 128 128-bit paeq-128 Quick 64 64 512 64-bit paeq-64-t Tag Update paeq-64 Nonce-misuse + 64 128 512 64-bit paeq-64-tnm Tag Update paeq-80 Quick Secondary 128 128 512 128-bit paeq-128-t Tag Update paeq-128 sets Nonce-misuse + 128 256 512 128-bit paeq-128-tnm Tag Update 192 128 128 128-bit paeq-192 paeq-64-t 160 128 160 160-bit paeq-160 256 128 128 128-bit paeq-256

  9. AESQ The Internal Permutation ◮ Internal state size of 512 bits ◮ Comprises of 4 sub-states of 128 bits each ◮ Sub-states correspond to AES state matrix

  10. Inside AESQ SB SRMC SB SRMC SB SRMC SB SRMC ◮ Composition of 20 round 1 2 3 4 functions SB SRMC SB SRMC SB SRMC SB SRMC 5 6 7 8 ◮ Shuffle operation after every 2 rounds ◮ Basically a Column permutation SB SRMC SB SRMC SB SRMC SB SRMC 9 10 11 12 SB SRMC SB SRMC SB SRMC SB SRMC 13 14 15 16 ◮ Round function almost similar to AES ◮ SubBytes ◮ ShiftRows ◮ MixColumns ◮ AddRoundConstants 4 Rounds of AESQ Fig. Source: PAEQ submission document

  11. PAEQ Encryption

  12. PAEQ Authentication

  13. PAEQ Handling Associated Data

  14. PAEQ Final Tag Generation

  15. PAEQ Focus of This Work

  16. PAEQ Encryption ( i th Branch) Input/Output of f ◮ Look at input of permutation ◮ 3 out of 4 inputs known ◮ Also P i ⊕ C i gives partial output of f Note: We have to deal with partially specified states Our Intuition Can we guess part of f output to recover the internal state?

  17. Handling Partial States Byte-Entropy Notion of Byte-Entropy ( E ) The number of unknown bytes in the state/sub-state ◮ Byte-Entropy ◮ Unchanged under SubBytes ( β ), ShiftRows ( ρ ), AddRoundConstants ( α ) ◮ Might increase under Mixcolumns ( µ )

  18. Some Observations on PAEQ

  19. Observation 1 Look at first two rounds of AESQ

  20. Observation 1 Limited Key Diffusion ◮ Recall: Round function works on individual substates ◮ Propagate permutation inputs forward for 2 Rounds ◮ Key diffusion limited to fourth substate

  21. Observation 2 How far can we go forward from the input?

  22. Propagate forward input of i th branch Observation 2

  23. Observation 2 Apply Shuffle

  24. Observation 2 Apply SubBytes, ShiftRows

  25. Observation 2 Three-Fourth Rule Three-Fourth Rule Three-fourth of every column known before Mix-Columns of Round 3

  26. Observation 3 How far can one invert if one of the substates is known?

  27. Observation 3 Propagate Backward Assumption Attacker has knowledge of single substate after R n

  28. Observation 3 Invert R n , R n − 1 Assumption Attacker has knowledge of single substate after R n

  29. Observation 3 Apply Inverse Shuffle Assumption Attacker has knowledge of single substate after R n

  30. Observation 3 Invert R n − 2 and α n − 3 Assumption Attacker has knowledge of single substate after R n

  31. Observation 3 One-Fourth Inversion Implication Using one substate one can invert up to the state after R n − 3 Mix-Columns One-Fourth Inversion One-Fourth of every column known after inversion

  32. Meet-in-the-middle When do Observations 2 and 3 converge?

  33. Meet-in-the-middle Theorem (Meet-in-the-middle) For n = 6 , the Three-fourth Rule and One-Fourth Inversion strategy converge at the input and output of µ 3 respectively which results in a unique solution for input of µ 3 . ◮ Main result used in all attacks here

  34. Gain − (G)uess (A)nd (In)vert Key Recovery Attacks

  35. Gain Primary Aim How can we make the assumption in One-Fourth Inversion true from the observable part of output? ◮ Recall: At least one substate in output of Round 6 must be known/determined Strategy ◮ Identify which bytes to guess ◮ Combine Guess-and-Invert steps

  36. Note What Attacker Actually Observes

  37. 6 - Round Attack Just Guess and Invert

  38. Guess and Invert Gain - 6 Rounds ◮ Guess substate with minimum Byte-Entropy ◮ Invert and apply MITM Theorem ◮ Recover internal state = ⇒ Key Recovery ◮ Complexity?

  39. 7 - Round Attack Invert last round first

  40. Invert-Guess-Invert Gain - 7 Rounds ◮ Invert last round first ◮ Note: Uniform Byte-Entropy for each PAEQ variant ◮ Next apply 6 round attack ◮ Complexity?

  41. 8 - Round Attack Guess, invert and repeat

  42. Guess-Invert-Guess-Invert Gain - 8 Rounds ◮ Note: Last Shuffle has to be dropped for this to work ◮ Guess first then invert ◮ We get same Byte-Entropy for all PAEQ variants ◮ Next apply 6 round attack ◮ Complexity?

  43. Complexities Gain Gain Complexities PAEQ Variant Security Level 6-Rounds 7-Rounds 8-Rounds 2 24 2 48 64-bit 1 paeq-64 2 16 2 32 2 48 80-bit paeq-80 2 32 2 40 2 48 128-bit paeq-128

  44. Epilogue Gain ◮ Made some interesting observations on PAEQ ◮ Developed a meet-in-the-middle scenario using them ◮ Devised guess-and-determine strategies to satisfy the scenario ◮ Got Key-Recovery for up to 8 out of 20 rounds ◮ Practical complexities ◮ Current strategy cannot be extended beyond 8 rounds ◮ No other key-recovery attacks known News: 15th Aug 2016 PAEQ did not make it to Round 3!!!

  45. Thanks! Queries crypto@dhimans.in

Recommend


More recommend