security of the fiat shamir transformation in the quantum
play

Security of the Fiat-Shamir Transformation in the Quantum Random - PowerPoint PPT Presentation

Security of the Fiat-Shamir Transformation in the Quantum Random Oracle Model Serge Fehr Chris Majenz Chris Schaffner Jelle Don CWI and UvA UvA CWI Leiden University Our Result in Short Let S be a S -protocol, FS[ S ] its Fiat-Shamir


  1. Security of the Fiat-Shamir Transformation in the Quantum Random Oracle Model Serge Fehr Chris Majenz Chris Schaffner Jelle Don CWI and UvA UvA CWI Leiden University

  2. Our Result in Short Let S be a S -protocol, FS[ S ] its Fiat-Shamir transformation. Theorem. If S is secure (against a dishonest prover), then FS[ S ] is secure (against a dishonest prover) in the quantum random oracle model ( Q ROM) . Holds for any (reasonable) notion of security . Proof. Transformation: P attacking FS[ S ] ⇝ P ʹ attacking S .

  3. S -Protocols A S -protocol is an interactive proof of a special form to prove x Î L , i.e., $ w : s.t. ( x , w ) satisfies relation R without revealing w Examples (for L ): L = { x Î Z | $ w : w 2 º x (mod N )} for a composite N . L = {( a , b , c ) Î G 3 | $ w : a = g w , c = b w } for a group G = á g ñ . L = {( G 0 , G 1 ) Î Graph 2 | $ p Î Perm : G 1 = p ( G 0 )} .

  4. I want to prove that S -Protocol for Graph Isomorphism G 0 and G 1 are isomorphic without revealing p G 0 , G 1 VERIFIER V PROVER P H := s ( G 0 ) s ¬ Perm c c ¬ {0,1} t := s ∘ p - c ? H = t ( G c )

  5. Analysis (of Soundness ) Assume that G 0 ≄ G 1 , i.e. $ ⁄ p Î Perm : G 1 = p ( G 0 ) Consider arbitrary (possibly dishonest) prover P Either H ≄ G 0 or H ≄ G 1 (or both) ⇒ P fails to answer c with probability 1/2 . Probability can be “boosted” by repeating the proof: if repeated k times, then GI Proof V accepts false proof H := s ( G 0 ) s ¬ Perm with prob. 1/2 k . c c ¬ {0,1} t := s ∘ p - c ? H = t ( G c )

  6. Analysis (of Soundness ) Can show something stronger ( proof of knowledge ): Assume that G 0 ≄ G 1 , i.e. $ ⁄ p Î Perm : G 1 = p ( G 0 ) If P succeeds with good probability then he must know p . Consider arbitrary (possibly dishonest) prover P What about privacy ( V not learning p )? Either H ≄ G 0 or H ≄ G 1 (or both) V obviously does not obtain p “in the clear”. ⇒ P fails to answer c with probability 1/2 . Can show: V learns no info at all on p ( zero-knowledge ). Probability can be “boosted” by repeating the proof: if repeated k times, then GI Proof V accepts false proof H := s ( G 0 ) s ¬ Perm with prob. 1/2 k . c c ¬ {0,1} t := s ∘ p - c ? H = t ( G c )

  7. The Fiat-Shamir Transformation x x,w VERIFIER V a PROVER P c c ¬ {0,1} n S z V ( x,a,c,z ) ? FS FS[ S ] p = ( , ) a z c := H ( a ) V ( x,a,H ( a ) ,z ) ?

  8. The Fiat-Shamir Transformation x x,w Hope is: if H is a “good” cryptographic hash function that behaves like a random function VERIFIER V a PROVER P then FS[ S ] inherits security properties of S c c ¬ {0,1} n S z V ( x,a,c,z ) ? Works well in practice - cannot be proven. FS FS[ S ] p = ( , ) a z c := H ( a ) V ( x,a,H ( a ) ,z ) ?

  9. The Fiat-Shamir Transformation x x,w Side remark: Hope is: Understanding x as public key and w as secret key , and if H is a “good” cryptographic hash function setting c := H ( m , a ) , a proof p forms a signature on m that behaves like a random function VERIFIER V a PROVER P (can be computed only by someone who knows w ). then FS[ S ] inherits security properties of S c c ¬ {0,1} n S z V ( x,a,c,z ) ? Works well in practice - cannot be proven. FS FS[ S ] p = ( , ) a z c := H ( a ) V ( x,a,H ( a ) ,z ) ?

  10. The Random Oracle Model - in the context here RO x x,w a a H ( a ) H ( a ) VERIFIER V PROVER P p = ( a , z ) c := H ( a ) V ( x,a,H ( a ), z ) Idea: FS[ S ] not let H be fixed function known to P and V but instead let H be random function unknown to P and V accessible (only) via an oracle - the random oracle (RO)

  11. S versus FS[ S ] in the RO Model x,w a c S z PROVER P versus x,w RO a FS[ S ] H ( a ) PROVER P p = ( a , z )

  12. S versus FS[ S ] in the RO Model a c S z PROVER P Dishonest prover P can versus query the RO many times RO FS[ S ] PROVER P p = ( a , z )

  13. Security of FS[ S ] in the (classical) RO Model Classical result: Theorem. If S is secure then FS[ S ] is secure in the ROM . Security is w.r.t. any notion regarding a dishonest prover P : secure Î { comp./stat. sound, comp./stat. proof-of-knowledge } The RO heuristic then suggests security in real life if using a “good enough” cryptographic hash function (Cannot be proven, but works well in practice) Remark: This RO methodology is used throughout crypto (to avoid no-go results, obtain more efficient schemes)

  14. The Proof Transformation: P attacking FS[ S ] in ROM ⇝ P ʹ attacking S a 1 choose i ← {1,.., q } H ( a 1 ) set a ʹ := a i … a ʹ a i c ʹ H ʹ ( a i ) from i -th query on … a q answer with H ʹ where H ʹ ( a q ) H ʹ ( a i ) = H ʹ ( a ʹ ) := c ʹ and H ʹ := H otherwise P z ʹ a,z set z ʹ := z P ʹ Pr[ V ( x,a,H ( a ), z ) ] ³ d

  15. Need to make sure: The Proof Easy to see: a = a i holds with prob. » 1/ q Transformation: P attacking FS[ S ] in ROM ⇝ P ʹ attacking S Pr[ V ( x,a,H ʹ ( a ), z ) ] ³ d a 1 choose i ← {1,.., q } H ( a 1 ) set a ʹ := a i … a ʹ a i c ʹ H ʹ ( a i ) from i -th query on … a q answer with H ʹ where H ʹ ( a q ) H ʹ ( a i ) = H ʹ ( a ʹ ) := c ʹ and H ʹ := H otherwise P z ʹ a,z set z ʹ := z P ʹ Pr[ V ( x,a,H ( a ), z ) ] ³ d Pr[ V ( x,a ʹ ,c ʹ , z ʹ ) ] > d / q ~

  16. Part II: The Quantum Random Oracle Model

  17. FS[ S ] in the Quantum RO Model (QROM) If dishonest P is equipped with a quantum computer in real life: P can compute H in quantum superposition in RO model: must allow P superposition queries Dishonest prover P can query the RO many times and in quantum superposition , i.e. RO ↦ å b a | a ñ å b a | a ñ | H ( a ) ñ a a FS[ S ] PROVER P p = ( a , z )

  18. Bit Question Classical result: Theorem. If S is secure then FS[ S ] is secure in the ROM . (here: security always refers to dishonest prover P ) Is that still true in the Quantum ROM???

  19. What’s the Problem? å b a 1 | a 1 ñ choose i ← {1,.., q } ??? å b a 1 | a 1 ñ | H ( a 1 ) ñ set a ʹ := a i … a ʹ å b a i | a i ñ c ʹ å b a i | a i ñ ( a i ) ñ | H ʹ from i -th query on … Natural approach: answer with H ʹ where å b a q | a q ñ å b a q | a q ñ Measure å b a i | a i ñ ( a q ) ñ | H ʹ H ʹ ( a i ) = H ʹ ( a ʹ ) := c ʹ and to obtain a ʹ H ʹ := H otherwise P z ʹ a,z Problem: set z ʹ := z P ʹ Pr[ V ( x,a,H ( a ), z ) ] ³ d Disturbs the state Unclear how this affects P

  20. Known Results Partial positive results [Unruh15 & 17]: Security of another, less efficient , transformation S is statistically sound ⇒ FS[ S ] computationally sound in the QROM. Negative claims: [DFG13] claim impossibility for proof-of-knowledge [Unruh17] claims necessity of stat-to-comp degradation (both claims have unconvincing reasoning)

  21. Our Result Theorem. If S is secure then FS[ S ] is secure in the Q ROM. Also here: security is w.r.t. secure Î { comp./stat. sound, comp./stat. proof-of-knowledge } or any reasonable notion regarding a dishonest prover P . Small caveat: Our security reduction is less tight : q 2 loss, rather than q . Remark : In independent work, Lie & Zhandry showed the same kind of result, but with a q 9 loss.

  22. Intuition Natural approach: å b a 1 | a 1 ñ choose i ← {1,.., q } å b a 1 | a 1 ñ | H ( a 1 ) ñ set a ʹ := a i obtained by measuring … a ʹ å b a i | a i ñ c ʹ | a i ñ | c ʹ ñ … from i -th query on å b a q | a q ñ answer with H ʹ å b a q | a q ñ ( a q ) ñ | H ʹ P z ʹ a,z set z ʹ := z P ʹ Pr[ V ( x,a,H ( a ), z ) ] ³ d Recall: H ʹ ( a i ) = H ʹ ( a ʹ ) := c ʹ and H ʹ := H otherwise

  23. Intuition Natural approach: å b a 1 | a 1 ñ choose i ← {1,.., q } Problem: May be detected by P ! å b a 1 | a 1 ñ | H ( a 1 ) ñ set a ʹ := a i obtained by measuring … a ʹ å b a i | a i ñ c ʹ | a i ñ | c ʹ ñ … But: such detection destroys info gained on H ! from i -th query on å b a q | a q ñ answer with H ʹ å b a q | a q ñ ( a q ) ñ | H ʹ Thus: should work if i is the query where P learns H ( a ) P z ʹ a,z set z ʹ := z Can this be turned into a rigorous proof ? No! P ʹ Pr[ V ( x,a,H ( a ), z ) ] ³ d Recall: H ʹ ( a i ) = H ʹ ( a ʹ ) := c ʹ and H ʹ := H otherwise

  24. A Small Tweak Our approach: å b a 1 | a 1 ñ choose i ← {1,.., q } å b a 1 | a 1 ñ | H ( a 1 ) ñ set a ʹ := a i obtained by measuring … a ʹ å b a i | a i ñ c ʹ | a i ñ | c ʹ ñ or | a i ñ | H ( a i ) ñ or ( i +1) -st … å b a q | a q ñ from i -th query on answer with H ʹ å b a q | a q ñ ( a q ) ñ | H ʹ P z ʹ a,z set z ʹ := z P ʹ Pr[ V ( x,a,H ( a ), z ) ] ³ d Remark : The uniformly random H can be dealt with by replacing it with a 2 q - wise independent function. Recall: H ʹ ( a i ) = H ʹ ( a ʹ ) := c ʹ and H ʹ := H otherwise

  25. Part III: The Proof

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