Класс TrustAnchor
public class TrustAnchor extends Object
Этот класс представляет «наиболее доверенный CA», который используется в качестве якоря доверия при проверке путей сертификации X.509. Наиболее доверенный CA включает открытый ключ CA, имя CA и любые ограничения на набор путей, которые можно проверить с помощью этого ключа. Эти параметры можно указать в виде доверенного X509Certificate или как отдельные параметры.
Параллельный доступ
Все объекты TrustAnchor должны быть неизменяемыми и потокобезопасными. Это означает, что несколько потоков могут одновременно вызывать методы, определённые в этом классе, для одного (или нескольких) объекта TrustAnchor без нежелательных последствий. Требование неизменяемости и потокобезопасности объектов TrustAnchor позволяет передавать их различным частям кода, не беспокоясь о координации доступа. Это условие распространяется на все открытые поля и методы данного класса, а также на любые поля и методы, добавленные или переопределённые подклассами.
- Начиная с:
- 1.4
- См. также:
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
TrustAnchor |
Создаёт экземпляр TrustAnchor, в котором наиболее доверенный CA задаётся в виде различительного имени и открытого ключа. |
TrustAnchor |
Создаёт экземпляр TrustAnchor с указанным X509Certificate и необязательными ограничениями имён, предназначенными для использования в качестве дополнительных ограничений при проверке пути сертификации X.509. |
TrustAnchor |
Создаёт экземпляр TrustAnchor, в котором наиболее доверенный CA задаётся как X500Principal и открытый ключ. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
final X500Principal |
getCA() |
Возвращает имя наиболее доверенного CA в виде X500Principal. |
final String |
getCAName() |
Возвращает имя наиболее доверенного CA в формате String RFC 2253. |
final PublicKey |
getCAPublicKey() |
Возвращает открытый ключ наиболее доверенного CA. |
final byte[] |
getNameConstraints() |
Возвращает параметр ограничений имён. |
final X509Certificate |
getTrustedCert() |
Возвращает сертификат наиболее доверенного CA. |
String |
toString() |
Возвращает форматированную строку с описанием TrustAnchor. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создаёт и возвращает копию этого объекта. |
boolean |
equals |
Указывает, равен ли этот объект другому объекту. |
protected void |
finalize() |
Устарело, будет удалено: этот элемент API может быть удалён в будущей версии. Финализация объявлена устаревшей и может быть удалена в одном из следующих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
int |
hashCode() |
Возвращает хеш-код этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
final void |
wait() |
Заставляет текущий поток ждать пробуждения, обычно в результате вызова notify или прерывания. |
final void |
wait |
Заставляет текущий поток ждать пробуждения, обычно в результате вызова notify или прерывания, либо до истечения заданного промежутка реального времени. |
final void |
wait |
Заставляет текущий поток ждать пробуждения, обычно в результате вызова notify или прерывания, либо до истечения заданного промежутка реального времени. |
Подробное описание конструкторов
TrustAnchor
public TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints)
TrustAnchor с указанным X509Certificate и необязательными ограничениями имён, предназначенными для использования в качестве дополнительных ограничений при проверке пути сертификации X.509. Ограничения имён задаются в виде массива байтов. Этот массив байтов должен содержать DER-кодированное представление ограничений имён в том виде, в каком они представлены в структуре NameConstraints, определённой в RFC 5280 и X.509. Определение этой структуры на ASN.1 приведено ниже.
NameConstraints ::= SEQUENCE {
permittedSubtrees [0] GeneralSubtrees OPTIONAL,
excludedSubtrees [1] GeneralSubtrees OPTIONAL }
GeneralSubtrees ::= SEQUENCE SIZE (1..MAX) OF GeneralSubtree
GeneralSubtree ::= SEQUENCE {
base GeneralName,
minimum [0] BaseDistance DEFAULT 0,
maximum [1] BaseDistance OPTIONAL }
BaseDistance ::= INTEGER (0..MAX)
GeneralName ::= CHOICE {
otherName [0] OtherName,
rfc822Name [1] IA5String,
dNSName [2] IA5String,
x400Address [3] ORAddress,
directoryName [4] Name,
ediPartyName [5] EDIPartyName,
uniformResourceIdentifier [6] IA5String,
iPAddress [7] OCTET STRING,
registeredID [8] OBJECT IDENTIFIER}
Обратите внимание, что переданный массив байтов с ограничениями имён клонируется для защиты от последующих изменений.
- Параметры:
-
trustedCert— доверенныйX509Certificate -
nameConstraints— массив байтов, содержащий ASN.1 DER-кодирование расширения NameConstraints, используемого для проверки ограничений имён. Включается только значение расширения, но не OID или флаг критичности. Укажитеnull, чтобы не задавать параметр. - Исключения:
-
IllegalArgumentException— если ограничения имён не удаётся декодировать -
NullPointerException— если указанныйX509Certificateимеет значениеnull - Внешние спецификации
TrustAnchor
public TrustAnchor(X500Principal caPrincipal, PublicKey pubKey, byte[] nameConstraints)
TrustAnchor, в котором наиболее доверенный CA задаётся как X500Principal и открытый ключ. Ограничения имён являются необязательным параметром и предназначены для использования в качестве дополнительных ограничений при проверке пути сертификации X.509. Ограничения имён задаются в виде массива байтов. Этот массив байтов содержит DER-кодированное представление ограничений имён в том виде, в каком они представлены в структуре NameConstraints, определённой в RFC 5280 и X.509. Обозначение этой структуры на ASN.1 приведено в документации к TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints) .
Обратите внимание, что переданный массив байтов с ограничениями имён клонируется для защиты от последующих изменений.
- Параметры:
-
caPrincipal— имя наиболее доверенного CA в виде X500Principal -
pubKey— открытый ключ наиболее доверенного CA -
nameConstraints— массив байтов, содержащий ASN.1 DER-кодирование расширения NameConstraints, используемого для проверки ограничений имён. Включается только значение расширения, но не OID или флаг критичности. Укажитеnull, чтобы не задавать параметр. - Исключения:
-
NullPointerException— если указанный параметрcaPrincipalилиpubKeyимеет значениеnull - Начиная с:
- 1.5
TrustAnchor
public TrustAnchor(String caName, PublicKey pubKey, byte[] nameConstraints)
TrustAnchor, в котором наиболее доверенный CA задаётся в виде различительного имени и открытого ключа. Ограничения имён являются необязательным параметром и предназначены для использования в качестве дополнительных ограничений при проверке пути сертификации X.509. Ограничения имён задаются в виде массива байтов. Этот массив байтов содержит DER-кодированное представление ограничений имён в том виде, в каком они представлены в структуре NameConstraints, определённой в RFC 5280 и X.509. Обозначение этой структуры на ASN.1 приведено в документации к TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints) .
Обратите внимание, что переданный массив байтов с ограничениями имён клонируется для защиты от последующих изменений.
- Параметры:
-
caName— различительное имя X.500 наиболее доверенного CA в форматеStringRFC 2253 -
pubKey— открытый ключ наиболее доверенного CA -
nameConstraints— массив байтов, содержащий ASN.1 DER-кодирование расширения NameConstraints, используемого для проверки ограничений имён. Включается только значение расширения, но не OID или флаг критичности. Укажитеnull, чтобы не задавать параметр. - Исключения:
-
IllegalArgumentException— если указанный параметрcaNameпуст, имеет значение(caName.length() == 0)или имеет неправильный формат, либо если ограничения имён не удаётся декодировать -
NullPointerException— если указанный параметрcaNameилиpubKeyимеет значениеnull - Внешние спецификации
Подробное описание методов
getTrustedCert
public final X509Certificate getTrustedCert()
- Возвращает:
- доверенный
X509Certificateилиnull, если якорь доверия задан не как доверенный сертификат
getCA
public final X500Principal getCA()
- Возвращает:
- различительное имя X.500 наиболее доверенного CA или
null, если якорь доверия задан не как пара из доверенного открытого ключа и имени или X500Principal - Начиная с:
- 1.5
getCAName
public final String getCAName()
String RFC 2253.- Возвращает:
- различительное имя X.500 наиболее доверенного CA или
null, если якорь доверия задан не как пара из доверенного открытого ключа и имени или X500Principal
getCAPublicKey
public final PublicKey getCAPublicKey()
- Возвращает:
- открытый ключ наиболее доверенного CA или
null, если якорь доверия задан не как пара из доверенного открытого ключа и имени или X500Principal
getNameConstraints
public final byte[] getNameConstraints()
Ограничения имён возвращаются в виде массива байтов. Этот массив байтов содержит DER-кодированное представление ограничений имён в том виде, в каком они представлены в структуре NameConstraints, определённой в RFC 5280 и X.509. Обозначение этой структуры на ASN.1 приведено в документации к TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints) .
Обратите внимание, что возвращаемый массив байтов клонируется для защиты от последующих изменений.
- Возвращает:
- массив байтов, содержащий ASN.1 DER-кодирование расширения NameConstraints, используемого для проверки ограничений имён, или
null, если значение не задано.
toString
© 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.