- すべての実装されたインタフェース:
Cloneable
,CertPathParameters
CertPathBuilder
アルゴリズムの入力で使用されるパラメータです。
PKIX CertPathBuilder
ではこれらのパラメータを使用し、PKIX証明書パス検査アルゴリズムに従って検証されたCertPath
を構築(build
)します。
PKIXBuilderParameters
オブジェクトをインスタンス化するには、アプリケーションでPKIX証明書パス検査アルゴリズムで定義されるもっとも信頼できるCAを1つ以上指定しなければいけません。 もっとも信頼できるCAは、2つのコンストラクタのどちらかを使用して指定されます。 PKIXBuilderParameters(Set, CertSelector)
を呼び出す場合は、TrustAnchor
オブジェクトのSet
を指定します。それぞれのTrustAnchorオブジェクトではもっとも信頼できるCAを特定します。 またアプリケーションは、信頼できる証明書エントリが含まれるKeyStore
インスタンスを指定してPKIXBuilderParameters(KeyStore, CertSelector)
を呼び出すことができます。それぞれの証明書エントリがもっとも信頼できるCAになります。
さらにアプリケーションでは、CertPathBuilder
がパスを構築しようとするターゲット証明書の制約を指定する必要があります。 制約は、CertSelector
オブジェクトとして指定されます。 これらの制約により、ターゲット証明書を見つけるための十分な検索基準がCertPathBuilder
に与えられます。 通常、X509Certificate
の最小基準には、サブジェクトの名前や1つ以上のサブジェクトの代替名が含まれています。 十分な基準が指定されない場合、CertPathBuilder
はCertPathBuilderException
をスローします。
並行アクセス
特に断らないかぎり、このクラスで定義されているメソッドはスレッドセーフではありません。 単一のオブジェクトに並行アクセスする必要のある複数スレッドは、スレッド間で同期をとり、必要に応じてロックする必要があります。 複数のスレッドがそれぞれ個別のオブジェクトを処理する場合、それらのスレッドは同期する必要はありません。
- 導入されたバージョン:
- 1.4
- 関連項目:
-
コンストラクタのサマリー
コンストラクタ説明PKIXBuilderParameters
(KeyStore keystore, CertSelector targetConstraints) もっとも信頼できるCAのセットを、指定したKeyStore
に含まれる信頼できる証明書エントリから生成する、PKIXBuilderParameters
のインスタンスを作成します。PKIXBuilderParameters
(Set<TrustAnchor> trustAnchors, CertSelector targetConstraints) もっとも信頼できるCAからなる指定したSet
で、PKIXBuilderParameters
のインスタンスを作成します。 -
メソッドのサマリー
修飾子と型メソッド説明int
証明書パスに存在する、自己発行でない中間証明書の最大数を返します。void
setMaxPathLength
(int maxPathLength) 証明書パスに存在する、自己発行でない中間証明書の最大数を設定します。toString()
パラメータを説明する書式付き文字列を返します。クラスjava.security.cert.PKIXParametersで宣言されたメソッド
addCertPathChecker, addCertStore, clone, getCertPathCheckers, getCertStores, getDate, getInitialPolicies, getPolicyQualifiersRejected, getSigProvider, getTargetCertConstraints, getTrustAnchors, isAnyPolicyInhibited, isExplicitPolicyRequired, isPolicyMappingInhibited, isRevocationEnabled, setAnyPolicyInhibited, setCertPathCheckers, setCertStores, setDate, setExplicitPolicyRequired, setInitialPolicies, setPolicyMappingInhibited, setPolicyQualifiersRejected, setRevocationEnabled, setSigProvider, setTargetCertConstraints, setTrustAnchors
-
コンストラクタの詳細
-
PKIXBuilderParameters
public PKIXBuilderParameters(Set<TrustAnchor> trustAnchors, CertSelector targetConstraints) throws InvalidAlgorithmParameterException もっとも信頼できるCAからなる指定したSet
で、PKIXBuilderParameters
のインスタンスを作成します。 セットの各要素はTrustAnchor
です。以後の変更から保護するために、
Set
は複製されています。- パラメータ:
trustAnchors
-TrustAnchor
のSet
targetConstraints
- ターゲット証明書の制約を指定するCertSelector
- 例外:
InvalidAlgorithmParameterException
-trustAnchors
が空である場合(trustAnchors.isEmpty()== true)
NullPointerException
-trustAnchors
がnull
である場合ClassCastException
-trustAnchors
の要素のいずれかがjava.security.cert.TrustAnchor
型ではない場合
-
PKIXBuilderParameters
public PKIXBuilderParameters(KeyStore keystore, CertSelector targetConstraints) throws KeyStoreException, InvalidAlgorithmParameterException もっとも信頼できるCAのセットを、指定したKeyStore
に含まれる信頼できる証明書エントリから生成する、PKIXBuilderParameters
のインスタンスを作成します。 信頼できるX509Certificate
を含むキーストア・エントリだけが対象となり、それ以外の証明書タイプはすべて無視されます。- パラメータ:
keystore
- もっとも信頼できるCAのセットが生成されるKeyStore
targetConstraints
- ターゲット証明書の制約を指定するCertSelector
- 例外:
KeyStoreException
-keystore
が初期化されていない場合InvalidAlgorithmParameterException
-keystore
に信頼できる証明書エントリが1つも含まれない場合NullPointerException
-keystore
がnull
である場合
-
-
メソッドの詳細
-
setMaxPathLength
public void setMaxPathLength(int maxPathLength) 証明書パスに存在する、自己発行でない中間証明書の最大数を設定します。 サブジェクト・フィールドと発行者フィールドのDNがそれぞれ特定でき、空ではない場合、証明書は自己発行されています。 証明書パスの最後の証明書は中間証明書ではないため、この上限値には含まれません。 通常、最後の証明書はエンド・エンティティ証明書ですが、CA証明書となる場合もあります。 PKIXCertPathBuilder
インスタンスによって構築されるパスは、ここで指定した長さよりも長くなってはいけません。値が0の場合、パスには証明書が1つだけ含まれていることを表します。 -1の場合は、パス長に制約がありません(つまり最大値がない)。 最大パス長を指定しなかった場合、デフォルトの5になります。 -1よりも小さい値を設定すると、例外がスローされます。
あらゆるCA証明書に
BasicConstraintsExtension
が含まれている場合、機能拡張のpathLenConstraint
フィールドの値は、結果の証明書パス長が短いときは常に、最大パス長のパラメータでオーバーライドされます。- パラメータ:
maxPathLength
- 証明書パスに存在する、自己発行でない中間証明書の最大数- 例外:
InvalidParameterException
-maxPathLength
の値が -1より小さい場合- 関連項目:
-
getMaxPathLength
public int getMaxPathLength()証明書パスに存在する、自己発行でない中間証明書の最大数を返します。 詳細は、setMaxPathLength(int)
メソッドを参照してください。- 戻り値:
- 証明書パスに存在する、自己発行でない中間証明書の最大数。上限がない場合は -1
- 関連項目:
-
toString
public String toString()パラメータを説明する書式付き文字列を返します。- オーバーライド:
toString
、クラスPKIXParameters
- 戻り値:
- パラメータを説明する書式付き文字列
-