Module  java.base
软件包  java.security.spec

Class ECFieldF2m

  • All Implemented Interfaces:
    ECField


    public class ECFieldF2m
    extends Object
    implements ECField
    这个不可变类定义了椭圆曲线(EC)特征2有限域。
    从以下版本开始:
    1.5
    另请参见:
    ECField
    • 构造方法摘要

      构造方法  
      Constructor 描述
      ECFieldF2m​(int m)
      创建椭圆曲线特征2有限域,其具有正常基础的2 ^ m元素。
      ECFieldF2m​(int m, int[] ks)
      创建椭圆曲线特征2有限域,其具有多项式基础的2 ^ m元素。
      ECFieldF2m​(int m, BigInteger rp)
      创建椭圆曲线特征2有限域,其具有多项式基础的2 ^ m元素。
    • 构造方法详细信息

      • ECFieldF2m

        public ECFieldF2m​(int m)
        创建椭圆曲线特征2有限域,其具有正常基础的2 ^ m元素。
        参数
        m - 2 ^ m是元素的数量。
        异常
        IllegalArgumentException - 如果 m
      • ECFieldF2m

        public ECFieldF2m​(int m,
                          BigInteger rp)
        创建椭圆曲线特征2有限域,其具有多项式基础的2 ^ m元素。 该字段的缩小多项式基于其第i位对应于缩小多项式的第i个系数的rp

        注意:有效的简化多项式是三项式(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 - 其第i位对应于缩小多项式的第i个系数的BigInteger。
        异常
        NullPointerException - 如果 rp为空。
        IllegalArgumentException - 如果 m不为正,或者 rp不表示有效的缩减多项式。
      • ECFieldF2m

        public ECFieldF2m​(int m,
                          int[] ks)
        创建椭圆曲线特征2有限域,其具有多项式基础的2 ^ m元素。 该字段的缩小多项式基于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为空。
        IllegalArgumentException - 如果 m不为正,或者 ks的长度既不是1也不是3,或者 ks中的值不在 m -1和1(含)之间,并且按降序排列。
    • 方法详细信息

      • getFieldSize

        public int getFieldSize​()
        返回该特征2有限域的字段大小,位数为 m
        Specified by:
        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)
        将此有限域作为与指定对象相等的比较。
        重写:
        equalsObject
        参数
        obj - 要比较的对象。
        结果
        如果 objobj的实例,并且 m和缩减多项式匹配, m true,否则为false。
        另请参见:
        Object.hashCode()HashMap