Класс KeyPairGeneratorSpi
- java.lang.Object
-
- java.security.KeyPairGeneratorSpi
- Прямые известные подклассы:
KeyPairGenerator
public abstract class KeyPairGeneratorSpi extends Object
Этот класс определяет интерфейс поставщика сервисов (SPI) для класса KeyPairGenerator, который используется для генерации пар открытого и закрытого ключей.
Все абстрактные методы в этом классе должны быть реализованы каждым поставщиком криптографических сервисов, желающим предоставить реализацию генератора пар ключей для определенного алгоритма.
В случае, если клиент не инициализирует KeyPairGenerator явно (через вызов метода initialize), каждый поставщик должен предоставить (и задокументировать) значения по умолчанию для инициализации. См. разделы ограничений размера ключа в документе JDK Providers для получения информации о значениях по умолчанию для KeyPairGenerator, используемых поставщиками JDK. Однако обратите внимание, что значения по умолчанию могут различаться у разных поставщиков. Кроме того, значение по умолчанию для поставщика может измениться в будущей версии. Поэтому рекомендуется явно инициализировать KeyPairGenerator вместо того, чтобы полагаться на значения по умолчанию, специфичные для поставщика.
- С:
- 1.2
- См. также:
-
KeyPairGenerator,AlgorithmParameterSpec
Конструкторы
| Конструктор | Описание |
|---|---|
KeyPairGeneratorSpi() |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
abstract KeyPair |
generateKeyPair() |
Генерирует пару ключей. |
abstract void |
initialize(int keysize,
SecureRandom random) |
Инициализирует генератор пар ключей для определенного размера ключа, используя набор параметров по умолчанию. |
void |
initialize(AlgorithmParameterSpec params,
SecureRandom random) |
Инициализирует генератор пар ключей, используя указанный набор параметров и предоставленный пользователем источник случайности. |
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Конструкторы
KeyPairGeneratorSpi
public KeyPairGeneratorSpi()
Методы
initialize
public abstract void initialize(int keysize,
SecureRandom random)
Инициализирует генератор пар ключей для определенного размера ключа, используя набор параметров по умолчанию.
- Параметры:
-
keysize- размер ключа. Это алгоритмо-специфический параметр, такой как длина модуля, указанный в битах. -
random- источник случайности для этого генератора. - Исключения:
-
InvalidParameterException- еслиkeysizeне поддерживается этим объектом KeyPairGeneratorSpi.
initialize
public void initialize(AlgorithmParameterSpec params,
SecureRandom random)
throws InvalidAlgorithmParameterException
Инициализирует генератор пар ключей, используя указанный набор параметров и предоставленный пользователем источник случайности.
Этот конкретный метод добавлен в этот ранее определённый абстрактный класс. (Для обратной совместимости он не может быть абстрактным.) Он может быть переопределён поставщиком для инициализации генератора пар ключей. Такое переопределение ожидается, что бросит исключение InvalidAlgorithmParameterException, если параметр не подходит для этого генератора пар ключей. Если этот метод не переопределён, он всегда бросает UnsupportedOperationException.
- Параметры:
-
params- набор параметров, используемый для генерации ключей. -
random- источник случайности для этого генератора. - Исключения:
-
InvalidAlgorithmParameterException- если заданные параметры не подходят для данного генератора пар ключей. - С:
- 1.2
generateKeyPair
public abstract KeyPair generateKeyPair()
Генерирует пару ключей. Если метод инициализации не был вызван с помощью интерфейса KeyPairGenerator, будут использоваться алгоритмо-специфические значения по умолчанию. Это сгенерирует новую пару ключей каждый раз при вызове.
- Возвращает:
- ново сгенерированную
KeyPair
© 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/KeyPairGeneratorSpi.html