Класс ExemptionMechanismSpi

public abstract class ExemptionMechanismSpi
extends Object

Этот класс определяет интерфейс поставщика сервисов (SPI) для класса ExemptionMechanism. Все абстрактные методы в этом классе должны быть реализованы каждым поставщиком криптографических сервисов, желающим предоставить реализацию конкретного механизма исключения.

Since:
1.4

Конструкторы

КонструкторОписание
ExemptionMechanismSpi()

Методы

Модификатор и типМетодОписание
protected abstract byte[]engineGenExemptionBlob()

Генерирует блок данных ключа механизма исключения.

protected abstract intengineGenExemptionBlob​(byte[] output, int outputOffset)

Генерирует блок данных ключа механизма исключения и сохраняет результат в буфере output, начиная с позиции outputOffset.

protected abstract intengineGetOutputSize​(int inputLen)

Возвращает длину в байтах, необходимую буферу вывода для хранения результата следующей операции engineGenExemptionBlob, учитывая длину входных данных inputLen (в байтах).

protected abstract voidengineInit​(Key key)

Инициализирует механизм исключения ключом.

protected abstract voidengineInit​(Key key, AlgorithmParameters params)

Инициализирует механизм исключения ключом и набором параметров алгоритма.

protected abstract voidengineInit​(Key key, AlgorithmParameterSpec params)

Инициализирует механизм исключения ключом и набором параметров алгоритма.

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

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

Конструкторы

ExemptionMechanismSpi

public ExemptionMechanismSpi()

Методы

engineGetOutputSize

protected abstract int engineGetOutputSize(int inputLen)

Возвращает длину в байтах, необходимую буферу вывода для хранения результата следующей операции engineGenExemptionBlob, учитывая длину входных данных inputLen (в байтах).

Фактическая длина вывода следующего вызова engineGenExemptionBlob может быть меньше длины, возвращенной этим методом.

Parameters:
inputLen - длина входных данных (в байтах)
Returns:
необходимый размер буфера вывода (в байтах)

engineInit

protected abstract void engineInit(Key key)
                            throws InvalidKeyException,
                                   ExemptionMechanismException

Инициализирует механизм исключения ключом.

Если этому механизму исключения требуются какие-либо параметры алгоритма, которые нельзя вывести из данного key, реализация основного механизма исключения должна сгенерировать необходимые параметры сама (используя значения по умолчанию, специфичные для поставщика); в случае, если параметры алгоритма должны быть указаны вызывающей стороной, генерируется InvalidKeyException.

Parameters:
key - ключ для этого механизма исключения
Throws:
InvalidKeyException - если предоставленный ключ не подходит для этого механизма исключения.
ExemptionMechanismException - если при инициализации возникли проблемы.

engineInit

protected abstract void engineInit(Key key,
                                   AlgorithmParameterSpec params)
                            throws InvalidKeyException,
                                   InvalidAlgorithmParameterException,
                                   ExemptionMechanismException

Инициализирует механизм исключения ключом и набором параметров алгоритма.

Если этому механизму исключения требуются какие-либо параметры алгоритма и params равно null, реализация основного механизма исключения должна сгенерировать необходимые параметры сама (используя значения по умолчанию, специфичные для поставщика); в случае, если параметры алгоритма должны быть указаны вызывающей стороной, генерируется InvalidAlgorithmParameterException.

Parameters:
key - ключ для этого механизма исключения
params - параметры алгоритма
Throws:
InvalidKeyException - если предоставленный ключ не подходит для этого механизма исключения.
InvalidAlgorithmParameterException - если заданные параметры алгоритма не подходят для этого механизма исключения.
ExemptionMechanismException - если при инициализации возникли проблемы.

engineInit

protected abstract void engineInit(Key key,
                                   AlgorithmParameters params)
                            throws InvalidKeyException,
                                   InvalidAlgorithmParameterException,
                                   ExemptionMechanismException

Инициализирует механизм исключения ключом и набором параметров алгоритма.

Если этому механизму исключения требуются какие-либо параметры алгоритма и params равно null, реализация основного механизма исключения должна сгенерировать необходимые параметры сама (используя значения по умолчанию, специфичные для поставщика); в случае, если параметры алгоритма должны быть указаны вызывающей стороной, генерируется InvalidAlgorithmParameterException.

Parameters:
key - ключ для этого механизма исключения
params - параметры алгоритма
Throws:
InvalidKeyException - если предоставленный ключ не подходит для этого механизма исключения.
InvalidAlgorithmParameterException - если заданные параметры алгоритма не подходят для этого механизма исключения.
ExemptionMechanismException - если при инициализации возникли проблемы.

engineGenExemptionBlob

protected abstract byte[] engineGenExemptionBlob()
                                          throws ExemptionMechanismException

Генерирует блок данных ключа механизма исключения.

Returns:
новый буфер с результатом блока ключа.
Throws:
ExemptionMechanismException - если при генерации возникли проблемы.

engineGenExemptionBlob

protected abstract int engineGenExemptionBlob(byte[] output,
                                              int outputOffset)
                                       throws ShortBufferException,
                                              ExemptionMechanismException

Генерирует блок данных ключа механизма исключения и сохраняет результат в буфер output, начиная с позиции outputOffset включительно.

Если буфер output слишком мал для хранения результата, выбрасывается ShortBufferException. В этом случае повторите этот вызов с большим буфером вывода. Используйте engineGetOutputSize для определения размера буфера вывода.

Parameters:
output - буфер для результата
outputOffset - смещение в output для хранения результата
Returns:
количество байтов, сохранённых в output
Throws:
ShortBufferException - если предоставленный буфер вывода слишком мал для хранения результата.
ExemptionMechanismException - если при генерации возникли проблемы.

© 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/javax/crypto/ExemptionMechanismSpi.html

Spec-Zone .ru
спецификации, руководства, описания, API