説明

生体認証システム、生体認証サーバ、生体認証方法及びそのプログラム。

【課題】ユーザの生体データをクライアントにキャッシュする場合において、クライアントにかかる負荷が増大するのを防ぐことを目的とする。
【解決手段】開示のシステムは、認証処理を行う生体認証システムである。生体認証サーバは、サーバキャッシュ決定手段、識別子生成手段、送信手段を備える。サーバキャッシュ決定手段は、認証要求を行ったユーザとは異なるユーザをキャッシュ対象ユーザとして決定する。識別子生成手段は、キャッシュ対象ユーザを示す識別子を生成する。送信手段は、キャッシュ対象ユーザの生体データおよび識別子をクライアントに送信する。クライアントは、生体認証サーバより受信したキャッシュ対象ユーザの生体データ及び識別子をキャッシュする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、生体認証を行う生体認証システムに関する。
【背景技術】
【0002】
クライアント/サーバ型システムにおいてクライアントのアクセス集中に対応するために、複数のサーバを相互連携して負荷を分散させるクラスタと呼ばれる方式が考案されている。パスワードやPIN(Personal Identification Number)を用いた個人認証システムと比較して、生体認証を行う生体認証システムでは一般的に認証処理負荷が大きい。そこで、生体認証システムでは、クライアントの規模に応じたクラスタ方式で負荷を分散させることがある。
【0003】
ここで、サーバのクラスタリングは負荷分散として一定の効果があるものの、特定時間に認証要求が集中する場合にはその度合いによって期待する性能が得られない場合がある。そこで、クライアントなどのキャッシュメモリに認証データを登録しておき、当該キャッシュメモリに登録された認証データを用いて照合を行うことでサーバやネットワークに過大な負荷がかかるのを防ぐ技術や、全ての認証データを保持するサーバとは別の装置に設けられたDBに一部の認証データを保持しておき、当該認証データを用いて照合を行うことで失敗が想定される認証要求を削減してサーバへの過大な負荷がかかるのを防ぐ技術が考案されている(特許文献1乃至3)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2003−44442号公報
【特許文献2】特開2001−256191号公報
【特許文献3】特開2005−142848号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、ユーザの生体データが特定のクライアントに常にキャッシュされるとすると、当該クライアントの電源状態に依存して認証データの一元性が確保できない場合がある。また、全ての認証データを保持するサーバとは別の特定の装置に認証データがキャッシュされるとすると、当該特定の装置にかかる負荷が増大するとともに、認証に成功するケースではサーバにかかる負荷が分散されない。
【課題を解決するための手段】
【0006】
開示のシステムは、複数の生体データを記憶する記憶部を有する生体認証サーバと複数のクライアントとがネットワークを介して互いに接続され、ユーザにより前記クライアントを介して認証要求が行われると、前記ユーザより採取された照合用生体データと前記生体データとの照合を行うことで認証処理を行う生体認証システムであって、前記生体認証サーバは、前記認証要求を行ったユーザとは異なるユーザをキャッシュ対象ユーザとして決定するサーバキャッシュ決定手段と、前記キャッシュ対象ユーザを示す識別子を生成する識別子生成手段と、前記キャッシュ対象ユーザの生体データおよび前記識別子を前記クライアントに送信する送信手段と、前記キャッシュ対象ユーザの生体データおよび前記識別子が利用可能であることを判定するキャッシュ利用可否判定手段と、を備え、前記クライアントは、前記キャッシュ対象ユーザの生体データおよび前記識別子を前記生体認証サーバより受信する受信手段と、前記生体認証サーバより受信した前記キャッシュ対象ユーザの生体データ及び前記識別子をキャッシュするキャッシュ手段と、を備える。
【0007】
開示のシステムは、認証処理を行う生体認証システムである。生体認証システムは、複数の生体データを記憶する記憶部を有する生体認証サーバと複数のクライアントとがネットワークを介して互いに接続され、ユーザによりクライアントを介して認証要求が行われると、当該ユーザより採取された照合用生体データと前記生体データとの照合を行う。生生体認証サーバは、サーバキャッシュ決定手段、識別子生成手段、送信手段、及びキャッシュ利用可否判定手段を備える。サーバキャッシュ決定手段は、認証要求を行ったユーザとは異なるユーザをキャッシュ対象ユーザとして決定する。識別子生成手段は、キャッシュ対象ユーザを示す識別子を生成する。送信手段は、キャッシュ対象ユーザの生体データおよび識別子をクライアントに送信する。キャッシュ利用可否判定手段は、キャッシュ対象ユーザの生体データおよび識別子が利用可能であることを判定する。クライアントは、受信手段と、キャッシュ手段と、を有する。受信手段は、前記キャッシュ対象ユーザの生体データおよび前記識別子を前記生体認証サーバより受信する。キャッシュ手段は、生体認証サーバより受信したキャッシュ対象ユーザの生体データ及び前記識別子をキャッシュする。
【発明の効果】
【0008】
開示のシステムによれば、キャッシュされる生体データの選択の余地を広げることができ、生体認証サーバへの認証要求数が多くなるほど、多くのユーザのキャッシュデータを多くのクライアントにキャッシュすることができる。これにより、生体認証サーバにかかる負荷を効果的に低減することができる。
【図面の簡単な説明】
【0009】
【図1】生体認証システムの装置構成を示すブロック図である。
【図2】第1実施例に係る認証方法の一例を示す模式図である。
【図3】キャッシュデータのキャッシュ処理を伴う認証処理のフローチャートである。
【図4】キャッシュデータを用いた認証処理を示すフローチャートである。
【図5】第2実施例に係る認証方法の一例を示す模式図である。
【図6】第3実施例に係る認証方法の一例を示す模式図である。
【図7】グループ識別情報の一例を示す図表である。
【図8】キャッシュ可否属性情報の一例を示す図表である。
【図9】優先度の付加されたキャッシュ先クライアント情報の一例を示す図表である。
【図10】第4実施例に係る認証方法の一例を示す模式図である。
【図11】ネットワークグループ情報、認証結果および認証ログの一例を示す模式図。
【発明を実施するための形態】
【0010】
以下、実施形態の一例について図面を参照しつつ説明する。
【0011】
[生体認証システム]
最初に、各実施例に係る生体認証システム100の装置構成の一例について図1を用いて説明する。図1は、生体認証システム100の装置構成を示すブロック図である。
【0012】
図1に示すように、生体認証システム100は、クライアント10a、10bと生体認証サーバ50とを有する。
【0013】
まず、クライアント10a、10bの構成について説明する。
【0014】
クライアント10aは、センサ制御部12aと、生体情報取得処理部13aと、キャッシュ制御処理部14aと、キャッシュデータ記憶部15aと、通信制御部16aと、照合処理部17aとを有する。クライアント10aには、生体情報入力部11aと、認証結果通知部18aとが接続されている。
【0015】
クライアント10bは、センサ制御部12bと、生体情報取得処理部13bと、キャッシュ制御処理部14bと、キャッシュデータ記憶部15bと、通信制御部16bと、照合処理部17bとを有する。なお、以下において、クライアント10a、10bを区別しない場合には、符号の英字部分を省略して「クライアント10」と示すものとし、また、その構成要素についても符号の英字部分を省略して示すものとする。
【0016】
生体情報入力部11は、生体情報およびユーザIDを入力するためのものである。生体情報入力部11は、例えばイメージセンサなどのセンサと、キーボードやカードリーダなどの入力装置とを有する。ユーザは、認証を要求する際に、センサより生体情報を入力するとともに入力装置よりユーザIDを入力する。ここで、生体情報とは、例えば、ユーザの指紋や掌の静脈の形状などの情報である。
【0017】
センサ制御部12と、生体情報取得処理部13と、キャッシュ制御処理部14と、通信制御部16と、照合処理部17とは、例えばCPU(Central Processing Unit)がプログラムを実行することにより実現される。また、キャッシュデータ記憶部15は、例えばハードディスクにより実現される。
【0018】
センサ制御部12は、生体情報入力部11に入力された生体情報とユーザIDとをクライアント10に取り込む。生体情報取得処理部13は、生体認証システム100の認証方式に適合した照合用生体データを生体情報より取得する。通信制御部16は、生体認証サーバ50や他のクライアントとの送受信を制御する。キャッシュ制御処理部14は、キャッシュデータ記憶部15に記憶されたデータの処理を行う。照合処理部17は、生体データの照合に関する処理を行う。
【0019】
認証結果通知部18は、例えばディスプレイであり、照合処理部17により行われた照合処理の結果をユーザに対して通知する。
【0020】
次に、生体認証サーバ50の構成について説明する。
【0021】
生体認証サーバ50は、生体データ照合処理部51と、運用監視処理部52と、グループ制御処理部53と、サーバキャッシュ制御処理部54と、通信制御部55と、登録データ入出力部56と、登録データ記憶部57と、ログデータ記憶部58とを有する。
【0022】
生体データ照合処理部51と、運用監視処理部52と、グループ制御処理部53と、サーバキャッシュ制御処理部54と、通信制御部55とは、例えばCPUがプログラムを実行することにより実現される。登録データ記憶部57とログデータ記憶部58とは、例えばハードディスクにより実現される。
【0023】
通信制御部55は、クライアント10a、10bとの送受信を制御する。登録データ記憶部57は、複数の生体データを記憶している。登録データ入出力部56は、登録データ記憶部57に記憶された生体データの入出力を行う。生体データ照合処理部51は、通信制御部55を介して受信した照合用生体データと、登録データ記憶部57に記憶された生体データとの照合を行う。運用監視処理部52は、生体認証システム100の運用を監視する。グループ制御処理部53は、認証を要求するユーザが所属するグループの生成処理などを行う。サーバキャッシュ制御処理部54は、登録データ記憶部57に記憶されたデータの処理を行う。
【0024】
上述した生体認証システム100において、ユーザがクライアント10を介して認証要求を行うと、以下に述べる各実施例に係る生体認証方法が実施される。以下、各実施例について具体的に説明する。
【0025】
[第1実施例]
第1実施例に係る認証方法について説明する。第1実施例に係る認証方法では、生体認証サーバ50は、認証要求を行ったユーザとは別のユーザの生体データをクライアント10にキャッシュさせる。以下、図2を用いて具体的に説明する。
【0026】
図2は、生体認証システム100における第1実施例に係る認証方法の一例を示す模式図である。図2に示す例では、クライアント10aよりユーザAが認証要求を行い、クライアント10bよりユーザBが認証要求を行う。以下、ユーザAの認証方法、ユーザBの認証方法について説明する。
【0027】
最初に、ユーザAの認証方法について説明する。ここで、クライアント10a、10bのいずれにも、ユーザAの生体データはキャッシュされていないとする。
【0028】
ユーザAは、生体情報およびユーザIDをクライアント10aに入力する。具体的には、ユーザAは、生体情報入力部11aより生体情報およびユーザIDを入力する(矢印A1)。入力された生体情報およびユーザIDは、センサ制御部12aによってクライアント10aに取り込まれる。以下では、入力されたユーザAのユーザIDを「ユーザIDA」と称する。ユーザAの生体情報およびユーザIDAがクライアント10aに入力されると、生体情報取得処理部13aは、生体認証システム100の認証方式に適合した照合用生体データを当該生体情報より取得する。以下では、ユーザAの生体情報より取得された照合用生体データを「照合用生体データCDA」と称する。生体情報取得処理部13aは、ユーザIDAおよび照合用生体データCDAを照合処理部17aに送信する(矢印A2)。
【0029】
照合処理部17aは、ユーザAの生体データがいずれかのクライアントにキャッシュされているか否かを生体認証サーバ50に確認する。具体的には、照合処理部17aは、ユーザIDAを含む確認要求を生体認証サーバ50に送信する(矢印A3)。
【0030】
後に詳しく述べるが、いずれかのクライアントに生体データがキャッシュされている場合には、生体認証サーバ50における登録データ記憶部57に、キャッシュ先のクライアントのアドレス(以下、「キャッシュ先アドレス」と称する)などの情報が記憶されている。従って、サーバキャッシュ制御処理部54は、確認要求を受信すると、ユーザIDAを基に、登録データ入出力部56を介して登録データ記憶部57を検索し、いずれかのクライアントにユーザAの生体データがキャッシュされているか否かを確認する。サーバキャッシュ制御処理部54は、確認を終了すると、確認結果をクライアント10aに送信する(矢印A4)。ここでは、クライアント10a、10bのいずれにも、ユーザAの生体データは記憶されていないとしているので、サーバキャッシュ制御処理部54は、いずれのクライアントにもユーザAの生体データがキャッシュされていないことを示す確認結果をクライアント10aに送信する。
【0031】
クライアント10aにおいて、照合処理部17aは、クライアントにキャッシュされていないことを示す確認結果を受信すると、生体認証サーバ50に認証要求を送信する。具体的には、照合処理部17aは、ユーザIDAおよび照合用生体データCDAを含む認証要求を生体認証サーバ50に送信する(矢印A5)。
【0032】
生体認証サーバ50において、生体データ照合処理部51は、ユーザIDAを基に、登録データ入出力部56を介して登録データ記憶部57よりユーザAの生体データDDAを取得する。生体データ照合処理部51は、照合用生体データCDAとユーザAの生体データDDAとの照合を行うことで認証処理を行う。生体データ照合処理部51は、認証結果をクライアント10aに送信する(矢印A6)。ここで、生体データ照合処理部51は、認証に成功した場合には、サーバキャッシュ制御処理部54にユーザIDAを送信する(矢印A7)。
【0033】
サーバキャッシュ制御処理部54は、ユーザIDAを受信すると、クライアント10aにキャッシュさせる生体データを決定する。キャッシュ対象となる生体データの決定方法として、サーバキャッシュ制御処理部54は、認証要求が送信されたクライアントのユーザとは異なるユーザをキャッシュ対象ユーザとして決定し、当該キャッシュ対象ユーザの生体データをキャッシュ対象とする。ここでは、サーバキャッシュ制御処理部54は、クライアント10aのユーザAとは異なるユーザBをキャッシュ対象ユーザとして決定し、ユーザBの生体データをキャッシュ対象とする。サーバキャッシュ制御処理部54は、キャッシュ対象となる生体データ、ここでは、ユーザBの生体データDDBを登録データ記憶部57より取得する。従って、サーバキャッシュ制御処理部54は、キャッシュ対象ユーザ決定手段として機能する。
【0034】
サーバキャッシュ制御処理部54は、暗復号を行う一対の鍵、即ち、暗号鍵EKと復号鍵DKとを生成し、暗号鍵EKを用いて、ユーザBの生体データDDBを暗号化する。暗号化した生体データを以下では「暗号化生体データ」と称する。また、サーバキャッシュ制御処理部54は、暗号化生体データがユーザBのものであることを示す識別子たる仮IDを生成する。ここで、仮IDは、クライアント上で識別不可能なIDとして生成される。即ち、ユーザAは、仮IDを見ても、当該仮IDに対応する暗号化生体データが誰の生体データなのかを識別することはできない(図9参照)。別の言い方をすると、サーバキャッシュ制御処理部54は、ユーザBの生体データDDBを暗号化した暗号化生体データEDBを生成するのに加え、ユーザBを示す識別可能な識別子を暗号化した仮IDを生成する。従って、サーバキャッシュ制御処理部54は、識別子生成手段、暗号化手段として機能する。なお、ここで、サーバキャッシュ制御処理部54は、生体データを登録データ記憶部57より取得する度に鍵および仮IDの生成を行う。つまり、同じ生体データであっても、登録データ記憶部57より取得される度に、毎回異なる鍵で暗号化される。
【0035】
サーバキャッシュ制御処理部54は、ユーザBの暗号化生体データEDB、仮ID、暗号鍵EKをクライアント10aに送信する(矢印A8)。以下では、暗号化生体データEDB、仮IDおよび暗号鍵EKをまとめて「キャッシュデータCHDB」と称する。また、このとき、サーバキャッシュ制御処理部54は、ユーザBの生体データのキャッシュ先アドレスAD(ここでは、クライアント10aのアドレス)と仮IDと復号鍵DKとを登録データ記憶部57に記憶させる。
【0036】
クライアント10aにおいて、キャッシュ制御処理部14aは、受信したユーザBのキャッシュデータCHDBをキャッシュデータ記憶部15aにキャッシュさせる。また、照合処理部17aは、生体認証サーバ50の生体データ照合処理部51より受信したユーザAの認証結果を認証結果通知部18aに送信する(矢印A9)。これにより、ユーザAに認証結果が示される。
【0037】
次に、ユーザBの認証方法について説明する。
【0038】
ユーザBは、生体情報およびユーザIDをクライアント10bに入力する。具体的には、ユーザBは、生体情報入力部11bより生体情報およびユーザIDを入力する(矢印B1)。入力された生体情報およびユーザIDは、センサ制御部12bによってクライアント10bに取り込まれる。以下では、入力されたユーザBのユーザIDを「ユーザIDB」と称する。ユーザBの生体情報およびユーザIDBがクライアント10bに入力されると、生体情報取得処理部13bは、生体認証システム100の認証方式に適合した照合用生体データを当該生体情報より取得する。以下では、ユーザBの生体情報より取得された照合用生体データを「照合用生体データCDB」と称する。生体情報取得処理部13bは、ユーザIDBおよび照合用生体データCDBを照合処理部17bに入力する(矢印B2)。
【0039】
照合処理部17bは、ユーザBの生体データがいずれかのクライアントにキャッシュされているか否かを生体認証サーバ50に確認する。具体的には、照合処理部17bは、ユーザIDBを含む確認要求を生体認証サーバ50に送信する(矢印B3)。
【0040】
生体認証サーバ50において、サーバキャッシュ制御処理部54は、クライアント10bより確認要求を受信すると、ユーザIDBを基に、登録データ入出力部56を介して登録データ記憶部57を検索し、いずれかのクライアントにユーザBの生体データがキャッシュされているか否かを確認する。ここでは、先に述べたように、登録データ記憶部57には、ユーザBの暗号化データのキャッシュ先アドレス(ここでは、クライアント10aのアドレス)ADと当該暗号化データに対応する仮IDと復号鍵DKとが記憶されている。従って、サーバキャッシュ制御処理部54は、確認結果として、キャッシュ先アドレスADと仮IDと復号鍵DKとをクライアント10bに送信する(矢印B4)。
【0041】
クライアント10bにおいて、照合処理部17bは、受信したキャッシュ先アドレスADより、ユーザBの生体データがクライアント10aにキャッシュされていることを認識し、クライアント10aに認証要求を送信する。具体的には、照合処理部17bは、照合用生体データCDBと仮IDと復号鍵DKとを含む認証要求をクライアント10aに送信する(矢印B5)。
【0042】
クライアント10aにおいて、照合処理部17aは、照合用生体データCDBと仮IDと復号鍵DKとを受信する。照合処理部17aは、仮IDと復号鍵DKとをキャッシュ制御処理部14aに送信する。キャッシュ制御処理部14aは、仮IDを用いて、ユーザBのキャッシュデータCHDBをキャッシュデータ記憶部15aより取得する。キャッシュ制御処理部14aは、ユーザBのキャッシュデータCHDBにおける暗号化生体データEDBを、復号鍵DKを用いて復号する。そして、キャッシュ制御処理部14aは、復号されたユーザBの生体データDDBを照合処理部17aに送信する(矢印B6)。照合処理部17aは、照合用生体データCDBとユーザBの生体データDDBとの照合を行うことで認証処理を行う。照合処理部17aは、仮IDと認証結果とを生体認証サーバ50に送信する(矢印B8)。生体認証サーバ50において、サーバキャッシュ制御処理部54は当該認証結果をログとしてログデータ記憶部58に記録する。また、照合処理部17aは、認証結果をクライアント10bに送信する(矢印B7)。
【0043】
クライアント10bにおいて、照合処理部17bは、ユーザBの認証結果を認証結果通知部18bに送信する(矢印B9)。これにより、ユーザBに認証結果が示される。
【0044】
以上に述べたことから分かるように、生体認証システム100では、ユーザBの認証に関しては、キャッシュ先クライアントたるクライアント10aをサーバに見立てて認証が行われる。このようにすることで、生体認証サーバ50における認証負荷を軽減することができる。また、クライアント10aにユーザBのキャッシュデータがキャッシュされている限り、クライアント10bは、照合用生体データCDBを生体認証サーバ50に送信せずに済む。これにより、なんらの装置を増設することなく、クライアント10bと生体認証サーバ50間における通信負荷を軽減することができる。
【0045】
特に、生体認証システム100では、認証要求を行ったユーザAとは異なるユーザBの生体データがクライアント10aにキャッシュされる。これにより、認証要求を行ったユーザの生体データが常に当該ユーザのクライアントにキャッシュされるとする場合と比較して、キャッシュされる生体データの選択の余地を広げることができる。つまり、生体認証サーバ50への認証要求数が多くなるほど、多くのユーザのキャッシュデータを多くのクライアントにキャッシュすることができる。これにより、生体認証サーバや特定のクライアントにかかる負荷を効果的に低減することができる。
【0046】
ここで、ユーザBの生体データは暗号化された上でクライアント10aに記憶されるとともに、当該生体データの仮IDは、クライアント10a上で識別不可能な状態に設定されている。このようにすることで、クライアント10aにキャッシュされた生体データがユーザBの生体データであることを識別不可能な状態にすることができる。
【0047】
クライアント10aにおいて、照合処理部17aは、ユーザBの認証処理を終えると、ユーザBの認証結果をクライアント10bに送信するととともに、ユーザBの認証結果と仮IDとを生体認証サーバ50に送信している。従って、照合処理部17aは、認証結果通知手段として機能する。生体認証サーバ50において、サーバキャッシュ制御処理部54は当該認証結果をログとしてログデータ記憶部58に記録する。このとき、サーバキャッシュ制御処理部54は、システム運用管理者がユーザを特定することが可能な例えばユーザ名などのユーザ識別子に仮IDを変換した上で、当該ユーザ識別子と当該認証結果とを対応付けて記憶する。具体的には、サーバキャッシュ制御処理部54は、仮IDとユーザ識別子との対応を示すマップなどの対応情報を有し、当該対応情報を用いて、仮IDからユーザ識別子に変換する。このようにすることで、キャッシュ先クライアントから生体認証サーバに対し、仮IDを用いた認証結果の通知が可能となり、キャッシュ先クライアントでは匿名性が維持される。一方、生体認証サーバでは、システム運用管理者がユーザを特定することが可能なユーザ識別子に対応させた認証結果をシステム運用管理者が確認することができる。
【0048】
次に、上述の第1実施例に係る認証方法について図3、4に示すフローチャートを用いて説明する。図3は、キャッシュデータのキャッシュ処理を伴うユーザAの認証処理のフローチャートであり、図4は、キャッシュデータを用いたユーザBの認証処理を示すフローチャートである。図3、4において、実線は処理の流れを示し、破線は通信の流れを示している。
【0049】
図3を用いて、キャッシュデータのキャッシュ処理を伴うユーザAの認証処理について説明する。図3に示すフローチャートでは、ユーザAの認証処理が行われるとともに、ユーザBの生体データがクライアント10aにキャッシュされる。以下、具体的に説明する。
【0050】
まず、ステップS201において、クライアント10aには、ユーザAにより、生体情報およびユーザIDAが入力される。クライアント10aは、当該生体情報より照合用生体データCDAを取得する。続くステップS202において、クライアント10aは、ユーザAのキャッシュデータがいずれかのクライアントにキャッシュされているか否かを確認するため、ユーザIDAを含む確認要求を生体認証サーバ50に送信する。
【0051】
ステップS203において、生体認証サーバ50は、ユーザIDAを含む確認要求をクライアント10aより受信する。そして、生体認証サーバ50は、ユーザIDAを基に、登録データ記憶部57を検索して、ユーザAのキャッシュデータがいずれかのクライアントにキャッシュされているか否かを確認する。続くステップS204において、生体認証サーバ50は、確認結果をクライアント10aに送信する。ここでは、生体認証サーバ50は、ユーザAのキャッシュデータがいずれのクライアントにキャッシュされていないので、その旨を示す確認結果をクライアント10aに送信する。
【0052】
ステップS205において、クライアント10aは、クライアントにキャッシュされていないことを示す確認結果を受信すると、ユーザIDAおよび照合用生体データCDAを生体認証サーバ50に送信することにより、生体認証サーバ50に対し認証要求を行う。
【0053】
ステップS206において、生体認証サーバ50は、ユーザIDAおよび照合用生体データCDAをクライアント10aより受信すると、ユーザIDAを基に、登録データ記憶部57よりユーザAの生体データDDAを取得する。そして、生体認証サーバ50は、照合用生体データCDAとユーザAの生体データDDAとの照合を行うことで認証処理を行う。続くステップS207において、生体認証サーバ50は、認証が成功したか否かを判定し、認証が成功した場合には(ステップS207:Yes)、ステップS208の処理へ進み、認証が失敗した場合には(ステップS207:No)、ステップS211の処理へ進む。
【0054】
ステップS208において、生体認証サーバ50は、ユーザIDAを基に、クライアント10aにキャッシュさせるキャッシュ対象を選択する。具体的には、生体認証サーバ50は、ユーザAとは異なるユーザをキャッシュ対象ユーザとして選択する。ここでは、ユーザBがキャッシュ対象ユーザとして選択される。生体認証サーバ50は、キャッシュ対象ユーザの生体データを登録データ記憶部57より取得する。ここでは、生体認証サーバ50は、ユーザBの生体データDDBを登録データ記憶部57より取得する。この後、生体認証サーバ50は、ステップS209の処理へ進む。ステップS209において、生体認証サーバ50は、ユーザBを示す識別子である仮IDを生成するとともに、暗号鍵EKと復号鍵DKとを生成する。続くステップS210において、生体認証サーバ50は、暗号鍵EKを用いて、ユーザBの生体データDDBを暗号化する。この後、生体認証サーバ50は、ステップS211の処理へ進む。
【0055】
ステップS211において、生体認証サーバ50は、ステップS207で行われた認証結果をクライアント10aに送信する。ここで、生体認証サーバ50は、ユーザAの認証が成功した場合には、キャッシュ対象ユーザの生体データと仮IDとを含むキャッシュデータをクライアント10aに送信する。ここでは、暗号化されたユーザBの生体データDDB、即ち、暗号化生体データEDBと仮IDとを含むキャッシュデータCHDBがクライアント10aに送信される。この後、生体認証サーバ50は、本認証処理を終了する。
【0056】
ステップS212において、クライアント10aは、認証結果を受信すると、当該認証結果が成功か否かを判定する。クライアント10aは、認証結果が失敗であると判定した場合には(ステップS212:No)、認証失敗通知を認証結果通知部18aに送信することにより(ステップS213)、ユーザAに認証結果を通知した後、本認証処理を終了する。一方、クライアント10aは、認証結果が成功であると判定した場合には(ステップS212:Yes)、ステップS214の処理へ進む。ステップS214において、クライアント10aは、キャッシュデータCHDBをキャッシュデータ記憶部15aにキャッシュする。続くステップS215において、クライアント10aは、認証成功通知を認証結果通知部18aに送信することにより、ユーザAに認証結果を通知した後、本認証処理を終了する。
【0057】
上述した図3の認証処理によれば、ユーザAの認証処理が行われるととともに、ユーザAとは異なるユーザであるユーザBの生体データがクライアント10aにキャッシュされる。
【0058】
次に、図4を用いて、キャッシュデータを用いたユーザBの認証処理について説明する。図4に示すフローチャートでは、クライアント10aにキャッシュされたキャッシュデータを用いて、ユーザBの認証処理が行われる。以下、具体的に説明する。
【0059】
まず、ステップS301において、クライアント10bは、ユーザBにより、生体情報およびユーザIDBが入力される。クライアント10bは、当該生体情報より照合用生体データCDBを取得する。続くステップS302において、クライアント10bは、ユーザBのキャッシュデータがいずれかのクライアントにキャッシュされているか否かを確認するため、ユーザIDBを含む確認要求を生体認証サーバ50に送信する。
【0060】
ステップS303において、生体認証サーバ50は、ユーザIDBを含む確認要求をクライアント10bより受信する。そして、生体認証サーバ50は、ユーザIDBを基に、登録データ記憶部57を検索して、ユーザBのキャッシュデータがいずれかのクライアントにキャッシュされているか否かを確認する。続くステップS304において、生体認証サーバ50は確認結果をクライアント10bに送信する。ここでは、ユーザBのキャッシュデータがクライアント10aにキャッシュされているので、生体認証サーバ50は、確認結果として、キャッシュ先アドレスADと仮IDと復号鍵DKとを確認結果としてクライアント10aに送信する。
【0061】
ステップS305において、クライアント10bは、キャッシュ先アドレスADと仮IDと復号鍵DKとを受信すると、キャッシュ先アドレスADを基に、ユーザBの生体データがクライアント10aにキャッシュされていることを認識する。そして、クライアント10bは、照合用生体データCDBと仮IDと復号鍵DKとを含む認証要求をクライアント10aに送信する。
【0062】
ステップS306において、クライアント10aは、仮IDに対応するキャッシュデータCHDBをキャッシュデータ記憶部15aより取得し、復号鍵DKを用いて、ユーザBの生体データDDBを復号する。続くステップS307において、クライアント10aは、照合用生体データCDBとユーザBの生体データDDBとの照合を行うことで認証処理を行う。ステップS308において、クライアント10aは、認証結果と仮IDとを認証結果ログとして生体認証サーバ50に送信する。ステップS309において、クライアント10aは、認証結果をクライアント10bに送信する。この後、クライアント10aは、本認証処理を終了する。
【0063】
ステップS310において、生体認証サーバ50は、クライアント10aより受信した認証結果と仮IDとを認証ログとして記録する。この後、生体認証サーバ50は、本認証処理を終了する。
【0064】
ステップS311において、クライアント10bは、認証成功通知を認証結果通知部18bに送信することによりユーザBに認証結果を示した後、本認証処理を終了する。
【0065】
上述した図4の認証処理によれば、ユーザBの認証処理がクライアント10aにて行われる。
【0066】
以上に述べたことから分かるように、第1実施例に係る認証方法では、認証要求を行ったユーザとは異なるユーザをキャッシュ対象ユーザとして決定し、当該認証要求を行ったユーザのクライアントに当該キャッシュ対象ユーザの生体データをキャッシュさせる。このようにすることで、キャッシュされる生体データの選択の余地を広げることができ、生体認証サーバへの認証要求数が多くなるほど、多くのユーザのキャッシュデータを多くのクライアントにキャッシュすることが可能となる。これにより、生体認証サーバや特定のクライアントにかかる負荷を効果的に低減することができる。
【0067】
[第2実施例]
第2実施例に係る認証方法について説明する。第2実施例に係る認証方法では、主に、ユーザが所属するグループのユーザの生体データをキャッシュ対象として選択することとする。図5を用いて具体的に説明する。
【0068】
図5は、生体認証システム100における第2実施例に係る認証方法の一例を示す模式図である。図5に示す例においても、図2に示したのと同様、クライアント10aよりユーザAが認証要求を行い、クライアント10bよりユーザBが認証要求を行う。以下、ユーザAの認証方法、ユーザBの認証方法について説明する。
【0069】
最初に、ユーザAの認証方法について説明する。ここで、クライアント10a、10bのいずれにも、ユーザAの生体データはキャッシュされていないとする。
【0070】
第1実施例に係る認証方法で述べたのと同様に、ユーザAは、生体情報およびユーザIDAをクライアント10aに入力する(矢印A1)。生体情報取得処理部13aは、照合用生体データCDAを当該生体情報より取得し、ユーザIDAおよび照合用生体データCDAを照合処理部17aに送信する(矢印A2)。
【0071】
照合処理部17aは、ユーザIDAを生体認証サーバ50に送信して確認要求を行う(矢印A3)。生体認証サーバ50では、サーバキャッシュ制御処理部54が、ユーザIDAを基に、いずれかのクライアントにユーザAの生体データがキャッシュされているか否かを確認し、キャッシュされていないことを示す確認結果をクライアント10aに送信する(矢印A4)。
【0072】
クライアント10aにおいて、照合処理部17aは、いずれのクライアントにもユーザAの生体データがキャッシュされていないことを示す確認結果を受信すると、ユーザIDAおよび照合用生体データCDAを生体認証サーバ50に送信して認証要求を行う(矢印A5)。
【0073】
生体認証サーバ50において、生体データ照合処理部51は、ユーザIDAを基に、登録データ記憶部57よりユーザAの生体データDDAを取得する。生体認証サーバ50は、照合用生体データCDAとユーザAの生体データDDAとの照合を行うことで認証を行う。生体データ照合処理部51は、認証に成功した場合には、成功したユーザAの認証結果をクライアント10aに送信するとともに(矢印A6)、サーバキャッシュ制御処理部54にユーザIDAを送信する(矢印A7)。サーバキャッシュ制御処理部54は、ユーザIDAを基に、クライアント10aにキャッシュされるキャッシュ対象となる生体データを選択する。
【0074】
ここで、第2実施例にかかる認証方法では、サーバキャッシュ制御処理部54は、所定のグループの属する別のユーザをキャッシュ対象として選択する。従って、サーバキャッシュ制御処理部54は、グループ識別手段として機能する。なお、グループは、生体認証サーバ50にアクセスするユーザを集合で分割したものである。以下では、このようなグループを「キャッシュ対象グループ」と称する。ここで、キャッシュ対象グループは、システム運用管理者などにより、予め認識された情報、例えば、職制や利用時間に応じて設定される。具体的には、グループは、各ユーザの利用時間を基に、同時利用が懸念されるユーザをまとめて設定されたりする。このようにすることで、キャッシュ対象となるユーザを制限することができ、あらかじめ利用頻度が高いと分かっているユーザの生体データについて、グループ化することで優先してクライアントにキャッシュさせることができる。これにより、運用環境に合わせて効率良く認証処理の負荷を分散することができる。ここでは、サーバキャッシュ制御処理部54は、ユーザAが所属するキャッシュ対象グループに属する別のユーザをキャッシュ対象として選択することとする。
【0075】
さらに、サーバキャッシュ制御処理部54は、ユーザAが所属するキャッシュ対象グループに属する別のユーザのうち、未アクセスのユーザを優先してキャッシュ対象として選択する。具体的には、生体データ照合処理部51は、各ユーザの最終認証日時を管理しており、ユーザAからの認証を契機に、最終認証日時から一定時間以上経過している別のユーザの情報を未アクセス情報として、サーバキャッシュ制御処理部54に送信する(矢印A7)。ここで、一定時間は、システム運用管理者により設定され、例えば5時間に設定される。従って、生体データ照合処理部51は、最終認証日時管理手段として機能する。サーバキャッシュ制御処理部54は、未アクセス情報を基に、ユーザAが所属するキャッシュ対象グループに属する別のユーザのうち、未アクセスのユーザを優先してキャッシュ対象として選択する。このように、最終認証日時から一定時間以上経過したか否かを未アクセスの基準とすることで、システムの利用時間帯が変則的な場合においても適切に未アクセスを判定することができ、運用環境に合わせて認証処理の負荷を分散することができる。
【0076】
第2実施例にかかる認証方法では、上述の方法により、ユーザBがキャッシュ対象として選択されたものとする。
【0077】
サーバキャッシュ制御処理部54は、ユーザBの生体データDDBを登録データ記憶部57より取得し、暗号鍵EKを用いて、ユーザBの生体データDDBを暗号化するとともに、仮IDを生成する。サーバキャッシュ制御処理部54は、ユーザBの暗号化生体データEDB、仮ID、暗号鍵EKをクライアント10aに送信する(矢印A8)。また、サーバキャッシュ制御処理部54は、ユーザBの生体データDDBのキャッシュ先アドレスAD(ここでは、クライアント10aのアドレス)と仮IDと復号鍵DKとを登録データ記憶部57に記憶させる。クライアント10aにおいて、キャッシュ制御処理部14aは、ユーザBのキャッシュデータCHDBをキャッシュデータ記憶部15aにキャッシュさせる。また、クライアント10aにおいて、照合処理部17aは、生体認証サーバ50の生体データ照合処理部51より受信したユーザAの認証結果を認証結果通知部18aに送信する(矢印A9)。これにより、ユーザAに認証結果が示される。
【0078】
ここで、第2実施例に係る認証方法では、生体データ照合処理部51は、ユーザBのキャッシュデータCHDBに利用限度を示す情報を含ませてクライアント10aに送信する。この利用限度とは、例えば、キャッシュデータCHDBの利用可能時間を示す。キャッシュ制御処理部14aは、キャッシュデータCHDBをキャッシュデータ記憶部15aにキャッシュさせたときの時刻(以下、「キャッシュ時刻」と称する)を管理している。キャッシュ制御処理部14aは、キャッシュ時刻から利用可能時間が経過した場合には、キャッシュデータCHDBを破棄するとともに、キャッシュデータCHDBを破棄した旨を示す破棄通知を仮IDとともに生体認証サーバ50に通知する(矢印P1)。従って、キャッシュ制御処理部14aは、キャッシュ利用時間管理手段として機能する。生体認証サーバ50は、破棄通知を受信すると、当該仮IDに対応するユーザのキャッシュ先アドレスを未設定に更新する。このように、キャッシュデータのクライアントにおける保持期限を設定することにより、いつまでも当該キャッシュデータがクライアントに保持されたままにならずに済むので、セキュリティ面の向上を図ることができる。
【0079】
次に、ユーザBの認証方法について説明する。
【0080】
第1実施例に係る認証方法で述べたのと同様に、ユーザBは、生体情報およびユーザIDBをクライアント10bに入力する(矢印B1)。生体情報取得処理部13bは、照合用生体データCDBを当該生体情報より取得し、ユーザIDBおよび照合用生体データCDBを照合処理部17bに入力する(矢印B2)。
【0081】
照合処理部17bは、ユーザIDBを生体認証サーバ50に送信して確認要求を行う(矢印B3)。生体認証サーバ50では、サーバキャッシュ制御処理部54が、ユーザIDBを基に、登録データ記憶部57内のデータを検索する。サーバキャッシュ制御処理部54は、ユーザBの生体データがクライアント10aにキャッシュされているとして、キャッシュ先アドレスADと仮IDと復号鍵DKとを確認結果としてクライアント10bに送信する(矢印B4)。
【0082】
クライアント10bにおいて、照合処理部17bは、確認結果を基に、照合用生体データCDBと仮IDと復号鍵DKとをクライアント10aに送信して認証要求を行う(矢印B5)。
【0083】
クライアント10aにおいて、照合処理部17aは、仮IDと復号鍵DKとをキャッシュ制御処理部14aに送信する。キャッシュ制御処理部14aは、仮IDを用いて、ユーザBのキャッシュデータをキャッシュデータ記憶部15aより取得する。キャッシュ制御処理部14aは、ユーザBのキャッシュデータにおける暗号化生体データEDBを、復号鍵DKを用いて復号する。そして、キャッシュ制御処理部14aは、復号されたユーザBの生体データDDBを照合処理部17aに送信する(矢印B6)。照合処理部17aは、照合用生体データCDBとユーザBの生体データDDBとの照合を行うことで認証を行う。その後、照合処理部17aは、認証結果をクライアント10bに送信する(矢印B7)。また、照合処理部17aは、仮IDと認証結果とを生体認証サーバ50に送信する(矢印B8)。生体認証サーバ50において、サーバキャッシュ制御処理部54は当該認証結果をログとしてログデータ記憶部58に記録する。また、クライアント10bにおいて、照合処理部17bは、クライアント10aより受信したユーザBの認証結果を認証結果通知部18bに送信する(矢印B9)。これにより、ユーザBに認証結果が示される。
【0084】
なお、上述の第2実施例に係る認証方法では、ユーザBのキャッシュデータCHDBに含まれる利用限度を示す情報は、キャッシュデータCHDBの利用可能時間であるとしていたが、これに限られない。このようにする代わりに、利用限度を示す情報は、キャッシュデータCHDBの利用可能回数であるとしても良い。この場合、キャッシュ制御処理部14aは、キャッシュデータCHDBの利用回数をカウントし、当該利用回数が利用可能回数を超えた場合には、キャッシュデータCHDBを破棄する。また、このとき、キャッシュ制御処理部14aは、キャッシュデータCHDBを破棄した旨を示す破棄通知を仮IDとともに生体認証サーバ50に送信する。従って、キャッシュ制御処理部14aは、キャッシュ利用回数管理手段として機能する。そして、生体認証サーバ50は、当該仮IDに対応するユーザのキャッシュ先アドレスを未設定に更新する。このようにしても、いつまでも当該キャッシュデータがクライアントに保持されたままにならずに済むので、セキュリティ面の向上を図ることができる。
【0085】
[第3実施例]
第3実施例に係る認証方法について説明する。第3実施例に係る認証方法では、主に、キャッシュ対象となるユーザとキャッシュ先クライアントを利用しているユーザとの関係をキャッシュ対象グループとして定義する。以下、図6〜図9を用いて具体的に説明する。
【0086】
図6は、生体認証システム100における第3実施例に係る認証方法の一例を示す模式図である。
【0087】
図6に示す例では、クライアント10aより管理ユーザA1が認証要求を行い、クライアント10bよりユーザA_001が認証要求を行う。以下、管理ユーザA1の認証方法、ユーザA_001の認証方法について説明する。
【0088】
最初に、管理ユーザA1の認証方法について説明する。ここで、クライアント10a、10bのいずれにも、管理ユーザA1の生体データはキャッシュされていないとする。また、以下において、管理ユーザA1に関する情報を示す符号は、第1及び第2実施例で述べたユーザAに関する情報を示す符号と同じものを用いて示すこととする。また、ユーザA_001に関する情報を示す符号は、第1及び第2実施例で述べたユーザBに関する情報を示す符号と同じものを用いて示すこととする。
【0089】
第2実施例に係る認証方法で述べたのと同様に、管理ユーザA1は、生体情報およびユーザIDAをクライアント10aに入力する(矢印A1)。生体情報取得処理部13aは、照合用生体データCDAを当該生体情報より取得し、ユーザIDAおよび照合用生体データCDAを照合処理部17aに送信する(矢印A2)。
【0090】
照合処理部17aは、ユーザIDAを生体認証サーバ50に送信することで確認要求を行う(矢印A3)。生体認証サーバ50では、サーバキャッシュ制御処理部54が、ユーザIDAを基に、いずれかのクライアントにユーザAの生体データがキャッシュされているか否かを確認し、キャッシュされていないことを示す確認結果をクライアント10aに送信する(矢印A4)。
【0091】
クライアント10aにおいて、照合処理部17aは、クライアントにキャッシュされていないことを示す確認結果を受信すると、ユーザIDAおよび照合用生体データCDAを生体認証サーバ50に送信して認証要求を行う(矢印A5)。
【0092】
生体認証サーバ50において、生体データ照合処理部51は、ユーザIDAを基に、登録データ記憶部57より管理ユーザA1の生体データDDAを取得する。生体認証サーバ50は、照合用生体データCDAと管理ユーザA1の生体データDDAとの照合を行うことで認証を行う。生体データ照合処理部51は、認証に成功した場合には、成功した管理ユーザA1の認証結果をクライアント10aに送信するとともに(矢印A6)、サーバキャッシュ制御処理部54にユーザIDAを送信する(矢印A7)。
【0093】
第1実施例で述べたのと同様に、サーバキャッシュ制御処理部54は、ユーザIDAを基に、クライアント10aにキャッシュされるキャッシュ対象となる生体データを選択する。具体的には、サーバキャッシュ制御処理部54は、管理ユーザA1が所属するキャッシュ対象グループを識別し、当該キャッシュ対象グループに属する別のユーザをキャッシュ対象として選択する。
【0094】
ここで、第3実施例にかかる認証方法では、キャッシュ対象ユーザとキャッシュ先クライアントユーザとの依存関係がグループにより定義されている。サーバキャッシュ制御処理部54は、管理ユーザA1が属するグループに依存するグループに属する別のユーザをキャッシュ対象として選択する。このグループは、例えば職制に応じて設定される。この依存関係を示すグループ識別情報の一例が図7(a)、(b)、(c)に示されている。
【0095】
図7(a)は、ユーザ名と所属グループとの関係を示している。
【0096】
図7(a)を見ると、管理ユーザA1は「Aグループ」に属するとともに「Aグループ管理者」に属し、ユーザA_001は「Aグループ」に属していることが分かる。
【0097】
図7(b)は、キャッシュ可能グループを示している。キャッシュ可能グループとは、キャッシュ対象として選択された別のユーザの生体データをキャッシュすることができるユーザのグループである。
【0098】
図7(b)を見ると、Aグループ管理者がキャッシュ可能グループに属している。つまり、Aグループ管理者に属するユーザのクライアントに対し、別のユーザの生体データをキャッシュすることが可能である。従って、管理ユーザA1はAグループ管理者に属しているので、管理ユーザA1のクライアント10aに別のユーザの生体データをキャッシュすることが可能である。
【0099】
図7(c)は、管理グループと従属グループとの関係を示している。ここで、従属グループとは、管理グループに属するユーザのクライアントにキャッシュされるユーザのグループである。
【0100】
図7(c)を見ると、管理グループたるAグループ管理者に対応する従属グループとしてAグループが示されている。つまり、Aグループ管理者に属するユーザのクライアントにキャッシュされるキャッシュ対象となるのは、Aグループのユーザの生体データである。
【0101】
サーバキャッシュ制御処理部54は、管理ユーザA1のユーザIDAを基に、上述のグループ識別情報を用いて、例えば、Aグループに属するユーザA_001をキャッシュ対象ユーザとして選択する。このようにすることで、特定の管理グループに属するユーザのクライアントに、当該グループに従属するグループのユーザの生体データをキャッシュすることが可能となる。このように、職制上管理する立場のユーザのグループと、これに依存する形で管理される立場のユーザのグループとを形成することで、部下の生体データを上司のクライアントにキャッシュすることが可能となる。これにより、キャッシュデータの責任を明確にしながら認証処理の負荷を分散することができる。
【0102】
また、第3実施例では、サーバキャッシュ制御処理部54は、キャッシュ対象となる生体データを選択する際において、認証要求のあったクライアントについて、生体データのキャッシュ可否を判定する。
【0103】
具体的には、サーバキャッシュ制御処理部54は、各クライアントについて生体データをキャッシュ可能な否かを示すキャッシュ可否属性情報を有している。サーバキャッシュ制御処理部54は、認証要求のあったユーザのクライアントについて、キャッシュ可否属性を判定することで、当該生体データをキャッシュするか否かを決定する。キャッシュ可否属性情報の一例を図8に示す。
【0104】
図8に示すように、キャッシュ可否属性情報は、ユーザ名とクライアント情報とキャッシュ可否属性とを有する。ここで、クライアント情報は、例えば、クライアントのIPアドレスで示されている。また、キャッシュ可否属性は、キャッシュ可能の場合には「○」で示され、キャッシュ不可の場合には「×」で示されている。図8に示す例では、管理ユーザA1は3つのクライアント(aaa.bbb.ccc.10〜aaa.bbb.ccc.12)を有し、そのうち、「aaa.bbb.ccc.12」で示されるクライアントについてはキャッシュ不可となっている。
【0105】
従って、サーバキャッシュ制御処理部54は、認証要求のあった管理ユーザA1のクライアント10aが「aaa.bbb.ccc.10」または「aaa.bbb.ccc.11」で示されるIPアドレスを有する場合には、キャッシュ対象ユーザを決定する。つまり、サーバキャッシュ制御処理部54は、キャッシュ対象ユーザの生体データをクライアント10aにキャッシュさせることとする。一方、サーバキャッシュ制御処理部54は、クライアント10aが「aaa.bbb.ccc.12」で示されるIPアドレスを有する場合には、キャッシュ対象ユーザを決定せずに、別のユーザの生体データをクライアント10aにキャッシュさせないこととする。つまり、この方法によれば、各クライアントのキャッシュ可否属性を個別に設定することができる。このように、各クライアントについて、キャッシュ可否属性に応じてキャッシュ処理を制限することにより、運用環境に合わせて効率よく認証処理の負荷が分散される。
【0106】
ここで、各クライアントは、自身のキャッシュ可否を示すキャッシュ可否通知を生体認証サーバ50に送信し、生体認証サーバ50は、当該キャッシュ可否通知を基に、キャッシュ可否属性情報を更新することができる。例えば、管理ユーザA1がクライアント10aのキャッシュ可否を不可にしたい場合には、クライアント10aを介して、その旨を示すキャッシュ可否通知を生体認証サーバ50に送信する(図6、矢印P2参照)。具体的には、クライアント10aにおけるキャッシュ制御処理部14aがキャッシュ可否通知を生体認証サーバ50に送信する。従って、キャッシュ制御処理部14aは、キャッシュ可否通知手段として機能する。生体認証サーバ50は、キャッシュ可否通知を受信すると、キャッシュ可否属性情報を更新する。例えば、クライアント10aのアドレスが例えば「aaa.bbb.ccc.10」で示されるとすると、生体認証サーバ50は、「aaa.bbb.ccc.10」に対応するキャッシュ可否属性を「○」から「×」に設定して更新する。このとき、生体認証サーバ50は、クライアント10aにキャッシュデータが記憶されている場合には、当該キャッシュデータについての仮ID、アドレス、復号鍵を削除する。また、クライアント10aは、キャッシュ可否通知を生体認証サーバ50に送信する際に、自身が記憶しているキャッシュデータを削除する。これにより、クライアント10aに生体データがキャッシュされなくなる。
【0107】
一方、例えば、管理ユーザA1がクライアント10aのキャッシュ可否を可能にしたい場合には、クライアント10aを介して、その旨を示すキャッシュ可否通知を生体認証サーバ50に送信する。生体認証サーバ50は、キャッシュ可否通知を受信すると、「aaa.bbb.ccc.10」に対応するキャッシュ可否属性を「×」から「○」に設定して更新する。これにより、クライアント10aに生体データがキャッシュされるようになる。
【0108】
このようにすることで、キャッシュ可能としたクライアントを一時的にキャッシュ不可にしたり、キャッシュ不可能としたクライアントを一時的にキャッシュ可能にしたりすることができ、変則的な運用においても効率良く認証処理の負荷が分散される。ここでは、クライアント10aは、キャッシュ可能であるとする。
【0109】
サーバキャッシュ制御処理部54は、キャッシュ対象ユーザとして選択されたユーザA_001の生体データDDBを登録データ記憶部57より取得し、暗号鍵EKを用いて、ユーザA_001の生体データDDBを暗号化するとともに、仮IDを生成する。サーバキャッシュ制御処理部54は、ユーザA_001の暗号化生体データEDB、仮ID、暗号鍵EKをクライアント10aに送信する(矢印A8)。また、サーバキャッシュ制御処理部54は、ユーザA_001の生体データDDBのキャッシュ先アドレスAD(ここでは、クライアント10aのアドレス)と仮IDと復号鍵DKとを登録データ記憶部57に記憶させる。クライアント10aにおいて、キャッシュ制御処理部14aは、ユーザA_001のキャッシュデータCHDBをキャッシュデータ記憶部15aに記憶させる。また、照合処理部17aは、生体認証サーバ50の生体データ照合処理部51より受信したユーザAの認証結果を認証結果通知部18aに送信する(矢印A9)。これにより、ユーザAに認証結果が示される。
【0110】
なお、ここで、サーバキャッシュ制御処理部54は、キャッシュ対象として選択されたユーザの生体データについて、複数のクライアントにキャッシュされるとし、このクライアント数を管理するとしても良い。
【0111】
具体的には、サーバキャッシュ制御処理部54は、キャッシュ対象として選択されたユーザの生体データのキャッシュ先クライアント数の最大値を予め設定しておく。サーバキャッシュ制御処理部54は、当該ユーザの生体データのキャッシュ先クライアント数が最大値を超えておらず、かつ、認証要求のあったクライアントに当該ユーザの生体データがキャッシュされていない場合に、当該ユーザの生体データをキャッシュする。
【0112】
例えば、サーバキャッシュ制御処理部54は、ユーザA_001の生体データのキャッシュ先クライアント数が最大値を超えておらず、かつ、認証要求のあったクライアント10aにユーザA_001の生体データがキャッシュされていないかを判定する。サーバキャッシュ制御処理部54は、ユーザA_001の生体データのキャッシュ先クライアント数が最大値を超えておらず、かつ、認証要求のあったクライアント10aにユーザA_001の生体データがキャッシュされていないと判定した場合には、クライアント10aにユーザA_001の生体データをキャッシュする。このようにすることで、複数のクライアントにユーザA_001の生体データをキャッシュすることが可能となる。従って、サーバキャッシュ制御処理部54は、キャッシュ先クライアント数管理手段として機能する。
【0113】
また、サーバキャッシュ制御処理部54は、あるユーザの生体データについて、複数のクライアントにキャッシュされている場合には、キャッシュ先優先度を決定する。後に、キャッシュ対象ユーザより確認要求があった場合には、サーバキャッシュ制御処理部54は、当該キャッシュ先優先度を基に、キャッシュ対象ユーザのアクセスするクライアントを決定する、即ち、キャッシュ優先度の最も高いクライアントに決定する。ここで、キャッシュ先優先度は、例えば、キャッシュされた時刻やクライアントの稼働状況に応じて決定されるとしても良いし、クライアント毎に予め決定されるとしても良い。優先度の付加されたキャッシュ先クライアント情報の一例を図9に示す。
【0114】
図9は、ユーザ名と仮IDと復号鍵とキャッシュ先アドレスと優先度との関係が示されている。図9に示す例では、ユーザA_001の生体データは、管理ユーザA1の2つのクライアントにキャッシュされている。ここで、2つのクライアントのうち、「aaa.bbb.ccc.10」で示されるクライアントの優先度は「1」となっており、「aaa.bbb.ccc.11」で示されるクライアントの優先度は「2」となっている。従って、後に、ユーザA_001より確認要求があった場合には、サーバキャッシュ制御処理部54は、キャッシュ先アドレス「aaa.bbb.ccc.10」と、当該キャッシュ先アドレスに対応する仮IDおよび復号鍵をユーザA_001に送信する。もし、キャッシュ先アドレス「aaa.bbb.ccc.10」のクライアントが利用不可の場合には、サーバキャッシュ制御処理部54は、キャッシュ先アドレス「aaa.bbb.ccc.11」と、当該キャッシュ先アドレスに対応する仮IDおよび復号鍵をユーザA_001に送信する。このようにすることで、生体データがキャッシュされた所定のクライアントが利用不可となった場合であっても、別のクライアントを利用することが可能となり、クライアントの稼働状況に応じた負荷分散を実現することができる。
【0115】
次に、図6に戻り、ユーザA_001の認証方法について説明する。
【0116】
第1実施例に係る認証方法で述べたのと同様に、ユーザA_001は、生体情報およびユーザIDBをクライアント10bに入力する(矢印B1)。生体情報取得処理部13bは、照合用生体データCDBを当該生体情報より取得し、ユーザIDBおよび照合用生体データCDBを照合処理部17bに入力する(矢印B2)。
【0117】
照合処理部17bは、ユーザIDBを生体認証サーバ50に送信する(矢印B3)。生体認証サーバ50では、サーバキャッシュ制御処理部54が、ユーザIDBを基に、登録データ記憶部57内のデータを検索する。サーバキャッシュ制御処理部54は、ユーザA_001の生体データがクライアント10aにのみキャッシュされているとして、キャッシュ先アドレスADと仮IDと復号鍵DKとをクライアント10bに送信する(矢印B4)。
【0118】
クライアント10bにおいて、照合処理部17bは、照合用生体データCDBと仮IDと復号鍵DKとをクライアント10aに送信する(矢印B5)。
【0119】
クライアント10aにおいて、照合処理部17aは、仮IDと復号鍵DKとをキャッシュ制御処理部14aに送信する。キャッシュ制御処理部14aは、仮IDを用いて、ユーザA_001のキャッシュデータをキャッシュデータ記憶部15aより取得する。キャッシュ制御処理部14aは、ユーザA_001のキャッシュデータにおける暗号化生体データEDBを、復号鍵DKを用いて復号する。そして、キャッシュ制御処理部14aは、復号されたユーザA_001の生体データDDBを照合処理部17aに送信する(矢印B6)。照合処理部17aは、照合用生体データCDBとユーザA_001の生体データDDBとの照合を行うことで認証を行う。照合処理部17aは、認証結果をクライアント10bに送信する(矢印B7)。また、照合処理部17aは、仮IDと認証結果とを生体認証サーバ50に送信する(矢印B8)。生体認証サーバ50において、サーバキャッシュ制御処理部54は当該認証結果をログとしてログデータ記憶部58に記録する。クライアント10bにおいて、照合処理部17bは、クライアント10aより受信したユーザA_001の認証結果を認証結果通知部18bに送信する(矢印B9)。これにより、ユーザA_001に認証結果が示される。
[第4実施例]
第4実施例に係る認証方法について説明する。第4実施例に係る認証方法では、主に、アクセス状況に応じて、運用環境を変更することとする。以下、図10及び図11を用いて具体的に説明する。
【0120】
図10は、生体認証システム100における第4実施例に係る認証方法の一例を示す模式図である。
【0121】
矢印A1から矢印A5で示されるユーザAの認証の流れは、第1実施例で述べた流れと同様であるので説明を省略する。
【0122】
生体認証サーバ50において、生体データ照合処理部51は、ユーザIDAを基に、登録データ記憶部57よりユーザAの生体データDDAを取得する。生体認証サーバ50は、照合用生体データCDAとユーザAの生体データDDAとの照合を行うことで認証を行う。生体データ照合処理部51は、認証に成功した場合には、成功したユーザAの認証結果をクライアント10aに送信するとともに(矢印A6)、サーバキャッシュ制御処理部54にユーザIDAを送信する(矢印A7)。
【0123】
第4実施例に係る認証方法では、運用監視処理部52は、基準時刻から計測された認証要求クライアント数が予め設定された値を超えたときに、認証要求のあったクライアントへの生体データのキャッシュを開始させることとする。以下、具体的に説明する。
【0124】
生体認証サーバ50において、運用監視処理部52は、認証時刻をクライアント毎に統計管理している。運用監視処理部52は、認証時刻を基に、予め設定された基準時刻からの認証要求を行ったクライアント数を算出し、当該クライアント数が所定のクライアント数を超えたときに、その旨を示す運用情報をサーバキャッシュ制御処理部54に送信する。従って、運用監視処理部52は、計測手段として機能する。サーバキャッシュ制御処理部54は、当該運用情報を受信すると、認証要求のあったクライアントへの生体データのキャッシュを開始する。例えば、基準時刻が4:00となっており、基準値が35となっているとすると、運用監視処理部52は、4:00からの認証要求を行ったクライアント数が35を超えたときに、その旨を示す運用情報をサーバキャッシュ制御処理部54に送信する。サーバキャッシュ制御処理部54は、当該運用情報を受信すると、認証要求のあったクライアントへの生体データのキャッシュを開始する。これにより、クライアントからのアクセスが過密になったタイミングで自動的にキャッシュを開始することが可能となり、アクセス状況に応じて認証処理の負荷が分散される。
【0125】
ここで、クライアント10aからの認証要求の際には、既にキャッシュが開始されていたものとする。従って、サーバキャッシュ制御処理部54は、ユーザIDAを受信すると、クライアント10aにキャッシュされるキャッシュ対象となる生体データを選択する。キャッシュ対象ユーザの選択方法として、サーバキャッシュ制御処理部54は、クライアント10aのユーザAとは異なるユーザの生体データをキャッシュ対象として選択する。
【0126】
ここで、第4実施例に係る認証方法では、サーバキャッシュ制御処理部54は、各クライアント間のネットワーク距離、各ユーザの認証率を基に、キャッシュ対象となるユーザを選択することとする。
【0127】
まず、各クライアント間のネットワーク距離を基に、キャッシュ対象となるユーザを選択する方法について説明する。ここで、ネットワーク距離とは、各クライアント間における通信の伝送路の長さを示している。サーバキャッシュ制御処理部54は、キャッシュ対象ユーザを選択する際において、認証要求を行ったクライアントとのネットワーク距離が所定距離よりも小さいクライアントのユーザをキャッシュ対象ユーザとして選択する。ここで、所定距離よりも小さいとは、例えば、同一のネットワークセグメント内にあるという意味である。
【0128】
具体的には、生体認証サーバ50において、グループ制御処理部53は、各クライアント間のネットワーク距離を管理している。例えば、グループ制御処理部53は、複数のクライアントについて、ネットワークセグメント毎にグループ化したグループ情報(以下、「ネットワークグループ情報」と称する)を有している。図11(a)は、ネットワークグループ情報を示す一例である。図11(a)に示すように、ユーザAのクライアントとユーザBのクライアントとが同じネットワークセグメントたる「グループS」に属している。互いに異なるネットワークセグメントに属するクライアント間のネットワーク距離と比較して、互いに同じネットワークセグメントに属するクライアント間のネットワーク距離は近くなっている。グループ制御処理部53は、ネットワークグループ情報をサーバキャッシュ制御処理部54に送信する。従って、グループ制御処理部53は、ネットワーク距離管理手段として機能する。
【0129】
サーバキャッシュ制御処理部54は、ネットワークグループ情報を基に、認証要求のあったクライアントと同じグループに属するクライアントのユーザを優先的にキャッシュ対象ユーザとして選択する。ここで、ユーザAのクライアント10aとユーザBのクライアント10bとは同じグループSに属している。従って、サーバキャッシュ制御処理部54は、クライアント10aにキャッシュさせるキャッシュ対象としてユーザBの生体データを選択することができる。このようにすることで、キャッシュ対象ユーザが利用するクライアントとキャッシュ先クライアントとの間のネットワーク距離をなるべく近くすることができ、クライアントに対して認証要求が行われる際におけるクライアント間の通信時間を短縮することができる。
【0130】
次に、各ユーザの認証率を基に、キャッシュ対象となるユーザを選択する方法について説明する。
【0131】
生体認証サーバ50において、まず、運用監視処理部52は、認証結果のログ(以下、「認証ログ」と称する)を用いて、各ユーザの認証成功率を算出する。図11(b)は、認証ログの一例を示している。認証ログでは、ユーザ名と認証結果と認証が行われた時刻情報とが記録されている。図11(b)では、認証成功の場合を「○」で示し、認証失敗の場合を「×」で示している。運用監視処理部52は、認証ログを基に、ユーザ毎の認証率を算出する。図11(c)は、ユーザ毎の認証率を示している。運用監視処理部52は、予め設定された基準値よりも低い認証率となっているユーザの情報を運用情報としてグループ制御処理部53へ送信する。従って、運用監視処理部52は、認証率管理手段として機能する。グループ制御処理部53は、予め設定された基準値よりも低い認証率となっているユーザをグループ情報(以下、「低認証率グループ」と称する)としてサーバキャッシュ制御処理部54に送信する。サーバキャッシュ制御処理部54は、キャッシュ対象ユーザを選択する際において、低認証率グループに属しているユーザを優先的にキャッシュ対象として選択する。
【0132】
図11(c)において、例えば認証率の基準値が0.48であるとすると、当該基準値よりも低い認証率となっているのはユーザBである。従って、運用監視処理部52は、ユーザBの情報を、グループ制御処理部53を介して、サーバキャッシュ制御処理部54に送信することになる。
【0133】
第4実施例に係る認証方法では、上述の方法により、ユーザBがキャッシュ対象ユーザとして選択されたものとする。
【0134】
サーバキャッシュ制御処理部54は、ユーザBの暗号化生体データEDB、仮ID、暗号鍵EKをクライアント10aに送信する(矢印A8)。また、サーバキャッシュ制御処理部54は、ユーザBの生体データDDBのキャッシュ先アドレスAD(ここでは、クライアント10aのアドレス)と仮IDと復号鍵DKとを登録データ記憶部57に記憶させる。クライアント10aにおいて、キャッシュ制御処理部14aは、ユーザBのキャッシュデータCHDBをキャッシュデータ記憶部15aにキャッシュさせる。
【0135】
矢印B1から矢印B9で示されるユーザBの認証の流れは、第1実施例で述べた流れと同様であるので説明を省略する。
【0136】
なお、第4実施例に係る認証方法では、各ユーザの認証率を基に、キャッシュ対象ユーザを選択するとしていたが、ユーザの認証状況に応じたキャッシュ対象ユーザの選択方法としては、これに限られるものではない。このようにする代わりに、または、加えて、ユーザのアクセス傾向や認証の集中度合いを基に、キャッシュ対象ユーザを選択するとしても良い。この方法について、以下に説明する。
【0137】
まず、ユーザのアクセス傾向を基に、キャッシュ対象ユーザを選択する方法について説明する。
【0138】
生体認証サーバ50において、運用監視処理部52は、各ユーザの認証時刻を統計管理しておき、各ユーザについて、生体認証サーバ50に認証要求が集中する時間帯を算出する。具体的には、運用監視処理部52は、各ユーザについて、予め決められた所定回数以上の認証要求があった時間帯を認証要求が集中する時間帯として算出する。そして、運用監視処理部52は、あるユーザ(例えばユーザA)から認証要求があった場合において、算出結果を基に、当該認証要求のあった時刻の一定時間後の時間帯において、認証要求が集中する別のユーザの情報を運用情報としてサーバキャッシュ制御処理部54に送信する。従って、運用監視処理部52は、認証時刻管理手段及びユーザ時間帯算出手段として機能する。サーバキャッシュ制御処理部54は、当該別のユーザをキャッシュ対象ユーザとして選択する。このようにすることで、あるユーザと比較して統計的に後に認証要求をすることの多い別のユーザをキャッシュすることができ、効率的にキャッシュデータを利用することが可能となる。
【0139】
次に、ユーザの認証の集中度合いを基に、キャッシュ対象ユーザを選択する方法について説明する。
【0140】
生体認証サーバ50において、運用監視処理部52は、各ユーザの認証時刻を統計管理しておく。運用監視処理部52は、各ユーザの認証時刻の情報を運用情報としてグループ制御処理部53へ送信する。グループ制御処理部53は、当該運用情報を基に、同一時間帯に認証が集中するユーザをグループ化したグループ情報(以下、「時間帯認証集中グループ」と称する)をサーバキャッシュ制御処理部54に送信する。サーバキャッシュ制御処理部54は、キャッシュ対象ユーザを選択する際において、認証要求のあったユーザと同じ時間帯認証集中グループに属するユーザを優先的にキャッシュ対象ユーザとして選択する。このようにすることで、あらかじめグループを設定しなくても、同じ時間帯に認証が集中するユーザを同一グループに自動的に設定することができる。このようにすることで、認証の集中度合いに応じた適切な認証処理負荷の分散を行うことができる。
【0141】
[変形例]
次に、上述の各実施例に係る変形例について説明する。
【0142】
まず、第1の変形例について説明する。第1の変形例では、キャッシュ先クライアントが利用不可になっている場合に、当該キャッシュ先クライアントにキャッシュされたキャッシュデータが、改めて別のキャッシュ先クライアントにキャッシュされる。以下、具体的に説明する。
【0143】
運用監視処理部52は、キャッシュ先クライアントの稼働状況、即ち、当該キャッシュ先クライアントが利用不可になっているか否かを監視する。運用監視処理部52は、キャッシュ先クライアントが利用不可であると判定した場合には、登録データ入出力部56を介して、当該キャッシュ先クライアントにキャッシュされた生体データに対応するユーザをキャッシュ対象ユーザとして選択可能に再設定する。従って、運用監視処理部52は、稼働状況監視手段として機能する。
【0144】
サーバキャッシュ制御処理部54は、キャッシュ対象ユーザを選択する際において、選択可能に再設定されたユーザを優先的にキャッシュ対象として選択する。このようにすることで、クライアントにキャッシュされたキャッシュデータが何らかの理由で利用不可となった場合であっても、再度、別のクライアントに当該キャッシュデータをキャッシュすることができる。これにより、クライアントの稼働時間帯がまばらな運用環境においてもキャッシュデータの再配置を自動で行うことが可能となる。
【0145】
次に、第2の変形例について説明する。第2の変形例では、キャッシュ先クライアントにキャッシュされたキャッシュデータが、キャッシュされてからの経過時間に応じて更新される。以下、具体的に説明する。
【0146】
キャッシュ先クライアントにおいて、キャッシュ制御処理部14は、キャッシュデータがキャッシュされたキャッシュ日時を管理している。キャッシュ制御処理部14は、キャッシュデータについて、キャッシュ日時より予め決められた所定時間が経過したか否かを判定し、経過したと判定した場合には、キャッシュデータの更新要求を生体認証サーバ50に行う。従って、キャッシュ制御処理部14は、更新要求手段として機能する。生体認証サーバ50において、サーバキャッシュ制御処理部54は、所定時間が経過したと判定されたキャッシュデータの生体データに対応するユーザをキャッシュ対象ユーザとする。即ち、サーバキャッシュ制御処理部54は、当該ユーザの生体データを登録データ記憶部57より改めて取得する。そして、サーバキャッシュ制御処理部54は、改めて取得された生体データについて、新たに生成された暗号鍵を用いて暗号化するとともに、新たな仮IDを生成する。サーバキャッシュ制御処理部54は、このようにして生成された暗号化生体データ、仮IDおよび暗号鍵を新たなキャッシュデータとして、当該キャッシュ先クライアントに送信する。従って、サーバキャッシュ制御処理部54は、更新手段として機能する。
【0147】
キャッシュ先クライアントにおいて、キャッシュ制御処理部14は、新たなキャッシュデータをキャッシュデータ記憶部15に記憶させるとともに、キャッシュ日時を更新する。このようにすることで、常時稼働状態にあるキャッシュ先クライアントのキャッシュデータに対するセキュリティが向上し、長期間安全にキャッシュデータを保持することが可能となる。
【0148】
次に、第3の変形例について説明する。第3の変形例では、キャッシュ対象ユーザのクライアントからキャッシュ先クライアントへのアクセスを簡略化する。以下、具体的に説明する。
【0149】
キャッシュ先クライアントにおいて、キャッシュ制御処理部14は、キャッシュ対象ユーザのクライアントより仮IDと復号鍵とを受信すると、キャッシュデータの認証後においてもこれを保持する。また、キャッシュ先クライアントおよびキャッシュ対象ユーザのクライアントの両クライアントにおける照合処理部17には、生体認証サーバ50よりキャッシュ利用限度が通知される。両クライアントにおける照合処理部17は、当該キャッシュ利用限度を保持する。従って、両クライアントにおける照合処理部17は、キャッシュ利用限度保持手段として機能する。この後、キャッシュ対象ユーザのクライアントより認証要求が行われる際には、当該クライアントの照合処理部17は、キャッシュ利用限度の範囲内において、生体認証サーバ50への確認要求を行わずに、キャッシュ先クライアントへ直接認証要求を行う。つまり、キャッシュ対象ユーザのクライアントは、キャッシュ先クライアントへ照合用データを直接送信し、キャッシュ先クライアントは、当該照合用データを基に照合を行い、キャッシュ対象ユーザのクライアントへ認証結果を送信する。この処理が行われる度に、キャッシュ先クライアントおよびキャッシュ対象ユーザのクライアントの両クライアントでは、利用回数が更新される。キャッシュ対象ユーザのクライアントは、当該利用回数がキャッシュ利用限度を超えた場合には、確認要求を生体認証サーバ50に再度行う。
【0150】
このように、一定の利用限度の範囲内において、生体認証サーバ50を介さずに、キャッシュ先クライアントのキャッシュデータを利用可能とすることで、キャッシュデータ利用の際の通信量をさらに削減でき、生体認証サーバ50における処理負荷を軽減できる。
【0151】
なお、実施形態は、上述した実施形態の例に限られるものではなく、特許請求の範囲及び明細書全体から読み取れる発明の要旨あるいは思想に反しない範囲で適宜変更可能である。
【0152】
以上説明した実施形態に関して、更に以下の付記を開示する。
(付記1)
複数の生体データを記憶する記憶部を有する生体認証サーバと複数のクライアントとがネットワークを介して互いに接続され、ユーザにより前記クライアントを介して認証要求が行われると、前記ユーザより採取された照合用生体データと前記生体データとの照合を行うことで認証処理を行う生体認証システムにおいて、
前記生体認証サーバは、
前記認証要求を行ったユーザとは異なるユーザをキャッシュ対象ユーザとして決定するサーバキャッシュ決定手段と、
前記キャッシュ対象ユーザを示す識別子を生成する識別子生成手段と、
前記キャッシュ対象ユーザの生体データおよび前記識別子を前記クライアントに送信する送信手段と、
前記キャッシュ対象ユーザの生体データおよび前記識別子が利用可能であることを判定するキャッシュ利用可否判定手段と、を備え、
前記クライアントは、
前記キャッシュ対象ユーザの生体データおよび前記識別子を前記生体認証サーバより受信する受信手段と、
前記生体認証サーバより受信した前記キャッシュ対象ユーザの生体データ及び前記識別子をキャッシュするキャッシュ手段と、を備えることを特徴とする生体認証システム。
(付記2)
前記生体認証サーバは、
前記キャッシュ対象ユーザの生体データを暗号化する暗号化手段を備える付記1に記載の生体認証システム。
(付記3)
前記生体認証サーバは、前記認証要求を行ったユーザが所属するグループを識別するグループ識別手段を有し、
前記サーバキャッシュ決定手段は、前記グループに所属するユーザを前記キャッシュ対象ユーザとして決定することを特徴とする付記1に記載の生体認証システム。
(付記4)
前記生体認証サーバは、前記クライアントにおける生体データのキャッシュ可否を示すキャッシュ可否属性情報を有し、
前記サーバキャッシュ決定手段は、前記キャッシュ可否属性情報を基に、前記クライアントのキャッシュ可否を判定し、前記クライアントがキャッシュ可能であると判定した場合に、前記キャッシュ対象ユーザを決定することを特徴とする付記1に記載の生体認証システム。
(付記5)
前記クライアントは、キャッシュ可否を示すキャッシュ可否通知を前記生体認証サーバに送信するキャッシュ可否通知手段を有し、
前記生体認証サーバキャッシュ決定手段は、前記キャッシュ可否通知を基に、前記キャッシュ可否属性情報を更新することを特徴とする付記4に記載の生体認証システム。
(付記6)
前記生体認証サーバは、当該生体認証サーバに対して認証要求を行ったクライアント数を基準時刻より計測する計測手段を有し、
前記サーバキャッシュ決定手段は、前記計測手段により計測された前記クライアント数が所定のクライアント数を超えたときに、前記キャッシュ対象ユーザを決定することを特徴とする付記1に記載の生体認証システム。
(付記7)
前記生体認証サーバは、所定のユーザの生体データがキャッシュされたクライアント数を管理するキャッシュ先クライアント数管理手段と、
前記所定のユーザの生体データがキャッシュされた複数のクライアントについて優先度を決定するキャッシュ先優先度決定手段と、を有し、
前記サーバキャッシュ決定手段は、前記所定のユーザより認証要求があった場合には、優先度が決定された前記複数のクライアントの中から、前記優先度に応じて、認証処理を行わせるクライアントを決定することを特徴とする付記1に記載の生体認証システム。
(付記8)
前記生体認証サーバは、前記クライアントにキャッシュされる生体データのユーザのグループを識別するグループ識別手段を有し、
前記サーバキャッシュ決定手段は、前記グループに所属するユーザを前記キャッシュ対象ユーザとして決定することを特徴とする付記1に記載の生体認証システム。
(付記9)
前記生体認証サーバは、生体データがキャッシュされるクライアントであるキャッシュ先クライアントのユーザのグループに対応して、前記キャッシュ対象ユーザのグループが規定されたグループ識別情報を有し、
前記サーバキャッシュ決定手段は、前記キャッシュ先クライアントのユーザより認証要求が行われると、前記グループ識別情報を基に、前記キャッシュ対象ユーザを決定することを特徴とする付記3に記載の生体認証システム。
(付記10)
前記生体認証サーバは、
各ユーザの最終認証日時を管理する最終認証日時管理手段を有し、
前記サーバキャッシュ決定手段は、最終認証日時より一定時間以上経過したユーザを前記キャッシュ対象ユーザとして決定することを特徴とする付記1に記載の生体認証システム。
(付記11)
前記生体認証サーバは、
各ユーザの認証時刻を管理する認証時刻管理手段と、
前記認証時刻を基に、各ユーザの認証要求が集中する時間帯を算出するユーザ時間帯算出手段と、を有し、
前記サーバキャッシュ決定手段は、認証要求が行われた場合において、当該認証要求が行われた時刻の一定時間経過後の時間帯において認証要求が集中するユーザを前記キャッシュ対象ユーザとして決定することを特徴とする付記1に記載の生体認証システム。
(付記12)
前記生体認証サーバは、
各ユーザの認証成功率を管理する認証率管理手段を有し、
前記サーバキャッシュ決定手段は、前記認証成功率が所定の成功率よりも低いユーザを前記キャッシュ対象ユーザとして決定することを特徴とする付記1に記載の生体認証システム。
(付記13)
前記生体認証サーバは、
各クライアント間のネットワーク距離を管理するネットワーク距離管理手段を有し、
前記サーバキャッシュ決定手段は、認証要求を行ったクライアントとのネットワーク距離が所定距離よりも小さいクライアントのユーザを前記キャッシュ対象ユーザとして決定することを特徴とする付記1に記載の生体認証システム。
(付記14)
前記生体認証サーバは、
各ユーザの認証時刻を管理する認証時刻管理手段と、
前記認証時刻を基に、各ユーザの認証要求が集中する時間帯を算出するユーザ時間帯算出手段と、
同一時間帯に認証要求が集中するユーザを前記グループとしてまとめるグループ生成手段と、を有することを特徴とする付記3乃至8のいずれか一項に記載の生体認証システム。
(付記15)
前記生体認証サーバは、
生体データがキャッシュされるキャッシュ先クライアントの稼働状況を監視する稼働状況監視手段を有し、
前記サーバキャッシュ決定手段は、前記キャッシュ先クライアントが利用不可となっていると前記稼働状況監視手段により判定された場合には、前記キャッシュ先クライアントにキャッシュされていた生体データに対応するユーザを前記キャッシュ対象ユーザとして決定することを特徴とする付記1乃至14のいずれか一項に記載の生体認証システム。
(付記16)
前記クライアントは、
生体データがキャッシュされたキャッシュ日時を管理するキャッシュ日時管理手段と、
前記キャッシュ日時から所定時間経過した場合に、更新要求を前記生体認証サーバに送信する更新要求手段と、を有し、
前記生体認証サーバは、
前記更新要求を基に、前記暗号化手段および前記識別子生成手段を用いて、前記クライアントにキャッシュされた生体データに対応するユーザの生体データを新たに暗号化するとともに、新たに識別子を生成して前記クライアントに送信する更新手段を備えることを特徴とする付記1乃至14のいずれか一項に記載の生体認証システム。
(付記17)
前記キャッシュ対象ユーザのクライアントおよび生体データがキャッシュされるキャッシュ先クライアントは、
キャッシュされた生体データの利用限度を示すキャッシュ利用限度を保持するキャッシュ利用限度保持手段を有し、
前記キャッシュ対象ユーザのクライアントは、キャッシュ先クライアントのアドレスを保持し、前記キャッシュ対象ユーザより認証要求があった場合には、キャッシュ利用限度の範囲内において、前記キャッシュ先クライアントに直接認証要求を行うことを特徴とする付記1乃至14のいずれか一項に記載の生体認証システム。
(付記18)
前記クライアントは、
前記キャッシュ対象ユーザの認証結果を前記生体認証サーバに通知する認証結果通知手段を有し、
前記生体認証サーバは、
前記識別子と前記キャッシュ対象ユーザとの対応を示す対応情報を有し、
前記サーバキャッシュ決定手段は、前記対応情報を基に、前記認証結果を前記キャッシュ対象ユーザと関連付けて記憶させることを特徴とする付記1乃至17のいずれか一項に記載の生体認証システム。
(付記19)
前記クライアントは、
キャッシュされた生体データの利用回数を管理するキャッシュ利用回数管理手段を有し、
前記キャッシュ利用回数管理手段は、キャッシュされた生体データの利用回数が利用可能回数を超えた場合には、キャッシュされた生体データを破棄することを特徴とする付記1乃至17のいずれか一項に記載の生体認証システム。
(付記20)
前記クライアントは、
キャッシュされた生体データの利用時間を管理するキャッシュ利用時間管理手段を有し、
前記キャッシュ利用時間管理手段は、生体データがキャッシュされたキャッシュ時刻から利用可能時間が経過した場合には、キャッシュされた生体データを破棄することを特徴とする付記1乃至17のいずれか一項に記載の生体認証システム。
(付記21)
複数の生体データを記憶する記憶部を有するとともに、複数のクライアントとネットワークを介して接続され、ユーザにより前記クライアントを介して認証要求が行われると、前記ユーザより採取された照合用生体データと前記生体データとの照合を行うことで認証処理を行う生体認証サーバであって、
前記認証要求を行ったユーザとは異なるユーザを前記キャッシュ対象ユーザとして決定するサーバキャッシュ決定手段と、
前記キャッシュ対象ユーザの識別子を生成する識別子生成手段と、
前記キャッシュ対象ユーザの生体データおよび前記識別子を前記クライアントに送信する送信手段と、
前記キャッシュ対象ユーザの生体データおよび前記識別子が利用可能であることを判定するキャッシュ利用可否判定手段と、を備えることを特徴とする生体認証サーバ。
(付記22)
複数の生体データを記憶する記憶部を有するとともに、複数のクライアントとネットワークを介して接続され、ユーザにより前記クライアントを介して認証要求が行われると、前記ユーザより採取された照合用生体データと前記生体データとの照合を行うことで認証処理を行う生体認証サーバにおいて実行される生体認証方法であって、
前記認証要求を行ったユーザとは異なるユーザを前記キャッシュ対象ユーザとして決定するサーバキャッシュ決定工程と、
前記キャッシュ対象ユーザの識別子を生成する識別子生成工程と、
前記キャッシュ対象ユーザの生体データおよび前記識別子を前記クライアントに送信する送信工程と、
前記キャッシュ対象ユーザの生体データおよび前記識別子が利用可能であることを判定するキャッシュ利用可否判定工程と、を備えることを特徴とする生体認証方法。
(付記23)
複数の生体データを記憶する記憶部を有するとともに、複数のクライアントとネットワークを介して接続され、ユーザにより前記クライアントを介して認証要求が行われると、前記ユーザより採取された照合用生体データと前記生体データとの照合を行うことで認証処理を行う生体認証サーバにおいて実行される生体認証プログラムであって、
前記認証要求を行ったユーザとは異なるユーザを前記キャッシュ対象ユーザとして決定するサーバキャッシュ決定手段、
前記キャッシュ対象ユーザの識別子を生成する識別子生成手段、
前記キャッシュ対象ユーザの生体データおよび前記識別子を前記クライアントに送信する送信手段、
前記キャッシュ対象ユーザの生体データおよび前記識別子が利用可能であることを判定するキャッシュ利用可否判定手段、として前記生体認証サーバを機能させることを特徴とする生体認証プログラム。
【符号の説明】
【0153】
10a、10b クライアント
11a、11b 生体情報入力部
12a、12b センサ制御部
13a、13a 生体情報取得処理部
14a、14b キャッシュ制御処理部
15a、15b キャッシュデータ記憶部
16a、16b 通信制御部
17a、17b 照合処理部
50 生体認証サーバ
51 生体データ照合処理部
52 運用監視処理部
53 グループ制御処理部
54 サーバキャッシュ制御処理部
55 通信制御部
56 登録データ入出力部
57 登録データ記憶部
58 ログデータ記憶部

【特許請求の範囲】
【請求項1】
複数の生体データを記憶する記憶部を有する生体認証サーバと複数のクライアントとがネットワークを介して互いに接続され、ユーザにより前記クライアントを介して認証要求が行われると、前記ユーザより採取された照合用生体データと前記生体データとの照合を行うことで認証処理を行う生体認証システムにおいて、
前記生体認証サーバは、
前記認証要求を行ったユーザとは異なるユーザをキャッシュ対象ユーザとして決定するサーバキャッシュ決定手段と、
前記キャッシュ対象ユーザを示す識別子を生成する識別子生成手段と、
前記キャッシュ対象ユーザの生体データおよび前記識別子を前記クライアントに送信する送信手段と、
前記キャッシュ対象ユーザの生体データおよび前記識別子が利用可能であることを判定するキャッシュ利用可否判定手段と、を備え、
前記クライアントは、
前記キャッシュ対象ユーザの生体データおよび前記識別子を前記生体認証サーバより受信する受信手段と、
前記生体認証サーバより受信した前記キャッシュ対象ユーザの生体データ及び前記識別子をキャッシュするキャッシュ手段と、を備えることを特徴とする生体認証システム。
【請求項2】
前記生体認証サーバは、前記キャッシュ対象ユーザの生体データを暗号化する暗号化手段を備える請求項1に記載の生体認証システム。
【請求項3】
前記生体認証サーバは、前記認証要求を行ったユーザが所属するグループを識別するグループ識別手段を有し、
前記サーバキャッシュ決定手段は、前記グループに所属するユーザを前記キャッシュ対象ユーザとして決定することを特徴とする請求項1又は2に記載の生体認証システム。
【請求項4】
前記生体認証サーバは、生体データがキャッシュされるクライアントであるキャッシュ先クライアントのユーザのグループに対応して、前記キャッシュ対象ユーザのグループが規定されたグループ識別情報を有し、
前記サーバキャッシュ決定手段は、前記キャッシュ先クライアントのユーザより認証要求が行われると、前記グループ識別情報を基に、前記キャッシュ対象ユーザを決定することを特徴とする請求項3に記載の生体認証システム。
【請求項5】
前記生体認証サーバは、前記クライアントにおける生体データのキャッシュ可否を示すキャッシュ可否属性情報を有し、
前記サーバキャッシュ決定手段は、前記キャッシュ可否属性情報を基に、前記クライアントのキャッシュ可否を判定し、前記クライアントがキャッシュ可能であると判定した場合に、前記キャッシュ対象ユーザを決定することを特徴とする請求項1乃至4のいずれか一項に記載の生体認証システム。
【請求項6】
前記生体認証サーバは、
各ユーザの認証時刻を管理する認証時刻管理手段と、
前記認証時刻を基に、各ユーザの認証要求が集中する時間帯を算出するユーザ時間帯算出手段と、を有し、
前記サーバキャッシュ決定手段は、認証要求が行われた場合において、当該認証要求が行われた時刻の一定時間経過後の時間帯において認証要求が集中するユーザを前記キャッシュ対象ユーザとして決定することを特徴とする請求項1乃至5のいずれか一項に記載の生体認証システム。
【請求項7】
前記生体認証サーバは、
各ユーザの認証成功率を管理する認証率管理手段を有し、
前記サーバキャッシュ決定手段は、前記認証成功率が所定の成功率よりも低いユーザを前記キャッシュ対象ユーザとして決定することを特徴とする請求項1乃至6のいずれか一項に記載の生体認証システム。
【請求項8】
前記クライアントは、
キャッシュされた生体データの利用時間を管理するキャッシュ利用時間管理手段を有し、
前記キャッシュ利用時間管理手段は、生体データがキャッシュされたキャッシュ時刻から利用可能時間が経過した場合には、キャッシュされた生体データを破棄することを特徴とする請求項1乃至7のいずれか一項に記載の生体認証システム。
【請求項9】
複数の生体データを記憶する記憶部を有するとともに、複数のクライアントとネットワークを介して接続され、ユーザにより前記クライアントを介して認証要求が行われると、前記ユーザより採取された照合用生体データと前記生体データとの照合を行うことで認証処理を行う生体認証サーバであって、
前記認証要求を行ったユーザとは異なるユーザを前記キャッシュ対象ユーザとして決定するサーバキャッシュ決定手段と、
前記キャッシュ対象ユーザの識別子を生成する識別子生成手段と、
前記キャッシュ対象ユーザの生体データおよび前記識別子を前記クライアントに送信する送信手段と、
前記キャッシュ対象ユーザの生体データおよび前記識別子が利用可能であることを判定するキャッシュ利用可否判定手段と、を備えることを特徴とする生体認証サーバ。
【請求項10】
複数の生体データを記憶する記憶部を有するとともに、複数のクライアントとネットワークを介して接続され、ユーザにより前記クライアントを介して認証要求が行われると、前記ユーザより採取された照合用生体データと前記生体データとの照合を行うことで認証処理を行う生体認証サーバにおいて実行される生体認証方法であって、
前記認証要求を行ったユーザとは異なるユーザを前記キャッシュ対象ユーザとして決定するサーバキャッシュ決定工程と、
前記キャッシュ対象ユーザの識別子を生成する識別子生成工程と、
前記キャッシュ対象ユーザの生体データおよび前記識別子を前記クライアントに送信する送信工程と、
前記キャッシュ対象ユーザの生体データおよび前記識別子が利用可能であることを判定するキャッシュ利用可否判定工程と、を備えることを特徴とする生体認証方法。
【請求項11】
複数の生体データを記憶する記憶部を有するとともに、複数のクライアントとネットワークを介して接続され、ユーザにより前記クライアントを介して認証要求が行われると、前記ユーザより採取された照合用生体データと前記生体データとの照合を行うことで認証処理を行う生体認証サーバにおいて実行される生体認証プログラムであって、
前記認証要求を行ったユーザとは異なるユーザを前記キャッシュ対象ユーザとして決定するサーバキャッシュ決定手段、
前記キャッシュ対象ユーザの識別子を生成する識別子生成手段、
前記キャッシュ対象ユーザの生体データおよび前記識別子を前記クライアントに送信する送信手段、
前記キャッシュ対象ユーザの生体データおよび前記識別子が利用可能であることを判定するキャッシュ利用可否判定手段、として前記生体認証サーバを機能させることを特徴とする生体認証プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate


【公開番号】特開2012−69025(P2012−69025A)
【公開日】平成24年4月5日(2012.4.5)
【国際特許分類】
【出願番号】特願2010−214695(P2010−214695)
【出願日】平成22年9月27日(2010.9.27)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】