JPKI(Japan Public Key Infrastructure)は、日本における公的個人認証サービスであり、電子署名や利用者認証を行うための基盤となる技術です。昨今、マイナンバーカードの普及に合わせて、JPKIに注目が集まっています。
JPKIは便利な半面、セキュリティやプライバシーの観点から慎重な開発が求められます。本記事では、JPKIの概要を含め、JPKIを利用したサービス開発時に考慮すべきポイントを解説します。
JPKI(公的個人認証サービス)とは
JPKIは、日本政府が提供する公的個人認証サービスで、電子証明書を用いて本人確認や電子署名を行うためのインフラです。
マイナンバーカードのICチップに搭載された電子証明書を利用し、オンラインでの本人確認や契約手続きなどに利用されています。
マイナンバーカードは、最近では健康保険証や税金の申告など、さまざまな場面で利用されるようになっています。
日本政府はJPKIの普及を進めており、2025年には78%の国民がマイナンバーカードを取得しています。
現在、スマートフォンに対応したマイナンバーカードも登場し、運転免許証や健康保険証も扱えるようになり、ますます利便性が高まっています。
JPKIで利用される電子証明書は、署名用と利用者証明用の2種類があります。
署名用は、電子文書に署名を行うために使用され、利用者証明用は、本人確認や認証に使用されます。
これらの証明書は、マイナンバーカードに格納されており、専用のリーダーを使用して読み取ることができます。
JPKIを利用するサービス開発で気を付けるべきポイント
2025年現在、JPKIは行政機関での利用がほとんどですが、民間事業者でも導入できます。
本人確認での利用や、審査に要する作業負担の軽減が期待できます。
たとえば銀行や証券会社の口座開設やローン契約などでの利用例があります。
JPKIを導入する場合、以下のポイントに注意が必要です。
- 認定事業者になる、または署名検証業務を委託する
- 設備・体制の準備
- システム開発
2-1 認定事業者になる、または署名検証業務を委託する
JPKIを利用する際には、公的個人認証法に基づき主務大臣認定を受ける必要があります。
または、認定事業者に署名検証業務を委託する形でも利用できます。システムに必要な機能は、JPKIの利用目的によって異なります。
- 「電子署名」を利用する場合に必要となる機能
・署名検証機能 - 「電子利用者証明」を利用する場合に必要となる機能
・署名検証機能
・利用者と利用者証明用電子証明書の紐付機能
・利用者証明検証機能
認定事業者になると、電子証明書の失効情報を受け取れます。
失効情報があることで、署名検証や利用者証明検証業務ができるようになります。
2-2 設備・体制を準備する
認定事業者になるためには、情報管理を行うための設備および体制が必要になります。認定を受ける際には、以下の認定基準を満たす必要があります。
- 規程類の整備
- 電気通信回線を通じた不正アクセスの防止
- 正当な権限を有しない者による操作の防止
- 動作を記録する機能
- 入退場管理に必要な措置
- 外部組織との連携に係る措置
- 情報セキュリティに係る組織体制
- 役員等の要件
2-3 各環境に合わせたシステム開発をする
JPKIに対応したシステム開発を行う際には、各環境に合わせたAPIの理解および実装が必要です。
仕様はJ-LIS 利用者クライアントソフトに係る技術仕様についてで公開されている他、AndroidやPC向けのライブラリが公開されています。ライブラリはJava、Cなどで開発されています。
また、J-LIS(地方公共団体情報システム機構)と協定書を締結した署名検証者、利用者証明検証者、団体署名検証者はブラウザインターフェースやiOS Frameworkなどが開示されます。
JPKIのテストで直面する課題
JPKIを利用したサービスを開発する際には、テストが重要になります。
しかし、JPKIのテストは難易度が高く、さまざまな課題があります。以下に、JPKIのテストで直面する課題を挙げます。
- テスト環境の構築が難しい
- API・ミドルウェアの整備
- パターン網羅やエラーケース対応
3-1 テスト環境の構築が難しい
JPKIを利用したサービスにおいては、そのテスト環境構築が課題になります。
特に、JPKIの署名検証や利用者証明検証を行うためには、認定事業者としての設備や体制が必要になります。認定を得られないと確認できない情報が多いため、開発期間にも影響を与えます。
3-2 API・ミドルウェアの整備
JPKIを利用する場合、先に挙げたライブラリの利用が必要です。
デスクトップ向けやスマートフォン向けなど、場合によっては追加の申請が必要です。そうした情報を獲得した上で開発可能性や実装方法を検討する必要があります。
3-3 パターン網羅やエラーケース対応
JPKIを利用したサービスにおいては、さまざまなパターンやエラーケースに対応する必要があります。
検証が正しく行えなければ、サービスの信頼性や継続性も問われるでしょう。
特に、JPKIはセキュリティに関わる部分が多いため、十分なテストが求められます。
JPKIのテストはアウトソーシングが有効!3つの理由
上記のような課題を解決するためにも、JPKIのテストについてアウトソーシングが有効です。
- 個人情報やプライバシーの関わる部分を専門家に任せることで、リスクを軽減できる
- 専門知識とツールを持つ第三者による品質保証が得られる
- テスト工程の効率化と、開発への集中が可能になる
JPKIではシステムとしての品質はもとより、特に個人情報やプライバシーに関わる要件が求められます。個人情報に関わらない範囲であっても、インシデントが起こるのは避けなければなりません。
そのため、十分なテスト計画と実施が求められるでしょう。
専門事業者にアウトソースすることで、高いセキュリティが求められる品質要件をクリアできます。
また、JPKIを扱う上でどういった点に注意すべきか、どういったエラーが想定されるのかについても、専門家の意見を聞くことができます。
テスト専門事業者にアウトソースするメリットは、テスト計画の作成と実施など、テスト工程の効率化にあります。
JPKIでは多くの部分がブラックボックスになっており、開発工程が思いのほか長くなる可能性があります。
そうした中であっても、テストに関わる工数を適切に確保し、品質の高いシステム構築を行うためにも、テストをアウトソーシングする価値はあるでしょう。
まとめ
今回はJPKI(公的個人認証サービス)と、その開発に関わる課題について解説しました。
マイナンバーカードが普及する中、関連するサービスの開発が進んでいます。行政機関はもちろん、民間でも導入が進み、JPKIを利用したサービスは増えていくことでしょう。
バルテスは、テスト専門企業として、JPKIを利用したサービスについてもテストをサポートしています。高いセキュリティの求められる環境下でのテストに課題がある際には、ぜひご相談ください。