quantum secure symmetric key cryptography based on hidden
play

Quantum-secure symmetric-key cryptography based on Hidden Shifts - PowerPoint PPT Presentation

Quantum-secure symmetric-key cryptography based on Hidden Shifts Gorjan Alagic Alexander Russell QMATH, Department of Mathematical Sciences Department of Computer Science & Engineering University of Copenhagen University of Connecticut


  1. Quantum-secure symmetric-key cryptography based on Hidden Shifts Gorjan Alagic Alexander Russell QMATH, Department of Mathematical Sciences Department of Computer Science & Engineering University of Copenhagen University of Connecticut arXiv:1610.01187

  2. quantum computation + cryptography Typical post-quantum crypto: quantum classical adversary cryptosystem Classical crypto in quantum world: quantum classical adversary cryptosystem Fully-quantum crypto: quantum adversary cryptosystem

  3. quantum access? Classical functions on a quantum computer Let 𝑔: 0,1 π‘œ β†’ 0,1 𝑛 be some function. Quantum generalizes classical, so we can implement 𝑔 on our quantum computer. How? 𝑦, 𝑧 ↦ (𝑦, 𝑧 βŠ• 𝑔 𝑦 ) 1. [turn into reversible function] 𝑦 𝑧 ↦ 𝑦 |𝑧 βŠ• 𝑔 𝑦 ⟩ 2. [run circuit on your quantum computer] But wait… now we can plug in non-classical inputs: ෍ 𝛽 𝑦𝑧 𝑦 𝑧 ↦ ෍ 𝛽 𝑦𝑧 𝑦 |𝑧 βŠ• 𝑔 𝑦 ⟩ 𝑦,𝑧 𝑦,𝑧 (𝑦, 𝑔 𝑦 ) for random 𝑦 E.g., can prepare uniform superposition of values: ෍ 𝑦 |𝑔 𝑦 ⟩ 𝑦 ??

  4. quantum access? Recall CPA: Some protocol involving an encryption scheme 𝑭𝒐𝒅, 𝑬𝒇𝒅 … 𝑭𝒐𝒅 𝑙 𝐡 𝑭𝒐𝒅 𝑙 β€’ implements the map: 𝑦 ↦ 𝑭𝒐𝒅 𝑙 𝑦 ; classically: β€’ what happens if 𝐡 can run this map quantumly? β€’ then 𝐡 gets quantum oracle : 𝑦 𝑧 ↦ 𝑦 |𝑧 βŠ• 𝑭𝒐𝒅 𝑙 𝑦 ⟩ β€’ … and can run it on non -classical inputs! ෍ 𝑦 |𝑭𝒐𝒅 𝑙 𝑦 ⟩ ?? 𝑦

  5. quantum access: is it realistic? In some settings, β€œquantum oracles” make perfect sense: β€’ public-key encryption : π‘žπ‘™ ↦ encrypt circuit β€’ hash functions : algorithm reversible circuit β€’ exposing code : obfuscated circuit In other settings, this might depend on the model, or the physics: β€’ private- key encryption (can device act coherently? β€œfrozen smart card” [GHS16] ) β€’ authentication and signatures (can user be fooled into signing superposition?) In any case: the model is of theoretical interest!

  6. is *anything* secure in this model? Yes: pseudorandomness still exists! [GGM84] construction yields PRF s {𝑔 𝑙 } which are β€œquantum oracle” – secure [Zha12] . Authentication [BZ13] : β€’ Uniformly random key 𝑙 for 𝑔 𝑙 ; β€’ 𝐍𝐁𝐃 𝑙 𝑛 = 𝑔 𝑙 𝑛 . Encryption [BZ13] : β€’ Uniformly random 𝑙 for 𝑔 𝑙 ; β€’ 𝐅𝐨𝐝 𝑙 𝑛 = 𝑠, 𝑔 𝑙 𝑠 βŠ• 𝑛 . Maybe everything is ok, even in this model?

  7. quantum oracle attacks: an example β€œSimplest block cipher” [EM97, DKS11]: 1. Fix public, random permutation 𝑄: 0,1 π‘œ β†’ 0,1 π‘œ ; 2. Uniformly random key: 𝑙 ∈ 𝑆 0,1 π‘œ ; 3. Encrypt: 𝐹 𝑙 𝑦 = 𝑄 𝑦 βŠ• 𝑙 βŠ• 𝑙 . 𝑙 𝑙 𝑦 𝑄 𝐹 𝑙 (𝑦) Security: 𝐹 𝑙 is strongly pseudorandom (even if adversary has 𝑄 , 𝑄 βˆ’1 , 𝐹 𝑙 , 𝐹 𝑙 βˆ’1 .) β€’ β€’ β‡’ can’t decrypt; β€’ β‡’ can’t forge input/output pairs, etc.

  8. quantum oracle attacks: an example β€œSimplest block cipher” [EM97, DKS11]: 𝑙 𝑙 𝐹 𝑙 𝑦 = 𝑄 𝑦 βŠ• 𝑙 βŠ• 𝑙 . 𝑦 𝑄 𝐹 𝑙 (𝑦) Quantum attack [KM12]: simple predecessor to Shor 1. Form oracle 𝑔 𝑦 = 𝑄 𝑦 βŠ• 𝐹 𝑙 𝑦 ; Given: β€’ oracle access to 𝑔 ; 2. Apply Simon’s algorithm on 𝑔 and output result. β€’ Promise βˆƒπ’ s.t. 𝑔 𝑦 = 𝑔(𝑧) iff 𝑧 = 𝑦 βŠ• 𝒍; Output: Why does it work? 𝑔 𝑦 = 𝑄 𝑦 βŠ• 𝑄 𝑦 βŠ• 𝑙 βŠ• 𝑙 = 𝑔(𝑦 βŠ• 𝑙) β€’ 𝒍 This is Simon’s promise β‡’ attack will output 𝑙 ! Devastating: complete key recovery with only 𝒫(π‘œ) queries, space and time! Simple variants also break: 3-round Feistel [KM10] , Encrypted-CBC-MAC, LRW tweakable ciphers, many CAESAR candidates, … [KLLN16, SS16] .

  9. what is really at the core: hidden shift The Simon attack breaks: Even-Mansour, 3-round Feistel, Encrypted-CBC-MAC, LRW tweakable ciphers, many CAESAR candidates, … β€’ if viewed in a certain way, all the attacks… β€’ first build a pair of shifted functions: 𝑔 𝑦 = 𝑕(𝑦 βŠ• 𝑙) … β€’ … and then apply Simon’s algorithm to 𝑔 𝑦 βŠ• 𝑕(𝑦) . well-known to quantum algorithms community! Hidden Shift Problem (HS). Fix a finite group 𝐻 . Given oracles for injective 𝑔, 𝑕: 𝐻 β†’ 𝑇 and a promise that βˆƒ 𝑑 ∈ 𝐻 such that 𝑔 𝑦 = 𝑕(𝑦 β‹… 𝑑) for all 𝑦 ∈ 𝐻 , output 𝑑 . π’ˆ 𝒉

  10. hidden shift problem Classically: requires exponentially-many queries [ in π‘œ = log( 𝐻 ) ] . π‘œ (Simon). Quantumly: efficiently solvable for 𝐻 = β„€ 2 For most other groups, appears to be hard. Hidden Shift Problem (HS). Fix a finite group 𝐻 . Given oracles for injective 𝑔, 𝑕: 𝐻 β†’ 𝑇 Cyclic groups: (e.g., β„€ 2 π‘œ ) and a promise that βˆƒ 𝑑 ∈ 𝐻 such that 𝑔 𝑦 = 𝑕(𝑦 β‹… 𝑑) for all 𝑦 ∈ 𝐻 , output 𝑑 . π‘œ time [Kup03] . best quantum algorithm takes 2 𝒫 β€’ β€’ only idea we have (β€œ coset sampling”) : if it works, then UniqueSVP ∈ BQP [Reg02] . Symmetric groups: (i.e., 𝑇 π‘œ ) β€’ no subexp algorithms known; β€’ coset sampling unlikely to give even subexp algorithms [MR05, MRS07] .

  11. hidden shift crypto The Simon attack breaks: Even-Mansour, 3-round Feistel, Encrypted-CBC-MAC, LRW tweakable ciphers, many CAESAR candidates, … Generic fix: β€’ select an exponentially-large group (family) 𝐻 (e.g., cyclic β„€ 2 n , dihedral 𝐸 𝑛 , symmetric 𝑇 π‘œ , Lie-type 𝑇𝑀 2 (𝔾 π‘Ÿ ) , … ) β€’ replace input/output spaces with 𝐻 (or a power of 𝐻 ). β€’ replace bitwise XOR operation with group operation on 𝐻 . Sanity check [AH17]: β€’ this does not affect classical security… β€’ … or classical -access security against quantum adversaries.

  12. hidden shift crypto The Simon attack breaks: Even-Mansour, 3-round Feistel, Encrypted-CBC-MAC, LRW tweakable ciphers, many CAESAR candidates, … Generic fix: β€’ select an exponentially-large group (family) 𝐻 (e.g., cyclic β„€ 2 n , dihedral 𝐸 𝑛 , symmetric 𝑇 π‘œ , Lie-type 𝑇𝑀 2 (𝔾 π‘Ÿ ) , … β€’ replace input/output spaces with 𝐻 (or a power of 𝐻 ). β€’ replace bitwise XOR operation with group operation on 𝐻 . Example 1: Even-Mansour. 1. Fix public, random permutation 𝑄: 𝐻 β†’ 𝐻 ; 2. Select key: 𝑙 ∈ 𝑆 𝐻 ; 3. Encrypt: 𝐹 𝑙 𝑦 = 𝑄 𝑦 β‹… 𝑙 β‹… 𝑙 . 𝑙 𝑙 β‹… β‹… 𝑦 𝑄 𝐹 𝑙 (𝑦) β‹… : 𝐻 Γ— 𝐻 β†’ 𝐻

  13. hidden shift crypto The Simon attack breaks: Even-Mansour, 3-round Feistel, Encrypted-CBC-MAC, LRW tweakable ciphers, many CAESAR candidates, … Generic fix: β€’ select an exponentially-large group (family) 𝐻 (e.g., cyclic β„€ 2 n , dihedral 𝐸 𝑛 , symmetric 𝑇 π‘œ , Lie-type 𝑇𝑀 2 (𝔾 π‘Ÿ ) , … β€’ replace input/output spaces with 𝐻 (or a power of 𝐻 ). β€’ replace bitwise XOR operation with group operation on 𝐻 . Example 2: Feistel network. 1. Choose pseudorandom function 𝑆: 0,1 π‘œ Γ— 𝐻 β†’ 𝐻 ; + β‹… R 1 2. Choose keys 𝑙 π‘˜ ∈ 𝑆 0,1 π‘œ , set 𝑆 π‘˜ ≔ 𝑆 𝑙 π‘˜ ; 3. Build pseudorandom permutation on 𝐻 Γ— 𝐻 : + β‹… R 2 + β‹… R 3 β‹… : 𝐻 Γ— 𝐻 β†’ 𝐻

  14. hidden shift crypto The Simon attack breaks: Even-Mansour, 3-round Feistel, Encrypted-CBC-MAC, LRW tweakable ciphers, many CAESAR candidates, … Generic fix: β€’ select an exponentially-large group (family) 𝐻 (e.g., cyclic β„€ 2 n , dihedral 𝐸 𝑛 , symmetric 𝑇 π‘œ , Lie-type 𝑇𝑀 2 (𝔾 π‘Ÿ ) , … β€’ replace input/output spaces with 𝐻 (or a power of 𝐻 ). β€’ replace bitwise XOR operation with group operation on 𝐻 . Example 3: Encrypted-CBC-MAC. 1. Fix keyed, pseudorandom permutation 𝐹: 0,1 π‘œ Γ— 𝐻 β†’ 𝐻 ; 2. Select key pair: 𝑙, 𝑙 1 ∈ 𝑆 0,1 π‘œ ; 3. Decompose message 𝑛 ∈ 𝐻 π‘š into blocks 𝑛 π‘˜ ∈ 𝐻 . … + β‹… + β‹… β‹… 1 E k E k E k E k ’ β‹… : 𝐻 Γ— 𝐻 β†’ 𝐻

  15. main results Is this β€œgeneric fix” a good idea? 1. The Hidden Shift Problem (HS) seems to be a good crypto primitive. Theorem 1. The Hidden Shift Problem is random self-reducible.

  16. main results Is this β€œgeneric fix” a good idea? 1. The Hidden Shift Problem (HS) seems to be a good crypto primitive. β€’ randomized version β€œ RHS ” where 𝑔 is random and 𝑕 is a shift; β€’ QPT = quantum polynomial-time algorithm. Theorem 1. RHS is random self-reducible. That is, if there exists a QPT which solves RHS for a 1/poly-fraction of inputs, then there exists a QPT which solves RHS and HS for all but a negligible fraction of inputs. Proof idea: Use the β€œ1/poly - fraction” QPT to explore the entire space of instances, by: 1. randomizing shifts by pre-composing 𝑔 (but not 𝑕 ) with a random shift; 2. randomize outputs by post-composing both 𝑔 and 𝑕 with a qPRF ; 3. repeat with fresh randomness, and a fresh qPRF key poly-many times; 4. test any outputs of the QPT by random sampling and checking.

  17. main results Is this β€œgeneric fix” a good idea? 1. The Hidden Shift Problem (HS) seems to be a good crypto primitive. Theorem 2. The decision and search version of HS are equivalent.

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