(58)【調査した分野】(Int.Cl.,DB名)
前記処理部は、前記第1の条件を満たす場合に前記照合失敗回数に第1の値を加算し、前記第2の条件を満たす場合に前記照合失敗回数に第2の値を加算する請求項3のICモジュール。
【発明を実施するための形態】
【0010】
以下、図面を参照して実施形態について説明する。
【0011】
図1は、実施形態に係る照合システムの一例を示す図である。
図1に示すように、照合システムは、ICカード1、ICカードと通信するICカード処理装置2、及び生体情報を読み取る生体情報読取装置3を備える。なお、ICカードは、スマートカードとも呼ばれる。
【0012】
生体情報読取装置3は、生体情報を読み取り、ICカード処理装置2へ送信する。例えば、生体情報読取装置3は、生体情報として、指紋、虹彩、血管パターン、声紋、又は署名等を読み取り、読み取った生体情報に基づく検証データをICカード処理装置2へ送信する。また、生体情報読取装置3は、検証データと共に、生体情報(検証データ)の種別(例えば右手又は左手の親指、人差し指、中指、薬指、又は小指の何れか)を示す情報を送信することができる。例えば、生体情報読取装置3は、右手親指を読取部へ押し当てる旨を案内表示し、この案内表示に対応して押し当てられた指から読み取られた情報を右手親指の検証データとして出力することができる。或いは、生体情報読取装置3は、生体情報の種別入力部(例えばタッチパネル)を備え、種別入力部を介して右手親指が指定された上で、指から読み取られた情報を右手親指の検証データとして出力することができる。
【0013】
ICカード処理装置2は、接触又は非接触でICカード1と通信する。ICカード処理装置2は、特定のプロトコルに従ってコマンドをICカード1へ送信し、ICカード1内の情報を読み出したり、書き換えたりする。例えば、ICカード処理装置2は、生体情報を基に生成された検証データ及び検証データの種別情報(識別子)を含むコマンドをICカード1へ送信する。
【0014】
ICカード1は接触式タイプ又は非接触式タイプのICカードである。接触式タイプの場合、ICカード1は、ICカード処理装置(リーダライタ)2と接触して通信し、非接触式タイプの場合、ICカード1は、ICカード処理装置2と非接触で通信する。なお、ICカード1は、接触式と非接触式の両タイプをサポートするコンビ型であってもよい。この場合、ICカード1は、接触式のICカード処理装置2に対しては接触して通信し、非接触式のICカード処理装置2に対しては非接触で通信することができる。
【0015】
ICカード1は、例えばプラスティックカード(基材)1aにより構成され、ICモジュール(ICチップ)10を備え、ICモジュール10は、プログラムメモリ(例えばROM : Read Only Memory)11、メインメモリ(例えばRAM : Random Access Memory Read Only Memory)12、不揮発性メモリ(例えばEEPROM(登録商標): Electrically Erasable and Programmable Read Only Memory)13、データ処理部(例えばCPU : Central Processing Unit)14、通信部(例えばUART : Universal Asynchronous Receiver Transmitter)15を備える。例えば、メインメモリ12は、受信用バッファ121を備える。
【0016】
メインメモリ12は、ワーキングメモリとして機能する。プログラムメモリ11は、データ処理部14により実行されるICカードプログラムを保持する。データ処理部14は、プログラムメモリ11に記憶されたICカードプログラム等に基づき動作する。また、ICカード1はUART15を介して受信したコマンドを受信用バッファ121に保持する。その後、データ処理部14は、受信用バッファ121に保持したコマンドを解釈し、コマンドに応じた処理を実施する。例えば、データ処理部14は、受信したコマンドに基づき、不揮発性メモリ13又はメインメモリ12に記憶されたデータを読み出したり、不揮発性メモリ13又はメインメモリ12に対してデータを書き込んだり、さらには、UART15を介してコマンド実行結果を返信(ICカード処理装置2へコマンド実行結果を送信)したりする。
【0017】
図2は、実施形態に係るICカード処理装置からICカードに送信されるコマンドの一例を示す図である。
図2に示すように、例えば、ICカード処理装置2からICカード1に送信されるコマンドは、ISO/IEC 7816-3に規定されているCommand Application Data Unit(C-APDU)の形式である。コマンドは、コマンドヘッダ及びコマンドボディを含む。コマンドヘッダはコマンドの種別を表すCLA(1Byte)、及びINS(1Byte)と、パラメータを表すP1(1Byte)、及びP2(1Byte)を含む。コマンドボディは、Dataの長さを表すLc(1Byte)と、Data(mByte)を含む。例えば、Dataが格納されるData部は、本人の生体情報を基に生成された検証データが格納される。
【0018】
例えば、コマンドに含まれるP1又はP2が識別子を含み、識別子は指の種類(例えば右手又は左手の親指、人差し指、中指、薬指、又は小指の何れか)を示す。例えば、識別子が右手の親指を示す場合、このコマンドに含まれるData部の検証データは右手の親指の生体情報を示すことになる。
【0019】
図3は、実施形態に係る照合管理情報の一例を示す図である。例えば、
図3に示すように、不揮発性メモリ13は、本人の生体情報を基に生成された参照データ(第1の生体情報)と、参照データごとの累計失敗回数と、参照データごとの失敗回数の上限(再試行条件)と、各参照データを識別するための識別子を保持する。例えば、識別子は指の種類(右手又は左手の親指、人差し指、中指、薬指、又は小指の何れか)を示す。例えば、識別子が右手の親指を示す場合、この識別子に対応する参照データは右手の親指の生体情報を示すことになる。
【0020】
図4は、実施形態に係るICカードによる類似度に応じた照合失敗履歴(累計失敗回数)の更新処理の一例を示す図である。ICカード1のデータ処理部14は、検証データ(第2の生体情報)と参照データ(第1の生体情報)を照合し類似度(S)を算出(検出)し、算出された類似度に応じて照合失敗履歴(例えば累計失敗回数)を更新(変更)する。
【0021】
例えば、データ処理部14は、類似度が第1の閾値(例えば90%)以上の場合に照合成功と判定し、類似度が第1の閾値未満の場合に照合失敗と判定する。さらに、データ処理部14は、類似度が第1の閾値未満の場合、つまり、照合失敗と判定した場合には、類似度に応じた重みづけにより照合失敗履歴を更新する。
【0022】
例えば、データ処理部14は、類似度が第1の閾値未満且つ第1の閾値より小さい第2の閾値(例えば70%)以上の第1の条件を満たす場合に第1の重み付けにより照合失敗履歴を更新する。例えば、データ処理部14は、累計失敗回数に+1(第1の値)を加算する。
【0023】
また、データ処理部14は、類似度が第2の閾値未満且つ第2の閾値より小さい第3の閾値(例えば30%)以上の第2の条件を満たす場合に第2の重み付けにより照合失敗履歴を更新する。例えば、データ処理部14は、累計失敗回数に+2(第2の値)を加算する。
【0024】
また、データ処理部14は、類似度が第3の閾値未満且つ第3の閾値より小さい第4の閾値(例えば0%)以上の第3の条件を満たす場合に第3の重み付けにより照合失敗履歴を更新する。例えば、データ処理部14は、累計失敗回数に+3(第2の値)を加算する。或いは、データ処理部14は、累計失敗回数に失敗回数の上限又は上限+1を加算するようにしてもよい。この場合、第3の条件を満たせば、即、累計失敗回数が上限又は上限+1に達することになる。
【0025】
なお、第1、第2、第3の値は、それぞれ、+1、+2、+3に限られるものではなく、例えば、それぞれ、+1、+3、+5でもよい。
【0026】
例えば、第1の識別子の第1の参照データに対応付けられた累計失敗回数が0回であり失敗回数の上限(再試行条件)が5回の場合を仮定する。累計失敗回数が5回以下であれば照合再試行を許容し、5回を越える場合に照合再試行を拒否する。
【0027】
ICカード1が、
図2に示すコマンド(1回目)を受信し、このコマンドに含まれるP1又はP2が第1の識別子を示す場合、データ処理部14は、このコマンド(1回目)に含まれる第1の検証データと第1の識別子に対応付けられた第1の参照データとを比較し類似度を算出する。例えば、データ処理部14は、類似度が第2の条件を満たす場合に、累計失敗回数に+2を加算し、累計失敗回数を2回に更新する。累計失敗回数が2回の場合、失敗回数の上限5回を越えず、再試行条件を満たす。従って、データ処理部14は、
図2に示すコマンドに基づく照合再試行を許容する。
【0028】
さらに、ICカード1が、
図2に示すコマンド(2回目)を受信し、このコマンドに含まれるP1又はP2が第1の識別子を示す場合、データ処理部14は、このコマンド(2回目)に含まれる第1の検証データと第1の識別子に対応付けられた第1の参照データとを比較し類似度を算出する。データ処理部14は、類似度が第2の条件を満たす場合に、累計失敗回数に+2を加算し、累計失敗回数を4回に更新する。累計失敗回数が4回の場合、失敗回数の上限5回を越えず、再試行条件を満たす。従って、データ処理部14は、
図2に示すコマンドに基づく照合再試行を許容する。
【0029】
さらに、ICカード1が、
図2に示すコマンド(3回目)を受信し、このコマンドに含まれるP1又はP2が第1の識別子を示す場合、データ処理部14は、このコマンド(3回目)に含まれる第1の検証データと第1の識別子に対応付けられた第1の参照データとを比較し類似度を算出する。データ処理部14は、類似度が第3の条件を満たす場合に、累計失敗回数に+3を加算し、累計失敗回数を7回に更新する。累計失敗回数が7回の場合、失敗回数の上限5回を越えており、再試行条件を満たさない。従って、データ処理部14は、
図2に示すコマンドに基づく照合再試行を拒否する。
【0030】
このように、類似度に応じて失敗回数のカウントに重み付けすることにより、類似度に応じた安全性を確保することができる。即ち、類似度が比較的高い場合は本人による照合である確率が比較的高いことから照合再試行回数を必要以上に厳しく制限せずに利便性を確保する。また、類似度が比較的低い場合は本人による照合である確率が比較的低いことから照合再試行回数を厳しく制限し不正防止を図る。
【0031】
なお、1回目の照合失敗又は2回目の照合失敗の後、コマンド(3回目)を受信し、照合に成功した場合、データ処理部14は、照合失敗履歴をリセットする。つまり、累計失敗回数の2回又は4回を0回に設定する。
【0032】
また、例えば、第2の識別子の第2の参照データに対応付けられた失敗回数の上限を3回に設定したり、又は第3の識別子の第3の参照データに対応付けられた失敗回数の限を1回に設定したりすることにより、照合再試行回数を厳しく制限し不正防止を図ることもできる。
【0033】
図5は、実施形態に係る照合処理の一例を示すフローチャートである。
【0034】
ICカード1は、通信部15を介してICカード処理装置から送信されるコマンド(
図2参照)を受信する(S1)。ICカード1は、受信したコマンドを受信用バッファ121に格納する。
【0035】
データ処理部14は、受信したコマンドを解釈し、コマンドに含まれる検証データと、不揮発性メモリ13に含まれる参照データとの類似度を算出する(S2)。例えば、データ処理部14は、このコマンドに含まれるP1又はP2から第1の識別子を解釈し、コマンドに含まれる検証データと第1の識別子に対応付けられた第1の参照データとの類似度を算出する。
【0036】
データ処理部14は、類似度が第1の閾値(例えば90%)以上の場合に照合成功と判定し(S3、YES)、不揮発性メモリ13に保存された累計失敗回数をリセットし(S4)、受信したコマンドのレスポンスとして照合成功を示す正常終了をICカード処理装置2へ送信する(S5)。
【0037】
また、データ処理部14は、類似度が第1の閾値(例えば90%)未満の場合に照合失敗と判定し(S3、NO)、類似度に応じた重み付けで累計失敗回数をカウントアップし(S6)、受信したコマンドのレスポンスとして照合失敗を示す異常終了をICカード処理装置2へ送信する(S7)。
【0038】
図6は、実施形態に係るレスポンスのデータ構造の一例を示す図である。
図6に示すように、レスポンスはステータスワードSW1及びSW2を含む。例えば、正常終了を示すレスポンス、照合失敗(照合不一致)を示すレスポンス、照合失敗及び残り回数nを示すレスポンスがある。例えば、照合失敗及び残り回数が4回を示す第1のレスポンスが送信された後の照合再試行において、類似度が第2の閾値未満且つ第2の閾値より小さい第3の閾値(例えば30%)以上の第2の条件を満たす場合に第2の重み付けにより累計失敗回数に+2が加算されるケースを想定する。このようなケースでは、第1のレスポンスが送信された後、照合失敗及び残り回数が2回を示す第2のレスポンスが送信されることになる。つまり、1回の照合再試行後に、残り回数が2回減少する。
【0039】
図7は、実施形態に係る照合システムの別例を示す図である。
図7に示すように、照合システムは、ICカード1、ICカードと通信するICカード処理装置2、生体情報を読み取る生体情報読取装置3、及びサーバ4を備える。サーバ4は、記憶部41、データ処理部42、及び通信部43等を備える。
【0040】
図1〜
図6を参照し、ICカード1による照合処理について説明したが、サーバ4により照合処理を実行するようにしてもよい。例えば、ICカード1のプログラムメモリ11又は不揮発性メモリ13はカード識別情報を保持する。ICカード処理装置2は、生体情報読取装置3からの生体情報及び生体情報の種別と、ICカード1から読み取られたカード識別情報とをサーバ4へ送信する。
【0041】
サーバ4の記憶部41は、カード識別情報に対応付けて
図3に示す照合管理情報を記憶する。サーバ4の通信部43は、ICカード処理装置2からの検証データ及び検証データの種別とカード識別情報とを受信し、データ処理部42は、受信したカード識別情報に対応付けられた照合管理情報を読み出す。さらに、データ処理部42は、読み出した照合管理情報から、受信した検証データの種別に対応する参照データを選択し、受信した検証データと選択した参照データとを照合し類似度(S)を算出(検出)し、算出された類似度に応じて照合失敗履歴(例えば累計失敗回数)を更新(変更)する。照合失敗履歴の更新については上記説明した通りである。このように、ICカード1に替えてサーバ4で照合処理を実行するようにしてもよい。
【0042】
本実施形態のICカード1又はサーバ4は、照合失敗時の累計失敗回数のカウントアップにおいて、検証データと参照データの類似度に応じて累計失敗回数の増加量を決定する。正しい照合者(本人)による照合失敗の原因として、体調不良や生体情報をセンシング時の環境などの偶発的な理由が挙げられる。正しい照合者(本人)による照合失敗時に得られる類似度は、比較的高いと推測される。類似度が比較的高い場合、累計失敗回数の増加量を比較的小さく設定する。逆に、不正者(他人)による照合失敗時に得られる類似度は、比較的低いと推測される。類似度が比較的低い場合、累計失敗回数の増加量を比較的大きく設定する。これにより、正しい照合者(本人)が照合を失敗したときには照合回数制限への早期到達リスクを低減することができる。また、不正な照合に対しては照合回数制限へ早期に到達させることにより安全性を高めることができる。即ち、利便性と安全性を両立することができる。
【0043】
また、本実施形態のICカードにおける照合処理は、ISO準拠のカードにおいて実現でき、ICカード処理装置2は汎用のカードリーダライタで実現することができる。また、本実施形態の照合処理によれば、類似度が比較的低い照合結果が得られる場合には、不揮発性メモリ13の書き換え回数が少ないうちに照合再試行が拒否される。不揮発性メモリ13には書き換え回数に上限(限界)があるため、メモリ使用の観点でも有利である。
【0044】
なお、上記説明した照合処理はソフトウェアによって実行することが可能である。このため、上記処理の手順を実行するプログラムを記憶したプログラムメモリ11を備えたICカード1により、上記処理を実現することができる。或いは、上記処理の手順を実行するプログラムをICカード処理装置2からICカード1へ送信し、ICカード1が送信されるプログラムを記憶することにより、ICカード1において上記処理を実現することができる。或いは、上記処理の手順を実行するプログラムをサーバ4が記憶することにより、サーバ4において上記処理を実現することができる。
【0045】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。