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