EP2887342A2

Optimized hardware architecture and method for ECC point doubling using jacobian coordinates over short weierstrass curves

Abstract

An optimized hardware architecture and method introducing a simple arithmetic processor that allows efficient implementation of an Elliptical Curve Cryptography point doubling algorithm for Jacobian coordinates. The optimized architecture additionally reduces the required storage for intermediate values.

EP2887342A2, drawing sheet 1
Sheet 1 of 8

Term

8.2 yearsto projected expiry

Projected expiry 18 December 2034, counted from filing; an application has no term until it is granted.

  1. Priority
  2. Filed
  3. Published
  4. Today
  5. Projected expiry

14 claims: 10 independent, 4 dependent

  1. 1
    An apparatus for performing an elliptic curve cryptography point doubling operation using Jacobian coordinates comprising:- a register memory for storing a point in Jacobian coordinates;- a modular multiplier electrically coupled to the register memory;and - a simple arithmetic processor electrically coupled to the register memory and the modular multiplier, wherein the simple arithmetic processor is configured to perform modular subtraction, modular multiplication by two and modular division by two in support of the point doubling operation comprising a plurality of steps in Jacobian coordinates.
  2. 2
    The apparatus of Claim 1 wherein the simple arithmetic processor comprises three logical one bit left shifters.
  3. 3
    The apparatus of Claim 1 or 2 wherein the simple arithmetic processor is configured to output 3C for an input of a variable C.
  4. 4
    The apparatus of any preceding Claim wherein the point doubling operation is performed over a short Weierstrass curve of the form y = x 3 + ax + b where a = -3.
  5. 5
    The apparatus of any preceding Claim wherein the register memory is configured for two temporary storage variables, T 1 and T 2 .
  6. 6
    A mobile device comprising the apparatus of any preceding Claim.
  7. 7
    A smartcard comprising the apparatus of any preceding Claim.
  8. 8
    The mobile device of any preceding Claim wherein the mobile device is a smartphone.
  9. 9
    The apparatus of any preceding Claim 1 wherein the modular multiplier is configured to perform at most one modular multiplication for each one of the plurality of steps.
  10. 10
    The apparatus of any preceding Claim wherein the simple arithmetic processor is configurable to output A - B/2 for an input of variables A and B.
  11. 11
    A method for performing an elliptic curve cryptography point doubling operation using Jacobian coordinates comprising:- accepting the input of a point in Jacobian coordinates into a computational device having a register memory, a modular multiplier and a simple arithmetic processor configured for modular subtraction, modular division by two and modular multiplication by two;- enabling the computational device to execute a sequence of steps to perform the elliptic curve cryptography point doubling operation of the point wherein the modular multiplier performs at most one modular multiplication per step.
  12. 12
    The method of Claim 11 wherein the simple arithmetic processor is configurable to output A - B/2 for an input of variables A, B.
  13. 13
    The method of Claim 11 or 12 wherein the sequence of steps requires no more than two temporary variables.
  14. 14
    The method of any one of Claims 11 to 13 further comprising enabling the computational device to output a result of the point doubling operation in Jacobian coordinates.