zk proofs cntd composition zk proofs cntd composition
play

ZK Proofs (cntd.) Composition ZK Proofs (cntd.) Composition - PowerPoint PPT Presentation

ZK Proofs (cntd.) Composition ZK Proofs (cntd.) Composition Lecture 16 An Example RECALL An Example RECALL Graph Isomorphism An Example RECALL Graph Isomorphism (G 0 ,G 1 ) in L iff there exists an isomorphism such that (G 0 )=G 1


  1. 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

  2. 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

  3. 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

  4. 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

  5. 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

  6. A ZK Proof for Graph Colorability

  7. A ZK Proof for Graph Colorability G,coloring

  8. A ZK Proof for Graph Colorability Uses a commitment protocol as a subroutine F G,coloring

  9. A ZK Proof for Graph Colorability Uses a commitment protocol as a subroutine F Use random colors G,coloring

  10. A ZK Proof for Graph Colorability Uses a commitment protocol as a subroutine F committed Use random colors G,coloring

  11. A ZK Proof for Graph Colorability Uses a commitment protocol as a subroutine F committed pick random edge Use random edge colors G,coloring

  12. A ZK Proof for Graph Colorability Uses a commitment protocol as a subroutine F committed reveal edge pick random edge Use random edge colors G,coloring

  13. A ZK Proof for Graph Colorability Uses a commitment protocol as a subroutine F committed reveal edge pick random edge Use random edge colors distinct colors? G,coloring

  14. A ZK Proof for Graph Colorability Uses a commitment protocol as a subroutine F committed reveal edge pick random edge Use random edge colors distinct colors? G,coloring OK

  15. A ZK Proof for Graph Colorability Uses a commitment protocol as a subroutine At least 1/m probability of catching a wrong proof F committed reveal edge pick random edge Use random edge colors distinct colors? G,coloring OK

  16. A ZK Proof for Graph Colorability Uses a commitment protocol as a subroutine At least 1/m probability of catching a wrong proof F Soundness amplification: committed Repeat say mk times 
 reveal edge (with independent color pick random edge permutations) Use random edge colors distinct colors? G,coloring OK

  17. A Commitment Protocol

  18. A Commitment Protocol Using a OWP f and a hardcore predicate for it B

  19. A Commitment Protocol Using a OWP f and a hardcore predicate for it B Satisfies only classical (IND) security, in terms of hiding and binding

  20. A Commitment Protocol Using a OWP f and a hardcore predicate for it B Satisfies only classical (IND) security, in terms of hiding and binding b

  21. A Commitment Protocol Using a OWP f and a hardcore predicate for it B Satisfies only classical (IND) security, in terms of hiding and binding random x b

  22. A Commitment Protocol Using a OWP f and a hardcore predicate for it B Satisfies only classical (IND) security, in terms of hiding and binding random x f(x), b ⊕ B(x) b

  23. A Commitment Protocol Using a OWP f and a hardcore predicate for it B Satisfies only classical (IND) security, in terms of hiding and binding random x f(x), b ⊕ B(x) committed b

  24. A Commitment Protocol Using a OWP f and a hardcore predicate for it B Satisfies only classical (IND) security, in terms of hiding and binding random x f(x), b ⊕ B(x) committed b

  25. A Commitment Protocol Using a OWP f and a hardcore predicate for it B Satisfies only classical (IND) security, in terms of hiding and binding random x f(x), b ⊕ B(x) committed b reveal

  26. A Commitment Protocol Using a OWP f and a hardcore predicate for it B Satisfies only classical (IND) security, in terms of hiding and binding random x f(x), b ⊕ B(x) committed x,b b reveal

  27. A Commitment Protocol Using a OWP f and a hardcore predicate for it B Satisfies only classical (IND) security, in terms of hiding and binding random x f(x), b ⊕ B(x) committed x,b consistent? b reveal

  28. A Commitment Protocol Using a OWP f and a hardcore predicate for it B Satisfies only classical (IND) security, in terms of hiding and binding random x f(x), b ⊕ B(x) committed x,b consistent? b reveal b

  29. A Commitment Protocol Using a OWP f and a hardcore predicate for it B Satisfies only classical (IND) security, in terms of hiding and binding Perfectly binding because 
 f is a permutation random x f(x), b ⊕ B(x) committed x,b consistent? b reveal b

  30. A Commitment Protocol Using a OWP f and a hardcore predicate for it B Satisfies only classical (IND) security, in terms of hiding and binding Perfectly binding because 
 f is a permutation random x f(x), b ⊕ B(x) committed Hiding because B(x) is pseudorandom given x,b consistent? f(x) b reveal b

  31. ZK Results

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

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

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

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

  36. ZK Results IP and ZK defined [GMR’85] ZK for all NP languages [GMW’86] Assuming one-way functions exist ZK for all of IP [BGGHKMR’88] Everything that can be proven can be proven in zero- knowledge! (Assuming OWF)

  37. ZK Results IP and ZK defined [GMR’85] ZK for all NP languages [GMW’86] Assuming one-way functions exist ZK for all of IP [BGGHKMR’88] Everything that can be proven can be proven in zero- knowledge! (Assuming OWF) Variants (known for NP)

  38. ZK Results IP and ZK defined [GMR’85] ZK for all NP languages [GMW’86] Assuming one-way functions exist ZK for all of IP [BGGHKMR’88] Everything that can be proven can be proven in zero- knowledge! (Assuming OWF) Variants (known for NP) ZKPoK, Statistical ZK Arguments, Non-Interactive ZK (using a common random string), Witness-Indistinguishable Proofs, …

  39. ZK Proofs: What for?

  40. ZK Proofs: What for? Authentication

  41. ZK Proofs: What for? Authentication Using ZK Proof of Knowledge

  42. ZK Proofs: What for? Authentication Using ZK Proof of Knowledge Canonical use: As a tool in larger protocols

  43. ZK Proofs: What for? Authentication Using ZK Proof of Knowledge Canonical use: As a tool in larger protocols To enforce “honest behavior” in protocols

  44. ZK Proofs: What for? Authentication Using ZK Proof of Knowledge Canonical use: As a tool in larger protocols To enforce “honest behavior” in protocols At each step prove in ZK it was done as prescribed

  45. ZK Proofs: What for? Authentication Using ZK Proof of Knowledge Canonical use: As a tool x 1 in larger protocols To enforce “honest behavior” in protocols At each step prove in ZK it was done as prescribed

  46. ZK Proofs: What for? Authentication Using ZK Proof of Knowledge Canonical use: As a tool x 1 in larger protocols Prove to me x 1 is what you should To enforce “honest have sent me now behavior” in protocols At each step prove in ZK it was done as prescribed

  47. ZK Proofs: What for? Authentication Using ZK Proof of Knowledge Canonical use: As a tool x 1 in larger protocols Prove to me x 1 is what you should To enforce “honest have sent me now behavior” in protocols At each step prove in ZK it was done as prescribed

  48. ZK Proofs: What for? Authentication Using ZK Proof of Knowledge Canonical use: As a tool x 1 in larger protocols Prove to me x 1 is what you should To enforce “honest have sent me now behavior” in OK protocols At each step prove in ZK it was done as prescribed

  49. ZK Proofs: What for? Authentication Using ZK Proof of Knowledge Canonical use: As a tool x 1 in larger protocols Prove to me x 1 is what you should To enforce “honest have sent me now y 1 behavior” in OK protocols At each step prove in ZK it was done as prescribed

  50. ZK Proofs: What for? Authentication Using ZK Proof of Knowledge Canonical use: As a tool x 1 in larger protocols Prove to me x 1 is what you should To enforce “honest have sent me now y 1 behavior” in OK protocols Prove y 1 is what... At each step prove in ZK it was done as prescribed

  51. ZK Proofs: What for? Authentication Using ZK Proof of Knowledge Canonical use: As a tool x 1 in larger protocols Prove to me x 1 is what you should To enforce “honest have sent me now y 1 behavior” in OK protocols Prove y 1 is what... At each step prove in ZK it was done as prescribed

  52. ZK Proofs: What for? Authentication Using ZK Proof of Knowledge Canonical use: As a tool x 1 in larger protocols Prove to me x 1 is what you should To enforce “honest have sent me now y 1 behavior” in OK protocols Prove y 1 is what... At each step prove OK in ZK it was done as prescribed

  53. ZK Proofs: What for? Authentication Using ZK Proof of Knowledge Canonical use: As a tool x 1 in larger protocols Prove to me x 1 is what you should To enforce “honest have sent me now y 1 behavior” in OK protocols Prove y 1 is what... At each step prove OK in ZK it was done x 2 as prescribed

Recommend


More recommend