public static class ECFieldElement.F2m extends ECFieldElement.AbstractF2m
F2m
in polynomial basis (PB)
representation. Both trinomial (TPB) and pentanomial (PPB) polynomial
basis representations are supported. Gaussian normal basis (GNB)
representation is not supported.ECFieldElement.AbstractF2m, ECFieldElement.AbstractFp, ECFieldElement.F2m, ECFieldElement.Fp
Modifier and Type | Field and Description |
---|---|
static int |
GNB
Indicates gaussian normal basis representation (GNB).
|
static int |
PPB
Indicates pentanomial basis representation (PPB).
|
static int |
TPB
Indicates trinomial basis representation (TPB).
|
halfTrace, hasFastTrace, trace
encodeTo, getEncoded, getEncodedLength, toString
public static final int GNB
public static final int TPB
public static final int PPB
public int bitLength()
bitLength
in class ECFieldElement
public boolean isOne()
isOne
in class ECFieldElement
public boolean isZero()
isZero
in class ECFieldElement
public boolean testBitZero()
testBitZero
in class ECFieldElement
public java.math.BigInteger toBigInteger()
toBigInteger
in class ECFieldElement
public java.lang.String getFieldName()
getFieldName
in class ECFieldElement
public int getFieldSize()
getFieldSize
in class ECFieldElement
public ECFieldElement add(ECFieldElement b)
add
in class ECFieldElement
public ECFieldElement addOne()
addOne
in class ECFieldElement
public ECFieldElement subtract(ECFieldElement b)
subtract
in class ECFieldElement
public ECFieldElement multiply(ECFieldElement b)
multiply
in class ECFieldElement
public ECFieldElement multiplyMinusProduct(ECFieldElement b, ECFieldElement x, ECFieldElement y)
multiplyMinusProduct
in class ECFieldElement
public ECFieldElement multiplyPlusProduct(ECFieldElement b, ECFieldElement x, ECFieldElement y)
multiplyPlusProduct
in class ECFieldElement
public ECFieldElement divide(ECFieldElement b)
divide
in class ECFieldElement
public ECFieldElement negate()
negate
in class ECFieldElement
public ECFieldElement square()
square
in class ECFieldElement
public ECFieldElement squareMinusProduct(ECFieldElement x, ECFieldElement y)
squareMinusProduct
in class ECFieldElement
public ECFieldElement squarePlusProduct(ECFieldElement x, ECFieldElement y)
squarePlusProduct
in class ECFieldElement
public ECFieldElement squarePow(int pow)
squarePow
in class ECFieldElement
public ECFieldElement invert()
invert
in class ECFieldElement
public ECFieldElement sqrt()
sqrt
in class ECFieldElement
public int getRepresentation()
F2m
, either of
TPB (trinomial
basis representation) or
PPB (pentanomial
basis representation).public int getM()
m
of the reduction polynomial
f(z)
.public int getK1()
k
where xm +
xk + 1
represents the reduction polynomial
f(z)
.k1
where xm +
xk3 + xk2 + xk1 + 1
represents the reduction polynomial f(z)
.public int getK2()
0
k2
where xm +
xk3 + xk2 + xk1 + 1
represents the reduction polynomial f(z)
.public int getK3()
0
k3
where xm +
xk3 + xk2 + xk1 + 1
represents the reduction polynomial f(z)
.public boolean equals(java.lang.Object anObject)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object