local quantum cryptography
play

Local Quantum Cryptography Mark Zhandry (Princeton & NTT - PowerPoint PPT Presentation

Local Quantum Cryptography Mark Zhandry (Princeton & NTT Research) Based on joint work with Ryan Amos, Marios Georgiou, and Aggelos Kiayias Quantum Background Quantum Period


  1. Local ¡Quantum ¡Cryptography Mark ¡Zhandry (Princeton ¡& ¡NTT ¡Research) Based ¡on ¡joint ¡work ¡with ¡Ryan ¡Amos, ¡Marios Georgiou, ¡and ¡Aggelos Kiayias

  2. Quantum ¡Background Quantum ¡Period ¡Finding [Simon’94,Shor’95] Factoring: ¡ N=pq à p, q DLog: ¡ g,g a à a

  3. Quantum ¡Background QKD ¡ [Bennett-­‑Brassard’84] Observer ¡Effect ? k k Observer ¡ Eavesdropping ¡ effect detection

  4. Quantum ¡Background Quantum ¡Money ¡ [Wiesner’70] No ¡Cloning No-­‑cloning

  5. Post-­‑Quantum ¡vs ¡Quantum ¡Crypto Post-­‑Quantum ¡Crypto: Quantum ¡Crypto: Protect ¡classical ¡crypto ¡ Use ¡quantum ¡effects ¡to ¡do ¡ from ¡quantum ¡attacks new ¡things

  6. Emerging ¡Area: ¡Local ¡Quantum ¡Crypto Local ¡Quantum ¡Crypto: Main ¡Question: Is ¡anything ¡ interesting ¡possible? Everyone’s ¡quantum, ¡ communication ¡classical

  7. Prior ¡Work: ¡(Verifiable) ¡Delegation Mahadev’18 ¡x2, ¡Brakerski-­‑Christiano-­‑Mahadev-­‑Vazirani-­‑Vidick’18] x f f(x) ( ¡I ¡Don’t ¡really ¡count ¡multi-­‑device ¡setting: ¡requires ¡entanglement ¡)

  8. Two ¡Motivating ¡Examples Rate-­‑Limited ¡Decryption “Classical” ¡Quantum ¡Money m 1 c 1 c 2 c 3 m 2 m 3 Send ¡quantum ¡money ¡ Can ¡only ¡decrypt ¡single ¡ over ¡classical ¡channels? ciphertext every ¡ T minutes

  9. This ¡Work: ¡Two ¡Questions Q1: ¡ Can ¡quantum ¡keys ¡yield ¡ any ¡interesting ¡crypto? Q2: ¡ Can ¡quantum ¡states ¡be ¡ sent ¡over ¡classical ¡channels?

  10. Disclaimer Strong ¡computational ¡assumptions: • Obfuscation ¡(VBB) • Extractable witness ¡encryption • Recursively ¡composable zk-­‑SNARKs • Post-­‑quantum ¡proofs ¡of ¡(sequential) ¡work

  11. Part ¡1: ¡One-­‑Shot ¡Signatures ¡ and ¡Applications

  12. Tool: ¡One-­‑Shot ¡Signatures Syntax: Security: (pk,m 0 ,m 1 , σ 0 , σ 1 ) s.t. (pk,sk) ß Gen() m 0 ≠ m 1 , σ ß Sign(sk,m) Ver(pk,m 0 , σ 0 )=1, and 0/1 ß Ver(pk,m, σ ) Ver(pk,m 1 , σ 1 )=1

  13. Impossibility ¡of ¡One-­‑Shot ¡Signatures? Attack? • (pk,sk) ß Gen() • σ 0 ß Sign(sk,m 0 ) • σ 1 ß Sign(sk,m 1 ) Idea! What ¡if ¡ sk is ¡“used ¡up” ¡to ¡produce ¡σ 0 ? • Makes ¡no ¡sense ¡classically ¡(rewinding) • But ¡quantumly, ¡maybe?

  14. One-­‑Shot ¡Signatures ¡(Quantum) Syntax: Security: (pk,m 0 ,m 1 , σ 0 , σ 1 ) s.t. sk (pk, ) ß Gen() m 0 ≠ m 1 , σ ß Sign( ,m) sk Ver(pk,m 0 , σ 0 )=1, and 0/1 ß Ver(pk,m, σ ) Ver(pk,m 1 , σ 1 )=1 For ¡now, ¡assume ¡ ∃ OSS. ¡Will ¡construct ¡later

  15. OSS ¡Apps: ¡Burnable ¡Signatures Goal: ¡ Prove ¡that ¡you ¡destroyed ¡your ¡signing ¡key (m, σ ) ✓ sk pk (m’, σ ’) ✓ π pk (m’’, σ ’’) (m’’, σ ’’) ✘ ✘

  16. Solution: ¡Signature ¡Chaining sk 0 pk 0

  17. Solution: ¡Signature ¡Chaining (assume ¡message ¡is ¡part ¡of ¡sig) ✘ sk 0 σ pk0 (m 1 ||pk 1 ) , pk 0 sk 1

  18. Solution: ¡Signature ¡Chaining ✘ sk 0 σ pk0 (m 1 ||pk 1 ) , pk 0 ✘ sk 1 σ pk1 (m 2 ||pk 2 ) , sk 2

  19. Solution: ¡Signature ¡Chaining ✘ sk 0 σ pk0 (m 1 ||pk 1 ) , pk 0 ✘ sk 1 σ pk1 (m 2 ||pk 2 ) , σ pk2 ( ⟂ ) ✘ sk 2 Proof ¡Idea: OSS Valid ¡post-­‑burn ¡ Forked ¡ Forgery signature chain

  20. Caveats |signature| ¡grows ¡with ¡#(messages) Fix: ¡SNARKs |sk| ¡grows ¡with ¡#(messages) Fix: ¡ Recursively ¡Composable SNARKs Stateful Signing Natural ¡for ¡quantum ¡keys ¡ (reading ¡key ¡may ¡disturb ¡it)

  21. OSS ¡Apps: ¡Burnable ¡ Decryption Goal: ¡ Prove ¡that ¡you ¡destroyed ¡your ¡decryption ¡key c sk pk c’ π pk c’’ c’’’ m, m’ m’’, m’’’

  22. Burnable ¡Sigs ¡ à Burnable ¡Decryption Tool: ¡ (Extractable) ¡Witness ¡Encryption c ß WE.Enc( NP statement x , m ) m ß WE.Dec( x, witness ¡ w, c ) Security: c hides ¡ m , ¡unless ¡ you ¡“know” ¡a ¡witness

  23. Burnable ¡Sigs ¡ à Burnable ¡Decryption pk sk r ß Message ¡space c ß WE.Enc( “ r has ¡a ¡sig” ¡ , m) Actually, ¡OSS ¡works ¡directly

  24. OSS ¡Apps: ¡Ordered ¡Signatures Goal: ¡ Only ¡sign ¡messages ¡in ¡increasing ¡order (m’, σ ’) ✓ (m, σ ) ✓ (m’>m, σ ’) ✓ (m<m’, σ ) ✘ Same ¡construction ¡as ¡burnable ¡ sigs, ¡ Ver checks ¡message ¡order

  25. OSS ¡Apps: ¡Ordered ¡Signatures m = (timestamp, document) ( (T, *) , σ ) ✓ ( (T’<T, D) , σ ) If ¡Bob ¡accepts, ¡Alice ¡must ¡have ¡ “known” ¡ D at ¡time ¡ T

  26. OSS ¡Apps: ¡Single-­‑Signer ¡Signatures pk sk 0 sk 1 Honest ¡ ¡sk can ¡sign ¡any ¡number ¡of ¡messages

  27. Ordered ¡Sigs ¡ à Single-­‑Signer ¡Sigs Proof: ¡ Used ¡timestamped ¡version pk sk 0 sk 1 Secret ¡keys ¡must ¡respect ¡ordering, ¡ so ¡can’t ¡sign ¡independently

  28. OSS ¡Apps: ¡Single-­‑Decryptor Encryption pk sk 0 sk 1 Same ¡as ¡single-­‑signer ¡sigs, ¡except ¡ now ¡secret ¡keys ¡are ¡for ¡decrypting

  29. Single-­‑Signer ¡ à Single-­‑Decryptor pk sk r ß Message ¡space c ß WE.Enc( “ r has ¡a ¡sig” ¡ , m) Again, ¡OSS ¡works ¡directly

  30. Single-­‑Decryptor App: ¡Traitor ¡Prevention Recall ¡Traitor ¡Tracing ¡ [ Chor-­‑Fiat-­‑Naor’94] : encrypted ¡ broadcast Goal: ¡ Given ¡pirate ¡decoder, ¡can ¡identify ¡the ¡traitor(s)

  31. Single-­‑Decryptor App: ¡Traitor ¡Prevention Traitor ¡Prevention: encrypted ¡ broadcast Only ¡ N individuals ¡ever ¡capable ¡of ¡decrypting

  32. Single-­‑Decryptor App: ¡Traitor ¡Prevention Traitor ¡Prevention: encrypted ¡ broadcast ✘ Only ¡ N individuals ¡ever ¡capable ¡of ¡decrypting

  33. OSS ¡Apps: ¡Quantum ¡Money* sk = pk, σ pkmint (pk), sk mint sk Verification: ¡check ¡σ pkmint (pk), that ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ can ¡sign ¡random ¡message *Technically ¡not ¡“local” ¡quantum ¡crypto; ¡will ¡revisit ¡later

  34. OSS ¡Apps: ¡Cryptocurrency ¡sans ¡Blockchain Mining ¡entirely ¡local!

  35. OSS ¡ à Cryptocurrency ¡w/o ¡Blockchain Tool: ¡ Proofs ¡of ¡Work ¡(PoW) π ß PoW(ch,T), takes ¡time ¡ T 0/1 ß Ver(ch,T, π ) ch ß $ Time ¡ << T π Ver(ch,T, π )=1

  36. OSS ¡ à Cryptocurrency ¡w/o ¡Blockchain = pk, PoW(pk,T), sk Verification: ¡check ¡that ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡can ¡ sign ¡random ¡message, ¡PoW valid

  37. OSS ¡Apps: ¡Delay ¡Signatures Can ¡only ¡sign ¡single ¡ message ¡every ¡ T minutes Application: • Limit ¡rate ¡(quantum) ¡money ¡is ¡created

  38. OSS ¡ à Delay ¡Signatures Tool: ¡ Proofs ¡of ¡Sequential ¡Work ¡(PoSW) π ß PoSW(ch,T), takes ¡sequential ¡time ¡ T 0/1 ß Ver(ch,T, π ) ch ß $ Sequential ¡ π time ¡ << T Ver(ch,T, π )=1

  39. OSS ¡ à Delay ¡Signatures π 1 =PoSW(pk 0 ,T) ✘ sk 0 σ pk0 (m 1 ||pk 1 || π 1 ) , pk 0 sk 1

  40. OSS ¡ à Delay ¡Signatures π 2 =PoSW( σ pk0 , T) ✘ sk 0 σ pk0 (m 1 ||pk 1 || π 1 ) , pk 0 ✘ sk 1 σ pk1 (m 2 ||pk 2 || π 2 ) , sk 2

  41. OSS ¡Apps: ¡Delay ¡Decryption Can ¡only ¡decrypt ¡single ¡ ciphertext every ¡ T minutes Application: • Tiered ¡broadcast ¡subscriptions

  42. Delay ¡Sigs ¡ à Delay ¡Decryption pk sk r ß Message ¡space c ß WE.Enc( “ r has ¡a ¡sig” ¡ , m)

  43. Part ¡2: ¡Classically ¡Sending ¡ Quantum ¡States

  44. Quantum ¡States ¡over ¡Classical ¡Channels? Rejected ¡Solution: ¡ What ¡if ¡don’t ¡know ¡ classical ¡description? Send ¡classical ¡description ¡of ¡state Rejected ¡Solution: Requires ¡quantum ¡ entanglement Use ¡quantum ¡teleportation No ¡In ¡General: ¡ Could ¡use ¡to ¡create ¡ entanglement ¡via ¡classical ¡channel

  45. Quantum ¡States ¡over ¡Classical ¡Channels? Q2’: ¡ Can ¡any ¡ unclonable state ¡be ¡ sent ¡over ¡a ¡classical ¡channel?

  46. Q2 ¡Rephrased Q2’: ¡ Can ¡any ¡ unclonable state ¡be ¡ sent ¡over ¡a ¡classical ¡channel? No , ¡if ¡single ¡message ¡from ¡Alice ¡to ¡Bob No , ¡if ¡computationally ¡unbounded What ¡if ¡interaction ¡+ ¡computational ¡assumptions?

  47. Signature ¡Delegation ¡with ¡OSS pk 0 sk 0

  48. Signature ¡Delegation ¡with ¡OSS ✘ sk 0 pk 1 σ pk0 (pk 1 ) sk 1 pk 1

Recommend


More recommend