- java.lang.Object
-
- java.security.cert.PKIXParameters
-
- すべての実装されたインタフェース:
Cloneable
,CertPathParameters
- 直系の既知のサブクラス:
PKIXBuilderParameters
public class PKIXParameters extends Object implements CertPathParameters
PKIXCertPathValidator
アルゴリズムの入力で使用されるパラメータです。PKIX
CertPathValidator
ではこれらのパラメータを使用し、PKIX証明書パス検査アルゴリズムに従ってCertPath
を検査します。PKIXParameters
オブジェクトをインスタンス化するには、アプリケーションでPKIX証明書パス検査アルゴリズムで定義されるもっとも信頼できるCAを1つ以上指定しなければいけません。 もっとも信頼できるCAは、2つのコンストラクタのどちらかを使用して指定されます。PKIXParameters(Set)
を呼び出す場合は、TrustAnchor
オブジェクトのSet
を指定します。それぞれのTrustAnchorオブジェクトではもっとも信頼できるCAを特定します。 またアプリケーションは、信頼できる証明書エントリが含まれるKeyStore
インスタンスを指定してPKIXParameters(KeyStore)
を呼び出すことができます。それぞれの証明書エントリがもっとも信頼できるCAになります。PKIXParameters
オブジェクトが作成されると、(たとえばsetInitialPolicies
またはsetDate
を呼び出して)ほかのパラメータを指定し、PKIXParameters
が検査対象のCertPath
とともにCertPathValidator.validate
に渡されます。設定されていない(または
null
に設定されている)パラメータは、それぞれのデフォルト値に設定されます。date
パラメータのデフォルト値はnull
で、パスが検証されたときの現在時刻を示します。 そのほかのパラメータのデフォルト値はほとんど制約されません。並行アクセス
特に断らないかぎり、このクラスで定義されているメソッドはスレッドセーフではありません。 単一のオブジェクトに並行アクセスする必要のある複数スレッドは、スレッド間で同期をとり、必要に応じてロックする必要があります。 複数のスレッドがそれぞれ個別のオブジェクトを処理する場合、それらのスレッドは同期する必要はありません。
- 導入されたバージョン:
- 1.4
- 関連項目:
CertPathValidator
-
-
コンストラクタのサマリー
コンストラクタ コンストラクタ 説明 PKIXParameters(KeyStore keystore)
もっとも信頼できるCAのセットを、指定したKeyStore
に含まれる信頼できる証明書エントリから生成する、PKIXParameters
のインスタンスを作成します。PKIXParameters(Set<TrustAnchor> trustAnchors)
もっとも信頼できるCAからなる指定したSet
で、PKIXParameters
のインスタンスを作成します。
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 具象メソッド 修飾子と型 メソッド 説明 void
addCertPathChecker(PKIXCertPathChecker checker)
PKIXCertPathChecker
を証明書パス・チェッカのリストに追加します。void
addCertStore(CertStore store)
CertStore
を、証明書とCRLを見つけるために使用されるCertStore
のリストの最後に追加します。Object
clone()
このPKIXParameters
オブジェクトのコピーを作成します。List<PKIXCertPathChecker>
getCertPathCheckers()
証明書パス・チェッカのList
を返します。List<CertStore>
getCertStores()
証明書とCRLを見つけるために使用されるCertStore
の不変なList
を返します。Date
getDate()
証明書パスの妥当性が判断される時刻を返します。Set<String>
getInitialPolicies()
どの初期ポリシーも証明書パス処理のために証明書ユーザーにとって許容できるような初期ポリシー識別子(OID文字列)の不変なSet
を返します。boolean
getPolicyQualifiersRejected()
PolicyQualifiersRejectedフラグを取得します。String
getSigProvider()
署名プロバイダの名前を返します。設定されていない場合はnull
を返します。CertSelector
getTargetCertConstraints()
ターゲット証明書に要求された制約を返します。Set<TrustAnchor>
getTrustAnchors()
もっとも信頼できるCAの不変なSet
を返します。boolean
isAnyPolicyInhibited()
任意のポリシーOIDが証明書に含まれるとき、そのポリシーOIDが処理されるべきかどうかをチェックします。boolean
isExplicitPolicyRequired()
明示的なポリシーが要求されているかどうかをチェックします。boolean
isPolicyMappingInhibited()
ポリシー・マッピングが抑制されているかどうかをチェックします。boolean
isRevocationEnabled()
RevocationEnabledフラグをチェックします。void
setAnyPolicyInhibited(boolean val)
任意のポリシーOIDが証明書に含まれるときに、そのポリシーOIDが処理されなければならないかどうかを判断する状態を設定します。void
setCertPathCheckers(List<PKIXCertPathChecker> checkers)
追加の証明書パス・チェッカのList
を設定します。void
setCertStores(List<CertStore> stores)
証明書とCRLを見つけるために使用されるCertStore
のリストを設定します。void
setDate(Date date)
証明書パスの妥当性が判断される時刻を設定します。void
setExplicitPolicyRequired(boolean val)
ExplicitPolicyRequiredフラグを設定します。void
setInitialPolicies(Set<String> initialPolicies)
初期ポリシー識別子(OID文字列)のSet
を設定して、証明書パス処理のためにどの初期ポリシーも証明書ユーザーが許容できることを示します。void
setPolicyMappingInhibited(boolean val)
PolicyMappingInhibitedフラグを設定します。void
setPolicyQualifiersRejected(boolean qualifiersRejected)
PolicyQualifiersRejectedフラグを設定します。void
setRevocationEnabled(boolean val)
RevocationEnabledフラグを設定します。void
setSigProvider(String sigProvider)
署名プロバイダの名前を設定します。void
setTargetCertConstraints(CertSelector selector)
ターゲット証明書に要求された制約を設定します。void
setTrustAnchors(Set<TrustAnchor> trustAnchors)
もっとも信頼できるCAのSet
を設定します。String
toString()
パラメータを説明する書式付き文字列を返します。
-
-
-
コンストラクタの詳細
-
PKIXParameters
public PKIXParameters(Set<TrustAnchor> trustAnchors) throws InvalidAlgorithmParameterException
もっとも信頼できるCAからなる指定したSet
で、PKIXParameters
のインスタンスを作成します。 セットの各要素はTrustAnchor
です。以後の変更から保護するために、
Set
は複製されています。- パラメータ:
trustAnchors
-TrustAnchor
のSet
- 例外:
InvalidAlgorithmParameterException
- 指定されたSet
が空((trustAnchors.isEmpty()== true)
)である場合NullPointerException
- 指定されたSet
がnull
である場合ClassCastException
-Set
の要素のいずれかがjava.security.cert.TrustAnchor
型ではない場合
-
PKIXParameters
public PKIXParameters(KeyStore keystore) throws KeyStoreException, InvalidAlgorithmParameterException
もっとも信頼できるCAのセットを、指定したKeyStore
に含まれる信頼できる証明書エントリから生成する、PKIXParameters
のインスタンスを作成します。 信頼できるX509Certificates
を含むキーストア・エントリだけが対象となり、それ以外の証明書タイプはすべて無視されます。- パラメータ:
keystore
- もっとも信頼できるCAのセットが生成されるKeyStore
- 例外:
KeyStoreException
- キーストアが初期化されていない場合InvalidAlgorithmParameterException
- キーストアに信頼できる証明書エントリが1つも含まれない場合NullPointerException
- キーストアがnull
である場合
-
-
メソッドの詳細
-
getTrustAnchors
public Set<TrustAnchor> getTrustAnchors()
もっとも信頼できるCAの不変なSet
を返します。- 戻り値:
TrustAnchor
の不変のSet
。null
にはならない- 関連項目:
setTrustAnchors(java.util.Set<java.security.cert.TrustAnchor>)
-
setTrustAnchors
public void setTrustAnchors(Set<TrustAnchor> trustAnchors) throws InvalidAlgorithmParameterException
もっとも信頼できるCAのSet
を設定します。以後の変更から保護するために、
Set
は複製されています。- パラメータ:
trustAnchors
-TrustAnchor
のSet
- 例外:
InvalidAlgorithmParameterException
- 指定されたSet
が空((trustAnchors.isEmpty()== true)
)である場合NullPointerException
- 指定されたSet
がnull
である場合ClassCastException
- セットの要素のいずれかが型java.security.cert.TrustAnchor
ではない場合- 関連項目:
getTrustAnchors()
-
getInitialPolicies
public Set<String> getInitialPolicies()
どの初期ポリシーも証明書パス処理のために証明書ユーザーにとって許容できるような初期ポリシー識別子(OID文字列)の不変なSet
を返します。 デフォルトの戻り値は空のSet
で、どのポリシーも許容可能として解釈されます。- 戻り値:
String
形式の初期ポリシーOIDの不変のSet
、または空のSet
(どのポリシーも許容できることを意味する)。null
を返すことはない。- 関連項目:
setInitialPolicies(java.util.Set<java.lang.String>)
-
setInitialPolicies
public void setInitialPolicies(Set<String> initialPolicies)
初期ポリシー識別子(OID文字列)のSet
を設定して、証明書パス処理のためにどの初期ポリシーも証明書ユーザーが許容できることを示します。 デフォルトでは、どのポリシーも(つまりすべてのポリシーを)許容できるため、どのポリシーも許容できるようにしたいユーザーはこのメソッドを呼び出す必要はありません。または、空のSet
(またはnull
)で呼び出すことができます。以後の変更から保護するために、
Set
は複製されています。- パラメータ:
initialPolicies
-String
形式の初期ポリシーOIDのSet
(またはnull
)- 例外:
ClassCastException
- セットの要素のいずれかが型String
ではない場合- 関連項目:
getInitialPolicies()
-
setCertStores
public void setCertStores(List<CertStore> stores)
証明書とCRLを見つけるために使用されるCertStore
のリストを設定します。 使用されるCertStore
がない場合には、null
になります。 リスト中の最初のCertStore
は、後のエントリに優先します。以後の変更から保護するために、
List
は複製されています。- パラメータ:
stores
-CertStore
のList
、またはnull
- 例外:
ClassCastException
- リストの要素のいずれかが型java.security.cert.CertStore
ではない場合- 関連項目:
getCertStores()
-
addCertStore
public void addCertStore(CertStore store)
CertStore
を、証明書とCRLを見つけるために使用されるCertStore
のリストの最後に追加します。- パラメータ:
store
- 追加されるCertStore
。null
の場合、ストアは無視される(リストに追加されない)。
-
getCertStores
public List<CertStore> getCertStores()
証明書とCRLを見つけるために使用されるCertStore
の不変なList
を返します。- 戻り値:
CertStore
の不変なList
(空は可、null
は不可)- 関連項目:
setCertStores(java.util.List<java.security.cert.CertStore>)
-
setRevocationEnabled
public void setRevocationEnabled(boolean val)
RevocationEnabledフラグを設定します。 このフラグがtrueの場合、基本となるPKIXサービス・プロバイダのデフォルトの取消しチェック・メカニズムが使用されます。 falseの場合、デフォルトの取消しチェック・メカニズムは無効にされます(使用されない)。PKIXParameters
オブジェクトが作成されると、このフラグはtrueに設定されます。 各サービス・プロバイダではPKIXに準拠するために取消しチェックをサポートする必要があるので、この設定は取消しをチェックするもっとも一般的な方法を反映しています。 PKIXサービス・プロバイダのデフォルトの取消しチェック・メカニズムを使用することが実際的でないときや、代替の取消しチェック・メカニズムが代わりをするときは(addCertPathChecker
またはsetCertPathCheckers
メソッドを呼び出すことによっても)、高度なアプリケーションでこのフラグをfalseに設定する必要があります。- パラメータ:
val
- RevocationEnabledフラグの新しい値
-
isRevocationEnabled
public boolean isRevocationEnabled()
RevocationEnabledフラグをチェックします。 このフラグがtrueの場合、基本となるPKIXサービス・プロバイダのデフォルトの取消しチェック・メカニズムが使用されます。 falseの場合、デフォルトの取消しチェック・メカニズムは無効にされます(使用されない)。 このフラグの値を設定する詳細については、setRevocationEnabled
メソッドを参照してください。- 戻り値:
- RevocationEnabledフラグの現在の値
-
setExplicitPolicyRequired
public void setExplicitPolicyRequired(boolean val)
ExplicitPolicyRequiredフラグを設定します。 このフラグがtrueの場合、許容できるポリシーがそれぞれの証明書で明示的に特定されている必要があります。 デフォルトでExplicitPolicyRequiredフラグはfalseです。- パラメータ:
val
- 明示的なポリシーが要求されている場合はtrue
、そうでない場合はfalse
-
isExplicitPolicyRequired
public boolean isExplicitPolicyRequired()
明示的なポリシーが要求されているかどうかをチェックします。 このフラグがtrueの場合、許容できるポリシーがそれぞれの証明書で明示的に特定されている必要があります。 デフォルトでExplicitPolicyRequiredフラグはfalseです。- 戻り値:
- 明示的なポリシーが要求されている場合は
true
、そうでない場合はfalse
-
setPolicyMappingInhibited
public void setPolicyMappingInhibited(boolean val)
PolicyMappingInhibitedフラグを設定します。 このフラグがtrueの場合、ポリシー・マッピングは抑制されています。 デフォルトでポリシー・マッピングは抑制されていません(フラグはfalse)。- パラメータ:
val
- ポリシー・マッピングが抑制されている場合はtrue
、そうでない場合はfalse
-
isPolicyMappingInhibited
public boolean isPolicyMappingInhibited()
ポリシー・マッピングが抑制されているかどうかをチェックします。 このフラグがtrueの場合、ポリシー・マッピングは抑制されています。 デフォルトでポリシー・マッピングは抑制されていません(フラグはfalse)。- 戻り値:
- ポリシー・マッピングが抑制されている場合はtrue、そうでない場合はfalse
-
setAnyPolicyInhibited
public void setAnyPolicyInhibited(boolean val)
任意のポリシーOIDが証明書に含まれるときに、そのポリシーOIDが処理されなければならないかどうかを判断する状態を設定します。 デフォルトでは、ポリシーOIDは抑制されません(isAnyPolicyInhibited()
はfalse
を返す)。- パラメータ:
val
- 任意のポリシーOIDが抑制される場合はtrue
、そうでない場合はfalse
-
isAnyPolicyInhibited
public boolean isAnyPolicyInhibited()
任意のポリシーOIDが証明書に含まれるとき、そのポリシーOIDが処理されるべきかどうかをチェックします。- 戻り値:
- 任意のポリシーOIDが抑制されている場合は
true
、そうでない場合はfalse
-
setPolicyQualifiersRejected
public void setPolicyQualifiersRejected(boolean qualifiersRejected)
PolicyQualifiersRejectedフラグを設定します。 このフラグがtrueの場合、クリティカルにマークされている証明書ポリシー機能拡張にポリシー修飾子を含む証明書は、拒否されます。 フラグがfalseの場合、この理由では拒否されません。PKIXParameters
オブジェクトが作成されると、このフラグはtrueに設定されます。 この設定は、ポリシー修飾子を処理するためのもっとも一般的な(かつ簡単な)方法を反映します。 より複雑なポリシーを使用するアプリケーションでは、このフラグをfalseに設定する必要があります。PKIX証明書パス検査アルゴリズムでは、クリティカルにマークされた証明書ポリシー拡張機能のポリシー修飾子が必ず処理され、検査されるように指定します。 ポリシー修飾子が処理および検査されないと、その証明書パスは拒否されます。 policyQualifiersRejectedフラグがfalseに設定されている場合、PKIX互換のためにこの方法ですべてのポリシー修飾子を検査するかどうかは、アプリケーションによって異なります。
- パラメータ:
qualifiersRejected
- PolicyQualifiersRejectedフラグの新しい値- 関連項目:
getPolicyQualifiersRejected()
,PolicyQualifierInfo
-
getPolicyQualifiersRejected
public boolean getPolicyQualifiersRejected()
PolicyQualifiersRejectedフラグを取得します。 このフラグがtrueの場合、クリティカルにマークされている証明書ポリシー機能拡張にポリシー修飾子を含む証明書は、拒否されます。 フラグがfalseの場合、この理由では拒否されません。PKIXParameters
オブジェクトが作成されると、このフラグはtrueに設定されます。 この設定は、ポリシー修飾子を処理するためのもっとも一般的な(かつ簡単な)方法を反映します。 より複雑なポリシーを使用するアプリケーションでは、このフラグをfalseに設定する必要があります。- 戻り値:
- PolicyQualifiersRejectedフラグの現在の値
- 関連項目:
setPolicyQualifiersRejected(boolean)
-
getDate
public Date getDate()
証明書パスの妥当性が判断される時刻を返します。null
の場合、現在時刻が使われます。以後の変更から保護するために、返される
Date
は複製されています。- 戻り値:
Date
。設定されていない場合はnull
- 関連項目:
setDate(java.util.Date)
-
setDate
public void setDate(Date date)
証明書パスの妥当性が判断される時刻を設定します。null
の場合、現在時刻が使われます。以後の変更から保護するために、ここで提供される
Date
は複製されています。- パラメータ:
date
-Date
。現在時刻の場合はnull
- 関連項目:
getDate()
-
setCertPathCheckers
public void setCertPathCheckers(List<PKIXCertPathChecker> checkers)
追加の証明書パス・チェッカのList
を設定します。 指定したList
にPKIXCertPathChecker
でないオブジェクトが含まれる場合は無視されます。指定した各
PKIXCertPathChecker
では、証明書の追加チェックを実装しています。 通常、証明書に含まれている専用の機能拡張を、処理および検査しているかどうかをチェックします。 それぞれのPKIXCertPathChecker
は、チェックを行うために必要な初期化パラメータでインスタンス化されなければいけません。高度なアプリケーションでは、このメソッドによりPKIX
CertPathValidator
やCertPathBuilder
を拡張できます。 処理された、または検査された証明書のぞれぞれに対し、指定したPKIXCertPathChecker
が、PKIXCertPathValidator
やCertPathBuilder
によってそれぞれ順番に呼び出されます。これらの追加
PKIXCertPathChecker
が設定されているかどうかにかかわらず、PKIXCertPathValidator
やCertPathBuilder
では要求された各証明書のPKIXチェックをすべて実行する必要があります。 このルールの例外の1つに、RevocationEnabledフラグがfalseに設定された場合があります(setRevocationEnabled
メソッド参照)。以後の変更から保護するために、ここで提供される
List
とリスト内の各PKIXCertPathChecker
は複製されています。- パラメータ:
checkers
-PKIXCertPathChecker
のList
。null
の場合、追加のチェッカは使用されない。- 例外:
ClassCastException
- リストの要素のいずれかが型java.security.cert.PKIXCertPathChecker
ではない場合- 関連項目:
getCertPathCheckers()
-
getCertPathCheckers
public List<PKIXCertPathChecker> getCertPathCheckers()
証明書パス・チェッカのList
を返します。 返されたList
は不変であり、List
内の各PKIXCertPathChecker
は以後の変更から保護するために複製されています。- 戻り値:
PKIXCertPathChecker
の不変なList
(空は可、null
は不可)- 関連項目:
setCertPathCheckers(java.util.List<java.security.cert.PKIXCertPathChecker>)
-
addCertPathChecker
public void addCertPathChecker(PKIXCertPathChecker checker)
PKIXCertPathChecker
を証明書パス・チェッカのリストに追加します。 詳細は、setCertPathCheckers
メソッドを参照してください。以後の変更から保護するために、
PKIXCertPathChecker
は複製されています。- パラメータ:
checker
- チェックのリストに追加されるPKIXCertPathChecker
。null
の場合、チェッカは無視される(リストに追加されない)。
-
getSigProvider
public String getSigProvider()
署名プロバイダの名前を返します。設定されていない場合はnull
を返します。- 戻り値:
- 署名プロバイダの名前、または
null
- 関連項目:
setSigProvider(java.lang.String)
-
setSigProvider
public void setSigProvider(String sigProvider)
署名プロバイダの名前を設定します。Signature
オブジェクトを作成するときには、指定したプロバイダが推奨されます。null
、または設定されていない場合は、アルゴリズムをサポートする、最初に見つかったプロバイダが使用されます。- パラメータ:
sigProvider
- 署名プロバイダの名前、またはnull
- 関連項目:
getSigProvider()
-
getTargetCertConstraints
public CertSelector getTargetCertConstraints()
ターゲット証明書に要求された制約を返します。 制約はCertSelector
のインスタンスとして返されます。null
の場合は、制約が定義されていません。以後の変更から保護するために、返される
CertSelector
は複製されています。- 戻り値:
- ターゲット証明書の制約を指定する
CertSelector
、またはnull
- 関連項目:
setTargetCertConstraints(java.security.cert.CertSelector)
-
setTargetCertConstraints
public void setTargetCertConstraints(CertSelector selector)
ターゲット証明書に要求された制約を設定します。 制約はCertSelector
のインスタンスとして指定されます。null
の場合は、制約が定義されていません。以後の変更から保護するために、指定された
CertSelector
は複製されています。- パラメータ:
selector
- ターゲット証明書の制約を指定するCertSelector
、またはnull
- 関連項目:
getTargetCertConstraints()
-
clone
public Object clone()
このPKIXParameters
オブジェクトのコピーを作成します。 コピーに変更を加えても元の属性には影響ありません。また逆の場合も同じです。- 定義:
clone
、インタフェースCertPathParameters
- オーバーライド:
clone
、クラスObject
- 戻り値:
- この
PKIXParameters
オブジェクトのコピー - 関連項目:
Cloneable
-
-