Spec-Zone.ru › OpenJDK 25

Класс KEM.Encapsulator

java.lang.Object
javax.crypto.KEM.Encapsulator
Вмещающий класс:
KEM
public static final class KEM.Encapsulator extends Object
Инкапсулятор, созданный с помощью KEM.newEncapsulator(PublicKey) на стороне отправителя KEM.

Этот класс представляет функцию инкапсуляции ключа KEM. Каждый вызов метода encapsulate генерирует новый секретный ключ и сообщение инкапсуляции ключа, которые возвращаются в объекте KEM.Encapsulated.

Начиная с:
21

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

Модификатор и тип Метод Описание
KEM.Encapsulated encapsulate()
Функция инкапсуляции ключа.
KEM.Encapsulated encapsulate(int from, int to, String algorithm)
Функция инкапсуляции ключа.
int encapsulationSize()
Возвращает размер сообщения инкапсуляции ключа.
String providerName()
Возвращает имя поставщика.
int secretSize()
Возвращает размер общего секрета.

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

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

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

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 — имя алгоритма возвращаемого секретного ключа. Сведения о стандартных именах алгоритмов секретных ключей см. в разделе SecretKey Algorithms спецификации Java Security Standard Algorithm Names. Укажите "Generic", если результат будет использоваться в качестве исходного ключевого материала функции выработки ключа (KDF).
Возвращает:
объект 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 не поддерживается инкапсулятором
Внешние спецификации
  • Java Security Standard Algorithm Names

secretSize

public int secretSize()
Возвращает размер общего секрета.

Этот метод можно вызвать, чтобы узнать длину общего секрета до вызова encapsulate или если полученный SecretKey нельзя извлечь.

Возвращает:
размер общего секрета

encapsulationSize

public int encapsulationSize()
Возвращает размер сообщения инкапсуляции ключа.

Этот метод можно вызвать, чтобы узнать длину сообщения инкапсуляции до вызова encapsulate.

Возвращает:
размер сообщения инкапсуляции ключа

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторское право © 1993, 2025, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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://docs.oracle.com/en/java/javase/25/docs/api/java.base/javax/crypto/KEM.Encapsulator.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API