このクラスは、X.509証明書パスの検証で信頼できるアンカーとして使用される「もっとも信頼できるCA」を表します。 もっとも信頼できるCAには、CAの公開キー、CAの名前、およびこのキーを使って検証されるパスのセットに適用される制約が含まれます。 これらのパラメータは、信頼できるX509Certificateの形式で、または個別のパラメータとして指定できます。 
 
並行アクセス
すべてのTrustAnchorオブジェクトは、不変で、スレッドに対して安全である必要があります。 つまり、単一の(または複数の) TrustAnchorオブジェクト上で、このクラスに定義されたメソッドを複数のスレッドが同時に呼び出しても、悪影響はありません。 TrustAnchorオブジェクトは、不変かつスレッドに対して安全でなければならないので、アクセスの調整を心配することなく、オブジェクトをさまざまなコードに渡すことができます。 このことは、このクラスのすべてのpublicフィールドとメソッド、そしてサブクラスで追加またはオーバーライドされたpublicフィールドとメソッドに当てはまります。 
- 導入されたバージョン:
- 1.4
- 関連項目:
- PKIXParameters(Set),- PKIXBuilderParameters(Set, CertSelector)
- 
コンストラクタのサマリーコンストラクタコンストラクタ説明TrustAnchor(String caName, PublicKey pubKey, byte[] nameConstraints)識別名と公開キーとでもっとも信頼できるCAが指定されているTrustAnchorのインスタンスを作成します。TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints)指定したX509Certificateと名前制約(オプション)でTrustAnchorのインスタンスを作成します。名前制約は、X.509証明書パスの妥当性を検査するときの制約を追加するために使用されます。TrustAnchor(X500Principal caPrincipal, PublicKey pubKey, byte[] nameConstraints)X500Principalと公開キーとでもっとも信頼できるCAが指定されているTrustAnchorのインスタンスを作成します。
- 
メソッドのサマリー
- 
コンストラクタの詳細- 
TrustAnchorpublic TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints)指定したX509Certificateと名前制約(オプション)でTrustAnchorのインスタンスを作成します。名前制約は、X.509証明書パスの妥当性を検査するときの制約を追加するために使用されます。名前制約はバイト配列で指定されます。 このバイト配列には、RFC 5280と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- 信頼された- X509Certificate
- nameConstraints- 名前制約をチェックするために使用されるNameConstraints拡張情報をASN.1 DERで符号化した値を含むバイト配列。 拡張情報の値だけが含まれ、OIDやクリティカルの程度を表すフラグは含まれない。 このパラメータを無視するには- nullを指定する
- 例外:
- IllegalArgumentException- 名前制約が復号化できない場合
- NullPointerException- 指定された- X509Certificateが- nullである場合
 
- 
TrustAnchorpublic TrustAnchor(X500Principal caPrincipal, PublicKey pubKey, byte[] nameConstraints)X500Principalと公開キーとでもっとも信頼できるCAが指定されているTrustAnchorのインスタンスを作成します。 名前制約はオプションのパラメータで、X.509証明書パスの妥当性を検査するときの制約を追加するために使用されます。名前制約はバイト配列で指定されます。 このバイト配列には、RFC 5280と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の場合
- 導入されたバージョン:
- 1.5
 
- 
TrustAnchor識別名と公開キーとでもっとも信頼できるCAが指定されているTrustAnchorのインスタンスを作成します。 名前制約はオプションのパラメータで、X.509証明書パスの妥当性を検査するときの制約を追加するために使用されます。名前制約はバイト配列で指定されます。 このバイト配列には、RFC 5280と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の場合
 
 
- 
- 
メソッドの詳細- 
getTrustedCertpublic final X509Certificate getTrustedCert()もっとも信頼できるCA証明書を返します。- 戻り値:
- 信頼できるX509Certificate。トラスト・アンカーが信頼できる証明書として指定されていない場合はnull
 
- 
getCApublic final X500Principal getCA()もっとも信頼できるCAのX500Principalとしての名前を返します。- 戻り値:
- もっとも信頼できるCAのX.500識別名。トラスト・アンカーが信頼できる公開キーと名前またはX500Principalのペアとして指定されていない場合はnull
- 導入されたバージョン:
- 1.5
 
- 
getCANamepublic final String getCAName()RFC 2253String形式による、もっとも信頼できるCAの名前を返します。- 戻り値:
- もっとも信頼できるCAのX.500識別名。トラスト・アンカーが信頼できる公開キーと名前またはX500Principalのペアとして指定されていない場合はnull
 
- 
getCAPublicKeypublic final PublicKey getCAPublicKey()もっとも信頼できるCAの公開キーを返します。- 戻り値:
- もっとも信頼できるCAの公開キー。トラスト・アンカーが信頼できる公開キーと名前またはX500Principalのペアとして指定されていない場合はnull
 
- 
getNameConstraintspublic final byte[] getNameConstraints()名前制約のパラメータを返します。 指定した名前制約は、このトラスト・アンカーと関連付けられており、X.509証明書パスの妥当性を検査するときの制約を追加するために使用されます。名前制約はバイト配列で返されます。 このバイト配列には、RFC 5280とX.509で定義されているNameConstraints構造体にあるような、名前制約のDER符号化形式が含まれています。 この構造体のASN.1表記については、 TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints)のドキュメントを参照してください。以降の変更から保護するために、返されるバイト配列の複製が作成されます。 - 戻り値:
- 名前制約をチェックするために使用されるNameConstraints拡張情報をASN.1 DERで符号化した値を含むバイト配列。設定されていない場合はnull
 
- 
toStringpublic String toString()TrustAnchorを説明する書式付き文字列を返します。
 
-