Класс ExemptionMechanismSpi
public abstract class ExemptionMechanismSpi extends Object
ExemptionMechanism. Все абстрактные методы этого класса должны быть реализованы каждым поставщиком криптографических служб, который желает предоставить реализацию определённого механизма освобождения.- Начиная с:
- 1.4
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
ExemptionMechanismSpi() |
Конструктор, вызываемый подклассами. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
protected abstract byte[] |
engineGenExemptionBlob() |
Создаёт блок ключа механизма освобождения. |
protected abstract int |
engineGenExemptionBlob |
Создаёт блок ключа механизма освобождения и сохраняет результат в буфере output, начиная с позиции outputOffset включительно. |
protected abstract int |
engineGetOutputSize |
Возвращает длину в байтах, необходимую выходному буферу для хранения результата следующей операции engineGenExemptionBlob при заданной длине входных данных inputLen (в байтах). |
protected abstract void |
engineInit |
Инициализирует этот механизм освобождения с помощью ключа. |
protected abstract void |
engineInit |
Инициализирует этот механизм освобождения с помощью ключа и набора параметров алгоритма. |
protected abstract void |
engineInit |
Инициализирует этот механизм освобождения с помощью ключа и набора параметров алгоритма. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создаёт и возвращает копию этого объекта. |
boolean |
equals |
Указывает, является ли другой объект «равным» этому объекту. |
protected void |
finalize() |
Устарело, будет удалено: этот элемент API может быть удалён в будущей версии. Финализация объявлена устаревшей и может быть удалена в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
int |
hashCode() |
Возвращает хеш-код этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
String |
toString() |
Возвращает строковое представление объекта. |
final void |
wait() |
Приостанавливает текущий поток до его пробуждения, обычно в результате уведомления или прерывания. |
final void |
wait |
Приостанавливает текущий поток до его пробуждения, обычно в результате уведомления или прерывания, либо до истечения заданного промежутка реального времени. |
final void |
wait |
Приостанавливает текущий поток до его пробуждения, обычно в результате уведомления или прерывания, либо до истечения заданного промежутка реального времени. |
Подробное описание конструкторов
ExemptionMechanismSpi
public ExemptionMechanismSpi()
Подробное описание методов
engineGetOutputSize
protected abstract int engineGetOutputSize(int inputLen)
engineGenExemptionBlob при заданной длине входных данных inputLen (в байтах). Фактическая длина выходных данных следующего вызова engineGenExemptionBlob может быть меньше длины, возвращаемой этим методом.
- Параметры:
-
inputLen— длина входных данных (в байтах) - Возвращает:
- требуемый размер выходного буфера (в байтах)
engineInit
protected abstract void engineInit(Key key) throws InvalidKeyException, ExemptionMechanismException
Если этому механизму освобождения требуются параметры алгоритма, которые невозможно получить из заданного key, предполагается, что базовая реализация механизма освобождения самостоятельно сгенерирует необходимые параметры (используя значения по умолчанию, заданные поставщиком); если параметры алгоритма должен указать вызывающий код, возникает исключение InvalidKeyException.
- Параметры:
-
key— ключ для этого механизма освобождения - Выбрасывает:
-
InvalidKeyException— если заданный ключ не подходит для этого механизма освобождения. -
ExemptionMechanismException— если при инициализации возникли проблемы.
engineInit
protected abstract void engineInit(Key key, AlgorithmParameterSpec params) throws InvalidKeyException, InvalidAlgorithmParameterException, ExemptionMechanismException
Если этому механизму освобождения требуются параметры алгоритма, а params равно null, предполагается, что базовая реализация механизма освобождения самостоятельно сгенерирует необходимые параметры (используя значения по умолчанию, заданные поставщиком); если параметры алгоритма должен указать вызывающий код, возникает исключение InvalidAlgorithmParameterException.
- Параметры:
-
key— ключ для этого механизма освобождения -
params— параметры алгоритма - Выбрасывает:
-
InvalidKeyException— если заданный ключ не подходит для этого механизма освобождения. -
InvalidAlgorithmParameterException— если заданные параметры алгоритма не подходят для этого механизма освобождения. -
ExemptionMechanismException— если при инициализации возникли проблемы.
engineInit
protected abstract void engineInit(Key key, AlgorithmParameters params) throws InvalidKeyException, InvalidAlgorithmParameterException, ExemptionMechanismException
Если этому механизму освобождения требуются параметры алгоритма, а params равно null, предполагается, что базовая реализация механизма освобождения самостоятельно сгенерирует необходимые параметры (используя значения по умолчанию, заданные поставщиком); если параметры алгоритма должен указать вызывающий код, возникает исключение InvalidAlgorithmParameterException.
- Параметры:
-
key— ключ для этого механизма освобождения -
params— параметры алгоритма - Выбрасывает:
-
InvalidKeyException— если заданный ключ не подходит для этого механизма освобождения. -
InvalidAlgorithmParameterException— если заданные параметры алгоритма не подходят для этого механизма освобождения. -
ExemptionMechanismException— если при инициализации возникли проблемы.
engineGenExemptionBlob
protected abstract byte[] engineGenExemptionBlob() throws ExemptionMechanismException
- Возвращает:
- новый буфер с результирующим блоком ключа.
- Выбрасывает:
-
ExemptionMechanismException— если при создании возникли проблемы.
engineGenExemptionBlob
protected abstract int engineGenExemptionBlob(byte[] output, int outputOffset) throws ShortBufferException, ExemptionMechanismException
output, начиная с позиции outputOffset включительно. Если буфер output слишком мал для хранения результата, выбрасывается исключение ShortBufferException. В этом случае повторите вызов с буфером большего размера. Используйте engineGetOutputSize, чтобы определить необходимый размер выходного буфера.
- Параметры:
-
output— буфер для результата -
outputOffset— смещение вoutput, по которому сохраняется результат - Возвращает:
- количество байтов, сохранённых в
output - Выбрасывает:
-
ShortBufferException— если заданный выходной буфер слишком мал для хранения результата. -
ExemptionMechanismException— если при создании возникли проблемы.
© 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.