0% found this document useful (0 votes)
13 views

ECC_1

The document provides an overview of Elliptic Curve Cryptography (ECC), detailing the process of adding points on an elliptic curve and the properties of elliptic curves as finite abelian groups. It outlines the steps for encoding messages, generating keys, encrypting, and decrypting messages using ECC, highlighting its efficiency compared to RSA. Additionally, it presents a comparison of key sizes required for symmetric, RSA, and ECC encryption to achieve equivalent security levels.

Uploaded by

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

ECC_1

The document provides an overview of Elliptic Curve Cryptography (ECC), detailing the process of adding points on an elliptic curve and the properties of elliptic curves as finite abelian groups. It outlines the steps for encoding messages, generating keys, encrypting, and decrypting messages using ECC, highlighting its efficiency compared to RSA. Additionally, it presents a comparison of key sizes required for symmetric, RSA, and ECC encryption to achieve equivalent security levels.

Uploaded by

Hey
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

Elliptic Curve Cryptography-3

Module III
Adding P to P

Knowing P and the coordinates of n. P = (x, y) is a hard problem,


If n is a very large number.
How to compute 2P by using algebraic
expression?
• Let us consider the point P( x, y) in the elliptic group 𝐸𝑝 (𝑎, 𝑏).
• We have to consider P(x1, y1) + P (x2,y2), where x1=x2, y1=y2.
• The rules for addition of P with P over the elliptic curve 𝐸𝑝 (𝑎, 𝑏) is,
• 𝑥3 = 𝜆2 − 𝑥 − 𝑥 𝑚𝑜𝑑 𝑝 |
• 𝑦3 = 𝜆 𝑥 − 𝑥3 − 𝑦 (𝑚𝑜𝑑 𝑝) |
3𝑥 2 +𝑎
• 𝜆= (𝑚𝑜𝑑 𝑝)
2𝑦
• E.g. (4,6) , 𝐸11 1,1 .
3𝑥 2 +𝑎 3. 42 +1 49
• 𝜆= (𝑚𝑜𝑑 𝑝)→ (𝑚𝑜𝑑 11)= 𝑚𝑜𝑑 11
2𝑦 2.6 12
• 49. 12−1 𝑚𝑜𝑑 11= 49 . 1 ( mod 11) = 5.
How to compute 2P by using algebraic
expression?
• 𝑥3 = 52 − 4 − 4 𝑚𝑜𝑑 11 → 25-8 (mod 11) → 17 mod 11 → 6
• 𝑦3 = 5 4 − 6 − 6 (𝑚𝑜𝑑 11)
• = -16 mod (11) = 11 – (16 mod 11) = 11 – 5 = 6.
• 2.P = (6,6) .
• Check 2P lies on the curve, 𝑦 2 𝑚𝑜𝑑11 = 𝑥 3 + 𝑥 + 1 𝑚𝑜𝑑 11
• 62 𝑚𝑜𝑑11 = 63 + 6 + 1 𝑚𝑜𝑑 11
• 36 (mod 11) = 223 mod 11
•3=3
Properties of elliptic curves
• Consider the elliptic curve E. The set of points on the curve over a
finite field Fp, E(Fp) is a finite abelian group. Let us begin by showing
that E(Fp) is a group.
• Closure: consider points P, Q ∈ E(p) then P+Q ∈ E(Fp). Hence closure
holds.
• Identity: The Identify element is the point at Infinity.
P+O=O+P=P
• Associativity: Consider the points P, Q, R ∈ E(Fp) then
( P+Q) + R = P+(Q+R)
• Additive Inverses: If x2=x1 and y2= -y1, that is P=(x1,y1) and
Q=(x2,y2) = -P, then P – P = O (Point at Infinity). P+Q=0 (Q=-P). Hence,
E(Fp) is a group. E(Fp) is abelian, for points P,Q ∈ E(Fp), P+Q = Q+P.
Hence, E(Fp) is an abelian group.
Elliptic Curve Cryptography
• Steps:
• 1. Encode a plaintext message as point on the curve.
• 2. establish public private keys
• 3. Encrypt the message using the public key.
• 4. Decrypt using the private key.
Elliptic Curve Cryptography
• Steps:
• 1. Encode a plaintext message as point on the curve.
Let us consider 𝐸11 (1,1)
(4,6) directly take plain text message. There are many methods to
convert plaintext to points on the elliptic curve.
Elliptic Curve Cryptography
• 2. Keys generation
Choose a generator point G ∈ 𝐸𝑝 (𝑎, 𝑏)
for example (1,5) ∈ 𝐸11 (1,1)
select a private key n=2
Compute public key = 2. G = G+G = (1,5) + (1,5)
3𝑥 2 +𝑎 3.12 +1 4
𝜆= 𝑚𝑜𝑑 𝑝= 𝑚𝑜𝑑 11= 𝑚𝑜𝑑 11
2𝑦 2.5 10
−1
= 4. 10 𝑚𝑜𝑑 11= 4. 10 𝑚𝑜𝑑 11
= 40 mod 11 = 7.
𝑥3 = 72 − 1 − 1 𝑚𝑜𝑑 11 = 49 − 2 𝑚𝑜𝑑 11 = 47 𝑚𝑜𝑑 11 = 3
𝑦3 = 7 1 − 3 − 5 (𝑚𝑜𝑑 11)=7 1 − 3 − 5 (𝑚𝑜𝑑 11)=3
Elliptic Curve Cryptography
• 3. Encrypt the message using the public key.
• C = [ (KG), (M+K.PU) ] , k is a random number.
• C = [ C1, C2 ]
• = [ 2. (1,5) , (4,6)+2.(3,3)]
• = [ (1,5)+(1,5) , (4,6) + (3,3)+(3,3) ]
• 𝜆 = 1, 𝑥3 = 6, 𝑦3 = 5.
• = [ (1,5)+(1,5) , (4,6) + (6,5) ]
• = [ (3,3) , (4,5) ]
Elliptic Curve Cryptography
• 4. Decrypt the message using the private key.
• M = C2 – [ n. C1 ]
• = (4,5) – [ 2 . (3,3)]
• = (4,5) – [ (3,3) + (3,3) ]
• = (4,5) – (6,5)
• = (4,5) + -(6,5)
• = (4,5) + (6, -5)
• 𝜆 = 6, 𝑥3 = 4, 𝑦3 = 6.
• = (4,6)
ECC
• ECC takes one sixth the computational effort to provide the same
level of cryptographic security that you get with 1024-bit RSA and is
15 times faster.
Symmetric key sizes (bits) RSA key sizes(bits) ECC key sizes(bits)
80 1024 160
112 2048 224
128 3072 256
192 7680 384
256 15360 512

You might also like