Интерфейс расширения
public interface Extension
Расширения позволяют ассоциировать дополнительные атрибуты с пользователями или открытыми ключами и управлять иерархией сертификатов. Формат расширений также позволяет сообществам определять частные расширения для переноса информации, уникальной для этих сообществ.
Каждое расширение содержит идентификатор объекта, параметр критического значения, указывающий, является ли оно критическим или некритическим расширением, и значение, закодированное в ASN.1 DER. Его ASN.1 определение:
Extension ::= SEQUENCE {
extnId OBJECT IDENTIFIER,
critical BOOLEAN DEFAULT FALSE,
extnValue OCTET STRING
-- contains a DER encoding of a value
-- of the type registered for use with
-- the extnId object identifier value
}
Этот интерфейс предназначен для доступа к одному расширению, в отличие от X509Extension, который более подходит для доступа к набору расширений.
- С:
- 1.7
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
encode |
Генерирует DER-кодирование расширения и записывает его в выходной поток. |
String |
getId() |
Получает идентификатор объекта расширения. |
byte[] |
getValue() |
Получает DER-закодированное значение расширения. |
boolean |
isCritical() |
Получает параметр критического значения расширения. |
Подробное описание методов
getId
String getId()
- Возвращает:
- идентификатор объекта в виде строки
isCritical
boolean isCritical()
- Возвращает:
- true, если это критическое расширение.
getValue
byte[] getValue()
- Возвращает:
- копию значения расширения или
nullесли значение расширения отсутствует.
encode
void encode(OutputStream out) throws IOException
- Параметры:
-
out- выходной поток - Исключения:
-
IOException- при ошибке кодирования или вывода. -
NullPointerException- еслиoutявляетсяnull.
© 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/Extension.html