Класс Certificate
- Все реализованные интерфейсы:
Serializable
- Прямые известные подклассы:
X509Certificate
public abstract class Certificate extends Object implements Serializable
Абстрактный класс для управления различными сертификатами личности. Сертификат личности — это привязка субъекта к открытому ключу, гарантируемая другим субъектом. (Субъект представляет собой сущность, такую как индивидуальный пользователь, группа или корпорация.)
Этот класс является абстракцией для сертификатов, имеющих различные форматы, но важные общие применения. Например, различные типы сертификатов, такие как X.509 и PGP, имеют общие функции сертификации (например, кодирование и проверку) и некоторые типы информации (например, открытый ключ).
Сертификаты X.509, PGP и SDSI могут быть реализованы путём наследования от класса Certificate, даже если они содержат различные наборы информации и хранят/получают информацию различными способами.
- С тех пор как:
- 1.2
- См. также:
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
protected static class |
Certificate.CertificateRep |
Альтернативный класс сертификата для сериализации. |
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Создаёт сертификат указанного типа. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
equals |
Сравнивает этот сертификат с указанным объектом на равенство. |
abstract byte[] |
getEncoded() |
Возвращает закодированную форму этого сертификата. |
abstract PublicKey |
getPublicKey() |
Получает открытый ключ из этого сертификата. |
final String |
getType() |
Возвращает тип этого сертификата. |
int |
hashCode() |
Возвращает значение хэш-кода для этого сертификата из его закодированной формы. |
abstract String |
toString() |
Возвращает строковое представление этого сертификата. |
abstract void |
verify |
Проверяет, был ли этот сертификат подписан с использованием закрытого ключа, соответствующего указанному открытому ключу. |
abstract void |
verify |
Проверяет, был ли этот сертификат подписан с использованием закрытого ключа, соответствующего указанному открытому ключу. |
void |
verify |
Проверяет, был ли этот сертификат подписан с использованием закрытого ключа, соответствующего указанному открытому ключу. |
protected Object |
writeReplace() |
Заменяет сертификат, который должен быть сериализован. |
Подробное описание конструкторов
Сертификат
protected Certificate(String type)
- Параметры:
-
type- стандартное имя типа сертификата. См. раздел CertificateFactory в спецификации Java Security Standard Algorithm Names для получения информации о стандартных типах сертификатов.
Подробное описание методов
getType
public final String getType()
- Возвращает:
- тип данного сертификата.
equals
public boolean equals(Object other)
other объект является instanceof Certificate, то его закодированная форма извлекается и сравнивается с закодированной формой данного сертификата.- Переопределяет:
-
equalsв классеObject - Параметры:
-
other- объект, с которым нужно сравнить данный сертификат на равенство. - Возвращает:
- true, если закодированные формы двух сертификатов совпадают, и false в противном случае.
- См. также:
hashCode
public int hashCode()
- Переопределяет:
-
hashCodeв классеObject - Возвращает:
- значение хэша.
- См. также:
getEncoded
public abstract byte[] getEncoded() throws CertificateEncodingException
- Возвращает:
- закодированную форму данного сертификата
- Исключения:
-
CertificateEncodingException- если произошла ошибка кодирования.
verify
public abstract void verify(PublicKey key) throws CertificateException, NoSuchAlgorithmException, InvalidKeyException, NoSuchProviderException, SignatureException
- Параметры:
-
key- PublicKey, используемый для проверки. - Исключения:
-
NoSuchAlgorithmException- при недопустимых алгоритмах подписи. -
InvalidKeyException- при некорректном ключе. -
NoSuchProviderException- если нет поставщика по умолчанию. -
SignatureException- при ошибках подписи. -
CertificateException- при ошибках кодирования.
verify
public abstract void verify(PublicKey key, String sigProvider) throws CertificateException, NoSuchAlgorithmException, InvalidKeyException, NoSuchProviderException, SignatureException
- Параметры:
-
key- PublicKey, используемый для проверки. -
sigProvider- имя поставщика подписи. - Исключения:
-
NoSuchAlgorithmException- при недопустимых алгоритмах подписи. -
InvalidKeyException- при некорректном ключе. -
NoSuchProviderException- при некорректном поставщике. -
SignatureException- при ошибках подписи. -
CertificateException- при ошибках кодирования.
verify
public void verify(PublicKey key, Provider sigProvider) throws CertificateException, NoSuchAlgorithmException, InvalidKeyException, SignatureException
Этот метод был добавлен в версию 1.8 Java Platform Standard Edition. Для обеспечения обратной совместимости с существующими поставщиками услуг, этот метод не может быть abstract и по умолчанию выбрасывает UnsupportedOperationException.
- Параметры:
-
key- PublicKey, используемый для проверки. -
sigProvider- поставщик подписи. - Исключения:
-
NoSuchAlgorithmException- при недопустимых алгоритмах подписи. -
InvalidKeyException- при некорректном ключе. -
SignatureException- при ошибках подписи. -
CertificateException- при ошибках кодирования. -
UnsupportedOperationException- если метод не поддерживается - С момента:
- 1.8
toString
public abstract String toString()
- Переопределяет:
-
toStringв классеObject - Возвращает:
- строковое представление данного сертификата.
getPublicKey
public abstract PublicKey getPublicKey()
- Возвращает:
- открытый ключ.
writeReplace
protected Object writeReplace() throws ObjectStreamException
- Возвращает:
- альтернативный объект сертификата для сериализации
- Исключения:
-
ObjectStreamException- если новый объект, представляющий данный сертификат, не может быть создан - С момента:
- 1.3
© 1993, 2021, 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/17/docs/api/java.base/java/security/cert/Certificate.html