(57)【要約】【課題】セキュリティを向上させた、生体情報に基づき個人認証を行う認証システム、クライアント端末、認証サーバー、端末プログラム及びサーバープログラムを提供すること。【解決手段】クライアント端末１と、認証サーバー５１とを備え、認証サーバー５１が生体認証を行う認証システムであって、クライアント端末１は、一つの生体情報から複数の特徴情報を生成する（Ｓ１０２）。クライアント端末１は、認証用情報を複数の認証用情報ブロックに分ける（Ｓ１０３）。クライアント端末１は、複数の認証用情報ブロックを認証サーバー５１に送信する（Ｓ１０４）。認証サーバー５１は、複数の認証用情報ブロックから認証用復元情報を用いて認証用情報を復元する（Ｓ１１１，Ｓ１１２）。認証サーバー５１は、復元された認証用情報とテンプレートとを比較して、認証結果を算出する（Ｓ１１３）。【選択図】図２
2015022593.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して接続されるクライアント端末と、認証サーバーとを備え、前記クライアント端末から送信される生体情報を表すデータと、予め登録されたデータとを比較して前記認証サーバーが生体認証を行う認証システムであって、
前記クライアント端末は、
一つの生体情報入力装置から一つの生体情報を取得する生体情報取得手段と、
前記生体情報取得手段が取得した前記一つの生体情報から、互いに異なる特性及び互いに異なる認証性能を有するアルゴリズムを用いて特徴を抽出し、抽出した前記特徴に基づき特徴情報を生成する複数の生成手段であって、
前記一つの生体情報から、前記アルゴリズムの一つである第一アルゴリズムを用いて第一特徴を抽出し、抽出した前記第一特徴に基づく第一特徴情報を生成する第一生成手段と、
前記一つの生体情報から、前記アルゴリズムの一つである第二アルゴリズムを用いて第二特徴を抽出し、抽出した前記第二特徴に基づく第二特徴情報を生成する第二生成手段と
を少なくとも含む複数の生成手段と、
前記複数の生成手段の各々によって生成される複数の特徴情報のうちの、生体認証に用いる１以上の特徴情報である認証用情報を、複数の認証用情報ブロックに分ける認証用情報ブロック生成手段と、
前記認証用情報ブロック生成手段によって生成された複数の認証用情報ブロックを前記認証サーバーに送信する情報送信制御手段と
を備え、
前記認証サーバーは、
前記情報送信制御手段から送信された前記複数の認証用情報ブロックを受信する情報受信制御手段と、
前記複数の認証用情報ブロックに基づき前記認証用情報を復元するのに用いられる認証用復元情報を取得する認証用復元情報取得手段と、
前記情報受信制御手段が受信した前記複数の認証用情報ブロックから前記認証用復元情報を用いて前記認証用情報を復元する認証用復元手段と、
前記認証用復元手段によって復元された前記認証用情報と、前記認証用情報に対応する、予め登録された参照用の特徴情報であるテンプレートとを比較して、認証結果を算出する算出手段と
を備えることを特徴とする認証システム。
【請求項２】
前記第一特徴情報は標準化されたデータ構造を用いて第一特徴を表し、
前記第二特徴情報は標準化されていないデータ構造を用いて前記第二特徴を表すことを特徴とする請求項１に記載の認証システム。
【請求項３】
前記クライアント端末は、前記クライアント端末の識別情報、ユーザーの識別情報及び前記生体情報が取得されたことに起因して決まる情報の少なくとも何れかを含む属性情報を取得する属性情報取得手段を更に備え、
前記認証用情報ブロック生成手段は、予め記憶された複数の方法の中から、前記属性情報取得手段によって取得された前記属性情報に基づき一意に定まる方法を用いて、前記認証用情報を、前記複数の認証用情報ブロックに分けることを特徴とする請求項１又は２に記載の認証システム。
【請求項４】
前記クライアント端末は、
前記クライアント端末の識別情報、ユーザーの識別情報及び前記生体情報が取得されたことに起因して決まる情報の少なくとも何れかを含む属性情報を取得する属性情報取得手段と、
前記複数の認証用情報ブロックに含まれる認証用情報ブロックの送信順序を、予め記憶された複数の方法の中から、前記属性情報取得手段によって取得された前記属性情報に基づき一意に定まる方法を用いて決定する送信順序決定手段と
を更に備え、
前記情報送信制御手段は、前記送信順序決定手段で決定された前記送信順序に従って、前記複数の認証用情報ブロックを前記認証サーバーに送信することを特徴とする請求項１又は２に記載の認証システム。
【請求項５】
前記クライアント端末は、前記複数の認証用情報ブロックに含まれる認証用情報ブロックの送信順序を、予め記憶された複数の方法の中から、前記属性情報取得手段によって取得された前記属性情報に基づき一意に定まる方法を用いて決定する送信順序決定手段を更に備え、
前記情報送信制御手段は、前記送信順序決定手段で決定された前記送信順序に従って、前記複数の認証用情報ブロックを前記認証サーバーに送信することを特徴とする請求項３に記載の認証システム。
【請求項６】
前記クライアント端末は、前記属性情報取得手段が取得した前記属性情報を前記認証サーバーに送信する属性情報送信手段を更に備え、
前記認証用復元情報取得手段は、前記クライアント端末から送信された前記属性情報を前記認証用復元情報として取得することを特徴とする請求項３から５の何れかに記載の認証システム。
【請求項７】
前記認証システムは
前記テンプレートを分けて生成された複数の参照用情報ブロックを分散記憶するための複数の記憶サーバーを更に備え、
前記認証サーバーは、
前記複数の参照用情報ブロックに基づき、前記テンプレートを復元するための参照用復元情報を取得する参照用復元情報取得手段と、
前記複数の参照用情報ブロックの各々について、前記参照用情報ブロックを記憶する前記記憶サーバーから前記参照用情報ブロックを取得する参照用情報ブロック取得手段と、
前記参照用情報ブロック取得手段が取得した前記複数の参照用情報ブロックと、前記参照用復元情報とに基づき、前記テンプレートを復元する参照用復元手段とを更に備え、
前記算出手段は、前記認証用復元手段によって復元された前記認証用情報と、前記認証用情報に対応する、前記参照用復元手段によって復元された前記テンプレートとを比較して、前記認証結果を算出することを特徴とする請求項１から６の何れかに記載の認証システム。
【請求項８】
前記認証システムは、
前記テンプレートに対応づけられたユーザーの識別情報に基づき、前記テンプレートを前記複数の参照用情報ブロックに分ける参照用情報ブロック生成手段と、
前記参照用情報ブロック生成手段によって生成された前記複数の参照用情報ブロックの各々に、前記複数の記憶サーバー及び前記認証サーバーのうちの何れかを、当該参照用情報ブロックを記憶するサーバーとして決定するサーバー決定手段と、
前記複数の参照用情報ブロックの各々に、前記サーバー決定手段によって決定された前記サーバーに前記参照用情報ブロックを送信するブロック送信制御手段と
を更に備え、
前記記憶サーバーは、
情報ブロック分散記憶手段と、
前記認証サーバーから前記参照用情報ブロックが送信された場合に、当該参照用情報ブロックを受信するブロック受信制御手段と、
前記ブロック受信制御手段によって受信された前記参照用情報ブロックを前記情報ブロック分散記憶手段に記憶させる記憶制御手段と
を備えることを特徴とする請求項７に記載の認証システム。
【請求項９】
前記複数の生成手段の一部又は全部は、前記生体情報取得手段が取得した前記一つの生体情報から前記生成手段に固有のアルゴリズムを用いて抽出可能な前記特徴の一部を表す特徴情報を生成することを特徴とする請求項１から８の何れかに記載の認証システム。
【請求項１０】
前記クライアント端末は、前記認証結果の要求精度を特定する特定手段を更に備え、
前記複数の生成手段の一部又は全部は、前記生体情報取得手段が取得した前記一つの生体情報から前記生成手段に固有のアルゴリズムを用いて抽出可能な前記特徴のうちの前記要求精度に応じた部分を表す特徴情報を生成することを特徴とする請求項１から９の何れかに記載の認証システム。
【請求項１１】
請求項１から１０の何れかに記載した認証システム内で用いられるクライアント端末の各手段を備えるクライアント端末。
【請求項１２】
請求項１から１０の何れかに記載した認証システム内で用いられる認証サーバーの各手段を備える認証サーバー。
【請求項１３】
請求項１１に記載のクライアント端末の各種処理手段としてコンピューターを機能させるための端末プログラム。
【請求項１４】
請求項１２に記載の認証サーバーの各種処理手段としてコンピューターを機能させるためのサーバープログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、生体情報に基づき個人認証を行う認証システム、クライアント端末、認証サーバー、端末プログラム及びサーバープログラム
【背景技術】
【０００２】
マンション等のドアのオートロック装置、現金自動預け払い機（Ａｕｔｏｍａｔｅｄ  Ｔｅｌｌｅｒ  Ｍａｃｈｉｎｅ）等の各種の機器で、ユーザーを特定するために個人認証技術が利用されている。個人認証技術の分野においては、紛失及び忘失が無く、ユーザーにとって利便性の高いことから、生体情報を用いた認証技術が特に注目を集めている。しかしながら、生体情報を用いた個人認証（生体認証）では、用途により認証・照合精度が十分とは言えない場合がある。
【０００３】
そこで、生体認証の精度を向上するための個人認証技術が各種提案されている。例えば、特許文献１に記載のハイブリッド生体認証装置は、複数の生体認証アルゴリズムを用いたハイブリッド生体認証を用いることで、単一の認証アルゴリズムが用いた場合と比較して認証精度を向上させている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開第２００９／０９６４７５号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
生体情報は、ユーザーの身体的特徴を表す情報であるため、基本的に、取り替えたり変更したりすることができない情報である。このため、上記の特許文献１に記載のハイブリッド生体認証装置の技術を利用したシステムを含む、ネットワークを介して生体情報を表すデータが送信される認証システムには、生体情報がシステムの外部に流出する可能性に対する対策を講じることが要望されている。
【０００６】
本発明は、セキュリティを向上させた、生体情報に基づき個人認証を行う認証システム、クライアント端末、認証サーバー、端末プログラム及びサーバープログラムを提供することである。
【課題を解決するための手段】
【０００７】
本発明の第一態様に係る認証システムは、ネットワークを介して接続されるクライアント端末と、認証サーバーとを備え、前記クライアント端末から送信される生体情報を表すデータと、予め登録されたデータとを比較して前記認証サーバーが生体認証を行う認証システムであって、前記クライアント端末は、一つの生体情報入力装置から一つの生体情報を取得する生体情報取得手段と、前記生体情報取得手段が取得した前記一つの生体情報から、互いに異なる特性及び互いに異なる認証性能を有するアルゴリズムを用いて特徴を抽出し、抽出した前記特徴に基づき特徴情報を生成する複数の生成手段であって、前記一つの生体情報から、前記アルゴリズムの一つである第一アルゴリズムを用いて第一特徴を抽出し、抽出した前記第一特徴に基づく第一特徴情報を生成する第一生成手段と、前記一つの生体情報から、前記アルゴリズムの一つである第二アルゴリズムを用いて第二特徴を抽出し、抽出した前記第二特徴に基づく第二特徴情報を生成する第二生成手段とを少なくとも含む複数の生成手段と、前記複数の生成手段の各々によって生成される複数の特徴情報のうちの、生体認証に用いる１以上の特徴情報である認証用情報を、複数の認証用情報ブロックに分ける認証用情報ブロック生成手段と、前記認証用情報ブロック生成手段によって生成された複数の認証用情報ブロックを前記認証サーバーに送信する情報送信制御手段とを備え、前記認証サーバーは、前記情報送信制御手段から送信された前記複数の認証用情報ブロックを受信する情報受信制御手段と、前記複数の認証用情報ブロックに基づき前記認証用情報を復元するのに用いられる認証用復元情報を取得する認証用復元情報取得手段と、前記情報受信制御手段が受信した前記複数の認証用情報ブロックから前記認証用復元情報を用いて前記認証用情報を復元する認証用復元手段と、前記認証用復元手段によって復元された前記認証用情報と、前記認証用情報に対応する、予め登録された参照用の特徴情報であるテンプレートとを比較して、認証結果を算出する算出手段とを備える。
【０００８】
第一態様に係る認証システムによれば、第一態様に係る認証システムでは、クライアント端末において一つの生体情報に基づき生成された認証用情報は、認証用情報ブロックに分けられた後、認証サーバーに送信される。認証用情報ブロックは、そのままでは認証に用いることができない情報である。このため認証システムは、認証用情報がそのまま認証サーバーに送られる場合に比べ、通信経路において情報が盗まれた場合のセキュリティを向上させることができる。
【０００９】
第二態様に係るクライアント端末は、第一態様に係る認証システム内で用いられるクライアント端末の各手段を備える。第二態様に係るクライアント端末によれば、第一態様の認証システムに係るクライアント端末の各手段としての作用効果を奏することができる。
【００１０】
第三態様に係る認証サーバーは、第一態様に係る認証システム内で用いられる認証サーバーの各手段を備える。第二態様に係る認証サーバーによれば、第一態様に係る認証システムの認証サーバーの各手段としての作用効果を奏することができる。
【００１１】
第四態様に係る端末プログラムは、クライアント端末の各種処理手段としてコンピューターを機能させる。第四態様に係る端末プログラムによれば、コンピューターに実行させることにより第二態様に係るクライアント端末の各種処理手段としての作用効果を奏することができる。
【００１２】
第五態様に係るサーバープログラムは、第三態様の認証サーバーの各種処理手段としてコンピューターを機能させる。第五態様に係る端末プログラムによれば、コンピューターに実行させることにより第三態様に係る認証サーバーの各種処理手段としての作用効果を奏することができる。
【図面の簡単な説明】
【００１３】
【図１】クライアント端末１，認証サーバー５１，及び記憶サーバー５２〜５６を備える認証システム１００の電気的構成を示すブロック図である。
【図２】クライアント端末１，認証サーバー５１，及び記憶サーバー５２〜５６を備える認証システム１００で実行される、認証時の処理の概要を示す図である。
【図３】クライアント端末１，認証サーバー５１，及び記憶サーバー５２〜５６を備える認証システム１００で実行される、登録時の処理の概要を示す図である。
【図４】クライアント端末処理のフローチャートである。
【図５】属性情報９０の説明図である。
【図６】要求精度と、第一特徴情報に含まれる第一特徴の情報量及び第二特徴情報に含まれる特徴情報の情報量との対応を記憶するテーブルの説明図である。
【図７】第一特徴情報２０１、第二特徴情報２０２、第一特徴情報２０１の要約及び第二特徴情報２０２の要約を生成する過程の説明図である。
【図８】第一特徴情報を複数の認証用情報ブロックに分ける処理の概念図である。
【図９】認証用情報ブロックの生成方法を記憶するテーブルの説明図である。
【図１０】複数の認証用情報ブロックの送信順序の決定方法の説明図である。
【図１１】認証サーバー処理のフローチャートである。
【図１２】要約履歴記憶エリア７２の説明図である。
【図１３】情報ブロック記憶エリア７３の説明図である。
【図１４】記憶サーバー処理の説明図である。
【発明を実施するための形態】
【００１４】
以下、本発明の認証システムを具現化した一実施の形態である認証システム１００について、図面を参照して説明する。参照する図面は、本発明が採用し得る技術的特徴を説明するために用いられるものである。図面に記載されている装置の構成、各種処理のフローチャート等は、それのみに限定する趣旨ではなく、単なる説明例である。
【００１５】
１．概要
図１に示すように、認証システム１００は、クライアント端末１，認証サーバー５１及び複数の記憶サーバー５２〜５６を備える。認証システム１００は、クライアント端末１から送信される生体情報を表すデータと、予め登録されたデータとを比較して認証サーバー５１が生体認証を行う。本実施形態の認証システム１００は、認証結果をクライアント端末１に通知する。クライアント端末１は、ネットワーク（図示外）を介して認証サーバー５１と接続する。認証サーバー５１はネットワーク（図示外）を介して、複数の記憶サーバー５２〜５６の各々と接続する。
【００１６】
１−１．認証時の処理の概要
図２に示すように、認証時には、クライアント端末１のプロセッサは、一つの生体情報入力装置から一つの生体情報を取得する（Ｓ１０１）。生体情報とは、生体認証において認証（照合）の基準として用いられるユーザーの身体的特徴を表す情報であり、例えば、ユーザーの音声、虹彩画像、顔画像、指紋画像及び静脈画像等の情報である。本実施形態では、生体情報入力装置の一例として、指紋入力装置３５（図１参照）が採用され、生体情報の一例として指紋画像データが取得される。説明を簡単にするために、本実施形態では、特定の一つの指（例えば、右手の人差し指）の指紋について処理が実行される場合について説明する。
【００１７】
クライアント端末１のプロセッサは、Ｓ１０１で取得した一つの生体情報から、互いに異なる特性及び互いに異なる認証性能を有するアルゴリズムを用いて特徴を抽出し、抽出した特徴に基づき特徴情報を生成する（Ｓ１０２）。より具体的には、ＣＰＵ１０は、互いに異なる特性及び互いに異なる認証性能を有するＭ個（Ｍは複数）のアルゴリズムを用いて、Ｍ個の特徴情報を生成する。クライアント端末１が一つの生体情報から、Ｍ個の特徴情報を抽出するのは、一つの特徴情報に基づき認証を実行する場合に比べ、認証精度を向上させることができるためである（例えば、国際公開第２００９／０９６４７５号参照）。本実施形態では、一例として、Ｍが２であり、第一アルゴリズムがマニューシャ法であり、第二アルゴリズムが周波数解析法である場合について説明する。つまり、本実施形態のクライアント端末１のプロセッサは、一つの生体情報から、第一アルゴリズムを用いて第一特徴を抽出し、抽出した第一特徴に基づく第一特徴情報を生成する。本実施形態のクライアント端末１のプロセッサは、一つの生体情報から、第二アルゴリズムを用いて第二特徴を抽出し、抽出した第二特徴に基づく第二特徴情報を生成する。
【００１８】
マニューシャ法では、指紋画像データに基づき指紋の凸部の連なりである隆線の二つに分かれる分岐点、行き止まりの端点等の特徴点の位置、種類、及び方向、指紋中心座標に関する情報が第一特徴として抽出される。より具体的には、マニューシャ法では、例えば、指紋画像データに基づき、指紋三角州座標、指紋隆線方向等が第一特徴として抽出される。第一特徴情報は標準化されたデータ構造を用いて第一特徴を表す。標準化されたデータ構造とは、公的又は私的機関によって標準の規格等が設定され、それに従って統一して記述されたデータ構造である。標準化されたデータ構造は、広く公開されたデータ構造であるため、データ構造を解析することによって、アルゴリズムを用いて抽出された特徴を特定することが可能である。第一特徴情報は、例えば、ＩＳＯ／ＩＥＣ  １９７９４−２：２０１１及びＡＮＳＩ３７８−２００４で標準化されたデータ構造を用いて表される。
【００１９】
本実施形態では、複数の特徴情報の一部又は全部は、Ｓ１０１で取得された一つの生体情報から固有のアルゴリズムを用いて抽出可能な特徴のうちの、ユーザーにより設定される要求精度に応じた部分を表す。要求精度は、認証結果の精度の指標であり、本実施形態では０〜１００（％）の数値で表される。要求精度が高いほど、認証結果に対する信頼性が高い。本実施形態では第一特徴情報に含まれる第一特徴の量（部分）は、認証結果に求められる要求精度に応じて調整される。
【００２０】
周波数解析法では、指紋画像データによって表される指紋画像の濃淡を信号波形とみなし、波形スペクトル系列が特徴として抽出される。第二特徴情報は標準化されていないデータ構造を用いて第二特徴を表す。標準化されていないデータ構造は、公開されていないデータ構造であるため、データ構造を解析したとしても、データ構造を特定できない限り、アルゴリズムを用いて抽出された特徴を特定することはできない。第二特徴情報は、周波数解析法によって抽出された特徴情報を表す仮第二特徴情報に、第一特徴情報の真偽判定情報が埋め込まれたデータである。真偽判定情報は、認証用情報が改竄されたか否かを判断する処理で用いられる情報である。本実施形態の真偽判定情報は、第一特徴情報のＨＡＳＨ値である。第一特徴情報の場合と同様に、本実施形態では仮第二特徴情報に含まれる第二特徴の量（部分）は、認証結果に求められる要求精度に応じて調整される。
【００２１】
クライアント端末１のプロセッサは、Ｓ１０２で生成した複数の特徴情報のうちの、生体認証に用いる１以上の特徴情報である認証用情報を、複数の認証用情報ブロックに分ける（Ｓ１０３）。本実施形態の認証用情報は、複数の特徴情報すべて、つまり、第一特徴情報及び第二特徴情報である。本実施形態のクライアント端末１のプロセッサは、予め記憶された複数の方法の中から、属性情報に基づき一意に定まる方法を用いて、認証用情報を複数の認証用情報ブロックに分ける。属性情報は、クライアント端末１の識別情報、ユーザーの識別情報及び生体情報が取得されたことに起因して決まる情報の少なくとも何れかを含む情報である。
【００２２】
クライアント端末１のプロセッサは、Ｓ１０２で生成された複数の認証用情報ブロックと、複数の認証用情報ブロックに基づき認証用情報を復元するのに用いられる認証用復元情報とを認証サーバー５１に送信する（Ｓ１０４）。本実施形態のクライアント端末１のプロセッサは、複数の認証用情報ブロックに含まれる認証用情報ブロックの送信順序を、属性情報に基づき一意に定まる順序に決定する。Ｓ１０４では、決定された順序で複数の認証用情報ブロックが送信される。本実施形態では、認証用復元情報として属性情報が送信される。
【００２３】
認証サーバー５１のプロセッサは、クライアント端末１から送信された複数の認証用情報ブロックを受信する（Ｓ１１１）。認証サーバー５１のプロセッサは、Ｓ１１１で受信した複数の認証用情報ブロックから認証用復元情報を用いて認証用情報を復元する（Ｓ１１２）。本実施形態の認証システム１００は、テンプレートを分けて生成された複数の参照用情報ブロックを分散記憶するための複数の記憶サーバー５２〜５６を備える。認証サーバー５１は、複数の参照用情報ブロックに基づき、テンプレートを復元するための参照用復元情報をＨＤＤ６４に記憶する。記憶サーバー５２〜５６は、認証サーバー５１からの要求に応じて、テンプレートを復元するための参照用情報ブロックを認証サーバー５１に送信する。認証サーバー５１は、記憶サーバー５２〜５６から送信された参照用情報部ブロックから参照用復元情報を用いてテンプレートを復元する。本実施形態の参照用復元情報はユーザーの識別情報である。
【００２４】
認証サーバー５１のプロセッサは、復元した認証用情報と、認証用情報に対応する、予め登録されたテンプレートとを比較して、認証結果を算出する（Ｓ１１３）。本実施形態の認証サーバー５１は、特に、通信課程で認証用情報及び参照用の特徴情報であるテンプレートが改竄されていないと判断される場合にのみ、認証用情報と、テンプレートとを比較して、認証結果を算出する。本実施形態の認証サーバー５１のプロセッサは、認証用情報が改竄されているか否かを、２つの判断方法を用いて判断する。１つ目の判断方法は、真偽判定情報を用いた判断方法である。２つ目の判断方法は、認証用情報の要約を記憶した要約履歴を用いた判断方法である。本実施形態では、認証結果として、「本人の確からしさ」を算出する。本人の確からしさとは、本人である可能性を示す信頼度を数値で示すものであり、本実施形態では、０〜１００の数値で表される。本人の確からしさの最高値（１００）は、明らかに本人であると判断される場合である。
【００２５】
本実施形態の認証サーバー５１のプロセッサは、Ｓ１１３で算出した認証結果を、クライアント端末１に送信する。クライアント端末１のプロセッサは、認証サーバー５１から認証結果が送信された場合に、認証結果を受信する。
【００２６】
１−２．登録時の処理の概要
図３において、図２に示す処理と同様の処理には同じステップ番号を付与している。図３に示すように、登録時には、クライアント端末１のプロセッサは、認証時の処理と同様のＳ１０１からＳ１０４の処理を実行する。認証サーバー５１のプロセッサは、認証時の処理と同様のＳ１１１及びＳ１１２の処理を実行した後、登録要件を確認し（Ｓ１１５），登録要件を満たす場合には、Ｓ１１２で復元した認証用情報をテンプレートとして登録する（Ｓ１１６）。本実施形態の登録要件は、過去に同一又は類似の特徴情報が他のユーザーの特徴情報として送信されていないことを含む。また本実施形態では、同一の指紋を複数回（例えば、３〜６回）入力させ、得られた生体情報に基づき生成される特徴情報が所定の範囲に収まることを登録要件としている。本実施形態のテンプレートは、同一の指紋についての複数回分の特徴情報を含む。前述のように本実施形態の認証システム１００では、テンプレートを、認証サーバー５１と、記憶サーバー５２〜５６とに分散させて記憶させている。認証サーバー５１のプロセッサは、テンプレートを複数の参照用情報ブロックに分け、各参照用情報ブロックを記憶するサーバーを決定する。参照用情報ブロックの生成方法は、予め定められればよく、例えば、ユーザーに割り当てられた識別情報から一意に決定される方法が採用されてよい。認証サーバー５１のプロセッサは、各参照用情報ブロックを記憶するサーバーを、認証サーバー５１と、記憶サーバー５２〜５６との中から所定の方法で決定し、決定したサーバーに参照用情報ブロックを記憶させる。本実施形態の認証サーバー５１のプロセッサは、以下の処理を実行する。認証サーバー５１のプロセッサは、テンプレートに対応づけられたユーザーの識別情報に基づき、テンプレートを複数の参照用情報ブロックに分ける。認証サーバー５１のプロセッサは、生成された複数の参照用情報ブロックの各々に、複数の記憶サーバー５２〜５６及び認証サーバー５１のうちの何れかを、当該参照用情報ブロックを記憶するサーバーとして決定する。認証サーバー５１のプロセッサは、複数の参照用情報ブロックの各々を、決定されたサーバーに送信する。
【００２７】
２．認証システム１００の電気的構成
図１を参照して、認証システム１００の電気的構成について説明する。まずクライアント端末１の電気的構成について説明する。本実施形態のクライアント端末１は、汎用のパーソナルコンピューター（ＰＣ）である。クライアント端末１は、ＰＣに限定されず、マンション等のドアのオートロック装置、現金自動預け払い機（ＡＴＭ）、スマートフォン等の携帯電話、及びタブレットＰＣ等であってもよい。図１に示すように、クライアント端末１は、クライアント端末１の制御を司るプロセッサであるＣＰＵ１０を備えている。ＣＰＵ１０には、ＲＯＭ１１，ＲＡＭ１２，ハードディスクドライブ（以下、「ＨＤＤ」という。）１３，及び入出力インターフェース１９が、バス１８を介して接続されている。ＲＯＭ１１は、クライアント端末１を動作させるためのプログラム及び初期値等を記憶している。ＲＡＭ１２は、制御プログラムで用いられる各種の情報を一時的に記憶する。ＨＤＤ１３は、後述のクライアント端末処理を実行するためのプログラム及びユーザー識別情報，クライアント端末１の識別情報を含む各種設定等を記憶する不揮発性の記憶装置である。
【００２８】
入出力インターフェース１９には、映像出力処理部２４，操作部２５，外部通信Ｉ／Ｆ２６，及び指紋入力装置３５が接続されている。映像出力処理部２４は、映像を表示する表示装置３４の動作を処理する。操作部２５は、ユーザーがクライアント端末１に各種指示を入力するために用いられる。操作部２５は、クライアント端末１の外部から入出力インターフェース１９へ接続されるキーボード及びマウス等であってもよい。外部通信Ｉ／Ｆ２６は、クライアント端末１をネットワーク（図示略）に接続する。指紋入力装置３５は、ユーザーの指先から指紋画像を読み取り、指紋画像を表す指紋画像データを入出力インターフェース１９に出力する。指紋入力装置３５の方式としては、特に限定されず、一例として、ライン型指紋センサが用いられる。
【００２９】
認証サーバー５１の電気的構成について説明する。認証サーバー５１は汎用のコンピューター装置である。図１に示すように、認証サーバー５１は、認証サーバー５１の制御を司るＣＰＵ６１を備えている。ＣＰＵ６１には、ＲＯＭ６２，ＲＡＭ６３，ＨＤＤ６４，及び外部通信Ｉ／Ｆ６５が、バス６６を介して接続されている。ＲＯＭ６２は、認証サーバー５１を動作させるためのプログラム及び初期値等を記憶している。ＲＡＭ６３は、プログラ実行時に用いられる各種の情報を一時的に記憶する。外部通信Ｉ／Ｆ６５は、認証サーバー５１をネットワーク（図示略）に接続する。
【００３０】
ＨＤＤ６４は、プログラム記憶エリア７１，要約履歴記憶エリア７２，情報ブロック記憶エリア７３，データテーブル記憶エリア７４，及びその他の記憶エリア７５を備える、プログラム記憶エリア７１は、後述する認証サーバー処理を実行するためのプログラムを含むプログラムが記憶されている。要約履歴記憶エリア７２は、図１２を参照して後述するように、クライアント端末１から送信された認証用情報に含まれる特徴情報に基づき生成される特徴情報の要約と、属性情報とが対応づけて記憶される。属性情報については後述する。情報ブロック記憶エリア７３は、図１３を参照して後述するように、テンプレートの復元に用いられる参照用情報ブロックの１つが、参照用復元情報と対応づけて記憶される。データテーブル記憶エリア７４には、認証用情報ブロック及び参照用情報ブロックを復元するための設定テーブル等の各種設定値が記憶されている。その他の記憶エリア７５には、上記の情報以外の情報が記憶されている。
【００３１】
記憶サーバー５２〜５６の電気的構成について説明する。記憶サーバー５２〜５６の電気的構成は、互いに同様である。一例として、記憶サーバー５２の構成を説明し、記憶サーバー５３〜５６の構成の図示及び説明は省略する。記憶サーバー５２は、認証サーバー５１と同様のＣＰＵ８１，ＲＯＭ８２，ＲＡＭ８３，ＨＤＤ８４，外部通信Ｉ／Ｆ８５が、バス８６を介して接続された構成を有する。ＨＤＤ８４には、プログラム記憶エリア８７及び情報ブロック記憶エリア８８を含む記憶エリアが設けられている。プログラム記憶エリア８７には、後述する記憶サーバー処理を実行するプログラムを含むプログラムが記憶されている。情報ブロック記憶エリア８８は、テンプレートの復元に用いられる参照用情報ブロックが、ユーザーの識別情報とともに記憶されている。
【００３２】
３．クライアント端末処理
認証システム１００で実行される処理について説明する。まず、図４を参照して、クライアント端末１で実行されるクライアント端末処理について説明する。クライアント端末処理は、ユーザーが開始する指示を入力した場合に開始される。クライアント端末１のＣＰＵ１０は、クライアント端末処理の開始指示の入力を検知すると、ＨＤＤ１３に記憶されたクライアント端末処理を実行するためのプログラムをＲＡＭ１２に読み出し、プログラムに含まれる指示に従って、以下に説明する各ステップの処理を実行する。なお本実施形態では、特徴情報を抽出する要件（例えば、画像の鮮明さ）を満たす生体情報が取得されるまで、再入力を促すフィードバック処理が実行される。クライアント端末処理で取得される生体情報は、生体情報からアルゴリズムを用いて特徴情報を抽出する要件を満たすものとする。処理の過程で取得されたり、生成されたりした情報及びデータは、適宜ＲＡＭ１２に記憶されるものとする。以下、ステップを「Ｓ」と略記する。
【００３３】
図４及び図７に示すように、クライアント端末処理では、ＣＰＵ１０は、一つの指紋入力装置３５から一つの生体情報２１１として、指紋画像データを取得する（Ｓ１）。ＣＰＵ１０は、認証結果の要求精度を取得する（Ｓ２）。本実施形態の要求精度は、０〜１００（％）の数値で表され、１００で有る場合に精度が最も高く、０で有る場合が最も精度が低い。後述するように、ＣＰＵ１０は、認証結果の要求精度に応じて、生体情報２１１に基づき生成される特徴情報に含まれる、生体情報２１１から抽出された特徴の情報量を多くする。特徴情報に含まれる特徴の情報量が多いほど、特徴の情報量が少ない場合に比べ、複数の認証用情報ブロックを認証サーバー５１に送信するのに必要な時間が長くなり、且つ、認証に要する時間が長くなる。このため生体情報２１１に基づき生成される認証用情報２００の用途が認証である場合には、本実施形態ではユーザーから要求精度を受け付ける。ユーザーは、例えば、認証用情報２００を表す複数の認証用情報ブロックを認証サーバー５１に送信する際の通信負荷を低減したい場合、及び認証結果を早く得たい場合等に、特徴の情報量を初期の情報量に対して低減させた特徴情報を生成させてもよい。また、ユーザーは、災害時等の通信負荷を減らしたい場合に、特徴の情報量を初期の情報量に対して低減させた特徴情報を生成させてもよい。初期の情報量とは、アルゴリズムを用いて抽出される特徴すべてを含む場合の情報量であり、初期の情報量は調整された情報量よりも多い。本実施形態では、認証用情報２００の用途が登録である場合には、要求精度に１００％が設定される。
【００３４】
ＣＰＵ１０は、属性情報９０を取得する（Ｓ３）。図５に例示するように、本実施形態の属性情報９０は、基本属性情報９１と、付加属性情報９２，９３とを含む。本実施形態の基本属性情報９１は、生体情報２１１を取得した時の時刻情報、生体情報２１１を取得した時の位置情報、クライアント端末１の識別情報、及びユーザーの識別情報を含む。生体情報２１１を取得した時刻情報は、生体情報２１１を取得した日時及び時刻（例えば、２０１３年７月１４日１７時５８分３７秒）であり、図示しない時計から取得される。生体情報２１１を取得した時の位置情報は、例えば、図示しないＧＰＳ装置から取得される緯度及び経度の情報である（例えば、３５．１８０１８８，１３６．９０６５６５）。クライアント端末１の識別情報は、クライアント端末１に固有の情報であればよく、例えば、ＨＤＤ６４に記憶されたクライアント端末１の製造番号、認証システム１００から割り当てられた情報等である（例えば、ＥＶＥ１２３）。クライアント端末１が携帯電話である場合、クライアント端末１の識別情報は、ＳＩＭカードのＩＤであってもよい。ユーザーの識別情報は、ユーザーに固有の情報であればよく、例えば、認証システム１００から割り当てられ、ＨＤＤ６４に記憶された識別情報である（例えば、ＦＡ４５６）。本実施形態の基本属性情報９１のうち、少なくとも時間情報は、取得タイミング毎に値が異なる。
【００３５】
本実施形態の付加属性情報９２は、第一特徴情報２０１のデータサイズ、第二特徴情報２０２のデータサイズ、第一特徴情報２０１の内容フラグ、及び第二特徴情報２０２の内容フラグを含む。付加属性情報９３は、第二特徴情報２０２の真偽判定情報を含む。第一特徴情報２０１の内容フラグ及び第二特徴情報２０２の内容フラグは、Ｓ２で取得された認証結果の要求精度に応じて設定されるフラグである。前述のように本実施形態では、Ｓ２で取得された認証結果の要求精度に応じて、第一特徴情報２０１に含まれる第一特徴の情報量及び第二特徴情報２０２に含まれる第二特徴の情報量を調整している。内容フラグがＯＮである場合、その特徴情報に含まれる情報量は特徴全体を含む初期の情報量よりも少ないことを示している。内容フラグがＯＦＦである場合、その特徴情報に含まれる情報量は初期の情報量であることを示している。
【００３６】
ＣＰＵ１０は、Ｓ１で取得した一つの生体情報２１１から、第一アルゴリズムを用いて第一特徴を抽出し、抽出された第一特徴に基づく第一特徴情報２０１を生成する（Ｓ４）。ＣＰＵ１０は、Ｓ１で取得した指紋画像データに基づき、マニューシャ法のアルゴリズムを用いて第一特徴を抽出する。ＣＰＵ１０はＳ２で取得した要求精度に応じた量の第一特徴を含む第一特徴情報２０１を生成する。本実施形態では図６のように、Ｓ２で取得した要求精度に応じて、第一特徴情報２０１及び第二特徴情報２０２に含まれる特徴の情報量が設定されている。図６において「初期」は初期の情報量、つまりアルゴリズムを用いて生体情報２１１から抽出可能な特徴をすべて含む場合を示す。「調整」は初期の情報量よりも少ない調整された情報量、つまりアルゴリズムを用いて生体情報２１１から抽出可能な特徴の一部を含む場合を示す。例えば、要求精度が１００（％）の場合、ＣＰＵ１０は、初期の情報量の第一特徴を含む第一特徴情報２０１を生成する。調整した情報量の第一特徴を含む第一特徴情報２０１を生成する場合、ＣＰＵ１０は、例えば、特異点を削除する、及びマニューシャ数を減らす等の処理を実行することによって、第一特徴について、初期の情報量から情報量を低減可能である。ＣＰＵ１０は、第一特徴情報２０１に含まれる第一特徴の情報量に応じて、前述の付加属性情報９２に含まれる第一特徴情報２０１の内容フラグにＯＮ又はＯＦＦを設定する。
【００３７】
ＣＰＵ１０は、Ｓ４で生成した第一特徴情報２０１に基づき、真偽判定情報２０５を生成する（Ｓ５）。真偽判定情報２０５は、認証用情報２００の改竄の有無を判断するための情報である。真偽判定情報２０５は、例えば、所定のバイト数を有する、第一特徴情報２０１のＨＡＳＨ値として生成される。
【００３８】
ＣＰＵ１０は、Ｓ１で取得した一つの生体情報２１１から、第二アルゴリズムを用いて第二特徴を抽出し、抽出した第二特徴に基づく仮第二特徴情報２０４を生成する（Ｓ６）。図７に示すように、ＣＰＵ１０は、Ｓ１で取得した指紋画像データに基づき、周波数解析法のアルゴリズムを用いて第二特徴を抽出する。ＣＰＵ１０はＳ２で取得した要求精度に応じた量（部分）の第二特徴を含む仮第二特徴情報２０４を生成する。例えば、要求精度が１００（％）の場合、図６のテーブルに従って、ＣＰＵ１０は、初期の情報量の第二特徴を含む仮第二特徴情報２０４を生成する。調整した情報量の第二特徴を含む仮第二特徴情報２０４を生成する場合、ＣＰＵ１０は、例えば、所定のデータを削除する、及び間引く等の処理を実行することによって、第二特徴について初期の情報量から情報量を低減可能である。ＣＰＵ１０は、仮第二特徴情報２０４に含まれる第二特徴の情報量に応じて、前述の付加属性情報９２に含まれる第二特徴情報２０２の内容フラグにＯＮ又はＯＦＦを設定する。
【００３９】
ＣＰＵ１０は、Ｓ５で生成した真偽判定情報２０５と、Ｓ３で取得した属性情報９０と、Ｓ１６で生成した仮第二特徴情報２０４とに基づき、第二特徴情報２０２を生成する（Ｓ７）。具体的には図７に示すように、ＣＰＵ１０は、真偽判定情報２０５を属性情報９０に基づき一意に定まる方法で、仮第二特徴情報２０４に埋め込む。つまり、第二特徴情報２０２は、真偽判定情報２０５が埋め込まれた仮第二特徴情報２０４である。例えば、ＣＰＵ１０は、仮第二特徴情報２０４のうち、属性情報９０のＨＡＳＨ値に基づき定まる部位に、真偽判定情報２０５を埋め込んでもよい。属性情報９０のＨＡＳＨ値は例えば、属性情報９０のうちの一部又は全部から得られる値のＨＡＳＨ値である。例えば、基本属性情報９１が、例えば、時間情報が２０１３年７月１４日１７時５８分３７秒であり、位置情報が３５．１８０１８８，１３６．９０６５６５であり、クライアント端末１の識別情報がＥＶＥ１２３であり、ユーザーの識別情報がＦＡ４５６である場合、属性情報９０のうちの一部又は全部から得られる値は、数値部分を連結した値、２０１３７１４１７５８３７３５１８０１８８１３６９０６５６５１２３４５６のＨＡＳＨ値である。少なくとも時間情報は、生体情報２１１の取得タイミング毎に異なるので、上記の場合の属性情報９０のうちの一部又は全部から得られる値は、毎回異なる値となる。
【００４０】
ＣＰＵ１０は、Ｓ３で取得した属性情報９０に基づき一意に定まる方法で、複数の特徴情報２０１，２０２のうちの、生体認証に用いる１以上の特徴情報である認証用情報２００を、複数の認証用情報ブロックに分けて、複数の認証用情報ブロックを生成する（Ｓ８）。ＣＰＵ１０は、Ｓ２で取得した要求精度が比較的低い場合には、第一特徴情報２０１及び第二特徴情報２０２の何れか一方のみを認証用情報２００としてもよい。例えば、図６に示す例では、要求精度が６０％以下の場合には、第一特徴情報２０１及び第二特徴情報２０２の何れか一方のみを認証用情報２００としてもよい。
【００４１】
本実施形態では、認証用情報２００を複数の認証用情報ブロックに分ける複数の方法として、１６種類の方法が予めＨＤＤ６４のデータテーブル記憶エリア７４に記憶されている。図８に模式的に示すように、１６種類の方法は、複数の認証用情報ブロックの分け方が互いに異なる。図８では、第一特徴情報２０１を分ける位置と、生成された認証用情報ブロックの数は互いに異なるが、生成された複数の認証用情報ブロックに基づき、第一特徴情報２０１を復元可能であることを模式的に示している。生成される認証用情報ブロックの数は、複数の方法間で同じであってもよいし、異なっていてもよい。認証用情報２００を複数の認証用情報ブロックに分ける方法は、認証用情報２００を分割する位置を指定するものであってもよいし、特徴情報に含まれるデータを、複数の認証用情報ブロックに振り分ける方法であってもよい。複数の方法から、属性情報９０に基づき一意に定める方法は予め定められていればよく、特に限定されない。
【００４２】
例えば、図９に例示するように、１６種類の方法はＩＤで互いに識別される場合を想定する。ＣＰＵ１０は、属性情報に基づき一意に定める方法として、属性情報９０のＨＡＳＨ値の下位４ビットの値をＩＤと定義し、１６種類の方法の中から、用いる方法を決定してもよい。ＩＤが１の方法は、特徴情報に含まれるデータを、複数の認証用情報ブロックに振り分けて、３つの認証用情報ブロックを生成する方法である。具体的には、（３Ｎ＋１）バイト目のデータを、Ｎが小さい順に認証用情報ブロックＡ１に含ませ、（３Ｎ＋２）バイト目のデータを、Ｎが小さい順に認証用情報ブロックＡ２に含ませ、（３Ｎ＋３）バイト目のデータを、Ｎが小さい順に認証用情報ブロックＡ３に含ませる。ただし、Ｎは０以上の整数である。ＩＤが２の方法は、（６Ｎ＋１）バイト目のデータと（６Ｎ＋２）バイト目のデータとを、Ｎが小さい順に認証用情報ブロックＢ１に含ませる。（６Ｎ＋３）バイト目のデータと（６Ｎ＋４）バイト目のデータとを、Ｎが小さい順に認証用情報ブロックＢ２に含ませる。残りをＮが小さい順に認証用情報ブロックＢ３に含ませる。この他、マニューシャ法を用いて生成された第一特徴情報２０１を複数の認証用情報ブロックに分ける方法として、Ｘ成分及びＹ成分の一方を分離する方法、角度を分離方法、特異点の種類によって分離する方法等、データの内容に応じて分割する方法が適用されてもよい。周波数解析法を用いて生成された第二特徴情報２０２を複数の認証用情報ブロックに分ける方法として、所定の部位で分断する方法等が適用されてもよい。
【００４３】
認証用情報２００として、複数の特徴情報が含まれる場合、各特徴情報が複数の認証用情報ブロックに分けられてもよいし、一部の特徴情報が認証用情報ブロックに分けられてもよい。複数の特徴情報の各々を認証用情報ブロックに分ける場合に、複数の特徴情報の各々は、同一の方法を用いて複数の認証用情報ブロックに分けられてもよいし、互いに異なる方法を用いて分けられてもよい。また複数の特徴情報が一旦所定の順序で一つの特徴情報に連結された後、複数の認証用情報ブロックに分けられてもよい。この場合の所定の順序は、例えば、属性情報９０に基づき一意に定まる方法によって決定されてもよい。
【００４４】
ＣＰＵ１０は、Ｓ３で取得した属性情報９０に基づき一意に定まる方法で、複数の認証用情報ブロックの送信順序を決定する（Ｓ９）。属性情報９０に基づき一意に定まる方法は、予め定められた方法であればよい。例えば、以下の順序で決定する。図１０に示すように、第一特徴情報２０１から認証用情報ブロックＡ１，Ａ２及びＡ３が生成され、第二特徴情報２０２から認証用情報ブロックＢ１，Ｂ２及びＢ３が生成された場合を想定する。この場合、ＣＰＵ１０はまず、複数の認証用情報ブロックに識別番号を付与する。例えば、図１０の（１）のように、認証用情報ブロックＡ１，Ａ２，Ａ３，Ｂ１，Ｂ２，及びＢ３に各々、１〜６の識別番号が付与される。ＣＰＵ１０は、Ｓ３で取得した属性情報９０から得られる値のＨＡＳＨ値を認証用情報ブロック数Ｎで割り、（余りの数＋１）番目を最初に送信する認証用情報ブロックの番号とする。図９の例において、ＨＡＳＨ値を６で割った余りが４である場合、ＣＰＵ１０は、識別情報が５の認証用情報ブロックＢ２の送信順序を１にする。次にＣＰＵ１０は、残りの認証用情報ブロックに識別番号を付与し直す。図１０の（２）において、ＣＰＵ１０は、認証用情報ブロックＡ１，Ａ２，Ａ３，Ｂ１，及びＢ３に各々、１〜５の識別番号を付与する。ＣＰＵ１０は、Ｓ３で取得した属性情報９０から得られる値のＨＡＳＨ値を認証用情報ブロック数Ｎで割り、（余りの数＋１）番目を最初に送信する認証用情報ブロックの番号とする。図１０の（２）において、ＨＡＳＨ値を現在の認証用情報ブロックの数５で割った時の余りの数が２である場合、ＣＰＵ１０は認証用情報ブロックＡ３の送信順序を２にする。以下同様の処理を繰り返し、送信順序を決定する。図１０の（６）に示すように、送信順序は、早い順に、認証用情報ブロックＢ２，Ａ３，Ｂ１，Ａ２，Ａ１及びＢ３と決定される。
【００４５】
ＣＰＵ１０は、認証用情報２００の用途が、認証用情報２００の登録であるか否かを判断する（Ｓ１０）。認証用情報２００の用途は、ユーザーによって設定される。用途が登録である場合（Ｓ１０：ＹＥＳ）、登録要求情報を取得する（Ｓ１１）。登録要求情報は、認証用情報２００の登録に必要な情報である。登録要求情報は、例えば、ユーザーの氏名、連絡先の情報等である。登録要求情報が、属性情報９０に含まれる場合には、Ｓ１１の処理は省略されてよい。ＣＰＵ１０は、外部通信Ｉ／Ｆ２６を介して認証サーバー５１に登録要求を送信し、認証サーバー５１との通信を確立する（Ｓ１２）。通信の確立方法は特に限定されない。例えば、図３に示すように、クライアント端末１が登録要求を送信すると、認証サーバー５１は登録要求を受信し、ＡＣＫをクライアント端末１に送信する。このときＡＣＫと共にチャレンジ要求が送信されてもよい。ＣＰＵ１０は、認証サーバー５１からＡＣＫを受信すると、Ｓ３で取得した属性情報９０を認証サーバー５１に送信する（Ｓ１３）。このとき認証サーバー５１からＡＣＫと共にチャレンジ要求が送信されている場合には、属性情報９０とともに、チャレンジ要求に対するレスポンスが送信されてもよい。この場合、認証サーバー５１は属性情報９０及びレスポンスを受信し、レスポンスが所定の値であればＡＣＫをクライアント端末１に送信する。
【００４６】
ＣＰＵ１０は、認証サーバー５１からＡＣＫを受信すると、Ｓ８で生成した複数の認証用情報ブロックをＳ９で決定した順序で認証サーバー５１に送信する（Ｓ１４）。Ｓ１４での送信方法は特に限定されない。例えばＣＰＵ１０は、複数の認証用情報ブロックを連続して送信してもよいし、複数回に分けて送信してもよい。Ｓ１１で登録要求情報が取得されている場合には、Ｓ１４の処理で登録要求情報が認証サーバー５１に送信される。認証サーバー５１は、複数の認証用情報ブロックを受信し、受信した複数の認証用情報ブロックが後述の登録要件を満たさない場合には、同一の指紋を入力することを要求する「入力要求」を登録結果に設定して、クライアント端末１に送信する。この場合ＣＰＵ１０は、登録結果として入力要求を受信し（Ｓ１５：ＹＥＳ）、表示装置３４に「指紋を再度入力してください。」とメッセージを表示させた後、処理をＳ１の処理に戻す。本実施形態の認証システム１００は、登録時には、同一指の指紋を３〜６回入力させ、入力された毎に、認証サーバー５１に認証用情報ブロックを送信して、登録可否の判断を行う。認証サーバー５１は、Ｓ１４で送信された認証用情報ブロックが、登録要件を満たすものである場合には、「登録完了」の登録結果をクライアント端末１に送信する。この場合ＣＰＵ１０は、認証サーバー５１から登録完了の登録結果を受け取り（Ｓ１５：ＮＯ）、表示装置３４に表示させる（Ｓ１６）。認証サーバー５１は、Ｓ１４で送信された認証用情報ブロックに基づき復元された認証用情報２００が改竄されたものと判断される場合には、「登録不可」の登録結果をクライアント端末１に送信する。この場合ＣＰＵ１０は、認証サーバー５１から登録不可の登録結果を受け取り（Ｓ１５：ＮＯ）、表示装置３４に表示させる（Ｓ１６）。Ｓ１６の次にＣＰＵ１０はクライアント端末処理を終了させる。
【００４７】
ＣＰＵ１０は、認証用情報２００の用途が登録ではなく、認証である場合（Ｓ１７：ＹＥＳ）、認証要求情報を取得する（Ｓ１８）。認証要求情報は、ユーザーの識別情報等の認証に必要な情報である。属性情報９０に認証要求情報が含まれる場合には、Ｓ１８の処理は省略されてよい。ＣＰＵ１０は、認証サーバー５１に認証要求を送信して、通信を確立する（Ｓ１９）。通信の確立方法は特に限定されない。例えば、図２に示すように、クライアント端末１が認証要求を送信すると、認証サーバー５１は認証要求を受信し、ＡＣＫをクライアント端末１に送信する。このときＡＣＫと共にチャレンジ要求が送信されてもよい。ＣＰＵ１０は、認証サーバー５１からＡＣＫを受信すると、Ｓ３で取得した属性情報９０を認証サーバー５１に送信する（Ｓ２０）。このとき認証サーバー５１からＡＣＫと共にチャレンジ要求が送信されている場合には、属性情報９０とともに、チャレンジ要求に対するレスポンスが送信されてもよい。この場合、認証サーバー５１は属性情報９０及びレスポンスを受信し、レスポンスが所定の値であればＡＣＫをクライアント端末１に送信する。
【００４８】
ＣＰＵ１０は、認証サーバー５１からＡＣＫを受信すると、Ｓ８で生成した複数の認証用情報ブロックをＳ９で決定した順序で認証サーバー５１に送信する（Ｓ２１）。Ｓ２１での送信方法は特に限定されない。例えばＣＰＵ１０は、複数の認証用情報ブロックを連続して送信してもよいし、複数回に分けて送信してもよい。ＣＰＵ１０は、認証サーバー５１から送信される認証結果を受信するまで待機し（Ｓ２２：ＮＯ）、認証サーバー５１から認証結果から送られた場合には（Ｓ２２：ＹＥＳ）、認証結果を受信し、認証結果を表示装置３４に表示させる（Ｓ２３）。Ｓ２３の次にＣＰＵ１０はクライアント端末処理を終了させる。
【００４９】
ＣＰＵ１０は、認証用情報２００の用途が登録でも認証でもない場合（Ｓ１０：ＮＯ，Ｓ１７：ＮＯ）、用途に応じたその他の処理を実行後（Ｓ２４）、クライアント端末処理を終了させる。
【００５０】
４．認証サーバー処理
次に図１１を参照して、認証サーバー５１で実行される認証サーバー処理について説明する。認証サーバー処理は、認証サーバー５１がクライアント端末１から送信された要求を受信した場合に開始される。認証サーバー５１のＣＰＵ６１は、認証サーバー処理の開始指示の入力を検知すると、ＨＤＤ６４のプログラム記憶エリア７１に記憶された認証サーバー処理を実行するためのプログラムをＲＡＭ６３に読み出し、プログラムに含まれる指示に従って、以下に説明する各ステップの処理を実行する。処理の過程で取得されたり、生成されたりした情報及びデータは、適宜ＲＡＭ６３に記憶されるものとする。認証サーバー５１に要求を送信した新規のユーザーに対しては、認証サーバー５１がユーザーの識別情報を割り当てる処理を実行しているものとする。
【００５１】
図１１に示すように、ＣＰＵ６１は、クライアント端末１から送信された要求が登録要求である場合（Ｓ５１：ＹＥＳ）、クライアント端末１との通信を確立する（Ｓ５２）。通信の確立方法は特に限定されない。例えば、ＣＰＵ６１は、図３を参照して前述のようにクライアント端末１にＡＣＫ等を送信してクライアント端末１との通信を確立させる。ＣＰＵ６１は、クライアント端末１から送信された属性情報９０を受信する（Ｓ５３）。ＣＰＵ６１は、クライアント端末１から送信された認証用情報ブロックを受信する（Ｓ５４）。ＣＰＵ６１は、Ｓ５３で受信した属性情報９０に基づき一意に定まる方法に従って、Ｓ５４で受信した認証用情報ブロックから認証用情報２００を復元する（Ｓ５５）。Ｓ５５の処理における属性情報９０に基づき一意に定まる方法を決定するための設定テーブルは、ＨＤＤ６４のデータテーブル記憶エリア７４に記憶されている。前述の具体例では、Ｓ５３で受信された属性情報９０に基づき認証用情報ブロックの送信順序として図１０の（６）の送信順序が特定される。第一特徴情報２０１から分けられた認証用情報ブロックＡ１，Ａ２及びＡ３が特定され、第二特徴情報２０２から分けられた認証用情報ブロックＢ１，Ｂ２及びＢ３が特定される。図９のＩＤが１である場合の方法に基づき、認証用情報ブロックＡ１，Ａ２及びＡ３から第一特徴情報２０１が復元される。ＩＤが２である場合の方法に基づき、認証用情報ブロックＢ１，Ｂ２及びＢ３から第二特徴情報２０２が復元される。復元された認証用情報２００は、Ｓ６０の処理が実行されるまで、又は所定時間経過するまで、Ｓ５３で受信された属性情報９０と対応づけられて、ＲＡＭ６３に記憶される。
【００５２】
ＣＰＵ６１は、Ｓ５５で復元された認証用情報２００が改竄されているか否かを判断する（Ｓ５６）。Ｓ５６の処理では、ＣＰＵ６１はまず、Ｓ５３で取得された属性情報９０に基づき一意に定まる方法を用いて、Ｓ５５で復元された認証用情報２００に含まれる第二特徴情報２０２から第一特徴情報２０１の真偽判定情報２０５を取り出す。Ｓ５６の処理における属性情報９０に基づき一意に定まる方法を決定するための設定は、ＨＤＤ６４のデータテーブル記憶エリア７４に記憶されている。ＣＰＵ６１は、Ｓ５５で復元した認証用情報２００に含まれる第一特徴情報２０１のＨＡＳＨ値と、取り出した真偽判定情報２０５とが同じであるか否かを判断し（Ｓ５６）、両者が一致しない場合に認証用情報２００が改竄されていると判断する（Ｓ５６：ＹＥＳ）。この場合ＣＰＵ６１は、登録結果に「登録不可」を設定し（Ｓ６５）、登録結果をクライアント端末１に送信する（Ｓ６６）。Ｓ６６の次にＣＰＵ６１は認証サーバー処理を終了させる。なお、本実施形態の属性情報９０は、付加属性情報９３として、第二特徴情報の真偽判定情報を含むので、認証用情報２００に含まれる第二特徴情報２０２と、付加属性情報９３とを比較して、認証用情報２００が改竄されたか否かを判断してもよい。
【００５３】
ＣＰＵ６１は、両者が一致する場合に認証用情報２００が改竄されていないと判断し（Ｓ５６：ＮＯ）、複数の特徴情報の各々について要約を生成し、属性情報９０と対応づけて要約履歴記憶エリア７２に記憶させる（Ｓ５７）。特徴情報の要約は、認証用情報に基づき生成された、特徴情報を反映した情報であって、特徴情報そのものよりもデータサイズが小さい情報である。特徴情報の要約の生成方法は特に限定されない。複数の特徴情報の各々について、同じ生成方法で要約が生成されてもよいし、異なる方法で要約が生成されてもよい。本実施形態の第一特徴情報２０１の要約は、図７に示すように、第一特徴情報２０１にＳＡＬＴ（例えば、ユーザーの識別情報）を付加したデータのＨＡＳＨ値である。第二特徴情報２０２の要約は、第二特徴情報２０２のＨＡＳＨ値である。本実施形態ではＣＰＵ６１は、第一特徴情報２０１及び第二特徴情報２０２の各々について上記の要約を生成する。本実施形態では図１２に示すように、第一特徴情報２０１及び第二特徴情報２０２の要約は、属性情報９０のうちの基本属性情報９１と対応づけて、要約履歴記憶エリア７２に一定期間記憶させている。要約履歴記憶エリア７２に記憶される属性情報９０は、Ｓ５３で取得された属性情報９０の一部であってもよいし、全部であってもよい。一定期間は、要約履歴記憶エリア７２の容量、登録ユーザー数、利用頻度、及び処理時間等を考慮して予め定められればよい。
【００５４】
ＣＰＵ６１は、Ｓ５７で生成した要約が、既にＨＤＤ６４の要約履歴記憶エリア７２に記憶されているか否かを判断する（Ｓ５８）。Ｓ５８は、過去の特徴情報を用いて認証用情報２００が改竄され、過去に認証又は登録を行ったユーザーが他人になりすまして、新たな登録を行った場合を検出するための処理である。通常、同じユーザーであっても全く同一の生体情報２１１が取得されることは想定されないので、特徴情報のＨＡＳＨ値は毎回異なる値となる。Ｓ５７で生成した要約が、既にＨＤＤ６４の要約履歴記憶エリア７２に記憶されているということは、認証用情報２００が改竄され、クライアント端末１のユーザーが不正に認証用情報２００を取得して他人になりすましている可能性が疑われる。本実施形態では、ＣＰＵ６１はＳ５７で認証用情報２００に基づき生成した要約が、既にＨＤＤ６４の要約履歴記憶エリア７２に記憶されている場合（Ｓ５８：ＹＥＳ）、登録結果に「登録不可」を設定し（Ｓ６５）、登録結果をクライアント端末１に送信する（Ｓ６６）。Ｓ６６の次にＣＰＵ６１は認証サーバー処理を終了させる。
【００５５】
ＣＰＵ６１は、Ｓ５７で生成した要約が、ＨＤＤ６４の要約履歴記憶エリア７２に記憶されていない場合（Ｓ５８：ＮＯ）、予め設定された登録要件を満たすか否かを判断する（Ｓ５９）。本実施形態では、登録に必要な量の認証用情報２００を既取得していることが登録要件として設定されている。前述のように、本実施形態の認証サーバー５１は、同一の指紋を入力して得られた複数回分の認証用情報２００をテンプレート３００とする。このため本実施形態では、ＣＰＵ６１は、Ｓ５９ではＲＡＭ６３を参照して、同一の指紋を入力して得られた複数回分の認証用情報２００が取得されているか否かを判断し（Ｓ５９）、取得されていない場合には（Ｓ５９：ＮＯ）、ＣＰＵ６１は、登録結果に「入力要求」を設定し（Ｓ６５）、設定した登録結果をクライアント端末１に送信する（Ｓ６６）。ＣＰＵ６１は以上で認証サーバー処理を終了させる。
【００５６】
同一の指紋を入力して得られた登録用の複数回分の認証用情報２００が取得されている場合には（Ｓ５９：ＹＥＳ）、複数回分の認証用情報２００をテンプレート３００とし、テンプレート３００を複数の参照用情報ブロックに分ける（Ｓ６０）。Ｓ６０の処理ではＣＰＵ６１はまず、指紋を入力したユーザーの識別情報を取得する。ＣＰＵ６１は、登録用の複数回分の認証用情報２００全体を、参照用の特徴情報であるテンプレート３００とする。図７に示すように、本実施形態のテンプレート３００には、参照用の第一特徴情報である参照用第一特徴情報３０１と、参照用の第二特徴情報である参照用第二特徴情報３０２とが複数組含まれる。参照用第二特徴情報３０２は、クライアント端末１から送信された第二特徴情報２０２から第一特徴情報２０１の真偽判定情報２０５が一旦取り出され、ユーザーの識別情報に基づき一意に定まる方法で、仮第二特徴情報２０４に第一特徴情報２０１の真偽判定情報２０５が埋め戻された情報である。ＣＰＵ６１は、テンプレート３００を、ユーザーの識別情報に基づき一意に定まる方法で、複数の参照用情報ブロックに分け、複数の参照用情報ブロックを生成する。例えば、参照用第一特徴情報３０１から参照用情報ブロックＡ１´、Ａ２´，及びＡ３´が生成される。例えば、参照用第二特徴情報３０２から参照用情報ブロックＢ１´、Ｂ２´，及びＢ３´が生成される。テンプレート３００を複数の参照用情報ブロックに分ける方法は特に限定されない。例えば、前述の認証用情報２００を複数の認証用情報ブロックに分ける方法と同様の方法が適用されてもよい。
【００５７】
ＣＰＵ６１は、Ｓ６０で生成した複数の参照用情報ブロックの各々について、認証サーバー５１，及び記憶サーバー５２〜５６の中から、参照用情報ブロックを記憶させるサーバーを決定する（Ｓ６１）。１つのサーバーに記憶される参照用情報ブロックの数は、サーバーの数と、参照用情報ブロックの数とに応じて適宜設定されればよい。テンプレート３００を分散記憶させるという観点からは、参照用情報ブロックは特定のサーバーに偏って記憶されない方が好ましい。Ｓ６１では、予め定められた方法を用いて各参照用情報ブロックを記憶するサーバーが決定されればよい。例えば、ユーザーの識別情報に基づき一意に定まる方法を用いて各参照用情報ブロックを記憶するサーバーが決定されてもよい。他の例では、サーバーの設置場所（国、地域、及び建物等）、性能（セキュリティレベル、処理速度、記憶容量等），参照用情報ブロックが表すテンプレート３００のデータ構造等を勘案して、各参照用情報ブロックを記憶するサーバーが決定されてもよい。より具体的には、標準化されているデータ構造で表される参照用第一特徴情報３０１から生成された参照用情報ブロックＡ１´、Ａ２´，及びＡ３´は、第一国に設置されたサーバーに記憶させてもよい。標準化されていないデータ構造で表される参照用第二特徴情報３０２から生成された参照用情報ブロックＢ１´、Ｂ２´，及びＢ３´は、第二アルゴリズムが開発された第二国に設置されたサーバーに記憶させてもよい。このようにすれば認証システム１００は、第二アルゴリズムが第一国に流出することを回避しつつ、地理的に分散したサーバーにテンプレート３００を分散記憶させることができる。具体例では、認証サーバー５１，及び記憶サーバー５２〜５６の各々に、参照用情報ブロックＢ３´，Ａ３´，Ｂ１´，Ａ２´，Ａ１´，及びＢ２´が割り当てられる。
【００５８】
ＣＰＵ６１は、Ｓ６１で何れかの参照用情報ブロックを記憶するサーバーとして決定された記憶サーバーに記憶要求を送信し、記憶サーバーとの通信を確立させる（Ｓ６２）。通信の確立方法は特に限定されない。具体例では、ＣＰＵ６１は、記憶サーバー５２〜５６の各々と通信を確立し（Ｓ６２）、記憶サーバー５２〜５６の各々に参照用情報ブロックＡ３´，Ｂ１´，Ａ２´，Ａ１´，及びＢ２´とユーザー識別情報とを送信する（Ｓ６３）。後述するように、参照用情報ブロックを受信した記憶サーバーは、参照用情報ブロックと、ユーザーの識別情報とを対応づけて情報ブロック記憶エリア８８に記憶する。
【００５９】
ＣＰＵ６１は、参照用情報ブロックを記憶するサーバーとして認証サーバー５１が決定された参照用情報ブロックＢ３´を、参照用復元情報と対応づけて情報ブロック記憶エリア７３に記憶する（Ｓ６４）。参照用復元情報は、複数の参照用情報ブロックに基づき、テンプレート３００を復元するための情報である。図１３に示すように本実施形態の参照用復元情報は、ユーザーの識別情報である。Ｓ６４の次に、ＣＰＵ６１は登録結果に「登録成功」を設定し（Ｓ６５）、登録結果をクライアント端末１に送信する（Ｓ６６）。ＣＰＵ６１は以上で認証サーバー処理を終了させる。
【００６０】
クライアント端末１から送信された要求が、認証要求である場合（Ｓ５１：ＮＯ，Ｓ７１：ＹＥＳ）、ＣＰＵ６１は、Ｓ５２からＳ５８と同様に、Ｓ７２からＳ７８の処理を実行する。ＣＰＵ６１は、Ｓ７３において属性情報９０に含まれるユーザーの識別情報を参照用復元情報として取得する。ＣＰＵ６１は、Ｓ７３において属性情報９０に含まれる基本属性情報９１を認証用復元情報として取得する。Ｓ７６において認証用情報２００が改竄されていると判断された場合（Ｓ７６：ＹＥＳ）、ＣＰＵ６１は、認証結果に「０％」を設定し（Ｓ８４）、認証結果をクライアント端末１に送信する（Ｓ８５）。同様に、Ｓ７７で生成された要約が要約履歴記憶エリア７２に記憶されている場合には（Ｓ７８：ＹＥＳ）、ＣＰＵ６１は、認証結果に「０％」を設定し（Ｓ８４）、後述のＳ８５及びＳ８６の処理を実行後、認証サーバー処理を終了させる。
【００６１】
Ｓ７７で生成された要約が要約履歴記憶エリア７２に記憶されていない場合には（Ｓ７８：ＮＯ）、ＣＰＵ６１は参照用情報ブロック送信要求を記憶サーバー５２〜５６に送信し、各記憶サーバーとの通信を確立する（Ｓ７９）。通信の確立方法は特に限定されない。参照用情報ブロック送信要求は、認証サーバー５１が受信した認証要求に含まれるユーザーの識別情報に対応する参照用情報ブロックを認証サーバー５１に送信することを記憶サーバーに要求するものである。後述するように、参照用情報ブロック送信要求を受信した記憶サーバーは、参照用情報ブロック送信要求に含まれるユーザーの識別情報に対応する参照用情報ブロックを認証サーバー５１に送信する。ＣＰＵ６１は、記憶サーバー５２〜５６の各々から送信された参照用情報ブロックＡ３´，Ｂ１´，Ａ２´，Ａ１´，及びＢ２´を受信する（Ｓ８０）。
【００６２】
ＣＰＵ６１は、Ｓ８０で受信した参照用情報ブロックＡ３´，Ｂ１´，Ａ２´，Ａ１´，及びＢ２´、及びＨＤＤ６４の情報ブロック記憶エリア７３に記憶されている参照用情報ブロックＢ３´からＨＤＤ８４に記憶された参照用復元情報に基づき、テンプレート３００を復元する（Ｓ８１）。ＣＰＵ６１はユーザーの識別情報に基づき一意に定まる方法を用いて、各サーバーに記憶された参照用情報ブロックを特定する。特定された参照用情報ブロックＡ１´，Ａ２´及びＡ３´に基づき参照用第一特徴情報３０１が復元され、参照用情報ブロックＢ１´，Ｂ２´及びＢ３´に基づき参照用第二特徴情報３０２が復元される。
【００６３】
ＣＰＵ６１は、復元されたテンプレート３００についてＳ５６と同様の処理によって、テンプレート３００が改竄されたか否かを判断する（Ｓ８２）。Ｓ８２の処理では、ＣＰＵ６１はまず、ユーザーの識別情報に基づき一意に定まる方法を用いて、Ｓ８１で復元されたテンプレート３００に含まれる参照用第二特徴情報３０２から参照用第一特徴情報３０１の真偽判定情報を取り出す。Ｓ８２の処理におけるユーザーの識別情報に基づき一意に定まる方法を決定するための設定は、ＨＤＤ６４のデータテーブル記憶エリア７４に記憶されている。ＣＰＵ６１は、Ｓ８１で復元したテンプレート３００に含まれる参照用第一特徴情報３０１のＨＡＳＨ値と、取り出した真偽判定情報とが同じであるか否かを判断し（Ｓ５６）、両者が一致しない場合にテンプレート３００が改竄されていると判断する。テンプレート３００が改竄されている場合（Ｓ８２：ＹＥＳ）、ＣＰＵ６１は認証結果に「認証失敗」を設定し（Ｓ８４）、後述のＳ８５及びＳ８６の処理を実行後、認証サーバー処理を終了させる。
【００６４】
テンプレート３００が改竄されていない場合（Ｓ８２：ＮＯ）、ＣＰＵ６１は、Ｓ７５で復元した認証用情報２００と、Ｓ８１で復元したテンプレート３００とを比較して認証結果を算出する（Ｓ８３）。図７に示すように、ＣＰＵ６１は、第一特徴情報２０１と、参照用第一特徴情報３０１とを比較する。より具体的には、第一特徴情報２０１及び参照用第一特徴情報３０１の各特徴がどの程度一致しているかが各々の特徴について比較され、指紋全体で一致している割合等が第一類似度として数値化される。例えば、指紋の分岐点及び端点等の特徴点の位置が一致している個数を特徴点の個数で除すことにより計算した一致割合（０〜１００％）が第一類似度として数値化される。
【００６５】
同様にＣＰＵ６１は、仮第二特徴情報２０４と、参照用第二特徴情報３０２から真偽判定情報を取り除いた情報である参照用仮第二特徴情報３０４とを比較する。具体的には、仮第二特徴情報２０４及び参照用仮第二特徴情報３０４の特徴がどの程度一致しているかをＤＰ（Ｄｙｎａｍｉｃ  Ｐｒｏｇｒａｍｍｉｎｇ）マッチングが用いられることにより、各ラインの波形スペクトル系列を縦方向（各ライン）の位置ずれが考慮されながら比較されて、似ている（一致している）度合いが、例えば０〜１０００の値で第二類似度として数値化される。ＣＰＵ６１は、各特徴情報に基づき判断された類似度を用いて、複数の特徴情報に基づき総合的に判断される総合類似度を認証結果（本人の確からしさ）として算出する。本実施形態ではＣＰＵ６１は、公知の方法（例えば、国際公開第２００９／０９６４７５号参照）に従って第一類似度及び第二類似度を用いて、総合類似度を算出する。
【００６６】
ＣＰＵ６１は、Ｓ８３の算出結果を認証結果に設定し（Ｓ８４）、認証結果をクライアント端末１に送信する（Ｓ８５）。ＣＰＵ６１は、Ｓ７４で受信した認証用情報ブロック、Ｓ７５で復元した認証用情報２００、Ｓ８０で記憶サーバー５２〜５６から取得した参照用情報ブロック及びＳ８１で復元したテンプレート３００をＲＡＭ６３から削除した後（Ｓ８６）、認証サーバー処理を終了させる。
【００６７】
クライアント端末１から送信された要求が、登録要求でも認証要求でもない場合（Ｓ５１：ＮＯ，Ｓ７１：ＮＯ）、ＣＰＵ６１は、受信した要求に応じたその他の処理を実行した後（Ｓ８８）、認証サーバー処理を終了させる。
【００６８】
５．記憶サーバー処理
次に図１４を参照して、記憶サーバー５２〜５６の各々で実行される記憶サーバー処理について説明する。一例として記憶サーバー５２において、記憶サーバー処理が実行される場合について説明する。記憶サーバー処理は、記憶サーバー５２が認証サーバー５１から送信された要求を受信した場合に開始される。記憶サーバー５２のＣＰＵ８１は、記憶サーバー処理の開始指示の入力を検知すると、ＨＤＤ８４のプログラム記憶エリア８７に記憶された記憶サーバー処理を実行するためのプログラムをＲＡＭ８３に読み出し、プログラムに含まれる指示に従って、以下に説明する各ステップの処理を実行する。処理の過程で取得されたり、生成されたりした情報及びデータは、適宜ＲＡＭ８３に記憶されるものとする。
【００６９】
図１４に示すように、ＣＰＵ８１は認証サーバー５１から送信された要求が記憶要求である場合（Ｓ９１：ＹＥＳ）、認証サーバー５１との通信を確立する（Ｓ９２）。通信の確立方法は特に限定されない。ＣＰＵ８１は、認証サーバー５１から送信される参照用情報ブロックと、ユーザーの識別情報とを受信し（Ｓ９３）、両者を対応づけてＨＤＤ８４の情報ブロック記憶エリア８８に記憶する（Ｓ９４）。Ｓ９４の次にＣＰＵ８１は記憶サーバー処理を終了させる。
【００７０】
認証サーバー５１から送信された要求が送信要求である場合（Ｓ９１：ＮＯ，Ｓ９５：ＹＥＳ）、ＣＰＵ８１は認証サーバー５１との通信を確立する（Ｓ９６）。通信の確立方法は特に限定されない。ＣＰＵ８１は、送信要求に含まれるユーザーの識別情報に対応する参照用情報ブロックを特定し（Ｓ９７）、特定した参照用情報ブロックを、記憶サーバー５２の識別情報と対応づけて、認証サーバー５１に送信する（Ｓ９８）。ＣＰＵ８１は以上で記憶サーバー処理を終了させる。認証サーバー５１から送信された要求が記憶要求でも、送信要求でもない場合（Ｓ９１：ＮＯ，Ｓ９５：ＮＯ）、ＣＰＵ８１は要求に応じたその他の処理を実行した後（Ｓ９９）、記憶サーバー処理を終了させる。
【００７１】
上記実施形態の認証システム１００において、図４のＳ１の処理を実行するＣＰＵ１０は、本発明の生体情報取得手段として機能する。Ｓ２の処理を実行するＣＰＵ１０は本発明の特定手段として機能する。Ｓ３の処理を実行するＣＰＵ１０は、本発明の属性情報取得手段として機能する。Ｓ４の処理を実行するＣＰＵ１０は、本発明の第一生成手段として機能する。Ｓ７の処理を実行するＣＰＵ１０は、本発明の第二生成手段として機能する。つまり、Ｓ４及びＳ７の処理を実行するＣＰＵ１０は、複数の生成手段として機能する。Ｓ８の処理を実行するＣＰＵ１０は、本発明の認証用情報ブロック生成手段として機能する。Ｓ９の処理を実行するＣＰＵ１０は、本発明の送信順序決定手段として機能する。Ｓ２０の処理を実行するＣＰＵ１０は本発明の属性情報送信手段として機能する。Ｓ２１の処理を実行するＣＰＵ１０は、本発明の情報送信制御手段として機能する。図１１のＳ７４の処理を実行するＣＰＵ６１は、本発明の情報受信制御手段として機能する。Ｓ７３の処理を実行するＣＰＵ６１は、本発明の認証用復元情報取得手段及び参照用復元情報取得手段として機能する。Ｓ７５の処理を実行するＣＰＵ６１は、本発明の認証用復元手段として機能する。Ｓ８３の処理を実行するＣＰＵ６１は、本発明の算出手段として機能する。Ｓ８０の処理を実行するＣＰＵ６１は、本発明の参照用情報ブロック取得手段として機能する。Ｓ８１の処理を実行するＣＰＵ６１は、本発明の参照用復元手段として機能する。Ｓ６０の処理を実行するＣＰＵ６１は、本発明の参照用情報ブロック生成手段として機能する。Ｓ６１の処理を実行するＣＰＵ６１は、本発明のサーバー決定手段として機能する。Ｓ６３の処理を実行するＣＰＵ６１は、本発明のブロック送信制御手段として機能する。図１４のＳ９３を実行するＣＰＵ８１は、本発明のブロック受信制御手段として機能する。Ｓ９４の処理を実行するＣＰＵ８１は本発明の記憶制御手段として機能する。ＨＤＤ８４は、本発明の情報ブロック分散記憶手段に相当する。
【００７２】
認証システム１００によれば、クライアント端末１において一つの生体情報２１１に基づき生成された認証用情報２００は、認証用情報ブロックに分けられた後、認証サーバー５１に送信される。認証用情報ブロックは、そのままでは認証に用いることができない情報である。このため認証システム１００は、認証用情報２００がそのまま認証サーバー５１に送られる場合に比べ、通信経路において情報が盗まれた場合のセキュリティを向上させることができる。
【００７３】
認証システム１００では、複数の特徴情報として、第一特徴情報２０１と、第二特徴情報２０２とを用いる。第一特徴情報２０１は、標準化されたデータ構造を用いて第一特徴を表す。第二特徴情報２０２は、標準化されていないデータ構造で第二特徴を表す。認証システム１００で生成される複数の認証用情報ブロック全体には、標準化されたデータ構造のデータと、標準化されていないデータ構造のデータとの双方が混在している。このため、認証システム１００は、標準化されたデータ構造のデータで表された特徴情報のみを用いて、複数の認証用情報ブロックが生成される場合に比べ、認証用情報ブロックから認証用情報２００を特定しにくい。このため認証システム１００は、通信経路において情報が盗まれた場合のセキュリティを更に向上させることができる。
【００７４】
本実施形態では特に、仮第二特徴情報２０４に、第一特徴情報２０１の真偽判定情報２０５が、属性情報９０に基づき一意に定まる方法を用いて埋め込まれて第二特徴情報２０２が生成される。仮第二特徴情報２０４は標準化されていないデータ構造を有するので、第二特徴情報２０２のデータから、真偽判定情報２０５がどこに埋め込まれているかを特定することは極めて困難である。このため認証システム１００では、真偽判定情報２０５の改竄が比較的容易である場合に比べ、認証用情報２００の改竄を精度よく検出することが可能である。認証システム１００は、第一特徴情報２０１のＨＡＳＨ値と、真偽判定情報２０５との比較結果から、第一特徴情報２０１が改竄された場合と、真偽判定情報２０５が改竄された場合との双方を検出可能である。
【００７５】
本実施形態のクライアント端末１のＣＰＵ１０は、属性情報９０に基づき一意に定まる方法を用いて、認証用情報２００を、複数の認証用情報ブロックに分ける。このため認証システム１００は、処理実行毎に同一の方法を用いて認証用情報ブロックが生成される場合に比べ、複数の認証用情報ブロックから認証用情報２００が特定されにくい。したがって、認証システム１００は、通信経路において情報が盗まれた場合のセキュリティを更に向上させることができる。特に複数の認証用情報ブロックに分け方を決定する際に、属性情報９０として処理実行毎に異なる値となる情報（例えば、時間情報）が含まれることが好ましい。このようにすれば、同じユーザーから取得された認証用情報２００であっても、処理実行毎に異なる分け方で複数の認証用情報ブロックが生成されるためである。
【００７６】
クライアント端末１のＣＰＵ１０は、複数の認証用情報ブロックの送信順序を属性情報９０に基づき決定する。このため認証システム１００は、処理実行毎に同一の順序で認証用情報ブロックが送信される場合に比べ、複数の認証用情報ブロックから認証用情報２００が特定されにくい。したがって、認証システム１００は、通信経路において情報が盗まれた場合のセキュリティを更に向上させることができる。複数の認証用情報ブロックの送信順序を決定する際に、属性情報９０として処理実行毎に異なる値となる情報（例えば、時間情報）が含まれることが好ましい。このようにすれば、同じユーザーから取得された認証用情報２００であっても、処理実行毎に異なる順序で複数の認証用情報ブロックが認証サーバー５１に送信されるためである。
【００７７】
本実施形態の認証システム１００では、属性情報９０を認証用復元情報とするので、属性情報９０と認証用復元情報とが別々に設定、取得される場合に比べ、処理を簡略化したり、情報の管理を容易にしたりすることができる。
【００７８】
本実施形態の認証システム１００は、複数の記憶サーバー５２〜５６に、テンプレート３００を分散記憶する。このため、１つの装置にテンプレート３００が記憶されている場合に比べ、テンプレート３００が外部に流出する可能性を低減させることができる。認証システム１００は、テンプレート３００を複数の参照用情報ブロックに分けて、認証サーバー５１及び記憶サーバー５２〜５６の何れかに記憶する。参照用情報ブロックが、単純に、テンプレート３００を分割して生成された情報ではなく、図９に例示する方法のようにデータを分配して生成された情報である場合、１つの参照用情報ブロックが流出されたとしても、参照用情報ブロックから生体情報を表す情報を抽出できない。このため、認証システム１００は、通信経路において情報が盗まれたり、サーバーから情報が盗まれたりした場合のセキュリティを更に向上させることができる。
【００７９】
本実施形態のテンプレート３００は、参照用第一特徴情報３０１と，参照用第二特徴情報３０２とを含む。参照用第二特徴情報３０２には参照用第一特徴情報３０１から生成した真偽判定情報が含まれている。このため、記憶サーバー５２〜５６から認証サーバー５１に参照用情報ブロックが送信される通信経路上での改竄の有無を検出可能である。
【００８０】
本実施形態の認証システム１００は、ユーザーから認証結果に対する要求精度を受け付け、要求精度に応じた第一特徴情報２０１及び第二特徴情報２０２を生成する。このため認証システム１００は、毎回同じ特徴を含む特徴情報が送信される場合に比べ、サーバーから情報が盗まれたりした場合のセキュリティを更に向上させることができる。例えば、要求精度が比較的低い場合には、一部の特徴を表す特徴情報を送信しないことによって、すべての特徴を表す特徴情報が盗まれることを回避することができる。またユーザーは、要求精度を適宜設定することによって、処理時間を短縮したり、通信負荷を低減させたりすることが可能である。
【００８１】
本発明の認証システム１００は、上記した実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更が加えられてもよい。例えば、以下の（Ａ）から（Ｃ）までの変形が適宜加えられてもよい。
【００８２】
（Ａ）認証システムは、少なくとも１つのクライアント端末及び少なくとも１つの認証サーバーを備えればよい。認証システムに含まれるクライアント端末の数、構成は適宜変更されてよい。認証システムに含まれる認証サーバーの数、構成は適宜変更されてよい。認証システムに含まれる記憶サーバーの数、構成は適宜変更されてよい。記憶サーバーは必要に応じて省略されてよい。生体情報入力装置は、生体情報に応じて適宜変更されてよい。記憶機器は特に限定されず、ＨＤＤの代わりに、ＳＳＤ，フラッシュＲＯＭ又はメモリカード等の記憶機器が用いられてもよい。
【００８３】
（Ｂ）図４のクライアント端末処理を実行させるための指令を含むプログラム及びデータは、クライアント端末１がプログラムを実行するまでに、クライアント端末１が備える記憶機器に記憶されればよい。図１１の認証サーバー処理を実行させるための指令を含むプログラム及びデータは、認証サーバー５１がプログラムを実行するまでに、認証サーバー５１が備える記憶機器に記憶されればよい。図１４の記憶サーバー処理を実行させるための指令を含むプログラム及びデータは、記憶サーバー５２〜５６の各々がプログラムを実行するまでに、記憶サーバー５２〜５６の各々が備える記憶機器に記憶されればよい。したがって、プログラム及びデータの取得方法、取得経路及びプログラムを記憶する機器の各々は適宜変更されてよい。クライアント端末１，認証サーバー５１及び記憶サーバー５２〜５６が備えるプロセッサが実行するプログラム及びデータは、ケーブル又は無線通信を介して、他の装置から受信し、フラッシュメモリ等の記憶装置に記憶されてもよい。他の装置は、例えば、ＰＣ，及びネットワーク網を介して接続されるサーバーを含む。
【００８４】
（Ｃ）図４のクライアント端末処理の各ステップは、ＣＰＵ１０によって実行される例に限定されず、一部又は全部が他の電子機器（例えば、ＡＳＩＣ）によって実行されてもよい。また、上記クライアント端末処理の各ステップは、複数の電子機器（例えば、複数のＣＰＵ）によって分散処理されてもよい。図１１の認証サーバー処理の各ステップは、ＣＰＵ６１によって実行される例に限定されず、一部又は全部が他の電子機器（例えば、ＡＳＩＣ）によって実行されてもよい。また、上記認証サーバー処理の各ステップは、複数の電子機器（例えば、複数のＣＰＵ）によって分散処理されてもよい図１４の記憶サーバー処理の各ステップは、ＣＰＵ６１によって実行される例に限定されず、一部又は全部が他の電子機器（例えば、ＡＳＩＣ）によって実行されてもよい。また、上記図１４の記憶サーバー処理の各ステップは、複数の電子機器（例えば、複数のＣＰＵ）によって分散処理されてもよい。また上記実施形態のクライアント端末処理、認証サーバー処理、及び記憶サーバー処理の各ステップは、必要に応じて順序の変更、ステップの省略、及び追加が可能である。更に、クライアント端末１が備えるＣＰＵ１０からの指令に基づき、クライアント端末１上で稼動しているオペレーティングシステム（ＯＳ）等が実際の処理の一部又は全部を行い、その処理によって上記実施形態の機能が実現される場合も本発明の範囲に含まれる。同様に、認証サーバー５１が備えるＣＰＵ６１からの指令に基づき、認証サーバー５１上で稼動しているＯＳ等が実際の処理の一部又は全部を行い、その処理によって上記実施形態の機能が実現される場合も本発明の範囲に含まれる。記憶サーバー５２〜５６が備えるＣＰＵ８１からの指令に基づき、記憶サーバー５２〜５６上で稼動しているＯＳ等が実際の処理の一部又は全部を行い、その処理によって上記実施形態の機能が実現される場合も本発明の範囲に含まれる。例えば、以下の（Ｃ−１）から（Ｃ−６）の変形が適宜加えられてもよい。
【００８５】
（Ｃ−１）一つの生体情報２１１から特徴情報を生成するためのアルゴリズムは、互いに異なる複数のアルゴリズムであればよい。アルゴリズムの数は３以上であってもよい。属性情報９０等の情報に基づき、複数の互いに異なるアルゴリズムの中から選択された一部の複数のアルゴリズムを用いて複数の特徴情報が生成されてもよい。このようにすれば、どのアルゴリズムを用いて生体情報２１１から特徴を抽出しているかが送信毎に一定ではないので、認証システム１００は、通信経路において情報が盗まれた場合のセキュリティを更に向上させることができる。複数の特徴情報の各々は、標準化されたデータ構造を用いて特徴を表してもよいし、標準化されていないデータ構造を用いて特徴を表してもよい。生体情報２１１が指紋画像データである場合、複数の指（例えば、右手の人差し指及び中指）の指紋について処理が実行されてもよい。この場合、認証結果は、複数の指の各々についての類似度を総合的に勘案して認証結果が算出されてもよい。
【００８６】
（Ｃ−２）認証用情報２００を複数の認証用情報ブロックに分ける方法は特に限定されない。認証用情報２００を複数の認証用情報ブロックに分ける方法は、毎回同じ方法であってもよい。このようにすれば、属性情報９０を取得したり、認証用情報２００を認証用情報ブロックに分ける方法を決定したりする処理を省略できる。複数の特徴情報の中から一部の特徴情報が認証用情報２００として選択されてもよい。このようにすれば、認証用情報２００に含まれる特徴情報が送信毎に一定ではないので、認証システム１００は、通信経路において情報が盗まれた場合のセキュリティを更に向上させることができる。複数の認証用情報ブロックの送信順序の決定方法は特に限定されない。複数の認証用情報ブロックの送信順序の決定方法は、毎回同じ方法であってもよい。このようにすれば、属性情報９０を取得したり、送信順序を決定したりする処理を省略できる。属性情報９０を用いて、複数の認証用情報ブロックに分ける方法を決定したり、認証用情報ブロックの送信順序を決定したりする場合の属性情報は、上記実施形態に限定されず、適宜変更されてよい。
【００８７】
複数の認証用情報ブロックには、認証用情報２００以外の情報が含まれていてもよい。例えば認証システム１００では、情報量が調整された特徴を表す特徴情報と、情報量が調整されていない初期の特徴を表す特徴情報とでは、生成される要約が異なる。このため、要約履歴記憶エリア７２に記憶される特徴情報の要約を、情報量が調整されていない初期の特徴を表す特徴情報の要約に統一するために、情報量が調整された特徴を表す特徴情報が認証用情報２００とされる場合には、以下のようにしてもよい。すなわち、クライアント端末１のプロセッサは、情報量が調整されていない初期の特徴を表す特徴情報の要約を生成し、認証サーバー５１に送信する。クライアント端末１のプロセッサは、情報量が調整されていない初期の特徴を表す特徴情報の要約を、認証用情報ブロックとは別に送信してもよいし、認証用情報ブロックに含ませて送信してもよい。つまり、情報量が調整された特徴を表す特徴情報と、情報量が調整されていない初期の特徴を表す特徴情報の要約とを連結させた状態で、認証用情報ブロックが生成されてもよい。
【００８８】
（Ｃ−３）認証用情報ブロックから認証用復元情報を用いて認証用情報２００を復元する方法は特に限定されない。認証用復元情報はクライアント端末１から送信される属性情報９０以外の情報であってもよい。例えば、生体情報２１１を取得した日時に基づき決定される方法で、複数の認証用情報ブロックが生成され、生体情報２１１を取得した日付（年月日）に基づき決定される順序で複数の認証用情報ブロックが送信される場合を想定する。この場合認証サーバー５１が複数の認証用情報ブロックを受信した日時を、生体情報２１１を取得した日付を認証用復元情報としてもよい。
【００８９】
（Ｃ−４）認証システム１００は、複数の特徴情報に対応する複数の参照用特徴情報（例えば、参照用第一特徴情報３０１及び参照用第二特徴情報３０２）を、互いに異なるサーバーに記憶させてもよい。このようにすれば認証システム１００は、一つのサーバーにテンプレート３００が記憶される場合に比べ、テンプレート３００が流出する可能性を低減することができ、複数の参照用情報ブロックからテンプレート３００を復元するための処理を省略できる。認証システム１００は、記憶サーバーを有さず、認証サーバー５１内でテンプレート３００を記憶させてもよい。テンプレートが改竄されたか否かを判断するＳ８２の処理は適宜省略されてよい。
【００９０】
（Ｃ−５）認証システム１００は、ユーザーから認証結果の要求精度を受け付けなくてもよい。このようにすれば認証システム１００は、要求精度が設定されたか否かに関わる処理を省略でき、処理を単純化できる。要求精度は、認証用情報のデータサイズ、処理時間等の認証精度に関わる他のパラメーターによって指定されてもよい。
【００９１】
（Ｃ−６）認証システム１００は、認証結果として、要約履歴記憶エリア７２に記憶された属性情報９０を勘案した本人の確からしさを算出してもよい。例えば同一のクライアント端末１から、同じような時刻、同じような位置から送信された同一のユーザーの生体情報２１１に基づく認証用情報２００が認証サーバー５１に送信された場合、要約履歴記憶エリア７２に記憶された属性情報９０に基づき、ユーザー本人である可能性が高いと判断される。このような場合認証サーバー５１のＣＰＵ６１は、特徴情報に基づき算出された本人の確からしさの値に所定値を加算してもよい。逆に、例えば同一のクライアント端末１から、いつもとは著しく異なる時刻、いつもとは著しく異なる位置から送信された同一のユーザーの生体情報２１１に基づく認証用情報２００が認証サーバー５１に送信された場合、要約履歴記憶エリア７２に記憶された属性情報９０に基づき、ユーザー本人ではない可能性が疑われる。このような場合認証サーバー５１のＣＰＵ６１は、特徴情報に基づき算出された本人の確からしさの値から所定値を減算してもよい。このようにした場合、認証サーバー５１は、属性情報９０を加味して本人の確からしさを求めることができ、本人の確からしさに対する信頼性を高めることができる。認証サーバー５１のＣＰＵ６１は、認証用情報２００及びテンプレート３００の少なくとも何れかが改竄されたか否かによらず、認証結果を算出してもよい。認証サーバー５１のＣＰＵ６１は、認証結果をクライアント端末１に送信する処理を省略してもよいし、認証結果を他の装置に送信してもよい。
【００９２】
（Ｃ−７）要約履歴記憶エリア７２に記憶された要約を用いて認証用情報２００が改竄されたか否かを判断するＳ５８及びＳ７８の処理は適宜変更及び省略されてよい。例えば、認証用情報２００の要約ではなく認証用情報２００そのもの履歴を用いて、認証用情報２００が改竄されたか否かが判断されてもよい。認証用情報の真偽判定情報（第一判定情報）及びテンプレートの真偽判定情報（第二判定情報）は互いに異なる情報であってもよい。
【符号の説明】
【００９３】
１    クライアント端末
１０，６１，８１    ＣＰＵ
１３，６４，８４    ＨＤＤ
３５    指紋入力装置
５１    認証サーバー
５２〜５６    記憶サーバー
１００    認証システム
【図１】
2015022593.tif 000003
【図２】
2015022593.tif 000004
【図３】
2015022593.tif 000005
【図４】
2015022593.tif 000006
【図５】
2015022593.tif 000007
【図６】
2015022593.tif 000008
【図７】
2015022593.tif 000009
【図８】
2015022593.tif 000010
【図９】
2015022593.tif 000011
【図１０】
2015022593.tif 000012
【図１１】
2015022593.tif 000013
【図１２】
2015022593.tif 000014
【図１３】
2015022593.tif 000015
【図１４】
2015022593.tif 000016