public abstract static class ECCurve.AbstractF2m extends ECCurve
ECCurve.AbstractF2m, ECCurve.AbstractFp, ECCurve.Config, ECCurve.F2m, ECCurve.Fpa, b, cofactor, coord, COORD_AFFINE, COORD_HOMOGENEOUS, COORD_JACOBIAN, COORD_JACOBIAN_CHUDNOVSKY, COORD_JACOBIAN_MODIFIED, COORD_LAMBDA_AFFINE, COORD_LAMBDA_PROJECTIVE, COORD_SKEWED, endomorphism, field, multiplier, order| Modifier | Constructor and Description |
|---|---|
protected |
AbstractF2m(int m,
int k1,
int k2,
int k3) |
| Modifier and Type | Method and Description |
|---|---|
ECPoint |
createPoint(java.math.BigInteger x,
java.math.BigInteger y) |
protected ECPoint |
decompressPoint(int yTilde,
java.math.BigInteger X1)
Decompresses a compressed point P = (xp, yp) (X9.62 s 4.2.2).
|
static java.math.BigInteger |
inverse(int m,
int[] ks,
java.math.BigInteger x) |
boolean |
isKoblitz()
Returns true if this is a Koblitz curve (ABC curve).
|
boolean |
isValidFieldElement(java.math.BigInteger x) |
ECFieldElement |
randomFieldElement(java.security.SecureRandom r) |
ECFieldElement |
randomFieldElementMult(java.security.SecureRandom r) |
protected ECFieldElement |
solveQuadraticEquation(ECFieldElement beta)
Solves a quadratic equation
z2 + z = beta(X9.62
D.1.6) The other solution is z + 1. |
checkPoint, checkPoints, checkPoints, cloneCurve, configure, createCacheSafeLookupTable, createDefaultMultiplier, createRawPoint, createRawPoint, decodePoint, equals, equals, fromBigInteger, getA, getAffinePointEncodingLength, getAllCoordinateSystems, getB, getCofactor, getCoordinateSystem, getEndomorphism, getField, getFieldElementEncodingLength, getFieldSize, getInfinity, getMultiplier, getOrder, getPreCompInfo, hashCode, importPoint, normalizeAll, normalizeAll, precompute, supportsCoordinateSystem, validatePointpublic static java.math.BigInteger inverse(int m,
int[] ks,
java.math.BigInteger x)
public ECPoint createPoint(java.math.BigInteger x, java.math.BigInteger y)
createPoint in class ECCurvepublic boolean isValidFieldElement(java.math.BigInteger x)
isValidFieldElement in class ECCurvepublic ECFieldElement randomFieldElement(java.security.SecureRandom r)
randomFieldElement in class ECCurvepublic ECFieldElement randomFieldElementMult(java.security.SecureRandom r)
randomFieldElementMult in class ECCurveprotected ECPoint decompressPoint(int yTilde, java.math.BigInteger X1)
decompressPoint in class ECCurveyTilde - ~yp, an indication bit for the decompression of yp.X1 - The field element xp.protected ECFieldElement solveQuadraticEquation(ECFieldElement beta)
z2 + z = beta(X9.62
D.1.6) The other solution is z + 1.beta - The value to solve the quadratic equation for.z2 + z = beta or
null if no solution exists.public boolean isKoblitz()