免許情報記録の検証
このページでは、Verify SDK を使用してマイナ免許証から読み出したデータを Verify CardInfo API に送信し、パース・検証を行う方法を説明します。
データの利用の流れで説明したとおり、Verify CardInfo APIのパース用RPCは1種類のみであり、マイナ免許証・マイナ経歴証明書のどちらから読み出したデータも同じRPCに送信します。 対象のカードがマイナ免許証かマイナ経歴証明書かは、RPC側でデータをパースした時点で判別されます。 マイナ免許証のデータの場合は、パース処理にあわせて電子署名の検証も行われます。 一方、マイナ経歴証明書には電子署名が格納されていないため、マイナ経歴証明書のデータの場合は検証は行われません。
あらかじめAPI のセットアップを完了しておいてください。
MynaDriversLicenseService.ParseContent は現在プレビュー機能として提供されています。SLA 対象外となり、予告なく仕様変更が行われる可能性があります。詳細はプレビュー機能の利用をご覧ください。
シーケンス
アプリとバックエンドの連携
Verify SDK を用いて取得した免許情報記録または運転経歴情報、電子署名などの情報は、 何らかの方法でバックエンドサーバーに共有してデータのパース・検証を行ってください。
以下の実装例では、アプリとバックエンドの間での連携については省略しています。
Verify CardInfo API の利用は、必ず バックエンドサーバーを経由して行ってください。 API トークンをアプリケーションに含めて配布することは Verify CardInfo API の不正利用につながるため、絶対に行わないでください。
実装例
クライアントライブラリのセットアップ方法は、クライアントライブラリをご参照ください。
- Go
package main
import (
"context"
"encoding/base64"
"fmt"
"log"
"net/http"
"buf.build/gen/go/pocketsign/apis/connectrpc/go/pocketsign/cardinfo/v1/cardinfov1connect"
cardinfov1 "buf.build/gen/go/pocketsign/apis/protocolbuffers/go/pocketsign/cardinfo/v1"
"connectrpc.com/connect"
)
var (
// APIエンドポイントを指定します。この値は環境によって異なります。
baseUrl = "https://verify.mock.p8n.app"
// Verify CardInfo APIのトークンです。ご自身のトークンに置き換えてください。
token = "<YOUR_API_TOKEN>"
// Verify SDKによってマイナ免許証から読み出されたデータです。これらの値は、アプリ上で作成したものを何らかの方法で予め受け取っておいてください。
rawMynaDriversLicenseContent = "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ZT7TVu2o/UbMAPZcdnDOZyiuX2gBIqKtNP1xSp65v6fZMPEyxaZ0h9pdwle9+FZGYCui7ZQabzU+035NHfrsbd7Y9AhJrBEHcCcmY5WFYs6n5b3Fy40u0QPZsj1vGlB5/39flUqMt5061/VLZFAoidbI8nngIBaKXB7YvFc+eFC3iTNpuGcF+ASmK2w/xTMe8PLONJJD8s7rTygwGOs71aS6UvD1WQibluGpVl/1j8oHW7rIBMXXLHX1wZM4TDPwZCDfQpKSZjrML3LdvAknkrCU/9n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////w=="
rawSignature = "AQiCAQBnOe/r2pOBE5i8xLgv1MAmegOlrIitxbgvj1Y9ArSbzMkrC+PrKMCeG3qxo8RX62MxmJfSElSYY/Azcl56BHvsEBUuYp0LzQ88D2XuNum/xXJ0/iPmWN7h4lN3q3f8vvtd+EaqCdY2BihXWGQ5cFE7/28nOKK+c/G3SXuSyugGOkAPOy/tA23kQzzxNvPbR41IOq7wXyYq8ZJ7bgmVP8weRaCNRo3kY+uB4QSpy7M9vy9cAtd+8rsY0OzSEIlk1YpmhvYKVn0WekLBTbtOrhhnSIIwwgg4fXKEULwzdEMAZTuTY8Pold5LiGmBuKQyjLdwyP2ggelgA6luJhjBxlgiAQkQMzkzMDMwMzAzMDMwMzAzMQEKAAELNk9VPVA4TiBJQ0RMIFJvb3QgQ0EsT1U9UG9ja2V0U2lnbiBJbmMuLE89UDhOLU1PQ0ssQz1KUAEMYENOPU1vY2sgUFBTQyxPVT1Qb2NrZXRTaWduIFB1YmxpYyBTYWZldHkgQ29tbWlzc2lvbnMgZm9yIElDREwsT1U9UG9ja2V0U2lnbiBJbmMuLE89UDhOLU1PQ0ssQz1KUAENFE3fZlhJIZN06DILIcnoRFNImlFs//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8="
)
func run() error {
// Base64をデコードしてバイト列にします。
mynaDriversLicenseContent, err := base64.StdEncoding.DecodeString(rawMynaDriversLicenseContent)
if err != nil {
return err
}
signature, err := base64.StdEncoding.DecodeString(rawSignature)
if err != nil {
return err
}
// マイナ免許証のデータのパースリクエストを作成します。
request := connect.NewRequest(&cardinfov1.MynaDriversLicenseServiceParseContentRequest{
// マイナ免許証から読み出されたデータを設定します。
MynaDriversLicenseContent: mynaDriversLicenseContent,
Signature: signature,
})
// リクエストにAPIトークンを設定します。
request.Header().Set("Authorization", "Bearer "+token)
// リクエストにプレビュー版にオプトインするためのヘッダを設定します。
request.Header().Set("X-P8N-OptIn", "PREVIEW")
// APIクライアントを作成します。
client := cardinfov1connect.NewMynaDriversLicenseServiceClient(http.DefaultClient, baseUrl)
// マイナ免許証のデータのパースリクエストを送信します。
response, err := client.ParseContent(context.Background(), request)
if err != nil {
return err
}
// 結果を表示します。
mynaDriversLicense := response.Msg.GetMynaDriversLicense()
switch mynaDriversLicense.GetTypeSpecificContent().(type) {
case *cardinfov1.MynaDriversLicenseContent_DriversLicense:
fmt.Println("マイナ免許証(免許情報記録)")
fmt.Println("免許証の色区分: ", mynaDriversLicense.GetDriversLicense().GetDriverClass())
fmt.Println("免許情報記録の有効期間の末日: ", mynaDriversLicense.GetDriversLicense().GetExpirationDate())
for i, v := range mynaDriversLicense.GetDriversLicense().GetLicenseRestriction() {
fmt.Printf("免許の条件%d: %s\n", i, v)
}
for i, v := range mynaDriversLicense.GetDriversLicense().GetExternalCharacter() {
s := base64.StdEncoding.EncodeToString(v)
fmt.Printf("欠字%d: %s\n", i, s)
}
for i, v := range mynaDriversLicense.GetDriversLicense().GetSpare() {
fmt.Printf("予備%d: %s\n", i, v)
}
fmt.Println("免許情報記録番号: ", mynaDriversLicense.GetDriversLicense().GetLicenseNumber())
case *cardinfov1.MynaDriversLicenseContent_DrivingHistory:
fmt.Println("マイナ経歴証明書(運転経歴情報)")
fmt.Println("運転者区分: ", mynaDriversLicense.GetDrivingHistory().GetDriverClass())
fmt.Println("運転経歴情報記録年月日: ", mynaDriversLicense.GetDrivingHistory().GetRecordDate())
fmt.Println("運転経歴情報記録番号: ", mynaDriversLicense.GetDrivingHistory().GetLicenseNumber())
}
for i, v := range mynaDriversLicense.GetRemark() {
fmt.Printf("備考%d: %s\n", i, v)
}
fmt.Println("顔写真: ", base64.StdEncoding.EncodeToString(mynaDriversLicense.GetFaceImage()))
fmt.Println("免許の年月日(二・小・原): ", mynaDriversLicense.GetAcquisitionDateMotorcycleSpecialSmallMotorizedBicycle())
fmt.Println("免許の年月日(他): ", mynaDriversLicense.GetAcquisitionDateOther())
fmt.Println("免許の年月日(二種): ", mynaDriversLicense.GetAcquisitionDateClass2())
fmt.Println("免許の種類(大型): ", mynaDriversLicense.GetLicenseTypeLarge())
fmt.Println("免許の種類(普通): ", mynaDriversLicense.GetLicenseTypeStandard())
fmt.Println("免許の種類(大特): ", mynaDriversLicense.GetLicenseTypeSpecialLarge())
fmt.Println("免許の種類(大自二): ", mynaDriversLicense.GetLicenseTypeLargeMotorcycle())
fmt.Println("免許の種類(普自二): ", mynaDriversLicense.GetLicenseTypeStandardMotorcycle())
fmt.Println("免許の種類(小特): ", mynaDriversLicense.GetLicenseTypeSpecialSmall())
fmt.Println("免許の種類(原付): ", mynaDriversLicense.GetLicenseTypeMotorizedBicycle())
fmt.Println("免許の種類(け引): ", mynaDriversLicense.GetLicenseTypeTowing())
fmt.Println("免許の種類(大二): ", mynaDriversLicense.GetLicenseTypeClass2Large())
fmt.Println("免許の種類(普二): ", mynaDriversLicense.GetLicenseTypeClass2Standard())
fmt.Println("免許の種類(大特二): ", mynaDriversLicense.GetLicenseTypeClass2SpecialLarge())
fmt.Println("免許の種類(け引二): ", mynaDriversLicense.GetLicenseTypeClass2Towing())
fmt.Println("免許の種類(中型): ", mynaDriversLicense.GetLicenseTypeMidSized())
fmt.Println("免許の種類(中二): ", mynaDriversLicense.GetLicenseTypeClass2MidSized())
fmt.Println("免許の種類(準中型): ", mynaDriversLicense.GetLicenseTypeSemiMidSized())
return nil
}
func main() {
if err := run(); err != nil {
log.Fatalln(err)
}
}
パース・検証に成功すると、以下のように結果が表示されます。
取得したマイナ免許証の色区分や有効期間の末日、顔写真を使用して、車両等を運転する際の免許所持の確認などに使用できます。
マイナ免許証(免許情報記録)
免許証の色区分: その他
免許情報記録の有効期間の末日: 5100923
免許情報記録番号: 002399928970
顔写真: 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
免許の年月日(二・小・原):
免許の年月日(他): 5050923
免許の年月日(二種):
免許の種類(大型): false
免許の種類(普通): false
免許の種類(大特): false
免許の種類(大自二): false
免許の種類(普自二): false
免許の種類(小特): false
免許の種類(原付): false
免許の種類(け引): false
免許の種類(大二): false
免許の種類(普二): false
免許の種類(大特二): false
免許の種類(け引二): false
免許の種類(中型): false
免許の種類(中二): false
免許の種類(準中型): true
読み出した写真の画像形式はJPEG2000形式となります。利用する際にはJPEG2000形式の画像形式を取り扱えるライブラリを使用してください。
次のステップ
その他、API の詳しい使い方やエラーの詳細等については、API リファレンスをご覧ください。