public class CertPathBuilder extends Object
このクラスは、プロバイダベースのアーキテクチャーを使用します。CertPathBuilder
を作成するには、static getInstance
メソッドのうちの 1 つを呼び出して、作成する CertPathBuilder
のアルゴリズム名とプロバイダ名 (省略可能) を渡します。
CertPathBuilder
オブジェクトが作成されると、build
メソッドを呼び出してアルゴリズム固有のパラメータセットを渡すことで、証明書パスが構築されます。証明書パスの構築に成功すると、CertPathBuilderResult
インタフェースを実装するオブジェクトにその結果 (構築した CertPath
を含む) が返されます。
Java プラットフォームの実装は、すべて次の標準の CertPathBuilder
アルゴリズムをサポートする必要があります。
並行アクセス
このクラスの static メソッドは、スレッドセーフであることが保証されています。このクラスで定義されている static メソッドは、悪影響を与えることなく、複数スレッドが並行して呼び出すことができます。
しかしこのことは、このクラスで定義されている非 static メソッドには当てはまりません。特定のプロバイダで特に説明がないかぎり、単一の CertPathBuilder
インスタンスに並行してアクセスする必要のある複数スレッドは、スレッド間で同期を取り、必要に応じてロックしなければいけません。異なる CertPathBuilder
インスタンスを操作する複数スレッドは、同期化される必要はありません。
CertPath
修飾子 | コンストラクタと説明 |
---|---|
protected |
CertPathBuilder(CertPathBuilderSpi builderSpi, Provider provider, String algorithm)
指定されたアルゴリズムの
CertPathBuilder オブジェクトを作成し、指定されたプロバイダの実装 (SPI オブジェクト) をそこにカプセル化します。 |
修飾子と型 | メソッドと説明 |
---|---|
CertPathBuilderResult |
build(CertPathParameters params)
指定したアルゴリズムのパラメータセットを使用して、証明書パスを構築しようとします。
|
String |
getAlgorithm()
この
CertPathBuilder のアルゴリズム名を返します。 |
static String |
getDefaultType()
Java セキュリティープロパティーファイルに指定されたデフォルトの
CertPathBuilder タイプを返します。該当するプロパティーが存在しない場合は文字列「PKIX」を返します。 |
static CertPathBuilder |
getInstance(String algorithm)
指定されたアルゴリズムを実装する
CertPathBuilder オブジェクトを返します。 |
static CertPathBuilder |
getInstance(String algorithm, Provider provider)
指定されたアルゴリズムを実装する
CertPathBuilder オブジェクトを返します。 |
static CertPathBuilder |
getInstance(String algorithm, String provider)
指定されたアルゴリズムを実装する
CertPathBuilder オブジェクトを返します。 |
Provider |
getProvider()
この
CertPathBuilder のプロバイダを返します。 |
protected CertPathBuilder(CertPathBuilderSpi builderSpi, Provider provider, String algorithm)
CertPathBuilder
オブジェクトを作成し、指定されたプロバイダの実装 (SPI オブジェクト) をそこにカプセル化します。builderSpi
- プロバイダの実装provider
- プロバイダalgorithm
- アルゴリズム名public static CertPathBuilder getInstance(String algorithm) throws NoSuchAlgorithmException
CertPathBuilder
オブジェクトを返します。
このメソッドは、最優先の Provider から順に、登録済みのセキュリティー Provider のリストをトラバースします。指定されたアルゴリズムをサポートする最初の Provider の CertPathBuilderSpi 実装をカプセル化する新しい CertPathBuilder オブジェクトが返されます。
登録済みプロバイダのリストは、Security.getProviders()
メソッド経由で取得できます。
algorithm
- 要求する CertPathBuilder
アルゴリズムの名前。アルゴリズムの標準名については、Java 暗号化アーキテクチャー標準アルゴリズム名のドキュメントの CertPathBuilder のセクションを参照。CertPathBuilder
オブジェクト。NoSuchAlgorithmException
- 指定されたアルゴリズムの CertPathBuilderSpi 実装をサポートする Provider が存在しない場合。Provider
public static CertPathBuilder getInstance(String algorithm, String provider) throws NoSuchAlgorithmException, NoSuchProviderException
CertPathBuilder
オブジェクトを返します。
指定されたプロバイダの CertPathBuilderSpi 実装をカプセル化する新しい CertPathBuilder オブジェクトが返されます。指定したプロバイダは、セキュリティープロバイダリストに登録する必要があります。
登録済みプロバイダのリストは、Security.getProviders()
メソッド経由で取得できます。
algorithm
- 要求する CertPathBuilder
アルゴリズムの名前。アルゴリズムの標準名については、Java 暗号化アーキテクチャー標準アルゴリズム名のドキュメントの CertPathBuilder のセクションを参照。provider
- プロバイダ名。CertPathBuilder
オブジェクト。NoSuchAlgorithmException
- 指定されたプロバイダに指定されたアルゴリズムの CertPathBuilderSpi の実装がない場合。NoSuchProviderException
- 指定されたプロバイダがセキュリティープロバイダリストに登録されていない場合。IllegalArgumentException
- provider
が null または空の場合。Provider
public static CertPathBuilder getInstance(String algorithm, Provider provider) throws NoSuchAlgorithmException
CertPathBuilder
オブジェクトを返します。
指定された Provider オブジェクトの CertPathBuilderSpi 実装をカプセル化する新しい CertPathBuilder オブジェクトが返されます。指定された Provider オブジェクトは、プロバイダリストに登録する必要はありません。
algorithm
- 要求する CertPathBuilder
アルゴリズムの名前。アルゴリズムの標準名については、Java 暗号化アーキテクチャー標準アルゴリズム名のドキュメントの CertPathBuilder のセクションを参照。provider
- プロバイダCertPathBuilder
オブジェクト。NoSuchAlgorithmException
- 指定された Provider オブジェクトに指定されたアルゴリズムの CertPathBuilderSpi の実装がない場合。IllegalArgumentException
- provider
が null の場合。Provider
public final Provider getProvider()
CertPathBuilder
のプロバイダを返します。CertPathBuilder
のプロバイダpublic final String getAlgorithm()
CertPathBuilder
のアルゴリズム名を返します。CertPathBuilder
のアルゴリズム名public final CertPathBuilderResult build(CertPathParameters params) throws CertPathBuilderException, InvalidAlgorithmParameterException
params
- アルゴリズムパラメータCertPathBuilderException
- 指定されたパラメータを満たす証明書パスを構築できなかった場合InvalidAlgorithmParameterException
- 指定されたパラメータが次に対して不適切な場合: CertPathBuilder
public static final String getDefaultType()
CertPathBuilder
タイプを返します。該当するプロパティーが存在しない場合は文字列「PKIX」を返します。Java セキュリティープロパティーファイルは、<JAVA_HOME>/lib/security/java.security という名前のファイルに格納されています。<JAVA_HOME> は java.home システムプロパティーの値を参照しており、JRE のインストールディレクトリを示します。
デフォルトの CertPathBuilder
タイプを使用するのは、アプリケーションで getInstance
メソッドを呼び出すときにハードコードされたタイプを使用しない場合、およびユーザーが独自のタイプを指定しないときにデフォルトのタイプを提供する場合です。
デフォルトの CertPathBuilder
タイプを変更するには、Java セキュリティープロパティーファイルの certpathbuilder.type セキュリティープロパティーの値を目的のタイプに設定します。
CertPathBuilder
タイプ。該当するプロパティーが存在しない場合は、文字列「PKIX」 バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.