Hardware accelerator for elliptic curve cryptography
AssigneeSun Microsystems, Inc.
InventorsHans Eberle, Nils Gura, Daniel Finchelstein, Sheueling Chang-Shantz, Vipul Gupta
Life of this patent
Estimating the term…
Loading patent…
AssigneeSun Microsystems, Inc.
InventorsHans Eberle, Nils Gura, Daniel Finchelstein, Sheueling Chang-Shantz, Vipul Gupta
Estimating the term…
An elliptic curve processing apparatus that performs operations on elliptic curves specified over binary polynomial fields includes a functional unit that has a digit serial multiplier with a digit size of at least two bits. The elliptic curve processing apparatus performs reduction for respective generic curves using arbitrary irreducible polynomials, which correspond to respective ones of the generic curves. The elliptic curve processing apparatus may include hardwired reduction circuits in the functional unit for use with respective named curves. A storage location in the elliptic curve processing apparatus may be used to specify whether an operation is for one of the named curves or for one of the generic curves. The elliptic curve processing apparatus responds to an arithmetic instruction to utilize a respective one of the hardwired reduction circuits for reduction for respective named curves and a multiplier circuit for reduction for a plurality of generic curves, the multiplier coupled to perform reduction for respective generic curves using arbitrary irreducible polynomials, the arbitrary irreducible polynomials corresponding to respective ones of the generic curves. The elliptic curve processing apparatus operable on elliptic curves specified over binary polynomial fields performs a conditional branch according to whether a curve being processed is a generic curve or a named curve.
An elliptic curve processing apparatus for performing at least one operation on elliptic curves specified over binary polynomial fields, comprising:
An elliptic curve processing apparatus responsive to a first arithmetic instruction to utilize respective hardwired reduction logic for reduction of respective named curves and responsive to a second arithmetic instruction to utilize a generic reduction circuit for a plurality of generic curves, the generic reduction circuit operable to perform reduction for respective ones of the generic curves using arbitrary irreducible polynomials, respective ones of the arbitrary irreducible polynomials corresponding to respective ones of the generic curves.
An elliptic curve processing apparatus comprising hardwired reduction circuits and a multiplier circuit, the elliptic curve processing apparatus responsive to an arithmetic instruction to utilize a respective one of the hardwired reduction circuits for reduction for respective named curves and the multiplier circuit for reduction for a plurality of generic curves, the multiplier coupled to perform reduction for respective generic curves using arbitrary irreducible polynomials, the arbitrary irreducible polynomials corresponding to respective ones of the generic curves.
A method for performing at least one arithmetic operation on elliptic curves specified over binary polynomial fields, comprising:
An elliptic curve processing apparatus operable on elliptic curves specified over binary polynomial fields responsive to a conditional branch instruction according to whether a curve being processed is a generic curve or a named curve.
A method comprising performing a conditional branch instruction according to a value of a storage location indicating whether a curve being processed in an elliptic curve processing apparatus is a generic curve or a named curve.
An apparatus for performing at least one operation on elliptic curves specified over binary polynomial fields, comprising:
An apparatus for performing operations on elliptic curves specified over binary polynomial fields responsive to a square instruction to perform a squaring operation on an elliptic curve utilizing hardwired reduction logic.
An apparatus for performing operations on elliptic curves specified over binary polynomial fields responsive to a divide instruction to perform a divide operation on an elliptic curves using a polynomial specified in a storage location for reduction.
A computer program product encoded on computer readable media comprising:
A computer program product encoded on computer readable media for an elliptic curve processor comprising:
A computer program product encoded on computer readable media for execution on an elliptic curve processing apparatus comprising:
The computer program product as recited in claim method 51 wherein the elliptic curve is specified over a binary polynomial field.
The computer program product as recited in claim method 51 wherein the elliptic curve is specified over a prime integer field.
The computer program product as recited in claim method 51 wherein the conditional branch instruction branches according to a value of a storage location indicating whether a curve being processed is the generic curve or the named curve.
Dependencies are inferred from the claim text.