Spec-Zone.ru › OpenJDK 24

Класс MessageDigestSpi

java.lang.Object
java.security.MessageDigestSpi
Прямые известные подклассы:
MessageDigest
public abstract class MessageDigestSpi extends Object
Этот класс определяет интерфейс поставщика услуг (SPI) для класса MessageDigest, который предоставляет функциональность алгоритма дайджеста сообщений, такого как MD5 или SHA. Дайджесты сообщений являются безопасными односторонними хеш-функциями, которые принимают данные произвольного размера и выводят значение хеша фиксированной длины.

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

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

С тех пор:
1.2
См. также:
  • MessageDigest

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

Конструктор Описание
MessageDigestSpi()
Конструктор для вызова подклассами.

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

Модификатор и тип Метод Описание
Object clone()
Возвращает копию, если реализация поддерживает клонирование.
protected abstract byte[] engineDigest()
Завершает вычисление хеша, выполняя заключительные операции, такие как заполнение.
protected int engineDigest(byte[] buf, int offset, int len)
Завершает вычисление хеша, выполняя заключительные операции, такие как заполнение.
protected int engineGetDigestLength()
Возвращает длину дайджеста в байтах.
protected abstract void engineReset()
Сбрасывает дайджест для дальнейшего использования.
protected abstract void engineUpdate(byte input)
Обновляет дайджест, используя указанный байт.
protected abstract void engineUpdate(byte[] input, int offset, int len)
Обновляет дайджест, используя указанный массив байтов, начиная с указанного смещения.
protected void engineUpdate(ByteBuffer input)
Обновляет дайджест, используя указанный ByteBuffer.

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

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

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

MessageDigestSpi

public MessageDigestSpi()
Конструктор для вызова подклассами.

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

engineGetDigestLength

protected int engineGetDigestLength()
Возвращает длину дайджеста в байтах.

Этот конкретный метод был добавлен в этот ранее определенный абстрактный класс. (Для обеспечения обратной совместимости он не может быть абстрактным.)

По умолчанию возвращается 0.

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

Возвращает:
длину дайджеста в байтах.
С тех пор:
1.2

engineUpdate

protected abstract void engineUpdate(byte input)
Обновляет дайджест, используя указанный байт.
Параметры:
input - байт для обновления.

engineUpdate

protected abstract void engineUpdate(byte[] input, int offset, int len)
Обновляет дайджест, используя указанный массив байтов, начиная с указанного смещения.
Параметры:
input - массив байтов для обновления.
offset - смещение для начала в массиве байтов.
len - количество байтов для использования, начиная со смещения offset.

engineUpdate

protected void engineUpdate(ByteBuffer input)
Обновляет дайджест, используя указанный ByteBuffer. Дайджест обновляется с использованием input.remaining() байтов, начиная с input.position(). После возврата позиция буфера будет равна его пределу; его предел не изменится.
Параметры:
input - ByteBuffer
С тех пор:
1.5

engineDigest

protected abstract byte[] engineDigest()
Завершает вычисление хеша, выполняя заключительные операции, такие как заполнение. После вызова engineDigest, движок должен быть сброшен (см. engineReset). Сброс является обязанностью реализатора движка.
Возвращает:
массив байтов для результирующего значения хеша.

engineDigest

protected int engineDigest(byte[] buf, int offset, int len) throws DigestException
Завершает вычисление хеша, выполняя заключительные операции, такие как заполнение. После вызова engineDigest, движок должен быть сброшен (см. engineReset). Сброс является обязанностью реализатора движка. Этот метод должен быть абстрактным, но мы оставляем его конкретным для двоичной совместимости. Знающие поставщики должны переопределить этот метод.
Параметры:
buf - буфер вывода, в который необходимо сохранить дайджест
offset - смещение для начала в буфере вывода
len - количество байтов в buf, выделенных для дайджеста. Как эта реализация по умолчанию, так и поставщик SUN не возвращают частичные дайджесты. Наличие этого параметра исключительно для согласованности в нашем API. Если значение этого параметра меньше фактической длины дайджеста, метод выбросит DigestException. Этот параметр игнорируется, если его значение больше или равно фактической длине дайджеста.
Возвращает:
длина дайджеста, сохраненного в буфере вывода.
Исключения:
DigestException - если произошла ошибка.
С тех пор:
1.2

engineReset

protected abstract void engineReset()
Сбрасывает дайджест для дальнейшего использования.

clone

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

© 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://download.java.net/java/early_access/jdk24/docs/api/java.base/java/security/MessageDigestSpi.html

Spec-Zone.ru

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