EllipticCurve
public class EllipticCurve
extends Object
| java.lang.Object | |
| ↳ | java.security.spec.EllipticCurve |
This immutable class holds the necessary values needed to represent an elliptic curve.
See also:
Summary
Public constructors | |
|---|---|
EllipticCurve(ECField field, BigInteger a, BigInteger b) Creates an elliptic curve with the specified elliptic field | |
EllipticCurve(ECField field, BigInteger a, BigInteger b, byte[] seed) Creates an elliptic curve with the specified elliptic field | |
Public methods | |
|---|---|
boolean | equals(Object obj) Compares this elliptic curve for equality with the specified object. |
BigInteger | getA() Returns the first coefficient |
BigInteger | getB() Returns the second coefficient |
ECField | getField() Returns the finite field |
byte[] | getSeed() Returns the seeding bytes |
int | hashCode() Returns a hash code value for this elliptic curve. |
Inherited methods | |
|---|---|
Public constructors
EllipticCurve
public EllipticCurve (ECField field, BigInteger a, BigInteger b)
Creates an elliptic curve with the specified elliptic field field and the coefficients a and b.
| Parameters | |
|---|---|
field | ECField: the finite field that this elliptic curve is over. |
a | BigInteger: the first coefficient of this elliptic curve. |
b | BigInteger: the second coefficient of this elliptic curve. |
| Throws | |
|---|---|
NullPointerException | if field, a, or b is null. |
IllegalArgumentException | if a or b is not null and not in field. |
EllipticCurve
public EllipticCurve (ECField field, BigInteger a, BigInteger b, byte[] seed)
Creates an elliptic curve with the specified elliptic field field, the coefficients a and b, and the seed used for curve generation.
| Parameters | |
|---|---|
field | ECField: the finite field that this elliptic curve is over. |
a | BigInteger: the first coefficient of this elliptic curve. |
b | BigInteger: the second coefficient of this elliptic curve. |
seed | byte: the bytes used during curve generation for later validation. Contents of this array are copied to protect against subsequent modification. |
| Throws | |
|---|---|
NullPointerException | if field, a, or b is null. |
IllegalArgumentException | if a or b is not null and not in field. |
Public methods
equals
public boolean equals (Object obj)
Compares this elliptic curve for equality with the specified object.
| Parameters | |
|---|---|
obj | Object: the object to be compared. |
| Returns | |
|---|---|
boolean | true if obj is an instance of EllipticCurve and the field, A, and B match, false otherwise. |
getA
public BigInteger getA ()
Returns the first coefficient a of the elliptic curve.
| Returns | |
|---|---|
BigInteger | the first coefficient a. |
getB
public BigInteger getB ()
Returns the second coefficient b of the elliptic curve.
| Returns | |
|---|---|
BigInteger | the second coefficient b. |
getField
public ECField getField ()
Returns the finite field field that this elliptic curve is over.
| Returns | |
|---|---|
ECField | the field field that this curve is over. |
getSeed
public byte[] getSeed ()
Returns the seeding bytes seed used during curve generation. May be null if not specified.
| Returns | |
|---|---|
byte[] | the seeding bytes seed. A new array is returned each time this method is called. |
hashCode
public int hashCode ()
Returns a hash code value for this elliptic curve.
| Returns | |
|---|---|
int | a hash code value computed from the hash codes of the field, A, and B, as follows: |