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