Spec-Zone.ru › OpenJDK 25

Класс TrustAnchor

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

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

Параллельный доступ

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

Начиная с:
1.4
См. также:
  • PKIXParameters(Set)
  • PKIXBuilderParameters(Set, CertSelector)

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

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

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

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

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 в формате String RFC 2253
pubKey — открытый ключ наиболее доверенного CA
nameConstraints — массив байтов, содержащий ASN.1 DER-кодировку расширения NameConstraints, используемую для проверки ограничений имен. В него включается только значение расширения, но не OID и не флаг критичности. Укажите null, чтобы не задавать параметр.
Исключения:
IllegalArgumentException — если указанный параметр caName пуст (caName.length() == 0) или имеет неверный формат либо ограничения имен не удается декодировать
NullPointerException — если указанный параметр caName или pubKey имеет значение null
Внешние спецификации
  • RFC 2253: протокол облегченного доступа к каталогам (версия 3): представление различительных имен в виде строк UTF-8

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

getTrustedCert

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

getCA

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

getCAName

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

getCAPublicKey

public final PublicKey getCAPublicKey()
Возвращает открытый ключ наиболее доверенного CA.
Возвращает:
открытый ключ наиболее доверенного CA или 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

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в разделе Документация Java SE, где приведены более подробные описания для разработчиков, общие сведения, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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

Spec-Zone.ru

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