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符号化形式が含まれなければいけません。NameConstraints構造体の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
である場合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
。トラスト・アンカーが信頼できる証明書として指定されていない場合はnull
public final X500Principal getCA()
null
public final String getCAName()
String
形式による、もっとも信頼できるCAの名前を返します。null
public final PublicKey getCAPublicKey()
null
public final byte[] getNameConstraints()
名前制約はバイト配列で返されます。このバイト配列には、RFC 3280とX.509で定義されているNameConstraints構造体にあるような、名前制約のDER符号化形式が含まれています。この構造体のASN.1表記については、TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints)
のドキュメントを参照してください。
以降の変更から保護するために、返されるバイト配列の複製が作成されます。
null
バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.