Класс KEM.Encapsulator
- Вложенный класс:
KEM
public static final class KEM.Encapsulator extends Object
KEM.newEncapsulator(java.security.PublicKey) на стороне отправителя KEM. Этот класс представляет функцию упаковки ключей KEM. Каждый вызов метода encapsulate генерирует новый секретный ключ и сообщение об упаковке ключей, которые возвращаются в объекте KEM.Encapsulated.
- С момента:
- 21
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
KEM.Encapsulated |
encapsulate() |
Функция упаковки ключей. |
KEM.Encapsulated |
encapsulate |
Функция упаковки ключей. |
int |
encapsulationSize() |
Возвращает размер сообщения об упаковке ключей. |
String |
providerName() |
Возвращает имя поставщика. |
int |
secretSize() |
Возвращает размер общего секрета. |
Подробное описание методов
providerName
public String providerName()
- Возвращает:
- имя поставщика
encapsulate
public KEM.Encapsulated encapsulate()
Этот метод эквивалентен encapsulate(0, secretSize(), "Generic"). Эта комбинация аргументов должна поддерживаться каждой реализацией.
Сгенерированный секретный ключ обычно передается в функцию вывода ключей (KDF) в качестве входных данных.
- Возвращает:
- объект
KEM.Encapsulated, содержащий общий секрет, сообщение об упаковке ключей и необязательные параметры. Общий секрет представляет собойSecretKey, содержащий все байты секрета, и имя алгоритма "Generic".
encapsulate
public KEM.Encapsulated encapsulate(int from, int to, String algorithm)
Каждый вызов этого метода генерирует новый секретный ключ и сообщение об упаковке ключей, которые возвращаются в объекте KEM.Encapsulated.
Реализация может выбрать не поддерживать произвольные комбинации from, to и algorithm.
- Параметры:
-
from- начальный индекс массива байтов общего секрета для возврата, включительно -
to- конечный индекс массива байтов общего секрета для возврата, исключая -
algorithm- имя алгоритма для секретного ключа, который возвращается - Возвращает:
- объект
KEM.Encapsulated, содержащий часть общего секрета, сообщение об упаковке ключей и необязательные параметры. Часть общего секрета - этоSecretKey, содержащий байты секрета, начиная сfromи доto, исключая, и имя алгоритма, как указано. Например,encapsulate(0, 16, "AES")использует первые 16 байтов общего секрета в качестве 128-битного ключа AES. - Исключение:
-
IndexOutOfBoundsException- еслиfrom < 0,from > toилиto > secretSize() -
NullPointerException- еслиalgorithmравноnull -
UnsupportedOperationException- если комбинацияfrom,toиalgorithmне поддерживается капсулятором
secretSize
public int secretSize()
Этот метод можно вызвать, чтобы узнать длину общего секрета перед вызовом encapsulate или если полученный SecretKey не извлекается.
- Возвращает:
- размер общего секрета
encapsulationSize
public int encapsulationSize()
Этот метод можно вызвать, чтобы узнать длину сообщения об упаковке ключей перед вызовом encapsulate.
- Возвращает:
- размер сообщения об упаковке ключей
© 1993, 2025, 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://download.java.net/java/early_access/jdk24/docs/api/java.base/javax/crypto/KEM.Encapsulator.html