SlideShare a Scribd company logo
1 of 41
Download to read offline
Elliptic Curves and
Elliptic Curve
Cryptography
Khandaker Md. Al-Amin (PhD Student)
Secure Wireless System Lab
Information and Communication Systems
Okayama University
Outline
• Groups, Abelian Groups and Fields
• Elliptic Curves Over the Real Numbers
• Elliptic Curves Over a Finite Field
• Elliptic Curve Discrete Logarithm Problem
Elliptic Curves:
Background
• Elliptic Curve itself is not a crypto-system.
• Elliptic curves have been extensively studied long
before it is introduced in Cryptography as algebraic/
geometric entities.
• Elliptic curve was applied to cryptography in 1985. It
was independently proposed by Neal Koblitz from
the University of Washington, and Victor Miller, at
IBM.
What is Elliptic Curve?
• An elliptic curve E is the graph of an equation of the
form y2 = x3 + ax + b
• Also includes a “Point at infinity” denoted by ‘O’.
• What do elliptic curves over Real numbers look like?
y^2=x^3-2x+0.8
Elliptic Curves Over the
Real Numbers
๏ Let a and b be real numbers.
An elliptic curve E over the
field of real numbers R is the
set of points (x,y) with x and y
in R that satisfy the equation
y2 = x3 + ax + b
๏ If the cubic polynomial x3+ax
+b has no repeated roots, we
say the elliptic curve is non-
singular.
๏ A necessary and sufficient
condition for the cubic
polynomial x3+ax+b to have
distinct roots is 4a3 + 27 b2 ≠
0.
Group Definition
1. A group is a non-empty set G with a binary operation * that
satisfies the following axioms for all a, b, c in G:
2. Closure: a*b in G
3. Associativity: (a*b)*c = a*(b*c)
4. Identity: There exists an element e in G such that a* e = a =
e*a. We call e the identity element of G.
5. Inverse: For each a in G, there exists an element d in G such
that a*d = e = d*a. We call d the inverse of a.
6. If a group G also satisfies the following axiom for all a, b in G:
7. Commutativity: a*b = b*a, we say G is an abelian group.
8. The order of a group G, denoted |G| is the number of
elements in G. If |G| < Infinity, we say G has finite order.
Field Definition
1. A field F is a non-empty set with two binary operations,
usually denoted + and *, which satisfy the following
axioms for all a, b, c in F:
1. a+b is in F
2. (a+b)+c = a+(b+c)
3. a+b = b+a
4. There exists 0F in F such that a+0F = a = 0F+a. We call
0F the additive identity.
5. For each a in F, there exists an element x in F such
that a+x = 0F = x+a. We call x the additive inverse of a
and write x = -a.
Field Definition (cont.)
6. Field axioms (cont.): For all a, b, c in F,
7. a*b in F
8. (a*b)*c = a*(b*c)
9. a*b = b*a
10. There exists 1F in F, 1F ≠ 0F, such that for each a in F,
a*1F = a = 1F*a. We call 1F the multiplicative identity.
11. For each a ≠ 0F in F, there exists an element y in F
such that a*y = 1F = y*a. We call y the multiplicative
inverse of a and write y = a-1.
12. a*(b+c) = a*b + a*c and (b+c)*a = b*a + c*a.
(Distributive Law)
Field Examples
• Note that any field is an abelian group under +
and the non-zero elements of a field form an
abelian group under *.
• Some examples of fields:
• Real numbers
• Zp, the set of integers modulo p, where p is a prime
number is a finite field.
• For example,
• Z7 = {0, 1, 2, 3, 4, 5, 6} and Z23 = {0, 1, 2, 3, … , 22}.
An Elliptic Curve Lemma
Elliptic Curve Lemma:
Any line containing two points of a non-singular
elliptic curve contains a unique third point of the
curve, where
- Any vertical line contains O, the point at infinity.
- Any tangent line contains the point of tangency twice.
Geometric Addition of
Elliptic Curve
• Using the Elliptic Curve Lemma, we can define
a way to geometrically “add” points P and Q on
a non-singular elliptic curve E.
• First, define the point at infinity to be the
additive identity, i.e. for all P in E,
P + O = P = O+ P.
• Next, define the negative of the point at infinity
to be - O = O.
Geometric Addition of
Elliptic Curve (cont.)
• For P = (xP,yP), define the negative of P to be -P =
(xP,-yP), the reflection of P about the x-axis.
• From the elliptic curve equation, y2 = x3 + ax + b
we see that whenever P is in E, -P is also in E.
Geometric Addition of
Elliptic Curve (cont.)
• Assume that neither P nor Q is the point at infinity.
• For P = (xP,yP) and Q = (xQ,yQ) in E, there are three
cases to consider:
1. P and Q are distinct points with xP ≠ xQ.
2. Q = -P, so xP = xQ and yP = - yQ.
3. Q = P, so xP = xQ and yP = yQ.
Geometric Case 1: xP ≠ xQ
• By the Elliptic Curve Lemma, the
line L through P and Q will
intersect the curve at one other
point.
• Call this third point -R.
• Reflect the point -R about the x-
axis to point R.
• P+Q = R
y2 = x3-7x+6
-3 -2 -1 1 2 3 4
-4
-2
2
4
P
Q
- R
R
Geometric Case 2: xP = xQ
and yP = - yQ
• In this case, the line L through
P and Q = -P is vertical.
• By the Elliptic Curve Lemma, L
will also intersect the curve at
O.
• P+Q = P+(-P) = O
• It follows that the additive
inverse of P is -P.
-2 -1 1 2 3 4
-4
-3
-2
-1
1
2
3
4
P
Q
y2 = x3-2x+4
Geometric Case 3: xP=xQ and
yP = yQ
• Since P = Q, the line L through P and Q is
tangent to the curve at P.
• If yP = 0, then P = -P, so we are in Case
2, and P+P = O.
• For yP ≠ 0, the Elliptic Curve Lemma says
that L will intersect the curve at another
point, -R.
• As in Case 1, reflect -R about the x-axis
to point R.
• P+P = R
• Notation: 2P = P+P
y2 = x3-7x+6
-3 -2 -1 1 2 3 4
-4
-2
2
4
P
- R
R
Algebraic Elliptic Curve
Addition
• Geometric elliptic curve addition is useful for
illustrating the idea of how to add points on an
elliptic curve.
• Using algebra, we can make this definition more
clear for implementation point of view.
• As in the geometric definition, the point at infinity
is the identity, - O = O, and for any point P in E,
-P is the reflection of P about the x-axis.
Algebraic Elliptic Curve
Addition (cont.)
1. In what follows, assume that neither P nor Q is
the point at infinity.
2. As in the geometric case, for P = (xP,yP) and Q =
(xQ,yQ) in E, there are three cases to consider:
1. P and Q are distinct points with xP ≠ xQ.
2. Q = -P, so xP = xQ and yP = - yQ.
3. Q = P, so xP = xQ and yP = yQ.
Algebraic Case 1: xP ≠ xQ
• First we consider the case where P = (xP,yP) and Q = (xQ,yQ) with
xP ≠ xQ.
• The equation of the line L though P and Q is y = λ x+ν, where
• In order to find the points of intersection of L and E, substitute
λ x + ν for y in the equation for E to obtain the following:
• The roots of (2) are the x-coordinates of the three points of
intersection.
• Expanding (2), we find:
Algebraic Case 1: xP ≠ xQ
(cont.)
• Since a cubic equation over the real numbers has either one or
three real roots, and we know that xP and xQ are real roots, it
follows that (3) must have a third real root, xR.
• Writing the cubic on the left-hand side of (3) in factored form
we can expand and equate coefficients of like terms to find
Algebraic Case 1: xP ≠ xQ
(cont.)
• We still need to find the y-coordinate of the third point, -R = (xR,-yR) on
the curve E and line L.
• To do this, we can use the fact that the slope of line L is determined by
the points P and -R, both of which are on L:
• Thus, the sum of P and Q will be the point R = (xR, yR) with
where
Algebraic Case 2: xP = xQ and
yP = - yQ
• In this case, the line L through P and Q = -P is
vertical, so L contains the point at infinity.
• As in the geometric case, we define P+Q = P+(-P)
= O, which makes P and -P additive inverses.
Algebraic Case 3: xP=xQ and
yP = yQ
• Finally, we need to look at the case when Q = P.
• If yP = 0, then P = -P, so we are in Case 2, and P+P
= O.
• Therefore, we can assume that yP ≠ 0.
• Since P = Q, the line L through P and Q is the line
tangent to the curve at (xP,yP).
Algebraic Case 3: xP=xQ and
yP = yQ
• The slope of L can be found by implicitly
differentiating the equation y2 = x3 + ax + b and
substituting in the coordinates of P:
• Arguing as in Case 1, we find that
P+P = 2P = R, with R = (xR,yR), where
Elliptic Curve Groups
From these definitions of addition on an elliptic
curve, it follows that:
1. Addition is closed on the set E.
2. Addition is commutative.
3. O is the identity with respect to addition.
4. Every point P in E has an inverse with respect to
addition, namely -P.
5. The associative axiom also holds.
Elliptic Curves Over Finite
Fields
• Instead of choosing the field of real numbers, we can
create elliptic curves over other fields.
• Let a and b be elements of Zp for p prime, p > 3. An
elliptic curve E over Zp is the set of points (x,y) with x
and y in Zp that satisfy the equation
together with a single element O, called the point at
infinity.
• As in the real case, to get a non-singular elliptic curve,
we’ll require 4a3 + 27 b2 (mod p) ≠ 0 (mod p).
• Elliptic curves over Zp will consist of a finite set of
points.
Addition on Elliptic Curves
over Zp
• Just as in the real case, we can define addition of
points on an elliptic curve E over Zp, for prime p>3.
• This is done in the essentially the same way as the
real case, with appropriate modifications.
Addition on Elliptic Curves
over Zp (cont.)
• Suppose P and Q are points in E.
• Define P + O = O + P = P for all P in E.
• If Q = -P (mod p), then P+Q = O.
• Otherwise, P+Q = R = (xR,yR), where
Cryptography on an Elliptic
Curve
• Using an elliptic curve over a finite field, we can
exchange information securely.
• For example, we can implement a scheme invented
by Whitfield Diffie and Martin Hellman in 1976 for
exchanging a secret key.
Diffie-Hellman Key Exchange
via an Elliptic Curve
1. Alice and Bob publicly agree on
an elliptic curve E over a finite
field Zp.
2. Next Alice and Bob choose a
public base point B on the
elliptic curve E.
3. Alice chooses a random integer
1<α<|E|, computes P = α B, and
sends P to Bob. Alice keeps
her choice of α secret.
4. Bob chooses a random integer
1<β<|E|, computes Q = β B,
and sends Q to Alice. Bob
keeps his choice of β secret.
1. Alice and Bob choose E to
be the curve y2 = x3+x+6
over Z7.
2. Alice and Bob choose the
public base point to be
B=(2,4).
3. Alice chooses α = 4,
computes P = αB = 4(2,4) =
(6,2), and sends P to Bob.
Alice keeps α secret.
4. Bob chooses β = 5,
computes Q = βB = 5(2,4) =
(1,6), and sends Q to Alice.
Bob keeps β secret.
Diffie-Hellman Key Exchange
via an Elliptic Curve (cont.)
5. Alice computes KA = αQ =
α(βB).
6. Bob computes KB = βP =
β(αB).
7. The shared secret key is K
= KA = KB.
Even if Eve knows the base
point B, or P or Q, she will
not be able to figure out α
or β, so K remains secret!
5. Alice computes
KA=αQ = 4(1,6) =
(4,2).
6. Bob computes
KB = βP = 5(6,2) =
(4,2).
7. The shared secret
key is K = (4,2).
Elliptic Curve Discrete
Logarithm Problem
• At the foundation of every crypto-system is a hard mathematical problem
that is computationally infeasible to solve.
• The discrete logarithm problem is the basis for the security of many
crypto-systems including the Elliptic Curve Crypto-system.
• ECC relies upon the difficulty of the Elliptic Curve Discrete Logarithm
Problem (ECDLP).
• Recall that we examined two geometrically defined operations over
certain elliptic curve groups. These two operations were point addition
and point doubling.
• By selecting a point in a elliptic curve group, one can double it to obtain
the point 2P.
• After that, one can add the point P to the point 2P to obtain the point 3P.
• The determination of a point nP in this manner is referred to as Scalar
Multiplication of a point.
• The ECDLP is based upon the intractability of scalar multiplication
products.
Scalar Multiplication
• Scalar Multiplication of Point in EC Additive group is a
combination of point doubling and point addition.
• Under additive notation: computing kP by adding
together k copies of the point P.
• If k = 23; then, kP = 23*P = 2(2(2(2P) + P) + P) + P
• Using multiplicative notation, this operation consists of
multiplying together k copies of the point P, yielding
the point P*P*P*P*…*P = Pk.
Elliptic Curve Discrete
Logarithm Problem
• In multiplicative group Zp*, DLP is: given elements r
and q of the group, and a prime p, find a number k
such that r = qk mod p.
• If the elliptic curve groups is described using
multiplicative notation, then the elliptic curve discrete
logarithm problem is: given points P and Q in the
group, find a number that Pk = Q; k is called the
discrete logarithm of Q to the base P.
• When the elliptic curve group is described using
additive notation, the elliptic curve discrete logarithm
problem is: given points P and Q in the group, find a
number k such that [k]P = Q
Elliptic Curve Discrete
Logarithm Problem
• In the elliptic curve group defined by y
2
= x
3
+ 9x + 17 over F23, 

What is the discrete logarithm k of Q = (4,5) to the base P = (16,5)?
• Naive way to find k is to compute multiples of P until Q is found. The first
few multiples of P are:
P = (16,5)
2P = (20,20)
3P = (14,14)
4P = (19,20)
5P = (13,10)
6P = (7,3)
7P = (8,7)
8P = (12,17)
9P = (4,5)
• Since 9P = (4,5) = Q, the discrete logarithm of Q to the base P is k = 9.
• In a real application, k would be large enough (e.g. 192bit) such that it
would be infeasible to determine k in this manner.
ElGamal Cryptography
• Public-key crypto-system related to D-H
• Uses exponentiation in a finite field
• With security based difficulty of computing discrete
logarithms, as in D-H.
• Each user generates their key
• Chooses a secret key (number): 1 < xA < q-1
• Compute their public key: yA = ax
A mod q
ElGamal Message
Exchange
1. Bob encrypts a message to send to Alice computing
1. Represent message M in range 0 <= M <= q-1
2. chose random integer k with 1 <= k <= q-1
3. compute one-time key K = yA^k mod q
4. Encrypt M as a pair of integers (C1,C2) where C1 = a^k mod q ; C2 = KM
mod q.
2. Alice then recovers message by
1. Recovering key K as K = C1^xA mod q
2. computing M as M = C2 K ^-1 mod q
3. A unique k must be used each time otherwise result is insecure
ElGamal Example
1.Let’s us consider field GF(19) q=19 and a=10
2.Alice computes her key:
1. Chooses xA= 5 & computes yA=10^5 mod 19 = 3
3.Bob send message m=17 as (11,5) by
1. choosing random k=6
2. computing K = yA^k mod q = 3^6 mod 19 = 7
3. computing C1 = ak mod q = 10^6 mod 19 = 11;
4. C2 = KM mod q = 7.17 mod 19 = 5
4.Alice recovers original message by computing:
1. recover K = C1^xA mod q = 11^5 mod 19 = 7
2. compute inverse K^-1 = 7^-1 = 11
3. recover M = C2 K^-1 mod q = 5.11 mod 19 = 17
ElGamal With Elliptic
Curve
• Set up an elliptic curve E over a field 𝔽q and a point P of order N.
• We need a public function f:m↦Pm, which maps messages m to
points Pm on E. It should be invertible, and one way is to use m in
the curve's equation as x and calculate the according y
• Choose a secret key x ∈ [1, N−1] randomly, publish the point Y=[x]P
as public key.
• Encryption: choose random k ∈ [1,N−1] ,then calculate C1 = [k]P and
C2 = kY and calculate Pm = f(m). The cipher text is the tuple
(C1,C2+Pm).
• Decryption: From a cipher text (C,D), calculate C′=[x]C and retrieve
the point Pm with Pm=D−C′=(k([x]P)+Pm)−(x(kP)).
• Then calculate the message m with f^-1(Pm).
Thank you

More Related Content

What's hot

MAC-Message Authentication Codes
MAC-Message Authentication CodesMAC-Message Authentication Codes
MAC-Message Authentication CodesDarshanPatil82
 
Classical encryption techniques
Classical encryption techniquesClassical encryption techniques
Classical encryption techniquesDr.Florence Dayana
 
The Diffie-Hellman Algorithm
The Diffie-Hellman AlgorithmThe Diffie-Hellman Algorithm
The Diffie-Hellman AlgorithmJay Nagar
 
Public Key Cryptography and RSA algorithm
Public Key Cryptography and RSA algorithmPublic Key Cryptography and RSA algorithm
Public Key Cryptography and RSA algorithmIndra97065
 
PUBLIC KEY ENCRYPTION
PUBLIC KEY ENCRYPTIONPUBLIC KEY ENCRYPTION
PUBLIC KEY ENCRYPTIONraf_slide
 
12 Elliptic Curves
12 Elliptic Curves12 Elliptic Curves
12 Elliptic CurvesSam Bowne
 
Elliptic Curve Cryptography: Arithmetic behind
Elliptic Curve Cryptography: Arithmetic behindElliptic Curve Cryptography: Arithmetic behind
Elliptic Curve Cryptography: Arithmetic behindAyan Sengupta
 
Principles of public key cryptography and its Uses
Principles of  public key cryptography and its UsesPrinciples of  public key cryptography and its Uses
Principles of public key cryptography and its UsesMohsin Ali
 
CNIT 141: 12. Elliptic Curves
CNIT 141: 12. Elliptic CurvesCNIT 141: 12. Elliptic Curves
CNIT 141: 12. Elliptic CurvesSam Bowne
 

What's hot (20)

MAC-Message Authentication Codes
MAC-Message Authentication CodesMAC-Message Authentication Codes
MAC-Message Authentication Codes
 
Elliptic curvecryptography Shane Almeida Saqib Awan Dan Palacio
Elliptic curvecryptography Shane Almeida Saqib Awan Dan PalacioElliptic curvecryptography Shane Almeida Saqib Awan Dan Palacio
Elliptic curvecryptography Shane Almeida Saqib Awan Dan Palacio
 
Hash Function
Hash Function Hash Function
Hash Function
 
Asymmetric Cryptography
Asymmetric CryptographyAsymmetric Cryptography
Asymmetric Cryptography
 
RSA ALGORITHM
RSA ALGORITHMRSA ALGORITHM
RSA ALGORITHM
 
Classical encryption techniques
Classical encryption techniquesClassical encryption techniques
Classical encryption techniques
 
The Diffie-Hellman Algorithm
The Diffie-Hellman AlgorithmThe Diffie-Hellman Algorithm
The Diffie-Hellman Algorithm
 
Public key cryptography and RSA
Public key cryptography and RSAPublic key cryptography and RSA
Public key cryptography and RSA
 
1524 elliptic curve cryptography
1524 elliptic curve cryptography1524 elliptic curve cryptography
1524 elliptic curve cryptography
 
Public Key Cryptography and RSA algorithm
Public Key Cryptography and RSA algorithmPublic Key Cryptography and RSA algorithm
Public Key Cryptography and RSA algorithm
 
PUBLIC KEY ENCRYPTION
PUBLIC KEY ENCRYPTIONPUBLIC KEY ENCRYPTION
PUBLIC KEY ENCRYPTION
 
Diffie-hellman algorithm
Diffie-hellman algorithmDiffie-hellman algorithm
Diffie-hellman algorithm
 
Rsa cryptosystem
Rsa cryptosystemRsa cryptosystem
Rsa cryptosystem
 
12 Elliptic Curves
12 Elliptic Curves12 Elliptic Curves
12 Elliptic Curves
 
Cryptography
CryptographyCryptography
Cryptography
 
Elliptic Curve Cryptography: Arithmetic behind
Elliptic Curve Cryptography: Arithmetic behindElliptic Curve Cryptography: Arithmetic behind
Elliptic Curve Cryptography: Arithmetic behind
 
Principles of public key cryptography and its Uses
Principles of  public key cryptography and its UsesPrinciples of  public key cryptography and its Uses
Principles of public key cryptography and its Uses
 
Cryptography
CryptographyCryptography
Cryptography
 
Ecc2
Ecc2Ecc2
Ecc2
 
CNIT 141: 12. Elliptic Curves
CNIT 141: 12. Elliptic CurvesCNIT 141: 12. Elliptic Curves
CNIT 141: 12. Elliptic Curves
 

Viewers also liked

Elliptic Curve Cryptography
Elliptic Curve CryptographyElliptic Curve Cryptography
Elliptic Curve CryptographyKelly Bresnahan
 
ECC vs RSA: Battle of the Crypto-Ninjas
ECC vs RSA: Battle of the Crypto-NinjasECC vs RSA: Battle of the Crypto-Ninjas
ECC vs RSA: Battle of the Crypto-NinjasJames McGivern
 
Elliptic Curve Cryptography for those who are afraid of maths
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
 
Elliptic Curve Cryptography and Zero Knowledge Proof
Elliptic Curve Cryptography and Zero Knowledge ProofElliptic Curve Cryptography and Zero Knowledge Proof
Elliptic Curve Cryptography and Zero Knowledge ProofArunanand Ta
 
Introduction to Elliptic Curve Cryptography
Introduction to Elliptic Curve CryptographyIntroduction to Elliptic Curve Cryptography
Introduction to Elliptic Curve CryptographyDavid Evans
 
Mathematics Towards Elliptic Curve Cryptography-by Dr. R.Srinivasan
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.Srinivasanmunicsaa
 
Zero to ECC in 30 Minutes: A primer on Elliptic Curve Cryptography (ECC)
Zero to ECC in 30 Minutes: A primer on Elliptic Curve Cryptography (ECC)Zero to ECC in 30 Minutes: A primer on Elliptic Curve Cryptography (ECC)
Zero to ECC in 30 Minutes: A primer on Elliptic Curve Cryptography (ECC)Entrust Datacard
 
Data Security Using Elliptic Curve Cryptography
Data Security Using Elliptic Curve CryptographyData Security Using Elliptic Curve Cryptography
Data Security Using Elliptic Curve CryptographyIJCERT
 
Cryptography and Information Security
Cryptography and Information SecurityCryptography and Information Security
Cryptography and Information SecurityDr Naim R Kidwai
 
introduction to cryptography
introduction to cryptographyintroduction to cryptography
introduction to cryptographyPriyamvada Singh
 
Palm Vein Technology
Palm Vein TechnologyPalm Vein Technology
Palm Vein TechnologyManav Mittal
 
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...
Hidden Dangers Lurking in E-Commerce and Reducing Fraud with the Right SSL Ce...CheapSSLsecurity
 
palm vein technology and its applications
palm vein technology and its applicationspalm vein technology and its applications
palm vein technology and its applicationsAkhil Kumar
 
5 Cryptography Part1
5 Cryptography Part15 Cryptography Part1
5 Cryptography Part1Alfred Ouyang
 
Digital signature introduction
Digital signature introductionDigital signature introduction
Digital signature introductionAsim Neupane
 
Steganography presentation
Steganography presentationSteganography presentation
Steganography presentationAshwin Prasad
 
Palm Vein Technology
Palm Vein TechnologyPalm Vein Technology
Palm Vein Technologysathyakawthar
 

Viewers also liked (20)

Elliptic Curve Cryptography
Elliptic Curve CryptographyElliptic Curve Cryptography
Elliptic Curve Cryptography
 
ECC vs RSA: Battle of the Crypto-Ninjas
ECC vs RSA: Battle of the Crypto-NinjasECC vs RSA: Battle of the Crypto-Ninjas
ECC vs RSA: Battle of the Crypto-Ninjas
 
Elliptic Curve Cryptography for those who are afraid of maths
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 maths
 
Elliptic Curve Cryptography and Zero Knowledge Proof
Elliptic Curve Cryptography and Zero Knowledge ProofElliptic Curve Cryptography and Zero Knowledge Proof
Elliptic Curve Cryptography and Zero Knowledge Proof
 
Introduction to Elliptic Curve Cryptography
Introduction to Elliptic Curve CryptographyIntroduction to Elliptic Curve Cryptography
Introduction to Elliptic Curve Cryptography
 
Mathematics Towards Elliptic Curve Cryptography-by Dr. R.Srinivasan
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
 
Zero to ECC in 30 Minutes: A primer on Elliptic Curve Cryptography (ECC)
Zero to ECC in 30 Minutes: A primer on Elliptic Curve Cryptography (ECC)Zero to ECC in 30 Minutes: A primer on Elliptic Curve Cryptography (ECC)
Zero to ECC in 30 Minutes: A primer on Elliptic Curve Cryptography (ECC)
 
Data Security Using Elliptic Curve Cryptography
Data Security Using Elliptic Curve CryptographyData Security Using Elliptic Curve Cryptography
Data Security Using Elliptic Curve Cryptography
 
Cryptography and Information Security
Cryptography and Information SecurityCryptography and Information Security
Cryptography and Information Security
 
introduction to cryptography
introduction to cryptographyintroduction to cryptography
introduction to cryptography
 
Palm Vein Technology
Palm Vein TechnologyPalm Vein Technology
Palm Vein Technology
 
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...
Hidden Dangers Lurking in E-Commerce and Reducing Fraud with the Right SSL Ce...
 
Palm vein technology
Palm vein technologyPalm vein technology
Palm vein technology
 
palm vein technology and its applications
palm vein technology and its applicationspalm vein technology and its applications
palm vein technology and its applications
 
5 Cryptography Part1
5 Cryptography Part15 Cryptography Part1
5 Cryptography Part1
 
Digital signature introduction
Digital signature introductionDigital signature introduction
Digital signature introduction
 
Encryption
EncryptionEncryption
Encryption
 
Steganography presentation
Steganography presentationSteganography presentation
Steganography presentation
 
Cryptography
CryptographyCryptography
Cryptography
 
Palm Vein Technology
Palm Vein TechnologyPalm Vein Technology
Palm Vein Technology
 

Similar to Elliptic Curves and Elliptic Curve Cryptography

Chap7 2 Ecc Intro
Chap7 2 Ecc IntroChap7 2 Ecc Intro
Chap7 2 Ecc IntroEdora Aziz
 
elliptic-curves-modern
elliptic-curves-modernelliptic-curves-modern
elliptic-curves-modernEric Seifert
 
Chap 1 real number
Chap 1 real numberChap 1 real number
Chap 1 real numberJNV
 
Lect no 13 ECC.ppt
Lect no 13 ECC.pptLect no 13 ECC.ppt
Lect no 13 ECC.pptDEEPAK948083
 
Lect no 13 ECC.ppt
Lect no 13 ECC.pptLect no 13 ECC.ppt
Lect no 13 ECC.pptDEEPAK948083
 
An Introduction to Elleptic Curve Cryptography
An Introduction to Elleptic Curve CryptographyAn Introduction to Elleptic Curve Cryptography
An Introduction to Elleptic Curve CryptographyDerek Callaway
 
SYMMETRIC BILINEAR CRYPTOGRAPHY ON ELLIPTIC CURVE AND LIE ALGEBRA
SYMMETRIC BILINEAR CRYPTOGRAPHY ON ELLIPTIC CURVE  AND LIE ALGEBRASYMMETRIC BILINEAR CRYPTOGRAPHY ON ELLIPTIC CURVE  AND LIE ALGEBRA
SYMMETRIC BILINEAR CRYPTOGRAPHY ON ELLIPTIC CURVE AND LIE ALGEBRABRNSS Publication Hub
 
Convex Partitioning of a Polygon into Smaller Number of Pieces with Lowest Me...
Convex Partitioning of a Polygon into Smaller Number of Pieces with Lowest Me...Convex Partitioning of a Polygon into Smaller Number of Pieces with Lowest Me...
Convex Partitioning of a Polygon into Smaller Number of Pieces with Lowest Me...Kasun Ranga Wijeweera
 
5.vector geometry Further Mathematics Zimbabwe Zimsec Cambridge
5.vector geometry   Further Mathematics Zimbabwe Zimsec Cambridge5.vector geometry   Further Mathematics Zimbabwe Zimsec Cambridge
5.vector geometry Further Mathematics Zimbabwe Zimsec Cambridgealproelearning
 
Finite mathematics
Finite mathematicsFinite mathematics
Finite mathematicsIgor Rivin
 
Class 14 3D HermiteInterpolation.pptx
Class 14 3D HermiteInterpolation.pptxClass 14 3D HermiteInterpolation.pptx
Class 14 3D HermiteInterpolation.pptxMdSiddique20
 
Mathematics Ist year pdf.pdf
Mathematics Ist year pdf.pdfMathematics Ist year pdf.pdf
Mathematics Ist year pdf.pdfproacademyhub
 
MC0082 –Theory of Computer Science
MC0082 –Theory of Computer ScienceMC0082 –Theory of Computer Science
MC0082 –Theory of Computer ScienceAravind NC
 
Shubhanshu math project work , polynomial
Shubhanshu math project work ,  polynomialShubhanshu math project work ,  polynomial
Shubhanshu math project work , polynomialShubhanshu Bhargava
 
Trigonometric Function Of Any Angle
Trigonometric Function Of Any AngleTrigonometric Function Of Any Angle
Trigonometric Function Of Any Angleguest793408
 
Trigonometric Function Of Any Angle
Trigonometric Function Of Any AngleTrigonometric Function Of Any Angle
Trigonometric Function Of Any AngleYelena Melnichenko
 
Cryptography Baby Step Giant Step
Cryptography Baby Step Giant StepCryptography Baby Step Giant Step
Cryptography Baby Step Giant StepSAUVIK BISWAS
 
Trigonometry for class xi
Trigonometry for class xiTrigonometry for class xi
Trigonometry for class xiindu psthakur
 

Similar to Elliptic Curves and Elliptic Curve Cryptography (20)

Chap7 2 Ecc Intro
Chap7 2 Ecc IntroChap7 2 Ecc Intro
Chap7 2 Ecc Intro
 
ECC_basics.ppt
ECC_basics.pptECC_basics.ppt
ECC_basics.ppt
 
elliptic-curves-modern
elliptic-curves-modernelliptic-curves-modern
elliptic-curves-modern
 
ECC_basics.ppt
ECC_basics.pptECC_basics.ppt
ECC_basics.ppt
 
Chap 1 real number
Chap 1 real numberChap 1 real number
Chap 1 real number
 
Lect no 13 ECC.ppt
Lect no 13 ECC.pptLect no 13 ECC.ppt
Lect no 13 ECC.ppt
 
Lect no 13 ECC.ppt
Lect no 13 ECC.pptLect no 13 ECC.ppt
Lect no 13 ECC.ppt
 
An Introduction to Elleptic Curve Cryptography
An Introduction to Elleptic Curve CryptographyAn Introduction to Elleptic Curve Cryptography
An Introduction to Elleptic Curve Cryptography
 
SYMMETRIC BILINEAR CRYPTOGRAPHY ON ELLIPTIC CURVE AND LIE ALGEBRA
SYMMETRIC BILINEAR CRYPTOGRAPHY ON ELLIPTIC CURVE  AND LIE ALGEBRASYMMETRIC BILINEAR CRYPTOGRAPHY ON ELLIPTIC CURVE  AND LIE ALGEBRA
SYMMETRIC BILINEAR CRYPTOGRAPHY ON ELLIPTIC CURVE AND LIE ALGEBRA
 
Convex Partitioning of a Polygon into Smaller Number of Pieces with Lowest Me...
Convex Partitioning of a Polygon into Smaller Number of Pieces with Lowest Me...Convex Partitioning of a Polygon into Smaller Number of Pieces with Lowest Me...
Convex Partitioning of a Polygon into Smaller Number of Pieces with Lowest Me...
 
5.vector geometry Further Mathematics Zimbabwe Zimsec Cambridge
5.vector geometry   Further Mathematics Zimbabwe Zimsec Cambridge5.vector geometry   Further Mathematics Zimbabwe Zimsec Cambridge
5.vector geometry Further Mathematics Zimbabwe Zimsec Cambridge
 
Finite mathematics
Finite mathematicsFinite mathematics
Finite mathematics
 
Class 14 3D HermiteInterpolation.pptx
Class 14 3D HermiteInterpolation.pptxClass 14 3D HermiteInterpolation.pptx
Class 14 3D HermiteInterpolation.pptx
 
Mathematics Ist year pdf.pdf
Mathematics Ist year pdf.pdfMathematics Ist year pdf.pdf
Mathematics Ist year pdf.pdf
 
MC0082 –Theory of Computer Science
MC0082 –Theory of Computer ScienceMC0082 –Theory of Computer Science
MC0082 –Theory of Computer Science
 
Shubhanshu math project work , polynomial
Shubhanshu math project work ,  polynomialShubhanshu math project work ,  polynomial
Shubhanshu math project work , polynomial
 
Trigonometric Function Of Any Angle
Trigonometric Function Of Any AngleTrigonometric Function Of Any Angle
Trigonometric Function Of Any Angle
 
Trigonometric Function Of Any Angle
Trigonometric Function Of Any AngleTrigonometric Function Of Any Angle
Trigonometric Function Of Any Angle
 
Cryptography Baby Step Giant Step
Cryptography Baby Step Giant StepCryptography Baby Step Giant Step
Cryptography Baby Step Giant Step
 
Trigonometry for class xi
Trigonometry for class xiTrigonometry for class xi
Trigonometry for class xi
 

Recently uploaded

Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxDeepakSakkari2
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 
Heart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxHeart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxPoojaBan
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130Suhani Kapoor
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girlsssuser7cb4ff
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...Soham Mondal
 
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
main PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidmain PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidNikhilNagaraju
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and usesDevarapalliHaritha
 
chaitra-1.pptx fake news detection using machine learning
chaitra-1.pptx  fake news detection using machine learningchaitra-1.pptx  fake news detection using machine learning
chaitra-1.pptx fake news detection using machine learningmisbanausheenparvam
 
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfCCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfAsst.prof M.Gokilavani
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxpurnimasatapathy1234
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxwendy cai
 
Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.eptoze12
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...srsj9000
 

Recently uploaded (20)

Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptx
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptxExploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
 
Heart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxHeart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptx
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girls
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
 
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
main PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidmain PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfid
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and uses
 
chaitra-1.pptx fake news detection using machine learning
chaitra-1.pptx  fake news detection using machine learningchaitra-1.pptx  fake news detection using machine learning
chaitra-1.pptx fake news detection using machine learning
 
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfCCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptx
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptx
 
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCRCall Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
 
Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
 

Elliptic Curves and Elliptic Curve Cryptography

  • 1. Elliptic Curves and Elliptic Curve Cryptography Khandaker Md. Al-Amin (PhD Student) Secure Wireless System Lab Information and Communication Systems Okayama University
  • 2. Outline • Groups, Abelian Groups and Fields • Elliptic Curves Over the Real Numbers • Elliptic Curves Over a Finite Field • Elliptic Curve Discrete Logarithm Problem
  • 3. Elliptic Curves: Background • Elliptic Curve itself is not a crypto-system. • Elliptic curves have been extensively studied long before it is introduced in Cryptography as algebraic/ geometric entities. • Elliptic curve was applied to cryptography in 1985. It was independently proposed by Neal Koblitz from the University of Washington, and Victor Miller, at IBM.
  • 4. What is Elliptic Curve? • An elliptic curve E is the graph of an equation of the form y2 = x3 + ax + b • Also includes a “Point at infinity” denoted by ‘O’. • What do elliptic curves over Real numbers look like?
  • 6. Elliptic Curves Over the Real Numbers ๏ Let a and b be real numbers. An elliptic curve E over the field of real numbers R is the set of points (x,y) with x and y in R that satisfy the equation y2 = x3 + ax + b ๏ If the cubic polynomial x3+ax +b has no repeated roots, we say the elliptic curve is non- singular. ๏ A necessary and sufficient condition for the cubic polynomial x3+ax+b to have distinct roots is 4a3 + 27 b2 ≠ 0.
  • 7. Group Definition 1. A group is a non-empty set G with a binary operation * that satisfies the following axioms for all a, b, c in G: 2. Closure: a*b in G 3. Associativity: (a*b)*c = a*(b*c) 4. Identity: There exists an element e in G such that a* e = a = e*a. We call e the identity element of G. 5. Inverse: For each a in G, there exists an element d in G such that a*d = e = d*a. We call d the inverse of a. 6. If a group G also satisfies the following axiom for all a, b in G: 7. Commutativity: a*b = b*a, we say G is an abelian group. 8. The order of a group G, denoted |G| is the number of elements in G. If |G| < Infinity, we say G has finite order.
  • 8. Field Definition 1. A field F is a non-empty set with two binary operations, usually denoted + and *, which satisfy the following axioms for all a, b, c in F: 1. a+b is in F 2. (a+b)+c = a+(b+c) 3. a+b = b+a 4. There exists 0F in F such that a+0F = a = 0F+a. We call 0F the additive identity. 5. For each a in F, there exists an element x in F such that a+x = 0F = x+a. We call x the additive inverse of a and write x = -a.
  • 9. Field Definition (cont.) 6. Field axioms (cont.): For all a, b, c in F, 7. a*b in F 8. (a*b)*c = a*(b*c) 9. a*b = b*a 10. There exists 1F in F, 1F ≠ 0F, such that for each a in F, a*1F = a = 1F*a. We call 1F the multiplicative identity. 11. For each a ≠ 0F in F, there exists an element y in F such that a*y = 1F = y*a. We call y the multiplicative inverse of a and write y = a-1. 12. a*(b+c) = a*b + a*c and (b+c)*a = b*a + c*a. (Distributive Law)
  • 10. Field Examples • Note that any field is an abelian group under + and the non-zero elements of a field form an abelian group under *. • Some examples of fields: • Real numbers • Zp, the set of integers modulo p, where p is a prime number is a finite field. • For example, • Z7 = {0, 1, 2, 3, 4, 5, 6} and Z23 = {0, 1, 2, 3, … , 22}.
  • 11. An Elliptic Curve Lemma Elliptic Curve Lemma: Any line containing two points of a non-singular elliptic curve contains a unique third point of the curve, where - Any vertical line contains O, the point at infinity. - Any tangent line contains the point of tangency twice.
  • 12. Geometric Addition of Elliptic Curve • Using the Elliptic Curve Lemma, we can define a way to geometrically “add” points P and Q on a non-singular elliptic curve E. • First, define the point at infinity to be the additive identity, i.e. for all P in E, P + O = P = O+ P. • Next, define the negative of the point at infinity to be - O = O.
  • 13. Geometric Addition of Elliptic Curve (cont.) • For P = (xP,yP), define the negative of P to be -P = (xP,-yP), the reflection of P about the x-axis. • From the elliptic curve equation, y2 = x3 + ax + b we see that whenever P is in E, -P is also in E.
  • 14. Geometric Addition of Elliptic Curve (cont.) • Assume that neither P nor Q is the point at infinity. • For P = (xP,yP) and Q = (xQ,yQ) in E, there are three cases to consider: 1. P and Q are distinct points with xP ≠ xQ. 2. Q = -P, so xP = xQ and yP = - yQ. 3. Q = P, so xP = xQ and yP = yQ.
  • 15. Geometric Case 1: xP ≠ xQ • By the Elliptic Curve Lemma, the line L through P and Q will intersect the curve at one other point. • Call this third point -R. • Reflect the point -R about the x- axis to point R. • P+Q = R y2 = x3-7x+6 -3 -2 -1 1 2 3 4 -4 -2 2 4 P Q - R R
  • 16. Geometric Case 2: xP = xQ and yP = - yQ • In this case, the line L through P and Q = -P is vertical. • By the Elliptic Curve Lemma, L will also intersect the curve at O. • P+Q = P+(-P) = O • It follows that the additive inverse of P is -P. -2 -1 1 2 3 4 -4 -3 -2 -1 1 2 3 4 P Q y2 = x3-2x+4
  • 17. Geometric Case 3: xP=xQ and yP = yQ • Since P = Q, the line L through P and Q is tangent to the curve at P. • If yP = 0, then P = -P, so we are in Case 2, and P+P = O. • For yP ≠ 0, the Elliptic Curve Lemma says that L will intersect the curve at another point, -R. • As in Case 1, reflect -R about the x-axis to point R. • P+P = R • Notation: 2P = P+P y2 = x3-7x+6 -3 -2 -1 1 2 3 4 -4 -2 2 4 P - R R
  • 18. Algebraic Elliptic Curve Addition • Geometric elliptic curve addition is useful for illustrating the idea of how to add points on an elliptic curve. • Using algebra, we can make this definition more clear for implementation point of view. • As in the geometric definition, the point at infinity is the identity, - O = O, and for any point P in E, -P is the reflection of P about the x-axis.
  • 19. Algebraic Elliptic Curve Addition (cont.) 1. In what follows, assume that neither P nor Q is the point at infinity. 2. As in the geometric case, for P = (xP,yP) and Q = (xQ,yQ) in E, there are three cases to consider: 1. P and Q are distinct points with xP ≠ xQ. 2. Q = -P, so xP = xQ and yP = - yQ. 3. Q = P, so xP = xQ and yP = yQ.
  • 20. Algebraic Case 1: xP ≠ xQ • First we consider the case where P = (xP,yP) and Q = (xQ,yQ) with xP ≠ xQ. • The equation of the line L though P and Q is y = λ x+ν, where • In order to find the points of intersection of L and E, substitute λ x + ν for y in the equation for E to obtain the following: • The roots of (2) are the x-coordinates of the three points of intersection. • Expanding (2), we find:
  • 21. Algebraic Case 1: xP ≠ xQ (cont.) • Since a cubic equation over the real numbers has either one or three real roots, and we know that xP and xQ are real roots, it follows that (3) must have a third real root, xR. • Writing the cubic on the left-hand side of (3) in factored form we can expand and equate coefficients of like terms to find
  • 22. Algebraic Case 1: xP ≠ xQ (cont.) • We still need to find the y-coordinate of the third point, -R = (xR,-yR) on the curve E and line L. • To do this, we can use the fact that the slope of line L is determined by the points P and -R, both of which are on L: • Thus, the sum of P and Q will be the point R = (xR, yR) with where
  • 23. Algebraic Case 2: xP = xQ and yP = - yQ • In this case, the line L through P and Q = -P is vertical, so L contains the point at infinity. • As in the geometric case, we define P+Q = P+(-P) = O, which makes P and -P additive inverses.
  • 24. Algebraic Case 3: xP=xQ and yP = yQ • Finally, we need to look at the case when Q = P. • If yP = 0, then P = -P, so we are in Case 2, and P+P = O. • Therefore, we can assume that yP ≠ 0. • Since P = Q, the line L through P and Q is the line tangent to the curve at (xP,yP).
  • 25. Algebraic Case 3: xP=xQ and yP = yQ • The slope of L can be found by implicitly differentiating the equation y2 = x3 + ax + b and substituting in the coordinates of P: • Arguing as in Case 1, we find that P+P = 2P = R, with R = (xR,yR), where
  • 26. Elliptic Curve Groups From these definitions of addition on an elliptic curve, it follows that: 1. Addition is closed on the set E. 2. Addition is commutative. 3. O is the identity with respect to addition. 4. Every point P in E has an inverse with respect to addition, namely -P. 5. The associative axiom also holds.
  • 27. Elliptic Curves Over Finite Fields • Instead of choosing the field of real numbers, we can create elliptic curves over other fields. • Let a and b be elements of Zp for p prime, p > 3. An elliptic curve E over Zp is the set of points (x,y) with x and y in Zp that satisfy the equation together with a single element O, called the point at infinity. • As in the real case, to get a non-singular elliptic curve, we’ll require 4a3 + 27 b2 (mod p) ≠ 0 (mod p). • Elliptic curves over Zp will consist of a finite set of points.
  • 28. Addition on Elliptic Curves over Zp • Just as in the real case, we can define addition of points on an elliptic curve E over Zp, for prime p>3. • This is done in the essentially the same way as the real case, with appropriate modifications.
  • 29. Addition on Elliptic Curves over Zp (cont.) • Suppose P and Q are points in E. • Define P + O = O + P = P for all P in E. • If Q = -P (mod p), then P+Q = O. • Otherwise, P+Q = R = (xR,yR), where
  • 30. Cryptography on an Elliptic Curve • Using an elliptic curve over a finite field, we can exchange information securely. • For example, we can implement a scheme invented by Whitfield Diffie and Martin Hellman in 1976 for exchanging a secret key.
  • 31. Diffie-Hellman Key Exchange via an Elliptic Curve 1. Alice and Bob publicly agree on an elliptic curve E over a finite field Zp. 2. Next Alice and Bob choose a public base point B on the elliptic curve E. 3. Alice chooses a random integer 1<α<|E|, computes P = α B, and sends P to Bob. Alice keeps her choice of α secret. 4. Bob chooses a random integer 1<β<|E|, computes Q = β B, and sends Q to Alice. Bob keeps his choice of β secret. 1. Alice and Bob choose E to be the curve y2 = x3+x+6 over Z7. 2. Alice and Bob choose the public base point to be B=(2,4). 3. Alice chooses α = 4, computes P = αB = 4(2,4) = (6,2), and sends P to Bob. Alice keeps α secret. 4. Bob chooses β = 5, computes Q = βB = 5(2,4) = (1,6), and sends Q to Alice. Bob keeps β secret.
  • 32. Diffie-Hellman Key Exchange via an Elliptic Curve (cont.) 5. Alice computes KA = αQ = α(βB). 6. Bob computes KB = βP = β(αB). 7. The shared secret key is K = KA = KB. Even if Eve knows the base point B, or P or Q, she will not be able to figure out α or β, so K remains secret! 5. Alice computes KA=αQ = 4(1,6) = (4,2). 6. Bob computes KB = βP = 5(6,2) = (4,2). 7. The shared secret key is K = (4,2).
  • 33. Elliptic Curve Discrete Logarithm Problem • At the foundation of every crypto-system is a hard mathematical problem that is computationally infeasible to solve. • The discrete logarithm problem is the basis for the security of many crypto-systems including the Elliptic Curve Crypto-system. • ECC relies upon the difficulty of the Elliptic Curve Discrete Logarithm Problem (ECDLP). • Recall that we examined two geometrically defined operations over certain elliptic curve groups. These two operations were point addition and point doubling. • By selecting a point in a elliptic curve group, one can double it to obtain the point 2P. • After that, one can add the point P to the point 2P to obtain the point 3P. • The determination of a point nP in this manner is referred to as Scalar Multiplication of a point. • The ECDLP is based upon the intractability of scalar multiplication products.
  • 34. Scalar Multiplication • Scalar Multiplication of Point in EC Additive group is a combination of point doubling and point addition. • Under additive notation: computing kP by adding together k copies of the point P. • If k = 23; then, kP = 23*P = 2(2(2(2P) + P) + P) + P • Using multiplicative notation, this operation consists of multiplying together k copies of the point P, yielding the point P*P*P*P*…*P = Pk.
  • 35. Elliptic Curve Discrete Logarithm Problem • In multiplicative group Zp*, DLP is: given elements r and q of the group, and a prime p, find a number k such that r = qk mod p. • If the elliptic curve groups is described using multiplicative notation, then the elliptic curve discrete logarithm problem is: given points P and Q in the group, find a number that Pk = Q; k is called the discrete logarithm of Q to the base P. • When the elliptic curve group is described using additive notation, the elliptic curve discrete logarithm problem is: given points P and Q in the group, find a number k such that [k]P = Q
  • 36. Elliptic Curve Discrete Logarithm Problem • In the elliptic curve group defined by y 2 = x 3 + 9x + 17 over F23, 
 What is the discrete logarithm k of Q = (4,5) to the base P = (16,5)? • Naive way to find k is to compute multiples of P until Q is found. The first few multiples of P are: P = (16,5) 2P = (20,20) 3P = (14,14) 4P = (19,20) 5P = (13,10) 6P = (7,3) 7P = (8,7) 8P = (12,17) 9P = (4,5) • Since 9P = (4,5) = Q, the discrete logarithm of Q to the base P is k = 9. • In a real application, k would be large enough (e.g. 192bit) such that it would be infeasible to determine k in this manner.
  • 37. ElGamal Cryptography • Public-key crypto-system related to D-H • Uses exponentiation in a finite field • With security based difficulty of computing discrete logarithms, as in D-H. • Each user generates their key • Chooses a secret key (number): 1 < xA < q-1 • Compute their public key: yA = ax A mod q
  • 38. ElGamal Message Exchange 1. Bob encrypts a message to send to Alice computing 1. Represent message M in range 0 <= M <= q-1 2. chose random integer k with 1 <= k <= q-1 3. compute one-time key K = yA^k mod q 4. Encrypt M as a pair of integers (C1,C2) where C1 = a^k mod q ; C2 = KM mod q. 2. Alice then recovers message by 1. Recovering key K as K = C1^xA mod q 2. computing M as M = C2 K ^-1 mod q 3. A unique k must be used each time otherwise result is insecure
  • 39. ElGamal Example 1.Let’s us consider field GF(19) q=19 and a=10 2.Alice computes her key: 1. Chooses xA= 5 & computes yA=10^5 mod 19 = 3 3.Bob send message m=17 as (11,5) by 1. choosing random k=6 2. computing K = yA^k mod q = 3^6 mod 19 = 7 3. computing C1 = ak mod q = 10^6 mod 19 = 11; 4. C2 = KM mod q = 7.17 mod 19 = 5 4.Alice recovers original message by computing: 1. recover K = C1^xA mod q = 11^5 mod 19 = 7 2. compute inverse K^-1 = 7^-1 = 11 3. recover M = C2 K^-1 mod q = 5.11 mod 19 = 17
  • 40. ElGamal With Elliptic Curve • Set up an elliptic curve E over a field 𝔽q and a point P of order N. • We need a public function f:m↦Pm, which maps messages m to points Pm on E. It should be invertible, and one way is to use m in the curve's equation as x and calculate the according y • Choose a secret key x ∈ [1, N−1] randomly, publish the point Y=[x]P as public key. • Encryption: choose random k ∈ [1,N−1] ,then calculate C1 = [k]P and C2 = kY and calculate Pm = f(m). The cipher text is the tuple (C1,C2+Pm). • Decryption: From a cipher text (C,D), calculate C′=[x]C and retrieve the point Pm with Pm=D−C′=(k([x]P)+Pm)−(x(kP)). • Then calculate the message m with f^-1(Pm).