Класс 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. |
Подробное описание конструкторов
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.
https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/security/cert/TrustAnchor.html