universal composition
play

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

ZK Proofs (cntd.) Universal Composition ZK Proofs (cntd.) Universal 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


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

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

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

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

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

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

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

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

  9. ZK Proofs: What for?

  10. ZK Proofs: What for? Authentication

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

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

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

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

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

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

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

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

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

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

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

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

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

  24. 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... Prove x 2 At each step prove OK is what... in ZK it was done x 2 as prescribed

  25. Does it fit in? x 1 y 1 x 2

  26. Does it fit in? Does the proof stay ZK in the big picture? x 1 y 1 x 2

  27. Does it fit in? Does the proof stay ZK in the big picture? Composition x 1 y 1 x 2

  28. Does it fit in? Does the proof stay ZK in the big picture? Composition x 1 Several issues: auxiliary information from previous runs, concurrency issues, malleability/man-in-the- y 1 middle x 2

  29. Does it fit in? Does the proof stay ZK in the big picture? Composition x 1 Several issues: auxiliary information from previous runs, concurrency issues, malleability/man-in-the- y 1 middle In general, to allow composition more complicated x 2 protocols

  30. Non-Interactive ZK

  31. Non-Interactive ZK Can the prover just give a written proof (no interaction) which any one can verify and can simulate too?

  32. Non-Interactive ZK Can the prover just give a written proof (no interaction) which any one can verify and can simulate too? No soundness: prover can give the simulated proof!

  33. Non-Interactive ZK Can the prover just give a written proof (no interaction) which any one can verify and can simulate too? No soundness: prover can give the simulated proof! NIZK: a trusted “common random string” (CRS) is published, and the proof/verification is w.r.t CRS

  34. Non-Interactive ZK Can the prover just give a written proof (no interaction) which any one can verify and can simulate too? No soundness: prover can give the simulated proof! NIZK: a trusted “common random string” (CRS) is published, and the proof/verification is w.r.t CRS NIZK property: a simulator can simulate the CRS and the proofs

  35. Non-Interactive ZK Can the prover just give a written proof (no interaction) which any one can verify and can simulate too? No soundness: prover can give the simulated proof! NIZK: a trusted “common random string” (CRS) is published, and the proof/verification is w.r.t CRS NIZK property: a simulator can simulate the CRS and the proofs Note: CRS is a part of the proof, but prover is not allowed to choose it (otherwise no soundness)

  36. Non-Interactive ZK Can the prover just give a written proof (no interaction) which any one can verify and can simulate too? No soundness: prover can give the simulated proof! NIZK: a trusted “common random string” (CRS) is published, and the proof/verification is w.r.t CRS NIZK property: a simulator can simulate the CRS and the proofs Note: CRS is a part of the proof, but prover is not allowed to choose it (otherwise no soundness) NIZK schemes exist for all NP languages (using “enhanced” T-OWP)

  37. Non-Interactive ZK Can the prover just give a written proof (no interaction) which any one can verify and can simulate too? No soundness: prover can give the simulated proof! NIZK: a trusted “common random string” (CRS) is published, and the proof/verification is w.r.t CRS NIZK property: a simulator can simulate the CRS and the proofs Note: CRS is a part of the proof, but prover is not allowed to choose it (otherwise no soundness) NIZK schemes exist for all NP languages (using “enhanced” T-OWP) Also can NIZK-ify some ZK protocols in the RO Model (no CRS)

  38. An IND-security Notion

  39. An IND-security Notion ZK (as opposed to SIM-ZK/ZK-PoK) weakens soundness guarantee

  40. An IND-security Notion ZK (as opposed to SIM-ZK/ZK-PoK) weakens soundness guarantee A weakening of ZK property: Witness Indistinguishability (WI)

  41. An IND-security Notion ZK (as opposed to SIM-ZK/ZK-PoK) weakens soundness guarantee A weakening of ZK property: Witness Indistinguishability (WI) Adversarial verifier gives (x,w 0 ,w 1 ) and prover uses (x,w b ) for a random b. Adversary has negligible advantage in guessing b.

  42. An IND-security Notion ZK (as opposed to SIM-ZK/ZK-PoK) weakens soundness guarantee A weakening of ZK property: Witness Indistinguishability (WI) Adversarial verifier gives (x,w 0 ,w 1 ) and prover uses (x,w b ) for a random b. Adversary has negligible advantage in guessing b. A ZK proof is always WI, but not vice-versa

  43. An IND-security Notion ZK (as opposed to SIM-ZK/ZK-PoK) weakens soundness guarantee A weakening of ZK property: Witness Indistinguishability (WI) Adversarial verifier gives (x,w 0 ,w 1 ) and prover uses (x,w b ) for a random b. Adversary has negligible advantage in guessing b. A ZK proof is always WI, but not vice-versa WI Proofs used as components inside larger protocols

  44. An IND-security Notion ZK (as opposed to SIM-ZK/ZK-PoK) weakens soundness guarantee A weakening of ZK property: Witness Indistinguishability (WI) Adversarial verifier gives (x,w 0 ,w 1 ) and prover uses (x,w b ) for a random b. Adversary has negligible advantage in guessing b. A ZK proof is always WI, but not vice-versa WI Proofs used as components inside larger protocols Sometimes with certain other useful properties

  45. An IND-security Notion ZK (as opposed to SIM-ZK/ZK-PoK) weakens soundness guarantee A weakening of ZK property: Witness Indistinguishability (WI) Adversarial verifier gives (x,w 0 ,w 1 ) and prover uses (x,w b ) for a random b. Adversary has negligible advantage in guessing b. A ZK proof is always WI, but not vice-versa WI Proofs used as components inside larger protocols Sometimes with certain other useful properties e.g. WI-PoK, “Sigma protocols”

  46. An IND-security Notion ZK (as opposed to SIM-ZK/ZK-PoK) weakens soundness guarantee A weakening of ZK property: Witness Indistinguishability (WI) Adversarial verifier gives (x,w 0 ,w 1 ) and prover uses (x,w b ) for a random b. Adversary has negligible advantage in guessing b. A ZK proof is always WI, but not vice-versa WI Proofs used as components inside larger protocols Sometimes with certain other useful properties e.g. WI-PoK, “Sigma protocols” Defined in standalone setting, but WI property is preserved under “parallel composition”

  47. Composition

  48. Composition Issues GM1 vs. Hacker Hacker vs. GM2

  49. Composition Issues Multiple executions provide new opportunities for the hacker GM1 vs. Hacker Hacker vs. GM2

  50. Composition Issues Multiple executions provide new opportunities for the hacker GM1 vs. Hacker Hacker vs. GM2 Play the GM’s against each other Will not lose against both!

  51. Composition Issues Multiple executions provide new opportunities for the hacker Person-in-the-middle attack GM1 vs. Hacker Hacker vs. GM2 Play the GM’s against each other Will not lose against both!

  52. Composition Issues Multiple executions provide new opportunities for the hacker Person-in-the-middle attack Simulatability of a single execution doesn’t imply simulation for multiple executions

  53. Composition Issues Multiple executions provide new opportunities for the hacker Person-in-the-middle attack Simulatability of a single execution doesn’t imply simulation for w R1 ,w R2 ,w R3 x 1 in L multiple executions x 2 in L x 3 in L x 4 in L

  54. Composition Issues Multiple executions provide new opportunities for the hacker Person-in-the-middle attack Simulatability of a single execution doesn’t imply simulation for w R1 ,w R2 ,w R3 x 1 in L multiple executions x 2 in L x 3 in L Or when run x 4 in L along with other protocols

Recommend


More recommend