(57)【要約】      （修正有）【課題】利便性と安全性の高いキャンセラブル生体認証を実現する。【解決手段】クライアント１１０は、生体情報から特徴量を抽出する特徴量抽出部１１３と、ワンタイムパラメータを用いて特徴量を変換する特徴量変換部１１４とを有し、第1のサーバは、ＩＤとパラメータを対応付けて保管するパラメータＤＢ１３１と、クライアントから送られるＩＤに対応したパラメータを用いたデータを生成するデータ生成部１３３とを有し、第２のサーバは、生体情報の特徴量をパラメータにより変換したテンプレートをＩＤと対応付けて保管するテンプレートＤＢ１２１と、第１のサーバから送られるＩＤに対応するテンプレートを変換してワンタイムテンプレートを作成するテンプレート変換部１２３と、クライアントから送られる変換特徴量および第1のサーバから送られるデータとの一方とワンタイムテンプレートとを照合、判定する照合判定部１２４とを有する。【選択図】図１
2010146245.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して接続される、
ユーザに予め付与されたＩＤを入力する入力装置と、前記ユーザの生体情報を取得する第1のセンサと、前記センサによって取得された生体情報から特徴量を抽出する第1の特徴量抽出部と、ワンタイムパラメータを用いて前記特徴量を変換して変換特徴量を作成する特徴量変換部とを有するクライアント、
前記ＩＤとパラメータを対応付けて保管するパラメータＤＢと、前記クライアントから前記ネットワークを介して送られる前記ＩＤに対応した前記パラメータを用いたデータを生成するデータ生成部とを有する第1のサーバ、および、
前記ユーザの生体情報の特徴量を前記パラメータにより変換したテンプレートを前記ＩＤと対応付けて保管するテンプレートＤＢと、前記第１のサーバから前記ネットワークを介して送られるＩＤに対応する前記テンプレートを変換してワンタイムテンプレートを作成するテンプレート変換部と、前記クライアントから前記ネットワークを介して送られる前記変換特徴量および前記第1のサーバから送られる前記データとの一方と前記ワンタイムテンプレートとを照合して一致／不一致を判定する照合判定部とを有する第２のサーバとを設けたことを特徴とする生体認証システム。
【請求項２】
前記第１のサーバは、追加パラメータをランダムに生成するパラメータ生成部をさらに有し、前記データ生成部は、前記クライアントから送られるＩＤに対応する前記パラメータと前記追加パラメータとを用いて、前記データとして前記ワンタイムパラメータを作成し、
前記第２のサーバの前記テンプレート変換部は、前記第１のサーバから送られる前記追加パラメータを用いて前記第１のサーバから送られるＩＤに対応する前記テンプレートを変換して前記ワンタイムテンプレートを作成し、前記照合判定部は、前記クライアントから送られる前記変換特徴量と前記ワンタイムテンプレートとを照合して一致／不一致を判定することを特徴とする請求項1記載の生体認証システム。
【請求項３】
前記クライアントは、前記特徴量の変換に用いる前記ワンタイムパラメータをランダムに生成するパラメータ生成部をさらに有し、
前記第１のサーバの前記データ生成部は、前記パラメータを用いて前記クライアントから前記ネットワークを介して送られる前記変換特徴量を前記データとしての再変換特徴量に再変換し、
前記第２のサーバの前記テンプレート変換部は、前記クライアントから前記ネットワークを介して送られる前記ワンタイムパラメータを用いて前記クライアントから送られるＩＤに対応する前記テンプレートを変換して前記ワンタイムテンプレートを作成し、前記照合判定部は、前記第１のサーバから送られる前記データとしての前記再変換特徴量と前記ワンタイムテンプレートとを照合して一致／不一致を判定することを特徴とする請求項1記載の生体認証システム。
【請求項４】
前記クライアントは、前記特徴量の変換に用いる前記ワンタイムパラメータをランダムに生成するパラメータ生成部をさらに有し、
前記第１のサーバの前記データ生成部は、前記クライアントから送られるＩＤに対応する前記パラメータと前記クライアントから前記ネットワークを介して送られる前記ワンタイムパラメータから前記データとしてパラメータ差分を計算し、
前記第２のサーバの前記テンプレート変換部は、前記第１のサーバから前記ネットワークを介して送られる前記データとしての前記パラメータ差分を用いて前記第１のサーバから送られるＩＤに対応する前記テンプレートを変換して前記ワンタイムテンプレートを作成し、前記照合判定部は、前記クライアントから送られる前記変換特徴量と前記ワンタイムテンプレートとを照合して一致／不一致を判定することを特徴とする請求項1記載の生体認証システム。
【請求項５】
前記第１のサーバは、ランダムに追加パラメータを生成し、前記パラメータＤＢに保管された前記パラメータと前記追加パラメータとを用いて新パラメータを生成するパラメータ生成部と、前記パラメータＤＢに保管された前記パラメータを前記新パラメータにより更新する第1のＤＢ制御部とをさらに有し、
前記第２のサーバは、前記第１のサーバから前記ネットワークを介して送られる前記追加パラメータを用いて、前記テンプレートＤＢに保管された前記テンプレートを変換して新テンプレートを作成するテンプレート変換部と、前記テンプレートＤＢに保管された前記テンプレートを前記新テンプレートにより更新する第２のＤＢ制御部とをさらに有することを特徴とする請求項１〜４のいずれか１項記載の生体認証システム。
【請求項６】
未使用のＩＤを前記ユーザの前記ＩＤとして発行するＩＤ発行部と、前記ユーザの生体情報を取得する第２のセンサと、前記第２のセンサによって取得された生体情報から特徴量を抽出する第２の特徴量抽出部と、前記パラメータをランダムに生成するパラメータ生成部と、前記パラメータを用いて前記特徴量を変換して前記テンプレートを作成するテンプレート作成部とを有する登録端末を前記ネットワークを介して接続し、
前記第１のサーバは、前記登録端末から前記ネットワークを介して送られる前記ＩＤと前記パラメータを対応付けて前記パラメータＤＢに登録する第1のＤＢ制御部をさらに有し、
前記第２のサーバは、前記登録端末から前記ネットワークを介して送られる前記ＩＤと前記テンプレートを対応付けて前記テンプレートＤＢに登録する第２のＤＢ制御部をさらに有することを特徴とする請求項１〜４のいずれか１項記載の生体認証システム。
【請求項７】
ネットワークを介して接続される、クライアント、第1のサーバ、および第２のサーバを有する生体認証システムにおける生体認証方法であって、
前記クライアントは、入力装置からユーザに予め付与されたＩＤを入力し、第1のセンサから前記ユーザの生体情報を取得し、前記取得し生体情報から特徴量を抽出し、ワンタイムパラメータを用いて前記特徴量を変換して変換特徴量を作成し、
前記第1のサーバは、前記ＩＤとパラメータを対応付けて保管するパラメータＤＢを有し、前記クライアントから前記ネットワークを介して送られる前記ＩＤに対応した前記パラメータを用いてデータを生成し、
第２のサーバは、前記ユーザの生体情報の特徴量を前記パラメータにより変換したテンプレートを前記ＩＤと対応付けて保管するテンプレートＤＢを有し、前記第１のサーバから前記ネットワークを介して送られるＩＤに対応する前記テンプレートを変換してワンタイムテンプレートを作成し、前記クライアントから前記ネットワークを介して送られる前記変換特徴量および前記第1のサーバから送られる前記データとの一方と前記ワンタイムテンプレートとを照合して一致／不一致を判定することを特徴とする生体認証方法。
【請求項８】
前記第１のサーバは、さらに追加パラメータをランダムに生成し、前記クライアントから送られるＩＤに対応する前記パラメータと前記追加パラメータとを用いて、前記データとして前記ワンタイムパラメータを作成し、
前記第２のサーバは、前記第１のサーバから送られる前記追加パラメータを用いて前記第１のサーバから送られるＩＤに対応する前記テンプレートを変換して前記ワンタイムテンプレートを作成し、前記クライアントから送られる前記変換特徴量と前記ワンタイムテンプレートとを照合して一致／不一致を判定することを特徴とする請求項７記載の生体認証方法。
【請求項９】
前記クライアントは、さらに前記特徴量の変換に用いる前記ワンタイムパラメータをランダムに生成し、
前記第１のサーバは、前記パラメータを用いて前記クライアントから前記ネットワークを介して送られる前記変換特徴量を前記データとしての再変換特徴量に再変換し、
前記第２のサーバは、前記クライアントから前記ネットワークを介して送られる前記ワンタイムパラメータを用いて前記クライアントから送られるＩＤに対応する前記テンプレートを変換して前記ワンタイムテンプレートを作成し、前記第１のサーバから送られる前記データとしての前記再変換特徴量と前記ワンタイムテンプレートとを照合して一致／不一致を判定することを特徴とする請求項７記載の生体認証方法。
【請求項１０】
前記クライアントは、さらに前記特徴量の変換に用いる前記ワンタイムパラメータをランダムに生成し、
前記第１のサーバは、前記クライアントから送られるＩＤに対応する前記パラメータと前記クライアントから前記ネットワークを介して送られる前記ワンタイムパラメータから前記データとしてパラメータ差分を計算し、
前記第２のサーバは、前記第１のサーバから前記ネットワークを介して送られる前記データとしての前記パラメータ差分を用いて前記第１のサーバから送られるＩＤに対応する前記テンプレートを変換して前記ワンタイムテンプレートを作成し、前記クライアントから送られる前記変換特徴量と前記ワンタイムテンプレートとを照合して一致／不一致を判定することを特徴とする請求項７記載の生体認証方法。
【請求項１１】
前記第１のサーバは、さらにランダムに追加パラメータを生成し、前記パラメータＤＢに保管された前記パラメータと前記追加パラメータとを用いて新パラメータを生成し、前記パラメータＤＢに保管された前記パラメータを前記新パラメータにより更新し、
前記第２のサーバは、さらに前記第１のサーバから前記ネットワークを介して送られる前記追加パラメータを用いて、前記テンプレートＤＢに保管された前記テンプレートを変換して新テンプレートを作成し、前記テンプレートＤＢに保管された前記テンプレートを前記新テンプレートにより更新することを特徴とする請求項７〜１０のいずれか１項記載の生体認証方法。
【請求項１２】
前記生体認証システムは前記ネットワークを介してさらに登録端末を接続し、
前記登録端末は、未使用のＩＤを前記ユーザの前記ＩＤとして発行し、第２のセンサから前記ユーザの生体情報を取得し、前記第２のセンサによって取得し生体情報から特徴量を抽出し、前記パラメータをランダムに生成し、前記パラメータを用いて前記特徴量を変換して前記テンプレートを作成し、
前記第１のサーバは、前記登録端末から前記ネットワークを介して送られる前記ＩＤと前記パラメータを対応付けて前記パラメータＤＢに登録し、
前記第２のサーバは、前記登録端末から前記ネットワークを介して送られる前記ＩＤと前記テンプレートを対応付けて前記テンプレートＤＢに登録することを特徴とする請求項７〜１０のいずれか１項記載の生体認証方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、個人の生体情報を用いて本人を認証する生体認証システムおよびその方法に関する。
【背景技術】
【０００２】
生体情報に基づいて個人認証を行う生体認証は、カードやパスワードに基づく認証と比較して、なくさない、忘れない、盗まれないといった利点があり、利便性、なりすまし耐性の高い個人認証を実現することができる。
【０００３】
一般的な生体認証システムは、初期の登録時にユーザの生体情報を取得し、その生体情報から特徴量と呼ばれる情報を抽出して登録する。この登録情報をテンプレートという。認証時には、再びユーザから生体情報を取得して特徴量を抽出し、先に登録されたテンプレートと照合して本人か否かを確認する。
【０００４】
クライアントとサーバがネットワークを介して接続されたシステムにおいて、サーバがクライアント側にいるユーザを生体認証する場合、典型的にはサーバがテンプレートを保持する。クライアントは認証時にユーザの生体情報を取得し、その特徴量を抽出してサーバへ送信し、サーバは受信した特徴量をテンプレートと照合して本人か否かを確認する。
【０００５】
しかし、テンプレートは個人を特定することのできる情報であるため、個人情報として厳密な管理が必要とされ、高い管理コストが必要となる。例え厳密に管理されていても、プライバシの観点からテンプレートを登録することに心理的な抵抗を感じる人も多い。また、一人の個人が持つ一種類の生体情報の数には限りがある（例えば指紋は１０本の指のみ）ため、パスワードや暗号鍵のように容易にテンプレートを変更することができない。仮にテンプレートが漏洩して偽造の危険が生じた場合、その生体認証を使用することができなくなるという問題がある。さらに、他のシステムに対して同じ生体情報を登録している場合には他のシステムまで脅威にさらされることになる。
【０００６】
そこで、生体情報の特徴量を特殊な暗号化により保護したままの状態で登録・照合を行う、生体認証が提案されている。具体的には登録時に秘密の変換パラメータ（暗号鍵に相当）を用いてテンプレート（登録用の特徴量）を変換（暗号化に相当）し、変換テンプレートとしてサーバのＤＢに登録するとともに、変換パラメータをトークン（ＩＣカード等）に格納してユーザに発行する。認証時、ユーザはクライアント（認証端末）に対して生体情報とともに変換パラメータを入力する。クライアントはユーザの生体情報から特徴量を抽出し、カードから読み込んだ変換パラメータを用いて特徴量を変換し、変換特徴量としてサーバへ送信する。サーバはＤＢ内の変換テンプレートと、クライアントから受信した変換特徴量を照合し、十分近ければＯＫ（受理），そうでなければＮＧ（拒否）と判定する。なお変換パラメータは、ユーザが記憶する秘密情報（パスワード）等から生成してもよい。このような認証方法をキャンセラブル生体認証と呼ぶ。
【０００７】
この方法によれば、ユーザが変換パラメータを秘密に保持することで、サーバは認証時においても元の特徴量を知ることができず、ユーザのプライバシが保護される。またテンプレートが漏洩した場合にも、変換パラメータを変更して再度テンプレートを作成、登録することで、安全性を保つことができる。更に他のシステムに対して同じ生体情報を用いる場合に、各々異なるパラメータで変換したテンプレートを登録することで、一つのテンプレートが漏洩しても他のシステムの安全性が低下することを防止することができる。
【０００８】
キャンセラブル生体認証の具体的な実現方法は、生体情報の種類や照合アルゴリズムに依存する。例えば特許文献１と特許文献２では、キャンセラブル指紋認証の実現方式が示されている。また非特許文献１と非特許文献２では、キャンセラブル虹彩認証の実現方法が示しされている。非特許文献３では、特徴量が画像、特に輝度値（整数）の二次元配列で表現されるデータであって、２枚の画像の位置ずれを考慮した最大相関値に基づき一致／不一致を判定するような生体認証技術に対して適用可能な実現方法が示されている。
【０００９】
【特許文献１】米国特許  Ｎｏ．６８３６５５４
【特許文献２】特開２００６−１５８８５１
【非特許文献１】M. Braithwaite， U. Cahn von Seelen， J. Cambier， J. Daugman， R. Glass， R. Moore， and I. Scott. Application-specific biometric templates. In AutoID02， pp. 167-171， 2002. （Ｉｒｉｄｉａｎ）
【非特許文献２】太田陽基， 清本晋作， 田中俊昭. 虹彩コードを秘匿する虹彩認証方式の提案. 情報処理学会論文誌， Vol. 45， No. 8， pp. 1845-1855， 2004.
【非特許文献３】比良田真史 他、「画像マッチングに基づく生体認証に適用可能なキャンセラブルバイオメトリクスの提案」、電子情報通信学会技術報告  2006-07-ISEC-SITE-IPSJ-CSEC
【発明の開示】
【発明が解決しようとする課題】
【００１０】
上記のキャンセラブル生体認証では、変換パラメータをユーザが安全に管理する必要がある。このため、ユーザは、変換パラメータを格納するためのトークン（ＩＣカード等）を所持するか、変換パラメータを生成するための秘密情報（パスワード等）を記憶する必要がある。したがって、なくさない、忘れないという、生体認証が本来持っている利便性を損なうことになる。
【００１１】
変換パラメータをクライアント（認証端末）に保管することもできるが、一般にクライアントは運用管理によって安全性を担保することが難しい。このため漏洩を防止するためには耐タンパー性を持たせるといった追加コストが必要となる。また、銀行ＡＴＭやキオスク端末など、不特定多数のユーザが複数の端末を共有する場合、各クライアント内に全ユーザの変換パラメータを管理する必要があり、安全性や運用コストの面で現実的ではない。
【００１２】
本発明の目的は、ユーザが安全性を確保しつつ所有物や秘密情報の記憶を必要としない、利便性の高いキャンセラブル生体認証システムを実現することにある。
【課題を解決するための手段】
【００１３】
本発明の生体認証システムおよびその生体認証方法は、以上の課題を解決するため、次のような構成を有する。
【００１４】
ネットワークを介して接続されるクライアント、第1のサーバ(パラメータサーバ)、および第２のサーバ(認証サーバ)を有する生体認証システムおよび生体認証方法である。クライアントは、ユーザに予め付与されたＩＤを入力する入力装置と、ユーザの生体情報を取得する第1のセンサと、センサによって取得された生体情報から特徴量を抽出する第1の特徴量抽出部と、ワンタイムパラメータを用いて特徴量を変換して変換特徴量を作成する特徴量変換部とを有する。第1のサーバは、ＩＤとパラメータを対応付けて保管するパラメータＤＢと、クライアントから送られるＩＤに対応したパラメータを用いたデータを生成するデータ生成部とを有する。第２のサーバは、ユーザの生体情報の特徴量をパラメータにより変換したテンプレートをＩＤと対応付けて保管するテンプレートＤＢと、第１のサーバから送られるＩＤに対応するテンプレートを変換してワンタイムテンプレートを作成するテンプレート変換部と、クライアントから送られる変換特徴量および第1のサーバから送られるデータとの一方とワンタイムテンプレートとを照合して一致／不一致を判定する照合判定部とを有する。
【００１５】
本発明の他の態様は、第１のサーバは、追加パラメータをランダムに生成するパラメータ生成部をさらに有し、データ生成部は、クライアントから送られるＩＤに対応するパラメータと追加パラメータとを用いて、データとしてワンタイムパラメータを作成し、第２のサーバのテンプレート変換部は、第１のサーバから送られる追加パラメータを用いて第１のサーバから送られるＩＤに対応するテンプレートを変換してワンタイムテンプレートを作成し、照合判定部は、クライアントから送られる変換特徴量とワンタイムテンプレートとを照合して一致／不一致を判定する。
【００１６】
本発明のさらに他の態様は、クライアントは、特徴量の変換に用いるワンタイムパラメータをランダムに生成するパラメータ生成部をさらに有し、第１のサーバのデータ生成部は、パラメータを用いてクライアントから送られる変換特徴量をデータとしての再変換特徴量に再変換し、第２のサーバのテンプレート変換部は、クライアントから送られるワンタイムパラメータを用いてクライアントから送られるＩＤに対応するテンプレートを変換してワンタイムテンプレートを作成し、照合判定部は第１のサーバから送られるデータとしての再変換特徴量とワンタイムテンプレートとを照合して一致／不一致を判定する。
【００１７】
本発明のさらに他の態様は、クライアントは、特徴量の変換に用いるワンタイムパラメータをランダムに生成するパラメータ生成部をさらに有し、第１のサーバのデータ生成部は、クライアントから送られるＩＤに対応するパラメータとクライアントから送られるワンタイムパラメータからデータとしてパラメータ差分を計算し、第２のサーバのテンプレート変換部は、第１のサーバからネットワークを介して送られるデータとしてのパラメータ差分を用いて第１のサーバから送られるＩＤに対応するテンプレートを変換してワンタイムテンプレートを作成し、照合判定部はクライアントから送られる変換特徴量とワンタイムテンプレートとを照合して一致／不一致を判定する。
【００１８】
本発明のさらに他の態様は、第１のサーバは、ランダムに追加パラメータを生成し、パラメータＤＢに保管されたパラメータと追加パラメータとを用いて新パラメータを生成するパラメータ生成部と、パラメータＤＢに保管されたパラメータを新パラメータにより更新するＤＢ制御部とをさらに有し、第２のサーバは、第１のサーバから送られる追加パラメータを用いて、テンプレートＤＢに保管されたテンプレートを変換して新テンプレートを作成するテンプレート変換部と、テンプレートＤＢに保管されたテンプレートを新テンプレートにより更新するＤＢ制御部とをさらに有する。
【００１９】
本発明のさらに他の態様は、生体認証システムがネットワークを介してさらに登録端末を接続し、登録端末は、未使用のＩＤをユーザのＩＤとして発行するＩＤ発行部と、ユーザの生体情報を取得する第２のセンサと、第２のセンサによって取得された生体情報から特徴量を抽出する第２の特徴量抽出部と、パラメータをランダムに生成するパラメータ生成部と、生成したパラメータを用いて特徴量を変換してテンプレートを作成するテンプレート作成部とを有し、第１のサーバは登録端末から送られるＩＤとパラメータを対応付けてパラメータＤＢに登録するＤＢ制御部をさらに有し、第２のサーバは登録端末から送られるＩＤとテンプレートを対応付けてテンプレートＤＢに登録するＤＢ制御部をさらに有する。
【発明の効果】
【００２０】
本発明により、キャンセラブル生体認証システムにおいて、変換パラメータをユーザ側で管理する必要がなくなる。このため、ユーザはトークンを所持したり、パスワード等の秘密情報を記憶したりする必要がなく、利便性の高いキャンセラブル生体認証を実現することができる。
【発明を実施するための最良の形態】
【００２１】
本実施形態は、クライアントと第1のサーバであるパラメータサーバと第２のサーバである認証サーバがネットワークを介して接続される。クライアントは、ユーザに予め付与されたＩＤを入力する入力装置と、ユーザの生体情報を取得するのセンサと、センサによって取得された生体情報から特徴量を抽出する特徴量抽出部と、ワンタイムパラメータを用いて特徴量を変換して変換特徴量を作成する特徴量変換部とを有する。
【００２２】
パラメータサーバは、ＩＤとパラメータを対応付けて保管するパラメータＤＢと、クライアントから送られるＩＤに対応したパラメータを用いたデータを生成するデータ生成部とを有する。
【００２３】
認証サーバは、ユーザの生体情報の特徴量をパラメータにより変換したテンプレートをＩＤと対応付けて保管するテンプレートＤＢと、パラメータサーバから送られるＩＤに対応するテンプレートを変換してワンタイムテンプレートを作成するテンプレート変換部と、クライアントから送られる変換特徴量およびパラメータサーバから送られるデータとの一方とワンタイムテンプレートとを照合して一致／不一致を判定する照合判定部とを有する。
【００２４】
本実施形態の生体認証システムでは、暗号鍵に相当するパラメータを安全に管理するためにパラメータサーバを設ける。パラメータサーバにおいてパラメータを安全に管理するために、認証時にパラメータサーバからパラメータそのものがネットワーク上に送信されないようにする。そこで、パラメータサーバでは、パラメータを用いてデータを生成し、このデータをネットワーク上に送信するようにする。
【００２５】
パラメータサーバがパラメータを用いて生成するデータが、クライアントにより特徴量の変換に用いられるワンタイムパラメータである例を実施例1として、クライアントで特徴量が変換された変換特徴量をさらにパラメータを用いて再変換した再変換特徴量である例を実施例２として、パラメータとクライアントで生成されるワンタイムパラメータとの差分である例を実施例３として、以下に説明する。
【実施例１】
【００２６】
以下、図面を参照して、実施例１について説明する。
本実施例は、クライアントのユーザをサーバが認証する、サーバ認証型の生体認証システムである。本実施例は、例えば企業内情報システムへのアクセス制御や、ネットバンキング等におけるＷｅｂベースのユーザ認証などに適用することができる。またテンプレートの管理と認証処理をアウトソーシングサービスとして提供する、生体認証サービスシステムにも適用することができる。
【００２７】
図１に、本実施例における生体認証システムのシステム構成を示す。
本システムは、ユーザの生体情報登録時に生体情報を取得してテンプレートを作成する登録端末と１００と、認証時にユーザが利用するクライアント１１０と、テンプレートの保管・照合を行なう認証サーバ１２０と、キャンセラブル生体認証において生体情報を変換（暗号化に相当）するためのパラメータ（暗号鍵に相当）を管理するパラメータサーバ１３０と、これらを接続するネットワーク１４０とから構成される。
【００２８】
登録端末１００は、指紋や静脈などの生体情報を取得するセンサ１０１と接続され、取得した登録ユーザの生体情報から特徴量を抽出する特徴量抽出部１０２と、特徴量を変換するためのパラメータを生成するパラメータ生成部１０３と、前記パラメータを用いて前記特徴量を変換し、登録用変換特徴量（背景技術の欄では変換テンプレートと呼んだが、以下、テンプレートと呼ぶ。）を作成するテンプレート作成部１０４と、ユーザＩＤを発行するＩＤ発行部１０５とから構成される。
【００２９】
クライアント１１０は、センサ１１１と接続され、ユーザＩＤの入力を受け付けるＩＤ入力部と、特徴量抽出部１１３と、特徴量変換部１１４とから構成される。
【００３０】
認証サーバ１２０は、ユーザ毎のユーザＩＤとテンプレートとを対応付けて管理するテンプレートＤＢ１２１と、ＤＢの検索やデータの登録・更新などを制御するＤＢ制御部１２２と、テンプレート変換部１２３と、テンプレートと変換特徴量をマッチングして距離（または類似度）を算出し一致（ＯＫ）／不一致（ＮＧ）を判定する照合判定部１２４とから構成される。
【００３１】
パラメータサーバ１３０は、ユーザ毎のユーザＩＤとパラメータとを対応付けて管理するパラメータＤＢ１３１と、ＤＢ制御部１３２と、パラメータ生成部１３３と、パラメータ変換部１３４とから構成される。
【００３２】
なお、以下説明する処理フローにおいて、全てあるいは一部の通信をＳＳＬなどを用いて暗号化してもよい。
【００３３】
例えばある企業において、社員が社外のＰＣから社内の情報システムへログインする際のアクセス制御に生体認証を用いる際に、テンプレート管理と生体認証処理を社外の生体認証サービス提供者（以下、生体認証ＳＰ）にアウトソーシングする場合がある。この場合、クライアント１１０は社員が利用している社外のＰＣであり、認証サーバ１２０は生体認証ＳＰが運用管理する。登録端末１００およびパラメータサーバ１３０は、企業側で管理してもよいし、生体認証ＳＰが管理してもよい。ただし生体認証ＳＰがパラメータサーバ１３０を管理する場合は、その管理者・管理場所を、認証サーバ１２０の管理者・管理場所と分離することが望ましい。この理由は、一般にキャンセラブル生体認証方式においてパラメータとテンプレート（パラメータで変換した生体特徴量）が同時に漏洩すると、元の生体特徴量が復元されてしまうためである。本実施例の生体認証システムにおいては、認証サーバ１２０とパラメータサーバ１３０を分散管理（秘密分散）することで、元の生体情報の漏洩リスクを最小化する。
【００３４】
図１０に、本実施例における登録端末１００、クライアント１１０、認証サーバ１２０、パラメータサーバ１３０のハードウェア構成を示す。これらは図のようにＣＰＵ１０００、メモリ１００１、ＨＤＤ１００２、入力装置１００３、出力装置１００４、通信装置１００５を有するＰＣやサーバ計算機によって実現することができる。なお、図10に示すハードウェア構成は、後述する他の実施例においても同様である。
【００３５】
ここで、本実施例における特徴量の変換関数ＦおよびパラメータＰが満たすべき数学的条件について説明する。いま特徴量の空間Ｓｘ、パラメータの空間をＳｐとする。変換関数Ｆは、→が変換を表し、以下の通り定義する。
Ｆ：  Ｓｘ×Ｓｐ→Ｓｘ
条件：任意の２つのパラメータ Ｐ，Ｑ∈Ｓｐ に対して、あるパラメータ Ｒ∈Ｓｐ が存在し、任意の特徴量 Ｘ∈Ｓｘ に対して以下の等式が成立する。
Ｆ（Ｆ（Ｘ，Ｐ），Ｑ）＝Ｆ（Ｘ，Ｒ）
つまりＸをＰ，Ｑで続けて変換した特徴量（左辺）が、あるパラメータＲでＸを一回だけ変換した特徴量（右辺）と等しくなるような、パラメータＲが存在するとする。このようなパラメータＲを、Ｐ＋Ｑと表現することにする。つまりパラメータ空間Ｓｐは、ある二項演算＋に関して閉じている。
【００３６】
なお、パラメータＰ，Ｑ∈Ｓｐを固定し、
ｆ（・）≡Ｆ（・，Ｐ）
ｇ（・）≡Ｆ（・，Ｑ）
をそれぞれ Ｓｘ→Ｓｘ なる関数とみなすと、Ｐ＋Ｑは合成関数
ｆ○ｇ（・）≡f（ｇ（・））
に対応するパラメータとみなすことができる。合成関数は結合法則
（ｆ○ｇ）○ｈ＝ｆ○（ｇ○ｈ）
を満たすため、任意のパラメータＰ，Ｑ，Ｒ∈Ｓｐ に対して結合法則
（Ｐ＋Ｑ）＋Ｒ＝Ｐ＋（Ｑ＋Ｒ）
が成立する。これはつまり、パラメータ空間Ｓｐが、演算＋に関して半群を成すことを意味する。
【００３７】
特許文献１〜２、非特許文献１〜３に記載のキャンセラブル生体認証方式は、この性質を満たす。例えば非特許文献１のキャンセラブル虹彩認証方式では、Ｓｘ，Ｓｐは共にn（例えば２０４８）ビット空間であり、
Ｆ（Ｘ，Ｐ）≡Ｘ（＋）Ｐ        （＋）は排他的論理和）
で定義される。このとき、
Ｆ（Ｆ（Ｘ，Ｐ），Ｑ）
＝（Ｘ（＋）Ｐ）（＋）Ｑ
＝Ｘ（＋）（Ｐ（＋）Ｑ）
であるので、
Ｒ＝Ｐ＋Ｑ≡Ｐ（＋）Ｑ
と定義すれば、
Ｆ（Ｆ（Ｘ，Ｐ），Ｑ）＝Ｆ（Ｘ，Ｒ）
となり、上記条件を満たすことがわかる。
【００３８】
次に本実施例における登録処理フローを、図２を用いて説明する。登録端末１００が、センサ１０１を通して登録ユーザの生体情報（指紋画像や静脈画像など）を取得する（Ｓ２００）。特徴量抽出部１０２が、取得した生体情報から特徴量Ｘを抽出する（Ｓ２０１）。パラメータ生成部１０３が、ランダムにパラメータＰ∈Ｓｐを生成する（Ｓ２０２）テンプレート作成部１０４が、抽出した特徴量Ｘを、パラメータＰを用いて変換し、テンプレートＴ＝Ｆ（Ｘ，Ｐ）を作成する（Ｓ２０３）。
【００３９】
ＩＤ発行部１０５が、まだ使われていないＩＤ（例えば番号や文字列など）を一つ決定して登録ユーザに発行するとともに、決定したＩＤと作成したテンプレートＴとを紐付けて認証サーバ１２０に送信し、またそのＩＤとパラメータＰを紐付けてパラメータサーバ１３０に送信する（Ｓ２０４）。ＩＤは公開してもよい情報で、暗証番号のようにユーザが秘密に記憶しておく必要はない。ユーザの氏名やメールアドレス、社員番号などをＩＤとしてもよい。
【００４０】
認証サーバ１２０が、登録端末１００からＩＤとテンプレートＴの組を受信し、これをＤＢ制御部１２２がテンプレートＤＢ１２１に登録する（Ｓ２０５）。
【００４１】
パラメータサーバ１３０が、登録端末１００からＩＤとパラメータＰの組を受信し、これをＤＢ制御部１３２がテンプレートＤＢ１３１に登録する（Ｓ２０６）。
【００４２】
最後に登録端末１００が、メモリやＨＤＤなどの記憶装置から前記特徴量Ｘと前記パラメータＰを消去する（Ｓ２０７）。
【００４３】
次に本実施例における認証処理フロー（前半）を図３を用いて説明する。クライアント１１０のＩＤ入力部１１２は、ユーザからＩＤの入力を受け付け、受け付けたＩＤをパラメータサーバ１３０に送信する（Ｓ３００）。
【００４４】
パラメータサーバ１３０のＤＢ制御部１３２が、クライアント１１０から受信したＩＤをキーとして、パラメータＤＢ１３１からパラメータＰを検索する（Ｓ３０１）。
【００４５】
パラメータ生成部１３３が、追加パラメータΔＰ１∈Ｓｐをランダムに生成し、ＩＤとともに認証サーバ１２０に送信する（Ｓ３０２）。なお認証サーバ１２０に送信する代わりに、認証サーバ１２０の公開鍵、あるいは認証サーバ１２０とパラメータサーバ１３０とで予め共有してある共通鍵を用いて、生成した追加パラメータΔＰ１を暗号化し、下記ステップＳ３０３においてワンタイムパラメータＰ１と共にクライアント１１０に送信してもよい。この場合、下記ステップＳ３０６においてクライアント１１０は、ＩＤ，下記変換特徴量Ｕとともに、暗号化された追加パラメータΔＰ１を認証サーバ１２０に送信し、認証サーバ１２０は秘密鍵または共通鍵を用いて前記追加パラメータΔＰ１を復号化する。これによりパラメータサーバ１３０と認証サーバ１２０が直接通信する必要がなくなり、通信回数を削減することができる。
【００４６】
パラメータ変換部１３４が、パラメータＰおよび追加パラメータΔＰ１を用いて、ワンタイムパラメータ Ｐ１＝Ｐ＋ΔＰ１ を作成し、クライアント１１０に送信する（Ｓ３０３）。
【００４７】
クライアント１１０が、センサ１１１を通じてユーザの生体情報を取得する（Ｓ３０４）。特徴量抽出部１１３が、取得した生体情報から特徴量Ｙを抽出する（Ｓ３０５）。特徴量変換部１１４が、パラメータサーバ１３０から受信したワンタイムパラメータＰ１を用いて特徴量Ｙを変換し、変換特徴量 Ｕ＝Ｆ（Ｙ，Ｐ１） を作成してＩＤとともに認証サーバ１２０に送信する（Ｓ３０６）。
【００４８】
認証サーバ１２０は、パラメータサーバ１３０から受信したＩＤをキーとしてテンプレートＤＢ１２１からテンプレートＴを検索する（Ｓ３０７）。テンプレート変換部１２３が、パラメータサーバ１３０から受信した追加パラメータΔＰ１を用いてテンプレートＴを変換し、ワンタイムテンプレート Ｔ１＝Ｆ（Ｔ，ΔＰ１） を作成する（Ｓ３０８）。
【００４９】
照合判定部１２４が、クライアント１１０から受信したＩＤとパラメータサーバ１３０から受信したＩＤとの対応を確認した上で、ワンタイムテンプレートＴ１と変換特徴量Ｕをマッチングして類似度（または距離）を算出し、一致（ＯＫ）／不一致（ＮＧ）を判定して、認証結果（ＯＫ／ＮＧ）をクライアント１００に返す（Ｓ３０９）。なお本実施例を生体認証サービスシステムに適用する場合、認証結果は生体認証処理を委託する側のシステム、例えば企業内情報システムのアクセス制御を行なうサーバ等へ送信する。
【００５０】
認証サーバ１２０が、メモリやＨＤＤなどの記憶装置から作成したワンタイムテンプレートＴ１および受信した変換特徴量Ｕを消去する（Ｓ３１０）。なお、認証サーバ１２０がパラメータサーバ１２０からＩＤ，ΔＰ１を受信（ステップ３０２）してから、一定時間が経過してもクライアント１１０からの通信（ステップＳ３０６）がない場合、タイムアウト処理としてワンタイムテンプレートＴ１を消去してもよい。
【００５１】
クライアント１１０が、メモリやＨＤＤなどの記憶装置から前記特徴量Ｙおよび前記ワンタイムパラメータＰ１を消去する（Ｓ３１１）。
【００５２】
パラメータサーバ１３０が、メモリやＨＤＤなどの記憶装置から前記追加パラメータΔＰ１およびワンタイムパラメータＰ１を消去する（Ｓ３１２）。
【００５３】
上記ステップＳ３０９において、正しく照合判定が行なえる理由は以下の通りである。
【００５４】
ワンタイムテンプレートＴ１は、その作り方から
Ｔ１＝Ｆ（Ｔ，ΔＰ１）
＝Ｆ（Ｆ（Ｘ，Ｐ），ΔＰ１）
＝Ｆ（Ｘ，Ｐ＋ΔＰ１）
である。一方、変換特徴量Ｕは、その作り方から
Ｕ＝Ｆ（Ｙ，Ｐ１）
＝Ｆ（Ｙ，Ｐ＋ΔＰ１）
である。つまりＴ１，ＵはそれぞれＸ，Ｙを共通のパラメータ Ｐ＋ΔＰ１ で変換したものであり、従ってＴ１，Ｕをマッチングすることで、正しく照合判定を行なうことができる。
【００５５】
上記ステップＳ３００からＳ３１２までを、認証セッションと定義する。認証セッション終了後に、更に図４に示す認証事後処理を行なってもよい。以下この認証事後処理フローを説明する。
【００５６】
パラメータサーバ１３０のパラメータ生成部１３３が、追加パラメータΔＰ２∈Ｓｐをランダムに生成し、認証サーバ１２０へ送信する（Ｓ４００）。なお通信回数を減らすため、ステップ４００とステップ３０２を同時に行なって、ＩＤと追加パラメータΔＰ１と追加パラメータΔＰ２を同時に送信してもよい。
【００５７】
パラメータ変換部１３４が、パラメータＰおよび追加パラメータΔＰ２を用いて、新パラメータ Ｐ２＝Ｐ＋ΔＰ２ を作成する（Ｓ４０１）。ＤＢ制御部１３２が、パラメータＤＢ１３１に登録されているＩＤに対応するパラメータＰを、新パラメータＰ２に更新する（Ｓ４０２）。パラメータサーバ１３０が、メモリやＨＤＤなどの記憶装置からパラメータＰおよび追加パラメータΔＰ２を消去する（Ｓ４０３）。
【００５８】
認証サーバ１２０のテンプレート変換部１２３が、パラメータサーバ１３０から受信した追加パラメータΔＰ２を用いてテンプレートＴを変換し、新テンプレート Ｔ２＝Ｆ（Ｔ，ΔＰ２） を作成する（Ｓ４０４）。ＤＢ制御部１２２が、テンプレートＤＢ１２１に登録されているＩＤに対応するテンプレートＴを、新テンプレートＴ２に更新する（Ｓ４０５）。認証サーバ１２０が、メモリやＨＤＤなどの記憶装置からテンプレートＴおよび追加パラメータΔＰ２を消去する（Ｓ４０６）。
【００５９】
一般にキャンセラブル生体認証において、パラメータＰとテンプレートＴ＝Ｆ（Ｘ，Ｐ）の両方が漏洩すると、元の特徴量Ｘが復元あるいは推定されてしまう。そこで従来提案されているキャンセラブル生体認証システムでは、認証サーバがテンプレートを管理し、ユーザまたはクライアントがパラメータＰを管理することで安全性を担保する。しかしパラメータをユーザが管理するためには、トークンを所持するか、秘密情報を記憶する必要があった。またクライアントで管理するモデルは、クライアントが安全でない場合や、不特定多数のユーザが複数台のクライアントのいずれを利用するかわからない場合などに適用することができなかった。これに対し、本実施例のキャンセラブル生体認証システムでは、ユーザのパラメータをパラメータサーバが管理することで、ユーザやクライアントが管理する必要をなくしている。これによってユーザは何も持たず、何も記憶せずに認証を受けることができ、利便性の高いキャンセラブル生体認証を実現することができる。
【００６０】
また、認証処理フローによれば、パラメータサーバ１３０はクライアントからのパラメータの問合せに対し、ワンタイムパラメータＰ１を開示する。このワンタイムパラメータは、認証セッション、つまりステップＳ３００からステップＳ３１２の間で有効であり、認証セッションの終了後、あるいは一定時間が経過してタイムアウトとなったときに無効化される（つまり対応するワンタイムテンプレートＴ１が認証サーバ内から消去される）。従って、クライアントが脆弱であったり、不正に利用されている場合でも、なりすましの脅威や、特徴量Ｘを復元または推定しようとする脅威を、防ぐことができる。
【００６１】
特に、認証事後処理（ステップＳ４００〜Ｓ４０６）を、毎認証セッション後に行なうことで、各ＤＢで管理されている真のパラメータＰおよび真のテンプレートＴは、認証毎に破棄・更新されることになる。仮にＰ，Ｔの一方が漏洩して攻撃者の手に渡ったとしても、もう一方が漏洩するまでの間に認証セッションが実行されれば、先に漏洩した情報は無効化され、安全性を漏洩前の状態に回復することができる。ただし、滅多に認証を行わないユーザがいた場合、そのユーザのテンプレートＴとパラメータＰは長期間更新されず、Ｔ，Ｐの漏洩によって特徴量Ｘの危殆化リスクが高まる。この問題は、以下に説明するＤＢ更新処理を定期的に実行することで対策することができる。
【００６２】
以下、本実施例におけるＤＢ更新フローを、図５を用いて説明する。
【００６３】
パラメータサーバ１３０のＤＢ制御部１３２が、パラメータＤＢ１３１に登録されている全てのＩＤを読み込み、パラメータ生成部１３３が各ＩＤに対してそれぞれランダムに追加パラメータΔＰ∈Ｓｐを生成し、ＩＤと追加パラメータΔＰを対応させたパラメータリスト５００を作成し、認証サーバ１２０に送信する（Ｓ５０１）。なお通信量を削減するために、パラメータリストを送信する代わりに、固定長の乱数シードを送信してもよい。この場合、ＩＤを所定の基準に従ってソートした上で、前記乱数シードに基づいて擬似乱数系列を生成し、各ＩＤの追加パラメータΔＰを順次生成することにより、両サーバ間でパラメータリスト５００を共有することができる。
【００６４】
全ＩＤに対し、ＤＢ制御部１３２がパラメータＤＢ１３１からパラメータＰを読み込み、追加パラメータΔＰを用いて新パラメータ Ｐ’＝Ｐ＋ΔＰ を作成する（Ｓ５０２）。全ＩＤに対し、ＤＢ制御部１３２が新パラメータＰ’を、パラメータＰの代わりにパラメータＤＢ１３１に書き込む（更新する）（Ｓ５０３）。パラメータサーバ１３０が、前記パラメータリスト５００をメモリやＨＤＤなどの記憶装置から消去する（Ｓ５０４）。
【００６５】
認証サーバ１２０がパラメータリスト５００を受信し、全ＩＤに対してＤＢ制御部１２２がテンプレートＤＢ１２１からテンプレートＴを読み込み、追加パラメータΔＰを用いて前記テンプレートＴを変換し、新テンプレート Ｔ’＝Ｆ（Ｔ，ΔＰ） を作成する（Ｓ５０５）。
【００６６】
全ＩＤに対し、前記ＤＢ制御部１２２が前記新テンプレートＴ’を、テンプレートＴの変わりにテンプレートＤＢ１２１に書き込む（更新する）（Ｓ５０６）。
【００６７】
認証サーバ１２０が、前記パラメータリスト５００をメモリやＨＤＤなどの記憶装置から消去する（Ｓ５０７）。
【実施例２】
【００６８】
次に、実施例２について説明する。図６に、本実施例における生体認証システムのシステム構成を示す。本システムは、実施例１と同様に、登録端末１００およびそれに接続するセンサ１０１、クライアント６００およびそれに接続するセンサ１１１、認証サーバ１２０、パラメータサーバ６１０、ネットワーク１４０から構成される。ただし第一の実施例と異なり、クライアント６００がパラメータ生成部６０１を有し、パラメータサーバ６１０が特徴量変換部６１１を有する。
【００６９】
実施例１と同様、以下説明する処理フローにおいて、全てあるいは一部の通信をＳＳＬなどを用いて暗号化してもよい。
【００７０】
ここで、本実施例における特徴量の変換関数ＦおよびパラメータＰが満たすべき数学的条件について説明する。本実施例では、実施例１における条件、つまり（Ｓｐ，＋）が半群を成すことに加えて、以下の条件を満たすものとする。
条件：任意の２つのパラメータ Ｐ，Ｑ∈Ｓｐ と、任意の特徴量 Ｘ∈Ｓｘ に対して以下の等式が成立する。
Ｆ（Ｆ（Ｘ，Ｐ），Ｑ）＝Ｆ（Ｆ（Ｘ，Ｑ），Ｐ）
この条件は、以下のように表現することもできる。
Ｐ＋Ｑ＝Ｑ＋Ｐ
つまり、半群（Ｓｐ，＋）が可換であることを条件とする。
【００７１】
例えば実施例１に挙げた非特許文献１のキャンセラブル虹彩認証方式は、単純な排他的論理和に基づいているため上記の条件を満たすが、非特許文献２に記載されているビット置換を含む方式は、上記の条件を満たさない。実際、ビット置換の全体が成す群（置換群）が非可換であることは良く知られている。
【００７２】
本実施例の登録処理フロー、認証事後処理フロー、ＤＢ更新フローは、実施例１と同様である。
【００７３】
以下、本実施例における認証処理フローを、図７を用いて説明する。クライアント６００のＩＤ入力部１１２は、ユーザからＩＤの入力を受け付ける（Ｓ７０１）。クライアント６００が、センサ１１１を通じてユーザの生体情報を取得する（Ｓ７０２）。特徴量抽出部１１３が、前記生体情報から特徴量Ｙを抽出する（Ｓ７０３）。
【００７４】
パラメータ生成部６０１が、ワンタイムパラメータＱ∈Ｓｐをランダムに生成し、受け付けたＩＤとともに認証サーバ１２０に送信する（Ｓ７０４）。なおワンタイムパラメータＱを認証サーバ１２０に送信するかわりに、認証サーバ１２０の公開鍵または認証サーバ１２０とクライアント６００との間であらかじめ共有してある共通鍵を用いて暗号化し、次のステップＳ７０５において、ＩＤと変換特徴量Ｕとともにパラメータサーバ６１０へ送信してもよい。この場合パラメータサーバ６１０は、下記ステップＳ７０７において、ＩＤと変換特徴量Ｖとともに、暗号化されたワンタイムパラメータＱを認証サーバ１２０へ送信する。認証サーバ１２０は秘密鍵または共通鍵を用いてワンタイムパラメータＱを復号化する。これにより、クライアント６００は認証サーバ１２０と通信する必要がなくなり、通信回数を削減することができる。
【００７５】
特徴量変換部１１４が、ワンタイムパラメータＱを用いて特徴量Ｙを変換し、変換特徴量 Ｕ＝Ｆ（Ｙ，Ｑ） を作成して、ＩＤとともにパラメータサーバ６１０へ送信する（Ｓ７０５）。
【００７６】
パラメータサーバ６１０はＩＤおよび変換特徴量Ｕを受信し、ＤＢ制御部１３２がパラメータＤＢ１３１からＩＤをキーとしてパラメータＰを検索する（Ｓ７０６）。特徴量変換部６１１は、変換特徴量ＵをパラメータＰで再変換し、再変換特徴量 Ｖ＝Ｆ（Ｕ，Ｐ） を作成して、ＩＤとともに認証サーバ１２０へ送信する（Ｓ７０７）。
【００７７】
認証サーバ１２０のＤＢ制御部１２２は、クライアント６００から受信したＩＤをキーとして、テンプレートＤＢ１２１からテンプレートＴを検索する（Ｓ７０８）。テンプレート変換部１２３が、クライアント６００から受信したパラメータＱを用いてテンプレートＴを変換し、ワンタイムテンプレート Ｔ１＝Ｆ（Ｔ，Ｑ） を作成する（Ｓ７０９）。照合判定部１２４が、クライアントから受信したＩＤと、パラメータサーバから受信したＩＤとの対応を確認した上で、ワンタイムテンプレートＴ１と再変換特徴量Ｖをマッチングして類似度（または距離）を算出し、一致（ＯＫ）／不一致（ＮＧ）を判定して、認証結果（ＯＫ／ＮＧ）をクライアント６００に返す（Ｓ７１０）。
【００７８】
認証サーバ１２０が、メモリやＨＤＤなどの記憶装置からワンタイムテンプレートＴ１および再変換特徴量Ｖを消去する（Ｓ７１１）。なお、認証サーバ１２０がパラメータサーバ１２０からＩＤ，ΔＰ１を受信してから、一定時間が経過してもクライアント６００からの通信（ステップＳ３０６）がない場合、タイムアウト処理としてワンタイムテンプレートＴ１を消去してもよい。
【００７９】
クライアント６００が、メモリやＨＤＤなどの記憶装置から特徴量ＹとワンタイムパラメータＱと変換特徴量Ｕを消去する（Ｓ７１２）。
【００８０】
パラメータサーバ６１０が、メモリやＨＤＤなどの記憶装置から特徴量Ｕおよび特徴量Ｖを消去する（Ｓ７１３）。
【００８１】
上記ステップＳ７１０において、正しく照合判定が行なえる理由は以下の通りである。
【００８２】
ワンタイムテンプレートＴ１は、その作り方から
Ｔ１＝Ｆ（Ｔ，Ｑ）
＝Ｆ（Ｆ（Ｘ，Ｐ），Ｑ）
＝Ｆ（Ｘ，Ｐ＋Ｑ）
である。一方、変換特徴量Ｖは、その作り方から
Ｕ＝Ｆ（Ｕ，Ｐ）
＝Ｆ（Ｆ（Ｙ，Ｑ），Ｐ）
＝Ｆ（Ｙ，Ｑ＋Ｐ）
である。本実施例における変換関数の数学的条件から、Ｐ＋Ｑ＝Ｑ＋Ｐであるため、Ｔ１，Ｖをマッチングすることで、正しく照合判定を行なうことができる。
【００８３】
本実施例は、実施例１と同様にユーザやクライアント側でパラメータを管理する必要がなく、利便性の高いキャンセラブル生体認証を実現できる。
【００８４】
一方で実施例１とは異なり、クライアント６００がパラメータサーバ１３０から何の情報も受け取ることができない。このためクライアントが脆弱であった場合でも、クライアントを利用した攻撃に対して更に高い安全性を実現することができる。
【００８５】
更に、実施例１では認証処理フローにおける全体の通信回数が５回（追加パラメータΔＰ１を暗号化してクライアント１１０経由で認証サーバ１２０に送信すれば４回）であったのに対し、本実施例での通信回数は４回（パラメータＱを暗号化してパラメータサーバ６１０経由で認証サーバ１２０に送信すれば３回）であり、第二の実施例の方が通信回数が少ないという利点がある。
【実施例３】
【００８６】
次に、実施例３について説明する。図８に、本実施例における生体認証システムのシステム構成を示す。本システムは、実施例２と同様に、登録端末１００およびそれに接続するセンサ１０１、クライアント６００およびそれに接続するセンサ１１１、認証サーバ１２０、パラメータサーバ８００、ネットワーク１４０から構成される。ただし実施例２と異なり、パラメータサーバ８００が特徴量変換部６１１を持たず、かわりにパラメータ差分計算部８０１を持つ。
【００８７】
実施例１，２と同様、以下説明する処理フローにおいて、全てあるいは一部の通信をＳＳＬなどを用いて暗号化してもよい。
【００８８】
ここで、本実施例における特徴量の変換関数ＦおよびパラメータＰが満たすべき数学的条件について説明する。本実施例では、実施例１における条件を満たすことに加えて、以下の条件を満たすものとする。
条件：任意のパラメータＰ∈Ｓｐに対し、以下の等式が任意の特徴量 Ｘ∈Ｓｘ に対して成立するようなパラメータ −Ｐ∈Ｓｐが存在すること。
Ｆ（Ｆ（Ｘ，Ｐ），−Ｐ）＝Ｘ
これは、Ｐで決定される特徴量変換関数に対し、その逆関数に対応するパラメータ −Ｐ が存在することを意味する。このとき、
Ｏ≡Ｐ＋（−Ｐ）
と定義すると、Ｏ∈Ｓｐ は恒等写像に対応するパラメータとなる。このとき任意のＰ∈Ｓｐに対し
Ｏ＋Ｐ＝Ｐ＋Ｏ＝Ｐ
が成立することは容易に確かめられる。つまり上記条件は、（Ｓｐ，＋）に零元Ｏが存在し、かつ任意のＰ∈Ｓｐに対し逆元 −Ｐ∈Ｓｐ が存在することと同値であり、換言すれば（Ｓｐ，＋）が群を成すことが条件である。
【００８９】
例えば実施例１に挙げた非特許文献１に記載の排他的論理和に基づく方式や、非特許文献２に記載のビット置換に基づく方式は、上記の条件を満たす。しかし例えば特許文献１に記載されている、ブロックスクランブルに基づくキャンセラブル指紋認証方式は一方向性関数であり、逆関数が存在しないため上記の条件を満たさない。
【００９０】
以下、本実施例における認証処理フローを、図９を用いて説明する。クライアント６００のＩＤ入力部１１２は、ユーザからＩＤの入力を受け付ける（Ｓ９０１）。クライアント６００が、センサ１１１を通じてユーザの生体情報を取得する（Ｓ９０２）。特徴量抽出部１１３が、前記生体情報から特徴量Ｙを抽出する（Ｓ９０３）。
【００９１】
パラメータ生成部６０１が、ワンタイムパラメータＱ∈Ｓｐをランダムに生成し、受け付けたＩＤとともにパラメータサーバ８００に送信する（Ｓ９０４）。後述するように、ＩＤとワンタイムパラメータＱは、ステップＳ９０５において認証サーバ１２０に送信してもよい。
【００９２】
特徴量変換部１１４が、ワンタイムパラメータＱを用いて特徴量Ｙを変換し、変換特徴量 Ｕ＝Ｆ（Ｙ，Ｑ） を作成して、ＩＤとともに認証サーバ１２０へ送信する（Ｓ９０５）。なお変換情報Ｕを認証サーバ１２０に送信するかわりに、認証サーバ１２０の公開鍵または認証サーバ１２０とクライアント６００との間であらかじめ共有してある共通鍵を用いて暗号化し、ＩＤおよびワンタイムパラメータＱとともにパラメータサーバ８００へ送信してもよい。この場合パラメータサーバ８００は、下記ステップＳ９０７において、ＩＤとパラメータ差分ΔＰともに、暗号化された変換特徴量Ｕを認証サーバ１２０へ送信する。認証サーバ１２０は秘密鍵または共通鍵を用いて変換特徴量Ｕを復号化する。これにより、クライアント６００は認証サーバ１２０と通信する必要がなくなり、通信回数を削減することができる。
【００９３】
パラメータサーバ８００はＩＤおよびワンタイムパラメータＱを受信し、ＤＢ制御部１３２がパラメータＤＢ１３１からＩＤをキーとしてパラメータＰを検索する（Ｓ９０６）。パラメータ差分計算部８０１が、前記パラメータＰと前記ワンタイムパラメータＱから、パラメータ差分 ΔＰ＝（−Ｐ）＋Ｑ を作成し、ＩＤとともに認証サーバ１２０に送信する（Ｓ９０７）。
【００９４】
認証サーバ１２０のＤＢ制御部１２２は、クライアント６００から受信したＩＤをキーとして、テンプレートＤＢ１２１からテンプレートＴを検索する（Ｓ９０８）。テンプレート変換部１２３が、パラメータサーバ８００から受信したパラメータ差分ΔＰを用いてテンプレートＴを変換し、ワンタイムテンプレート Ｔ１＝Ｆ（Ｔ，ΔＰ） を作成する（Ｓ９０９）。
【００９５】
照合判定部１２４が、クライアント６００から受信したＩＤと、パラメータサーバ８００から受信したＩＤとの対応を確認した上で、ワンタイムテンプレートＴ１と変換特徴量Ｕをマッチングして類似度（または距離）を算出し、一致（ＯＫ）／不一致（ＮＧ）を判定して、認証結果（ＯＫ／ＮＧ）をクライアント６００に返す（Ｓ９１０）。
【００９６】
認証サーバ１２０が、メモリやＨＤＤなどの記憶装置からワンタイムテンプレートＴ１および変換特徴量Ｕを消去する（Ｓ９１１）。なお、認証サーバ１２０がパラメータサーバ１２０からＩＤ，ΔＰを受信してから、一定時間が経過してもクライアント６００からの通信（ステップＳ９０５）がない場合、タイムアウト処理としてワンタイムテンプレートＴ１を消去してもよい。
【００９７】
クライアント６００が、メモリやＨＤＤなどの記憶装置から特徴量Ｙと前記ワンタパラメータＱと変換特徴量Ｕを消去する（Ｓ９１２）。パラメータサーバ８００が、メモリやＨＤＤなどの記憶装置からワンタイムパラメータＱおよびパラメータ差分ΔＰを消去する（Ｓ９１３）。
【００９８】
ステップＳ９１０において、正しく照合判定が行なえる理由は以下の通りである。
【００９９】
ワンタイムテンプレートＴ１は、その作り方から
Ｔ１＝Ｆ（Ｔ，ΔＰ）
＝Ｆ（Ｆ（Ｘ，Ｐ），（−Ｐ）＋Ｑ）
＝Ｆ（Ｘ，Ｐ＋（（−Ｐ）＋Ｑ））
＝Ｆ（Ｘ，（Ｐ＋（−Ｐ））＋Ｑ）
＝Ｆ（Ｘ，Ｏ＋Ｑ）
＝Ｆ（Ｘ，Ｑ）
である。一方、変換特徴量Ｕは
Ｕ＝Ｆ（Ｙ，Ｑ）
である。従ってＴ１，Ｕをマッチングすることで、正しく照合判定を行なうことができる。
【０１００】
本実施例は、実施例１，２と同様にユーザやクライアント側でパラメータを管理する必要がなく、利便性の高いキャンセラブル生体認証を実現できる。
【０１０１】
また実施例２と同様、クライアント６００がパラメータサーバ１３０から何の情報も受け取ることができない。このためクライアントが脆弱であった場合でも、クライアントを利用した攻撃に対して高い安全性を実現することができる。
【０１０２】
更に実施例２と同様、認証処理フローにおける全体の通信回数が４回（変換特徴量Ｕを暗号化してパラメータサーバ８００経由で認証サーバ１２０に送信すれば３回）であり、実施例１より通信回数が少ないという利点がある。
【０１０３】
ところで実施例２では、パラメータサーバ６１０が変換特徴量Ｕ＝Ｆ（Ｙ，Ｑ）を受信する必要があった。ＵからＹを復元することはできないものの、特徴量Ｙを元に作られた情報Ｕを漏洩させた場合、何らかの責任を負う可能性がある。このためパラメータサーバ６１０のセキュリティポリシーによっては実施例２を適用できない場合が考えられる。
【０１０４】
これに対し実施例３では、パラメータサーバ８００は、特徴量ＸやＹを元に作られた情報を知る必要がなく、上記の問題は発生しない。
【０１０５】
以上、各実施例を用いて説明したように、本実施形態によれば、生体情報の特徴量を変換し、サーバに対して秘匿したまま照合するキャンセラブル生体認証において、生体情報を変換し秘匿するためのパラメータをパラメータサーバで管理し、ユーザが管理する必要をなくし、利便性と安全性の高いキャンセラブル生体認証を実現できる。またパラメータサーバによるパラメータの管理は、パラメータそのものを認証時にネットワーク上に送信することがないので、パラメータがネットワーク上に漏洩することを防止できる。
【図面の簡単な説明】
【０１０６】
【図１】実施例１の生体認証システムのシステム構成図である。
【図２】実施例１における登録処理を示す流れ図である。
【図３】実施例１における認証処理を示す流れ図である。
【図４】実施例１における認証事後処理を示す流れ図である。
【図５】実施例１におけるＤＢ更新処理を示す流れ図である。
【図６】実施例２の生体認証システムのシステム構成図である。
【図７】実施例２における認証処理を示す流れ図である。
【図８】実施例３の生体認証システムのシステム構成図である。
【図９】実施例３における認証処理を示す流れ図である。
【図１０】各実施例におけるハードウェア構成を示すブロック図である。
【符号の説明】
【０１０７】
１００：登録端末、１０１：センサ、１０２：特徴量抽出部、１０３：パラメータ生成部、１０４：テンプレート作成部、１０５：ＩＤ発行部、１１０：クライアント、１１１：センサ、１１２：ＩＤ入力部、１１３：特徴量抽出部、１１４：特徴量変換部、１２０：認証サーバ、１２１：テンプレートＤＢ、１２２：ＤＢ制御部、１２３：テンプレート変換部、１２４：照合判定部、１３０：パラメータサーバ、１３１：パラメータＤＢ、１３２：ＤＢ制御部、１３３：パラメータ生成部、１３４：パラメータ変換部、１４０：ネットワーク、６００：クライアント、６０１：パラメータ生成部、６１０：パラメータサーバ、６１１：特徴量変換部、８００：パラメータサーバ、８０１：パラメータ差分計算部、１０００：ＣＰＵ、１００１：メモリ、１００２：ＨＤＤ、１００３：入力装置、１００４：出力装置、１００５：通信装置。
【図１】
2010146245.tif 000003
【図２】
2010146245.tif 000004
【図３】
2010146245.tif 000005
【図４】
2010146245.tif 000006
【図５】
2010146245.tif 000007
【図６】
2010146245.tif 000008
【図７】
2010146245.tif 000009
【図８】
2010146245.tif 000010
【図９】
2010146245.tif 000011
【図１０】
2010146245.tif 000012