以下、図面に基づいて本発明の実施の形態を説明する。本実施の形態では、各種のWebサーバによって提供される各種のサービスに関する認証時に、個人番号カードの利用者証明用証明書によるPKI(Public Key Infrastructure)認証の代替として、生体認証を利用可能とする仕組みについて説明する。
利用者証明用証明書によるPKI認証の代替として生体認証を利用可能とするためには、以下の問題が有る。
(1)証明書のように失効できず、一生変わらない生体情報を、事業者(Webサーバ側)に提供させるようにした場合、以下のリスクが生じる。
・「犯罪者でもないのに、生体情報を採取された」と感じる人もおり、利用者に生体情報の提供が拒まれる。
・生体情報が漏えいしてグミ指等の生体認証装置を欺く器具が作成されると、なりすましの可能性が高まる。
・事業者(Webサーバ側)に、多数の利用者情報と共に生体情報が保管されるため、Webサーバが、サイバー攻撃の標的になる可能性が高まる。
(2)利用者のIDと生体情報との紐づけをWebサーバ側で管理するためのコストが増加する。
(3)通常、1つのWebサーバに対して利用できる生体情報(指紋、静脈、顔画像、虹彩、網膜等)は1種類に限定されるため、以下のようなリスクが有る。
・体調が悪かったり(肌荒れや血行不良)、環境が悪い(直射日光や暗闇で顔等の撮影が困難)場合に、認証を通過することができない。
・病気、けが、又は事故等で特定の生体部位に欠損等(例えば、指の切断等)が生じた場合に、認証を通過することができない。
・生体情報登録時に使用した生体認証機器と、生体情報利用時に使用した機器との間にメーカの違いや機種の新旧等に基づく非互換が生じる場合に、認証を通過することができない。
・既に利用者が多数の生体認証付き端末を所有していても、端末を混在利用することができない。
・新たにセキュリティレベルの高い新たな生体認証方式が出現しても、Webサーバごとに、生体情報を取得するための機器が統一されているため、利用者の意図に応じて当該新たな生体認証方式を利用するのは困難である。
・使用されている生体認証方式のセキュリティレベルが下がっても、当該生体認証方式を容易に廃止できない。
(4)クライアント認証でのSSL(Secure Socket Layer)通信の開始時にクライアント証明書の提示が必要となるが、個人番号カードを携帯していない状態ではサーバ認証によるSSL通信になる。サーバ認証では、利用者を識別するためのパスワード認証(パスワード設定や配付)等が必要になり、セキュリティレベルが下がる。
上記(1)〜(4)の問題に対応するために、本実施の形態では、以下の機能が実現される。
(A)利用者の個人番号カード内の署名用証明書にアクセス可能な時にだけ、生体認証するための「生体認証情報」をクライアント側で生成する機能。「生体認証情報」とは、生体情報そのものではなく、生体認証に利用されるクライアント、生体部位、及び生体認証方式等を示す情報をいう。ここで、生体認証に利用可能なクライアントや生体部位は、特定のものに固定されない。したがって、各利用者は、複数のクライアント及び複数の生体認証方式を併用可能である。(A)は、問題(1)及び(3)の解決に寄与する。
(B)「生体認証情報」に付与された、利用者の署名用証明書による電子署名によって本人確認できた時だけ、クライアント側から提供された「生体認証情報」とサーバ側で管理する「利用者ごとに一意の利用者ID」とが記録された新たな証明書を発行する機能。(B)は、問題(2)の解決に寄与する。なお、当該新たな公開鍵証明書を、以下、「生体情報証明書」といい、生体情報証明書を管理する認証局を、「発行局」という。
(C)クライアントで生体認証が成功した時だけ、予めクライアントに登録されている生体認証情報に対応する「生体情報証明書の秘密鍵」を利用可能とする機能。(C)は、問題(2)及び(4)の解決に寄与する。
(D)利用者が個人番号カード内の利用者証明用証明書を利用できる時だけ、「利用者ID」に対応する生体情報証明書の失効申請が行える機能。(D)は、問題(2)の解決に寄与する。
上記の(A)〜(D)の機能を実現する情報処理システムについて具体的に説明する。図1は、本発明の実施の形態における情報処理システムの構成例を示す図である。図1において、情報処理システム1は、1以上の利用者端末10、1以上のWebサーバ30、1以上の認証サーバ40、1以上の利用者管理サーバ50、生体認証連携サーバ20、発行局60、及び公的個人認証サービス70等を含む。利用者端末10は、インターネット等のネットワークを介してWebサーバ30及び生体認証連携サーバ20と通信可能である。Webサーバ30は、LAN(Local Area Network)又はインターネット等のネットワークを介して認証サーバ40と通信可能である。認証サーバ40は、LAN(Local Area Network)又はインターネット等のネットワークを介して利用者管理サーバ50と通信可能である。認証サーバ40及び利用者管理サーバ50は、インターネット等のネットワークを介して生体認証連携サーバ20と通信可能である。生体認証連携サーバ20は、インターネット等のネットワークを介して、発行局60及び公的個人認証サービス70と通信可能である。
利用者端末10は、情報処理システム1の利用者(ユーザ)が利用する端末である。例えば、PC(Personal Computer)、スマートフォン、又はタブレット端末等が利用者端末10として利用されてもよい。一人の利用者が、複数の利用者端末10を利用してもよい。
Webサーバ30は、利用者に対して所定のサービスを提供するWebサイトを実現する1以上のコンピュータである。例えば、Webサーバ30ごとに異なるサービスが提供される。以下、Webサーバ30によって提供されるサービスを「Webサービス」という。
認証サーバ40は、Webサービスの利用者を認証する1以上のコンピュータである。認証サーバ40と、Webサーバ30(Webサービス)とは、1対1に対応してもよい。
利用者管理サーバ50は、Webサービスの利用者に関する情報を管理する1以上のコンピュータである。利用者管理サーバ50とWebサーバ30(Webサービス)とは、1対1に対応してもよい。
生体認証連携サーバ20は、利用者端末10からの生体情報証明書の発行申請に応じた処理の制御や、生体情報署名所の失効申請に応じた処理の制御等を行う1以上のコンピュータである。生体認証連携サーバ20は、また、認証サーバ40からの要求に応じ、認証対象の利用者に関する基本4情報(氏名、住所、生年月日、性別)の提供等を行う。
発行局60は、生体情報証明書を管理する1以上のコンピュータである。例えば、発行局60は、生体情報証明書の発行及び失効等を行う。
公的個人認証サービス70や、国によって運営されている公的個人認証サービスである。
図2は、本発明の実施の形態における利用者端末のハードウェア構成例を示す図である。図2の利用者端末10は、それぞれバスB1で相互に接続されているドライブ装置100、補助記憶装置102、メモリ装置103、CPU104、インタフェース装置105、表示装置106、入力装置107、TPM108、生体センサ109、及びICカードリーダ110等を有する。
利用者端末10での処理を実現するプログラムは、記録媒体101によって提供される。プログラムを記録した記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、プログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従って利用者端末10に係る機能を実現する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。表示装置106はプログラムによるGUI(Graphical User Interface)等を表示する。入力装置107は、キーボード、マウス、又はタッチパネル等であり、様々な操作指示を入力させるために用いられる。
TPM(Trusted Platform Module)108は、セキュリティ関連の処理機能を有するLSIである。TPM108は、耐タンパー性を有する。なお、TMP108以外のセキュリティチップが、TPM108の代わりに利用されてもよい。
生体センサ109は、利用者の生体情報(指紋、静脈、虹彩、顔等)を読み取るセンサである。1つの利用者端末10に、複数の生体センサ109が接続されてもよい。この場合、各生体センサ109が読み取る生体情報の種類が異なっていてもよい。
ICカードリーダ110は、ICカードから情報を読み取る装置である。本実施の形態において、ICカードリーダ110は、個人番号カードからの情報の読み取りに利用される。
なお、記録媒体101の一例としては、CD−ROM、DVDディスク、又はUSBメモリ等の可搬型の記録媒体が挙げられる。また、補助記憶装置102の一例としては、HDD(Hard Disk Drive)又はフラッシュメモリ等が挙げられる。記録媒体101及び補助記憶装置102のいずれについても、コンピュータ読み取り可能な記録媒体に相当する。
図3は、本発明の実施の形態における生体認証連携サーバのハードウェア構成例を示す図である。図3の生体認証連携サーバ20は、それぞれバスB2で相互に接続されているドライブ装置200、補助記憶装置202、メモリ装置203、CPU204、及びインタフェース装置205等を有する。
生体認証連携サーバ20での処理を実現するプログラムは、記録媒体201によって提供される。プログラムを記録した記録媒体201がドライブ装置200にセットされると、プログラムが記録媒体201からドライブ装置200を介して補助記憶装置202にインストールされる。但し、プログラムのインストールは必ずしも記録媒体201より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置202は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
メモリ装置203は、プログラムの起動指示があった場合に、補助記憶装置202からプログラムを読み出して格納する。CPU204は、メモリ装置203に格納されたプログラムに従って生体認証連携サーバ20に係る機能を実行する。インタフェース装置205は、ネットワークに接続するためのインタフェースとして用いられる。
なお、記録媒体201の一例としては、CD−ROM、DVDディスク、又はUSBメモリ等の可搬型の記録媒体が挙げられる。また、補助記憶装置202の一例としては、HDD(Hard Disk Drive)又はフラッシュメモリ等が挙げられる。記録媒体201及び補助記憶装置202のいずれについても、コンピュータ読み取り可能な記録媒体に相当する。
なお、Webサーバ30、認証サーバ40、及び発行局60等も、図3に示されるハードウェア構成を有していてもよい。
図4は、本発明の実施の形態における情報処理システムの機能構成例を示す図である。図4において、利用者端末10は、Webブラウザ11、生体認証クライアントアプリ12、及び暗号トークン13等を有する。Webブラウザ11及び生体認証クライアントアプリ12は、利用者端末10にインストールされた1以上のプログラムが、CPU104に実行させる処理により実現される。暗号トークン13は、TPM108を用いて実現されてもよい。利用者端末10は、また、生体マスタ14及び生体認証情報テーブル15等の記憶部を利用する。これら各記憶部は、例えば、補助記憶装置102等を用いて実現可能である。
Webブラウザ11は、一般的又は汎用的なWebブラウザである。本実施の形態において、Webブラウザ11は、Webサーバ30によって提供されるサービスのユーザインタフェースの表示制御手段として利用される。
生体認証クライアントアプリ12は、生体情報証明書を生体認証に連携させるために利用者端末10にインストールされるアプリケーションである。生体情報証明書を生体認証に連携させるとは、生体認証が成功した場合に生体情報証明書の利用を可能とすることをいう。図4において、生体認証クライアントアプリ12は、連携認証制御部121及びローカル生体認証部122等を含む。
連携認証制御部121は、生体情報証明書の発行申請や失効申請等を生体認証連携サーバ20に対して送信する。連携認証制御部121は、発行された生体情報証明書や、当該生体情報証明書に関する生体認証情報等を生体認証情報テーブル15に記憶する。
ローカル生体認証部122は、生体情報証明書に基づいてWebサービスを利用する利用者について当該生体情報証明書に対応する生体認証を行う。生体マスタ14には、利用者の生体情報等が記憶されている。
暗号トークン13は、生体情報証明書の秘密鍵と公開鍵とを安全に管理する。
生体認証連携サーバ20は、生体情報登録部21、基本情報更新部22、照会応答部23、失効審査部24、有効性検証部25、利用者ID管理部26、及び定期確認部27等を有する。これら各部は、生体認証連携サーバ20にインストールされた1以上のプログラムが、CPU204に実行させる処理により実現される。生体認証連携サーバ20は、また、認証DB28を利用する。認証DB28は、例えば、補助記憶装置202、又は生体認証連携サーバ20にネットワークを介して接続可能な記憶装置等を用いて実現可能である。
生体情報登録部21は、生体認証連携サーバ20のポータルサイトを実現する。生体情報登録部21は、生体情報証明書の発行申請(発行要求)や失効申請(失効要求)等を利用者端末10から受信する。生体情報登録部21は、発行申請に応じ、生体情報証明書の発行処理を制御する。発行された生体情報証明書は、当該生体情報証明書が紐付く署名用証明書に関する情報(シリアル番号や基本4情報等)や利用者IDに関連付けられて、認証DB28に記憶される。利用者IDは、利用者ごと(署名用証明書ごと)に割り当てられる識別情報である。したがって、同一の利用者に対して複数の生体情報証明書が発行された場合、当該複数の生体情報証明書は、同一の利用者IDに関連付けられる。
基本情報更新部22は、生体情報証明書に紐付けられている署名用証明書の基本4情報が更新された際に、利用者端末10からの要求に応じ、当該基本4情報の更新を認証DB28に反映する。
照会応答部23は、基本4情報の照会要求に応じ、当該照会要求に指定されている利用者IDに関連付けられて認証DB28に記憶されている基本4情報を応答する。
失効審査部24は、利用者端末10からの要求に応じ、生体情報証明書を失効させるための処理を制御する。失効された生体情報証明書は、認証DB28から削除される。
有効性検証部25は、利用者の個人番号カードから取得された署名用証明書や利用者証明用証明書等の有効性を検証する。
利用者ID管理部26は、利用者IDの管理を行う。
定期確認部27は、認証DBによって利用者IDに関連付けられている署名用証明書の有効性を定期的に確認する。
以下、情報処理システム1において実行される処理手順について説明する。情報処理システム1の利用者は、まず、生体情報証明書の発行を受ける必要がある。
図5及び図6は、生体情報証明書の発行時の処理手順の一例を説明するためのフローチャートである。以下の説明において、利用者によって利用されている利用者端末10を「対象端末」という。
ステップS101において、対象端末の連携認証制御部121は、利用者の操作に応じ、利用者からの指示を受け付けるための画面を表示し、当該画面を介して「利用者登録」の実行指示を受け付ける。
図7及び図8は、生体情報証明書の発行時の画面の遷移例を示す図である。ステップS101では、図7の画面510が表示装置106に表示される。画面510は、「利用者登録」又は「生体ローカル情報の削除」の実行指示を受け付けるためのラジオボタンを含む。ここでは、「利用者登録」が選択されて、OKボタン511が押下される。
続いて、対象端末の連携認証制御部121は、個人番号カードのICカードリーダ110への挿入又はNFC(Near field communication)接続を利用者に要求すると共に、個人番号カード内の署名用証明書を使用するためのPINの入力を利用者に要求する(S102)。例えば、図7の画面520が表示装置106に表示される。画面520は、個人番号カードの挿入とPINの入力とを利用者に促すメッセージ521と、PIN入力領域522とを含む。
続いて、利用者によって個人番号カードがICカードリーダ110へ挿入又はNFC接続される。また、連携認証制御部121は、画面520のPIN入力領域522を介して、署名用証明書を使用するためのPINの入力を利用者から受け付ける(S103)。
続いて、連携認証制御部121は、個人番号カードに格納されている電子証明書アプリケーション(JPKI−AP)に対し、入力されたPINの認証を要求して、署名用証明書を読み出す(S104)。連携認証制御部121は、署名用証明書に格納されている基本4情報を表示装置106に表示する。例えば、図8の画面530が表示される。画面530は、基本4情報が表示される領域531を含む。
続いて、連携認証制御部121は、署名用証明書と紐づける下記の情報を利用者に入力させる(S105)。
(1)ニックネーム
(2)連絡先(メールアドレスや電話番号)
(3)生体認証方式
(4)生体部位名
上記(1)〜(4)は、例えば、図8の画面530を介して入力される。なお、ニックネームとは、発行申請の対象とされる生体情報証明書に対する識別情報である。本実施の形態では、一人の利用者に対して複数の生体情報証明書を発行可能である。したがって、利用者は、例えば、用途別に生体情報証明書を得ることができる。このような場合、ニックネームは、生体情報証明書の用途を示す文字列であってもよい。生体部位名とは、生体認証に利用する部位の名称である。
続いて、連携認証制御部121は、署名用証明書と紐づける生体パターンの入力を利用者に要求する(S106)。例えば、連携認証制御部121は、図8の画面540を表示装置106に表示することにより、生体パターンの入力を要求する。なお、生体パターンとは、生体認証での照合元となる利用者の生体識別情報であり、例えば、画像、特徴点、数式等、生体認証方式に依存したデータである。利用者から見た場合、生体パターンの入力とは、ステップS105において選択した生体部位名に対応する部位を、生体センサ109に読み取らせる行為に相当する。
生体センサ109によって生体パターンが読み取られると、対象端末のローカル生体認証部122は、生体マスタ14に新たなレコード(以下、「対象マスタレコード」という。)を生成し、対象マスタレコードに当該生体パターンを記憶する(S107)。続いて、ローカル生体認証部122は、対象マスタレコードに、生体認証情報を記憶する(S108)。
図9は、生体マスタの構成例を示す図である。図9において、生体マスタ14の各レコードは、生体マスタID、生体パターン、生体認証情報、及び暗号トークン情報等の項目を有する。
生体マスタIDは、生体マスタ14内の各レコードの識別番号であり、レコードの生成に応じて自動的に割り当てられる。生体パターンは、生体センサ109によって読み取られた生体パターンである。生体認証情報は、生体パターンに基づく生体認証の属性情報であり、端末名、生体認証方式、生体部位名、生体登録日時等を含む。端末名は、当該生体認証が有効な利用者端末10の名称である。生体認証方式は、当該生体認証の方式である。生体部位名は、当該生体認証において利用される部位の名称である。生体登録日時は、生体パターンの登録日時である。
暗号トークン情報は、ID及びPINを含む。IDは、生体パターンに対応する生体情報証明書の秘密鍵を格納している、暗号トークン13の管理領域の識別子である。PINは、当該管理領域にアクセスするためのパスワードである。
ステップS108では、対象端末の名称を端末名とし、現在日時を生体登録日時とし、ステップS105において選択された生体認証方式及び生体部位名を含む生体認証情報が対象マスタレコードに記憶される。
続いて、ローカル生体認証部122は、例えば、ランダムな文字列を生成して、当該文字列を暗号トークン情報のPINとして生体マスタ14の対象マスタレコードに記憶する(S109)。
続いて、ローカル生体認証部122は、暗号トークン13に1つのトークンのレコードを新たに獲得して、当該レコード(以下、「対象トークン」という。)に、ステップS109において生成されたPINを設定する(S110)。
図10は、暗号トークンが管理する記憶領域の構成例を示す図である。暗号トークン13は、トークンという名の1つ以上の管理領域を有する。1トークンには1つのペアの公開鍵と秘密鍵を格納可能であり、PINというパスワードで保護される。
なお、ローカル生体認証部122は、対象トークンの識別子であるトークンIDを、暗号トークン情報のIDとして生体マスタ14の対象マスタレコードに記憶する。
続いて、ローカル生体認証部122は、対象トークン内で、公開鍵と秘密鍵とのペア生成し、当該公開鍵、生体マスタID、及び生体認証情報を連携認証制御部121に出力する(S111)。なお、対象トークン内において、公開鍵及び秘密鍵が生成された時点で、当該公開鍵及び秘密鍵が対象トークンに保存される。また、連携認証制御部121に出力される生体マスタID及び生体認証情報は、生体マスタ14の対象マスタレコードに記憶された生体マスタID及び生体認証情報である。
続いて、連携認証制御部121は、画面530に対して利用者によって入力されたニックネームと、ローカル生体認証部122から出力された生体マスタID及び生体認証情報とを、生体認証情報テーブル15に記憶する(S112)。
図11は、生体認証情報テーブルの構成例を示す図である。図11において、生体認証情報テーブル15は、生体情報証明書ごとにレコードを記憶する。各レコードは、ニックネーム、生体マスタID、生体認証情報、利用者ID、及び生体情報証明書等の項目を有する。
ニックネームは、上述したように、利用者によって生体情報証明書に対して付与される識別情報である。生体マスタIDは、当該レコードの生体情報証明書に対応する生体マスタ14のレコードの生体マスタIDである。生体マスタIDによって、生体認証情報テーブル15に記憶される生体認証情報や生体情報証明書等は、生体マスタ14に記憶される生体パターンや暗号トークン情報(すなわち、秘密鍵等)に関連付けられる。生体認証情報は、当該レコードの生体情報証明書に対応する生体認証情報である。利用者IDは、当該レコードの生体情報証明書に対応する利用者IDである。生体情報証明書は、生体情報証明書のバイナリデータである。
ステップS112では、生体認証情報テーブル15に新たなレコードが生成され、当該レコード(以下、「対象テーブルレコード」という。)に対して、ニックネーム、生体マスタID、及び生体認証情報が記憶される。
続いて、連携認証制御部121は、以下の(1)〜(3)を満たすような生体情報証明書の発行申請書(PKCS#10)を生成する(S113)。
(1)ローカル生体認証部122から受け取った公開鍵が設定されている。
(2)生体認証情報が、所有者別名(subjectAltName)にotherNameとして設定されている。
(3)利用者によってメールアドレスが入力された場合には、当該メールアドレスが生体情報証明書の所有者別名(subjectAltName)にRFC822Nameとして設定されている。
続いて、連携認証制御部121は、生体認証情報を含むテキストデータのハッシュ値を生成して、個人番号カードにアクセスして、署名用証明書の秘密鍵での当該ハッシュ値の暗号化処理を個人番号カードに実行させる(S114)。その結果、生体認証情報に対する電子署名が生成される。なお、画面530にメールアドレスが入力された場合には、当該テキストデータには、当該メールアドレスが含まれてもよい。この場合、当該電子署名は、生体認証情報とメールアドレスとの組み合わせに対する電子署名となる。
続いて、連携認証制御部121は、生体情報証明書の発行申請書(PKCS#10)と、生体認証情報と、生体認証情報に対する電子署名と、署名用証明書とを、生体認証連携サーバ20の生体情報登録部21に送信して、生体情報証明書の発行を生体情報登録部21に要求する(S115)。なお、電子署名の元となるテキストデータにメールアドレスが含まれている場合には、メールアドレスも生体情報登録部21に送信される。
続いて、生体情報登録部21は、連携認証制御部121からの生体情報証明書の発行要求を受信する(図6:S116)。当該発行要求の受信に伴って、発行申請書、生体認証情報、電子署名、及び署名用証明書等も受信される。続いて、生体情報登録部21は、生体認証情報について、改ざんされていなこと、及び生体登録日時が現時点から一定時間内であることを検証する(S117)。なお、改ざんされていないことは、電子署名及び署名用証明書に基づいて確認可能である。改ざんされている場合、又は生体登録日時が現時点から一定時間を超えて前である場合、生体情報登録部21は、エラーを返信する。
生体認証情報が改ざんされておらず、かつ、生体登録日時が現時点から一定時間内である場合、生体情報登録部21は、署名用証明書に関して有効性の検証を実行する(S118)。当該検証は、以下の(1)〜(4)の全てが満たされた場合に成功する。検証の成功とは、有効性が有ることが確認されたことをいう。
(1)署名用証明書の有効期間が満了していないこと。
(2)J−PKI認証局証明書の有効期間が満了していないこと。
(3)署名用証明書の署名がJ−PKI認証局証明書の署名であること。
(4)署名用証明書が失効されていないこと。署名用証明書の失効は、J−PKI認証局の失効リストに署名用証明書のシリアル番号が掲載されていないか、公的個人認証サービス70でのOCSP(Online Certificate Status Protocol)レスポンスで失効されていないかに基づいて確認可能である。
検証に失敗した場合、生体情報登録部21は、エラーを返信する。検証に成功した場合、生体情報登録部21は、署名用証明書のシリアル番号を取り出し、当該シリアル番号(以下、「対象シリアル番号」という。)を含む署名用証明書情報を、認証DB28から検索する(S119)。
図12は、認証DBの構成例を示す図である。図12において、認証DB28は、利用者IDごとにレコードを記憶する。各レコードは、利用者ID、連絡先、生体情報証明書リスト、及び署名用証明書情報等の項目を有する。
利用者IDは、生体情報証明書が発行された利用者ごと(厳密には、署名用証明書ごと)に割り当てられる識別情報である。したがって、同一の利用者(同一の署名用証明書)に対応する生体情報証明書が複数発行された場合であっても、各生体情報証明書に対応する利用者IDは共通である。
連絡先は、利用者のメールアドレスや電話番号等である。なお、メールアドレスが連絡先に含まれている場合、当該メールアドレスは、生体情報証明書の所有者別名にも記録される。この場合、生体情報証明書をS/MIMEに利用することもできる。
生体情報証明書リストは、利用者IDに係る利用者に対して発行された全ての生体情報証明書のリストである。失効した生体情報証明書は、生体情報証明書リストから削除される。
署名用証明書情報は、最初の生体情報証明書の発行時に提示された署名用証明書に記録されていたシリアル番号、有効期限、基本4情報(氏名、住所、生年月日、性別)と、署名用証明書の失効有無とを含む情報である。すなわち、署名用証明書情報によって、各生体情報証明書は、署名用証明書に関連付けられる。失効有無は、署名用証明書が失効されているか否かを示す情報であり、「T」又は「F」の値を採りうる。「T」は、署名用証明書が失効されていることを示す。「F」は、署名用証明書が失効されていないことを示す。
なお、基本4情報の更新や有効期間満了により、同一利用者に対して署名用証明書が再発行された場合、認証DB28に記憶されている署名用証明書情報は、新しい署名用証明書情報によって更新される。
ステップS119では、対象シリアル番号に一致するシリアル番号を含む署名用証明書情報が記憶されているレコードが、認証DB28から検索される。
該当するレコードが検索されない場合(S120でNo)、生体情報登録部21は、新規な利用者IDを生成する(S121)。新規な利用者IDとは、認証DB28に既に登録されているいずれの利用者IDとも異なる利用者IDである。一方、該当するレコードが検索された場合(S120でYes)、生体情報登録部21は、当該レコードの利用者IDを取得する(S122)。以下、ステップS121において生成された利用者ID、又はステップS122において取得された利用者IDを、「対象利用者ID」という。
ステップS121又はS122に続いて、生体情報登録部21は、ステップS116において受信した発行申請書のサブジェクト名に対象利用者IDが設定され、所有者別名領域に生体認証情報が設定された証明書発行申請書を生成する(S123)。なお、ステップS116においてメールアドレスが受信された場合には、当該メールアドレスも当該証明書発行申請書に設定される。続いて、生体情報登録部21は、証明書発行申請書を発行局60に送信する(S124)。
発行局60は、証明書発行申請書を受信すると、当該証明書発行申請書に対応した生体情報証明書を生成する(S125)。
図13は、生体情報証明書のプロファイルの一例を示す図である。図13に示されるように、生体情報証明書は、一般的な公開鍵証明書と同様の構成を有する。但し、生体情報証明書のサブジェクト名には利用者IDが設定され、所有者別名の領域には、生体認証情報が設定されている。また、生体情報証明書には、対象端末に記憶されている秘密鍵と対をなす公開鍵が設定されている。
続いて、発行局60は、生成した生体情報証明書を生体情報登録部21に返信する(S126)。
生体情報登録部21は、生体情報証明書を受信すると、対象利用者ID、連絡先、生体情報証明書、及び署名用証明書情報を認証DB28に記憶する(S127)。対象利用者IDが、ステップS121において生成された場合には、認証DB28に対して新たなレコードが生成されて、当該レコードに対して対象利用者ID、連絡先、生体情報証明書、及び署名用証明書情報が記憶される。一方、対象利用者IDが、ステップS122において取得された場合には、対象利用者IDの取得元のレコードに対して、対象利用者ID、連絡先、及び生体情報証明書が記憶される。この場合、連絡先は上書きされる。一方、署名用証明書情報は、当該レコードに既に記憶されているため、改めて記憶されなくてよい。このように、同一利用者に対して複数の生体情報証明書が生成されたとしても、当該利用者に対応する利用者IDは、一つである。
続いて、生体情報登録部21は、生体情報証明書を対象端末の連携認証制御部121に返信する(S128)。対象端末の連携認証制御部121は、当該生体情報証明書を受信する(S129)。
続いて、連携認証制御部121は、生体情報証明書を解析して、生体情報証明書のサブジェクト名から利用者IDを取り出す(S130)。続いて、連携認証制御部121は、当該利用者ID及び当該生体情報証明書を、生体認証情報テーブル15の対象テーブルレコードに記憶する(S131)。続いて、連携認証制御部121は、例えば、図8の画面545を表示装置106に表示して、利用者に対して「利用者の登録」が完了したことを通知する(S132)。
図5及び図6の処理が対象端末に関して1回以上実行されることにより、対象端末には1以上の生体情報証明書が導入される。そこで、利用者は、生体情報証明書を利用して、Webサービスの提供を受けることができる。まず、Webサービスの提供を受けるために、当該Webサービスに対する加入が行われる。
図14は、Webサービスへの加入時の処理手順の一例を説明するためのフローチャートである。
ステップS201において、対象端末のWebブラウザ11は、利用者による操作指示(例えば、URL(Uniform Resource Locator)の入力等)に応じ、Webサーバ30からサービス加入画面のWebページをダウンロードする。Webブラウザ11は、当該Webページに基づいて、サービス加入画面を表示装置106に表示する。なお、Webブラウザ11とWebサーバ30との間の通信は、パブリックCA(Certificate Authority)によるWebサーバ証明書でHTTPS化されてもよい。
続いて、Webブラウザ11は、サービス加入画面を介して顧客情報の入力と、新規加入申請の指示とを利用者から受け付ける(S202)。なお、ここで、顧客情報とは、基本4情報以外の個人情報をいう。
続いて、Webブラウザ11は、生体認証クライアントアプリ12に対して、当該顧客情報への電子署名の付与を要求する(S203)。生体認証クライアントアプリ12は、当該要求に応じて、予め登録された生体認証情報に従った生体認証を行う。当該生体認証では、例えば、図15に示されるような画面が生体認証クライアントアプリ12によって表示される。
図15は、生体認証時の画面遷移の一例を示す図である。まず、画面550が表示され、生体情報証明書のニックネームの選択が、利用者に対して要求される。利用者は、画面550が有するブルダウンメニュー551を操作して、ニックネームを選択する。なお、ブルダウンメニュー551には、対象端末の生体認証情報テーブル15の全レコードのニックネームが選択肢として表示される。
ニックネームが選択されてOKボタン552が押下されると、画面560が表示される。画面560では、選択されたニックネームに対応付けられて生体認証情報テーブル15に記憶されている生体認証情報に含まれている生体認証方式及び生体部位名が表示される。したがって、利用者は、いずれの生体認証方式でいずれの部位を利用すればよいのか知ることができる。
OKボタン561が押下されて生体センサ109によって当該部位が読み取られると、生体認証が実行される。生体認証に成功すると、画面570が表示される。
当該生体認証に成功した場合、生体認証クライアントアプリ12は、当該生体認証情報に係る生体情報証明書に対応する秘密鍵を利用して、当該顧客情報に電子署名を付与する。以下、電子署名が付与された顧客情報を、「電子署名付顧客情報」という。電子署名付顧客情報には、当該生体情報証明書(以下、「対象生体情報証明書」という。)も添付される。なお、生体認証クライアントアプリ12が実行する処理の詳細については後述される。
続いて、Webブラウザ11は、電子署名付顧客情報を、Webサーバ証明書の公開鍵で暗号化してWebサーバ30にアップロードする(S204)。Webサーバ30は、受信データをWebサーバ証明書の秘密鍵で復号し、電子署名付顧客情報の有効性の検証を認証サーバ40に要求する(S205)。
認証サーバ40は、電子署名付顧客情報に関して有効性の検証を実行する(S206)。当該検証は、以下の(1)〜(5)の全てが満たされた場合に成功する。
(1)電子署名付顧客情報に添付されている対象生体情報証明書が、有効期間内であること。
(2)対象生体情報証明書には、認証サーバ40の「信頼されたルート証明機関」に登録されている発行局60の認証局証明書の電子署名が付与されていること。
(3)生体情報証明書のシリアル番号は、発行局60のCRL(Certificate Revocation List)によって失効されていないこと。なお、当該CRLは、例えば、生体認証連携サーバ20から定期的に配信され、当該生体情報証明書が紐付く署名用証明書の有効性に連動している。
(4)対象生体情報証明書に記録されている生体認証情報が、認証サーバ40のセキュリティポリシーに合致すること。セキュリティポリシーとは、例えば、認証サーバ40において有効とされている生体認証の種別である。この場合、生体認証情報に含まれている生体認証方式が、セキュリティポリシーと照合されて、(4)の判定が行われる。
(5)顧客情報が改ざんされていないこと。顧客情報の改ざんの有無は、電子署名付顧客情報に付与されている電子署名と対象生体情報証明書とを用いて判定可能である。
有効性検証に失敗した場合(S207でNo)、認証サーバ40は、Webサーバ30経由で、Webサービスへの加入が不可能であることをWebブラウザ11に通知する(S208)。
一方、有効性検証に成功した場合(S207でYes)、認証サーバ40は、対象生体情報証明書に記録されている利用者IDと、顧客情報とを利用者管理サーバ50に通知し、顧客登録を要求する(S209)。
当該要求に応じ、利用者管理サーバ50は、顧客登録の可否判定を行う(S210)。当該可否判定では、以下の(1)〜(3)の全てが満たされた場合に顧客登録が可能であると判定される。
(1)利用者IDが顧客DB51内の既存の顧客情報に使用されていないこと。
(2)生体認証連携サーバ20から利用者IDに対応する基本4情報を取得できること。すなわち、利用者管理サーバ50は、生体認証連携サーバ20に対して利用者IDと共に基本4情報の照会要求を送信し、当該基本4情報の取得の可否を確認する。なお、当該照会要求に応じて生体認証連携サーバ20が実行する処理手順については後述される。
(3)生体認証連携サーバ20の認証DB28において利用者IDに対応するレコードの「失効有無」の値が「T」でないこと。すなわち、利用者IDに係る署名用証明書が失効されていないことである。なお、当該署名用証明書の失効の有無は、公的個人認証サービス70のCRLに基づいて判定されてもよい。
顧客情報を登録できない場合(S211でNo)、利用者管理サーバ50は、認証サーバ40及びWebサーバ30経由で、Webサービスへの加入が不可能であることをWebブラウザ11に通知する(S212)。
一方、顧客情報を登録可能である場合(S211でYes)、利用者管理サーバ50は、当該顧客情報に対して新規の顧客IDを発行し、当該顧客ID、利用者ID、及び顧客情報を対応付けて顧客DB51に登録する(S213)。なお、顧客IDは、Webサービスにおいて各利用者(各顧客)を識別するための識別子である。例えば、当該Webサービスが、オンラインの銀行取引であれば、当該顧客IDは、口座番号でもよい。続いて、利用者管理サーバ50は、顧客IDと共に「顧客登録の完了」を認証サーバ40に通知する(S214)。続いて、認証サーバ40は、Webサーバ30経由で、顧客ID及び「サービス加入の完了」をWebブラウザ11に通知する(S215)。
Webサービスへの加入が完了すると、利用者は、当該Webサービスを利用することが可能となる。
図16は、Webサービスの利用時の処理手順の一例を説明するためのフローチャートである。
ステップS231において、対象端末のWebブラウザ11は、利用者による操作指示(例えば、URLの入力等)に応じ、Webサーバ30のサービス利用画面へアクセスして、当該サービス利用画面に対するログイン画面のWebページをダウンロードする。Webブラウザ11は、当該Webページに基づいて、ログイン画面を表示装置106に表示する。なお、Webブラウザ11とWebサーバ30との間の通信は、パブリックCAによるWebサーバ証明書でHTTPS化されてもよい。
続いて、Webブラウザ11は、ログイン画面を介して、生体情報証明書によるPKI認証やTLSクライアント認証の実行指示を利用者から受け付ける(S232)。すなわち、ログイン画面には、当該実行指示を受け付けるための操作部品が配置されている。
続いて、Webブラウザ11は、Webサーバ30との間でPKI認証やTLSクライアント認証のための通信を行う(S233)。当該通信の過程において、Webブラウザ11は、生体認証クライアントアプリ12に対して、Webサーバ30とのTLS通信に必要な共通鍵の暗号化処理やPKI認証に必要な暗号化処理を要求する。この場合、当該共通鍵等が生体認証クライアントアプリ12に入力される。生体認証クライアントアプリ12は、当該要求に応じて、予め登録された生体認証情報に従った生体認証を行う。当該生体認証に成功した場合、生体認証クライアントアプリ12は、当該生体認証情報に係る生体情報証明書(以下、「対象生体情報証明書」という。)に対応する秘密鍵を利用して、要求された暗号化処理を行う。なお、生体認証クライアントアプリ12が実行する処理の詳細については後述される。
続いて、Webサーバ30は、対象生体情報証明書の有効性検証を認証サーバ40に要求する(S234)。なお、Webサーバ30は、ステップS232における通信の過程において、対象生体情報証明書をクライアント証明書としてWebブラウザ11から受信している。
続いて、認証サーバ40は、対象生体情報証明書の有効性の検証を実行する(S235)。当該検証は、以下の(1)〜(4)の全てが満たされた場合に成功する。検証の成功とは、有効性が有ることが確認されたことをいう。
(1)対象生体情報証明書が、有効期間内であること。
(2)対象生体情報証明書には、認証サーバ40の「信頼されたルート証明機関」に登録されている発行局60の認証局証明書の電子署名が付与されていること。
(3)対象生体情報証明書に掲載された生体認証情報が、認証サーバ40のセキュリティポリシーに合致すること。
(4)生体情報証明書のシリアル番号は、発行局60のCRLによって失効されていないこと。
有効性検証に失敗した場合(S236でNo)、認証サーバ40は、Webサーバ30経由で、利用者の認証が失敗であることをWebブラウザ11に通知する(S237)。
一方、有効性検証に成功した場合(S236でYes)、認証サーバ40は、対象生体情報証明書に記録されている利用者IDと共に、利用者の加入確認の要求を利用者管理サーバ50に送信する(S238)。
当該要求に応じ、利用者管理サーバ50は、利用者の加入確認を行う(S239)。具体的には、通知された利用者IDに対応付けられている顧客情報が顧客DB51に記憶されているか否かが判定される。また、当該利用者IDに対して生体認証連携サーバ20の認証DB28に記憶されている署名用証明書情報の失効有無フラグが「F」であるか否かが判定される。該当する顧客情報が顧客DB51に有り、かつ、失効有無フラグが「F」であれば、利用者は加入済みであると判定される。それ以外の場合、利用者は未加入であると判定される。
利用者が未加入である場合(S240でNo)、利用者管理サーバ50は、認証サーバ40及びWebサーバ30経由で、利用者の認証が失敗であることをWebブラウザ11に通知する(S241)。
一方、利用者が加入済みである場合(S240でYes)、利用者管理サーバ50は、利用者IDに対応付けられて顧客DB51に記憶されている顧客IDと共に「認証可能」を認証サーバ40に通知する(S242)。続いて、認証サーバ40は、当該顧客IDと共に「サービス提供可能」をWebサーバ30に通知する(S243)。Webサーバ30は、当該顧客IDに基づくサービスの提供をWebブラウザ11に対して開始する(S244)。
続いて、利用者がWebサービスを解約する際に実行される処理手順について説明する。図17は、Webサービスの解約時の処理手順の一例を説明するためのフローチャートである。
ステップS251において、対象端末のWebブラウザ11は、利用者による操作指示(例えば、URLの入力等)に応じ、Webサーバ30からサービス解約画面のWebページをダウンロードする。Webブラウザ11は、当該Webページに基づいて、サービス解約画面を表示装置106に表示する。なお、Webブラウザ11とWebサーバ30との間の通信は、パブリックCAによるWebサーバ証明書でHTTPS化されてもよい。
続いて、Webブラウザ11は、サービス解約画面を介して、生体情報証明書によるPKI認証やTLSクライアント認証の実行指示を利用者から受け付ける(S252)。すなわち、サービス解約画面には、当該実行指示を受け付けるための操作部品が配置されている。
続くステップS253〜S255では、図16のステップS233〜S235と同じ処理が実行される。
ステップS255における有効性検証に失敗した場合(S256でNo)、認証サーバ40は、Webサーバ30経由で、解約が不可能であることをWebブラウザ11に通知する(S257)。
一方、有効性検証に成功した場合(S256でYes)、認証サーバ40は、対象生体情報証明書に記録されている利用者IDと共に、利用者の解約要求を利用者管理サーバ50に送信する(S258)。
当該要求に応じ、利用者管理サーバ50は、図16のステップS239と同様に、利用者の加入確認を行う(S259)。利用者が未加入である場合(S260でNo)、利用者管理サーバ50は、認証サーバ40及びWebサーバ30経由で、利用者の解約が不可能であることをWebブラウザ11に通知する(S261)。
一方、利用者が加入済みである場合(S260でYes)、利用者管理サーバ50は、利用者IDに対応付けられている顧客ID及び顧客情報を顧客DB51から削除する(S262)。続いて、利用者管理サーバ50は、認証サーバ40経由で当該顧客IDと共に「サービス解約」をWebサーバ30に通知する。続いて、Webサーバ30は、当該顧客IDでのサービスの解約をWebブラウザ11に対して通知する(S264)。
続いて、利用者の基本4情報が変更された際に実行される処理手順について説明する。この場合、利用者の個人番号カードの署名用証明書が更新されるため、当該署名用証明書の情報の更新を、認証DB28に登録し直す必要が有る。
図18及び図19は、基本4情報の変更に伴う署名用証明書の再登録処理の処理手順の一例を説明するためのフローチャートである。
ステップS271において、対象端末のWebブラウザ11は、利用者による操作指示に応じ、生体認証連携サーバ20の生体情報登録部21にアクセスする。その結果、対象端末の表示装置106には、生体情報登録部21のポータル画面が表示される。
図20及び図21は、署名用証明書の再登録時の画面遷移の一例を示す図である。ステップS271では、例えば、図20の画面610が表示される。画面610は、「利用者情報の更新」又は「利用者削除」の実行指示を受け付けるためのラジオボタンを含む。
なお、Webブラウザ11と生体情報登録部21との間の通信は、パブリックCAによるWebサーバ証明書でHTTPS化されてもよい。
画面610において、「利用者情報の更新」が選択されて、OKボタン611が押下されると、Webブラウザ11は、利用者情報の更新の実行要求を生体情報登録部21に送信する(S272)。生体情報登録部21は、当該要求に応じ、個人番号カードのICカードリーダ110への挿入又はNFC接続と、個人番号カードの利用者証明用証明書領域に対するPIN入力を要求するための応答を返信する(S273)。例えば、当該応答には、図20の画面620の表示データが含まれている。すなわち、Webブラウザ11によって、画面620が表示される。
続いて、利用者によって個人番号カードがICカードリーダ110へ挿入又はNFC接続される。また、連携認証制御部121は、画面620のPIN入力領域621を介して、PINの入力を利用者から受け付ける(S274)。
続いて、連携認証制御部121は、入力されたPINを使用して、利用者証明用証明書領域に対して、個人番号カードに格納されている電子証明書アプリケーション(JPKI−AP)よるPIN認証を受ける(S275)。PIN認証に失敗すると、以降の処理は中止される。PIN認証に成功すると、連携認証制御部121は、アクセス可能となった利用者証明用証明書と当該利用者証明用証明書に対応する秘密鍵とを使って、生体情報登録部21を介して、生体認証連携サーバ20の基本情報更新部22にPKI認証を要求する(S276)。当該要求において、利用者証明用証明書が基本情報更新部22に送信される。
基本情報更新部22は、当該要求に応じ、利用者証明用証明書の有効性の検証を有効性検証部25に実行させる(S277)。当該検証は、以下の(1)〜(4)の全てが満たされた場合に成功する。
(1)利用者証明用証明書の有効期間が満了していないこと。
(2)利用者証明用証明書には、有効性検証部25の「信頼されたルート証明機関」に登録されているJ−PKI認証局証明書の電子署名が付与されていること。
(3)利用者証明用証明書のシリアル番号が失効されていないこと。当該失効の有無は、公的個人認証サービス70に問い合わせることで確認可能である。
(4)利用者証明用証明書のシリアル番号に対応する全ての署名用証明書のシリアル番号を公的個人認証サービス70から取得できること。
検証に失敗した場合(S278でNo)、基本情報更新部22は、生体情報登録部21を介して、「認証不可」をWebブラウザ11に送信する(S281)。検証に成功した場合(S278でYes)、基本情報更新部22は、ステップS277において(4)の確認のために取得されたいずれかの署名用証明書のシリアル番号を含むレコードが、認証DB28に記憶されているか否かを利用者ID管理部26に確認する(S279)。
該当するレコードが無い場合(S280でNo)、基本情報更新部22は、生体情報登録部21を介して、利用者に対して、「認証不可」をWebブラウザ11に送信する(S281)。
一方、該当するレコードが有る場合(S280でYes)、基本情報更新部22は、生体情報登録部21を介して、個人番号カードの署名用証明書領域に対するPIN入力の要求を含む応答を、Webブラウザ11に返信する(S282)。その結果、対象端末のWebブラウザ11によって、例えば、図20の画面630が表示される。
画面630のPIN入力領域631に対して署名用証明書領域に対するPINが入力され、OKボタン632が押下されると、連携認証制御部121は、入力されたPINを使用して、署名用証明書領域に対して、個人番号カードに格納されている電子証明書アプリケーション(JPKI−AP)よるPIN認証を受ける(S283)。PIN認証に失敗した場合、以降の処理は中止される。PIN認証に成功すると、連携認証制御部121は、アクセス可能となった署名用証明書を、生体情報登録部21を介して基本情報更新部22に送信する(S284)。
基本情報更新部22は有効性検証部25に、署名用証明書について有効性の検証を実行させる(S285)。当該検証は、以下の(1)〜(3)の全てが満たされた場合に成功する。
(1)署名用証明書の有効期間が満了していないこと。
(2)署名用証明書には、有効性検証部25の「信頼されたルート証明機関」に登録されているJ−PKI認証局証明書の電子署名が付与されていること。
(3)署名用証明書のシリアル番号が失効されていないこと。当該失効の有無は、公的個人認証サービス70に問い合わせることで確認可能である。
有効性の検証に失敗した場合(図19:S286でNo)、基本情報更新部22は、生体情報登録部21を介して、「認証不可」をWebブラウザ11に送信する(S287)。
一方、有効性の検証に成功した場合(S286でYes)、基本情報更新部22は、署名用証明書から基本4情報(住所、氏名、性別、生年月日)を取り出す(S288)。続いて、基本情報更新部22は、生体情報登録部21を介して、連絡先(メールアドレス、電話番号等)の入力を要求する応答をWebブラウザ11に返信する(S289)。その結果、例えば、図21の画面640がWebブラウザ11によって表示装置106に表示される。利用者は、画面640を参照して基本4情報を確認すると共に、連絡先(メールアドレス、電話番号等)を画面640に入力する。
続いて、Webブラウザ11は、入力された連絡先を基本情報更新部22に送信する(S290)。基本情報更新部22は、当該連絡先を受信すると、図18のステップS279において特定されたレコードの利用者IDと、ステップS288において取得された基本4情報と、当該連絡先とを利用者ID管理部26に通知する(S291)。
利用者ID管理部26は、認証DB28において当該利用者IDを含むレコードの基本4情報及び連絡先を、通知された基本4情報及び連絡先によって更新する(S292)。
続いて、基本情報更新部22は、生体情報登録部21を介して、「利用者情報の更新完了」をWebブラウザ11に送信する(S293)。その結果、例えば、図21の画面650がWebブラウザ11によって表示される。
なお、図18及び図19の処理手順は、生体情報証明書の発行申請に利用された利用者端末10とは別の利用者端末10を利用して行われてもよい。
続いて、生体情報証明書を失効させる際の処理手順について説明する。図22は、生体情報証明書の失効時の処理手順の一例を説明するためのフローチャートである。利用者は、自らの任意で生体情報証明書を失効させることができる。なお、図22に関して利用される利用者端末10は、生体情報証明書の発行時に利用された利用者端末10と異なっていてもよい。
ステップS301において、対象端末のWebブラウザ11は、利用者による操作指示に応じ、生体認証連携サーバ20の生体情報登録部21にアクセスする。その結果、対象端末の表示装置106には、例えば、図20に示した画面610が表示される。
画面610において、「利用者削除」が選択されて、OKボタン611が押下されることで生体情報証明書の失効指示が入力されると、Webブラウザ11は、利用者の削除要求を生体情報登録部21に送信する(S302)。生体情報登録部21は、当該要求に応じ、個人番号カードのICカードリーダ110への挿入又はNFC接続と、個人番号カードの利用者証明用証明書領域に対するPIN入力を要求するための応答を返信する(S303)。例えば、当該応答には、個人番号カードのICカードリーダ110への挿入又はNFC接続と、個人番号カードの利用者証明用証明書領域に対するPIN入力を利用者に要求するための画面の表示データが含まれている。
図23は、生体情報証明書の失効時の画面遷移の一例を示す図である。ステップS303では、図23の画面710が、Webブラウザ11によって表示装置106に表示される。画面710は、利用者証明用証明書領域に対するPINの入力を受け付けるためのPIN入力領域711を含む。
続いて、利用者によって個人番号カードがICカードリーダ110へ挿入又はNFC接続される。また、連携認証制御部121は、画面710のPIN入力領域711を介して、PINの入力を利用者から受け付ける(S304)。
続いて、連携認証制御部121は、入力されたPINを使用して、利用者証明用証明書領域に対して、個人番号カードに格納されている電子証明書アプリケーション(JPKI−AP)よるPIN認証を受ける(S305)。PIN認証に失敗すると、以降の処理は中止される。PIN認証に成功すると、連携認証制御部121は、アクセス可能となった利用者証明用証明書と当該利用者証明用証明書に対応する秘密鍵とを使って、生体情報登録部21を介して、生体認証連携サーバ20の失効審査部24にPKI認証を要求する(S306)。
失効審査部24は、当該要求に応じ、利用者証明用証明書の有効性の検証を有効性検証部25に実行させる(S307)。当該検証は、図18のステップS277において示した(1)〜(4)の全てが満たされた場合に成功する。
検証に失敗した場合(S308でNo)、失効審査部24は、生体情報登録部21を介して、「認証不可」をWebブラウザ11に送信する(S309)。検証に成功した場合(S308でYes)、失効審査部24は、ステップS307において(4)の確認のために取得されたいずれかの署名用証明書のシリアル番号を含むレコードが、認証DB28に記憶されているか否かを確認する(S310)。
該当するレコード(以下、「対象DBレコード」という。)が無い場合(S311でNo)、失効審査部24は、生体情報登録部21を介して、「未登録」をWebブラウザ11に送信する(S312)。対象DBレコードが有る場合(S311でYes)、失効審査部24は、変数flagに1を代入する(S313)。変数flagは、後述のループ処理において、ループの継続の要否の判定のために利用される変数である。続いて、失効審査部24は、対象DBレコードに記憶されている生体情報証明書の一覧を取得する(S314)。
1以上の生体情報証明書を取得できた場合(S315でYes)、失効審査部24は、変数flagの値が1であるか否かを判定する(S316)。変数flagの値が1でなければ(S316でNo)、図22の処理は終了する。変数flagの値が1であれば(S316でYes)、失効審査部24は、取得された生体情報証明書の一覧を生体情報登録部21介してWebブラウザ11に送示する(S317)。その結果、図23の画面720がWebブラウザ11によって表示される。画面720には、取得された生体情報証明書が2つである例が示されている。
画面720においてキャンセルボタン722が選択されると(S318でNo)、図22の処理は終了する。一方、画面720において、いずれかの生体情報証明書が選択され、選択された生体情報証明書を示す情報がWebブラウザ11から送信されると(S318でYes)、失効審査部24は、選択された生体情報証明書の失効申請を発行局60に対して行う(S319)。続いて、失効審査部24は、当該生体情報証明書を対象DBレコードから削除する(S320)。続いて、失効審査部24は、当該生体情報証明書が失効されたことを示す情報を、生体情報登録部21を介してWebブラウザ11に送信する(S321)。その結果、図23の画面730が、Webブラウザ11によって表示される。利用者は、他の生体情報証明書の失効を継続したい場合は、OKボタン731を押下し、そうでない場合は、キャンセルボタン732を押下する。Webブラウザ11は、押下されたボタンを示す情報を、生体認証連携サーバ20に送信する。
キャンセルボタン732が押下された場合(S322でYes)、失効審査部24は、変数flagに0を代入して、ステップS314以降を繰り返す。この場合、対象DBレコードから生体情報証明書が取得されたとしても(S315でYes)、変数flagの値が1でないので(S316でNo)、図22の処理は終了する。
一方、OKボタン731が押下された場合(S322でNo)、変数flagの値は変更されずに、ステップS314以降が繰り返される。
ステップS314において、生体情報証明書が1つも取得されなかった場合、すなわち、対象DBレコードにおける全ての生体情報証明書が削除されてしまった場合(S315でNo)、失効審査部24は、対象DBレコードの利用者IDの削除の問い合わせを示す情報を、生体情報登録部21を介してWebブラウザ11に送信する(S324)。その結果、図23の画面740がWebブラウザ11によって表示される。利用者は、利用者IDの削除を希望する場合にはOKボタン741を押下し、そうでない場合には、キャンセルボタン742を押下する。Webブラウザ11は、押下されたボタンを示す情報を、生体認証連携サーバ20に送信する。
キャンセルボタン742が押下された場合(S325でNo)、図22の処理は終了する。OKボタン741が押下された場合(S325でYes)、失効審査部24は、対象DBレコードを認証DB28から削除する(S326)。続いて、失効審査部24は、利用者IDが削除されたことを示す情報を、生体情報登録部21を介してWebブラウザ11に送信する(S327)。その結果、図23の画面750がWebブラウザ11によって表示される。
利用者は、対象端末の生体マスタ14に登録されている情報及び生体認証情報テーブル15に登録されている情報(以下、「生体ローカル情報」という。)を削除することができる。図24は、生体ローカル情報の削除処理の処理手順の一例を説明するためのフローチャートである。
ステップS401において、対象端末の連携認証制御部121は、図7に示した画面510を表示し、画面510を介して「生体ローカル情報の削除」の実行指示を受け付ける。続いて、生体認証クライアントアプリ12は、対象端末における生体ローカル情報の削除処理を実行する。当該削除処理では、例えば、生体認証クライアントアプリ12によって、図25に示されるような画面が表示される。
図25は、生体ローカル情報の削除時の画面遷移の一例を示す図である。まず、画面810が表示され、生体情報証明書のニックネームの選択が利用者に対して要求される。用者は、画面810が有するブルダウンメニュー811を操作して、削除対象とする生体ローカル情報のニックネームを選択する。なお、ブルダウンメニュー811には、対象端末の生体認証情報テーブル15の全レコードのニックネームが選択肢として表示される。
ニックネームが選択されてOKボタン812が押下されると、画面820が表示される。画面820では、選択されたニックネームに対応付けられて生体認証情報テーブル15に記憶されている生体認証情報に含まれている生体認証方式及び生体部位名が表示される。
OKボタン821が押下されて生体センサ109によって当該部位が読み取られると、生体認証が実行される。当該生体認証に成功した場合、生体認証クライアントアプリ12は、当該ニックネームに対応付けられて生体認証情報テーブル15に記憶されている生体マスタIDに係るレコードを、生体マスタ14から削除する。なお、生体認証クライアントアプリ12が実行する処理の詳細については、後述される。
生体認証に成功して、生体マスタ14のレコードが削除されると(S401でYes)、連携認証制御部121は、選択されたニックネームを含むレコードを、生体認証情報テーブル15から削除する(S404)。続いて、連携認証制御部121は、選択されたニックネームに対応する生体ローカル情報が削除されたことを利用者に通知する(S405)。例えば、図25の画面830が表示装置106に表示される。
一方、生体認証に失敗した場合(S401でNo)、連携認証制御部121は、生体認証の失敗を利用者に通知する(S406)。この場合、生体ローカル情報の削除は行われない。
続いて、図14のステップS203、図16のステップS233、図17のステップS253、又は図24のステップS402において生体認証クライアントアプリ12が実行する処理の詳細について説明する。
図26は、生体認証、電子署名付与、暗号化、又は生体マスタの削除に関する処理手順の一例を説明するためのフローチャートである。
ステップS501において、連携認証制御部121は、対象端末の生体認証情報テーブル15に記憶されているニックネームの一覧の中から、対象とするニックネームの選択を利用者に実行させる。例えば、図26の処理手順が、図14のステップS203、図16のステップS233、又は図17のステップS253において呼び出される場合には、図15の画面550が表示される。図26の処理手順が、図24のステップS402において呼び出される場合には、図25の画面810が表示される。
続いて、連携認証制御部121は、以下のデータをローカル生体認証部122に入力して、当該データに対応する処理を要求する(S502)。
(1)処理方式(生体情報証明書の秘密鍵による電子署名の付与、暗号化、又は生体マスタ14の削除)
(2)処理対象(顧客情報又は共通鍵等)
(3)選択されたニックネームに対応付けられて生体認証情報テーブル15に記憶されている生体マスタID(以下、「対象生体マスタID」という。)
(4)選択されたニックネームに対応付けられて生体認証情報テーブル15に記憶されている生体認証情報(端末名、生体認証方式・生体部位名・生体登録日時)
続いて、ローカル生体認証部122は、入力された生体認証情報が、対象生体マスタIDに対応付けられて生体マスタ14に記憶されている生体認証情報に一致するか否かを判定する(S503)。
比較された2つの生体認証情報が一致する場合(S503でYes)、ローカル生体認証部122は、当該生体認証情報の「生体認証方式」及び「生体部位名」を利用者に提示する(S504)。例えば、図26の処理手順が、図14のステップS203、図16のステップS233、又は図17のステップS253において呼び出される場合には、図15の画面560が表示される。図26の処理手順が、図24のステップS402において呼び出される場合には、図25の画面820が表示される。
続いて、ローカル生体認証部122は、「生体認証方式」に対応する生体センサ109から利用者の生体パターンを読み込む(S505)。続いて、ローカル生体認証部122は、読み込んだ生体パターンが、対象生体マスタIDに対応付けられて生体マスタ14に記憶されている生体パターンに一致するか否かを判定する(S506)。すなわち、生体認証が実行される。
比較された2つの生体パターンが一致する場合(S506でYes)、対象生体マスタIDに対応付けられて生体マスタ14に記憶されている暗号トークン13のID及び暗号トークン13のPINを生体マスタ14から読み出して、暗号トークン13に対して、当該ID及び当該PINを入力して、入力された「処理データ」に対して指定された「処理方式」を実行するよう要求する(S507)。なお、図26の処理手順が、図14のステップS203において呼び出される場合、「処理データ」は顧客情報であり、「処理方式」は、電子署名の付与である。図26の処理手順が、図16のステップS233又は図17のステップS253において呼び出される場合、「処理データ」は共通鍵等であり、「処理方式」は、暗号化である。図26の処理手順が、図24のステップS402において呼び出される場合、「処理データ」は無く、「処理方式」は、削除である。
「処理方式」が削除である場合(S508でYes)、暗号トークン13は、入力されたIDに対応するトークンを削除する(S509)。この際、暗号トークン13は、入力されたPINによって当該トークンにアクセスする。続いて、ローカル生体認証部122は、対象生体マスタIDに対応するレコードを生体マスタ14から削除する(S510)。続いて、ローカル生体認証部122は、連携認証制御部121に対して「削除成功」を返却する(S511)。
一方、「処理方式」が削除以外である場合(S508でNo)、暗号トークン13は、入力されたIDに対応するトークンに格納されている秘密鍵を使用して、入力された「処理データ」に対して要求された「処理方式」を実行する(S512)。この際、暗号トークン13は、入力されたPINを利用して、当該秘密鍵にアクセスする。「処理データ」に対して要求された「処理方式」が実行されることにより、「処理データ」の暗号化データ(例えば、暗号化された共通鍵)、又は「処理データ」に対する電子署名(例えば、署名付顧客情報)が生成される。続いて、ローカル生体認証部122は、生成されたデータを呼び出し元に返却する(S513)。なお、ステップS513に続いて、連携認証制御部121は、ローカル生体認証部122から返却されたデータを、図26の処理手順の呼び出し元(Webブラウザ11)に返却する。
一方、ステップS503において比較された2つの生体認証情報が一致しない場合(S503でNo)、又はステップS506において比較された2つの生体パターンが一致しない場合(S506でNo)、ローカル生体認証部122は、連携認証制御部121に対して「生体認証失敗」を返却する(S514)。この場合、連携認証制御部121は、生体認証の失敗をWebブラウザ11に返却する。
続いて、図14のステップS210において、利用者管理サーバ50からの基本4情報の照会要求に応じて生体認証連携サーバ20が実行する処理手順について説明する。図27は、基本4情報の照会要求に応じて生体認証連携サーバが実行する処理手順の一例を説明するためのフローチャートである。
ステップS601において、生体認証連携サーバ20の照会応答部23は、基本4情報の照会要求を利用者管理サーバ50から受信する。当該照会要求には、利用者ID(以下、「対象利用者ID」という。)が指定されている。
続いて、照会応答部23は、対象利用者IDに対応付けられている署名用証明書(以下、「対象署名用証明書」という。)のシリアル番号と有効期限とを認証DB28から取得する(S602)。
続いて、照会応答部23は、現時点が当該有効期限内であり、かつ、対象署名用証明書が公的個人認証サービス70において失効されていないか否かを判定する(S603)。なお、失効の有無は、公的個人認証サービス70に照会することで確認可能である。現時点が当該有効期限内であり、かつ、失効されていない場合(S603でYes)、照会応答部23は、対象利用者IDに対応付けられて認証DB28に記憶されている基本4情報を、利用者管理サーバ50に対して返信する(S604)。
一方、現時点が有効期限外である場合、又は失効されている場合(S603でNo)、照会応答部23は、認証DB28において対象利用者IDが記憶されているレコードの「失効有無」の値を「T」にする(S605)。すなわち、対象署名用証明書が失効していることが認証DB28に記憶される。続いて、照会応答部23は、対象利用者IDに対応付けられて記憶されている生体情報証明書を認証DB28から1つ取り出し、当該生体情報証明書の失効申請を発行局60に対して送信する(S606)。
発行局60による当該生体情報証明書の失効が成功した場合(S607でYes)、照会応答部23は、当該生体情報証明書を認証DB28から削除する(S608)。
ステップS606以降が、対象利用者IDに対応付けられて認証DB28に記憶されている全ての生体情報証明書について実行されると(S609でYes)、照会応答部23は、エラーを示す応答を利用者管理サーバ50に返信する(S610)。
生体情報証明書の有効性は、基本4情報の照会時のみならず、定期的にも確認される。図28は、定期的に実行される生体情報証明書の有効性の確認処理の処理手順の一例を説明するためのフローチャートである。
前回の図28の処理の実行時から一定時間が経過すると(S701でYes)、定期確認部27は、認証DB28に記憶されている利用者IDのうちの一つの利用者IDを処理対象として選択し、当該利用者ID(以下、「対象利用者ID」という。)に対応付けられている署名用証明書(以下、「対象署名用証明書」という。)のシリアル番号と有効期限とを認証DB28から取得する(S702)。
続いて、定期確認部27は、現時点が当該有効期限内であり、かつ、対象署名用証明書が公的個人認証サービス70において失効されていないか否かを判定する(S703)。現時点が有効期限外である場合、又は失効されている場合(S703でNo)、定期確認部27は、図27のステップS605〜S609と同様の処理を実行する(S704〜S708)。
ステップS705以降は、対象利用者IDに対応付けられて認証DB28に記憶されている全ての生体情報証明書について実行される(S708)。また、ステップS702以降は、認証DB28に記憶されている全ての利用者IDに関して実行される(S709)。
上述したように、本実施の形態によれば、利用者の個人番号カードの署名用証明書に紐付けられ(署名用証明書に基づいて正当性が保証され)、かつ、当該利用者の生体情報(生体パターン)に紐付けられた生体情報証明書が生成される。当該生体情報証明書は、利用者の生体情報が入力された場合に、例えば、クライアント証明書として利用可能となる。したがって、利用者は、生体情報証明書によって、署名用証明書によって裏付けされた身元を証明することができる。その結果、個人番号カードの利用頻度を低減可能とすることができる。
また、照合用の生体パターンは、利用者自身が所有又は管理する利用者端末10において安全に保管することができる。
また、個人番号カードの窓口交付時に本人確認(対面)が行われているため、生体情報証明書の発行時に必要となる本人確認は、個人番号カードと当該個人番号カードに対するPINの入力によって擬似的で実現することができる。
また、同一の利用者が、複数の利用者端末10のそれぞれにおいて、相互に異なる生体認証情報に係る生体情報証明書の発行を受けることで、当該利用者は、複数の利用者端末10において、複数の部位及び複数の認証方式に関連付く生体情報証明書を取得することができる。例えば、利用者は、それぞれ異なる指での指紋認証、左右の手の静脈認証、又は左右の眼の虹彩認証に関連付く生体情報証明書を取得するといったようなこともできる。また、自宅のPC(Personal Computer)では、指紋認証に関連付く生体情報証明書の発行を受け、スマートフォンでは、虹彩認証に関連付く生体情報証明書の発行を受けることといったようなこともできる。
また、利用者は、利用者端末10を交換又は紛失等したとしても、個人番号カードの利用者証明用証明書を利用して、当該利用者端末10に記憶された生体情報証明書を他の端末から失効させることができる。したがって、利用者端末10の交換又は紛失等による生体情報証明書の不正利用を回避することができる。
また、生体情報証明書は、TLS通信におけるクライアント証明書として利用できるため、本実施の形態に固有のプロトコル等の特別な作り込みを不要とすることができる。
なお、本実施の形態において、利用者端末10は、情報処理装置の一例である。生体認証連携サーバ20は、証明書生成装置の一例である。ローカル生体認証部122は、読出部、読取部、生成部、及び認証部の一例である。連携認証制御部121は、第1の送信部及び第3の送信部の一例である。暗号トークン13は、実行部の一例である。補助記憶装置102及びTPM108は、第1の記憶部の一例である。生体パターンは、第1の生体情報及び第2の生体情報の一例である。
生体情報登録部21は、生成制御部及び第2の送信部の一例である。認証DB28は、第2の記憶部の一例である。失効審査部24は、失効制御部の一例である。
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
以上の説明に関し、更に以下の項を開示する。
(付記1)
情報処理装置と証明書生成装置とを含む証明書生成システムであって、
前記情報処理装置は、
利用者の個人番号カードから署名用証明書を読み出す読出部と、
前記利用者の第1の生体情報を読み取る読取部と、
公開鍵と秘密鍵との組を生成する生成部と、
前記公開鍵と前記署名用証明書に関する情報とを前記証明書生成装置に送信する第1の送信部と、
前記公開鍵を含む公開鍵証明書が前記証明書生成装置から受信されると、前記第1の生体情報と前記秘密鍵とに関連付けて当該公開鍵証明書を記憶する第1の記憶部とを有し、
前記証明書生成装置は、
前記情報処理装置から前記公開鍵を受信すると、当該公開鍵を含む前記公開鍵証明書の生成を制御する生成制御部と、
生成された前記公開鍵証明書を前記情報処理装置に送信する第2の送信部と、
前記公開鍵証明書を前記署名用証明書に関する情報に関連付けて記憶する第2の記憶部とを有する、
ことを特徴とする証明書生成システム。
(付記2)
前記情報処理装置は、
前記読取部によって第2の生体情報が読み取られると、前記第2の生体情報と前記第1の記憶部に記憶されている前記第1の生体情報とに基づいて生体認証を実行する認証部と、
前記生体認証に成功した場合に、前記第1の記憶部に記憶されている前記秘密鍵を利用した処理を実行する実行部と、
を有することを特徴とする付記1記載の証明書生成システム。
(付記3)
前記第1の記憶部は、前記第1の生体情報の読み取りに際して前記利用者によって指定された生体認証方式及び生体部位を示す情報を、前記公開鍵証明書に関連付けて前記第1の記憶部に記憶し、
前記認証部は、前記第1の記憶部に記憶されている情報が示す生体部位に係る前記第2の生体情報が読み取られると、前記第1の記憶部に記憶されている情報が示す生体認証方式に係る生体認証を実行する、
ことを特徴とする付記2記載の証明書生成システム。
(付記4)
前記情報処理装置は、
前記公開鍵証明書の失効指示に応じ、前記読出部が前記個人番号カードから利用者証明用証明書を読み出せると、前記利用者証明用証明書に対応する署名用証明書に関する情報に関連付けられている前記公開鍵証明書の失効要求を前記証明書生成装置に送信する第3の送信部を有し、
前記証明書生成装置は、
前記失効要求に応じ、前記公開鍵証明書の失効を制御する失効制御部を有する、
ことを特徴とする付記1乃至3いずれか一項記載の証明書生成システム。
(付記5)
ネットワークを介して証明書生成装置に接続される情報処理装置であって、
利用者の個人番号カードから署名用証明書を読み出す読出部と、
前記利用者の第1の生体情報を読み取る読取部と、
公開鍵と秘密鍵との組を生成する生成部と、
前記公開鍵と前記署名用証明書に関する情報とを前記証明書生成装置に送信する第1の送信部と、
前記公開鍵を含む公開鍵証明書であって、前記証明書生成装置において前記署名用証明書に関する情報に関連付けられて記憶された前記公開鍵証明書を前記証明書生成装置から受信すると、前記第1の生体情報と前記秘密鍵とに関連付けて当該公開鍵証明書を記憶する第1の記憶部とを有する、
ことを特徴とする情報処理装置。
(付記6)
情報処理装置にネットワークを介して接続される証明書生成装置であって、
前記情報処理装置は、
利用者の個人番号カードから署名用証明書を読み出す読出部と、
前記利用者の第1の生体情報を読み取る読取部と、
公開鍵と秘密鍵との組を生成する生成部と、
前記公開鍵と前記署名用証明書に関する情報とを前記証明書生成装置に送信する第1の送信部と、
前記公開鍵を含む公開鍵証明書が前記証明書生成装置から受信されると、前記第1の生体情報と前記秘密鍵とに関連付けて当該公開鍵証明書を記憶する第1の記憶部とを有し、
前記証明書生成装置は、
前記情報処理装置から前記公開鍵を受信すると、当該公開鍵を含む前記公開鍵証明書の生成を制御する生成制御部と、
生成された前記公開鍵証明書を前記情報処理装置に送信する第2の送信部と、
前記公開鍵証明書を前記署名用証明書に関する情報に関連付けて記憶する第2の記憶部とを有する、
ことを特徴とする証明書生成装置。
(付記7)
情報処理装置と証明書生成装置とが実行する証明書生成方法であって、
前記情報処理装置が、
利用者の個人番号カードから署名用証明書を読み出す処理と、
前記利用者の第1の生体情報を読み取る処理と、
公開鍵と秘密鍵との組を生成する処理と、
前記公開鍵と前記署名用証明書に関する情報とを前記証明書生成装置に送信する処理と、
前記公開鍵を含む公開鍵証明書が前記証明書生成装置から受信されると、前記第1の生体情報と前記秘密鍵とに関連付けて当該公開鍵証明書を第1の記憶部に記憶する処理とを実行し、
前記証明書生成装置が、
前記情報処理装置から前記公開鍵を受信すると、当該公開鍵を含む前記公開鍵証明書の生成を制御する処理と、
生成された前記公開鍵証明書を前記情報処理装置に送信する処理と、
前記公開鍵証明書を前記署名用証明書に関する情報に関連付けて第2の記憶部に記憶する処理とを実行する、
ことを特徴とする証明書生成方法。
(付記8)
前記情報処理装置が、
第2の生体情報を読み取られる処理と、
前記第2の生体情報と前記第1の記憶部に記憶されている前記第1の生体情報とに基づいて生体認証を実行する処理と、
前記生体認証に成功した場合に、前記第1の記憶部に記憶されている前記秘密鍵を利用した処理を実行する処理と、
を実行することを特徴とする付記7記載の証明書生成方法。
(付記9)
前記第1の記憶部は、前記第1の生体情報の読み取りに際して前記利用者によって指定された生体認証方式及び生体部位を示す情報を、前記公開鍵証明書に関連付けて前記第1の記憶部に記憶し、
前記生体認証を実行する処理は、前記第1の記憶部に記憶されている情報が示す生体部位に係る前記第2の生体情報が読み取られると、前記第1の記憶部に記憶されている情報が示す生体認証方式に係る生体認証を実行する、
ことを特徴とする付記8記載の証明書生成方法。
(付記10)
前記情報処理装置が、
前記公開鍵証明書の失効指示に応じ、前記個人番号カードから利用者証明用証明書を読み出せると、前記利用者証明用証明書に対応する署名用証明書に関する情報に関連付けられている前記公開鍵証明書の失効要求を前記証明書生成装置に送信する処理を実行し、
前記証明書生成装置が、
前記失効要求に応じ、前記公開鍵証明書の失効を制御する、
ことを特徴とする付記7乃至9いずれか一項記載の証明書生成方法。
(付記11)
ネットワークを介して証明書生成装置に接続される情報処理装置に、
利用者の個人番号カードから署名用証明書を読み出す処理と、
前記利用者の第1の生体情報を読み取る処理と、
公開鍵と秘密鍵との組を生成する処理と、
前記公開鍵と前記署名用証明書に関する情報とを前記証明書生成装置に送信する処理と、
前記公開鍵を含む公開鍵証明書であって、前記証明書生成装置において前記署名用証明書に関する情報に関連付けられて記憶された前記公開鍵証明書を前記証明書生成装置から受信すると、前記第1の生体情報と前記秘密鍵とに関連付けて当該公開鍵証明書を第1の記憶部に記憶する処理とを実行させるプログラム。
(付記12)
情報処理装置にネットワークを介して接続される証明書生成装置であって、
前記情報処理装置は、
利用者の個人番号カードから署名用証明書を読み出す読出部と、
前記利用者の第1の生体情報を読み取る読取部と、
公開鍵と秘密鍵との組を生成する生成部と、
前記公開鍵と前記署名用証明書に関する情報とを証明書生成装置に送信する第1の送信部と、
前記公開鍵を含む公開鍵証明書が前記証明書生成装置から受信されると、前記第1の生体情報と前記秘密鍵とに関連付けて当該公開鍵証明書を記憶する第1の記憶部と、
を有する情報処理装置にネットワークを介して接続される証明書生成装置に、
前記情報処理装置から前記公開鍵を受信すると、当該公開鍵を含む前記公開鍵証明書の生成を制御する処理と、
生成された前記公開鍵証明書を前記情報処理装置に送信する処理と、
前記公開鍵証明書を前記署名用証明書に関する情報に関連付けて第2の記憶部に記憶する処理とを実行させる、
ことを特徴とするプログラム。