org.bouncycastle.math.ec
Class ECCurve.F2m
java.lang.Object
org.bouncycastle.math.ec.ECCurve
org.bouncycastle.math.ec.ECCurve.F2m
- Enclosing class:
- ECCurve
- public static class ECCurve.F2m
- extends ECCurve
Elliptic curves over F2m. The Weierstrass equation is given by
y2 + xy = x3 + ax2 + b
.
Constructor Summary |
ECCurve.F2m(int m,
int k,
java.math.BigInteger a,
java.math.BigInteger b)
Constructor for Trinomial Polynomial Basis (TPB). |
ECCurve.F2m(int m,
int k1,
int k2,
int k3,
java.math.BigInteger a,
java.math.BigInteger b)
Constructor for Pentanomial Polynomial Basis (PPB). |
Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
ECCurve.F2m
public ECCurve.F2m(int m,
int k,
java.math.BigInteger a,
java.math.BigInteger b)
- Constructor for Trinomial Polynomial Basis (TPB).
- Parameters:
m
- The exponent m
of
F2m
.k
- The integer k
where xm +
xk + 1
represents the reduction
polynomial f(z)
.a
- The coefficient a
in the Weierstrass equation
for non-supersingular elliptic curves over
F2m
.b
- The coefficient b
in the Weierstrass equation
for non-supersingular elliptic curves over
F2m
.
ECCurve.F2m
public ECCurve.F2m(int m,
int k1,
int k2,
int k3,
java.math.BigInteger a,
java.math.BigInteger b)
- Constructor for Pentanomial Polynomial Basis (PPB).
- Parameters:
m
- The exponent m
of
F2m
.k1
- The integer k1
where xm +
xk3 + xk2 + xk1 + 1
represents the reduction polynomial f(z)
.k2
- The integer k2
where xm +
xk3 + xk2 + xk1 + 1
represents the reduction polynomial f(z)
.k3
- The integer k3
where xm +
xk3 + xk2 + xk1 + 1
represents the reduction polynomial f(z)
.a
- The coefficient a
in the Weierstrass equation
for non-supersingular elliptic curves over
F2m
.b
- The coefficient b
in the Weierstrass equation
for non-supersingular elliptic curves over
F2m
.
fromBigInteger
public ECFieldElement fromBigInteger(java.math.BigInteger x)
- Specified by:
fromBigInteger
in class ECCurve
decodePoint
public ECPoint decodePoint(byte[] encoded)
- Specified by:
decodePoint
in class ECCurve
equals
public boolean equals(java.lang.Object anObject)
hashCode
public int hashCode()
getM
public int getM()
isTrinomial
public boolean isTrinomial()
- Return true if curve uses a Trinomial basis.
- Returns:
- true if curve Trinomial, false otherwise.
getK1
public int getK1()
getK2
public int getK2()
getK3
public int getK3()