0% found this document useful (0 votes)
44 views15 pages

Zero-Knowledge Proofs Overview

This document discusses interactive proof systems, focusing on Zero-Knowledge Proofs (ZKPs) which allow a prover to demonstrate knowledge of a secret without revealing it. It outlines the properties of ZKPs, including completeness, soundness, and zero knowledge, and describes the Fiat-Shamir protocol for proving quadratic residues. Additionally, it explores the concept of knowledge extractors and the possibility of running multiple rounds of the protocol in parallel, while raising questions about the ZK property in this context.

Uploaded by

Suja Mary
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
44 views15 pages

Zero-Knowledge Proofs Overview

This document discusses interactive proof systems, focusing on Zero-Knowledge Proofs (ZKPs) which allow a prover to demonstrate knowledge of a secret without revealing it. It outlines the properties of ZKPs, including completeness, soundness, and zero knowledge, and describes the Fiat-Shamir protocol for proving quadratic residues. Additionally, it explores the concept of knowledge extractors and the possibility of running multiple rounds of the protocol in parallel, while raising questions about the ZK property in this context.

Uploaded by

Suja Mary
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd

Zero-Knowledge Proof and

Cryptographic Commitment

Unit-4

1
Interactive Proof Systems
• Traditionally, a proof for a statement is a static
string such that one can verify for its correctness
– Follows axioms and deduction rules.

• Generalizing proof systems to be interactive


– A proof system involves an algorithm for a prover and
a verifier.
– A proof system can be probabilistic in ensuring
correctness of the statement being proved

2
Zero Knowledge Proofs
• A protocol involving a prover and a verifier that
enables the prover to prove to a verifier without
revealing any other information
– E.g., proving that a number n is of the form of the
product of two prime number
– Proving that one knows p,q such that n=pq
– Proving that one knows x such gx mod p = y

3
Two Kinds of Zero-Knowledge Proofs

• ZK proof of a statement
– convincing the verifier that a statement is true without
yielding any other information
– example of a statement, a propositional formula is
satisfiable

• ZK proof of knowledge
– convincing the verifier that one knows a secret, e.g.,
one knows the discrete logarithm logg(y)

4
Fiat-Shamir Protocol for Proving
Quadratic Residues
• Statement: x is QR modulo n
• Prover knows w such that w2=x (mod n)
• Repeat the following one-round protocol t times
• One-round Protocol:
– P to V: y = r2 mod n, where r randomly chosen
– V to P: b  {0,1}, randomly chosen
– P to V: z=rwb, i.e., z=r if b=0, z=rw if b=1
– V verifies: z2=yxb, i.e., z2=y if b=0, z2=yx if b=1

5
Observations on the Protocol
• Multiple rounds
• Each round consists of 3 steps
– Commit; challenge; respond
• If challenge can be predicted, then cheating is
possible.
– Cannot convince a third party (even if the party is
online)
– Essense why it is ZK
• If respond to more than one challenge with one
commit, then the secret is revealed.
– Essence that this proves knowledge of the secret

6
Properties of Interactive Zero-
Knowledge Proofs of Knowledge
• Completeness
– Given honest prover and honest verifier, the protocol
succeeds with overwhelming probability

• Soundness
– no one who doesn’t know the secret can convince the
verifier with nonnegligible probability

• Zero knowledge
– the proof does not leak any additional information
7
Analysis of the Fair-Shamir
protocol
• Completeness, when proven is given w2=x and both party
follows protocol, the verification succeeds

• Soundness: if x is not QR, verifier will not be fooled.


– Needs to show that no matter what the prover does, the verifier’s
verification fails with some prob. (1/2 in this protocol)
– Assumes that x is not QR, V receives y
• Case 1: y is QR, then when b=1, checking z2=yx will fail.
• Case 2: y is QNR, then when b=0, checking z2=y will fail.
• Proof will be rejected with probability ½.

8
Formalizing ZK property
• A protocol is ZK if a simulator exists
– Taking what the verifier knows before the proof, can
generate a communication transcript that is indistinguishable
from one generated during ZK proofs
• Intuition: One observes the communication transcript. If what
one sees can be generated oneself, one has not learned
anything new knowledge in the process.

• Three kinds of indistinguishability


– Perfect (information theoretic)
– Statistical
– Computational

9
Honest Verifier ZK vs. Standard
ZK
• Honest Verifier ZK means that a simulator exists
for the Verifier algorithm V given in the protocol.

• Standard ZK requires that a simulator exists for


any algorithm V* that can play the role of the
verifier in the protocol.

10
Fiat-Shamir is honest-verifier ZK
• The transcript of one round consists of
– (n, x, y, b, z) satisfying z2=yxb
– The bit b is generated by honest Verifier V is uniform
independent of other values
• Construct a simulator for one-round as follows
– Given (x,n)
– Pick at uniform random b{0,1},
– If b=0, pick random z and sets y=z2 mod n
– If b=1, pick random z, and sets y=z2x-1 mod n
– Output (n,x,y,b,z)
• The transcript generated by the simulator is from the
same prob. distribution as the protocol run

11
Fiat-Shamir is ZK
• Given any possible verifier V*, A simulator works as
follows:
1. Given (x,n) where x is QR; let T=(x,n)
2. Repeat steps 3 to 7 for
3. Randomly chooses b  {0,1},
4. When b=0, choose random z, set y=z 2 mod n
5. When b=1, choose random z, set y=z 2x-1 mod n
6. Invoke let b’=V*(T,y), if b’b, go to step 3
7. Output (n,x,y,b,z); [Link]((n,x,y,b,z));

• Observe that both z2 and z2x-1 are a random QR; they have
the same prob. distribution, thus the success prob. of one
round is at least ½
12
Zero Knowledge Proof of
Knowledge
• A ZKP protocol is a proof of knowledge if it
satisfies a stronger soundness property:
– The prover must know the witness of the statement
• Soundness property: If a prover A can convince a
verifier, then a knowledge exactor exists
– a polynomial algorithm that given A can output the
secret
• The Fiat-Shamir protocol is also a proof of
knowledge:

13
Knowledge Extractor for the QR
Protocol
• If A can convince V that x is QR with probability
significanly over ½, then after A outputs y, then A can
pass when challenged with both 0 and 1.

• Knowledge extractor
– Given an algorithm A that can convince a verifier,
– After A has sent y, first challenge it with 0, and receives z1
such that z12=y
– Then reset A to the state after sending y, challenge it with 1
and receives z2 such that z22=xy, then compute s=z1-1z2 , we
have s2=x

14
Running in Parallel
• All rounds in Fiat-Shamir can be run in parallel
1. Prover: picks random r1,r2,…,rt, sends y1=r12, y2=r22, …, yt=rt2
2. Verifier checks the y’s are not 0 and sends t random bits b1,…bt
3. Prover sends z1,z2,…,zk,
4. Verifier accept if zj2yjxb_j mod n
• This protocol still a proof of knowledge.
• This protocol still honest verifier ZK.
• It is unknown whether this protocol is ZK or not!
– Consider the V* such that V* chooses b1,…bt to be the first t bits of
H(y1,y2,…,yt), where H is a cryptographic hash function.
• The above method for generating an indistinguishable transcript no longer
works.

15

You might also like