Spec-Zone.ru › OpenJDK 17

Класс TrustAnchor

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

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

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

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

С:
1.4
См. также:
  • 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

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

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

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, 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/TrustAnchor.html

Spec-Zone.ru

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