0% found this document useful (0 votes)
167 views31 pages

Zero Knowledge Proof Explained

Zero knowledge proofs (ZKP) allow one party to prove possession of certain information to another party without revealing that information. ZKPs work by having the prover repeatedly perform computations to convince the verifier they know a secret, while the probability of fooling the verifier gets smaller with each interaction. There are interactive and non-interactive ZKP protocols, with non-interactive protocols like zk-SNARKs and zk-STARKs allowing verification without direct interaction between prover and verifier. Common ZKP protocols include Fiat-Shamir and Guillou-Quisquater.

Uploaded by

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

Zero Knowledge Proof Explained

Zero knowledge proofs (ZKP) allow one party to prove possession of certain information to another party without revealing that information. ZKPs work by having the prover repeatedly perform computations to convince the verifier they know a secret, while the probability of fooling the verifier gets smaller with each interaction. There are interactive and non-interactive ZKP protocols, with non-interactive protocols like zk-SNARKs and zk-STARKs allowing verification without direct interaction between prover and verifier. Common ZKP protocols include Fiat-Shamir and Guillou-Quisquater.

Uploaded by

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

ZERO KNOWLEDGE

PROOF
17CP024
Dhruvil Kotecha

1
Definition: ZKP is a method by which one party (the prover) can
prove to another party (the verifier) that they know a value x, without
complex
conveying any information
I know
puzzle secret of
“x”

Questions…..
Questions…..
key-code Wants to convince verifier that he
know secret of X

Answers……

complex

Prover Verifier
programming

2
WHAT IS THE NEED?
3
PERSONAL YOUR SOCIAL BEHAVIOURAL PATTERNS
INFORMATION CONTACTS

4
MORE PROFIT MORE ADS PLATFORMS

5
Not to Sign-up
Or
Delete Acc

6
Do we always
have choice?

7
Rs. 2 Cr. Loan?

No!

8
So is there is a way to provide information to such services without actually revealing the
data?

Like, kind of way to prove something without revealing the actual thing?

Yes there is where Zero knowledge proof comes…..

9
Interesting things about ZKP

10
EXAMPLE
11
12
  1
2

13
½*½ ¼
14
And if we keep doing so, after 10 times that probability will be   1
1024

0.009%

15
It does not give air tight proof

It is about minimizing the probability that someone is fooling

If one keep on performing interactions ……

0.000000000000000000000000000000000000001 %

16
TYPES
17
Types……
Interactive Proof Non-interactive Proof
◦ Like interrogation ◦ No need to prove every time
◦ Prover has to perform series of actions ◦ It allows you to deliver a proof that
to prove something anyone can verify by themselves
◦ Drawback ◦ ZK-SNARK
 Limited to transferability

18
ZERO KNOWLEDGE
RANGE PROOF

Range

https://www.ingwb.com/themes/distributed-ledger-
technology-articles/ing-launches-major-addition-
to-blockchain-technology
19
20,000/-
To
10,00,000

Yes. Here is
zero range
proof for
that

20
PROTOCOLS USED
21
NON-
INTERACTIVE
INTERACTIVE
PROOF
PROOF

Fiat-Shamir
ZK-SNARK
Protocol

Guillou-
Quisquater ZK-STARKS
Protocol

BULLETPROOFS

22
FIAT-SHAMIR
PROTOCOL
23
Facts about Fiat-Shamir Protocol

Identification Black Box


problem Interactions

Confidentiality Zero
of secrets Knowledge of
Verifier

24
• p=101 & q=23
N=p*q • N=101*23 = 2323

• S1=5 & S2=7 & S3=3


• V1=(s1)^2 mod N = 25
S ∈ ( 1 , n-1) • V1=(s1)^2 mod N = 49
• V1=(s1)^2 mod N=9

25
26
Random “r” ∈ ( 0 , n-1) Verifier
will know
• r=13
• Compute witness x
V v
P
• x= 169 % 2323 = 169 x
• Send witness to verifier

Victor generates 3 challenges v


x
• c1=1 & c2=0 & c3=1 c
c
• Send challenges to prover P V
v
Prover generates response “y” x
c
y y
• P V
• y= 13 * ( )=195
27
For verification , verifier computes………….

• mod N
• (169 * ) % 2323 = 857  = *

= *
• mod N
• ( = 857 = mod N

28
DRAWBACKS
29
Does not give 100% Guarantee

Algorithm used are so intensive

Lot of computations

Zero knowledge proof are so intensive

30
P1 P2

P3

31

ZERO KNOWLEDGE 
PROOF
17CP024
Dhruvil Kotecha
1
Definition: ZKP is a method by which one party (the prover) can 
prove to another party (the verifier) that they know a value
WHAT IS THE NEED?
3
PERSONAL
INFORMATION
YOUR SOCIAL 
CONTACTS
BEHAVIOURAL PATTERNS
4
MORE PROFIT
MORE ADS
PLATFORMS
5
Not to Sign-up
Or
Delete Acc
6
Do we always 
have choice?
7
Rs. 2 Cr. Loan?
Rs. 2 Cr. Loan?
No!
No!
8
So is there is a way to provide information to such services without actually revealing the 
data?
So is there is a way to pr
Interesting things about ZKP
Interesting things about ZKP
10

You might also like