W3cubDocs

/OpenJDK 21

Interface KEMSpi.EncapsulatorSpi

Enclosing interface:
KEMSpi
public static interface KEMSpi.EncapsulatorSpi
Since:
21
See Also:

Method Summary

Modifier and Type Method Description
KEM.Encapsulated engineEncapsulate(int from, int to, String algorithm)
The key encapsulation function.
int engineEncapsulationSize()
Returns the size of the key encapsulation message.
int engineSecretSize()
Returns the size of the shared secret.

Method Details

engineEncapsulate

KEM.Encapsulated engineEncapsulate(int from, int to, String algorithm)
The key encapsulation function.

Each invocation of this method must generate a new secret key and key encapsulation message that is returned in an KEM.Encapsulated object.

An implementation must support the case where from is 0, to is the same as the return value of secretSize(), and algorithm is "Generic".

Parameters:
from - the initial index of the shared secret byte array to be returned, inclusive
to - the final index of the shared secret byte array to be returned, exclusive
algorithm - the algorithm name for the secret key that is returned
Returns:
an KEM.Encapsulated object containing a portion of the shared secret as a key with the specified algorithm, key encapsulation message, and optional parameters.
Throws:
IndexOutOfBoundsException - if from < 0, from > to, or to > secretSize()
NullPointerException - if algorithm is null
UnsupportedOperationException - if the combination of from, to, and algorithm is not supported by the encapsulator
See Also:

engineSecretSize

int engineSecretSize()
Returns the size of the shared secret.
Returns:
the size of the shared secret as a finite non-negative integer
See Also:

engineEncapsulationSize

int engineEncapsulationSize()
Returns the size of the key encapsulation message.
Returns:
the size of the key encapsulation message as a finite non-negative integer
See Also:

© 1993, 2023, 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/21/docs/api/java.base/javax/crypto/KEMSpi.EncapsulatorSpi.html