#1
  1. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Aug 2013
    Posts
    1
    Rep Power
    0

    Elliptic Curve Cryptography Lambda Coordinates operations implementation


    'L�pez-Dahab Coordinates' (short: LD coordinates) are used to represent elliptic curve points on binary curves y^2 + xy = x^3 + ax^2 + b. In 'L�pez-Dahab Coordinates' the triple (X, Y, Z) represents the affine point (X / Z, Y / Z^2).
    Point Doubling (up to 5M)

    Let (X, Y, Z) be a point (unequal to the 'point at infinity') represented in 'L�pez-Dahab Coordinates'. Then its double (X', Y', Z') can be calculated by
    if (X == 0)
    return POINT_AT_INFINITY
    else
    A = X^2
    B = Z^2
    Z' = A*B
    C = A^2
    D = b*B^2
    X' = C + D
    Y' = D*Z' + X'*(a*Z' + Y^2 + D)
    return (X', Y', Z')
    Note that the total number of field multiplications can be reduced if the curve coefficient a and b are carefully chosen.
    Point Addition (up to 14M)

    Let (X1, Y1, Z1) and (X2, Y2, Z2) be two points (both unequal to the 'point at infinity') represented in 'L�pez-Dahab Coordinates'. Then the sum (X3, Y3, Z3) can be calculated by
    A = X1*Z2 + X2*Z1
    B = Y1*Z2^2 + Y2*Z1^2
    if (A == 0)
    if (B != 0)
    return POINT_AT_INFINITY
    else
    return POINT_DOUBLE(X1, Y1, Z1)
    C = Z1*A
    D = Z2*C
    Z3 = D^2
    X3 = D*(A^2 + B) + B^2 + a*Z3
    E = C*D
    F = E^2*Y2
    G = X3 + X2*E
    Y3 = Z3*X3 + F + B*D*G
    return (X3, Y3, Z3)
    Note that if curve coefficient a is carefully chosen, the number of field multiplications can be reduced to 13M.
  2. #2
  3. Contributed User
    Devshed Specialist (4000 - 4499 posts)

    Join Date
    Jun 2005
    Posts
    4,376
    Rep Power
    1871
    Apart from copy/pasting from here, did you have anything particular to add, like say a question?
    If you dance barefoot on the broken glass of undefined behaviour, you've got to expect the occasional cut.
    If at first you don't succeed, try writing your phone number on the exam paper

IMN logo majestic logo threadwatch logo seochat tools logo