elliptic curve crypto & ecc diffie-hellman
DESCRIPTION
Elliptic Curve Crypto & ECC Diffie-Hellman. Presenter : Le Thanh Binh. Outline. What is Elliptic Curve ? Addition on an elliptic curve Elliptic Curve Crypto (ECC) ECC Diffie–Hellman . Lets start with a puzzle…. - PowerPoint PPT PresentationTRANSCRIPT
Elliptic Curve Crypto &
ECC Diffie-Hellman
Presenter: Le Thanh Binh
Outline
1. What is Elliptic Curve ?
2. Addition on an elliptic curve
3. Elliptic Curve Crypto (ECC)
4. ECC Diffie–Hellman
Lets start with a puzzle…• What is the number of balls that may be
piled as a square pyramid and also rearranged into a square array?
Lets start with a puzzle…• What is the number of balls that may be
piled as a square pyramid and also rearranged into a square array?
• Sol: Let x be the height of the pyramid… Thus,
We also want this to be a square: Hence,
(4900 balls) y=70
Graphical Representation
Curves of this nature are called ELLIPTIC
CURVES
What is an Elliptic Curve ?
• An elliptic curve E is the graph of an equation of the form
y2 = x3 + ax + b
“Elliptic curve” is not a cryptosystem
Addition on an elliptic curve mod p
The Elliptic Curve E
Addition on an elliptic curve mod p
Start with two points P and Q on E
Addition on an elliptic curve mod p
Draw the line L through P and Q.
Addition on an elliptic curve mod pThe line L intersects the cubic curve E in a third
point. Call that third point R.
Addition on an elliptic curve mod pDraw the vertical line through R.
It hits E in another point.
Addition on an elliptic curve mod pWe define the sum of P and Q on E to be the
reflected point. We denote it by P ⊕ Q or just P + Q
Addition on an elliptic curve mod p
If P1 and P2 are on E, we can define P3 = P1 + P2
P1
P2
P3
x
y
Addition on an elliptic curve mod pSuppose that we want to add the points
on the elliptic curve
Let the line connecting P1 to P2 be
L : y = mx + vExplicitly, the slope and y-intercept of L are given by
Addition on an elliptic curve mod pWe find the intersection of
by solving
We already know that x1 and x2 are solutions, so we can find the third solution x3 by comparing the two sides of
Equating the coefficients
and hence
Then we compute y3
And finally
Addition on an elliptic curve mod p
ExampleConsider y2 = x3 + 2x + 3 (mod 5)
x = 0 y2 = 3 no solution (mod 5)x = 1 y2 = 6 = 1 y = 1,4 (mod 5)
x = 2 y2 = 15 = 0 y = 0 (mod 5)
x = 3 y2 = 36 = 1 y = 1,4 (mod 5)x = 4 y2 = 75 = 0 y = 0 (mod 5)
Then points on the elliptic curve are(1,1) (1,4) (2,0) (3,1) (3,4) (4,0) and the
point at infinity:
What is (1,4) + (3,1) = P3 = (x3,y3)?
Consider y2 = x3 + 2x + 3 (mod 5)What is (1,4) + (3,1) = P3 = (x3,y3)?
P1
P2
P3
x
y
y=mx+v
y2=x3+Ax+B
Addition on an elliptic curve mod p
m = (1-4)(3-1)-1 = -32-1
((a mod n)(b mod n)) mod n = ab mod n
= (2)(3) mod 5
= 6 mod 5
= 1
= ((-3 mod 5)(2-1 mod 5))mod5
Consider y2 = x3 + 2x + 3 (mod 5)What is (1,4) + (3,1) = P3 = (x3,y3)?
Addition on an elliptic curve mod p
m = 1 x3 = 1 - 1 - 3 = 2 (mod 5)
y3 = 1(1-2) - 4 = 0 (mod 5)
On this curve, (1,4) + (3,1) = (2,0)
P1
P2
P3
x
y
y=mx+v
y2=x3+Ax+B
Elliptic Curve Crypto (ECC)
Elliptic curve cryptography [ECC] is a
public-key cryptosystem (just like RSA)
Public Public
Private Private
Public-key cryptosystem
Public PublicPublic-key cryptosystem
???
Secret SecretPublic-key cryptosystem
Addition on an elliptic curve
ECC Diffie-Hellman• Public: Elliptic curve and point (x,y) on curve• Private: Alice’s A and Bob’s B
Alice, A Bob, B
A(x,y)
B(x,y)
Alice computes A(B(x,y)) Bob computes B(A(x,y)) These are the same since AB = BA
• Public: Curve y2 = x3 + 7x + b (mod 37) and point (2,5) b = 3
• Alice’s private: A = 4• Bob’s private: B = 7• Alice sends Bob: 4(2,5) = (7,32)• Bob sends Alice: 7(2,5) = (18,35)• Alice computes: 4(18,35) = (22,1)• Bob computes: 7(7,32) = (22,1)
ECC Diffie–Hellman - Example
Addition 4 times
THANK YOU FOR LISTENING----------- THE END ------------
http://www-cs-students.stanford.edu/~tjw/jsbn/ecdh.html
Demonstration