Класс ECFieldF2m

Все реализованные интерфейсы:
ECField
public class ECFieldF2m
extends Object
implements ECField

Этот неизменяемый класс определяет конечное поле характеристики 2 эллиптической кривой (ЭК).

С момента:
1.5
См. также:
ECField

Краткое описание конструкторов

Конструктор Описание
ECFieldF2m​(int m)

Создаёт конечное поле характеристики 2 эллиптической кривой, которое содержит 2^m элементов с базисом нормальных векторов.

ECFieldF2m​(int m, int[] ks)

Создаёт конечное поле характеристики 2 эллиптической кривой, которое содержит 2^m элементов с базисом полиномов.

ECFieldF2m​(int m, BigInteger rp)

Создаёт конечное поле характеристики 2 эллиптической кривой, которое содержит 2^m элементов с базисом полиномов.

Краткое описание методов

Модификатор и тип Метод Описание
boolean equals​(Object obj)

Сравнивает это конечное поле на равенство с указанным объектом.

int getFieldSize()

Возвращает размер поля в битах, который равен m для этого конечного поля характеристики 2.

int getM()

Возвращает значение m этого конечного поля характеристики 2.

int[] getMidTermsOfReductionPolynomial()

Возвращает массив целых чисел, содержащий порядок средней/средних степени полинома приведения для базиса полиномов, или null для базиса нормальных векторов.

BigInteger getReductionPolynomial()

Возвращает BigInteger, в котором i-й бит соответствует i-му коэффициенту полинома приведения для базиса полиномов или null для базиса нормальных векторов.

int hashCode()

Возвращает значение хэш-кода для этого конечного поля характеристики 2.

Методы, объявленные в классе java.lang.Object

clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait

Подробное описание конструкторов

ECFieldF2m

public ECFieldF2m(int m)

Создаёт конечное поле характеристики 2 эллиптической кривой, которое содержит 2^m элементов с базисом нормальных векторов.

Параметры:
m - с 2^m в качестве количества элементов.
Исключения:
IllegalArgumentException - если m не положительно.

ECFieldF2m

public ECFieldF2m(int m,
                  BigInteger rp)

Создаёт конечное поле характеристики 2 эллиптической кривой, которое содержит 2^m элементов с базисом полиномов. Полином приведения для этого поля основан на 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 эллиптической кривой, которое содержит 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 равно null.
IllegalArgumentException - если m не положительно, или длина ks не равна 1 или 3, или значения в ks не находятся в интервале от m-1 до 1 (включительно) и упорядочены по убыванию.

Подробное описание методов

getFieldSize

public int getFieldSize()

Возвращает размер поля в битах, который равен m для этого конечного поля характеристики 2.

Определено в:
getFieldSize в интерфейсе ECField
Возвращает:
размер поля в битах.

getM

public int getM()

Возвращает значение m этого конечного поля характеристики 2.

Возвращает:
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 - объект для сравнения.
Возвращает:
true, если obj является экземпляром ECFieldF2m и оба m и полином приведения совпадают, иначе false.
См. также:
Object.hashCode(), HashMap

hashCode

public int hashCode()

Возвращает значение хэш-кода для этого конечного поля характеристики 2.

Переопределяет:
hashCode в классе Object
Возвращает:
значение хэш-кода.
См. также:
Object.equals(java.lang.Object), System.identityHashCode(java.lang.Object)

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/security/spec/ECFieldF2m.html

Spec-Zone .ru
спецификации, руководства, описания, API