zero knowledge proofs
play

Zero-Knowledge Proofs Lecture 15 Interactive Proofs Interactive - PowerPoint PPT Presentation

Zero-Knowledge Proofs Lecture 15 Interactive Proofs Interactive Proofs Interactive Proofs Prover wants to convince verifier that x has some property Interactive Proofs Prover wants to convince verifier that x has some property i.e. x is in


  1. An Example Graph Isomorphism (G 0 ,G 1 ) in L iff there exists an isomorphism σ such that σ (G 0 )=G 1 G* := π (G 1 ) (random π ) IP protocol: send σ ZK protocol?

  2. An Example Graph Isomorphism (G 0 ,G 1 ) in L iff there exists G* an isomorphism σ such that σ (G 0 )=G 1 G* := π (G 1 ) (random π ) IP protocol: send σ ZK protocol?

  3. An Example Graph Isomorphism (G 0 ,G 1 ) in L iff there exists G* an isomorphism σ such that σ (G 0 )=G 1 G* := π (G 1 ) (random π ) IP protocol: send σ random bit b ZK protocol?

  4. An Example Graph Isomorphism (G 0 ,G 1 ) in L iff there exists G* an isomorphism σ such that σ (G 0 )=G 1 G* := π (G 1 ) (random π ) b IP protocol: send σ random bit b ZK protocol?

  5. An Example Graph Isomorphism (G 0 ,G 1 ) in L iff there exists G* an isomorphism σ such that σ (G 0 )=G 1 G* := π (G 1 ) (random π ) b IP protocol: send σ random bit b if b=1, π * := π ZK protocol? if b=0, π * := π o σ

  6. An Example Graph Isomorphism (G 0 ,G 1 ) in L iff there exists G* an isomorphism σ such that σ (G 0 )=G 1 G* := π (G 1 ) (random π ) b IP protocol: send σ random bit b if b=1, π * := π ZK protocol? if b=0, π * := π o σ π *

  7. An Example Graph Isomorphism (G 0 ,G 1 ) in L iff there exists G* an isomorphism σ such that σ (G 0 )=G 1 G* := π (G 1 ) (random π ) b IP protocol: send σ random bit b if b=1, π * := π ZK protocol? if b=0, π * := π o σ G*= π *(G b )? π *

  8. An Example G* G* := π (G 1 ) (random π ) b random bit b if b=1, π * := π if b=0, π * := π o σ G*= π *(G b )? π *

  9. An Example Why is this convincing? G* G* := π (G 1 ) (random π ) b random bit b if b=1, π * := π if b=0, π * := π o σ G*= π *(G b )? π *

  10. An Example Why is this convincing? If prover can answer both b’s for the same G* then G 0 ~G 1 G* G* := π (G 1 ) (random π ) b random bit b if b=1, π * := π if b=0, π * := π o σ G*= π *(G b )? π *

  11. An Example Why is this convincing? If prover can answer both b’s for the same G* then G 0 ~G 1 G* Otherwise, testing on a random b will leave prover stuck w.p. 1/2 G* := π (G 1 ) (random π ) b random bit b if b=1, π * := π if b=0, π * := π o σ G*= π *(G b )? π *

  12. An Example Why is this convincing? If prover can answer both b’s for the same G* then G 0 ~G 1 G* Otherwise, testing on a random b will leave prover stuck w.p. 1/2 G* := π (G 1 ) Why ZK? (random π ) b random bit b if b=1, π * := π if b=0, π * := π o σ G*= π *(G b )? π *

  13. An Example Why is this convincing? If prover can answer both b’s for the same G* then G 0 ~G 1 G* Otherwise, testing on a random b will leave prover stuck w.p. 1/2 G* := π (G 1 ) Why ZK? (random π ) b random bit Verifier’s view: random b b and π * s.t. G*= π *(G b ) if b=1, π * := π if b=0, π * := π o σ G*= π *(G b )? π *

  14. An Example Why is this convincing? If prover can answer both b’s for the same G* then G 0 ~G 1 G* Otherwise, testing on a random b will leave prover stuck w.p. 1/2 G* := π (G 1 ) Why ZK? (random π ) b random bit Verifier’s view: random b b and π * s.t. G*= π *(G b ) if b=1, π * := π if b=0, π * := π o σ Which he could have G*= π *(G b )? generated by himself (whether G 0 ~G 1 or not) π *

  15. Zero-Knowledge Proofs

  16. Zero-Knowledge Proofs Interactive Proof

  17. Zero-Knowledge Proofs Interactive Proof Complete and Sound

  18. Zero-Knowledge Proofs Interactive Proof Complete and Sound ZK Property:

  19. Zero-Knowledge Proofs Interactive Proof Complete and Sound ZK Property:

  20. Zero-Knowledge Proofs Interactive Proof Complete and Sound ZK Property:

  21. Zero-Knowledge Proofs Interactive Proof Complete and Sound ZK Property: Ah, got it! 42

  22. Zero-Knowledge Proofs Interactive Proof Complete and Sound ZK Property: Ah, got it! 42

  23. Zero-Knowledge Proofs Interactive Proof Complete and Sound ZK Property: Verifier’s view could have been “simulated” Ah, got it! 42

  24. Zero-Knowledge Proofs Interactive Proof Complete and Sound ZK Property: Verifier’s view could have been “simulated” Ah, got it! 42

  25. Zero-Knowledge Proofs Interactive Proof Complete and Sound ZK Property: Verifier’s view could have been “simulated” Ah, got it! 42

  26. Zero-Knowledge Proofs Interactive Proof Complete and Sound ZK Property: Verifier’s view could have been “simulated” L n i x Ah, got it! 42

  27. Zero-Knowledge Proofs Interactive Proof Complete and Sound ZK Property: Ah, got it! Verifier’s view could 42 have been “simulated” L n i x Ah, got it! 42

  28. Zero-Knowledge Proofs Interactive Proof Complete and Sound ZK Property: Ah, got it! Verifier’s view could 42 have been “simulated” L For every adversarial n i x Ah, got it! strategy, there exists 42 a simulation strategy

  29. ZK Property (in other pict’ s) x,w x F R proto proto i’face x Secure (and correct) if: ∀ ∃ s.t. ∀ output of is distributed Env Env identically in REAL IDEAL REAL and IDEAL

  30. ZK Property (in other pict’ s) x,w x F R proto proto i’face x Secure (and correct) if: ∀ ∃ s.t. ∀ output of is distributed Env Env identically in REAL IDEAL REAL and IDEAL

  31. ZK Property (in other pict’ s) x,w x F R proto proto i’face x Secure (and correct) if: ∀ ∃ s.t. ∀ output of is distributed Env Env identically in REAL IDEAL REAL and IDEAL

  32. ZK Property (in other pict’ s) Classical definition uses simulation only for corrupt receiver; x,w x F R proto proto i’face x Secure (and correct) if: ∀ ∃ s.t. ∀ output of is distributed Env Env identically in REAL IDEAL REAL and IDEAL

  33. ZK Property (in other pict’ s) Classical definition uses simulation only for corrupt receiver; and uses only standalone security: Environment gets only a transcript at the end x,w x F R proto proto i’face x Secure (and correct) if: ∀ ∃ s.t. ∀ output of is distributed Env Env identically in REAL IDEAL REAL and IDEAL

  34. SIM ZK x,w x F R proto proto i’face x Secure (and correct) if: ∀ ∃ s.t. ∀ output of is distributed Env Env identically in REAL IDEAL REAL and IDEAL

  35. SIM ZK • SIM-ZK would require simulation also when prover is corrupt x,w x F R proto proto i’face x Secure (and correct) if: ∀ ∃ s.t. ∀ output of is distributed Env Env identically in REAL IDEAL REAL and IDEAL

  36. SIM ZK • SIM-ZK would require simulation also when prover is corrupt • Then simulator is a witness extractor x,w x F R proto proto i’face x Secure (and correct) if: ∀ ∃ s.t. ∀ output of is distributed Env Env identically in REAL IDEAL REAL and IDEAL

  37. SIM ZK • SIM-ZK would require simulation also when prover is corrupt • Then simulator is a witness extractor • Adding this (in standalone setting) makes it a Proof of Knowledge x,w x F R proto proto i’face x Secure (and correct) if: ∀ ∃ s.t. ∀ output of is distributed Env Env identically in REAL IDEAL REAL and IDEAL

  38. Results

  39. Results IP and ZK defined [GMR’85]

  40. Results IP and ZK defined [GMR’85] ZK for all NP languages [GMW’86]

  41. Results IP and ZK defined [GMR’85] ZK for all NP languages [GMW’86] Assuming one-way functions exist

Recommend


More recommend