Spec-Zone.ru › OpenJDK 8

Класс MacSpi

  • java.lang.Object
    • javax.crypto.MacSpi

public abstract class MacSpi
extends Object

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

Реализации могут свободно реализовывать интерфейс Cloneable.

Since:
1.4

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

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

Методы

Модификатор и тип Метод и описание
Object clone()

Возвращает клон, если реализация поддерживает клонирование.

protected abstract byte[] engineDoFinal()

Завершает вычисление MAC и сбрасывает MAC для дальнейшего использования, сохраняя секретный ключ, с которым MAC был инициализирован.

protected abstract int engineGetMacLength()

Возвращает длину MAC в байтах.

protected abstract void engineInit(Key key, AlgorithmParameterSpec params)

Инициализирует MAC заданным (секретным) ключом и параметрами алгоритма.

protected abstract void engineReset()

Сбрасывает MAC для дальнейшего использования, сохраняя секретный ключ, с которым MAC был инициализирован.

protected abstract void engineUpdate(byte input)

Обрабатывает заданный байт.

protected abstract void engineUpdate(byte[] input, int offset, int len)

Обрабатывает первые len байтов в input, начиная с offset включительно.

protected void engineUpdate(ByteBuffer input)

Обрабатывает input.remaining() байтов в ByteBuffer input, начиная с input.position(). По возвращении позиция буфера будет равна его пределу; его предел не изменится.

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

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

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

MacSpi

public MacSpi()

Методы

engineGetMacLength

protected abstract int engineGetMacLength()

Возвращает длину MAC в байтах.

Возвращает:
длину MAC в байтах.

engineInit

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

Инициализирует MAC заданным (секретным) ключом и параметрами алгоритма.

Параметры:
key - (секретный) ключ.
params - параметры алгоритма.
Исключения:
InvalidKeyException - если заданный ключ не подходит для инициализации этого MAC.
InvalidAlgorithmParameterException - если заданные параметры алгоритма не подходят для этого MAC.

engineUpdate

protected abstract void engineUpdate(byte input)

Обрабатывает заданный байт.

Параметры:
input - входной байт для обработки.

engineUpdate

protected abstract void engineUpdate(byte[] input,
                                     int offset,
                                     int len)

Обрабатывает первые len байтов в input, начиная с offset включительно.

Параметры:
input - буфер ввода.
offset - смещение в input, где начинается ввод.
len - количество байтов для обработки.

engineUpdate

protected void engineUpdate(ByteBuffer input)

Обрабатывает input.remaining() байтов в ByteBuffer input, начиная с input.position(). По возвращении позиция буфера будет равна его пределу; его предел не изменится.

Подклассы должны рассмотреть возможность переопределения этого метода, если они могут обрабатывать ByteBuffers более эффективно, чем массивы байтов.

Параметры:
input - ByteBuffer
Since:
1.5

engineDoFinal

protected abstract byte[] engineDoFinal()

Завершает вычисление MAC и сбрасывает MAC для дальнейшего использования, сохраняя секретный ключ, с которым MAC был инициализирован.

Возвращает:
результат MAC.

engineReset

protected abstract void engineReset()

Сбрасывает MAC для дальнейшего использования, сохраняя секретный ключ, с которым MAC был инициализирован.

clone

public Object clone()
             throws CloneNotSupportedException

Возвращает клон, если реализация поддерживает клонирование.

Переопределяет:
clone в классе Object
Возвращает:
клон, если реализация поддерживает клонирование.
Исключения:
CloneNotSupportedException - если это вызывается на реализации, которая не поддерживает Cloneable.
См. также:
Cloneable

© 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.

Spec-Zone.ru

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