# 失効情報確認API

<br>

## **概要**

失効情報確認APIは、任意のタイミングで利用者の電子証明書の有効性を確認するためのAPIです。
プラットフォーム事業者は、J-LISから電子証明書の失効情報の一覧を1日1回提供を受け、利用者の電子証明書の発行番号と照合することで、電子証明書の有効性を確認します。
これにより、利用者の電子証明書の有効性を確認し、失効の場合は、基本4情報提供APIを利用することで、利用者の基本4情報（氏名・住所・生年月日・性別）を取得し、利用者の情報を最新に保つことが可能になります。

## **処理の流れ**
      
<Steps>
    <Step title="失効情報確認の要求（サービスプロバイダ事業者）">
        失効情報確認方式と利用者IDまたは電子証明書IDを指定し、プラットフォーム事業者へ失効情報確認の要求を送信します。利用者IDは、初回利用時にプラットフォーム事業者が発行します。
        ※デフォルト設定ではCRL方式で失効情報の確認が行われ、OCSP方式を利用する場合は明示的に指定する必要があります。
    </Step>
    <Step title="電子証明書の取得（プラットフォーム事業者）">
        受信した利用者IDまたは電子証明書IDに該当する電子証明書をデータベースから取得します。
    </Step>
    <Step title="証明書の失効情報確認（プラットフォーム事業者）">
        取得した電子証明書の失効情報を確認します。確認結果は証跡として、プラットフォーム事業者側のデータベースに記録・管理します。
    </Step>
    <Step title="失効情報の返却（プラットフォーム事業者）">
        確認結果（失効情報および失効理由）をサービスプロバイダ事業者へ返却します。
    </Step>
</Steps>

## **シーケンス図**
    
```mermaid
    %%{init:{'theme':'natural'}}%%
    sequenceDiagram
    participant 利用者
    participant SDK
    participant サービスプロバイダ事業者
    participant プラットフォーム事業者
    participant J-LIS

    alt 利用者IDによる失効情報確認
        サービスプロバイダ事業者->>プラットフォーム事業者: 利用者ID・電子証明書の種別の送信
    else 電子証明書IDによる失効情報確認
        サービスプロバイダ事業者->>プラットフォーム事業者: 電子証明書IDの送信
    end
    プラットフォーム事業者->>プラットフォーム事業者: 条件に該当する電子証明書を取得
    alt CRLの場合
        プラットフォーム事業者->>プラットフォーム事業者: 有効性確認
    else OCSPの場合
        プラットフォーム事業者->>J-LIS: 電子証明書の送信
        J-LIS->>J-LIS: 有効性確認
        J-LIS->>プラットフォーム事業者: 失効情報の返却    
    end
        プラットフォーム事業者->>プラットフォーム事業者: 証跡の保存
    プラットフォーム事業者->>サービスプロバイダ事業者: 失効情報の返却
```
    
<br>

