Интерфейс Key
- Все суперинтерфейсы:
Serializable
- Все известные подинтерфейсы:
AsymmetricKey, DHPrivateKey, DHPublicKey, DSAPrivateKey, DSAPublicKey, ECPrivateKey, ECPublicKey, EdECPrivateKey, EdECPublicKey, PBEKey, PrivateKey, PublicKey, RSAMultiPrimePrivateCrtKey, RSAPrivateCrtKey, RSAPrivateKey, RSAPublicKey, SecretKey, XECPrivateKey, XECPublicKey
- Все известные классы-реализации:
EncryptionKey, KerberosKey, SecretKeySpec
public interface Key extends Serializable
Key является интерфейсом верхнего уровня для всех ключей. Он определяет функциональность, общую для всех объектов Key. Все ключи обладают тремя характеристиками: - Алгоритм
Это алгоритм ключа для данного ключа. Обычно алгоритм ключа — это алгоритм шифрования или асимметричных операций (например, DSA или RSA), который работает с этими алгоритмами и связанными с ними алгоритмами (такими как MD5 с RSA, SHA-1 с RSA, Raw DSA и т. д.). Имя алгоритма ключа можно получить с помощью метода
getAlgorithm. - Закодированное представление
Это внешнее закодированное представление ключа, используемое, когда ключу требуется стандартное представление за пределами виртуальной машины Java, например при передаче ключа другой стороне. Ключ кодируется в соответствии со стандартным форматом (например, X.509
SubjectPublicKeyInfoили PKCS#8) и возвращается с помощью методаgetEncoded. Примечание. Синтаксис типа ASN.1SubjectPublicKeyInfoопределён следующим образом:SubjectPublicKeyInfo ::= SEQUENCE { algorithm AlgorithmIdentifier, subjectPublicKey BIT STRING } AlgorithmIdentifier ::= SEQUENCE { algorithm OBJECT IDENTIFIER, parameters ANY DEFINED BY algorithm OPTIONAL }Дополнительные сведения см. в документе RFC 5280: профиль сертификатов и списков отзыва сертификатов (CRL) инфраструктуры открытых ключей Internet X.509. - Формат
Это имя формата закодированного ключа. Оно возвращается методом
getFormat.
KeyFactory). В качестве сериализованного представления ключа следует использовать KeyRep. Обратите внимание, что сериализованный ключ может содержать конфиденциальную информацию, которую не следует раскрывать в ненадёжных средах. Дополнительные сведения см. в приложении по безопасности Спецификации сериализации объектов Java.
- Начиная с:
- 1.1
- Внешние спецификации
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final long |
serialVersionUID |
Устарело. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
String |
getAlgorithm() |
Возвращает стандартное имя алгоритма для этого ключа. |
byte[] |
getEncoded() |
Возвращает ключ в его основном формате кодирования или null, если этот ключ не поддерживает кодирование. |
String |
getFormat() |
Возвращает имя основного формата кодирования этого ключа или null, если этот ключ не поддерживает кодирование. |
Подробное описание полей
serialVersionUID
@Deprecated static final long serialVersionUID
serialVersionUID в интерфейсе не имеет эффекта. Не используйте; замены нет.- См. также:
Подробное описание методов
getAlgorithm
String getAlgorithm()
- Возвращает:
- имя алгоритма, связанного с этим ключом.
- Внешние спецификации
getFormat
String getFormat()
null, если этот ключ не поддерживает кодирование. Основной формат кодирования именуется в соответствии с подходящим форматом данных ASN.1, если для этого ключа существует спецификация ASN.1. Например, формат данных ASN.1 для открытых ключей называется SubjectPublicKeyInfo, как определено стандартом X.509; в этом случае возвращаемый формат — "X.509". Аналогично, формат данных ASN.1 для закрытых ключей называется PrivateKeyInfo, как определено стандартом PKCS #8; в этом случае возвращаемый формат — "PKCS#8".- Возвращает:
- основной формат кодирования ключа.
getEncoded
byte[] getEncoded()
null, если этот ключ не поддерживает кодирование.- Возвращает:
- закодированный ключ или
null, если ключ не поддерживает кодирование.
© 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://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/security/Key.html
serialVersionUIDв интерфейсе не имеет эффекта.