PocketSign APIs
  1. VerificationService
PocketSign APIs
  • Verify API
    • v2
      • CertificateService
        • 証明書情報の取得
        • 証明書情報の検索
        • 証明書情報の削除
        • 証明書の失効確認
        • 証明書失効確認履歴の取得
        • 証明書失効確認履歴の検索
      • UserService
        • 利用者情報の取得
        • 利用者情報の検索
        • 利用者情報の削除
        • 利用者の現況確認
      • VerificationService
        • 署名検証
          POST
        • 署名検証結果の取得
          POST
        • 署名検証結果の検索
          POST
        • 署名検証結果の削除
          POST
    • v1
      • verifications
        • 署名検証
        • 署名検証結果の検索
        • 署名検証結果の取得
        • 署名検証結果の削除
      • certificates
        • 証明書データによる失効確認
        • 証明書情報の検索
        • 証明書情報の取得
        • 証明書情報の削除
        • 証明書IDによる失効確認
        • 失効確認履歴の取得
      • users
        • 利用者の検索
        • 利用者情報の取得
        • 利用者情報の削除
        • 利用者の現況確認
  1. VerificationService

署名検証

モック環境
https://verify.mock.p8n.app
モック環境
https://verify.mock.p8n.app
POST
/pocketsign.verify.v2.VerificationService/Verify
VerificationService
必要なデータを受け取り、署名の検証を行います。

Requestパラメータ

Request Bodyパラメータapplication/json
certificate
string <byte>
署名に使用された秘密鍵に対応する公開鍵証明書 このデータはX.509証明書(DER形式)である必要があります。 [PocketSign Verify SDK](https://docs.p8n.app/docs/category/getting-started)を利用してマイナンバーカード等から取得することができます。
可選
hash_algorithm
enum<string> 
可選
列挙型:
HASH_ALGORITHM_UNSPECIFIEDHASH_ALGORITHM_SHA256HASH_ALGORITHM_SHA384HASH_ALGORITHM_SHA512
デフォルト値:
HASH_ALGORITHM_UNSPECIFIED
digest
string <byte>
署名対象データのダイジェスト
可選
signature
string <byte>
署名値 このデータはRSASSA-PKCS1-v1_5方式で作成された署名値である必要があります。 [PocketSign Verify SDK](https://docs.p8n.app/docs/category/getting-started)を利用して作成することができます。
可選
check_method
enum<string> 
可選
CHECK_METHOD_CRL: CRLを参照して失効確認
CHECK_METHOD_OCSP: OCSPレスポンダに問い合わせて失効確認
列挙型:
CHECK_METHOD_UNSPECIFIEDCHECK_METHOD_CRLCHECK_METHOD_OCSP
デフォルト値:
CHECK_METHOD_UNSPECIFIED
identify_user
boolean 
利用者の識別を行うかどうか 指定しない場合、デフォルト値(`false`)が適用されます。
可選
例
{
  "certificate": "string",
  "hash_algorithm": "HASH_ALGORITHM_UNSPECIFIED",
  "digest": "string",
  "signature": "string",
  "check_method": "CHECK_METHOD_UNSPECIFIED",
  "identify_user": true
}

サンプルコード

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://verify.mock.p8n.app/pocketsign.verify.v2.VerificationService/Verify' \
--header 'Content-Type: application/json' \
--data-raw '{
    "certificate": "string",
    "hash_algorithm": "HASH_ALGORITHM_UNSPECIFIED",
    "digest": "string",
    "signature": "string",
    "check_method": "CHECK_METHOD_UNSPECIFIED",
    "identify_user": true
}'

Response

🟢200A successful response.
application/json
Body
verification
object (署名検証の結果) 
可選
id
string 
署名検証ID
可選
result
enum<string> 
可選
RESULT_OK: 検証成功
RESULT_SIGNATURE_MISMATCH: 検証失敗(署名不一致のため)
RESULT_CERTIFICATE_REVOKED: 検証失敗(証明書が失効していたため)
RESULT_CERTIFICATE_EXPIRED: 検証失敗(証明書の有効期限切れのため)
列挙型:
RESULT_UNSPECIFIEDRESULT_OKRESULT_SIGNATURE_MISMATCHRESULT_CERTIFICATE_REVOKEDRESULT_CERTIFICATE_EXPIRED
デフォルト値:
RESULT_UNSPECIFIED
hash_algorithm
enum<string> 
可選
列挙型:
HASH_ALGORITHM_UNSPECIFIEDHASH_ALGORITHM_SHA256HASH_ALGORITHM_SHA384HASH_ALGORITHM_SHA512
デフォルト値:
HASH_ALGORITHM_UNSPECIFIED
digest
string <byte>
署名検証の対象となるデータのダイジェスト
可選
signature
string <byte>
署名検証の対象となるデータの署名値
可選
created_at
string <date-time>
署名検証が行われた時刻 PocketSign Verify APIサーバーの時刻が記録されます。
可選
certificate
object (証明書情報) 
可選
id
string 
証明書ID
可選
type
enum<string> 
可選
TYPE_JPKI_CARD_DIGITAL_SIGNATURE: マイナンバーカードに搭載された署名用電子証明書
TYPE_JPKI_CARD_USER_AUTHENTICATION: マイナンバーカードに搭載された利用者証明用電子証明書
列挙型:
TYPE_UNSPECIFIEDTYPE_JPKI_CARD_DIGITAL_SIGNATURETYPE_JPKI_CARD_USER_AUTHENTICATION
デフォルト値:
TYPE_UNSPECIFIED
created_at
string <date-time>
証明書がPocketSign Verify APIに記録された時刻 PocketSign Verify APIサーバーの時刻が記録されます。
可選
certificate_status
object (証明書の失効確認履歴) 
可選
id
string 
証明書状態ID
可選
status
enum<string> 
可選
STATUS_GOOD: 証明書が有効である
STATUS_REVOKED: 証明書が失効している
列挙型:
STATUS_UNSPECIFIEDSTATUS_GOODSTATUS_REVOKED
デフォルト値:
STATUS_UNSPECIFIED
check_method
enum<string> 
可選
CHECK_METHOD_CRL: CRLを参照して失効確認
CHECK_METHOD_OCSP: OCSPレスポンダに問い合わせて失効確認
列挙型:
CHECK_METHOD_UNSPECIFIEDCHECK_METHOD_CRLCHECK_METHOD_OCSP
デフォルト値:
CHECK_METHOD_UNSPECIFIED
check_purpose
enum<string> 
可選
CHECK_PURPOSE_SIGNATURE_VERIFICATION: 署名検証のため
CHECK_PURPOSE_LIVENESS_CHECK: 現況確認のため
列挙型:
CHECK_PURPOSE_UNSPECIFIEDCHECK_PURPOSE_SIGNATURE_VERIFICATIONCHECK_PURPOSE_LIVENESS_CHECK
デフォルト値:
CHECK_PURPOSE_UNSPECIFIED
source_updated_at
string <date-time>
証明書失効状態の確認に利用したデータソースの更新日時 CRLやOCSPレスポンスに含まれる `thisUpdate` に相当します。 CRLにシリアル番号が含まれない場合は設定されません。
可選
revoked_at
string <date-time>
証明書が失効した日時 証明書が失効していない場合は設定されません。
可選
revocation_reason
enum<string> 
可選
列挙型:
CRL_REASON_UNSPECIFIEDCRL_REASON_KEY_COMPROMISECRL_REASON_CA_COMPROMISECRL_REASON_AFFILIATION_CHANGEDCRL_REASON_SUPERSEDEDCRL_REASON_CESSATION_OF_OPERATIONCRL_REASON_CERTIFICATE_HOLDCRL_REASON_REMOVE_FROM_CRLCRL_REASON_PRIVILEGE_WITHDRAWNCRL_REASON_AA_COMPROMISE
デフォルト値:
CRL_REASON_UNSPECIFIED
created_at
string <date-time>
失効確認を行った日時
可選
certificate_content
object (証明書記載内容) 
可選
subject
string 
証明書の主体名(X.509 Subject)
可選
validity
object (証明書の有効期限) 
可選
crl_distribution_point
string 
証明書に記録されている証明書失効リスト配布点(X.509 Extension CRL Distripution Point)
可選
jpki_card_digital_signature_content
object (マイナンバーカードに搭載された署名用電子証明書の記載内容) 
可選
jpki_card_user_authentication_content
object (マイナンバーカードに搭載された利用者証明用電子証明書の記載内容) 
可選
user
object (利用者情報) 
可選
id
string 
利用者ID
可選
created_at
string <date-time>
利用者が初めてPocketSign Verify APIに識別された日時
可選
is_new_user
boolean 
利用者が新規に識別されたかどうか
可選
例
{
  "verification": {
    "id": "string",
    "result": "RESULT_UNSPECIFIED",
    "hash_algorithm": "HASH_ALGORITHM_UNSPECIFIED",
    "digest": "string",
    "signature": "string",
    "created_at": "2019-08-24T14:15:22Z"
  },
  "certificate": {
    "id": "string",
    "type": "TYPE_UNSPECIFIED",
    "created_at": "2019-08-24T14:15:22Z"
  },
  "certificate_status": {
    "id": "string",
    "status": "STATUS_UNSPECIFIED",
    "check_method": "CHECK_METHOD_UNSPECIFIED",
    "check_purpose": "CHECK_PURPOSE_UNSPECIFIED",
    "source_updated_at": "2019-08-24T14:15:22Z",
    "revoked_at": "2019-08-24T14:15:22Z",
    "revocation_reason": "CRL_REASON_UNSPECIFIED",
    "created_at": "2019-08-24T14:15:22Z"
  },
  "certificate_content": {
    "subject": "string",
    "validity": {
      "not_before": "2019-08-24T14:15:22Z",
      "not_after": "2019-08-24T14:15:22Z"
    },
    "crl_distribution_point": "string",
    "jpki_card_digital_signature_content": {
      "common_name": "string",
      "substitute_character_of_common_name": "string",
      "gender": "string",
      "date_of_birth": "string",
      "address": "string",
      "substitute_character_of_address": "string"
    },
    "jpki_card_user_authentication_content": {}
  },
  "user": {
    "id": "string",
    "created_at": "2019-08-24T14:15:22Z"
  },
  "is_new_user": true
}
🔴500An unexpected error response.
前へ
利用者の現況確認
次へ
署名検証結果の取得
Built with