Slide 1 Vitaly Shmatikov CS 380S Introduction to Zero-Knowledge.

Slides:



Advertisements
Similar presentations
A Verifiable Secret Shuffle of Homomorphic Encryptions Jens Groth UCLA On ePrint archive:
Advertisements

On the Amortized Complexity of Zero-Knowledge Proofs Ronald Cramer, CWI Ivan Damgård, Århus University.
Zero Knowledge Proofs(2) Suzanne van Wijk & Maaike Zwart
SECURITY AND VERIFICATION
Foundations of Cryptography Lecture 10 Lecturer: Moni Naor.
Vote privacy: models and cryptographic underpinnings Bogdan Warinschi University of Bristol 1.
Efficient Zero-Knowledge Proof Systems Jens Groth University College London.
Lecture 15 Zero-Knowledge Techniques. Peggy: “I know the password to the Federal Reserve System computer, the ingredients in McDonald’s secret sauce,
Rennes, 24/10/2014 Cristina Onete CIDRE/ INRIA Sigma Protocols and (Non-Interactive) Zero Knowledge.
Computational Security. Overview Goal: Obtain computational security against an active adversary. Hope: under a reasonable cryptographic assumption, obtain.
Optimistic Concurrent Zero-Knowledge Alon Rosen IDC Herzliya abhi shelat University of Virginia.
Protocols to do seemingly impossible 1 CHAPTER 10: Protocols to do seemingly impossible A protocol is an algorithm two (or more) parties have to follow.
Efficient Zero-Knowledge Proof Systems Jens Groth University College London.
Zero-Knowledge Proofs J.W. Pope M.S. – Mathematics May 2004.
May, 2011 Algorithmic Game Theory Workshop May, 2011 Algorithmic Game Theory Workshop Michael O. Rabin Harvard University Hebrew University Algorithmic.
CS426Fall 2010/Lecture 351 Computer Security CS 426 Lecture 35 Commitment & Zero Knowledge Proofs.
1 Slides by Roel Apfelbaum & Eti Ezra. Enhanced by Amit Kagan. Adapted from Oded Goldreich’s course lecture notes.
1 Adapted from Oded Goldreich’s course lecture notes.
Zero Knowledge Proofs By Subha Rajagopalan Jaisheela Kandagal.
Co-operative Private Equality Test(CPET) Ronghua Li and Chuan-Kun Wu (received June 21, 2005; revised and accepted July 4, 2005) International Journal.
Zero-Knowledge Proof System Slides by Ouzy Hadad, Yair Gazelle & Gil Ben-Artzi Adapted from Ely Porat course lecture notes.
Lecturer: Moni Naor Foundations of Cryptography Lecture 12: Commitment and Zero-Knowledge.
Electronic Voting Schemes and Other stuff. Requirements Only eligible voters can vote (once only) No one can tell how voter voted Publish who voted (?)
1 Zaps and Apps Cynthia Dwork Microsoft Research Moni Naor Weizmann Institute of Science.
Introduction to Modern Cryptography, Lecture 7/6/07 Zero Knowledge and Applications.
K-Anonymous Message Transmission Luis von Ahn Andrew Bortz Nick Hopper The Aladdin Center Carnegie Mellon University.
Cramer-Shoup is Plaintext Aware in the Standard Model Alexander W. Dent Information Security Group Royal Holloway, University of London.
Slide 1 Vitaly Shmatikov CS 380S Oblivious Transfer and Secure Multi-Party Computation With Malicious Parties.
Lecture 12 Commitment Schemes and Zero-Knowledge Protocols Stefan Dziembowski University of Rome La Sapienza critto09.googlepages.com.
Quadratic Residuosity and Two Distinct Prime Factor ZK Protocols By Stephen Hall.
How to play ANY mental game
Cryptography Lecture 8 Stefan Dziembowski
(Multimedia University) Ji-Jian Chin Swee-Huay Heng Bok-Min Goi
Impossibility and Feasibility Results for Zero Knowledge with Public Keys Joël Alwen Tech. Univ. Vienna AUSTRIA Giuseppe Persiano Univ. Salerno ITALY Ivan.
1 SC700 A2 Internet Information Protocols 3/20/2001 Paper Presentation by J. Chu How to Explain Zero-Knowledge Protocols to Your Children.
Slide 1 Vitaly Shmatikov CS 380S Introduction to Secure Multi-Party Computation.
Fall 2004/Lecture 201 Cryptography CS 555 Lecture 20-b Zero-Knowledge Proof.
MA/CSSE 473 Day 11 Primality testing summary Data Encryption RSA.
Introduction to Modern Cryptography Sharif University Spring 2015 Data and Network Security Lab Sharif University of Technology Department of Computer.
Topic 23: Zero-Knowledge Proof and Cryptographic Commitment
Introduction to Modern Cryptography Sharif University Spring 2015 Data and Network Security Lab Sharif University of Technology Department of Computer.
Presented by: Suparita Parakarn Kinzang Wangdi Research Report Presentation Computer Network Security.
Introduction to Modern Cryptography Sharif University Spring 2015 Data and Network Security Lab Sharif University of Technology Department of Computer.
Network Security – Special Topic on Skype Security.
Zero-knowledge proof protocols 1 CHAPTER 12: Zero-knowledge proof protocols One of the most important, and at the same time very counterintuitive, primitives.
New Techniques for NIZK Jens Groth Rafail Ostrovsky Amit Sahai University of California Los Angeles.
On Simulation-Sound Trapdoor Commitments Phil MacKenzie, Bell Labs Ke Yang, CMU.
Multi-Party Proofs and Computation Based in part on materials from Cornell class CS 4830.
Zero Knowledge Proofs Matthew Pouliotte Anthony Pringle Cryptography November 22, 2005 “A proof is whatever convinces me.” -~ Shimon Even.
CS555Spring 2012/Topic 31 Cryptography CS 555 Topic 3: One-time Pad and Perfect Secrecy.
Honest-Verifier Statistical Zero-Knowledge Equals General Statistical Zero-Knowledge Oded Goldreich (Weizmann) Amit Sahai (MIT) Salil Vadhan (MIT)
Andrew Lindell Aladdin Knowledge Systems and Bar-Ilan University 04/08/08 CRYP-106 Efficient Fully-Simulatable Oblivious Transfer.
Dominique Unruh Quantum Proofs of Knowledge Dominique Unruh University of Tartu Tartu, April 12, 2012.
Zero-Knowledge Proofs Ben Hosp. Classical Proofs A proof is an argument for the truth or correctness of an assertion. A classical proof is an unambiguous.
MA/CSSE 473 Day 9 Primality Testing Encryption Intro.
Zero Knowledge r Two parties:  All powerful prover P  Polynomially bounded verifier V r P wants to prove a statement to V with the following properties:
IP, (NON)ISOGRAPH and Zero Knowledge Protocol COSC 6111 Advanced Algorithm Design and Analysis Daniel Stübig.
Topic 36: Zero-Knowledge Proofs
Probabilistic Algorithms
Zero Knowledge Anupam Datta CMU Fall 2017
cryptographic protocols 2014, lecture 12 Getting full zero knowledge
Interactive Proofs Adapted from Oded Goldreich’s course lecture notes.
Fiat-Shamir for Highly Sound Protocols is Instantiable
Interactive Proofs Adapted from Oded Goldreich’s course lecture notes.
Interactive Proofs Adapted from Oded Goldreich’s course lecture notes.
Anonymous Credentials
Zero-Knowledge Proofs
Jens Groth and Mary Maller University College London
Interactive Proofs Adapted from Oded Goldreich’s course lecture notes.
Presentation transcript:

slide 1 Vitaly Shmatikov CS 380S Introduction to Zero-Knowledge

slide 2 Commitment uTemporarily hide a value, but ensure that it cannot be changed later Example: sealed bid at an auction u1 st stage: commit Sender electronically “locks” a message in a box and sends the box to the Receiver u2 nd stage: reveal Sender proves to the Receiver that a certain message is contained in the box

slide 3 Properties of Commitment Schemes uCommitment must be hiding At the end of the 1 st stage, no adversarial receiver learns information about the committed value If receiver is probabilistic polynomial-time, then computationally hiding; if receiver has unlimited computational power, then perfectly hiding uCommitment must be binding At the end of the 2 nd stage, there is only one value that an adversarial sender can successfully “reveal” Perfectly binding vs. computationally binding uCan a scheme be perfectly hiding and binding?

slide 4 Discrete Logarithm Problem uIntuitively: given g x mod p where p is a large prime, it is “difficult” to learn x Difficult = there is no known polynomial-time algorithm ug is a generator of a multiplicative group Z p * Fermat’s Little Theorem –For any integer a and any prime p, a p-1 =1 mod p. g 0, g 1 … g p-2 mod p is a sequence of distinct numbers, in which every integer between 1 and p-1 occurs once –For any number y  [1.. p-1],  x s.t. g x = y mod p If g q =1 for some q>0, then g is a generator of Z q, an order-q subgroup of Z p *

slide 5 Pedersen Commitment Scheme uSetup: receiver chooses… Large primes p and q such that q divides p-1 Generator g of the order-q subgroup of Z p * Random secret a from Z q h=g a mod p –Values p,q,g,h are public, a is secret uCommit: to commit to some x  Z q, sender chooses random r  Z q and sends c=g x h r mod p to receiver This is simply g x (g a ) r =g x+ar mod p uReveal: to open the commitment, sender reveals x and r, receiver verifies that c=g x h r mod p

slide 6 Security of Pedersen Commitments uPerfectly hiding Given commitment c, every value x is equally likely to be the value commited in c Given x, r and any x’, exists r’ such that g x h r = g x’ h r’ r’ = (x-x’)a -1 + r mod q (but must know a to compute r’) uComputationally binding If sender can find different x and x’ both of which open commitment c=g x h r, then he can solve discrete log –Suppose sender knows x,r,x’,r’ s.t. g x h r = g x’ h r’ mod p –Because h=g a mod p, this means x+ar = x’+ar’ mod q –Sender can compute a as (x’-x)(r-r’) -1 –But this means sender computed discrete logarithm of h!

slide 7 Zero-Knowledge Proofs uAn interactive proof system involves a prover and a verifier uIdea: the prover proves a statement to the verifier without revealing anything except the fact that the statement is true Zero-knowledge proof of knowledge (ZKPK): prover convinces verifier that he knows a secret without revealing the secret uIdeal functionality Is this true? Yes!

slide 8 Properties of ZKPK uCompleteness If both prover and verifier are honest, protocol succeeds with overwhelming probability uSoundness No one who does not know the secret can convince the verifier with nonnegligible probability –Intuition: the protocol should not enable prover to prove a false statement uZero knowledge The proof does not leak any information

slide 9 Zero-Knowledge Property uThe proof does not leak any information uThere exists a simulator that, taking what the verifier knows before the protocol starts, produces a fake “transcript” of protocol messages that is indistinguishable from actual protocol messages Because all messages can be simulated from verifier’s initial knowledge, verifier does not learn anything that he didn’t know before Indistinguishability: perfect, statistical, or computational uHonest-verifier ZK only considers verifiers that follow the protocol

slide 10 Soundness Property uNo one who does not know the secret can convince the verifier with nonnegligible probability uLet A be any prover who convinces the verifier… u…there must exist a knowledge extractor algorithm that, given A, extracts the secret from A Intuition: if there existed some prover A who manages to convince the verifier that he knows the secret without actually knowing it, then no algorithm could possibly extract the secret from this A

slide 11 Schnorr’s Id Protocol uSystem parameters Prime p and q such that q divides p-1 g is a generator of an order-q subgroup of Z p * P V Knows t Knows s such that t=g s mod p Wants to prove this fact to V x = g r mod p c y = r+sc Verifies x= g y t -c mod p Chooses random r in [1..q] Chooses random c in [1..2 n ] = g r+sc (g s ) -c mod p = g r mod p P proves that he knows discrete log of t without revealing its value

slide 12 Cheating Sender uProver can cheat if he can guess c in advance Guess c, set x=g y t -c for random y in 1 st message What is the probability of guessing c? P V x = g r mod p c y Verifies x= g y t -c mod p Chooses random r in [1..q] Chooses random c in [1..2 n ] x=g y t -c P proves that he “knows” discrete log of t even though he does not know s

slide 13 Schnorr’s Id Protocol Is Sound uGiven P who successfully passes the protocol, extract s such that t=g s mod p Idea: run P twice as a subroutine PExt x y 1 such that x=g y 1 t -c 1 Chooses random c 1 in [1..2 n ] c1c1 Knows t y 2 such that x=g y 2 t -c 2 Chooses random c 2 in [1..2 n ] c2c2 “rewind” P Compute s=(y 1 -y 2 )(c 1 -c 2 ) -1 g y 1 t -c 1 = g y 2 t -c 2 implies g y 1 -y 2 = t c 1 -c 2 Therefore, g y 1 -y 2 (c 1 -c 2 ) -1 =t

slide 14 Schnorr’s Id Protocol Is HVZK V x c Pick random c in [1..2 n ] uSimulator produces a transcript which is indistinguishable from the real transcript y such that x=g y t -c Real transcript g y t -c c Pick random c and y y Sim Simulated transcript Does not know s such that t=g s mod p (why?) P These transcripts are indistinguishable … but only if c in the real protocol is indeed random (verifier must run the protocol honestly) Schnorr’s ID protocol is honest-verifier zero-knowledge

slide 15 Pick some c (may depend on x) Schnorr’s Id Protocol Is Not ZK V x c uSchnorr’s ID protocol is not zero-knowledge for malicious verifier if challenge c is large y such that x=g y t -c P Triple (x,c,y) is a solution to the equation x=g y t -c Verifier may not be able to come up with such a triple on his own. Therefore, he learned something from the protocol (protocol is not zero-knowledge!)