Интерфейс Key
- Все суперинтерфейсы:
Serializable
- Все известные подинтерфейсы:
-
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: Internet X.509 Public Key Infrastructure Certificate and CRL Profile. - Формат
Это имя формата закодированного ключа. Он возвращается методом
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, 2023, 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/21/docs/api/java.base/java/security/Key.html
serialVersionUIDв интерфейсе неэффективно.