Spec-Zone.ru › OpenJDK 24

Класс TrustAnchor

java.lang.Object
java.security.cert.TrustAnchor
public class TrustAnchor extends Object
Якорь доверия или наиболее надёжный центр сертификации (ЦС).

Этот класс представляет «наиболее надёжный ЦС», используемый в качестве якоря доверия для проверки цепочек сертификации X.509. Наиболее надёжный ЦС включает открытый ключ ЦС, имя ЦС и любые ограничения на набор путей, которые могут быть проверены с помощью этого ключа. Эти параметры могут быть указаны в виде надёжного X509Certificate или в виде отдельных параметров.

Одновременный доступ

Все TrustAnchor объекты должны быть неизменяемыми и потокобезопасными. То есть, несколько потоков могут одновременно вызывать методы, определённые в этом классе, для одного TrustAnchor объекта (или более одного) без каких-либо негативных последствий. Требование, чтобы TrustAnchor объекты были неизменяемыми и потокобезопасными, позволяет передавать их различным частям кода, не беспокоясь о координации доступа. Это требование относится ко всем публичным полям и методам этого класса и к любым добавленным или переопределённым подклассами.

Since:
1.4
See Also:
  • PKIXParameters(Set)
  • PKIXBuilderParameters(Set, CertSelector)

Краткое описание конструкторов

Конструктор Описание
TrustAnchor(String caName, PublicKey pubKey, byte[] nameConstraints)
Создаёт экземпляр TrustAnchor, где наиболее надёжный ЦС указан как имя и открытый ключ.
TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints)
Создаёт экземпляр TrustAnchor со специфицированным X509Certificate и необязательными ограничениями имени, которые предназначены для использования в качестве дополнительных ограничений при проверке пути сертификации X.509.
TrustAnchor(X500Principal caPrincipal, PublicKey pubKey, byte[] nameConstraints)
Создаёт экземпляр TrustAnchor, где наиболее надёжный ЦС указан как X500Principal и открытый ключ.

Краткое описание методов

Модификатор и тип Метод Описание
final X500Principal getCA()
Возвращает имя наиболее надёжного ЦС в виде X500Principal.
final String getCAName()
Возвращает имя наиболее надёжного ЦС в формате RFC 2253 String.
final PublicKey getCAPublicKey()
Возвращает открытый ключ наиболее надёжного ЦС.
final byte[] getNameConstraints()
Возвращает параметр ограничений имени.
final X509Certificate getTrustedCert()
Возвращает сертификат наиболее надёжного ЦС.
String toString()
Возвращает отформатированную строку, описывающую TrustAnchor.

Методы, унаследованные от класса java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Подробное описание конструкторов

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
Внешние спецификации
  • RFC 5280: Профиль инфраструктуры открытых ключей X.509 Интернета и список отозванных сертификатов (CRL)

TrustAnchor

public TrustAnchor(X500Principal caPrincipal, PublicKey pubKey, byte[] nameConstraints)
Создаёт экземпляр TrustAnchor, где наиболее надёный ЦС задаётся как X500Principal и открытый ключ. Ограничения на имена являются необязательным параметром и предназначены для использования в качестве дополнительных ограничений при проверке цепочки сертификации X.509.

Ограничения на имена задаются в виде массива байтов. Этот массив байтов содержит DER-кодированную форму ограничений на имена, как они представлены в структуре NameConstraints, определённой в RFC 5280 и X.509. ASN.1 обозначение этой структуры представлено в документации для TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints) .

Обратите внимание, что массив байтов ограничений на имена, предоставленный здесь, клонируется для защиты от последующих изменений.

Параметры:
caPrincipal - имя наиболее надёного ЦС в формате X500Principal
pubKey - открытый ключ наиболее надёного ЦС
nameConstraints - массив байтов, содержащий ASN.1 DER-кодирование расширения NameConstraints для проверки ограничений на имена. Включается только значение расширения, а не OID или флаг критичности. Укажите null, чтобы опустить этот параметр.
Исключения:
NullPointerException - если указанный caPrincipal или pubKey параметр является null
С:
1.5

TrustAnchor

public TrustAnchor(String caName, PublicKey pubKey, byte[] nameConstraints)
Создаёт экземпляр TrustAnchor, где наиболее надёный ЦС задаётся как имя и открытый ключ. Ограничения на имена являются необязательным параметром и предназначены для использования в качестве дополнительных ограничений при проверке цепочки сертификации X.509.

Ограничения на имена задаются в виде массива байтов. Этот массив байтов содержит DER-кодированную форму ограничений на имена, как они представлены в структуре NameConstraints, определённой в RFC 5280 и X.509. ASN.1 обозначение этой структуры представлено в документации для TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints) .

Обратите внимание, что массив байтов ограничений на имена, предоставленный здесь, клонируется для защиты от последующих изменений.

Параметры:
caName - полное имя X.500 наиболее надёного ЦС в формате RFC 2253 String
pubKey - открытый ключ наиболее надёного ЦС
nameConstraints - массив байтов, содержащий ASN.1 DER-кодирование расширения NameConstraints для проверки ограничений на имена. Включается только значение расширения, а не OID или флаг критичности. Укажите null, чтобы опустить этот параметр.
Исключения:
IllegalArgumentException - если указанный caName параметр пуст (caName.length() == 0) или имеет неправильный формат, или ограничения на имена не могут быть декодированы
NullPointerException - если указанный caName или pubKey параметр является null
Внешние спецификации
  • RFC 2253: Lightweight Directory Access Protocol (v3): Представление имён в формате UTF-8

Подробное описание методов

getTrustedCert

public final X509Certificate getTrustedCert()
Возвращает сертификат наиболее надёного ЦС.
Возвращает:
доверенный X509Certificate или null, если якорь доверия не был задан как доверенный сертификат

getCA

public final X500Principal getCA()
Возвращает имя наиболее надёного ЦС в формате X500Principal.
Возвращает:
полное имя X.500 наиболее надёного ЦС или null, если якорь доверия не был задан как пара доверенный открытый ключ и имя или X500Principal
С:
1.5

getCAName

public final String getCAName()
Возвращает имя наиболее надёного ЦС в формате RFC 2253 String.
Возвращает:
полное имя X.500 наиболее надёного ЦС или null, если якорь доверия не был задан как пара доверенный открытый ключ и имя или X500Principal

getCAPublicKey

public final PublicKey getCAPublicKey()
Возвращает открытый ключ наиболее надёного ЦС.
Возвращает:
открытый ключ наиболее надёного ЦС или null, если якорь доверия не был задан как пара доверенный открытый ключ и имя или X500Principal

getNameConstraints

public final byte[] getNameConstraints()
Возвращает параметры ограничений на имена. Указанные ограничения на имена связаны с этим якорем доверия и предназначены для использования в качестве дополнительных ограничений при проверке цепочки сертификации X.509.

Ограничения на имена возвращаются как массив байтов. Этот массив байтов содержит DER-кодированную форму ограничений на имена, как они представлены в структуре NameConstraints, определённой в RFC 5280 и X.509. ASN.1 обозначение этой структуры представлено в документации для TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints) .

Обратите внимание, что возвращаемый массив байтов клонируется для защиты от последующих изменений.

Возвращает:
массив байтов, содержащий ASN.1 DER-кодирование расширения NameConstraints, используемого для проверки ограничений на имена, или null, если не установлено.

toString

public String toString()
Возвращает отформатированную строку, описывающую TrustAnchor.
Переопределяет:
toString в классе Object
Возвращает:
отформатированную строку, описывающую TrustAnchor

© 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://download.java.net/java/early_access/jdk24/docs/api/java.base/java/security/cert/TrustAnchor.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API