java.lang.Object
java.security.spec.ECFieldF2m
- 所有已实现的接口:
-
ECField
这个不可变类定义了一个特征为2的椭圆曲线(EC)有限域。
- 自从:
- 1.5
- 参见:
-
Constructor Summary
ConstructorsConstructorDescriptionECFieldF2m(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的有限域的哈希码值。
-