geometry of lines intersecting an elliptic curve modulus some prime number - it forms a cyclic group
The elliptic curve used here is:
y2 = x3 + 2x + 1
Generator Point P(x, y) is chosen
For the code I used a prime modulus
of 17.
2P = P + P
Point doubling: the resultant point
when the tangent at the point intersects with the elliptic curve the equations for tangents can be found using basic implicit differentiation and substitution.
P 3P Generator Point
Point addition: the (third) intersection between the line
connecting two non identical points and the elliptic curve.
2 4
2P + P + P = kP Division mod p can be replaced with multiplication of a mod. inverse
3 2P
The difficulty of cracking ECC is due to discrete logarithm problem:
if kP = Q,
(where k is the scalar multiplier)
then finding large k is computationally inefficient (P and Q are
points on the elliptic curve mod n). Hence large values of k are ideal for cryptographic purposes.
Given pairs of key-points , a cryptosystem can be devised using public
and private keys (see algorithm) The algorithm is helpful because scalar multipliers and their resultant points can contain significantly less bits than RSA keys for the equivalent security.