Commit af6f8a8a authored by Aaisha Ghodekar's avatar Aaisha Ghodekar
Browse files

README updation

parent 50944104
......@@ -28,13 +28,45 @@ Within this project work a Linux device driver should be extended by following E
Preparation, Montgomery Transformation, Affine-to-Jacobi Transformation,
Point Doubling, Point Addition, Jacobi-to-Affine Transformation,
Preparation, Montgomery Transformation, Affine-to-Jacobi Transformation, Point Addition,
Point Doubling, Jacobi-to-Affine Transformation,
Montgomery Back-transformation, Point Validation.
By using a Linux User Space Application the correct functionality should be verified by performing Point Validations in GF(2m) for the supported ECC precision widths. Based on a
given Point and elliptic curve equation a statement must be made whether the Point is on the curve or not.For the validation of the calculation inside of the CryptoCore the open-source mathematics
software SageMath should be used.In order to be able to illustrate the time required for ECC Point Validation with different precision widths the Real Time Library support (-lrt) should be included.
Point Addition:
With 2 distinct points, P and Q, addition is defined as the negation of the point resulting from the intersection of the curve, E, and the straight line defined by the points P and Q, giving the point, R.
An elliptic curve in short Weierstrass form has parameters a2 a6 and coordinates x y satisfying the following equations:
Affine addition formulas: (x1,y1)+(x2,y2)=(x3,y3) where
x3 = ((y1+y2)/(x1+x2))^2+((y1+y2)/(x1+x2))+x1+x2+a2
y3 = ((y1+y2)/(x1+x2))^3+(x2+a2+1)*((y1+y2)/(x1+x2))+x1+x2+a2+y1
Jacobian coordinates represent x y as X Y Z satisfying the following equations:
Assumptions: Z2=1.
Explicit formulas:
O1 = Z1^2
B = X2*O1
D = Y2*O1*Z1
E = X1+B
F = Y1+D
Z3 = E*Z1
H = F*X2+Z3*Y2
I = F+Z3
G = Z3^2
X3 = a2*G+F*I+E*E^2
Y3 = I*X3+G*H
......@@ -42,7 +74,7 @@ Contributors:
2)Harshal Likhar
3)Aaisha Ghodekar (Developer)
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment