public class ECFieldF2m
extends Object
implements ECField
java.lang.Object | |
↳ | java.security.spec.ECFieldF2m |
这个不可变类定义了椭圆曲线(EC)特征2有限域。
也可以看看:
Public constructors |
|
---|---|
ECFieldF2m(int m) 创建具有正常基础的2 ^ |
|
ECFieldF2m(int m, BigInteger rp) 创建具有多项式基础的2 ^ |
|
ECFieldF2m(int m, int[] ks) 创建具有多项式基础的2 ^ |
Public methods |
|
---|---|
boolean |
equals(Object obj) 将该有限域与指定对象进行相等比较。 |
int |
getFieldSize() 返回此特征2有限域的字段大小,其位数为 |
int |
getM() 返回此特征2有限域的值 |
int[] |
getMidTermsOfReductionPolynomial() 返回一个整数数组,其中包含多项式基的缩减多项式的中间项的顺序或空的正常基础。 |
BigInteger |
getReductionPolynomial() 返回一个BigInteger,其第i位对应于多项式基的还原多项式的第i个系数,对于正常基础,则返回null。 |
int |
hashCode() 返回此特征2有限域的哈希码值。 |
Inherited methods |
|
---|---|
From class java.lang.Object
|
|
From interface java.security.spec.ECField
|
ECFieldF2m (int m)
创建具有正常基础的2 ^ m
元素的椭圆曲线特征2有限域。
Parameters | |
---|---|
m |
int : with 2^m being the number of elements. |
Throws | |
---|---|
IllegalArgumentException |
if m is not positive. |
ECFieldF2m (int m, BigInteger rp)
创建具有多项式基础的2 ^ m
元素的椭圆曲线特征2有限域。 该字段的缩减多项式基于rp
其第i位对应于还原多项式的第i个系数。
注意:有效的还原多项式是三项式(X ^ m
+ X ^ k
+ m
> k
> = 1)或五项式(X ^ m
+ X ^ k3
+ X ^ k2
+ X ^ k1
+ 1, m
> k3
> k2
> k1
> = 1)。
Parameters | |
---|---|
m |
int : with 2^m being the number of elements. |
rp |
BigInteger : the BigInteger whose i-th bit corresponds to the i-th coefficient of the reduction polynomial. |
Throws | |
---|---|
NullPointerException |
if rp is null. |
IllegalArgumentException |
if m is not positive, or rp does not represent a valid reduction polynomial. |
ECFieldF2m (int m, int[] ks)
创建具有多项式基础的2 ^ m
元素的椭圆曲线特征2有限域。 该字段的缩减多项式基于ks
其内容包含缩减多项式的中间项的顺序。 注意:有效的还原多项式或者是三项式(X ^ m
+ X ^ k
+ m
> k
> = 1)或五项式(X ^ m
+ X ^ k3
+ X ^ k2
+ X ^ k1
+ 1, m
> k3
> k2
> k1
> = 1),所以ks
应该有长度1或3。
Parameters | |
---|---|
m |
int : with 2^m being the number of elements. |
ks |
int : the order of the middle term(s) of the reduction polynomial. Contents of this array are copied to protect against subsequent modification. |
Throws | |
---|---|
NullPointerException |
if ks is null. |
IllegalArgumentException |
ifm is not positive, or the length of ks is neither 1 nor 3, or values in ks are not between m -1 and 1 (inclusive) and in descending order. |
boolean equals (Object obj)
将该有限域与指定对象进行相等比较。
Parameters | |
---|---|
obj |
Object : the object to be compared. |
Returns | |
---|---|
boolean |
true if obj is an instance of ECFieldF2m and both m and the reduction polynomial match, false otherwise. |
int getFieldSize ()
返回该特征2有限域的字段大小,其位数为 m
。
Returns | |
---|---|
int |
the field size in bits. |
int getM ()
返回此特征2有限域的值 m
。
Returns | |
---|---|
int |
m with 2^m being the number of elements. |
int[] getMidTermsOfReductionPolynomial ()
返回一个整数数组,其中包含多项式基的缩减多项式的中间项的顺序或空的正常基础。
Returns | |
---|---|
int[] |
an integer array which contains the order of the middle term(s) of the reduction polynomial for polynomial basis or null for normal basis. A new array is returned each time this method is called. |
BigInteger getReductionPolynomial ()
返回一个BigInteger,其第i位对应于多项式基的还原多项式的第i个系数,对于正常基础,则返回null。
Returns | |
---|---|
BigInteger |
a BigInteger whose i-th bit corresponds to the i-th coefficient of the reduction polynomial for polynomial basis or null for normal basis. |