Класс ECFieldF2m
- java.lang.Object
-
- java.security.spec.ECFieldF2m
- Все реализованные интерфейсы:
- ECField
public class ECFieldF2m extends Object implements ECField
Этот неизменяемый класс определяет конечное поле эллиптической кривой (EC) характеристики 2.
- С момента:
- 1.5
- См. также:
ECField
Конструкторы
| Конструктор и описание |
|---|
ECFieldF2m(int m) Создаёт конечное поле эллиптической кривой характеристики 2, имеющее 2^ |
ECFieldF2m(int m,
BigInteger rp) Создаёт конечное поле эллиптической кривой характеристики 2, имеющее 2^ |
ECFieldF2m(int m,
int[] ks) Создаёт конечное поле эллиптической кривой характеристики 2, имеющее 2^ |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
boolean |
equals(Object obj) Сравнивает это конечное поле на равенство с заданным объектом. |
int |
getFieldSize() Возвращает размер поля в битах, который равен |
int |
getM() Возвращает значение |
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.