Module java.base

Class ECFieldF2m

java.lang.Object
java.security.spec.ECFieldF2m
所有已实现的接口:
ECField

public class ECFieldF2m extends Object implements ECField
这个不可变类定义了一个特征为2的椭圆曲线(EC)有限域。
自从:
1.5
参见:
  • Constructor Summary

    Constructors
    Constructor
    Description
    ECFieldF2m(int m)
    创建一个具有2^m个元素且具有正规基的特征为2的椭圆曲线有限域。
    ECFieldF2m(int m, int[] ks)
    创建一个具有2^m个元素且具有多项式基的特征为2的椭圆曲线有限域。
    ECFieldF2m(int m, BigInteger rp)
    创建一个具有2^m个元素且具有多项式基的特征为2的椭圆曲线有限域。
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    equals(Object obj)
    将此有限域与指定对象进行比较以检查是否相等。
    int
    返回此特征为2的有限域的位数大小,即m
    int
    getM()
    返回此特征为2的有限域的值m
    int[]
    返回一个整数数组,其中包含多项式基的减法多项式的中间项的顺序,或对于正规基则返回null。
    返回一个BigInteger,其第i位对应于多项式基的减法多项式的第i个系数,或对于正规基则返回null。
    int
    返回此特征为2的有限域的哈希码值。

    Methods declared in class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ECFieldF2m

      public ECFieldF2m(int m)
      创建一个具有2^m个元素且具有正规基的特征为2的椭圆曲线有限域。
      参数:
      m - 其中2^m是元素的数量。
      抛出:
      IllegalArgumentException - 如果m不是正数。
    • ECFieldF2m

      public ECFieldF2m(int m, BigInteger rp)
      创建一个具有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

      public BigInteger getReductionPolynomial()
      返回一个BigInteger,其第i位对应于多项式基的减法多项式的第i个系数,或对于正规基则返回null。
      返回:
      一个BigInteger,其第i位对应于多项式基的减法多项式的第i个系数,或对于正规基则返回null。
    • getMidTermsOfReductionPolynomial

      public int[] getMidTermsOfReductionPolynomial()
      返回一个整数数组,其中包含多项式基的减法多项式的中间项的顺序,或对于正规基则返回null。
      返回:
      一个整数数组,其中包含多项式基的减法多项式的中间项的顺序,或对于正规基则返回null。每次调用此方法时都会返回一个新数组。
    • equals

      public boolean equals(Object obj)
      将此有限域与指定对象进行比较以检查是否相等。
      覆盖:
      equals 在类 Object
      参数:
      obj - 要比较的对象。
      返回:
      如果obj是ECFieldF2m的实例且m和减法多项式匹配,则返回true,否则返回false。
      参见:
    • hashCode

      public int hashCode()
      返回此特征为2的有限域的哈希码值。
      覆盖:
      hashCode 在类 Object
      返回:
      一个哈希码值。
      参见: