public class TrustAnchor extends Object
 このクラスは、X.509証明書パスの検証で信頼できるアンカーとして使用される「もっとも信頼できるCA」を表します。 もっとも信頼できるCAには、CAの公開キー、CAの名前、およびこのキーを使って検証されるパスのセットに適用される制約が含まれます。 これらのパラメータは、信頼できるX509Certificateの形式で、または個別のパラメータとして指定できます。 
 
並行アクセス
すべてのTrustAnchorオブジェクトは、不変で、スレッドに対して安全である必要があります。 つまり、単一の(または複数の) TrustAnchorオブジェクト上で、このクラスに定義されたメソッドを複数のスレッドが同時に呼び出しても、悪影響はありません。 TrustAnchorオブジェクトは、不変かつスレッドに対して安全でなければならないので、アクセスの調整を心配することなく、オブジェクトをさまざまなコードに渡すことができます。 このことは、このクラスのすべてのpublicフィールドとメソッド、そしてサブクラスで追加またはオーバーライドされたpublicフィールドとメソッドに当てはまります。 
PKIXParameters.PKIXParameters(Set), PKIXBuilderParameters.PKIXBuilderParameters(Set, CertSelector)| コンストラクタ | 説明 | 
|---|---|
| TrustAnchor(String caName, PublicKey pubKey, byte[] nameConstraints) | 識別名と公開キーとでもっとも信頼できるCAが指定されている TrustAnchorのインスタンスを作成します。 | 
| TrustAnchor(X500Principal caPrincipal, PublicKey pubKey, byte[] nameConstraints) | X500Principalと公開キーとでもっとも信頼できるCAが指定されている TrustAnchorのインスタンスを作成します。 | 
| TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints) | 指定した X509Certificateと名前制約(オプション)でTrustAnchorのインスタンスを作成します。名前制約は、X.509証明書パスの妥当性を検査するときの制約を追加するために使用されます。 | 
| 修飾子と型 | メソッド | 説明 | 
|---|---|---|
| X500Principal | getCA() | もっとも信頼できるCAのX500Principalとしての名前を返します。 | 
| String | getCAName() | RFC 2253  String形式による、もっとも信頼できるCAの名前を返します。 | 
| PublicKey | getCAPublicKey() | もっとも信頼できるCAの公開キーを返します。 | 
| byte[] | getNameConstraints() | 名前制約のパラメータを返します。 | 
| X509Certificate | getTrustedCert() | もっとも信頼できるCA証明書を返します。 | 
| String | toString() | TrustAnchorを説明する書式付き文字列を返します。 | 
public TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints)
X509Certificateと名前制約(オプション)でTrustAnchorのインスタンスを作成します。名前制約は、X.509証明書パスの妥当性を検査するときの制約を追加するために使用されます。
 名前制約はバイト配列で指定されます。 このバイト配列には、RFC 3280とX.509で定義されているNameConstraints構造体にあるような名前制約のDER符号化形式が含まれなければいけません。 この構造体の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 - 信頼されたX509CertificatenameConstraints - 名前制約をチェックするために使用されるNameConstraints拡張情報をASN.1 DERで符号化した値を含むバイト配列。 拡張情報の値だけが含まれ、OIDやクリティカルの程度を表すフラグは含まれない。 このパラメータを無視するにはnullを指定する IllegalArgumentException - 名前制約が復号化できない場合NullPointerException - 指定されたX509Certificateがnullである場合public TrustAnchor(X500Principal caPrincipal, PublicKey pubKey, byte[] nameConstraints)
TrustAnchorのインスタンスを作成します。 名前制約はオプションのパラメータで、X.509証明書パスの妥当性を検査するときの制約を追加するために使用されます。 
 
 名前制約はバイト配列で指定されます。 このバイト配列には、RFC 3280とX.509で定義されているNameConstraints構造体にあるような、名前制約のDER符号化形式が含まれています。 この構造体のASN.1表記については、TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints) のドキュメントを参照してください。 
 
以後の変更から保護するために、ここで提供されている名前制約のバイト配列は複製されています。
caPrincipal - もっとも信頼できるCAのX500Principalとしての名前pubKey - もっとも信頼できるCAの公開キーnameConstraints - 名前制約をチェックするために使用されるNameConstraints拡張情報をASN.1 DERで符号化した値を含むバイト配列。 拡張情報の値だけが含まれ、OIDやクリティカルの程度を表すフラグは含まれない。 このパラメータを無視するにはnullを指定する NullPointerException - 指定されたcaPrincipalパラメータかpubKeyパラメータがnullの場合public TrustAnchor(String caName, PublicKey pubKey, byte[] nameConstraints)
TrustAnchorのインスタンスを作成します。 名前制約はオプションのパラメータで、X.509証明書パスの妥当性を検査するときの制約を追加するために使用されます。 
 
 名前制約はバイト配列で指定されます。 このバイト配列には、RFC 3280とX.509で定義されているNameConstraints構造体にあるような、名前制約のDER符号化形式が含まれています。 この構造体のASN.1表記については、TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints) のドキュメントを参照してください。 
 
以後の変更から保護するために、ここで提供されている名前制約のバイト配列は複製されています。
caName - RFC 2253 String形式による、もっとも信頼できるCAのX.500識別名pubKey - もっとも信頼できるCAの公開キーnameConstraints - 名前制約をチェックするために使用されるNameConstraints拡張情報をASN.1 DERで符号化した値を含むバイト配列。 拡張情報の値だけが含まれ、OIDやクリティカルの程度を表すフラグは含まれない。 このパラメータを無視するにはnullを指定する IllegalArgumentException - 指定されたcaNameパラメータが空である(caName.length() == 0)か、形式が正しくないか、または名前制約を復号化できない場合NullPointerException - 指定されたcaNameパラメータかpubKeyパラメータがnullの場合public final X509Certificate getTrustedCert()
X509Certificate。トラスト・アンカーが信頼できる証明書として指定されていない場合はnullpublic final X500Principal getCA()
nullpublic final String getCAName()
String形式による、もっとも信頼できるCAの名前を返します。nullpublic final PublicKey getCAPublicKey()
nullpublic final byte[] getNameConstraints()
 名前制約はバイト配列で返されます。 このバイト配列には、RFC 3280とX.509で定義されているNameConstraints構造体にあるような、名前制約のDER符号化形式が含まれています。 この構造体のASN.1表記については、TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints) のドキュメントを参照してください。 
 
以降の変更から保護するために、返されるバイト配列の複製が作成されます。
null バグまたは機能を送信 
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。 そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。 
 Copyright © 1993, 2025, Oracle and/or its affiliates.  All rights reserved.  Use is subject to license terms.  Documentation Redistribution Policyも参照してください。