クラスPKIXRevocationChecker

java.lang.Object
java.security.cert.PKIXCertPathChecker
java.security.cert.PKIXRevocationChecker
すべての実装されたインタフェース:
Cloneable, CertPathChecker

public abstract class PKIXRevocationChecker extends PKIXCertPathChecker
証明書の失効ステータスをPKIXアルゴリズムで確認するためのPKIXCertPathChecker

PKIXRevocationCheckerは、証明書の失効ステータスをOCSP (Online Certificate Status Protocol)またはCRL (証明書の取消しリスト)でチェックします。 OCSPは、RFC 2560に記述されている、証明書のステータスを判定するためのネットワーク・プロトコルです。 CRLは、失効した証明書を識別するタイム・スタンプ付きのリストです。RFC 5280には、CRLを使って証明書の失効ステータスを判定するためのアルゴリズムが記述されています。

PKIXRevocationCheckerは、OCSPとCRLを使用して証明書の失効ステータスをチェックできる必要があります。 デフォルトでは、OCSPが失効ステータスをチェックするための優先メカニズムになり、CRLは代替メカニズムになります。 ただし、この設定はPREFER_CRLSオプションを使用してCRLに切り替えることができます。 さらに、NO_FALLBACKオプションを使用して代替メカニズムを無効にすることもできます。

PKIXRevocationCheckerを取得するには、PKIX CertPathValidatorgetRevocationCheckerメソッドを呼び出します。 失効に固有の追加パラメータおよびオプションを設定できます(そのためには、インスタンスのsetOcspResponderメソッドを呼び出します)。 addCertPathCheckerまたはsetCertPathCheckersメソッドを使用してPKIXParametersオブジェクトにPKIXRevocationCheckerを追加し、そのPKIXParametersを検証対象のCertPathとともにPKIX CertPathValidatorvalidateメソッドに渡して検証します。 この方法で失効チェッカを指定する場合、RevocationEnabledフラグの設定に関係なく失効のチェックに使用され、PKIXサービス・プロバイダのデフォルト失効チェック・メカニズムがオーバーライドされます。 同様に、PKIX CertPathBuilderで使用する場合は、PKIXRevocationCheckerPKIXBuilderParametersオブジェクトに追加できます。

PKIXParametersPKIXRevocationCheckerを追加した場合、PKIXRevocationCheckerはクローニングされるため、PKIXRevocationCheckerに対するその後の変更は無効になります。

設定されていない(またはnullに設定されている)パラメータは、それぞれのデフォルト値に設定されます。

並行アクセス

特に断らないかぎり、このクラスで定義されているメソッドはスレッドセーフではありません。 単一のオブジェクトに並行アクセスする必要のある複数スレッドは、スレッド間で同期をとり、必要に応じてロックする必要があります。 複数のスレッドがそれぞれ個別のオブジェクトを処理する場合、それらのスレッドは同期する必要はありません。

導入されたバージョン:
1.8
外部仕様
  • ネストされたクラスのサマリー

    ネストされたクラス
    修飾子と型
    クラス
    説明
    static enum 
    失効確認メカニズムに対して指定できる各種の失効オプション。
  • コンストラクタのサマリー

    コンストラクタ
    修飾子
    コンストラクタ
    説明
    protected
    デフォルトのコンストラクタです。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    このオブジェクトの複製を返します。
    オプションのOCSPリクエスト拡張機能を取得します。
    OCSPレスポンダの場所を特定するURIを取得します。
    OCSPレスポンダの証明書を取得します。
    OCSP応答を取得します。
    失効オプションを取得します。
    SOFT_FAILオプションが設定されているときに失効チェッカが無視する例外を含むリストを返します。
    void
    オプションのOCSPリクエスト拡張機能を設定します。
    void
    OCSPレスポンダの場所を特定するURIを設定します。
    void
    OCSPレスポンダの証明書を設定します。
    void
    setOcspResponses(Map<X509Certificate, byte[]> responses)
    OCSP応答を設定します。
    void
    失効オプションを設定します。

    クラスで宣言されたメソッド PKIXCertPathChecker

    check, check, getSupportedExtensions, init, isForwardCheckingSupported
    修飾子と型
    メソッド
    説明
    void
    内部状態を使用して、指定された証明書にチェックを実行します。
    abstract void
    check(Certificate cert, Collection<String> unresolvedCritExts)
    指定した証明書をその内部状態でチェックし、証明書が処理する機能拡張でクリティカルなものがあれば、解釈処理できない機能拡張を表すOID文字列の指定したコレクションから、その機能拡張を削除します。
    abstract Set<String>
    このPKIXCertPathCheckerがサポートする(つまり、「認識する」「処理できる」) X.509証明書機能拡張の不変なSetを返します。拡張がサポートされない場合はnullを返します。
    abstract void
    init(boolean forward)
    このPKIXCertPathCheckerの内部状態を初期化します。
    abstract boolean
    順方向のチェックがサポートされているかどうかを示します。

    クラスオブジェクトで宣言されたメソッド

    equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    修飾子と型
    メソッド
    説明
    boolean
    このオブジェクトと他のオブジェクトが等しいかどうかを示します。
    protected void
    削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
    最終決定は非推奨であり、将来のリリースで削除される可能性があります。
    final Class<?>
    このObjectの実行時クラスを返します。
    int
    このオブジェクトに対するハッシュ・コード値を返します。
    final void
    このオブジェクトのモニターで待機中のスレッドを1つ再開します。
    final void
    このオブジェクトのモニターで待機中のすべてのスレッドを再開します。
    オブジェクトの文字列表現を返します。
    final void
    現在のスレッドが目覚めるまで待機します。通常、notifiedまたはinterruptedです。
    final void
    wait(long timeoutMillis)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
    final void
    wait(long timeoutMillis, int nanos)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
  • コンストラクタの詳細

    • PKIXRevocationChecker

      protected PKIXRevocationChecker()
      デフォルトのコンストラクタです。
  • メソッドの詳細

    • setOcspResponder

      public void setOcspResponder(URI uri)
      OCSPレスポンダの場所を特定するURIを設定します。 これは、RFC 5280に定義されている証明書のAuthority Information Access拡張機能で指定されたocsp.responderURLセキュリティ・プロパティとレスポンダをオーバーライドします。
      パラメータ:
      uri - レスポンダURI
    • getOcspResponder

      public URI getOcspResponder()
      OCSPレスポンダの場所を特定するURIを取得します。 これは、ocsp.responderURLセキュリティ・プロパティをオーバーライドします。 このパラメータまたはocsp.responderURLプロパティが設定されていない場合は、RFC 5280に定義されている証明書のAuthority Information Access拡張機能から場所が判定されます。
      戻り値:
      レスポンダURI。設定されていない場合はnull
    • setOcspResponderCert

      public void setOcspResponderCert(X509Certificate cert)
      OCSPレスポンダの証明書を設定します。 これは、ocsp.responderCertSubjectNameocsp.responderCertIssuerNameおよびocsp.responderCertSerialNumberセキュリティ・プロパティをオーバーライドします。
      パラメータ:
      cert - レスポンダの証明書
    • getOcspResponderCert

      public X509Certificate getOcspResponderCert()
      OCSPレスポンダの証明書を取得します。 これは、ocsp.responderCertSubjectNameocsp.responderCertIssuerNameおよびocsp.responderCertSerialNumberセキュリティ・プロパティをオーバーライドします。 このパラメータまたは前述のプロパティが設定されていない場合は、RFC 2560で指定されているようにレスポンダの証明書が特定されます。
      戻り値:
      レスポンダの証明書。設定されていない場合はnull
    • setOcspExtensions

      public void setOcspExtensions(List<Extension> extensions)
      オプションのOCSPリクエスト拡張機能を設定します。
      パラメータ:
      extensions - 拡張機能のリスト。 以後の変更から保護するために、リストは複製されます。
    • getOcspExtensions

      public List<Extension> getOcspExtensions()
      オプションのOCSPリクエスト拡張機能を取得します。
      戻り値:
      拡張機能の変更不可能なリスト。 拡張機能が指定されていない場合、このリストは空です。
    • setOcspResponses

      public void setOcspResponses(Map<X509Certificate, byte[]> responses)
      OCSP応答を設定します。 これらの応答は、OCSPの使用時に、指定された証明書の失効ステータスを判定するために使用されます。
      パラメータ:
      responses - OCSP応答のマップ。 個々のキーは、DERでエンコードされたその証明書に対応するOCSP応答にマッピングされるX509Certificateです。 その後の変更から保護するため、マップのディープ・コピーが実行されます。
    • getOcspResponses

      public Map<X509Certificate, byte[]> getOcspResponses()
      OCSP応答を取得します。 これらの応答は、OCSPの使用時に、指定された証明書の失効ステータスを判定するために使用されます。
      戻り値:
      OCSP応答のマップ。 個々のキーは、DERでエンコードされたその証明書に対応するOCSP応答にマッピングされるX509Certificateです。 その後の変更から保護するため、マップのディープ・コピーが返されます。 応答が指定されていない場合は、空のマップを返します。
    • setOptions

      public void setOptions(Set<PKIXRevocationChecker.Option> options)
      失効オプションを設定します。
      パラメータ:
      options - 失効オプションのセット。 このセットは、その後の変更から保護するためにコピーされます。
    • getOptions

      public Set<PKIXRevocationChecker.Option> getOptions()
      失効オプションを取得します。
      戻り値:
      失効オプションの変更不可能なセット。 オプションが指定されていない場合、このセットは空です。
    • getSoftFailExceptions

      public abstract List<CertPathValidatorException> getSoftFailExceptions()
      SOFT_FAILオプションが設定されているときに失効チェッカが無視する例外を含むリストを返します。 このリストは、initが呼び出されるたびにクリアされます。 このリストは、各エントリのgetIndexメソッドによって返される証明書インデックスに従って昇順に並べられます。

      PKIXRevocationCheckerの実装は、無視された例外をこのリストに追加します。

      戻り値:
      無視された例外を含む変更不可能なリスト。 無視された例外がない場合、このリストは空です。
    • clone

      public PKIXRevocationChecker clone()
      次のクラスからコピーされた説明: PKIXCertPathChecker
      このオブジェクトの複製を返します。 Object.clone()メソッドを呼び出します。 状態を維持するすべてのサブクラスではこのメソッドをサポートしなければならず、必要に応じてオーバーライドします。
      オーバーライド:
      clone、クラスPKIXCertPathChecker
      戻り値:
      このPKIXCertPathCheckerのコピー
      関連項目: