| |||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public class ECFieldF2m extends Object implements ECField
This immutable class defines an elliptic curve (EC) characteristic 2 finite field.
Constructor Summary | |
---|---|
ECFieldF2m(int m) Creates an elliptic curve characteristic 2 finite field which has 2^ m elements with normal basis.
|
|
ECFieldF2m(int m, BigInteger rp) Creates an elliptic curve characteristic 2 finite field which has 2^ m elements with
polynomial basis.
|
|
ECFieldF2m(int m, int[] ks) Creates an elliptic curve characteristic 2 finite field which has 2^ m elements with
polynomial basis.
|
Method Summary | |
---|---|
boolean |
Compares this finite field for equality with the specified object. |
int |
Returns the field size in bits which is m
for this characteristic 2 finite field.
|
int |
getM() Returns the value m of this characteristic
2 finite field.
|
int[] |
Returns an integer array which contains the order of the middle term(s) of the reduction polynomial for polynomial basis or null for normal basis. |
BigInteger |
Returns a BigInteger whose i-th bit corresponds to the i-th coefficient of the reduction polynomial for polynomial basis or null for normal basis. |
int |
hashCode() Returns a hash code value for this characteristic 2 finite field. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public ECFieldF2m(int m)
m
elements with normal basis.
m
- with 2^m
being the number of elements.public ECFieldF2m(int m, BigInteger rp)
m
elements with
polynomial basis.
The reduction polynomial for this field is based
on rp
whose i-th bit correspondes to
the i-th coefficient of the reduction polynomial.
Note: A valid reduction polynomial is either a
trinomial (X^m
+ X^k
+ 1
with m
> k
>= 1) or a
pentanomial (X^m
+ X^k3
+ X^k2
+ X^k1
+ 1 with
m
> k3
> k2
> k1
>= 1).
m
- with 2^m
being the number of elements.rp
- the BigInteger whose i-th bit corresponds to
the i-th coefficient of the reduction polynomial.public ECFieldF2m(int m, int[] ks)
m
elements with
polynomial basis. The reduction polynomial for this
field is based on ks
whose content
contains the order of the middle term(s) of the
reduction polynomial.
Note: A valid reduction polynomial is either a
trinomial (X^m
+ X^k
+ 1
with m
> k
>= 1) or a
pentanomial (X^m
+ X^k3
+ X^k2
+ X^k1
+ 1 with
m
> k3
> k2
> k1
>= 1), so ks
should
have length 1 or 3.
m
- with 2^m
being the number of elements.ks
- the order of the middle term(s) of the
reduction polynomial. Contents of this array are copied
to protect against subsequent modification.Method Detail |
---|
public boolean equals(Object obj)
equals
in class Object
obj
- the object to be compared.obj
is an instance
of ECFieldF2m and both m
and the reduction
polynomial match, false otherwise.public int getFieldSize()
m
for this characteristic 2 finite field.
public int getM()
m
of this characteristic
2 finite field.
m
with 2^m
being the
number of elements.public int[] getMidTermsOfReductionPolynomial()
public BigInteger getReductionPolynomial()
public int hashCode()
hashCode
in class Object
| |||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |