Класс EllipticCurve
- java.lang.Object
-
- java.security.spec.EllipticCurve
public class EllipticCurve extends Object
Этот неизменяемый класс хранит необходимые значения для представления эллиптической кривой.
- Since:
- 1.5
- См. также:
-
ECField,ECFieldFp,ECFieldF2m
Конструкторы
| Конструктор | Описание |
|---|---|
EllipticCurve(ECField field,
BigInteger a,
BigInteger b) |
Создаёт эллиптическую кривую с заданным эллиптическим полем |
EllipticCurve(ECField field,
BigInteger a,
BigInteger b,
byte[] seed) |
Создаёт эллиптическую кривую с заданным эллиптическим полем |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
equals(Object obj) |
Сравнивает эту эллиптическую кривую на равенство с заданным объектом. |
BigInteger |
getA() |
Возвращает первый коэффициент |
BigInteger |
getB() |
Возвращает второй коэффициент |
ECField |
getField() |
Возвращает конечное поле |
byte[] |
getSeed() |
Возвращает байты инициализации |
int |
hashCode() |
Возвращает хеш-код для этой эллиптической кривой. |
Методы, унаследованные от класса java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Конструкторы
EllipticCurve
public EllipticCurve(ECField field,
BigInteger a,
BigInteger b)
Создаёт эллиптическую кривую с заданным эллиптическим полем field и коэффициентами a и b.
- Parameters:
-
field- конечное поле, над которым определена эта эллиптическая кривая. -
a- первый коэффициент этой эллиптической кривой. -
b- второй коэффициент этой эллиптической кривой. - Throws:
-
NullPointerException- еслиfield,a, илиbравно null. -
IllegalArgumentException- еслиaилиbне равно null и не принадлежит кfield.
EllipticCurve
public EllipticCurve(ECField field,
BigInteger a,
BigInteger b,
byte[] seed)
Создаёт эллиптическую кривую с заданным эллиптическим полем field, коэффициентами a и b, и seed используемыми для генерации кривой.
- Parameters:
-
field- конечное поле, над которым определена эта эллиптическая кривая. -
a- первый коэффициент этой эллиптической кривой. -
b- второй коэффициент этой эллиптической кривой. -
seed- байты, используемые при генерации кривой для последующей проверки. Содержимое этого массива копируется для защиты от последующих изменений. - Throws:
-
NullPointerException- еслиfield,a, илиbравно null. -
IllegalArgumentException- еслиaилиbне равно null и не принадлежит кfield.
Методы
getField
public ECField getField()
Возвращает конечное поле field, над которым определена эта эллиптическая кривая.
- Returns:
- поле
field, над которым определена кривая.
getA
public BigInteger getA()
Возвращает первый коэффициент a эллиптической кривой.
- Returns:
- первый коэффициент
a.
getB
public BigInteger getB()
Возвращает второй коэффициент b эллиптической кривой.
- Returns:
- второй коэффициент
b.
getSeed
public byte[] getSeed()
Возвращает байты инициализации seed , используемые при генерации кривой. Может быть null, если не указано.
- Returns:
- байты инициализации
seed. Каждый вызов этого метода возвращает новый массив.
equals
public boolean equals(Object obj)
Сравнивает эту эллиптическую кривую на равенство с заданным объектом.
- Overrides:
-
equalsв классеObject - Parameters:
-
obj- объект для сравнения. - Returns:
- true, если
objявляется экземпляром EllipticCurve и соответствуют поля, A и B, иначе false. - See Also:
-
Object.hashCode(),HashMap
hashCode
public int hashCode()
Возвращает хеш-код для этой эллиптической кривой.
- Overrides:
-
hashCodeв классеObject - Returns:
- значение хеш-кода, вычисленное из хеш-кодов поля, A и B, следующим образом:
(field.hashCode() << 6) + (a.hashCode() << 4) + (b.hashCode() << 2)
- See Also:
-
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/EllipticCurve.html