(57)【要約】【課題】精度劣化が小さく、安全性（特徴量の秘匿性）が高い生体認証を実現する。【解決手段】登録時にクライアントが取得した生体情報から登録用特徴量配列を作成し、これを変換した位置補正用テンプレートおよび照合テンプレートをサーバに登録する。  認証時には、クライアントが取得した生体情報から認証用特徴量配列を作成し、これを変換した位置補正用変換特徴量をサーバに送信する。サーバは位置補正テンプレートと位置補正用変換特徴量を用いて、登録用特徴量配列に対する認証用特徴量配列の位置補正量を検出し、クライアントに送信する。クライアントは位置補正量を用いて認証用特徴量配列を補正し、更に変換した照合用変換特徴量配列をサーバに送信する。サーバは照合テンプレートと、照合用変換特徴量配列との距離を計算し、これに基づいて認証成否を判定する。【選択図】図１
2010108365.tif 000002
【特許請求の範囲】
【請求項１】
クライアントは、生体情報の登録時に、
登録者の生体情報から登録用特徴量配列を抽出し、
前記登録用特徴量配列を変換する第１の照合用変換パラメータを生成し、
前記登録用特徴量配列から位置補正テンプレートを作成し、
前記第１の照合用変換パラメータを用いて、前記登録用特徴量配列を変換した照合テンプレートを作成し、
前記位置補正テンプレートおよび前記照合テンプレートをサーバに送信し、
認証時に、
利用者の生体情報から認証用特徴量配列を抽出し、
前記認証用特徴量配列を変換する第２の照合用変換パラメータを生成し、
前記認証用特徴量配列から位置補正用変換特徴量を作成し、
前記位置補正用変換特徴量を前記サーバに送信し、
前記サーバは、前記クライアントから送信された前記位置補正テンプレートおよび前記照合テンプレートを接続するデータベースに格納し、
前記データベースに格納された前記位置補正テンプレートと前記クライアントから送信された前記位置補正用変換特徴量とを用いて、前記登録用特徴量配列と前記認証用特徴量配列との間の位置補正量を計算し、
前記位置補正量を前記クライアントに送信し、
前記クライアントは、前記位置補正量に基づいて、前記認証用特徴量配列を位置補正した補正特徴量配列を作成し、
前記第２の照合用変換パラメータを用いて、前記補正特徴量配列を変換した照合用変換特徴量配列を作成し、
前記照合用変換特徴量配列を前記サーバに送信し、
前記サーバは、前記データベースに格納された前記照合テンプレートと前記クライアントから送信された前記照合用変換特徴量配列との距離を計算し、
前記距離と所定の認証閾値との比較に基づいて、前記利用者の前記登録者との認証成否を判定することを特徴とする生体認証方法。
【請求項２】
前記登録用特徴量配列および前記認証用特徴量配列の各々は、所定のサイズＬのビット配列であり、
前記第１の照合用変換パラメータの生成は、サイズＬのランダムなマスク用ビット配列の生成を含み、
前記第１の照合用変換パラメータは、前記マスク用ビット配列を含み、
前記照合テンプレートは、前記登録用特徴量配列と前記マスク用ビット配列との排他的論理和を求めた配列であり、
前記照合用変換特徴量配列は、前記補正特徴量配列と前記マスク用ビット配列との排他的論理和を求めた配列であり、
前記距離はハミング距離であることを特徴とする請求項１記載の生体認証方法。
【請求項３】
前記登録用特徴量配列、前記補正特徴量配列、及び前記マスク用ビット配列の各々は、ドントケアビット“＊”を含むビット配列であり、
前記照合テンプレートを求める前記登録用特徴量配列と前記マスク用ビット配列との排他的論理和、及び前記照合用変換特徴量配列を求める前記補正特徴量配列と前記マスク用ビット配列との排他的論理和の各々は、互いのビットの少なくとも一方がドントケアビット“＊”であるならば、その排他的論理和をドントケアビット“＊”とする規則に従って計算し、
前記照合テンプレートと前記照合用変換特徴量配列との前記ハミング距離は、前記照合テンプレートと前記照合用変換特徴量配列との排他的論理和を求めたビット配列に含まれるビット“１”の数であることを特徴とする請求項２記載の生体認証方法。
【請求項４】
前記登録用特徴量配列および前記認証用特徴量配列の各々は、所定のサイズＬのビット配列であり、
前記第１の照合用変換パラメータの生成は、サイズＭのランダムな連結配列の生成と、サイズ（Ｌ＋Ｍ）の配列に対して、その要素同士の位置を置換する置換パターンの生成とを含み、
前記照合テンプレートの作成は、前記登録用特徴量配列と前記連結配列とを連結したサイズ（Ｌ＋Ｍ）の登録用連結配列の作成と、前記置換パターンに従って前記登録用連結配列を置換した前記照合テンプレートの作成とを含み、
前記照合用変換特徴量配列の作成は、前記連結配列に対して所定のオフセットハミング距離δだけ離れたサイズＭの修飾連結配列の生成と、前記認証用特徴量配列と前記修飾連結配列とを連結したサイズ（Ｌ＋Ｍ）の認証用連結配列の作成と、前記置換パターンに従って前記認証用連結配列を置換した前記照合用変換特徴量配列の作成とを含み、
前記照合テンプレートと前記照合用変換特徴量配列との距離の計算は、前記照合テンプレートと前記照合用変換特徴量配列とのハミング距離ｄから、前記オフセットハミング距離δを引いた補正ハミング距離（ｄ−δ）の計算であり、
前記認証成否の判定のための前記距離は、前記補正ハミング距離であることを特徴とする請求項１記載の生体認証方法。
【請求項５】
前記位置補正テンプレートの作成は、前記登録用特徴量配列の部分を切り出した、登録用局所特徴量配列の作成を含み、
前記位置補正用変換特徴量の作成は、前記認証用特徴量配列の部分を切り出した、認証用部分特徴量配列の作成を含み、
前記位置補正量の計算は、前記登録用局所特徴量配列に対し、前記認証用部分特徴量配列を繰り返しシフトしながら距離を計算し、距離が最小となるシフト量を前記位置補正量とし、
前記補正特徴量配列の作成は、前記認証用特徴量配列を、前記位置補正量だけシフトすることを特徴とする請求項１〜４のいずれか１項に記載の生体認証方法。
【請求項６】
前記生体情報の登録時に、
前記登録用特徴量配列を変換する位置補正用変換パラメータを生成し、
前記位置補正テンプレートの作成は、前記登録用特徴量配列から登録用局所特徴量配列の切り出しと、前記登録用局所特徴量配列を、前記位置補正用変換パラメータを用いて変換した前記位置補正テンプレートの作成とを含み、
前記位置補正用変換特徴量の作成は、前記認証用特徴量配列から認証用部分特徴量配列の切り出しと、前記認証用部分特徴量配列を、前記位置補正用変換パラメータを用いて変換した前記位置補正用変換特徴量の作成とを含むことを特徴とする、請求項１〜５のいずれか１項に記載の生体認証方法。
【請求項７】
前記位置補正用変換パラメータは、ランダムに作成した可逆なフィルタであり、
前記位置補正用変換パラメータを用いた前記登録用局所特徴量配列の変換は、前記登録用局所特徴量配列の要素の値０，１，＊をそれぞれ所定の整数および実数のいずれか一方の値ａ，ｂ，ｃに置き換える登録用符号化局所特徴量配列の作成と、前記登録用符号化局所特徴量配列の逆順に並べ替える逆順ソートと、前記逆順ソートした配列に対する前記フィルタの畳み込みとを含み、
前記位置補正用変換パラメータを用いた前記認証用部分特徴量配列の変換は、前記認証用部分特徴量配列の要素の値０，１，＊をそれぞれ所定の整数および実数のいずれか一方の値ａ’，ｂ’，ｃ’に置き換える認証用符号化部分特徴量配列の作成と、前記認証用符号化部分特徴量配列に対する前記フィルタの逆畳み込みとを含み、
前記位置補正量の計算は、前記位置補正テンプレートと前記位置補正用変換特徴量とからの、前記登録用符号化部分特徴量配列と前記認証用符号化部分特徴量配列との相関配列の計算と、前記相関配列中で、最大値をとる配列要素の位置の検索と、前記位置に基づいて前記位置補正量の決定とを含むことを特徴とする請求項６に記載の生体認証方法。
【請求項８】
生体情報の登録時に登録者の生体情報から登録用特徴量配列を抽出し、認証時に、利用者の生体情報から認証用特徴量配列を抽出する特徴量抽出部、
前記登録時に前記登録用特徴量配列を変換する第１の照合用変換パラメータを生成し、前記認証時に前記認証用特徴量配列を変換する第２の照合用変換パラメータを生成する照合用変換パラメータ作成部、
前記登録時に前記登録用特徴量配列を変換し位置補正テンプレートを作成する位置補正用変換パラメータ作成部、
前記認証時に前記認証用特徴量配列から位置補正用変換特徴量を作成する位置補正用特徴量変換部、および
前記登録時に前記第１の照合用変換パラメータを用いて、前記登録用特徴量配列を変換した照合テンプレートを作成し、前記認証時に位置補正量に基づいて、前記認証用特徴量配列を位置補正した補正特徴量配列を作成し、前記第２の照合用変換パラメータを用いて、前記補正特徴量配列を変換した照合用変換特徴量配列を作成する照合用特徴量変換部を有するクライアントと、
前記位置補正テンプレートと前記位置補正用変換特徴量とを用いて、前記登録用特徴量配列と前記認証用特徴量配列との間の前記位置補正量を計算する位置補正量計算部、および
前記照合テンプレートと前記照合用変換特徴量配列との距離を計算し、前記距離と所定の認証閾値との比較に基づいて、前記利用者の前記登録者との認証成否を判定する照合判定部を有する、前記クライアントと接続するサーバを設けることを特徴とする生体認証システム。
【請求項９】
前記登録用特徴量配列および前記認証用特徴量配列の各々は、所定のサイズＬのビット配列であり、
前記照合用変換パラメータ作成部が生成する前記第１の照合用変換パラメータは、サイズＬのランダムなマスク用ビット配列を含み、
前記照合テンプレートは、前記登録用特徴量配列と前記マスク用ビット配列との排他的論理和を求めた配列であり、
前記照合用変換特徴量配列は、前記補正特徴量配列と前記マスク用ビット配列との排他的論理和を求めた配列であり、
前記距離はハミング距離であることを特徴とする請求項８記載の生体認証システム。
【請求項１０】
前記登録用特徴量配列、前記補正特徴量配列、及び前記マスク用ビット配列の各々は、ドントケアビット“＊”を含むビット配列であり、
前記照合テンプレートを求める前記登録用特徴量配列と前記マスク用ビット配列との排他的論理和、及び前記照合用変換特徴量配列を求める前記補正特徴量配列と前記マスク用ビット配列との排他的論理和の各々は、互いのビットの少なくとも一方がドントケアビット“＊”であるならば、その排他的論理和をドントケアビット“＊”とする規則に従って計算し、
前記照合テンプレートと前記照合用変換特徴量配列との前記ハミング距離は、前記照合テンプレートと前記照合用変換特徴量配列との排他的論理和を求めたビット配列に含まれるビット“１”の数であることを特徴とする請求項９記載の生体認証システム。
【請求項１１】
前記登録用特徴量配列および前記認証用特徴量配列の各々は、所定のサイズＬのビット配列であり、
前記照合用変換パラメータ作成部による前記第１の照合用変換パラメータの生成は、サイズＭのランダムな連結配列の生成と、サイズ（Ｌ＋Ｍ）の配列に対して、その要素同士の位置を置換する置換パターンの生成とを含み、
前記照合用特徴量変換部による前記照合テンプレートの作成は、前記登録用特徴量配列と前記連結配列とを連結したサイズ（Ｌ＋Ｍ）の登録用連結配列の作成と、前記置換パターンに従って前記登録用連結配列を置換した前記照合テンプレートの作成とを含み、
前記照合用特徴量変換部による前記照合用変換特徴量配列の作成は、前記連結配列に対して所定のオフセットハミング距離δだけ離れたサイズＭの修飾連結配列の生成と、前記認証用特徴量配列と前記修飾連結配列とを連結したサイズ（Ｌ＋Ｍ）の認証用連結配列の作成と、前記置換パターンに従って前記認証用連結配列を置換した前記照合用変換特徴量配列の作成とを含み、
前記位置補正量計算部による前記照合テンプレートと前記照合用変換特徴量配列との距離の計算は、前記照合テンプレートと前記照合用変換特徴量配列とのハミング距離ｄから、前記オフセットハミング距離δを引いた補正ハミング距離（ｄ−δ）の計算であり、
前記照合判定部による前記認証成否の判定のための前記距離は、前記補正ハミング距離であることを特徴とする請求項８記載の生体認証システム。
【請求項１２】
前記位置補正用特徴量変換部による前記位置補正テンプレートの作成は、
前記登録用特徴量配列の部分を切り出した、登録用局所特徴量配列の作成を含み、
前記位置補正用特徴量変換部による前記位置補正用変換特徴量の作成は、前記認証用特徴量配列の部分を切り出た、認証用部分特徴量配列の作成を含み、
位置補正量計算部による前記位置補正量の計算は、前記登録用局所特徴量配列に対し、前記認証用部分特徴量配列を繰り返しシフトしながら距離を計算し、距離が最小となるシフト量を前記位置補正量とし、
前記補正特徴量配列の作成は、前記認証用特徴量配列を、前記位置補正量だけシフトすることを特徴とする請求項８〜１１のいずれか１項に記載の生体認証システム。
【請求項１３】
前記位置補正用変換パラメータ作成部は、前記登録時に前記登録用特徴量配列を変換する位置補正用変換パラメータを生成し、
前記位置補正用変換パラメータ作成部による前記位置補正テンプレートの作成は、前記登録用特徴量配列から登録用局所特徴量配列の切り出しと、前記登録用局所特徴量配列を、前記位置補正用変換パラメータを用いて変換した前記位置補正テンプレートの作成とを含み、
前記位置補正用特徴量変換部による前記位置補正用変換特徴量の作成は、前記認証用特徴量配列から認証用部分特徴量配列の切り出しと、前記認証用部分特徴量配列を、前記位置補正用変換パラメータを用いて変換した前記位置補正用変換特徴量の作成とを含むことを特徴とする、請求項８〜１２のいずれか１項に記載の生体認証システム。
【請求項１４】
前記位置補正用変換パラメータは、ランダムに作成した可逆なフィルタであり、
前記位置補正用変換パラメータを用いた前記登録用局所特徴量配列の変換は、前記登録用局所特徴量配列の要素の値０，１，＊をそれぞれ所定の整数および実数のいずれか一方の値ａ，ｂ，ｃに置き換える登録用符号化局所特徴量配列の作成と、前記登録用符号化局所特徴量配列の逆順に並べ替える逆順ソートと、前記逆順ソートした配列に対する前記フィルタの畳み込みとを含み、
前記位置補正用変換パラメータを用いた前記認証用部分特徴量配列の変換は、前記認証用部分特徴量配列の要素の値０，１，＊をそれぞれ所定の整数および実数のいずれか一方の値ａ’，ｂ’，ｃ’に置き換える認証用符号化部分特徴量配列の作成と、前記認証用符号化部分特徴量配列に対する前記フィルタの逆畳み込みとを含み、
前記位置補正量の計算は、前記位置補正テンプレートと前記位置補正用変換特徴量とからの、前記登録用符号化部分特徴量配列と前記認証用符号化部分特徴量配列との相関配列の計算と、前記相関配列中で、最大値をとる配列要素の位置の検索と、前記位置に基づいて前記位置補正量の決定とを含むことを特徴とする請求項１３に記載の生体認証システム。
【請求項１５】
生体情報の登録時に登録者の生体情報から登録用特徴量配列を抽出する第１の特徴量抽出部、前記登録用特徴量配列を変換する第１の照合用変換パラメータを生成する第１の照合用変換パラメータ作成部、前記登録用特徴量配列を変換し位置補正テンプレートを作成する位置補正用変換パラメータ作成部、および前記第１の照合用変換パラメータを用いて、前記登録用特徴量配列を変換した照合テンプレートを作成する第１の照合用特徴量変換部を有する登録用クライアントと、
認証時に、利用者の生体情報から認証用特徴量配列を抽出する第２の特徴量抽出部、前記認証用特徴量配列を変換する第２の照合用変換パラメータを生成する第２の照合用変換パラメータ作成部、前記認証用特徴量配列から位置補正用変換特徴量を作成する位置補正用特徴量変換部、および位置補正量に基づいて、前記認証用特徴量配列を位置補正した補正特徴量配列を作成し、前記第２の照合用変換パラメータを用いて、前記補正特徴量配列を変換した照合用変換特徴量配列を作成する第２の照合用特徴量変換部を有する認証用クライアントと、
前記位置補正テンプレートと前記位置補正用変換特徴量とを用いて、前記登録用特徴量配列と前記認証用特徴量配列との間の前記位置補正量を計算する位置補正量計算部、および前記照合テンプレートと前記照合用変換特徴量配列との距離を計算し、前記距離と所定の認証閾値との比較に基づいて、前記利用者の前記登録者との認証成否を判定する照合判定部を有する、前記登録用クライアント及び前記認証用クライアントと接続するサーバを設けることを特徴とする生体認証システム。
【請求項１６】
前記登録用特徴量配列および前記認証用特徴量配列の各々は、所定のサイズＬのビット配列であり、
前記第１の照合用変換パラメータ作成部が生成する前記第１の照合用変換パラメータは、サイズＬのランダムなマスク用ビット配列を含み、
前記照合テンプレートは、前記登録用特徴量配列と前記マスク用ビット配列との排他的論理和を求めた配列であり、
前記照合用変換特徴量配列は、前記補正特徴量配列と前記マスク用ビット配列との排他的論理和を求めた配列であり、
前記距離はハミング距離であることを特徴とする請求項１５記載の生体認証システム。
【請求項１７】
前記登録用特徴量配列、前記補正特徴量配列、及び前記マスク用ビット配列の各々は、ドントケアビット“＊”を含むビット配列であり、
前記照合テンプレートを求める前記登録用特徴量配列と前記マスク用ビット配列との排他的論理和、及び前記照合用変換特徴量配列を求める前記補正特徴量配列と前記マスク用ビット配列との排他的論理和の各々は、互いのビットの少なくとも一方がドントケアビット“＊”であるならば、その排他的論理和をドントケアビット“＊”とする規則に従って計算し、
前記照合テンプレートと前記照合用変換特徴量配列との前記ハミング距離は、前記照合テンプレートと前記照合用変換特徴量配列との排他的論理和を求めたビット配列に含まれるビット“１”の数であることを特徴とする請求項１６記載の生体認証システム。
【請求項１８】
前記登録用特徴量配列および前記認証用特徴量配列の各々は、所定のサイズＬのビット配列であり、
前記第１の照合用変換パラメータ作成部による前記第１の照合用変換パラメータの生成は、サイズＭのランダムな連結配列の生成と、サイズ（Ｌ＋Ｍ）の配列に対して、その要素同士の位置を置換する置換パターンの生成とを含み、
前記第１の照合用特徴量変換部による前記照合テンプレートの作成は、前記登録用特徴量配列と前記連結配列とを連結したサイズ（Ｌ＋Ｍ）の登録用連結配列の作成と、前記置換パターンに従って前記登録用連結配列を置換した前記照合テンプレートの作成とを含み、
前記第２の照合用特徴量変換部による前記照合用変換特徴量配列の作成は、前記連結配列に対して所定のオフセットハミング距離δだけ離れたサイズＭの修飾連結配列の生成と、前記認証用特徴量配列と前記修飾連結配列とを連結したサイズ（Ｌ＋Ｍ）の認証用連結配列の作成と、前記置換パターンに従って前記認証用連結配列を置換した前記照合用変換特徴量配列の作成とを含み、
前記位置補正量計算部による前記照合テンプレートと前記照合用変換特徴量配列との距離の計算は、前記照合テンプレートと前記照合用変換特徴量配列とのハミング距離ｄから、前記オフセットハミング距離δを引いた補正ハミング距離（ｄ−δ）の計算であり、
前記照合判定部による前記認証成否の判定のための前記距離は、前記補正ハミング距離であることを特徴とする請求項１５記載の生体認証システム。
【請求項１９】
前記位置補正用特徴量変換部による前記位置補正テンプレートの作成は、前記登録用特徴量配列の部分を切り出した、登録用局所特徴量配列の作成を含み、
前記位置補正用特徴量変換部による前記位置補正用変換特徴量の作成は、前記認証用特徴量配列の部分を切り出た、認証用部分特徴量配列の作成を含み、
位置補正量計算部による前記位置補正量の計算は、前記登録用局所特徴量配列に対し、前記認証用部分特徴量配列を繰り返しシフトしながら距離を計算し、距離が最小となるシフト量を前記位置補正量とし、
前記補正特徴量配列の作成は、前記認証用特徴量配列を、前記位置補正量だけシフトすることを特徴とする請求項１５〜１８のいずれか１項に記載の生体認証方法。
【請求項２０】
前記位置補正用変換パラメータ作成部は、前記登録時に前記登録用特徴量配列を変換する位置補正用変換パラメータを生成し、
前記位置補正用変換パラメータ作成部による前記位置補正テンプレートの作成は、前記登録用特徴量配列から登録用局所特徴量配列の切り出しと、前記登録用局所特徴量配列を、前記位置補正用変換パラメータを用いて変換した前記位置補正テンプレートの作成とを含み、
前記位置補正用特徴量変換部による前記位置補正用変換特徴量の作成は、前記認証用特徴量配列から認証用部分特徴量配列の切り出しと、前記認証用部分特徴量配列を、前記位置補正用変換パラメータを用いて変換した前記位置補正用変換特徴量の作成とを含むことを特徴とする、請求項１５〜１９のいずれか１項に記載の生体認証システム。
【請求項２１】
前記位置補正用変換パラメータは、ランダムに作成した可逆なフィルタであり、
前記位置補正用変換パラメータを用いた前記登録用局所特徴量配列の変換は、前記登録用局所特徴量配列の要素の値０，１，＊をそれぞれ所定の整数および実数のいずれか一方の値ａ，ｂ，ｃに置き換える登録用符号化局所特徴量配列の作成と、前記登録用符号化局所特徴量配列の逆順に並べ替える逆順ソートと、前記逆順ソートした配列に対する前記フィルタの畳み込みとを含み、
前記位置補正用変換パラメータを用いた前記認証用部分特徴量配列の変換は、前記認証用部分特徴量配列の要素の値０，１，＊をそれぞれ所定の整数および実数のいずれか一方の値ａ’，ｂ’，ｃ’に置き換える認証用符号化部分特徴量配列の作成と、前記認証用符号化部分特徴量配列に対する前記フィルタの逆畳み込みとを含み、
前記位置補正量の計算は、前記位置補正テンプレートと前記位置補正用変換特徴量とからの、前記登録用符号化部分特徴量配列と前記認証用符号化部分特徴量配列との相関配列の計算と、前記相関配列中で、最大値をとる配列要素の位置の検索と、前記位置に基づいて前記位置補正量の決定とを含むことを特徴とする請求項２０に記載の生体認証システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、個人の生体情報を用いて本人を認証する生体認証方法およびシステムに関する。
【背景技術】
【０００２】
生体情報を用いた個人認証システムは、登録時に個人の生体情報を取得し、その生体情報から特徴量と呼ばれる情報を抽出して登録する。この登録情報をテンプレートという。認証時には、再び個人から生体情報を取得して特徴量を抽出し、先に登録されたテンプレートと照合して本人か否かを確認する。
【０００３】
クライアントとサーバがネットワークを介して接続されたシステムにおいて、サーバがクライアント側にいるユーザを生体認証する場合、典型的にはサーバがテンプレートを保持する。クライアントは認証時にユーザの生体情報を取得し、特徴量を抽出してサーバへ送信し、サーバは特徴量をテンプレートと照合して本人か否かを確認する。
【０００４】
しかし、テンプレートは個人を特定することのできる情報であるため、個人情報として厳密な管理が必要とされ、高い管理コストが必要となる。例え厳密に管理されていても、プライバシの観点からテンプレートを登録することに心理的な抵抗を感じる人も多い。また、一人の個人が持つ一種類の生体情報の数には限りがある（例えば指紋は１０本の指のみ）ため、パスワードや暗号鍵のように容易にテンプレートを変更することができない。仮にテンプレートが漏洩して偽造の危険が生じた場合、そのテンプレートを用いる生体認証を使用することができなくなるという問題がある。さらに、他のシステムに同じ生体情報を登録している場合には、他のシステムまで脅威にさらされることになる。
【０００５】
そこで、生体情報の登録時に特徴量を一定の関数（一種の暗号化）とクライアントが持つ秘密のパラメータ（一種の暗号鍵）で変換し、元の情報を秘匿した状態でテンプレートとしてサーバに保管し、認証時にクライアントが新たに抽出した生体情報の特徴量を、同じ関数とパラメータで変換してサーバへ送信し、サーバは受信した特徴量とテンプレートを変換された状態のまま照合する方法（キャンセラブル生体認証という）が提案されている。
【０００６】
この方法によれば、クライアントが変換パラメータを秘密に保持することで、サーバは認証時においても元の特徴量を知ることができず、個人のプライバシが保護される。またテンプレートが漏洩した場合にも、変換パラメータを変更して再度テンプレートを作成、登録することで、安全性を保つことができる。更に他のシステムに同じ生体情報を用いる場合に、各々異なるパラメータで変換したテンプレートを登録することで、一つのテンプレートが漏洩しても他のシステムの安全性が低下することを防止することができる。
【０００７】
キャンセラブル生体認証の具体的な実現方法は、生体情報の種類や照合アルゴリズムに依存する。特許文献１は、キャンセラブル虹彩認証の実現方法を示している。
【０００８】
特許文献２は、特徴量が画像、特に輝度値（整数）の二次元配列で表現されるデータであって、２枚の画像の位置ずれを考慮した最大相関値に基づき一致／不一致を判定するような生体認証技術に対して適用可能な実現方法（以下、相関不変ランダムフィルタリングと呼ぶ）を示している。
【０００９】
特許文献３および非特許文献１は、虹彩認証における特徴量（虹彩コード）は単純なビット列のみでは表現できず、撮像時のまぶたや光が反射している部分などの、虹彩パターンを抽出できなかった部分を示すマスクパターンが必要となること、及び二つの虹彩コードを比較する際、単純にハミング距離を計算するのではなく、一方の虹彩コードを少しずつ巡回シフトしながら繰り返しハミング距離を計算し、その最小値（最小ハミング距離）をしきい値と比較して一致／不一致を判定することを示している。
【００１０】
【特許文献１】特開２００５−２０９０１８号公報
【特許文献２】特開２００７−２９３８０７号公報
【特許文献３】特許第３３０７９３６号公報
【非特許文献１】J. Daugman， “How Iris Recognition Works”， IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY， VOL. 14， NO. 1， JANUARY 2004.
【発明の開示】
【発明が解決しようとする課題】
【００１１】
上記特許文献１は、任意のｎビットのコードX1，X2に対し、ハミング距離（HD、一致しないビットの数）が不変となるような、パラメトリックな変換f(X，R)の構成方法を示している。つまり任意のパラメータRに対し、以下が成立する。
【００１２】
HD(X1，X2)＝HD(f(X1，R)，f(X2，R))
具体的には、コードXに対して、Rから決まるランダムなコードをビット連結し（ビット連結ステップ）、Rから決まるランダムなパターンでビット位置を置換し（ビット置換ステップ）、更にRから決まるランダムなコードとの排他的論理和を取る（排他的論理和ステップ）。なお特許文献１では、上記排他的論理和ステップの代わりに「回転」処理を加えると記述されているが、これはビット置換ステップと排他的論理和ステップの組合せと等価である。
【００１３】
しかし、上記変換関数ｆを用いてキャンセラブル虹彩認証を構成することには、以下に示す問題点がある。
【００１４】
特許文献３および非特許文献１によれば、上記したように、虹彩認証における特徴量（虹彩コード）は単純なビット列のみでは表現できず、撮像時のまぶたや光が反射している部分などの、虹彩パターンを抽出できなかった部分を示すマスクパターンが必要となる。換言すれば｛０，１｝の２値のビット列ではなく、｛０，１，＊｝から成る３値のビット列で表現する必要がある。ここで“＊”は、虹彩パターンを抽出できなかった部分を示す値であり、ハミング距離の計算において０，１のいずれとも一致すると見なす特殊なビット（以下“Ｄｏｎ’ｔ ｃａｒｅ ｂｉｔ”と呼ぶ）である。特許文献１は、Ｄｏｎ’ｔ ｃａｒｅ ｂｉｔの存在を考慮していない。
【００１５】
また特許文献３および非特許文献１によれば、二つの虹彩コードを比較する際、単純にハミング距離を計算するのではなく、一方の虹彩コードを少しずつ巡回シフトしながら繰り返しハミング距離を計算し、その最小値（最小ハミング距離）をしきい値と比較して一致／不一致を判定する。虹彩コードの巡回シフトは、元の虹彩画像における回転変換に対応し、この操作によって、ユーザの姿勢変化などに起因する撮像時の虹彩の回転ずれを吸収する。特許文献１は、このようなシフト操作を考慮しておらず、回転ずれが全く存在しない場合にしか正しく照合することができず、認証精度が著しく劣化すると考えられる。
【００１６】
更に、上記の変換関数ｆにおいて、ビット連結するコードはRによって決定的に決まるものであり、認証毎に変化するものではない。一方、元の虹彩コードは認証毎にずれやノイズによって変化し得る。このため変換後のビット列を認証毎に記録し比較することで、何回認証しても変化しないビット位置は、連結ビットが置換された位置であることがわかる。従ってビット連結は虹彩コードを秘匿する上で安全性向上に寄与はしていない。
【００１７】
一方特許文献２は、特徴量画像（２次元配列）X1(i，j)，X2(i，j)に対し、その相関関数（相関画像）
C(i，j)＝X1(i，j)＊X2(i，j)＝ΣkΣl X1(k，l)X2(k−i，l−j)    （1）
を、X1，X2自体を秘匿したまま照合する方法を示している。これは、X1に対して、あるランダムに生成した可逆フィルタRを畳み込むことで秘匿し、またX2を反転した画像に対してRの逆フィルタR’を畳み込むことで秘匿し、秘匿された状態の２枚の画像を畳み込むことでC＝X1＊X2を計算する、という方法である。より具体的には、特徴量画像を基底変換（フーリエ変換または数論変換）した上で、各要素に対しパラメータにより決定されるランダムな値を乗算（登録時）または除算（認証時）して秘匿する。照合の際は、これらの変換画像同士を要素毎に乗算し、逆基底変換することで、相関画像を正しく計算することができる。相関画像C(i，j)は、X1に対してX2を相対的に(i，j)だけずらして（巡回シフトして）内積を計算した値を並べた２次元配列である。所定の最大ずれ許容量（ΔW，ΔH）に対して、その範囲内のC(i，j)の最大値を、所定のしきい値と比較することで、X1，X2の一致／不一致を判定することができる。
【００１８】
上記特許文献２の方法は、容易に１次元配列の特徴量（虹彩コードなど）にも適用することができ、これによって上記特許文献１の問題点の一つであった、巡回シフトを考慮しなくてはならない問題に対して、解決策を与えうる。しかし特許文献２の方法は特徴量配列同士の相関値を計算するものであり、特許文献３および非特許文献１に示される虹彩認証のように、本来Don’t care bitを考慮したハミングに基づいて判定すべき生体認証に適用した場合、認証精度が劣化する。
【００１９】
本発明の目的は、特徴量がDon’t care bitを含む１次元配列（ビット列）または２次元配列（画像）で表現され、その間の距離が、シフトずれ（位置ずれ）を考慮した最小ハミング距離で定義される生体認証方法やシステムに対して、精度劣化が小さく、安全性（特徴量の秘匿性）が高いキャンセラブル生体認証方法やシステムを与えることにある。
【課題を解決するための手段】
【００２０】
本発明は、次のような態様の生体認証方法及びそのシステムである。クライアントは、生体情報の登録時に、登録者の生体情報から登録用特徴量配列を抽出し、登録用特徴量配列を変換する第１の照合用変換パラメータを生成し、登録用特徴量配列から位置補正テンプレートを作成し、第１の照合用変換パラメータを用いて登録用特徴量配列を変換した照合テンプレートを作成し、位置補正テンプレートおよび照合テンプレートをサーバに送信する。認証時には、利用者の生体情報から認証用特徴量配列を抽出し、認証用特徴量配列を変換する第２の照合用変換パラメータを生成し、認証用特徴量配列から位置補正用変換特徴量を作成し、位置補正用変換特徴量をサーバに送信する。サーバは、位置補正テンプレートおよび照合テンプレートを接続するデータベースに格納し、位置補正テンプレートとクライアントから送信された位置補正用変換特徴量とを用いて、登録用特徴量配列と認証用特徴量配列との間の位置補正量を計算し、位置補正量をクライアントに送信する。クライアントはさらに、位置補正量に基づいて認証用特徴量配列を位置補正した補正特徴量配列を作成し、第２の照合用変換パラメータを用いて補正特徴量配列を変換した照合用変換特徴量配列を作成し、照合用変換特徴量配列をサーバに送信する。サーバは、データベースに格納された照合テンプレートとクライアントから送信された照合用変換特徴量配列との距離を計算し、距離と所定の認証閾値との比較に基づいて、利用者の登録者との認証成否を判定する。
【００２１】
本発明の望ましい他の態様は、登録用特徴量配列および認証用特徴量配列の各々は、所定のサイズＬのビット配列であり、第１の照合用変換パラメータの生成は、サイズＬのランダムなマスク用ビット配列の生成を含み、第１の照合用変換パラメータは、マスク用ビット配列を含み、照合テンプレートは、登録用特徴量配列とマスク用ビット配列との排他的論理和を求めた配列であり、照合用変換特徴量配列は、補正特徴量配列とマスク用ビット配列との排他的論理和を求めた配列であり、距離としてハミング距離を用いる。
【００２２】
本発明の望ましいさらに他の態様は、登録用特徴量配列および認証用特徴量配列の各々は、所定のサイズＬのビット配列であり、第１の照合用変換パラメータの生成は、サイズＭのランダムな連結配列の生成とサイズ（Ｌ＋Ｍ）の配列に対してその要素同士の位置を置換する置換パターンの生成とを含み、照合テンプレートの作成は、登録用特徴量配列と連結配列とを連結したサイズ（Ｌ＋Ｍ）の登録用連結配列の作成と、置換パターンに従って登録用連結配列を置換した照合テンプレートの作成とを含み、照合用変換特徴量配列の作成は、連結配列に対して所定のオフセットハミング距離δだけ離れたサイズＭの修飾連結配列の生成と、認証用特徴量配列と修飾連結配列とを連結したサイズ（Ｌ＋Ｍ）の認証用連結配列の作成と、置換パターンに従って認証用連結配列を置換した照合用変換特徴量配列の作成とを含み、照合テンプレートと照合用変換特徴量配列との距離の計算は、照合テンプレートと照合用変換特徴量配列とのハミング距離ｄから、オフセットハミング距離δを引いた補正ハミング距離（ｄ−δ）の計算であり、認証成否の判定のための距離は、補正ハミング距離である。
【００２３】
本発明の望ましいさらに他の態様は、位置補正テンプレートの作成は、登録用特徴量配列の部分を切り出した、登録用局所特徴量配列の作成を含み、位置補正用変換特徴量の作成は、認証用特徴量配列の部分を切り出た、認証用部分特徴量配列の作成を含み、位置補正量の計算は、登録用局所特徴量配列に対し、認証用部分特徴量配列を繰り返しシフトしながら距離を計算し、距離が最小となるシフト量を位置補正量とし、補正特徴量配列の作成は、認証用特徴量配列を位置補正量だけシフトする。
【００２４】
本発明の望ましいさらに他の態様は、生体情報の登録時に、登録用特徴量配列を変換する位置補正用変換パラメータを生成し、位置補正テンプレートの作成は、登録用特徴量配列から登録用局所特徴量配列の切り出しと、登録用局所特徴量配列を位置補正用変換パラメータを用いて変換した位置補正テンプレートの作成とを含み、位置補正用変換特徴量の作成は、認証用特徴量配列から認証用部分特徴量配列の切り出しと、認証用部分特徴量配列を位置補正用変換パラメータを用いて変換した位置補正用変換特徴量の作成とを含む。
【００２５】
本発明の望ましいさらに他の態様は、生体情報の登録用のクライアントと認証用のクライアントとを異にする。
【発明の効果】
【００２６】
本発明によれば、サーバに対し特徴量を秘匿したまま、精度劣化が小さく、安全性（特徴量の秘匿性）が高い生体認証を実現できる。
【発明を実施するための最良の形態】
【００２７】
以下、図面を参照して、本発明の実施形態について説明する。本実施形態では、生体情報の特徴量をクライアント内で変換してサーバに送信し、サーバは元の特徴量を知らずに照合を行う、サーバ／クライアント型のキャンセラブル生体認証システムを例にあげて説明する。
【００２８】
図１に、キャンセラブル生体認証システムの構成例を示す。
本実施形態のキャンセラブル生体認証システムは、登録・認証時の生体情報取得、特徴量抽出、および特徴量の変換を行うクライアント端末（以下、クライアント）１００と、テンプレートの保管と照合を行う認証サーバ（以下、サーバ）１３０が、インターネットやイントラネットなどのネットワークを介し接続して構成される。
【００２９】
クライアント１００は、ユーザ自身か又は信頼できる第三者によって管理され、生体情報（例えば虹彩や指紋、静脈など）を取得するセンサ１１０を有する共に、記録媒体１２０に対してデータを読み書きする。記録媒体１２０は、ＩＣカードやＵＳＢメモリなどの携帯型記録媒体としてユーザが管理するとしてもよいし、クライアントに固定して接続されたハードディスクなどの記録媒体でもよい。例えば自宅からインターネットバンキングを行う場合、クライアント１００はユーザが管理する自宅のＰＣであり、サーバ１３０は銀行が管理するサーバマシンとするような構成も可能である。このインターネットバンキングシステムの例では、ユーザの自宅のＰＣは認証用クライアントとして用い、登録用クライアントとして銀行に備えた窓口端末などを用いる構成でも良い。以下、説明を簡略化するために、クライアント１００を生体情報の登録及び認証に用いることを前提に説明する。
【００３０】
クライアント１００は、センサから取得した生体情報の特徴量を抽出する特徴量抽出部１０１と、擬似乱数生成部１０２と、位置補正用変換パラメータ作成部１０３と、位置補正用特徴量変換部１０４と、照合用変換パラメータ作成部１０５と、照合用特徴量変換部１０６と、記録媒体Ｉ／Ｆ部１０７と、サーバとの通信を行なう通信部１０８とから構成される。
【００３１】
ここで生体情報とは、例えば指紋画像や静脈画像、虹彩画像といったデータであり、特徴量とは、例えば指紋や静脈の画像を強調処理した画像（２次元配列）や、虹彩画像から特許文献３および非特許文献１に記載の方法で作成した虹彩コード（１次元配列）などを含む。特徴量の配列の各値は、｛０，１，＊｝（“＊”はDon’t care bit）の３値のいずれかを取るものとする。また２つの特徴量間の距離は、位置ずれ（シフトずれ）を考慮して少しずつずらしながら重ね合わせたときの、ハミング距離の最小値、あるいはそれを正規化した値で与えられるものとする。
【００３２】
サーバ１３０は、クライアント１００と通信を行う通信部１３１、テンプレートを管理するデータベース１３３、クライアントから受信した位置補正テンプレートおよび照合テンプレートをデータベース１３３に登録する登録部１３２、元の特徴量を知ることなく、登録特徴量と認証特徴量の位置ずれを補正するための位置補正量を計算する位置補正量計算部１３４と、元の特徴量を知ることなく、登録特徴量と位置ずれ補正後の認証用特徴量のハミング距離を計算し、一致／不一致を判定する照合判定部１３５とから構成される。
【００３３】
図２に、キャンセラブル生体認証システムを実現するクライアント１００、サーバ１３０のハードウェア構成例を示す。クライアント１００およびサーバ１３０の各々は、図のようにＣＰＵ２００、メモリ２０１、ＨＤＤ２０２、入力装置２０３、出力装置２０４、通信装置２０５とから構成することができる。クライアント１００においても、サーバ１３０においても図１に示す各処理部に対応するプログラムおよび各種データをメモリ２０１やＨＤＤ２０２に格納し、それらのプログラムをＣＰＵ２００が実行することにより、本実施形態の生体認証システムを実現する。入力装置２０３や出力装置２０４は、適宜ユーザやサーバの管理者により用いられ、通信装置２０５はネットワークに接続される。
【００３４】
図３に、本実施形態における生体情報の登録処理フロー図を示す。クライアント１００の擬似乱数生成部１０２が、時刻やオペレータのランダムなキーボード入力などをシードとして擬似乱数を生成し、以降の擬似乱数生成において用いる乱数シードをランダムに生成する。これを擬似乱数生成部１０２のシードとして設定する（Ｓ３０１）。
【００３５】
位置補正用変換パラメータ作成部１０３が、擬似乱数生成部１０２を用いて、位置補正用変換パラメータをランダムに生成する（Ｓ３０２）。生成方法の詳細は後述する。
【００３６】
照合用変換パラメータ作成部１０５が、擬似乱数生成部１０２を用いて、照合用変換パラメータをランダムに生成する（Ｓ３０３）。生成方法の詳細は後述する。
【００３７】
センサ１１０がユーザ(登録者)の生体情報を取得する（Ｓ３０４）。
【００３８】
特徴量抽出部１０１が、取得した生体情報から登録特徴量を抽出する（Ｓ３０５）。ここでは例として、特徴量がサイズＷ×Ｈの画像（２次元配列）であり、登録用特徴量配列と呼ぶ。前述のように、各要素（画素）の値は｛０，１，＊｝のいずれかを取るものとする。
【００３９】
位置補正用特徴量変換部１０４が、Ｓ３０２で生成した位置補正用変換パラメータを用いて、登録特徴量を変換し、位置補正テンプレートを作成する（Ｓ３０６）。変換方法の詳細は後述する。
【００４０】
照合用特徴量変換部１０６が、Ｓ３０３で生成した照合用変換パラメータを用いて、登録特徴量を変換し、照合テンプレートを作成し、位置補正テンプレートと照合テンプレートをサーバ１３０に送信する（Ｓ３０７）。変換方法の詳細は後述する。
【００４１】
サーバ１３０の登録部１３２が、受信した位置補正テンプレートと照合テンプレートを、データベース１３３に登録する（Ｓ３０８）。
【００４２】
クライアント１００の記録媒体Ｉ／Ｆ部１０７が、記録媒体１２０に、擬似乱数生成部１０２が設定した乱数シードを書き込む（Ｓ３０９）。記録媒体１２０はユーザが所持、管理する。
【００４３】
なお、後述するマスクコードや連結コードなども記録媒体１２０に格納し、登録時にクライアント１００内で生成した各種データやパラメータなどを削除しておくことにより、クライアント１００に対する不正アクセスによる生体認証に係る情報の漏洩を防止することができる。また、認証用クライアントを登録用クライアントと異にするシステム構成においては、マスクコードや連結コードなどの記録媒体１２０への格納が必要となる。
【００４４】
図４に、本実施形態における生体情報の認証フロー図を示す。
クライアント１００の記録媒体Ｉ／Ｆ部１０７が、ユーザの記録媒体１２０から乱数シードを読み込み、擬似乱数生成部１０２のシードとして設定する（Ｓ４０１）。
【００４５】
位置補正用変換パラメータ作成部１０３が、擬似乱数生成部１０２を用いて、位置補正用変換パラメータをランダムに生成する（Ｓ４０２）。
【００４６】
照合用変換パラメータ作成部１０５が、擬似乱数生成部１０２を用いて、照合用変換パラメータをランダムに生成する（Ｓ４０３）。ここで、Ｓ４０１で設定した乱数シードが登録フローのＳ３０９で書き込んだ乱数シードと同一であれば、擬似乱数生成部１０２は全く同じ乱数列を出力するため、Ｓ３０２とＳ４０２は同一の位置補正用変換パラメータを生成し、Ｓ３０３とＳ４０３は同一の照合用変換パラメータを生成する。
【００４７】
センサ１１０がユーザ(利用者)の生体情報を取得する（Ｓ４０４）。
特徴量抽出部１０１が、取得した生体情報から認証特徴量（認証用特徴量配列）を抽出する（Ｓ４０５）。
【００４８】
位置補正用特徴量変換部１０４が、Ｓ４０２で生成した位置補正用変換パラメータを用いて、認証特徴量を変換し、位置補正用変換特徴量を作成し、作成した位置補正用変換特徴量をサーバ１３０に送信する（Ｓ４０６）。変換方法の詳細は後述する。
【００４９】
サーバ１３０の位置補正量計算部１３４は、受信した位置補正用変換特徴量と、データベース１３３に登録してある位置補正テンプレートとを用いて、登録特徴量と認証特徴量の間の位置補正量を計算し、求めた位置補正量をクライアント１００に送信する（Ｓ４０７）。
【００５０】
クライアント１００の照合用特徴量変換部１０６は、認証特徴量を、受信した位置補正量を用いて位置補正し、Ｓ４０３で生成した照合用変換パラメータを用いて、位置補正した認証特徴量(補正特徴量配列と呼ぶ)を変換し、照合用変換特徴量を作成し、サーバ１３０に送信する（Ｓ４０８）。
【００５１】
サーバ１３０の照合判定部１３５は、受信した照合用変換特徴量と、データベース１３３に登録してある照合テンプレートとのハミング距離を計算し、所定のしきい値以下であれば、認証ユーザ(利用者)の登録ユーザ(登録者)との認証成功、そうでなければ認証失敗と判定(成否判定)する（Ｓ４０９）。
【００５２】
このようにサーバ１３０は元の登録特徴量および認証特徴量を知ることなく、その一致／不一致を判定することができる。
【００５３】
以下では、登録時、認証時における、位置補正用特徴量変換フローおよび、照合用特徴量変換フローを説明する。なお位置補正用特徴量変換は、たとえば特許文献２に記載の生体特徴量の変換方法を用いる。
【００５４】
図５に、登録時の位置補正用変換パラメータ生成（Ｓ３０２）および位置補正用特徴量変換（Ｓ３０６）の詳細なフロー図を示す。
【００５５】
位置補正用変換パラメータ生成（Ｓ３０２）では、まず擬似乱数生成部１０２が擬似乱数列を生成する（Ｓ５０１）。
次に位置補正用変換パラメータ作成部１０３が、ランダムフィルタを生成する（Ｓ５０２）。ランダムフィルタは、サイズがＷ２×Ｈ２の二次元配列であり、配列の各要素は所定の範囲で一様ランダムな整数値を取るよう作成する。
【００５６】
位置補正用特徴量変換（Ｓ３０６）では、まず位置補正用特徴量変換部１０４が、登録特徴量の画像中心から、サイズＷ１×Ｈ１（Ｗ１≦Ｗ２、Ｈ１≦Ｈ２）の局所画像（登録用局所特徴量配列）を切り出す（Ｓ５０３）。ここでＷ１、Ｈ１は、登録特徴量と認証特徴量を重ね合わせる際の位置補正量(Δx，Δy)の許容範囲を、
−ΔＷ≦Δx≦ΔＷ、−ΔＨ≦Δy≦ΔＨとした場合、
Ｗ１＝Ｗ２−２×ΔＷ、Ｈ１＝Ｈ２−２×ΔＨとする。
【００５７】
次に局所画像の各画素値を次の規則に従って符号化（数値化）する（Ｓ５０４）。符号化した配列（局所画像）を、登録用符号化局所特徴量配列と呼ぶ。
１→１、０→−1、＊→０
符号化した局所画像の上下左右を反転する（Ｓ５０５）。
反転した画像（サイズＷ１×Ｈ１）を中心に、サイズをＷ２×Ｈ２まで拡張し、拡張領域を０でパディングする（Ｓ５０６）。
拡張およびパディングした画像を、基底変換（フーリエ変換または数論変換）する（Ｓ５０７）。
【００５８】
基底変換した画像とＳ５０２で生成したランダムフィルタ（いずれもサイズＷ２×Ｈ２）を、対応する画素毎に乗算し、位置補正テンプレートとする（Ｓ５０８）。なお乗算は、基底変換の定義体（フーリエ変換であれば複素数体、数論変換であれば素体Z/pZなど）上の演算とする。このように要素毎にランダムな値を乗算することで、元の画像を秘匿することができる。
【００５９】
図６に、認証時の位置補正用特徴量変換（Ｓ４０６）および位置補正量計算（Ｓ４０７）の詳細なフロー図を示す。
【００６０】
位置補正用特徴量変換（Ｓ４０６）では、まずクライアント１００の位置補正用特徴量変換部１０４が、認証特徴量の画像中心から、サイズＷ２×Ｈ２の部分画像（認証用部分特徴量配列）を切り出す（Ｓ６０１）。
【００６１】
次に、この部分画像の各画素値を次の規則に従って符号化（数値化）する（Ｓ６０２）。符号化した配列（部分画像）を、認証用符号化部分特徴量配列と呼ぶ。
１→１、０→−1、＊→０
符号化した部分画像を、基底変換（フーリエ変換または数論変換）する（Ｓ６０３）。
【００６２】
基底変換した画像の各画素値に対し、登録時に作成したランダムフィルタの対応する画素値で除算して作成した画像を位置補正用変換特徴量とし、サーバ１３０に送信する（Ｓ６０４）。なお除算は、基底変換の定義体（フーリエ変換であれば複素数体、数論変換であれば素体Z/pZなど）上の演算とする。
【００６３】
位置補正量計算（Ｓ４０７）では、サーバ１３０の位置補正量計算部１３４が、受信した位置補正用変換特徴量と、データベース１３３から読み出した位置補正テンプレートとを、対応する画素毎に乗算し、乗算画像を作成する（Ｓ６０５）。
【００６４】
作成した乗算画像を逆基底変換（逆フーリエ変換または逆数論変換）し、相関画像７００を計算する（Ｓ６０６）。相関画像は、登録特徴量から切り出した局所画像（登録用符号化部分特徴量配列）と、認証特徴量から切り出した部分画像（認証用符号化部分特徴量配列）の相関関数（相関画像、相関配列）(式(１))となる。
【００６５】
相関画像７００から、相関のピーク位置（最大値をとる配列要素の位置）を探索する（Ｓ６０７）。図７に相関画像７００の模式図を示す。相関画像C(x，y)は、認証特徴量から切り出した部分画像に対して登録特徴量から切り出した局所画像を(x，y)だけずらして重ね合わせたときの、対応する画素毎の乗算値の和（内積値）を格納している。この内積値が大きいほど、ずれ量(x，y)における画像の一致度が高いことを意味する。ここで相関画像上の座標(x，y)は巡回的であり、相関画像７００の、
左上（ΔＷ＋１）×（ΔＨ＋１）の領域は  0≦x≦ΔＷ、0≦y≦ΔＨ、
左下（ΔＷ＋１）×ΔＨ  の領域は  0≦x≦ΔＷ、−ΔＨ≦y＜0、
右上ΔＷ×（ΔＨ＋１）  の領域は  −ΔＷ≦x＜0、0≦y≦ΔＨ、
右下ΔＷ×ΔＨ  の領域は  −ΔＷ≦x＜0、−ΔＨ≦y＜0
とする。それ以外の領域は参照しない。上記の領域中の相関画像７００の画素値（内積値）の中の最大値を検索し、この最大値を達成する座標（図中、ピーク位置）を(Δx，Δy)とする。最大値を達成する座標が複数存在する場合は、そのうち１つを任意に選び(Δx，Δy)とする。(Δx，Δy)を位置補正量とする。
【００６６】
このように本実施形態では、最大値を達成する座標(Δx，Δy)を、位置補正量としてクライアント１００にフィードバックすることで、クライアント１００がサーバ１３０に対し元の特徴量を秘匿したまま、特徴量の位置補正を行うことが可能となる。更に本実施形態によれば、位置補正処理においてクライアントは元の登録特徴量を知ることができない。このため、不正なクライアント利用者が元の登録特徴量を入手しようとする攻撃を防止することができる。
【００６７】
なお特許文献１では、クライアント側で特徴量の位置補正を行なうことができないため、登録特徴量と認証特徴量にずれが存在する場合、正しく距離計算を行なうことができず、認証精度が大幅に劣化してしまう問題があった。本実施例はこの問題に対する解決策を与える。
【００６８】
図８に、登録時の照合用変換パラメータ生成（Ｓ３０３）および照合用特徴量変換（Ｓ３０７）の詳細なフロー図を示す。また図１０に、認証特徴量の位置補正およびパディング処理を説明する図を示す。認証特徴量画像は図１０に示すように、サイズＷ×Ｈの画像（２次元配列）で表現され、各画素値は｛０，１，＊｝のいずれかの値をとる。
【００６９】
照合用変換パラメータ生成（Ｓ３０３）では、まず擬似乱数生成部１０２が擬似乱数列を生成する（Ｓ８０１）。
【００７０】
次に照合用パラメータ作成部１０５が、長さＬ＝Ｗ×Ｈ(bit)の、Don’t care bitを含まないビット列(マスク用ビット配列)をランダムに作成し、マスクコードＣ１とする（Ｓ８０２）。
【００７１】
また長さＭ（≧0）bitの、Don’t care bitを含むビット列(連結配列)をランダムに作成し、連結コードＣ２とする（Ｓ８０３）。
【００７２】
更に、長さＮ＝Ｌ＋Ｍの置換
σ＝(σ(1)，σ(2)，・・・，σ(N))
をランダムに生成し、置換パターンとする（Ｓ８０４）。ここで置換σは、自然数集合{1，2，…，N}の任意の並べ替え（順列）であり、長さＮのビット列（配列）
ｂ＝(ｂ(1)，ｂ(2)，…，ｂ(N))
に対して、
ｂ’＝σｂ＝(ｂ(σ(1))，ｂ(σ(2))，・・・，ｂ(σ(N)))
なるビット列b’を対応させる写像を表す。
【００７３】
次に照合用特徴量変換（Ｓ３０７）では、まず照合用特徴量変換部１０６が、登録特徴量をビット列とみなした登録特徴量コードＸ（Ｌ bit）に対し、マスクコードＣ１との排他的論理和を計算する（Ｓ８１０）。
Ｘ１＝Ｘ（＋）Ｃ１      （“（＋）”は排他的論理和(XOR)を表す）
なおここで、任意のビットとDon’t care bit“＊”の排他的論理和は常に“＊”である。つまり
＊（＋）０＝０（＋）＊＝＊（＋）１＝１（＋）＊＝＊
である。（２値論理｛０，１｝における排他的論理和の演算条件(互いに異なれば1、同じならば0)に加えて、排他的論理和を求める少なくとも一方のビットが＊であるならば、その排他的論理和を＊とする。）
計算結果のビット列Ｘ１に対し、連結コードＣ２をビット連結する（Ｓ８１１）。
Ｘ２＝Ｘ１‖Ｃ２      （“‖”はビット連結を表す）
計算結果のビット列Ｘ２（登録用連結配列）に対し、置換パターンσによりビット置換する（Ｓ８１２）。
Ｘ’＝σ Ｘ２
置換後のビット列Ｘ’を、照合テンプレートとする。このように本実施形態によれば、登録特徴量に対してランダムなビット列との排他的論理和、ランダムなコードとの連結、ランダムなビット置換を施すことにより、元の特徴量を強固に秘匿した状態で、照合テンプレートとしてサーバ１３０に登録する。
【００７４】
図９に、認証時の位置補正および照合用特徴量変換（Ｓ４０８）および、照合判定（Ｓ４０９）の詳細なフロー図を示す。
【００７５】
位置補正および照合用特徴量変換（Ｓ４０８）では、まず擬似乱数生成部１０２が擬似乱数列を生成する（Ｓ９０１）。
【００７６】
次に照合用特徴量変換部１０６が、図１０に示すように、認証特徴量を位置補正量(Δx，Δy)だけシフトし、空いた領域をDon’t care bit“＊”でパディングする（Ｓ９０２）。なおシフトにより元の画像領域（サイズＷ×Ｈ）からはみ出した領域は切り捨てる。
【００７７】
シフトおよびパディングした画像（補正特徴量配列）をビット列とみなした補正特徴量コードＹ（Ｌ bit）に対し、マスクコードＣ１との排他的論理和を計算する（Ｓ９０３）。
Ｙ１＝Ｙ（＋）Ｃ１
連結コードＣ２に対し、所定のハミング距離δ（≦Ｍ）だけ離れた修飾連結コードＣ３（修飾連結配列）をランダムに作成する（Ｓ９０４）。修飾連結コードＣ３は、連結コードＣ２の中の０または１のビット位置からランダムにδ個を選択し、選択したビット位置のビットを反転するとともに、全ての＊のビット位置について｛０，１，＊｝の任意のビット値に置き換えることで作成する。
【００７８】
ビット列Ｙ１に対し、修飾連結コードＣ３をビット連結する（Ｓ９０５）。
Ｙ２＝Ｙ１‖Ｃ３
計算結果のビット列Ｙ２（認証用連結配列）に対し、前記置換パターンσによりビット置換し、置換後のビット列Ｙ’を照合用変換特徴量とする（Ｓ９０６）。
Ｙ’＝σ Ｙ２
照合判定（Ｓ４０９）では、まず照合判定部１３５が、照合用変換特徴量Ｙ’と照合テンプレートＸ’のハミング距離を計算し、そこから所定のハミング距離δを引いて、距離値ｄを計算する（Ｓ９１０）。
ｄ＝HD(Ｘ’，Ｙ’)−δ
ここで、任意のビット列Ａ，Ｂに対して
HD(Ａ，Ｂ)＝HW(Ａ（＋）Ｂ)，
（HW(Ｃ) はビット列Ｃにおける”1”のビット数(ハミング重み)）
HW(σＡ）＝HW(Ａ)，
HW(Ａ‖Ｂ）＝HW(Ａ)＋HW(Ｂ)
σＡ（＋）σＢ＝σ(Ａ（＋）Ｂ)
が成立するため、
HW(Ｘ’（＋）Ｙ’）
＝HW(σ((Ｘ（＋）Ｃ１)‖Ｃ２)（＋）σ((Ｙ（＋）Ｃ１)‖Ｃ３)）
＝HW(σ(((Ｘ（＋）Ｃ１)‖Ｃ２)（＋）((Ｙ（＋）Ｃ１)‖Ｃ３)))
＝HW(((Ｘ（＋）Ｃ１)‖Ｃ２)（＋）((Ｙ（＋）Ｃ１)‖Ｃ３))
＝HW(((Ｘ（＋）Ｃ１)（＋）(Ｙ（＋）Ｃ１))‖(Ｃ２（＋）Ｃ３))
＝HW((Ｘ（＋）Ｃ１)（＋）(Ｙ（＋）Ｃ１))＋HW(Ｃ２（＋）Ｃ３)
＝HW(Ｘ（＋）Ｙ)＋δ
となり、従って
ｄ＝HW(Ｘ（＋）Ｙ)
＝HD(Ｘ，Ｙ)
となる。つまり距離値ｄは登録特徴量Ｘと認証特徴量Ｙのハミング距離に一致する。
【００７９】
最後に距離値ｄを、所定の認証閾値ｔと比較し、
ｄ≦ｔ  ならば認証成功(OK)
ｄ＞ｔ  ならば認証失敗(NG)
と判定する（Ｓ９１１）。
【００８０】
なお非特許文献１では、ハミング距離ｄを、
Ｚ＝Ｘ（＋）Ｙ
における”0”または”1”のビット数ｎで割った正規化ハミング距離
ｄ’＝ｄ／ｎ
を用いて一致／不一致を判定する。
【００８１】
本実施形態は、以下のような計算を行なうことで、正規化ハミング距離に基づく認証にも適用することができる。
HW2(Ｃ)を、ビット列Ｃにおける”0”または”1”のビット数を表すものとする。任意のビット列Ａ，Ｂに対して
HW2(σＡ）＝HW2(Ａ)，
HW2(Ａ‖Ｂ）＝HW2(Ａ)＋HW2(Ｂ)
が成立するため、
HW2(Ｘ’（＋）Ｙ’)
＝HW2(σ((Ｘ（＋）Ｃ１)‖Ｃ２)（＋）σ((Ｙ（＋）Ｃ１)‖Ｃ３))
＝HW2(σ(((Ｘ（＋）Ｃ１)‖Ｃ２)（＋）((Ｙ（＋）Ｃ１)‖Ｃ３)))
＝HW2(((Ｘ（＋）Ｃ１)‖Ｃ２)（＋）((Ｙ（＋）Ｃ１)‖Ｃ３))
＝HW2(((Ｘ（＋）Ｃ１)（＋）(Ｙ（＋）Ｃ１))‖(Ｃ２（＋）Ｃ３))
＝HW2((Ｘ（＋）Ｃ１)（＋）(Ｙ（＋）Ｃ１))＋HW2(Ｃ２（＋）Ｃ３)
＝HW2(Ｘ（＋）Ｙ)＋HW2(Ｃ２)
＝ｎ＋δ2      （δ2＝HW2(Ｃ２)）
となる。従って登録時に予めδ2を計算し、サーバ１３０がテンプレートと共に記憶しておくことで、正規化ハミング距離の分母ｎを
ｎ＝HW2(Ｘ’（＋）Ｙ’)−δ2
と計算することができる。
【００８２】
以上のように本実施形態によれば、認証特徴量に対してランダムなビット列との排他的論理和、ランダムなコードとの連結、ランダムなビット置換を施すことにより、元の特徴量を強固に秘匿した状態で、照合用変換特徴量としてサーバ１３０に送信する。特に認証用連結コードＣ３を認証の度にランダムに作成するため、仮に悪意のあるサーバが、同一ユーザの複数回の認証における照合用変換特徴量を比較する攻撃を行っても、連結コードから置換されたビット位置を特定することはできず、高いセキュリティを実現する。
【００８３】
なお特許文献１の方法では、連結コードは認証の度に変化しない固定のコードであったため、攻撃により連結コードから置換されたビット位置を特定することが可能であり、連結コードの利用がセキュリティ向上に寄与しないという問題があった。本実施形態はこの問題に対する解決策を与える。
【００８４】
また特許文献２の方法では、特徴量同士の相関値に基づいて照合スコアを定義していたため、ハミング距離に基づく従来の認証アルゴリズムに対して適用した場合に認証精度が劣化する可能性があった。本実施形態は最終的にハミング距離に基づいて判定するため、特許文献２の方法と比較して精度劣化が小さいという利点がある。
【００８５】
本実施形態によれば、特徴量がDon’t care bitを含む１次元配列（ビット列）または２次元配列（画像）で表現され、その間の距離が、シフトずれ（位置ずれ）を考慮した最小ハミング距離で定義される生体認証方式を用いたクライアント／サーバ型の生体認証システムにおいて、従来の生体認証方式と同等の認証精度を保ったまま、クライアントがテンプレートを保持することなく、またサーバに対し特徴量を秘匿したまま、認証を受けることが可能な、キャンセラブル生体認証を実現することができる。これにより、多数のユーザを管理する大規模生体認証システムにおいて、サーバ管理者の不正やミスなどによる情報漏洩が発生しても、ユーザの生体情報（およびそこから抽出した特徴量）を安全に保護することが可能となる。
【図面の簡単な説明】
【００８６】
【図１】キャンセラブル生体認証システムの構成例を示す図である。
【図２】キャンセラブル生体認証システムを実現するクライアント、サーバのハードウェア構成を示す図である。
【図３】生体情報の登録処理フロー図である。
【図４】生体情報の認証処理フロー図である。
【図５】登録時の位置補正用変換パラメータ生成および位置補正用特徴量変換の処理フロー図である。
【図６】認証時の位置補正用特徴量変換および位置補正量計算の処理フロー図である。
【図７】相関画像の模式図である。
【図８】登録時の照合用変換パラメータ生成および照合用特徴量変換の処理フロー図である。
【図９】認証時の位置補正および照合用特徴量変換、および照合判定の処理フロー図である。
【図１０】認証特徴量の位置補正およびパディング処理を説明する図である。
【符号の説明】
【００８７】
１００：クライアント、１０１：特徴量抽出部、１０２：擬似乱数生成部、１０３：位置補正用変換パラメータ作成部、１０４：位置補正用特徴量変換部、１０５：照合用変換パラメータ作成部、１０６：照合用特徴量変換部、１０７：記録媒体I/F部、１０８：通信部、１１０：センサ、１２０：記録媒体、１３０：サーバ、１３１：通信部、１３２：登録部、１３３：データベース、１３４：位置補正量計算部、１３５：照合判定部、２００：ＣＰＵ、２０１：メモリ、２０２：ＨＤＤ、２０３：入力装置、２０４：出力装置、
２０５：通信装置、７００：相関画像。
【図１】
2010108365.tif 000003
【図２】
2010108365.tif 000004
【図３】
2010108365.tif 000005
【図４】
2010108365.tif 000006
【図５】
2010108365.tif 000007
【図６】
2010108365.tif 000008
【図７】
2010108365.tif 000009
【図８】
2010108365.tif 000010
【図９】
2010108365.tif 000011
【図１０】
2010108365.tif 000012