Класс SecretKeySpec
- Все реализованные интерфейсы:
-
Serializable,Key,KeySpec,SecretKey,Destroyable
public class SecretKeySpec extends Object implements KeySpec, SecretKey
Он может быть использован для создания экземпляра SecretKey из массива байтов, без необходимости прохождения через (базируемый на поставщике) SecretKeyFactory.
Этот класс полезен только для исходных секретных ключей, которые могут быть представлены как массив байтов и не имеют связанных с ними параметров ключа, например, ключи DES или Triple DES.
- C тех пор как:
- 1.4
- См. также:
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
SecretKeySpec |
Создаёт секретный ключ из данного массива байтов, используя первые len байтов из key, начиная с offset включительно. |
SecretKeySpec |
Создаёт секретный ключ из данного массива байтов. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
equals |
Проверяет равенство указанного объекта и этого объекта. |
String |
getAlgorithm() |
Возвращает имя алгоритма, связанного с этим секретным ключом. |
byte[] |
getEncoded() |
Возвращает ключевой материал этого секретного ключа. |
String |
getFormat() |
Возвращает имя формата кодирования для этого секретного ключа. |
int |
hashCode() |
Вычисляет значение хэш-кода для объекта. |
Методы, объявленные в классе java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Методы, объявленные в интерфейсе javax.security.auth.Destroyable
destroy, isDestroyed
Подробное описание конструкторов
SecretKeySpec
public SecretKeySpec(byte[] key, String algorithm)
Этот конструктор не проверяет, действительно ли заданные байты представляют секретный ключ указанного алгоритма. Например, если алгоритм DES, этот конструктор не проверяет, что key имеет длину 8 байтов, а также не проверяет слабые или полуслабые ключи. Для выполнения этих проверок должен использоваться класс алгоритмической спецификации ключа (в данном случае: DESKeySpec).
- Параметры:
-
key- ключевой материал секретного ключа. Содержимое массива копируется для защиты от последующих изменений. -
algorithm- имя алгоритма секретного ключа, который будет связан с заданным ключевым материалом. См. документ Стандартные имена алгоритмов Java Security для получения информации о стандартных именах алгоритмов. - Исключения:
-
IllegalArgumentException- еслиalgorithmравен null илиkeyравен null или пустой. - Внешние спецификации
SecretKeySpec
public SecretKeySpec(byte[] key, int offset, int len, String algorithm)
len байтов из key, начиная с offset включительно. Байт, составляющие секретный ключ, находятся между key[offset] и key[offset+len-1] включительно.
Этот конструктор не проверяет, действительно ли заданные байты представляют секретный ключ указанного алгоритма. Например, если алгоритм DES, этот конструктор не проверяет, что key имеет длину 8 байтов, а также не проверяет слабые или полуслабые ключи. Для выполнения этих проверок необходимо использовать класс алгоритмической спецификации ключа (в данном случае: DESKeySpec).
- Параметры:
-
key- ключевой материал секретного ключа. Первыеlenбайты массива, начиная сoffsetвключительно, копируются для защиты от последующих изменений. -
offset- смещение вkey, где начинается ключевой материал. -
len- длина ключевого материала. -
algorithm- имя алгоритма секретного ключа, который будет связан с заданным ключевым материалом. См. документ Стандартные имена алгоритмов Java Security для получения информации о стандартных именах алгоритмов. - Исключения:
-
IllegalArgumentException- еслиalgorithmравен null илиkeyравен null, пустой или слишком короткий, т.е.key.length-offset<len. -
ArrayIndexOutOfBoundsException- выбрасывается, еслиoffsetилиlenиндексируют байты за пределамиkey. - Внешние спецификации
Подробное описание методов
getAlgorithm
public String getAlgorithm()
- Указано в:
-
getAlgorithmв интерфейсеKey - Возвращает:
- алгоритм секретного ключа.
- Внешние спецификации
getFormat
getEncoded
public byte[] getEncoded()
- Указано в:
-
getEncodedв интерфейсеKey - Возвращает:
- ключевой материал. Возвращает новый массив каждый раз, когда вызывается этот метод.
hashCode
equals
public boolean equals(Object obj)
© 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/javax/crypto/spec/SecretKeySpec.html