Elliptic Curve Cryptography and Zero Knowledge Proof

Arunanand Ta
Arunanand TaSoftware Developer um Oracle
Elliptic Curve Cryptography and
Zero Knowledge Proof
Nimish Joseph
AGENDA
•
•
•
•
•
•

Mathematical Foundations
Public Key Cryptography
Elliptic Curve
Elliptic Curve Cryptography
Elliptic Curve over Prime Fields
Zero Knowledge Proof

06-Nov-2013

ECC and Zero Knowledge Proof

2
Let’s Build the Foundation!
Mathematical Background for
Cryptography
• Modulo Arithmetic
d=n*q + r, 0 ≤r<n.
we say this as “d is equal to r modulo n”
r ≡ d (mod n)
5 ≡ 26 (mod 7)

06-Nov-2013

ECC and Zero Knowledge Proof

4
Group
• Basic algebraic structure
• A pair <G,*>, where G is a set and * is a binary
operation such that the following hold
Closure
Associativity
Identity Element
Inverse
< Zn, +n >
06-Nov-2013

ECC and Zero Knowledge Proof

5
Ring
A triplet < R, +, *>, where + and * are binary operations and R
is a set satisfying the following properties:
<R, +> is a commutative group
For all x, y, and z in R
x*y is also in R
x*(y*z)=(x*y)*z
x*(y+z)= (x*y)+(x*z )
< Zn, +n, *n>

06-Nov-2013

ECC and Zero Knowledge Proof

6
Fields
• <R, +, * > is a commutative ring with :
R has a multiplicative identity
Each element, x, in R (except for 0) has an
inverse element in R , denoted by x-1
<Zn, +n, *n > where n is prime.
06-Nov-2013

ECC and Zero Knowledge Proof

7
Cryptography - Basics
• Private Key Cryptography

• Public Key Cryptography

06-Nov-2013

ECC and Zero Knowledge Proof

8
Public-Key Cryptosystems

Authentication: Only A can
generate the encrypted message
06-Nov-2013

ECC and Zero Knowledge Proof

Secrecy: Only B can Decrypt
the message
9
Public-Key Cryptography

06-Nov-2013

ECC and Zero Knowledge Proof

10
Public-Key Cryptography

06-Nov-2013

ECC and Zero Knowledge Proof

11
RSA
•
•
•
•
•

Choose two large primes p and q
n=p*q
φ(n)= (p-1)*(q-1)
Choose e, such that gcd(e, φ(n)) = 1
Compute d, such that d = e-1mod φ(n)
C = Me mod n
M= Cd mod n

06-Nov-2013

ECC and Zero Knowledge Proof

12
Discrete Logarithmic Problem
y = gx mod p
Challenge :
Given y, g and p (g and p very large) it is not
VERY EASY(impossible) to calcuate x.

06-Nov-2013

ECC and Zero Knowledge Proof

13
Diffie-Hellman Key Exchange
ga mod p
gb mod p

K = (gb mod p)a = gab mod p

06-Nov-2013

K = (ga mod p)b = gab mod p

ECC and Zero Knowledge Proof

14
El Gamal Encryption
•
•
•
•

K=gamodp. (p,g,K) public and (a) private
Choose r such that gcd(r,p-1)=1
C1= gr mod p
C2= (m*Kr) mod p... m is the message
Sends(C1, C2)
• To Decrypt C1-a*C2 mod p =m

06-Nov-2013

ECC and Zero Knowledge Proof

15
Elliptic Curve Cryptography
Elliptic Curve Cryptography
• Elliptic Curve (EC) systems as applied to
cryptography were first proposed in 1985
independently by Neal Koblitz and Victor
Miller.
• The discrete logarithm problem on elliptic
curve groups is believed to be more difficult
than the corresponding problem in (the
multiplicative group of nonzero elements of)
the underlying finite field.
06-Nov-2013

ECC and Zero Knowledge Proof

17
What Is Elliptic Curve Cryptography
(ECC)?
• Elliptic curve cryptography [ECC] is a public-key
cryptosystem just like RSA, Rabin, and El Gamal.
• Every user has a public and a private key.
– Public key is used for encryption/signature verification.
– Private key is used for decryption/signature generation.

• Elliptic curves are used as an extension to other
current cryptosystems.
06-Nov-2013

ECC and Zero Knowledge Proof

18
Using Elliptic Curves In Cryptography
• The central part of any cryptosystem involving elliptic
curves is the elliptic group.
• All public-key cryptosystems have some underlying
mathematical operation.
– RSA has exponentiation (raising the message or ciphertext
to the public or private values)
– ECC has point multiplication (repeated addition of two
points).
06-Nov-2013

ECC and Zero Knowledge Proof

19
General form of a EC
• An elliptic curve is a plane curve defined by an
equation of the form

y  x  ax  b
2

3

Examples

06-Nov-2013

ECC and Zero Knowledge Proof

20
EC as a group
An Elliptic Curve is a curve given by an equation
y2 = f(x)

Where f(x) is a square-free (no double roots) cubic or a quartic polynomial

y2 = x3 + ax + b
4a3 + 27b2 ≠ 0

EC(-3,2)

So y2 = x3 is not an elliptic curve, but y2 = x3-1 is

06-Nov-2013

ECC and Zero Knowledge Proof

21
Elliptical Curve as a Group - Properties
• P + Q = Q + P (commutativity)
• (P + Q) + R = P + (Q + R) (associativity)

• P + O = O + P = P (existence of an identity element)
• there exists ( − P) such that − P + P = P + ( − P)
= O (existence of inverses)

06-Nov-2013

ECC and Zero Knowledge Proof

22
Elliptic Curve Picture
y

• Consider elliptic curve
E: y 2 = x 3 - x + 1
P2

P1

x

R

06-Nov-2013

• If P 1 and P 2 are on E , we can
define
R = P1 + P2
as shown in picture
• Addition is all we need

ECC and Zero Knowledge Proof

23
Case 1 : R’ ≠P1, R’≠ P2, R’≠ 0
•
•
•
•
•
•
•

P1+P2 = -R’ = R
R = (x3,y3)
Let y=mx+c
m= (y2-y1)/(x2-x1)
y2 = (mx+c)2 = m2x2+2mxc+c2
x3+ax+b = m2x2+2mxc+c2
x3 - m2x2 + (a-2mc)x + (b- c2 ) = 0

06-Nov-2013

ECC and Zero Knowledge Proof

24
• (x-x1)(x-x2)(x-x3)=0
• x3-x2 (x1+x2+x3) + x (x1x2+x2x3+x3x1) – x1x2x3 = 0
• x3 = m2 –x1 –x2
• m= ((-y3)-y1)/(x3-x1)
• y3= -y1 +m(x1-x3)

06-Nov-2013

ECC and Zero Knowledge Proof

25
Case 2 : P1= -P2 or R’ = 0

P1

P2

06-Nov-2013

ECC and Zero Knowledge Proof

26
Case 3: R’=P1 or R’=P2
Tangent Line to EC at P2

R
P1

P2

06-Nov-2013

ECC and Zero Knowledge Proof

27
Case 4 : Doubling of Point P
Tangent Line to EC at P

R

P

2*P
06-Nov-2013

ECC and Zero Knowledge Proof

28
P1=P2
•
•
•
•
•

2y * dy/dx =3x2 + a
Slope of the tangent m = dy/dx = (3x2 + a)/2y
At (x1,y1) = (3x12 + a)/2y1
x3 = m2 –2x1
y3= -y1 +m(x1-x3)

06-Nov-2013

ECC and Zero Knowledge Proof

29
Work Out !
• EC(-1,1).
A(1,-1) B( 1/4, 7/8). A+B = ?
• m = (-1-7/8)/(1-1/4) = -5/2
• x3 = (-5/2)2 -1 -1/4 =5
• y3 = -(-1)+(-5)/2*(1-5) = 11
(5,11)

06-Nov-2013

ECC and Zero Knowledge Proof

30
Elliptic Curve over Prime Fields
• Points on the curve y2 =x3 +2x +4
0
(0,2) (0,11)
(2,4) (2,9)
(5,3) (5,10)
(7,6) (7,7)
(8,5) (8,8)
(9,6) (9,7)
(10,6) (10,7)
(12,1) (12,11)

06-Nov-2013

ECC and Zero Knowledge Proof

31
Hasse’s Theorem
p +1 -2√p ≤ #EC(Fp) ≤ p+1+2√p
Establishes the tight bounds on the number of
points on the EC

06-Nov-2013

ECC and Zero Knowledge Proof

32
Work Out!
• EC(2,4) over F13
• A = (2,4) B = (8,5) . Compute A+B
m = (5-4)/(8-2) mod 13 =11
x3 = (112 -2 -8) mod 13 = 7
y3 = (-4 +11*(2-7)) mod 13 = 6
A+B =(7,6)
• Compute 2A = (8,5)
06-Nov-2013

ECC and Zero Knowledge Proof

33
ECs Over Binary Fields
• y2+xy =x3 +ax2 +b, b!=0
• A=(x,y) : -A = (x,x+y)
• For adding two points
m= (y2+y1)/(x2+x1)
x3 = m2+m +x1 +x2 + a
y3 = m(x1+x3) +x3 +y1

• Point doubling
m = x1 +(y1/x1)
x3 = m2+m+a
y3 = x12 +(m+1)*x3
06-Nov-2013

ECC and Zero Knowledge Proof

34
Discrete Logarithm Problem on
Elliptic Curves
• The problem of computing k given the EC
parameters, G and kG, is called the discrete
log problem for points on an elliptic curve.
• This problem is known to be infeasible in EC
groups beyond 2120 elements

06-Nov-2013

ECC and Zero Knowledge Proof

35
Computing kG
• kG = G + G + ...+ G k times
• To compute 168G , compute the series obtained
by doubling the point,
2G, 4G, 8G, 16G, 32G,...

• Now 168 = 10101000 in binary
168G = 128G+32G+8G
O(log k)
06-Nov-2013

ECC and Zero Knowledge Proof

36
Diffie-Hellman Modified
• Select <p,a,b,G,n,h>
• Alice chooses x and send xG
• Bob chooses y and send yG

• Alice on receipt compute x(yG) =xyG
• Bob on receipt compute y(xG) = xyG
06-Nov-2013

ECC and Zero Knowledge Proof

37
El Gamal Modified
•
•
•
•
•
•

k= aG
Choose r; Compute rG
Compute m + rk
Send <rG, m + rk>
To decrypt a(rG) = rk
m + rk – rk = m

06-Nov-2013

ECC and Zero Knowledge Proof

38
Comparison of key sizes for same
level of security
ECC

RSA

• 110

• 512

• 163

• 1024

• 256

• 3072

• 384

• 7680

• 512

• 15360

06-Nov-2013

ECC and Zero Knowledge Proof

39
RSA vs ECC Timings
• To encrypt ECC takes nearly 10 times of that
of RSA upto a key size of 384(ECC) and
7680(RSA).
• For Decryption RSA takes more time for a key
size higher than 1024 when compared to ECC
(163)

06-Nov-2013

ECC and Zero Knowledge Proof

40
Applications of ECC
• Many devices are small and have limited storage and
computational power
• Where can we apply ECC?
–
–
–
–

Wireless communication devices
Smart cards
Web servers that need to handle many encryption sessions
Any application where security is needed but lacks the
power, storage and computational power that is
necessary for our current cryptosystems

06-Nov-2013

ECC and Zero Knowledge Proof

41
A Conference on ECC
• ECC 2013:
https://www.cosic.esat.kuleuven.be/ecc2013

06-Nov-2013

ECC and Zero Knowledge Proof

42
Zero Knowledge Proof
Zero Knowledge Proofs (ZKP)
• Goldwasser, Micali, and Rackoff, 1985.
• ZKP instance of Interactive Proof System
• Interactive Proof Systems
– Challenge-Response Authentication
– Prover and Verifier
– Verifier Accepts or Rejects the Prover

06-Nov-2013

ECC and Zero Knowledge Proof

44
ZKP
• Zero knowledge Transfer between the Prover and
the Verifier
• The verifier accepts or rejects the proof after
multiple challenges and responses
• Probabilistic Proof Protocol
• Overcomes Problems with Password Based
Authentication

06-Nov-2013

ECC and Zero Knowledge Proof

45
Zero Knowledge Proofs
•
•
•
•
•
•

Introduction
Properties of ZKP
Advantages of ZKP
Examples
Fiat-Shamir Identification Protocol
Real-Time Applications

06-Nov-2013

ECC and Zero Knowledge Proof

46
Zero Knowledge Proofs

(ZKP)

• Goldwasser, Micali, and Rackoff, 1985.
• ZKP instance of Interactive Proof System
• Interactive Proof Systems
– Challenge-Response Authentication
– Prover and Verifier
– Verifier Accepts or Rejects the Prover

06-Nov-2013

ECC and Zero Knowledge Proof

47
Properties of ZKP
• Completeness
– Succeeds with high probability for a true assertion
given an honest verifier and an honest prover.
• Soundness
– Fails for any other false assertion, given a
dishonest prover and an honest verifier
• Zero Knowledge
06-Nov-2013

ECC and Zero Knowledge Proof

48
Advantages of ZKP
•
•
•
•

As name Suggests – Zero Knowledge Transfer
Computational Efficiency – No Encryption
No Degradation of the protocol
Based on problems like discrete logarithms and
integer factorization

06-Nov-2013

ECC and Zero Knowledge Proof

49
Classic Example
• Ali Baba’s Cave
Alice has to convince Bob She knows the secret to
open the cave door without telling the secret

(source: http://www.rsasecurity.com/rsalabs/faq/2-1-8.html)

06-Nov-2013

ECC and Zero Knowledge Proof

50
Fiat-Shamir Identification Protocol
• 3 Message Protocol
• Alice A, the Prover and Bob B, the Verifier
A random modulus n, product of two large prime numbers p
and q generated by a trusted party and made public
• Prover chooses secret s relatively prime to n
• prover computes v = s2 mod n, where v is the public key
A  B
A  B
A  B

06-Nov-2013

: x = r2 mod n
: e  { 0,1}
: y = r * se mod n. Is y2 = x * ve ?

ECC and Zero Knowledge Proof

51
Fiat-Shamir Identification Protocol (contd)
• Alice chooses a random number r (1  r  n-1)
• Sends to Bob x = r2 mod n – commitment
• Bob randomly sends either a 0 or a 1 ( e  { 0,1}) as
his challenge
• Depending on the challenge from Bob, Alice
computes the response as y = r if e = 0 or otherwise y
= r*s mod n
• Bob accepts the response upon checking y2  x * ve
mod n

06-Nov-2013

ECC and Zero Knowledge Proof

52
Fiat-Shamir Identification Protocol (contd)
• After many iterations, with a very high probability Bob can verify
Alice’s identity
• Alice’s response does not reveal the secret s (with y = r or y = r* s mod
n)
• An intruder can prove Alice’s identity without knowing the secret, if
he knows Bob’s challenge in advance:
– Generate random r
– If expected challenge is 1, send x = r2/v mod n as commitment,
and y = r as response
– If expected challenge is 0, send x = r mod n as commitment
• Probability that any Intruder impersonating the prover can send the
right response is only ½
• Probability reduced as iterations are increased
• Important - Alice should not repeat r
06-Nov-2013

ECC and Zero Knowledge Proof

53
Applications
• Watermark Verification
– Show the presence of watermark without
revealing information about it
– prevents from removing the watermark and
reselling multiple duplicate copies
• Others – e-voting, e-cash etc.

06-Nov-2013

ECC and Zero Knowledge Proof

54
References
• Network Security and Cryptography, Bernard Menezes
• I. Blake, G. Seroussi, and N. Smart, Elliptic Curves in Cryptography, London
Mathematical Society 265, Cambridge University Press, 1999
• Overview of Zero-Knowledge Protocols, Jeffrey Knapp
• http://en.wikipedia.org/wiki/Elliptic_curve_cryptography as on November
4, 2013
• Koblitz, N. (1987). "Elliptic curve cryptosystems". Mathematics of
Computation 48 (177): 203–209. JSTOR 2007884
• Menezes, A.; Okamoto, T.; Vanstone, S. A. (1993). "Reducing elliptic curve
logarithms to logarithms in a finite field". IEEE Transactions on Information
Theory 39
• K. Malhotra, S. Gardner, and R. Patz, Implementation of Elliptic-Curve
Cryptography on Mobile Healthcare Devices, Networking, Sensing and
Control, 2007 IEEE International Conference on, London, 15–17 April 2007
Page(s):239–244

06-Nov-2013

ECC and Zero Knowledge Proof

55
References
• D. Hankerson, A. Menezes, and S.A. Vanstone, Guide to Elliptic Curve
Cryptography, Springer-Verlag, 2004
• http://en.wikipedia.org/wiki/Zero-knowledge_proof as on November 4,
2013
• Stinson, Douglas Robert (2006), Cryptography: Theory and Practice (3rd
ed.), London: CRC Press, ISBN 978-1-58488-508-5
• Agrawal, Manindra; Kayal, Neeraj; Saxena, Nitin (2004). "PRIMES is in P".
Annals of Mathematics 160 (2): 781–793.
• Theory of Computing Course, Cornell University 2009, Zero knowledge
proofs
• A Survey of Zero-Knowledge Proofs with Applications to Cryptography,
Austin Mohr Southern Illinois University at Carbondale

06-Nov-2013

ECC and Zero Knowledge Proof

56
THANK YOU!!

~Nimish Joseph
Q&A
1 von 58

Recomendados

Elliptic Curve Cryptography for those who are afraid of maths von
Elliptic Curve Cryptography for those who are afraid of mathsElliptic Curve Cryptography for those who are afraid of maths
Elliptic Curve Cryptography for those who are afraid of mathsMartijn Grooten
2.7K views100 Folien
Cryptography and Network Security William Stallings Lawrie Brown von
Cryptography and Network Security William Stallings Lawrie BrownCryptography and Network Security William Stallings Lawrie Brown
Cryptography and Network Security William Stallings Lawrie BrownInformation Security Awareness Group
9.6K views39 Folien
Public Key Cryptography von
Public Key CryptographyPublic Key Cryptography
Public Key CryptographyGopal Sakarkar
33.2K views188 Folien
Introduction to Cryptography von
Introduction to CryptographyIntroduction to Cryptography
Introduction to CryptographyBharat Kumar Katur
4.6K views35 Folien
Computer Security Lecture 3: Classical Encryption Techniques 2 von
Computer Security Lecture 3: Classical Encryption Techniques 2Computer Security Lecture 3: Classical Encryption Techniques 2
Computer Security Lecture 3: Classical Encryption Techniques 2Benha University
1.7K views42 Folien
Elliptic Curve Cryptography von
Elliptic Curve CryptographyElliptic Curve Cryptography
Elliptic Curve CryptographyJorgeVillamarin5
599 views43 Folien

Más contenido relacionado

Was ist angesagt?

Aes von
AesAes
AesMuhammad Asif
1K views32 Folien
introduction to cryptography von
introduction to cryptographyintroduction to cryptography
introduction to cryptographyPriyamvada Singh
2.7K views66 Folien
Message digest 5 von
Message digest 5Message digest 5
Message digest 5Tirthika Bandi
6.3K views20 Folien
Diffie hellman key exchange algorithm von
Diffie hellman key exchange algorithmDiffie hellman key exchange algorithm
Diffie hellman key exchange algorithmSunita Kharayat
1.5K views23 Folien
Cryptography Intro von
Cryptography IntroCryptography Intro
Cryptography IntroChristopher Martin
7.1K views17 Folien
Presentation about RSA von
Presentation about RSAPresentation about RSA
Presentation about RSASrilal Buddika
7.5K views43 Folien

Was ist angesagt?(20)

Diffie hellman key exchange algorithm von Sunita Kharayat
Diffie hellman key exchange algorithmDiffie hellman key exchange algorithm
Diffie hellman key exchange algorithm
Sunita Kharayat1.5K views
Rsa Crptosystem von Amlan Patel
Rsa CrptosystemRsa Crptosystem
Rsa Crptosystem
Amlan Patel3.3K views
Elliptic Curve Cryptography von Adri Jovin
Elliptic Curve CryptographyElliptic Curve Cryptography
Elliptic Curve Cryptography
Adri Jovin366 views
Digital Signature Standard von Sou Jana
Digital Signature StandardDigital Signature Standard
Digital Signature Standard
Sou Jana519 views
Advanced encryption standard (aes) von farazvirk554
Advanced encryption standard (aes)Advanced encryption standard (aes)
Advanced encryption standard (aes)
farazvirk554561 views
4. The Advanced Encryption Standard (AES) von Sam Bowne
4. The Advanced Encryption Standard (AES)4. The Advanced Encryption Standard (AES)
4. The Advanced Encryption Standard (AES)
Sam Bowne9.3K views

Destacado

Zero knowledge proofsii von
Zero knowledge proofsiiZero knowledge proofsii
Zero knowledge proofsiisreesaiprakash
6.4K views17 Folien
ECC vs RSA: Battle of the Crypto-Ninjas von
ECC vs RSA: Battle of the Crypto-NinjasECC vs RSA: Battle of the Crypto-Ninjas
ECC vs RSA: Battle of the Crypto-NinjasJames McGivern
15.2K views119 Folien
Elliptic Curves and Elliptic Curve Cryptography von
Elliptic Curves and Elliptic Curve CryptographyElliptic Curves and Elliptic Curve Cryptography
Elliptic Curves and Elliptic Curve CryptographyMd. Al-Amin Khandaker Nipu
2.5K views41 Folien
Elliptic curvecryptography Shane Almeida Saqib Awan Dan Palacio von
Elliptic curvecryptography Shane Almeida Saqib Awan Dan PalacioElliptic curvecryptography Shane Almeida Saqib Awan Dan Palacio
Elliptic curvecryptography Shane Almeida Saqib Awan Dan PalacioInformation Security Awareness Group
3.1K views37 Folien
Sigma Protocols and Zero Knowledge von
Sigma Protocols and Zero KnowledgeSigma Protocols and Zero Knowledge
Sigma Protocols and Zero KnowledgeAlex Chepurnoy
2.1K views26 Folien
Elliptic Curve Cryptography: Arithmetic behind von
Elliptic Curve Cryptography: Arithmetic behindElliptic Curve Cryptography: Arithmetic behind
Elliptic Curve Cryptography: Arithmetic behindAyan Sengupta
3.8K views42 Folien

Destacado(20)

ECC vs RSA: Battle of the Crypto-Ninjas von James McGivern
ECC vs RSA: Battle of the Crypto-NinjasECC vs RSA: Battle of the Crypto-Ninjas
ECC vs RSA: Battle of the Crypto-Ninjas
James McGivern15.2K views
Sigma Protocols and Zero Knowledge von Alex Chepurnoy
Sigma Protocols and Zero KnowledgeSigma Protocols and Zero Knowledge
Sigma Protocols and Zero Knowledge
Alex Chepurnoy2.1K views
Elliptic Curve Cryptography: Arithmetic behind von Ayan Sengupta
Elliptic Curve Cryptography: Arithmetic behindElliptic Curve Cryptography: Arithmetic behind
Elliptic Curve Cryptography: Arithmetic behind
Ayan Sengupta3.8K views
Mã hóa đường cong Elliptic von LE Ngoc Luyen
Mã hóa đường cong EllipticMã hóa đường cong Elliptic
Mã hóa đường cong Elliptic
LE Ngoc Luyen3.7K views
Mathematics Towards Elliptic Curve Cryptography-by Dr. R.Srinivasan von municsaa
Mathematics Towards Elliptic Curve Cryptography-by Dr. R.SrinivasanMathematics Towards Elliptic Curve Cryptography-by Dr. R.Srinivasan
Mathematics Towards Elliptic Curve Cryptography-by Dr. R.Srinivasan
municsaa14.9K views
Authentication protocols based on zero knowledge proof (Part 2 - Brief talk) von Israel Buitron
Authentication protocols based on zero knowledge proof (Part 2 - Brief talk)Authentication protocols based on zero knowledge proof (Part 2 - Brief talk)
Authentication protocols based on zero knowledge proof (Part 2 - Brief talk)
Israel Buitron843 views
Authentication protocols based on zero knowledge proofs (Part 1 - Brief Talk) von Israel Buitron
Authentication protocols based on zero knowledge proofs (Part 1 - Brief Talk)Authentication protocols based on zero knowledge proofs (Part 1 - Brief Talk)
Authentication protocols based on zero knowledge proofs (Part 1 - Brief Talk)
Israel Buitron413 views
Patterns for Secure Boot and Secure Storage in Computer Systems von Marcel Winandy
Patterns for Secure Boot and Secure Storage in Computer SystemsPatterns for Secure Boot and Secure Storage in Computer Systems
Patterns for Secure Boot and Secure Storage in Computer Systems
Marcel Winandy656 views
Cryptography and Information Security von Dr Naim R Kidwai
Cryptography and Information SecurityCryptography and Information Security
Cryptography and Information Security
Dr Naim R Kidwai4.2K views
Wireless sensor Network using Zero Knowledge Protocol ppt von sofiakhatoon
Wireless sensor Network using Zero Knowledge Protocol pptWireless sensor Network using Zero Knowledge Protocol ppt
Wireless sensor Network using Zero Knowledge Protocol ppt
sofiakhatoon5.8K views
Mã hóa đường cong Elliptic von LE Ngoc Luyen
Mã hóa đường cong EllipticMã hóa đường cong Elliptic
Mã hóa đường cong Elliptic
LE Ngoc Luyen8.3K views
Cryptography and Voting von Ben Adida
Cryptography and VotingCryptography and Voting
Cryptography and Voting
Ben Adida2.9K views
Introduction to Elliptic Curve Cryptography von David Evans
Introduction to Elliptic Curve CryptographyIntroduction to Elliptic Curve Cryptography
Introduction to Elliptic Curve Cryptography
David Evans2.5K views
Palm Vein Technology von Manav Mittal
Palm Vein TechnologyPalm Vein Technology
Palm Vein Technology
Manav Mittal7.4K views
Oruta privacy preserving public auditing for shared data in the cloud von Adz91 Digital Ads Pvt Ltd
Oruta privacy preserving public auditing for shared data in the cloud Oruta privacy preserving public auditing for shared data in the cloud
Oruta privacy preserving public auditing for shared data in the cloud
Hidden Dangers Lurking in E-Commerce and Reducing Fraud with the Right SSL Ce... von CheapSSLsecurity
Hidden Dangers Lurking in E-Commerce and Reducing Fraud with the Right SSL Ce...Hidden Dangers Lurking in E-Commerce and Reducing Fraud with the Right SSL Ce...
Hidden Dangers Lurking in E-Commerce and Reducing Fraud with the Right SSL Ce...
CheapSSLsecurity519 views

Similar a Elliptic Curve Cryptography and Zero Knowledge Proof

Blockchain Technology - Week 6 - Role of Cryptography in Blockchain von
Blockchain Technology - Week 6 - Role of Cryptography in BlockchainBlockchain Technology - Week 6 - Role of Cryptography in Blockchain
Blockchain Technology - Week 6 - Role of Cryptography in BlockchainFerdin Joe John Joseph PhD
484 views37 Folien
Homomorphic Encryption von
Homomorphic EncryptionHomomorphic Encryption
Homomorphic EncryptionVictor Pereira
4.3K views20 Folien
ECC_basics.ppt von
ECC_basics.pptECC_basics.ppt
ECC_basics.pptRudraChandanSingh
17 views88 Folien
sheet6.pdf von
sheet6.pdfsheet6.pdf
sheet6.pdfaminasouyah
2 views35 Folien
doc6.pdf von
doc6.pdfdoc6.pdf
doc6.pdfaminasouyah
3 views35 Folien
paper6.pdf von
paper6.pdfpaper6.pdf
paper6.pdfaminasouyah
2 views35 Folien

Similar a Elliptic Curve Cryptography and Zero Knowledge Proof(20)

WEEK 4- DLD-GateLvelMinimization.pptx von TaoqeerRajput
WEEK 4- DLD-GateLvelMinimization.pptxWEEK 4- DLD-GateLvelMinimization.pptx
WEEK 4- DLD-GateLvelMinimization.pptx
TaoqeerRajput5 views
Elliptical curve cryptography von Barani Tharan
Elliptical curve cryptographyElliptical curve cryptography
Elliptical curve cryptography
Barani Tharan3.7K views
On-Homomorphic-Encryption-and-Secure-Computation.ppt von ssuser85a33d
On-Homomorphic-Encryption-and-Secure-Computation.pptOn-Homomorphic-Encryption-and-Secure-Computation.ppt
On-Homomorphic-Encryption-and-Secure-Computation.ppt
ssuser85a33d2 views
parameterized complexity for graph Motif von AMR koura
parameterized complexity for graph Motifparameterized complexity for graph Motif
parameterized complexity for graph Motif
AMR koura439 views
Demystifying Zero Knowledge Proofs [FINAL].pptx von RedWhite12
Demystifying Zero Knowledge Proofs [FINAL].pptxDemystifying Zero Knowledge Proofs [FINAL].pptx
Demystifying Zero Knowledge Proofs [FINAL].pptx
RedWhite1271 views

Último

Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De... von
Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De...Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De...
Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De...Moses Kemibaro
35 views38 Folien
"Surviving highload with Node.js", Andrii Shumada von
"Surviving highload with Node.js", Andrii Shumada "Surviving highload with Node.js", Andrii Shumada
"Surviving highload with Node.js", Andrii Shumada Fwdays
58 views29 Folien
VNF Integration and Support in CloudStack - Wei Zhou - ShapeBlue von
VNF Integration and Support in CloudStack - Wei Zhou - ShapeBlueVNF Integration and Support in CloudStack - Wei Zhou - ShapeBlue
VNF Integration and Support in CloudStack - Wei Zhou - ShapeBlueShapeBlue
207 views54 Folien
Qualifying SaaS, IaaS.pptx von
Qualifying SaaS, IaaS.pptxQualifying SaaS, IaaS.pptx
Qualifying SaaS, IaaS.pptxSachin Bhandari
1.1K views8 Folien
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or... von
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...ShapeBlue
199 views20 Folien
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha... von
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...ShapeBlue
183 views18 Folien

Último(20)

Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De... von Moses Kemibaro
Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De...Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De...
Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De...
Moses Kemibaro35 views
"Surviving highload with Node.js", Andrii Shumada von Fwdays
"Surviving highload with Node.js", Andrii Shumada "Surviving highload with Node.js", Andrii Shumada
"Surviving highload with Node.js", Andrii Shumada
Fwdays58 views
VNF Integration and Support in CloudStack - Wei Zhou - ShapeBlue von ShapeBlue
VNF Integration and Support in CloudStack - Wei Zhou - ShapeBlueVNF Integration and Support in CloudStack - Wei Zhou - ShapeBlue
VNF Integration and Support in CloudStack - Wei Zhou - ShapeBlue
ShapeBlue207 views
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or... von ShapeBlue
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...
ShapeBlue199 views
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha... von ShapeBlue
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
ShapeBlue183 views
Elevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlue von ShapeBlue
Elevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlueElevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlue
Elevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlue
ShapeBlue224 views
KVM Security Groups Under the Hood - Wido den Hollander - Your.Online von ShapeBlue
KVM Security Groups Under the Hood - Wido den Hollander - Your.OnlineKVM Security Groups Under the Hood - Wido den Hollander - Your.Online
KVM Security Groups Under the Hood - Wido den Hollander - Your.Online
ShapeBlue225 views
Enabling DPU Hardware Accelerators in XCP-ng Cloud Platform Environment - And... von ShapeBlue
Enabling DPU Hardware Accelerators in XCP-ng Cloud Platform Environment - And...Enabling DPU Hardware Accelerators in XCP-ng Cloud Platform Environment - And...
Enabling DPU Hardware Accelerators in XCP-ng Cloud Platform Environment - And...
ShapeBlue108 views
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ... von Jasper Oosterveld
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue von ShapeBlue
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlueWhat’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue
ShapeBlue265 views
Digital Personal Data Protection (DPDP) Practical Approach For CISOs von Priyanka Aash
Digital Personal Data Protection (DPDP) Practical Approach For CISOsDigital Personal Data Protection (DPDP) Practical Approach For CISOs
Digital Personal Data Protection (DPDP) Practical Approach For CISOs
Priyanka Aash162 views
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue von ShapeBlue
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlueCloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue
ShapeBlue139 views
"Package management in monorepos", Zoltan Kochan von Fwdays
"Package management in monorepos", Zoltan Kochan"Package management in monorepos", Zoltan Kochan
"Package management in monorepos", Zoltan Kochan
Fwdays34 views
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue von ShapeBlue
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue
ShapeBlue152 views
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ... von ShapeBlue
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...
ShapeBlue129 views
Why and How CloudStack at weSystems - Stephan Bienek - weSystems von ShapeBlue
Why and How CloudStack at weSystems - Stephan Bienek - weSystemsWhy and How CloudStack at weSystems - Stephan Bienek - weSystems
Why and How CloudStack at weSystems - Stephan Bienek - weSystems
ShapeBlue247 views
Transcript: Redefining the book supply chain: A glimpse into the future - Tec... von BookNet Canada
Transcript: Redefining the book supply chain: A glimpse into the future - Tec...Transcript: Redefining the book supply chain: A glimpse into the future - Tec...
Transcript: Redefining the book supply chain: A glimpse into the future - Tec...
BookNet Canada41 views
The Role of Patterns in the Era of Large Language Models von Yunyao Li
The Role of Patterns in the Era of Large Language ModelsThe Role of Patterns in the Era of Large Language Models
The Role of Patterns in the Era of Large Language Models
Yunyao Li91 views

Elliptic Curve Cryptography and Zero Knowledge Proof

  • 1. Elliptic Curve Cryptography and Zero Knowledge Proof Nimish Joseph
  • 2. AGENDA • • • • • • Mathematical Foundations Public Key Cryptography Elliptic Curve Elliptic Curve Cryptography Elliptic Curve over Prime Fields Zero Knowledge Proof 06-Nov-2013 ECC and Zero Knowledge Proof 2
  • 3. Let’s Build the Foundation!
  • 4. Mathematical Background for Cryptography • Modulo Arithmetic d=n*q + r, 0 ≤r<n. we say this as “d is equal to r modulo n” r ≡ d (mod n) 5 ≡ 26 (mod 7) 06-Nov-2013 ECC and Zero Knowledge Proof 4
  • 5. Group • Basic algebraic structure • A pair <G,*>, where G is a set and * is a binary operation such that the following hold Closure Associativity Identity Element Inverse < Zn, +n > 06-Nov-2013 ECC and Zero Knowledge Proof 5
  • 6. Ring A triplet < R, +, *>, where + and * are binary operations and R is a set satisfying the following properties: <R, +> is a commutative group For all x, y, and z in R x*y is also in R x*(y*z)=(x*y)*z x*(y+z)= (x*y)+(x*z ) < Zn, +n, *n> 06-Nov-2013 ECC and Zero Knowledge Proof 6
  • 7. Fields • <R, +, * > is a commutative ring with : R has a multiplicative identity Each element, x, in R (except for 0) has an inverse element in R , denoted by x-1 <Zn, +n, *n > where n is prime. 06-Nov-2013 ECC and Zero Knowledge Proof 7
  • 8. Cryptography - Basics • Private Key Cryptography • Public Key Cryptography 06-Nov-2013 ECC and Zero Knowledge Proof 8
  • 9. Public-Key Cryptosystems Authentication: Only A can generate the encrypted message 06-Nov-2013 ECC and Zero Knowledge Proof Secrecy: Only B can Decrypt the message 9
  • 12. RSA • • • • • Choose two large primes p and q n=p*q φ(n)= (p-1)*(q-1) Choose e, such that gcd(e, φ(n)) = 1 Compute d, such that d = e-1mod φ(n) C = Me mod n M= Cd mod n 06-Nov-2013 ECC and Zero Knowledge Proof 12
  • 13. Discrete Logarithmic Problem y = gx mod p Challenge : Given y, g and p (g and p very large) it is not VERY EASY(impossible) to calcuate x. 06-Nov-2013 ECC and Zero Knowledge Proof 13
  • 14. Diffie-Hellman Key Exchange ga mod p gb mod p K = (gb mod p)a = gab mod p 06-Nov-2013 K = (ga mod p)b = gab mod p ECC and Zero Knowledge Proof 14
  • 15. El Gamal Encryption • • • • K=gamodp. (p,g,K) public and (a) private Choose r such that gcd(r,p-1)=1 C1= gr mod p C2= (m*Kr) mod p... m is the message Sends(C1, C2) • To Decrypt C1-a*C2 mod p =m 06-Nov-2013 ECC and Zero Knowledge Proof 15
  • 17. Elliptic Curve Cryptography • Elliptic Curve (EC) systems as applied to cryptography were first proposed in 1985 independently by Neal Koblitz and Victor Miller. • The discrete logarithm problem on elliptic curve groups is believed to be more difficult than the corresponding problem in (the multiplicative group of nonzero elements of) the underlying finite field. 06-Nov-2013 ECC and Zero Knowledge Proof 17
  • 18. What Is Elliptic Curve Cryptography (ECC)? • Elliptic curve cryptography [ECC] is a public-key cryptosystem just like RSA, Rabin, and El Gamal. • Every user has a public and a private key. – Public key is used for encryption/signature verification. – Private key is used for decryption/signature generation. • Elliptic curves are used as an extension to other current cryptosystems. 06-Nov-2013 ECC and Zero Knowledge Proof 18
  • 19. Using Elliptic Curves In Cryptography • The central part of any cryptosystem involving elliptic curves is the elliptic group. • All public-key cryptosystems have some underlying mathematical operation. – RSA has exponentiation (raising the message or ciphertext to the public or private values) – ECC has point multiplication (repeated addition of two points). 06-Nov-2013 ECC and Zero Knowledge Proof 19
  • 20. General form of a EC • An elliptic curve is a plane curve defined by an equation of the form y  x  ax  b 2 3 Examples 06-Nov-2013 ECC and Zero Knowledge Proof 20
  • 21. EC as a group An Elliptic Curve is a curve given by an equation y2 = f(x) Where f(x) is a square-free (no double roots) cubic or a quartic polynomial y2 = x3 + ax + b 4a3 + 27b2 ≠ 0 EC(-3,2) So y2 = x3 is not an elliptic curve, but y2 = x3-1 is 06-Nov-2013 ECC and Zero Knowledge Proof 21
  • 22. Elliptical Curve as a Group - Properties • P + Q = Q + P (commutativity) • (P + Q) + R = P + (Q + R) (associativity) • P + O = O + P = P (existence of an identity element) • there exists ( − P) such that − P + P = P + ( − P) = O (existence of inverses) 06-Nov-2013 ECC and Zero Knowledge Proof 22
  • 23. Elliptic Curve Picture y • Consider elliptic curve E: y 2 = x 3 - x + 1 P2 P1 x R 06-Nov-2013 • If P 1 and P 2 are on E , we can define R = P1 + P2 as shown in picture • Addition is all we need ECC and Zero Knowledge Proof 23
  • 24. Case 1 : R’ ≠P1, R’≠ P2, R’≠ 0 • • • • • • • P1+P2 = -R’ = R R = (x3,y3) Let y=mx+c m= (y2-y1)/(x2-x1) y2 = (mx+c)2 = m2x2+2mxc+c2 x3+ax+b = m2x2+2mxc+c2 x3 - m2x2 + (a-2mc)x + (b- c2 ) = 0 06-Nov-2013 ECC and Zero Knowledge Proof 24
  • 25. • (x-x1)(x-x2)(x-x3)=0 • x3-x2 (x1+x2+x3) + x (x1x2+x2x3+x3x1) – x1x2x3 = 0 • x3 = m2 –x1 –x2 • m= ((-y3)-y1)/(x3-x1) • y3= -y1 +m(x1-x3) 06-Nov-2013 ECC and Zero Knowledge Proof 25
  • 26. Case 2 : P1= -P2 or R’ = 0 P1 P2 06-Nov-2013 ECC and Zero Knowledge Proof 26
  • 27. Case 3: R’=P1 or R’=P2 Tangent Line to EC at P2 R P1 P2 06-Nov-2013 ECC and Zero Knowledge Proof 27
  • 28. Case 4 : Doubling of Point P Tangent Line to EC at P R P 2*P 06-Nov-2013 ECC and Zero Knowledge Proof 28
  • 29. P1=P2 • • • • • 2y * dy/dx =3x2 + a Slope of the tangent m = dy/dx = (3x2 + a)/2y At (x1,y1) = (3x12 + a)/2y1 x3 = m2 –2x1 y3= -y1 +m(x1-x3) 06-Nov-2013 ECC and Zero Knowledge Proof 29
  • 30. Work Out ! • EC(-1,1). A(1,-1) B( 1/4, 7/8). A+B = ? • m = (-1-7/8)/(1-1/4) = -5/2 • x3 = (-5/2)2 -1 -1/4 =5 • y3 = -(-1)+(-5)/2*(1-5) = 11 (5,11) 06-Nov-2013 ECC and Zero Knowledge Proof 30
  • 31. Elliptic Curve over Prime Fields • Points on the curve y2 =x3 +2x +4 0 (0,2) (0,11) (2,4) (2,9) (5,3) (5,10) (7,6) (7,7) (8,5) (8,8) (9,6) (9,7) (10,6) (10,7) (12,1) (12,11) 06-Nov-2013 ECC and Zero Knowledge Proof 31
  • 32. Hasse’s Theorem p +1 -2√p ≤ #EC(Fp) ≤ p+1+2√p Establishes the tight bounds on the number of points on the EC 06-Nov-2013 ECC and Zero Knowledge Proof 32
  • 33. Work Out! • EC(2,4) over F13 • A = (2,4) B = (8,5) . Compute A+B m = (5-4)/(8-2) mod 13 =11 x3 = (112 -2 -8) mod 13 = 7 y3 = (-4 +11*(2-7)) mod 13 = 6 A+B =(7,6) • Compute 2A = (8,5) 06-Nov-2013 ECC and Zero Knowledge Proof 33
  • 34. ECs Over Binary Fields • y2+xy =x3 +ax2 +b, b!=0 • A=(x,y) : -A = (x,x+y) • For adding two points m= (y2+y1)/(x2+x1) x3 = m2+m +x1 +x2 + a y3 = m(x1+x3) +x3 +y1 • Point doubling m = x1 +(y1/x1) x3 = m2+m+a y3 = x12 +(m+1)*x3 06-Nov-2013 ECC and Zero Knowledge Proof 34
  • 35. Discrete Logarithm Problem on Elliptic Curves • The problem of computing k given the EC parameters, G and kG, is called the discrete log problem for points on an elliptic curve. • This problem is known to be infeasible in EC groups beyond 2120 elements 06-Nov-2013 ECC and Zero Knowledge Proof 35
  • 36. Computing kG • kG = G + G + ...+ G k times • To compute 168G , compute the series obtained by doubling the point, 2G, 4G, 8G, 16G, 32G,... • Now 168 = 10101000 in binary 168G = 128G+32G+8G O(log k) 06-Nov-2013 ECC and Zero Knowledge Proof 36
  • 37. Diffie-Hellman Modified • Select <p,a,b,G,n,h> • Alice chooses x and send xG • Bob chooses y and send yG • Alice on receipt compute x(yG) =xyG • Bob on receipt compute y(xG) = xyG 06-Nov-2013 ECC and Zero Knowledge Proof 37
  • 38. El Gamal Modified • • • • • • k= aG Choose r; Compute rG Compute m + rk Send <rG, m + rk> To decrypt a(rG) = rk m + rk – rk = m 06-Nov-2013 ECC and Zero Knowledge Proof 38
  • 39. Comparison of key sizes for same level of security ECC RSA • 110 • 512 • 163 • 1024 • 256 • 3072 • 384 • 7680 • 512 • 15360 06-Nov-2013 ECC and Zero Knowledge Proof 39
  • 40. RSA vs ECC Timings • To encrypt ECC takes nearly 10 times of that of RSA upto a key size of 384(ECC) and 7680(RSA). • For Decryption RSA takes more time for a key size higher than 1024 when compared to ECC (163) 06-Nov-2013 ECC and Zero Knowledge Proof 40
  • 41. Applications of ECC • Many devices are small and have limited storage and computational power • Where can we apply ECC? – – – – Wireless communication devices Smart cards Web servers that need to handle many encryption sessions Any application where security is needed but lacks the power, storage and computational power that is necessary for our current cryptosystems 06-Nov-2013 ECC and Zero Knowledge Proof 41
  • 42. A Conference on ECC • ECC 2013: https://www.cosic.esat.kuleuven.be/ecc2013 06-Nov-2013 ECC and Zero Knowledge Proof 42
  • 44. Zero Knowledge Proofs (ZKP) • Goldwasser, Micali, and Rackoff, 1985. • ZKP instance of Interactive Proof System • Interactive Proof Systems – Challenge-Response Authentication – Prover and Verifier – Verifier Accepts or Rejects the Prover 06-Nov-2013 ECC and Zero Knowledge Proof 44
  • 45. ZKP • Zero knowledge Transfer between the Prover and the Verifier • The verifier accepts or rejects the proof after multiple challenges and responses • Probabilistic Proof Protocol • Overcomes Problems with Password Based Authentication 06-Nov-2013 ECC and Zero Knowledge Proof 45
  • 46. Zero Knowledge Proofs • • • • • • Introduction Properties of ZKP Advantages of ZKP Examples Fiat-Shamir Identification Protocol Real-Time Applications 06-Nov-2013 ECC and Zero Knowledge Proof 46
  • 47. Zero Knowledge Proofs (ZKP) • Goldwasser, Micali, and Rackoff, 1985. • ZKP instance of Interactive Proof System • Interactive Proof Systems – Challenge-Response Authentication – Prover and Verifier – Verifier Accepts or Rejects the Prover 06-Nov-2013 ECC and Zero Knowledge Proof 47
  • 48. Properties of ZKP • Completeness – Succeeds with high probability for a true assertion given an honest verifier and an honest prover. • Soundness – Fails for any other false assertion, given a dishonest prover and an honest verifier • Zero Knowledge 06-Nov-2013 ECC and Zero Knowledge Proof 48
  • 49. Advantages of ZKP • • • • As name Suggests – Zero Knowledge Transfer Computational Efficiency – No Encryption No Degradation of the protocol Based on problems like discrete logarithms and integer factorization 06-Nov-2013 ECC and Zero Knowledge Proof 49
  • 50. Classic Example • Ali Baba’s Cave Alice has to convince Bob She knows the secret to open the cave door without telling the secret (source: http://www.rsasecurity.com/rsalabs/faq/2-1-8.html) 06-Nov-2013 ECC and Zero Knowledge Proof 50
  • 51. Fiat-Shamir Identification Protocol • 3 Message Protocol • Alice A, the Prover and Bob B, the Verifier A random modulus n, product of two large prime numbers p and q generated by a trusted party and made public • Prover chooses secret s relatively prime to n • prover computes v = s2 mod n, where v is the public key A  B A  B A  B 06-Nov-2013 : x = r2 mod n : e  { 0,1} : y = r * se mod n. Is y2 = x * ve ? ECC and Zero Knowledge Proof 51
  • 52. Fiat-Shamir Identification Protocol (contd) • Alice chooses a random number r (1  r  n-1) • Sends to Bob x = r2 mod n – commitment • Bob randomly sends either a 0 or a 1 ( e  { 0,1}) as his challenge • Depending on the challenge from Bob, Alice computes the response as y = r if e = 0 or otherwise y = r*s mod n • Bob accepts the response upon checking y2  x * ve mod n 06-Nov-2013 ECC and Zero Knowledge Proof 52
  • 53. Fiat-Shamir Identification Protocol (contd) • After many iterations, with a very high probability Bob can verify Alice’s identity • Alice’s response does not reveal the secret s (with y = r or y = r* s mod n) • An intruder can prove Alice’s identity without knowing the secret, if he knows Bob’s challenge in advance: – Generate random r – If expected challenge is 1, send x = r2/v mod n as commitment, and y = r as response – If expected challenge is 0, send x = r mod n as commitment • Probability that any Intruder impersonating the prover can send the right response is only ½ • Probability reduced as iterations are increased • Important - Alice should not repeat r 06-Nov-2013 ECC and Zero Knowledge Proof 53
  • 54. Applications • Watermark Verification – Show the presence of watermark without revealing information about it – prevents from removing the watermark and reselling multiple duplicate copies • Others – e-voting, e-cash etc. 06-Nov-2013 ECC and Zero Knowledge Proof 54
  • 55. References • Network Security and Cryptography, Bernard Menezes • I. Blake, G. Seroussi, and N. Smart, Elliptic Curves in Cryptography, London Mathematical Society 265, Cambridge University Press, 1999 • Overview of Zero-Knowledge Protocols, Jeffrey Knapp • http://en.wikipedia.org/wiki/Elliptic_curve_cryptography as on November 4, 2013 • Koblitz, N. (1987). "Elliptic curve cryptosystems". Mathematics of Computation 48 (177): 203–209. JSTOR 2007884 • Menezes, A.; Okamoto, T.; Vanstone, S. A. (1993). "Reducing elliptic curve logarithms to logarithms in a finite field". IEEE Transactions on Information Theory 39 • K. Malhotra, S. Gardner, and R. Patz, Implementation of Elliptic-Curve Cryptography on Mobile Healthcare Devices, Networking, Sensing and Control, 2007 IEEE International Conference on, London, 15–17 April 2007 Page(s):239–244 06-Nov-2013 ECC and Zero Knowledge Proof 55
  • 56. References • D. Hankerson, A. Menezes, and S.A. Vanstone, Guide to Elliptic Curve Cryptography, Springer-Verlag, 2004 • http://en.wikipedia.org/wiki/Zero-knowledge_proof as on November 4, 2013 • Stinson, Douglas Robert (2006), Cryptography: Theory and Practice (3rd ed.), London: CRC Press, ISBN 978-1-58488-508-5 • Agrawal, Manindra; Kayal, Neeraj; Saxena, Nitin (2004). "PRIMES is in P". Annals of Mathematics 160 (2): 781–793. • Theory of Computing Course, Cornell University 2009, Zero knowledge proofs • A Survey of Zero-Knowledge Proofs with Applications to Cryptography, Austin Mohr Southern Illinois University at Carbondale 06-Nov-2013 ECC and Zero Knowledge Proof 56
  • 58. Q&A