java.lang.Object
java.security.spec.ECFieldF2m
- 所有已实现的接口:
-
ECField
这个不可变类定义了一个特征为2的椭圆曲线(EC)有限域。
- 自从:
- 1.5
- 参见:
-
Constructor Summary
ConstructorDescriptionECFieldF2m
(int m) 创建一个具有2^m
个元素且具有正规基的特征为2的椭圆曲线有限域。ECFieldF2m
(int m, int[] ks) 创建一个具有2^m
个元素且具有多项式基的特征为2的椭圆曲线有限域。ECFieldF2m
(int m, BigInteger rp) 创建一个具有2^m
个元素且具有多项式基的特征为2的椭圆曲线有限域。 -
Method Summary
-
Constructor Details
-
ECFieldF2m
public ECFieldF2m(int m) 创建一个具有2^m
个元素且具有正规基的特征为2的椭圆曲线有限域。- 参数:
-
m
- 其中2^m
是元素的数量。 - 抛出:
-
IllegalArgumentException
- 如果m
不是正数。
-
ECFieldF2m
创建一个具有2^m
个元素且具有多项式基的特征为2的椭圆曲线有限域。该域的减法多项式基于rp
,其中第i位对应于减法多项式的第i个系数。注意:有效的减法多项式可以是三项式(X^
m
+ X^k
+ 1,其中m
>k
>= 1)或五项式(X^m
+ X^k3
+ X^k2
+ X^k1
+ 1,其中m
>k3
>k2
>k1
>= 1)。- 参数:
-
m
- 其中2^m
是元素的数量。 -
rp
- BigInteger,其第i位对应于减法多项式的第i个系数。 - 抛出:
-
NullPointerException
- 如果rp
为null。 -
IllegalArgumentException
- 如果m
不是正数,或rp
不表示有效的减法多项式。
-
ECFieldF2m
public ECFieldF2m(int m, int[] ks) 创建一个具有2^m
个元素且具有多项式基的特征为2的椭圆曲线有限域。该域的减法多项式基于ks
,其中内容包含减法多项式的中间项的顺序。注意:有效的减法多项式可以是三项式(X^m
+ X^k
+ 1,其中m
>k
>= 1)或五项式(X^m
+ X^k3
+ X^k2
+ X^k1
+ 1,其中m
>k3
>k2
>k1
>= 1),因此ks
的长度应为1或3。- 参数:
-
m
- 其中2^m
是元素的数量。 -
ks
- 减法多项式的中间项的顺序。此数组的内容被复制以防止后续修改。 - 抛出:
-
NullPointerException
- 如果ks
为null。 -
IllegalArgumentException
- 如果m
不是正数,或ks
的长度既不是1也不是3,或ks
中的值不在m
-1和1(包括)之间且按降序排列。
-
-
Method Details
-
getFieldSize
public int getFieldSize()返回此特征为2的有限域的位数大小,即m
。- 指定者:
-
getFieldSize
在接口ECField
- 返回:
- 位数大小。
-
getM
public int getM()返回此特征为2的有限域的值m
。- 返回:
-
m
,其中2^m
是元素的数量。
-
getReductionPolynomial
返回一个BigInteger,其第i位对应于多项式基的减法多项式的第i个系数,或对于正规基则返回null。- 返回:
- 一个BigInteger,其第i位对应于多项式基的减法多项式的第i个系数,或对于正规基则返回null。
-
getMidTermsOfReductionPolynomial
public int[] getMidTermsOfReductionPolynomial()返回一个整数数组,其中包含多项式基的减法多项式的中间项的顺序,或对于正规基则返回null。- 返回:
- 一个整数数组,其中包含多项式基的减法多项式的中间项的顺序,或对于正规基则返回null。每次调用此方法时都会返回一个新数组。
-
equals
将此有限域与指定对象进行比较以检查是否相等。 -
hashCode
public int hashCode()返回此特征为2的有限域的哈希码值。
-