Класс GCMParameterSpec
- Все реализуемые интерфейсы:
AlgorithmParameterSpec
public class GCMParameterSpec extends Object implements AlgorithmParameterSpec
Cipher, использующего режим Галуа/счетчика (GCM). Для простых режимов блочного шифра (таких как CBC) обычно требуется только вектор инициализации (например, IvParameterSpec), но для GCM необходимы следующие параметры:
-
IV: вектор инициализации (IV) -
tLen: длина тега аутентификации T (в битах)
Помимо описанных здесь параметров, другие входные и выходные данные GCM (дополнительные аутентифицируемые данные (AAD), ключи, блочные шифры, открытый текст/шифротекст и теги аутентификации) обрабатываются классом
Cipher.
Дополнительную информацию об алгоритме аутентифицированного шифрования с присоединенными данными (AEAD) см. в документе RFC 5116 , а также в публикации NIST Special Publication 800-38D «Рекомендация NIST по режимам работы блочных шифров: режим Галуа/счетчика (GCM) и GMAC».
В спецификации GCM указано, что tLen может принимать только значения {128, 120, 112, 104, 96} или {64, 32} для определенных приложений. Для этого класса можно задать и другие значения, но не все реализации CSP будут их поддерживать.
- Начиная с версии:
- 1.7
- Внешние спецификации
- См. также:
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
GCMParameterSpec |
Создает объект GCMParameterSpec с указанной длиной тега аутентификации в битах и буфером IV. |
GCMParameterSpec |
Создает объект GCMParameterSpec с указанной длиной тега аутентификации в битах и частью указанного буфера, используемой в качестве IV. |
Краткое описание методов
Методы, объявленные в классе 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 |
Заставляет текущий поток ожидать пробуждения, обычно в результате уведомления или прерывания, либо до истечения заданного промежутка реального времени. |
Подробное описание конструкторов
GCMParameterSpec
public GCMParameterSpec(int tLen, byte[] src)
- Параметры:
-
tLen— длина тега аутентификации (в битах) -
src— буфер-источник IV. Содержимое буфера копируется для защиты от последующего изменения. - Исключения:
-
IllegalArgumentException— еслиtLenимеет отрицательное значение илиsrcравно null.
GCMParameterSpec
public GCMParameterSpec(int tLen, byte[] src, int offset, int len)
- Параметры:
-
tLen— длина тега аутентификации (в битах) -
src— буфер-источник IV. Содержимое буфера копируется для защиты от последующего изменения. -
offset— смещение вsrc, с которого начинается IV -
len— количество байтов IV - Исключения:
-
IllegalArgumentException— еслиtLenимеет отрицательное значение,srcравно null,lenилиoffsetимеет отрицательное значение либо суммаoffsetиlenпревышает длину массива байтовsrc.
Подробное описание методов
getTLen
public int getTLen()
- Возвращает:
- длину тега аутентификации (в битах)
getIV
public byte[] getIV()
- Возвращает:
- IV. При каждом вызове этого метода создается новый массив.
© 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.