post quantum cryptanalysis d j bernstein university of
play

Post-quantum cryptanalysis D. J. Bernstein University of Illinois - PDF document

Post-quantum cryptanalysis D. J. Bernstein University of Illinois at Chicago Cryptographic speed What is the fastest public-key encryption system? Or public-key signature system? Cryptographic speed What is the fastest public-key encryption


  1. Post-quantum cryptanalysis D. J. Bernstein University of Illinois at Chicago

  2. Cryptographic speed What is the fastest public-key encryption system? Or public-key signature system?

  3. Cryptographic speed What is the fastest public-key encryption system? Or public-key signature system? RSA-1024 is quite fast.

  4. Cryptographic speed What is the fastest public-key encryption system? Or public-key signature system? RSA-1024 is quite fast. RSA-512 is faster.

  5. Cryptographic speed What is the fastest public-key encryption system? Or public-key signature system? RSA-1024 is quite fast. RSA-512 is faster. RSA-256 is even faster.

  6. Cryptographic speed What is the fastest public-key encryption system? Or public-key signature system? RSA-1024 is quite fast. RSA-512 is faster. RSA-256 is even faster. This question is stupid.

  7. Cryptographic speed What is the fastest public-key encryption system with security level ✕ 2 ❜ ?

  8. Cryptographic speed What is the fastest public-key encryption system with security level ✕ 2 ❜ ? (Plausible-sounding definition: breaking costs ✕ 2 ❜ .)

  9. Cryptographic speed What is the fastest public-key encryption system with security level ✕ 2 ❜ ? (Plausible-sounding definition: breaking with probability 1 costs ✕ 2 ❜ .)

  10. Cryptographic speed What is the fastest public-key encryption system with security level ✕ 2 ❜ ? (Plausible-sounding definition: for each ✎ ❃ 0, breaking with probability ✕ ✎ costs ✕ 2 ❜ ✎ .)

  11. Cryptographic speed What is the fastest public-key encryption system with security level ✕ 2 ❜ ? (Plausible-sounding definition: for each ✎ ❃ 2 � ❜❂ 2 , breaking with probability ✕ ✎ costs ✕ 2 ❜ ✎ .)

  12. � � Cryptographic speed What is the fastest public-key encryption system with security level ✕ 2 ❜ ? How to evaluate candidates: Encryption systems Analyze attack algorithms Systems with security ✕ 2 ❜ Analyze encryption algorithms Fastest systems with security ✕ 2 ❜

  13. Two pre-quantum examples RSA (with small exponent, reasonable padding, etc.): Factoring ♥ costs 2 (lg ♥ ) 1 ❂ 3+ ♦ (1) by the number-field sieve. Conjecture: this is the optimal attack against RSA. Key size: Can take lg ♥ ✷ ❜ 3+ ♦ (1) ensuring 2 (lg ♥ ) 1 ❂ 3+ ♦ (1) ✕ 2 ❜ . Encryption: Fast exp costs (lg ♥ ) 1+ ♦ (1) bit operations. Summary: RSA costs ❜ 3+ ♦ (1) .

  14. ECC (with strong curve/ F q , reasonable padding, etc.): ECDL costs 2 (1 ❂ 2+ ♦ (1)) lg q by Pollard’s rho method. Conjecture: this is the optimal attack against ECC. Can take lg q ✷ (2 + ♦ (1)) ❜ . Encryption: Fast scalar mult costs (lg q ) 2+ ♦ (1) = ❜ 2+ ♦ (1) . Summary: ECC costs ❜ 2+ ♦ (1) . Asymptotically faster than RSA: i.e., more security for same cost. Bonus: also ❜ 2+ ♦ (1) decryption .

  15. These analyses are quite crude. To really understand costs need much more precise analysis and optimization of attack algorithms and encryption algorithms. e.g. R -algebraic complexity of size- ♥ DFT over C , when ♥ is a power of 2: ♥ 1+ ♦ (1) : Gauss FFT.

  16. These analyses are quite crude. To really understand costs need much more precise analysis and optimization of attack algorithms and encryption algorithms. e.g. R -algebraic complexity of size- ♥ DFT over C , when ♥ is a power of 2: ♥ 1+ ♦ (1) : Gauss FFT. ❖ ( ♥ lg ♥ ): Gauss FFT.

  17. These analyses are quite crude. To really understand costs need much more precise analysis and optimization of attack algorithms and encryption algorithms. e.g. R -algebraic complexity of size- ♥ DFT over C , when ♥ is a power of 2: ♥ 1+ ♦ (1) : Gauss FFT. ❖ ( ♥ lg ♥ ): Gauss FFT. (5 + ♦ (1)) ♥ lg ♥ : Gauss FFT.

  18. These analyses are quite crude. To really understand costs need much more precise analysis and optimization of attack algorithms and encryption algorithms. e.g. R -algebraic complexity of size- ♥ DFT over C , when ♥ is a power of 2: ♥ 1+ ♦ (1) : Gauss FFT. ❖ ( ♥ lg ♥ ): Gauss FFT. (5 + ♦ (1)) ♥ lg ♥ : Gauss FFT. (4 + ♦ (1)) ♥ lg ♥ : split-radix FFT.

  19. These analyses are quite crude. To really understand costs need much more precise analysis and optimization of attack algorithms and encryption algorithms. e.g. R -algebraic complexity of size- ♥ DFT over C , when ♥ is a power of 2: ♥ 1+ ♦ (1) : Gauss FFT. ❖ ( ♥ lg ♥ ): Gauss FFT. (5 + ♦ (1)) ♥ lg ♥ : Gauss FFT. (4 + ♦ (1)) ♥ lg ♥ : split-radix FFT. (34 ❂ 9 + ♦ (1)) ♥ lg ♥ : tangent FFT.

  20. Cryptanalysis is slowly moving to a realistic model of computation. A circuit is a 2-dimensional mesh of small parallel gates. Have fast communication between neighboring gates . Try to optimize time ❚ as function of area ❆ . See, e.g., classic area-time theorem from 1981 Brent–Kung. Warning: Naive student model— a=x[i] costs 1, like a=b+c —gives wildly unrealistic algorithm-scalability conclusions.

  21. “Maybe there’s a better attack breaking your ‘secure’ systems. Maybe security costs far more!” This is a familiar risk. This is why the community puts tremendous effort into cryptanalysis: analyzing and optimizing attack algorithms. Results of cryptanalysis: Some systems are killed. Some systems need larger keys but still have competitive cost. Some systems inspire confidence.

  22. Post-quantum cryptography Assume that attacker has a large quantum computer, making qubit operations as cheap as bit operations. (Yes, that’s too extreme. Tweak for more plausibility: maybe 2 ❜ ❂❜ 3 qubit operations are similar to 2 ❜ bit operations.) Consequence of this assumption: Attacker has old algorithm arsenal (ECM, ISD, LLL, XL, F4, F5, ✿ ✿ ✿ ) plus Grover and Shor.

  23. Conventional wisdom: Factoring ♥ costs (lg ♥ ) 2+ ♦ (1) by Shor (in naive model), so RSA is dead. Similarly DSA and ECDSA.

  24. Conventional wisdom: Factoring ♥ costs (lg ♥ ) 2+ ♦ (1) by Shor (in naive model), so RSA is dead. Similarly DSA and ECDSA. More careful RSA evaluation: Can take lg ♥ ✷ 2 (1 ❂ 2+ ♦ (1)) ❜ ensuring (lg ♥ ) 2+ ♦ (1) ✕ 2 ❜ . Can reduce RSA encryption, decryption, key generation to 2 (1 ❂ 2+ ♦ (1)) ❜ bit ops, far below attacker’s cost.

  25. Conventional wisdom: Factoring ♥ costs (lg ♥ ) 2+ ♦ (1) by Shor (in naive model), so RSA is dead. Similarly DSA and ECDSA. More careful RSA evaluation: Can take lg ♥ ✷ 2 (1 ❂ 2+ ♦ (1)) ❜ ensuring (lg ♥ ) 2+ ♦ (1) ✕ 2 ❜ . Can reduce RSA encryption, decryption, key generation to 2 (1 ❂ 2+ ♦ (1)) ❜ bit ops, far below attacker’s cost. ✿ ✿ ✿ but other systems are better! Here are some leading candidates.

  26. Hash-based signatures. Example: 1979 Merkle hash trees. Code-based encryption. Example: 1978 McEliece hidden Goppa codes. Lattice-based encryption. Example: 1998 “NTRU.” Multivariate-quadratic- equations signatures. Example: 1996 Patarin “HFE v � ” public-key signature system. Secret-key cryptography. Example: 1998 Daemen–Rijmen “Rijndael” cipher, aka “AES.”

  27. A hash-based signature system Standardize a 256-bit hash function ❍ . Signer’s public key: 512 strings ② 1 [0] ❀ ② 1 [1] ❀ ✿ ✿ ✿ ❀ ② 256 [0] ❀ ② 256 [1], each 256 bits. Total: 131072 bits. Signature of a message ♠ : 256-bit strings r❀ ① 1 ❀ ✿ ✿ ✿ ❀ ① 256 such that the bits ( ❤ 1 ❀ ✿ ✿ ✿ ❀ ❤ 256 ) of ❍ ( r❀ ♠ ) satisfy ② 1 [ ❤ 1 ] = ❍ ( ① 1 ), ✿ ✿ ✿ , ② 256 [ ❤ 256 ] = ❍ ( ① 256 ).

  28. Signer’s secret key: 512 independent uniform random 256-bit strings ① 1 [0] ❀ ① 1 [1] ❀ ✿ ✿ ✿ ❀ ① 256 [0] ❀ ① 256 [1]. Signer computes ② 1 [0] ❀ ② 1 [1] ❀ ✿ ✿ ✿ ❀ ② 256 [0] ❀ ② 256 [1] as ❍ ( ① 1 [0]) ❀ ❍ ( ① 1 [1]) ❀ ✿ ✿ ✿ ❀ ❍ ( ① 256 [0]) ❀ ❍ ( ① 256 [1]). To sign ♠ : generate uniform random r ; ❍ ( r❀ ♠ ) = ( ❤ 1 ❀ ✿ ✿ ✿ ❀ ❤ 256 ); reveal ( r❀ ① 1 [ ❤ 1 ] ❀ ✿ ✿ ✿ ❀ ① 256 [ ❤ 256 ]); discard remaining ① values; refuse to sign more messages.

  29. This is the “Lamport–Diffie one-time signature system.” How to sign more than one message? Easy answer: “Chaining.” Signer expands ♠ to include a newly generated public key that will sign next message. More advanced answers (Merkle et al.) scale logarithmically with the number of messages signed.

  30. Grover finds ① 1 [0] from ② 1 [0] using ✙ 2 128 qubit ops. Maybe ❍ has some structure allowing faster inversion ✿ ✿ ✿ but most functions don’t seem to have such structures. “SHA-3 competition”: 2008: 191 cryptographers submitted 64 proposals for ❍ . Ongoing: Extensive public review. 2011 status: 5 finalists. 2012: SHA-3 is standardized.

  31. Chaum–van Heijst–Pfitzmann, 1991: ❍ ( ❛❀ ❜ ) = 4 ❛ 9 ❜ mod ♣ . Simple, beautiful, structured. Allows “provable security”: e.g., ❍ collisions imply computing a discrete logarithm, when ♣ is chosen sensibly.

  32. Chaum–van Heijst–Pfitzmann, 1991: ❍ ( ❛❀ ❜ ) = 4 ❛ 9 ❜ mod ♣ . Simple, beautiful, structured. Allows “provable security”: e.g., ❍ collisions imply computing a discrete logarithm, when ♣ is chosen sensibly. But very bad cryptography. Horrible security for its speed. Far worse security record than “unstructured” ❍ designs.

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