symmetric key cryptography an engineering perspective
play

Symmetric-key Cryptography: an Engineering Perspective Nicky Mouha - PowerPoint PPT Presentation

Symmetric-key Cryptography: an Engineering Perspective Nicky Mouha 1 ESAT/COSIC, KU Leuven and iMinds, Belgium 2 Project-team SECRET, Inria, France ASK 2014 December 19, 2014 1 / 44 Overview Engineering Perspective Design, analysis,


  1. Symmetric-key Cryptography: an Engineering Perspective Nicky Mouha 1 ESAT/COSIC, KU Leuven and iMinds, Belgium 2 Project-team SECRET, Inria, France ASK 2014 — December 19, 2014 1 / 44

  2. Overview Engineering Perspective • Design, analysis, implementation • Basic concepts and techniques 2 / 44

  3. Overview Engineering Perspective • Design, analysis, implementation • Basic concepts and techniques Two Parts • Hash functions • MAC algorithms 2 / 44

  4. Overview Engineering Perspective • Design, analysis, implementation • Basic concepts and techniques Two Parts • Hash functions • MAC algorithms Simpli fi ed View • Small inaccuracies, details missing • Incomplete study: citations missing 2 / 44

  5. Part I: Hash Functions 3 / 44

  6. Hash Function Hash Function h • Generates a short “ fi ngerprint” of a message m Security Requirements • One-way function: h given Y , hard to fi nd m : h ( m ) = Y • Collision resistant function: hard to fi nd m � = m ′ : h ( m ) = h ( m ′ ) h ( m ) • . . . SHA-3 Competition (2008-2012) 4 / 44

  7. Hash Function Hash Function h • Generates a short “ fi ngerprint” of a message m Security Requirements • One-way function: h given Y , hard to fi nd m : h ( m ) = Y • Collision resistant function: hard to fi nd m � = m ′ : h ( m ) = h ( m ′ ) h ( m ) • . . . SHA-3 Competition (2008-2012) 4 / 44

  8. π κ Permutation-Based Hash Functions Hash Functions Based on Permutations • Simpler to design: no key schedule • Block-cipher-based: see later K x y P E C b b b b (Cryptographic) Permutation • Provable security: statistical object (random permutation) • Cryptanalysis: deterministic algorithm (no “distinguishers”) 5 / 44

  9. Hash Function Rate Hash Function Rate α data processed per permutation call (in bits) • α = permutation size (in bits) • Note: various de fi nitions of “rate” exist! 6 / 44

  10. Hash Function Rate Hash Function Rate α data processed per permutation call (in bits) • α = permutation size (in bits) • Note: various de fi nitions of “rate” exist! Ideal Construction • Rate-1 hash function: α = 1 6 / 44

  11. π π π Rate-1 Hash Function: First Attempt Simplest Rate-1 Hash Function m ℓ m 1 m 2 n . . . h ( m ) 0 n n 7 / 44

  12. π π π π π π Rate-1 Hash Function: First Attempt Collision: Correcting Block Attack m ℓ m 1 m 2 n x . . . h ( m ) 0 n n m ℓ ⊕ x ⊕ y m ′ m ′ 1 2 n y . . . h ( m ) 0 n n 8 / 44

  13. π π π Rate-1 Hash Function: Second Attempt Another Rate-1 Hash Function m 1 m 1 m 2 m 2 m ℓ m ℓ n . . . h ( m ) 0 n n 9 / 44

  14. π π π Rate-1 Hash Function: Second Attempt Observation m 1 m 1 m ℓ m ℓ x x n m 1 x m 1 x 0 . . . h ( m ) 0 n n 10 / 44

  15. π π π π π π Rate-1 Hash Function: Second Attempt Collision Attack (Black et al., Crypto ’02) m 1 m 1 m ℓ m ℓ x x n m 1 x m 1 x 0 . . . h ( m ) 0 n n m ℓ m ℓ m ′ m ′ x ′ x ′ 1 1 n m ′ m ′ x ′ x ′ 0 1 1 . . . h ( m ) 0 n n 11 / 44

  16. π Impossibility Result m i n n n n n h i − 1 f 1 f 2 h i Black et al. (Eurocrypt ’05) • Compression function from n -bit permutation • Information-theoretic: f 1 , f 2 can be any function • Generic collision attack: at most n + ⌈ log 2 ( n ) ⌉ queries 12 / 44

  17. Security/E ffi ciency Tradeo ff s mn v n n f 1 π 1 sn g w n n f 2 π 2 n n f 3 π 3 Rogaway-Steinberger (Eurocrypt ’08) • Compression function from k n -bit permutations • Information-theoretic: f i can be any function • Generic collision attack: 2 n [1 − ( m − 0 . 5 s ) /k ] 13 / 44

  18. Security/E ffi ciency Tradeo ff s mn v n n f 1 π 1 sn g w n n f 2 π 2 n n f 3 π 3 Rogaway-Steinberger (Eurocrypt ’08) • Compression function from k = 3 n -bit permutations • Information-theoretic: f i can be any function, m = 2 , s = 1 • Generic collision attack: 2 n [1 − (2 − 0 . 5 · 1) / 3] = 2 n/ 2 14 / 44

  19. ⊕ ⊕ Security/E ffi ciency Tradeo ff s n v 1 n v 2 n n π 1 n w n n π 2 n n π 3 Mennink-Preneel (Crypto ’12) • Compression function from k = 3 n -bit permutations • Constructions with only XORs, fi rst systematic analysis • Optimal collision resistance: 2 n/ 2 15 / 44

  20. π Security/E ffi ciency Tradeo ff s 2 n v n w Why Not One Big Permutation? • 2 n -bit permutation instead of n -bit • Same generic collision attack: 2 n/ 2 • More e ffi cient than three n -bit permutations? 16 / 44

  21. Scaling Law “When the input size of a symmetric-key primitive doubles, the number of operations (roughly) doubles as well”. 17 / 44

  22. Scaling Law “When the input size of a symmetric-key primitive doubles, the number of operations (roughly) doubles as well”. Remarks • Not intuitive: b → b bits: (2 b ) 2 b = 2 b 2 b functions • Not rigorous: based on design choices and attacks • How to count “operations”? 17 / 44

  23. Scaling Law “When the input size of a symmetric-key primitive doubles, the number of operations (roughly) doubles as well”. Remarks • Not intuitive: b → b bits: (2 b ) 2 b = 2 b 2 b functions • Not rigorous: based on design choices and attacks • How to count “operations”? Next Slides: Scaling Law Examples 17 / 44

  24. Scaling Law: Fixed Word Size PHOTON: 4-bit Words • 100/144/196/256-bit permutation: 12 rounds • (288-bit permutation: 12 rounds, but 8-bit word size) 18 / 44

  25. Scaling Law: Fixed Word Size PHOTON: 4-bit Words • 100/144/196/256-bit permutation: 12 rounds • (288-bit permutation: 12 rounds, but 8-bit word size) Rijndael (256-bit key): 8-bit Words • 128/192/256-bit block size: 14 rounds 18 / 44

  26. Scaling Law: Fixed Word Size PHOTON: 4-bit Words • 100/144/196/256-bit permutation: 12 rounds • (288-bit permutation: 12 rounds, but 8-bit word size) Rijndael (256-bit key): 8-bit Words • 128/192/256-bit block size: 14 rounds Skein: 64-bit Words • 256/512-bit block/key size: 72 rounds • 1024-bit block/key size: 80 rounds • Overdesign? Best (non-biclique) attack is on 36 rounds (Yu et al., SAC ’13) 18 / 44

  27. Scaling Law: Variable Word Size BLAKE • 960-to-256-bit: 14 rounds (32-bit words) • 1920-to-512-bit: 16 rounds (64-bit words) 19 / 44

  28. Scaling Law: Variable Word Size BLAKE • 960-to-256-bit: 14 rounds (32-bit words) • 1920-to-512-bit: 16 rounds (64-bit words) SHA-2 • SHA-256: 768-to-256-bit: 64 rounds (32-bit words) • SHA-512: 1536-to-512 bit: 80 rounds (64-bit words) 19 / 44

  29. Scaling Law: Variable Word Size BLAKE • 960-to-256-bit: 14 rounds (32-bit words) • 1920-to-512-bit: 16 rounds (64-bit words) SHA-2 • SHA-256: 768-to-256-bit: 64 rounds (32-bit words) • SHA-512: 1536-to-512 bit: 80 rounds (64-bit words) Keccak • 800-bit permutation: 22 rounds (32-bit words) • 1600-bit permutation: 24 rounds (64-bit words) • Note: zero-sum distinguisher for full-round 1600-bit per- mutation (Boura et al., Duan-Lai) 19 / 44

  30. Scaling Law: Counterexamples? Grøstl • 512-bit permutation: 10 rounds • 1024-bit permutation: 14 rounds 20 / 44

  31. Scaling Law: Counterexamples? Grøstl • 512-bit permutation: 10 rounds • 1024-bit permutation: 14 rounds • Close! If 15 rounds: three small or one big: same cost 20 / 44

  32. Scaling Law: Counterexamples? Grøstl • 512-bit permutation: 10 rounds • 1024-bit permutation: 14 rounds • Close! If 15 rounds: three small or one big: same cost • Best attacks: resp. 9/10 rounds (Jean et al., FSE ’12) 20 / 44

  33. Scaling Law: Counterexamples? Grøstl • 512-bit permutation: 10 rounds • 1024-bit permutation: 14 rounds • Close! If 15 rounds: three small or one big: same cost • Best attacks: resp. 9/10 rounds (Jean et al., FSE ’12) Spongent • b -bit permutation, r = b/ 2 rounds, b/ 4 S-boxes/round: b 2 / 8 S-boxes in total 20 / 44

  34. Scaling Law: Counterexamples? Grøstl • 512-bit permutation: 10 rounds • 1024-bit permutation: 14 rounds • Close! If 15 rounds: three small or one big: same cost • Best attacks: resp. 9/10 rounds (Jean et al., FSE ’12) Spongent • b -bit permutation, r = b/ 2 rounds, b/ 4 S-boxes/round: b 2 / 8 S-boxes in total • Four n -bit or one 2 n -bit permutation: same cost 20 / 44

  35. Scaling Law: Counterexamples? Grøstl • 512-bit permutation: 10 rounds • 1024-bit permutation: 14 rounds • Close! If 15 rounds: three small or one big: same cost • Best attacks: resp. 9/10 rounds (Jean et al., FSE ’12) Spongent • b -bit permutation, r = b/ 2 rounds, b/ 4 S-boxes/round: b 2 / 8 S-boxes in total • Four n -bit or one 2 n -bit permutation: same cost • 272-bit Spongent: 5x lower throughput than 256-bit PHOTON (Bogdanov et al., IEEE Trans. Comp. 2013) 20 / 44

  36. Hash Functions with 2 n/ 2 Collision Resistance Rate-1 Hash Function ( α = 1) • Impossible (Black et al., Eurocrypt ’05) • Generic collision attack: at most n + ⌈ log 2 ( n ) ⌉ 21 / 44

  37. Hash Functions with 2 n/ 2 Collision Resistance Rate-1 Hash Function ( α = 1) • Impossible (Black et al., Eurocrypt ’05) • Generic collision attack: at most n + ⌈ log 2 ( n ) ⌉ Rate-0.5 Hash Function ( α = 0 . 5) • Three n -bit permutations • One 2 n -bit permutation 21 / 44

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