(57)【要約】【課題】情報を秘匿しつつ、効率的かつ高精度で情報を照合する。【解決手段】照合の対象である照合対象情報と、照合対象情報と照合される対象である複数の比較対象情報との入力を受け付け、受け付けた照合対象情報と複数の比較対象情報とを照合する情報照合装置であって、受け付けた照合対象情報を識別する照合対象識別情報を生成するとともに、受け付けた複数の比較対象情報のそれぞれを識別する複数の比較対象識別情報を生成し、照合対象識別情報と複数の比較対象識別情報とを秘匿状態にしたまま、複数の比較対象識別情報のうち、照合対象識別情報と一致する比較対象識別情報を抽出し、抽出された比較対象識別情報にて識別される比較対象情報と、受け付けた照合対象情報とを秘匿状態にしたまま、当該比較対象情報と当該照合対象情報とを照合する。【選択図】図１
2011024182.tif 000002
【特許請求の範囲】
【請求項１】
照合の対象である照合対象情報と、該照合対象情報と照合される対象である複数の比較対象情報との入力を受け付け、該受け付けた照合対象情報と複数の比較対象情報とを照合する情報照合装置であって、
前記受け付けた照合対象情報を識別する照合対象識別情報を生成するとともに、前記受け付けた複数の比較対象情報のそれぞれを識別する複数の比較対象識別情報を生成し、前記照合対象識別情報と複数の比較対象識別情報とを秘匿状態にしたまま、前記複数の比較対象識別情報のうち、前記照合対象識別情報と一致する比較対象識別情報を抽出し、該抽出された比較対象識別情報にて識別される比較対象情報と、前記受け付けた照合対象情報とを秘匿状態にしたまま、当該比較対象情報と当該照合対象情報とを照合する情報照合装置。
【請求項２】
請求項１に記載の情報照合装置において、
秘匿状態にされた情報を秘匿状態のままで演算する秘匿計算を実行する計算手段と、
前記照合対象情報と前記複数の比較対象情報との入力を受け付け、該受け付けた照合対象情報及び複数の比較対象情報のそれぞれを、前記秘匿計算が実行可能な形式で秘匿状態にした秘匿照合対象情報及び複数の秘匿比較対象情報を生成するとともに、前記照合対象識別情報及び前記複数の比較対象識別情報を生成する秘匿処理装置と、を有し、
前記秘匿処理装置は、前記照合対象識別情報から、前記秘匿照合対象情報に対応付けられた第１の照合用情報を生成するとともに、前記複数の比較対象識別情報のそれぞれから、前記複数の秘匿比較対象情報のそれぞれに対応付けられた複数の第２の照合用情報を生成し、
前記計算手段は、前記秘匿処理装置にて生成された複数の第２の照合用情報のうち、前記秘匿処理装置にて生成された第１の照合用情報と一致する第２の照合用情報に対応付けられた前記秘匿比較対象情報と、前記秘匿処理装置にて生成された秘匿照合対象情報とを前記秘匿計算を実行することによって照合する情報照合装置。
【請求項３】
請求項１に記載の情報照合装置において、
秘匿状態にされた情報を秘匿状態のままで演算する秘匿計算を実行する計算手段と、
前記照合対象情報と前記複数の比較対象情報との入力を受け付け、該受け付けた照合対象情報及び複数の比較対象情報のそれぞれを、前記秘匿計算が実行可能な形式で秘匿状態にした秘匿照合対象情報及び複数の秘匿比較対象情報を生成するとともに、前記照合対象識別情報及び前記複数の比較対象識別情報を生成する秘匿処理装置と、を有し、
前記秘匿処理装置は、前記照合対象識別情報及び複数の比較対象識別情報のそれぞれを、前記秘匿計算が実行可能な形式で秘匿状態にした秘匿照合対象識別情報及び複数の秘匿比較対象識別情報を生成し、
前記計算手段は、前記秘匿計算を実行することにより、前記秘匿処理装置にて生成された秘匿照合対象識別情報から、前記秘匿処理装置にて生成された秘匿照合対象情報に対応付けられた第１の照合用情報を生成するとともに、前記秘匿計算を実行することにより、前記秘匿処理装置にて生成された複数の秘匿比較対象識別情報のそれぞれから、前記秘匿処理装置にて生成された複数の秘匿比較対象情報のそれぞれに対応付けられた複数の第２の照合用情報を生成し、前記複数の第２の照合用情報のうち、前記第１の照合用情報と一致する第２の照合用情報に対応付けられた前記秘匿比較対象情報と、前記秘匿処理装置にて生成された秘匿照合対象情報とを前記秘匿計算を実行することによって照合する情報照合装置。
【請求項４】
請求項２または請求項３に記載の情報照合装置において、
前記計算手段は、複数の計算装置から構成され、
前記複数の計算装置は、当該計算装置が有する情報を当該計算装置以外の計算装置には秘匿したまま、当該複数の計算装置のそれぞれが有する情報に基づいて所定の演算を行うためのマルチパーティプロトコルを用いて前記秘匿計算を実行する情報照合装置。
【請求項５】
照合の対象である照合対象情報と、該照合対象情報と照合される対象である複数の比較対象情報との入力を受け付け、該受け付けた照合対象情報と複数の比較対象情報とを照合する情報照合装置における情報照合方法であって、
前記受け付けた照合対象情報を識別する照合対象識別情報を生成するとともに、前記受け付けた複数の比較対象情報のそれぞれを識別する複数の比較対象識別情報を生成する処理と、
前記照合対象識別情報と複数の比較対象識別情報とを秘匿状態にしたまま、前記複数の比較対象識別情報のうち、前記照合対象識別情報と一致する比較対象識別情報を抽出し、該抽出された比較対象識別情報にて識別される比較対象情報と、前記受け付けた照合対象情報とを秘匿状態にしたまま、当該比較対象情報と当該照合対象情報とを照合する照合処理と、を有する情報照合方法。
【請求項６】
請求項５に記載の情報照合方法において、
前記受け付けた照合対象情報及び複数の比較対象情報のそれぞれを、秘匿状態にされた情報を秘匿状態のままで演算する秘匿計算が実行可能な形式で秘匿状態にした秘匿照合対象情報及び複数の秘匿比較対象情報を生成する処理と、
前記照合対象識別情報から、前記秘匿照合対象情報に対応付けられた第１の照合用情報を生成するとともに、前記複数の比較対象識別情報のそれぞれから、前記複数の秘匿比較対象情報のそれぞれに対応付けられた複数の第２の照合用情報を生成する処理と、をさらに有し、
前記照合処理は、前記複数の第２の照合用情報のうち、前記第１の照合用情報と一致する第２の照合用情報に対応付けられた前記秘匿比較対象情報と、前記秘匿照合対象情報とを前記秘匿計算を実行することによって照合する処理である情報照合方法。
【請求項７】
請求項５に記載の情報照合方法において、
前記受け付けた照合対象情報及び複数の比較対象情報のそれぞれを、秘匿状態にされた情報を秘匿状態のままで演算する秘匿計算が実行可能な形式で秘匿状態にした秘匿照合対象情報及び複数の秘匿比較対象情報を生成する処理と、
前記照合対象識別情報及び複数の比較対象識別情報のそれぞれを、前記秘匿計算が実行可能な形式で秘匿状態にした秘匿照合対象識別情報及び複数の秘匿比較対象識別情報を生成する処理と、
前記秘匿計算を実行することにより、前記秘匿照合対象識別情報から、前記秘匿照合対象情報に対応付けられた第１の照合用情報を生成するとともに、前記秘匿計算を実行することにより、前記複数の秘匿比較対象識別情報のそれぞれから、前記複数の秘匿比較対象情報のそれぞれに対応付けられた複数の第２の照合用情報を生成する処理と、をさらに有し、
前記照合処理は、前記複数の第２の照合用情報のうち、前記第１の照合用情報と一致する第２の照合用情報に対応付けられた前記秘匿比較対象情報と、前記秘匿照合対象情報とを前記秘匿計算を実行することによって照合する処理である情報照合方法。
【請求項８】
照合の対象である照合対象情報と、該照合対象情報と照合される対象である複数の比較対象情報との入力を受け付け、該受け付けた照合対象情報と複数の比較対象情報とを照合する情報照合装置に、
前記受け付けた照合対象情報を識別する照合対象識別情報を生成するとともに、前記受け付けた複数の比較対象情報のそれぞれを識別する複数の比較対象識別情報を生成する機能と、
前記照合対象識別情報と複数の比較対象識別情報とを秘匿状態にしたまま、前記複数の比較対象識別情報のうち、前記照合対象識別情報と一致する比較対象識別情報を抽出し、該抽出された比較対象識別情報にて識別される比較対象情報と、前記受け付けた照合対象情報とを秘匿状態にしたまま、当該比較対象情報と当該照合対象情報とを照合する照合機能と、を実現させるためのプログラム。
【請求項９】
請求項８に記載のプログラムにおいて、
前記情報照合装置に、
前記受け付けた照合対象情報及び複数の比較対象情報のそれぞれを、秘匿状態にされた情報を秘匿状態のままで演算する秘匿計算が実行可能な形式で秘匿状態にした秘匿照合対象情報及び複数の秘匿比較対象情報を生成する機能と、
前記照合対象識別情報から、前記秘匿照合対象情報に対応付けられた第１の照合用情報を生成するとともに、前記複数の比較対象識別情報のそれぞれから、前記複数の秘匿比較対象情報のそれぞれに対応付けられた複数の第２の照合用情報を生成する機能と、をさらに実現させ、
前記照合機能は、前記複数の第２の照合用情報のうち、前記第１の照合用情報と一致する第２の照合用情報に対応付けられた前記秘匿比較対象情報と、前記秘匿照合対象情報とを前記秘匿計算を実行することによって照合する機能であるプログラム。
【請求項１０】
請求項８に記載のプログラムにおいて、
情報照合装置に、
前記受け付けた照合対象情報及び複数の比較対象情報のそれぞれを、秘匿状態にされた情報を秘匿状態のままで演算する秘匿計算が実行可能な形式で秘匿状態にした秘匿照合対象情報及び複数の秘匿比較対象情報を生成する機能と、
前記照合対象識別情報及び複数の比較対象識別情報のそれぞれを、前記秘匿計算が実行可能な形式で秘匿状態にした秘匿照合対象識別情報及び複数の秘匿比較対象識別情報を生成する機能と、
前記秘匿計算を実行することにより、前記秘匿照合対象識別情報から、前記秘匿照合対象情報に対応付けられた第１の照合用情報を生成するとともに、前記秘匿計算を実行することにより、前記複数の秘匿比較対象識別情報のそれぞれから、前記複数の秘匿比較対象情報のそれぞれに対応付けられた複数の第２の照合用情報を生成する機能と、をさらに実現させ、
前記照合機能は、前記複数の第２の照合用情報のうち、前記第１の照合用情報と一致する第２の照合用情報に対応付けられた前記秘匿比較対象情報と、前記秘匿照合対象情報とを前記秘匿計算を実行することによって照合する機能であるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力された複数の情報を照合する情報照合装置、情報照合方法及びプログラムに関する。
【背景技術】
【０００２】
近年、顔の形状や指紋、声紋、虹彩、静脈といった人の身体の特徴を利用することによって本人を認証する生体認証が普及してきている。生体認証においては、上述したような人の身体の特徴を示す情報である生体情報を、認証を行う認証装置等に予め記憶させておく必要がある。
【０００３】
認証装置等に記憶されている生体情報は、一度でも漏えいしてしまうと、例えその事実が発覚したとしても、パスワードのように変更をすることができない。この場合、なりすましのリスクが増大する等セキュリティ上の問題が生じるだけでなく、プライバシーの問題も生じる。
【０００４】
また、近年、複数の企業のそれぞれが有する顧客情報を相互に開示し合い、データマイニングを行う方法が注目されてきている。データマイニングとは、様々な統計解析手法を用いて大量の情報を分析し、情報が持つ意味や情報間の関連性を見つけ出す手法のことである。
【０００５】
データマイニングを行う際に、複数の企業のそれぞれが有する顧客情報をそのままの状態で開示し合うと、自社の顧客情報が外部に漏洩してしまう可能性がある。自社の顧客情報が外部に漏洩した場合、その企業の社会的な信用が失墜してしまう。
【０００６】
そこで、生体情報や顧客情報等の情報を秘匿しつつ、生体認証の認証結果やデータマイニングの結果等の処理結果を得る演算を行うための技術が求められ、それを可能にする技術が例えば、非特許文献１〜５に開示されている。
【０００７】
非特許文献２〜５には、ある数値を暗号化し、その数値を明かすことなく任意または特定の演算を実行できる方法が提案されている。以降、このように秘匿状態にされた情報を秘匿状態のままで演算することを秘匿計算という。この方法を利用した生体認証として、記憶された生体情報や照合する際に入力された生体情報を暗号化し、それらを復号化することなく秘匿計算を実行することによって生体認証を行う方法が知られている。
【０００８】
また、非特許文献１に開示されている技術は、統計的ＡＤ（Ａｎａｌｏｇ  Ｄｉｇｉｔａｌ）変換アプローチにより、生体情報から、その生体情報を復元することが困難となるようなＩＤ（Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ）を生成する。そして、記憶された生体情報のＩＤと、照合する際に入力された生体情報のＩＤとが対応しているかどうかで生体認証を行うというものである。
【先行技術文献】
【非特許文献】
【０００９】
【非特許文献１】柴田他，Fuzzy Commitment を用いた統計的AD 変換の改良に関する考察（その２）, SCIS2006.
【非特許文献２】R. Agrawal, A. Ev_mievski, and R. Srikant,Information sharing across private databases, ACM SIGMOD 2003, pp.86-97, 2003.
【非特許文献３】R. Nojima and Y. Kadobayashi, On the construction of the set-intersection protocol from blind signatures, IEICE Technical Report, ISEC2008-9 (2008-5), pp. 57-60, 2008.
【非特許文献４】M. J. Freedman, K. Nissim, and B. Pinkas, Efficient private matching and set intersection, EUROCRYPT 2004, LNCS 3027,pp. 1-19, Springer-Verlag, 2004.
【非特許文献５】B. Schoenmakers and P. Tuyls, "Practical two-party computation based on the conditional gate," ASIACRYPT 2004, LNCS3329, pp. 119-136, Springer-Verlag, 2004.
【発明の概要】
【発明が解決しようとする課題】
【００１０】
ここで、オフィスへの入室を管理する目的で顔の形状による生体認証を行う場合を一例として考えてみる。この場合、社員数が多い企業であれば多くの顔形状の情報が認証装置等に記憶されることとなる。そして、照合する際に入力された顔形状の情報の特徴点が記憶された顔形状の情報のどれに対応しているか予め分からなければ、記憶された顔形状の情報の一つ一つと、入力された顔形状の情報とを照合していく必要がある。
【００１１】
また、データマイニングにおいて、情報が持つ意味や情報間の関連性を見つけ出すためには、大量の情報を照合する必要がある。
【００１２】
非特許文献２〜５に開示されている秘匿計算は、通常の計算に比べて計算量が膨大となる。そのため、多くの情報を照合する場合、非常に時間がかかるという問題点がある。
【００１３】
また、非特許文献１に開示されている統計的ＡＤ変換アプローチによって生成されたＩＤを用いた生体情報の照合は、ＩＤを用いない通常の生体情報の照合と比べ、照合の精度が劣るという問題点がある。
【００１４】
本発明は、情報を秘匿しつつ、効率的かつ高精度で情報を照合することができる情報照合装置、情報照合方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１５】
上記目的を達成するために本発明の情報照合装置は、
照合の対象である照合対象情報と、該照合対象情報と照合される対象である複数の比較対象情報との入力を受け付け、該受け付けた照合対象情報と複数の比較対象情報とを照合する情報照合装置であって、
前記受け付けた照合対象情報を識別する照合対象識別情報を生成するとともに、前記受け付けた複数の比較対象情報のそれぞれを識別する複数の比較対象識別情報を生成し、前記照合対象識別情報と複数の比較対象識別情報とを秘匿状態にしたまま、前記複数の比較対象識別情報のうち、前記照合対象識別情報と一致する比較対象識別情報を抽出し、該抽出された比較対象識別情報にて識別される比較対象情報と、前記受け付けた照合対象情報とを秘匿状態にしたまま、当該比較対象情報と当該照合対象情報とを照合する。
【００１６】
また、上記目的を達成するために本発明の情報照合方法は、
照合の対象である照合対象情報と、該照合対象情報と照合される対象である複数の比較対象情報との入力を受け付け、該受け付けた照合対象情報と複数の比較対象情報とを照合する情報照合装置における情報照合方法であって、
前記受け付けた照合対象情報を識別する照合対象識別情報を生成するとともに、前記受け付けた複数の比較対象情報のそれぞれを識別する複数の比較対象識別情報を生成する処理と、
前記照合対象識別情報と複数の比較対象識別情報とを秘匿状態にしたまま、前記複数の比較対象識別情報のうち、前記照合対象識別情報と一致する比較対象識別情報を抽出し、該抽出された比較対象識別情報にて識別される比較対象情報と、前記受け付けた照合対象情報とを秘匿状態にしたまま、当該比較対象情報と当該照合対象情報とを照合する照合処理と、を有する。
【００１７】
また、上記目的を達成するために本発明のプログラムは、
照合の対象である照合対象情報と、該照合対象情報と照合される対象である複数の比較対象情報との入力を受け付け、該受け付けた照合対象情報と複数の比較対象情報とを照合する情報照合装置に、
前記受け付けた照合対象情報を識別する照合対象識別情報を生成するとともに、前記受け付けた複数の比較対象情報のそれぞれを識別する複数の比較対象識別情報を生成する機能と、
前記照合対象識別情報と複数の比較対象識別情報とを秘匿状態にしたまま、前記複数の比較対象識別情報のうち、前記照合対象識別情報と一致する比較対象識別情報を抽出し、該抽出された比較対象識別情報にて識別される比較対象情報と、前記受け付けた照合対象情報とを秘匿状態にしたまま、当該比較対象情報と当該照合対象情報とを照合する照合機能と、を実現させる。
【発明の効果】
【００１８】
本発明によれば、情報照合装置は、照合の対象である照合対象情報と、照合対象情報と照合される対象である複数の比較対象情報との入力を受け付ける。そして、情報照合装置は、受け付けた照合対象情報を識別する照合対象識別情報を生成するとともに、受け付けた複数の比較対象情報のそれぞれを識別する複数の比較対象識別情報を生成する。そして、照合対象識別情報と複数の比較対象識別情報とを秘匿状態にしたまま、複数の比較対象識別情報のうち、照合対象識別情報と一致する比較対象識別情報を抽出し、抽出された比較対象識別情報にて識別される比較対象情報と、受け付けた照合対象情報とを秘匿状態にしたまま、当該比較対象情報と当該照合対象情報とを照合する。
【００１９】
このように、照合対象識別情報及び比較対象識別情報を用いることにより、照合対象情報と照合される比較対象情報の数が絞り込まれる。これにより、照合対象情報と全ての比較対象情報とを照合する必要がなくなる。また、絞り込まれた比較対象情報と照合対象情報とを照合するため、照合の精度も十分に確保することができる。
【００２０】
従って、情報を秘匿しつつ、効率的かつ高精度で情報を照合することができる。
【図面の簡単な説明】
【００２１】
【図１】本発明の情報照合装置の第１の実施形態の構成を示すブロック図である。
【図２】図１に示した情報照合装置において情報を照合する動作を説明するためのフローチャートである。
【図３】本発明の情報照合装置の第２の実施形態の構成を示すブロック図である。
【図４】図３に示した情報照合装置において情報を照合する動作を説明するためのフローチャートである。
【図５】本発明の情報照合装置を適用した生体情報照合装置の構成の一例を示すブロック図である。
【図６】図５に示した生体情報照合装置の動作の一例を説明するためのフローチャートであり、（ａ）は登録フェーズにおける動作を説明するためのフローチャート、（ｂ）は照合フェーズにおける動作を説明するためのフローチャートである。
【図７】図５に示した生体情報照合装置の動作の他の例を説明するためのフローチャートであり、（ａ）は登録フェーズにおける動作を説明するためのフローチャート、（ｂ）は照合フェーズにおける動作を説明するためのフローチャートである。
【発明を実施するための形態】
【００２２】
以下に、本発明の実施の形態について図面を参照して説明する。
【００２３】
（第１の実施形態）
図１は、本発明の情報照合装置の第１の実施形態の構成を示すブロック図である。
【００２４】
本実施形態の情報照合装置１０は図１に示すように、照合の対象である照合対象情報ＶＩの入力を受け付ける計算装置１１−１と、照合対象情報ＶＩと照合される対象である複数の比較対象情報ＢＩiの入力を受け付ける計算装置１１−２とを備えている。
【００２５】
まず、図１に示した計算装置１１−１，１１−２が有する機能の概要について説明する。
【００２６】
計算装置１１−１，１１−２は、ｇ１(ＶＩ)＝ｇ２(ＢＩi)ならば高い確率でｆ（ＶＩ，ＢＩi）＝１となるような関数ｆ，ｇ１，ｇ２を計算する機能を有している。具体的には、計算装置１１−１は、ｇ１を計算する「ｇ１計算機能」を有し、計算装置１１−２は、ｇ２を計算する「ｇ２計算機能」を有する。なお、ｆ（ＶＩ，ＢＩi）＝１とは、照合対象情報ＶＩと比較対象情報ＢＩiとの照合に成功すること（つまり、一致すること）である。ここで、ｇ１（ＶＩ）は、照合対象情報ＶＩを識別する情報である照合対象識別情報となり、ｇ２(ＢＩi)は、複数の比較対象情報ＢＩiのそれぞれを識別する情報である比較対象識別情報となる。また、計算装置１１−１，１１−２は、照合対象識別情報ｇ１(ＶＩ)、複数の比較対象識別情報ｇ２（ＢＩi)を相互に開示することなく、つまり、照合対象識別情報ｇ１(ＶＩ)、複数の比較対象識別情報ｇ２（ＢＩi)を秘匿状態にしたまま、ｇ１（ＶＩ）＝ｇ２（ＢＩj）となるｊを求める機能である「等号判定機能」を有する。また、計算装置１１−１，１１−２は、ｆ（ＶＩ，ＢＩi）＝１となるかどうかを判定する「判定機能」を有している。
【００２７】
次に、計算装置１１−１，１１−２の動作について説明する。
【００２８】
計算装置１１−１は、照合対象情報ＶＩの入力を受け付け、上述したｇ１計算機能により、受け付けた照合対象情報ＶＩを識別する照合対象識別情報ｇ１（ＶＩ）を生成する。
【００２９】
計算装置１１−２は、複数の比較対象情報ＢＩiを受け付け、上述したｇ２計算機能により、受け付けた複数の比較対象情報ＢＩiのそれぞれ識別する複数の比較対象識別情報ｇ２（ＢＩi）を生成する。
【００３０】
計算装置１１−１，１１−２は、生成された照合対象識別情報ｇ１（ＶＩ）及び複数の比較対象識別情報ｇ２（ＢＩi）を秘匿状態にしたまま、上述した等号判定機能により、計算装置１１−２にて生成された複数の比較対象識別情報ｇ２（ＢＩi）のうち、計算装置１１−１にて生成された照合対象識別情報ｇ１（ＶＩ）と一致する比較対象識別情報ｇ２（ＢＩj）を抽出する。そして、計算装置１１−１，１１−２は、上述した判定機能により、抽出された比較対象識別情報ｇ２（ＢＩj）にて識別される比較対象情報ＢＩjと、計算装置１１が受け付けた照合対象情報ＶＩとを照合する。このとき、計算装置１１−１，１１−２は、比較対象情報ＢＩj及び照合対象情報ＶＩを秘匿状態にしたまま照合する。
【００３１】
以下に、上記のように構成された情報照合装置１０において情報を照合する動作について説明する。
【００３２】
図２は、図１に示した情報照合装置１０において情報を照合する動作を説明するためのフローチャートである。
【００３３】
まず、計算装置１１−１は、照合対象情報ＶＩの入力を受け付け、計算装置１１−２は、複数の比較対象情報ＢＩiの入力を受け付ける（ステップＳ１）。
【００３４】
次に、計算装置１１−１は、上述したｇ１計算機能により、受け付けた照合対象情報ＶＩを識別する照合対象識別情報ｇ１（ＶＩ）を生成し、計算装置１１−２は、上述したｇ２計算機能により、受け付けた複数の比較対象情報ＢＩiのそれぞれを識別する複数の比較対象識別情報ｇ２（ＢＩi）を生成する（ステップＳ２）。
【００３５】
次に、計算装置１１−１，１１−２は、生成された照合対象識別情報ｇ１（ＶＩ）及び複数の比較対象識別情報ｇ２（ＢＩi）を秘匿状態にしたまま、上述した等号判定機能により、計算装置１１−２にて生成された複数の比較対象識別情報ｇ２（ＢＩi）のうち、計算装置１１−１にて生成された照合対象識別情報ｇ１（ＶＩ）と一致する比較対象識別情報ｇ２（ＢＩj）を抽出する（ステップＳ３）。
【００３６】
そして、計算装置１１−１，１１−２は、上述した判定機能により、抽出された比較対象識別情報ｇ２（ＢＩj）にて識別される比較対象情報ＢＩjと、計算装置１１が受け付けた照合対象情報ＶＩとを、比較対象情報ＢＩj及び照合対象情報ＶＩを秘匿状態にしたまま照合する（ステップＳ４）。
【００３７】
このように本実施形態において、情報照合装置１０は、照合の対象である照合対象情報ＶＩと、照合対象情報ＶＩと照合される対象である複数の比較対象情報ＢＩiとの入力を受け付ける。そして、情報照合装置１０は、受け付けた照合対象情報ＶＩを識別する照合対象識別情報ｇ１（ＶＩ）を生成するとともに、受け付けた複数の比較対象情報ＢＩiのそれぞれを識別する複数の比較対象識別情報ｇ２（ＢＩi）を生成する。そして、照合対象識別情報ｇ１（ＶＩ）と複数の比較対象識別情報ｇ２（ＢＩi）とを秘匿状態にしたまま、複数の比較対象識別情報ｇ２（ＢＩi）のうち、照合対象識別情報ｇ１（ＶＩ）と一致する比較対象識別情報ｇ２（ＢＩj）を抽出し、抽出された比較対象識別情報ｇ２（ＢＩj）にて識別される比較対象情報ＢＩjと、受け付けた照合対象情報ＶＩとを秘匿状態にしたまま、比較対象情報ＢＩjと照合対象情報ＶＩとを照合する。
【００３８】
このように、照合対象識別情報及び比較対象識別情報を用いることにより、照合対象情報と照合される比較対象情報の数が絞り込まれる。これにより、照合対象情報と全ての比較対象情報とを照合する必要がなくなる。また、絞り込まれた比較対象情報と照合対象情報とを照合するため、照合の精度も十分に確保することができる。
【００３９】
従って、情報を秘匿しつつ、効率的かつ高精度で情報を照合することができる。
【００４０】
ここで、本実施形態の情報照合装置１０を生体認証に利用する場合には例えば、予め登録された複数者の生体情報をＢＩi(ｉ＝１，２，・・・，ｎ)とし、生体認証時に読み取った被認証者の生体情報をＶＩとする。そして、複数のＢＩiのうち、どのＢＩiがＶＩと一致するかどうかを、ＶＩ及びＢＩiを秘匿状態にしたまま照合する。
【００４１】
本実施形態の情報照合装置１０を生体認証に利用する場合、関数ｆは例えば、ＶＩとＢＩiとの距離計算を行い、その距離計算の結果が閾値以下であれば１を返し、そうでなければ０を返す関数とする。また、判定機能は例えば、非特許文献５に開示されている方法を用いて実現する。また、ｇ１計算機能及びｇ２計算機能は例えば、非特許文献１に開示されている統計的ＡＤ変換アプローチを用いて実現する。また、等号判定機能は例えば、ハッシュ関数Ｈを用いてＨ（ｇ１（ＶＩ））＝Ｈ（ｇ２(ＢＩj))となるかどうかを判定する。
【００４２】
ここで、ハッシュ関数とは、ドキュメントや数字等の文字列を一定長のデータに要約するための関数のことである。このハッシュ関数を通じて出力される値がハッシュ値である。ハッシュ関数は、１方向の関数であるため、ハッシュ値から元のドキュメントや数字等の文字列を特定することは困難となる。
【００４３】
なお、本実施形態の情報照合装置１０を生体認証に利用する場合については、後述する第３及び第４の実施形態において詳細に説明する。
【００４４】
また、本実施形態の情報照合装置１０をデータマイニングに利用する場合には、例えば、ＶＩ及びＢＩi(ｉ＝１，２，・・・，ｎ)を顧客情報とする。
【００４５】
本実施形態の情報照合装置１０をデータマイニングに利用する場合、関数ｆは例えば、ＶＩとＢＩiとの距離計算を行い、その距離計算の結果が閾値以下であれば１を返し、そうでなければ０を返す関数とする。そして、ＶＩ及びＢＩiを秘匿状態にしたまま、ＶＩとの距離が閾値以下となるＢＩiを抽出する。また、判定機能は例えば、非特許文献５に開示されている方法を用いて実現する。また、ｇ１計算機能及びｇ２計算機能は例えば、顧客情報を粗くする操作を行うことによって実現する。具体的には例えば、顧客の年齢を年代に置き換えることにより、類似する値を一致する値とみなすような操作である。また、等号判定機能は例えば、ハッシュ関数Ｈを用いてＨ（ｇ１（ＶＩ））＝Ｈ（ｇ２(ＢＩj))となるかどうかを判定する。
【００４６】
なお、等号判定機能において、ｇ１（ＶＩ）及びｇ２（ＢＩi)のハッシュ値Ｈ（ｇ１（ＶＩ）），Ｈ（ｇ２(ＢＩj))を用いると、ｇ１（ＶＩ）及びｇ２（ＢＩi)がある程度の確率で推定可能な場合や、候補数が少ない場合などは、辞書攻撃や全数探索などによってｇ１（ＶＩ）及びｇ２（ＢＩi)が特定されてしまう危険性がある。これを回避するための暗号応用技術が例えば、非特許文献２〜４に開示されており、これらの技術を用いることにより、ｇ１（ＶＩ）及びｇ２(ＢＩj)が特定されるのを回避すればよい。
【００４７】
（第２の実施形態）
本実施形態では、上述した第１の実施形態のより具体的な例として、マルチパーティプロトコルを用いた秘匿計算を実行することにより、情報を秘匿状態にしたまま情報の照合を行う場合について説明する。
【００４８】
図３は、本発明の情報照合装置の第２の実施形態の構成を示すブロック図である。
【００４９】
本実施形態の情報照合装置５０は図２に示すように、秘匿計算を実行する計算装置５１−１，５１−２と、秘匿処理装置５２とを備えている。
【００５０】
ここで、計算装置５１−１，５１−２が実行する秘匿計算について説明する。
【００５１】
秘匿計算を実行する際には、マルチパーティプロトコルが用いられるのが通常である。マルチパーティプロトコルは、ある秘匿状態にされた情報が与えられたとき、一定数以上の複数の計算装置が協力することにより、その秘匿状態にされた情報を秘匿状態のままで、その情報に対する演算を可能にする。例えば、計算装置Ａが値ｘを有し、計算装置Ｂが値ｙを有しているときに、計算装置Ａに対して値ｙを秘匿し、計算装置Ｂに対して値ｘを秘匿したまま、計算装置Ａと計算装置Ｂとが協力して所定の関数ｆ（ｘ，ｙ）を計算することが可能となる。
【００５２】
再度、図３を参照すると、秘匿処理装置５２は、照合対象情報ＶＩ及び複数の比較対象情報ＢＩiの入力を受け付ける。そして、受け付けた照合対象情報ＶＩ及び複数の比較対象情報ＢＩiを、秘匿計算が実行可能な形式で秘匿状態にした秘匿照合対象情報Ｅ（ＶＩ）及び複数の秘匿比較対象情報Ｅ（ＢＩi）を生成する。また、秘匿処理装置５２は、受け付けた照合対象情報ＶＩを識別する照合対象識別情報ｇ１（ＶＩ）と、複数の比較対象情報ＢＩiのそれぞれを識別する複数の比較対象識別情報ｇ２（ＢＩi）とを生成する。さらに、秘匿処理装置５２は、生成された照合対象識別情報ｇ１（ＶＩ）及び複数の比較対象識別情報ｇ２（ＢＩi）のそれぞれを、秘匿計算が実行可能な形式で秘匿状態にした秘匿照合対象識別情報Ｅ（ｇ１（ＶＩ））及び複数の秘匿比較対象識別情報Ｅ（ｇ２（ＢＩi））を生成する。そして、秘匿処理装置５２は、秘匿照合対象識別情報Ｅ（ｇ１（ＶＩ））と秘匿照合対象情報Ｅ（ＶＩ）とを対応付けて計算装置５１−１，５１−２へ出力する。また、それとともに、秘匿処理装置５２は、複数の秘匿比較対象識別情報Ｅ（ｇ２（ＢＩi））のそれぞれと、複数の秘匿比較対象情報Ｅ（ＢＩi）のそれぞれとを対応付けて計算装置５１−１，５１−２へ出力する。
【００５３】
計算装置５１−１，５１−２は、秘匿処理装置５２から出力された秘匿照合対象識別情報Ｅ（ｇ１（ＶＩ））及び秘匿照合対象情報Ｅ（ＶＩ）と、複数の秘匿比較対象識別情報Ｅ（ｇ２（ＢＩi））及び複数の秘匿比較対象情報Ｅ（ＢＩi）とを受け付ける。そして、計算装置５１−１，５１−２は、マルチパーティプロトコルを用いた秘匿計算を実行することにより、受け付けた秘匿照合対象識別情報Ｅ（ｇ１（ＶＩ））から、秘匿照合対象情報Ｅ（ＶＩ）と対応付けられた第１の照合用情報を生成する。また、計算装置５１−１，５１−２は、マルチパーティプロトコルを用いた秘匿計算を実行することにより、受け付けた複数の秘匿比較対象識別情報Ｅ（ｇ２（ＢＩi））から、複数の秘匿比較対象情報Ｅ（ＢＩi）のそれぞれと対応付けられた複数の第２の照合用情報を生成する。そして、計算装置５１−１，５１−２は、生成された複数の第２の照合用情報のうち、生成された第１の照合用情報と一致する第２の照合用情報を抽出する。つまり、計算装置５１−１，５１−２は、ｇ１（ＶＩ）＝ｇ２（ＢＩi）となる第２の照合用情報を抽出する。そして、計算装置５１−１，５１−２は、抽出された第２の照合用情報に対応する秘匿比較対象情報Ｅ（ＢＩj）と、受け付けた秘匿照合対象情報Ｅ（ＶＩ）とをマルチパーティプロトコルを用いた秘匿計算を実行することによって照合する。
【００５４】
以下に、上記のように構成された情報照合装置５０において情報を照合する動作について説明する。
【００５５】
図４は、図３に示した情報照合装置５０において情報を照合する動作を説明するためのフローチャートである。
【００５６】
まず、秘匿処理装置５２は、照合対象情報ＶＩ及び複数の比較対象情報ＢＩiの入力を受け付ける（ステップＳ１１）。
【００５７】
次に、秘匿処理装置５２は、受け付けた照合対象情報ＶＩ及び複数の比較対象情報ＢＩiを、秘匿計算が実行可能な形式で秘匿状態にした秘匿照合対象情報Ｅ（ＶＩ）及び複数の秘匿比較対象情報Ｅ（ＢＩi）を生成する（ステップＳ１２）。
【００５８】
次に、秘匿処理装置５２は、受け付けた照合対象情報ＶＩを識別する照合対象識別情報ｇ１（ＶＩ）と、複数の比較対象情報ＢＩiのそれぞれを識別する複数の比較対象識別情報ｇ２（ＢＩi）とを生成する（ステップＳ１３）。
【００５９】
次に、秘匿処理装置５２は、生成された照合対象識別情報ｇ１（ＶＩ）及び複数の比較対象識別情報ｇ２（ＢＩi）を、秘匿計算が実行可能で秘匿状態にした秘匿照合対象識別情報Ｅ（ｇ１（ＶＩ））及び複数の秘匿比較対象識別情報Ｅ（ｇ２（ＢＩi））を生成する（ステップＳ１４）。
【００６０】
そして、秘匿処理装置５２は、生成された秘匿照合対象識別情報Ｅ（ｇ１（ＶＩ））と秘匿照合対象情報Ｅ（ＶＩ）とを対応付けて計算装置５１−１，５１−２へ出力する。それとともに、秘匿処理装置５２は、複数の秘匿比較対象識別情報Ｅ（ｇ２（ＢＩi））のそれぞれと、複数の秘匿比較対象情報Ｅ（ＢＩi）のそれぞれとを対応付けて計算装置５１−１，５１−２へ出力する。
【００６１】
計算装置５１−１，５１−２は、秘匿処理装置５２から出力された秘匿照合対象識別情報Ｅ（ｇ１（ＶＩ））及び秘匿照合対象情報Ｅ（ＶＩ）と、複数の秘匿比較対象識別情報Ｅ（ｇ２（ＢＩi））及び複数の秘匿比較対象情報Ｅ（ＢＩi）とを受け付ける。
【００６２】
次に、計算装置５１−１，５１−２は、マルチパーティプロトコルを用いた秘匿計算を実行することにより、受け付けた秘匿照合対象識別情報Ｅ（ｇ１（ＶＩ））から、秘匿照合対象情報Ｅ（ＶＩ）と対応付けられた第１の照合用情報を生成する（ステップＳ１５）。
【００６３】
また、計算装置５１−１，５１−２は、マルチパーティプロトコルを用いた秘匿計算を実行することにより、受け付けた複数の秘匿比較対象識別情報Ｅ（ｇ２（ＢＩi））のそれぞれから、複数の秘匿比較対象情報Ｅ（ＢＩi）のそれぞれと対応付けられた複数の第２の照合用情報とを生成する（ステップＳ１６）。
【００６４】
次に、計算装置５１−１，５１−２は、生成された複数の第２の照合用情報のうち、生成された第１の照合用情報と一致する第２の照合用情報を抽出する（ステップＳ１７）。
【００６５】
そして、計算装置５１−１，５１−２は、抽出された第２の照合用情報に対応する秘匿比較対象情報Ｅ（ＢＩj）と、受け付けた秘匿照合対象識別情報Ｅ（ＶＩ）とをマルチパーティプロトコルを用いた秘匿計算を実行することによって照合する（ステップＳ１８）。
【００６６】
なお、本実施形態において秘匿処理装置５２は、照合対象識別情報ｇ１（ＶＩ）及び複数の比較対象識別情報ｇ２（ＢＩi）のそれぞれを、秘匿計算が実行可能な形式で秘匿状態にした秘匿照合対象識別情報Ｅ（ｇ１（ＶＩ））及び複数の秘匿比較対象識別情報Ｅ（ｇ２（ＢＩi））を生成した。そして、秘匿照合対象識別情報Ｅ（ｇ１（ＶＩ））及び複数の秘匿比較対象識別情報Ｅ（ｇ２（ＢＩi））から、秘匿計算を実行することにより、第１の照合用情報及び複数の第２の照合用情報を生成した。
【００６７】
このように、秘匿照合対象識別情報Ｅ（ｇ１（ＶＩ））及び複数の秘匿比較対象識別情報Ｅ（ｇ２（ＢＩi））から第１の照合用情報及び第２の照合用情報を生成しなくても、照合対象識別情報ｇ１（ＶＩ）及び複数の比較対象識別情報ｇ２（ＢＩi）から第１の照合用情報及び複数の第２の照合用情報を生成してもよい。しかし、このようにすると、照合対象識別情報ｇ１（ＶＩ）及び複数の比較対象識別情報ｇ２（ＢＩi）が特定されてしまう危険性がある。
【００６８】
そのため、本実施形態では、秘匿照合対象識別情報Ｅ（ｇ１（ＶＩ））及び複数の秘匿比較対象識別情報Ｅ（ｇ２（ＢＩi））から第１の照合用情報及び第２の照合用情報を生成している。
【００６９】
なお、秘匿照合対象識別情報Ｅ（ｇ１（ＶＩ））及び複数の秘匿比較対象識別情報Ｅ（ｇ２（ＢＩi））を生成した場合、等号判定機能は例えば、非特許文献２〜４に開示されている方法で実現すればよい。
【００７０】
また、本実施形態において判定機能は、例えば非特許文献５に開示されている方法で秘匿状態にしたのであれば、非特許文献５に開示されている方法で実現すればよい。
【００７１】
（第３の実施形態）
本実施形態では、上述した第１及び第２の実施形態における情報照合装置の具体的な例として、生体情報を秘匿した状態のままで生体情報の照合を行う生体情報照合装置について説明する。
【００７２】
図５は、本発明の情報照合装置を適用した生体情報照合装置の構成の一例を示すブロック図である。
【００７３】
本実施形態の生体情報照合装置１００は図５に示すように、計算装置１０１−１，１０１−２と、秘匿処理装置である生体情報読取装置１０２と、データベース１０３とを備えている。
【００７４】
生体情報読取装置１０２は、生体情報の入力を受け付け、受け付けた生体情報を秘匿状態にする。そして、受け付けた生体情報を識別するＩＤを生成する。
【００７５】
データベース１０３は、生体情報読取装置１０２によって秘匿状態にされたｎ個の生体情報を記憶する。
【００７６】
計算装置１０１−１，１０１−２は、秘匿計算を実行する。
【００７７】
以下に、上記のように構成された生体情報照合装置１００の動作について説明する。なお、生体情報照合装置１００が行う動作には、生体情報を記憶するための登録フェーズと、入力を受け付けた生体情報と、記憶された生体情報とを照合するための照合フェーズとがある。
【００７８】
図６は、図５に示した生体情報照合装置１００の動作の一例を説明するためのフローチャートであり、（ａ）は登録フェーズにおける動作を説明するためのフローチャート、（ｂ）は照合フェーズにおける動作を説明するためのフローチャートである。
【００７９】
まず、図６（ａ）を参照しながら、登録フェーズにおける動作について説明する。
【００８０】
生体情報読取装置１０２は、生体情報の入力を受け付ける（ステップＳ２１）。なお、ここで受け付けた生体情報は、上述した第１及び第２の実施形態における比較対象情報ＢＩiに相当する。
【００８１】
生体情報の入力を受け付けた生体情報読取装置１０２は、受け付けた生体情報を秘匿計算が実行可能な形式で秘匿状態にした秘匿生体情報を生成する（ステップＳ２２）。以降、登録フェーズにおいて秘匿状態にされた生体情報である秘匿生体情報のことをＲＤｉと表記する。ここで、ｉは、ｉ＝１，２，・・・，ｎとなるユーザのシリアル番号とする。なお、秘匿生体情報ＲＤｉは、上述した第２の実施形態における秘匿比較対象情報Ｅ（ＢＩi）に相当する。
【００８２】
次に、生体情報読取装置１０２は、秘匿生体情報ＲＤｉをデータベース１０３に記憶させる（ステップＳ２３）。すなわち、ｎ人のユーザの生体情報が秘匿状態でデータベース１０３に記憶される。
【００８３】
次に、生体情報読取装置１０２は、ステップＳ２１において受け付けた生体情報を識別するためのＩＤであるＩＤｉを生成する。このＩＤｉは例えば、非特許文献１に開示されている統計的ＡＤ変換アプローチによって生成される。なお、ＩＤｉは、上述した第１及び第２の実施形態における比較対象識別情報ｇ２（ＢＩi）に相当する。
【００８４】
次に、生体情報読取装置１０２は、秘匿生体情報ＲＤｉのラベルとしてＩＤｉのハッシュ値を生成する（ステップＳ２４）。以降、ＩＤｉのハッシュ値をＨａｓｈ（ＩＤｉ）と表記する。なお、Ｈａｓｈ（  ）は、ハッシュ関数で処理したことを示している。また、本実施形態においてＨａｓｈ（ＩＤｉ）は、上述した第２の実施形態における第２の照合用情報に相当する。
【００８５】
そして、生体情報読取装置１０２は、ステップＳ２３にてデータベース１０３に記憶された秘匿生体情報ＲＤｉのラベルとしてＨａｓｈ（ＩＤｉ）をデータベース１０３に記憶させる（ステップＳ２５）。
【００８６】
ここで、ＩＤｉをハッシュ関数で処理するのは、受け付けた生体情報を秘匿するレベルを向上させるためである。仮に、ＩＤｉを秘匿生体情報ＲＤｉのラベルとして秘匿生体情報ＲＤｉとともにデータベース１０３に記憶させた場合、データベース１０３へのアクセス権限のあるものであればＩＤｉを取得できてしまう。これに対し、Ｈａｓｈ（ＩＤｉ）を秘匿生体情報ＲＤｉのラベルとすることにより、Ｈａｓｈ（ＩＤｉ）を取得できたとしてもＩＤｉを特定することが困難になる。
【００８７】
以上が、登録フェーズにおける動作である。
【００８８】
次に、図６（ｂ）を参照しながら、照合フェーズにおける動作について説明する。
【００８９】
生体情報読取装置１０２は、生体情報を受け付ける（ステップＳ３１）。なお、ここで受け付けた生体情報は、上述した第１及び第２の実施形態における照合対象情報ＶＩに相当する。
【００９０】
生体情報の入力を受け付けた生体情報読取装置１０２は、受け付けた生体情報を秘匿計算が実行可能な形式で秘匿状態にした秘匿生体情報を生成する（ステップＳ３２）。以降、照合フェーズにおいて秘匿状態にされた生体情報である秘匿生体情報のことをＭＤｉと表記する。なお、秘匿生体情報ＭＤｉは、上述した第２の実施形態における秘匿照合対象情報Ｅ（ＶＩ）に相当する。
【００９１】
次に、生体情報読取装置１０２は、ステップＳ３１において受け付けた生体情報を識別するＩＤであるＩＤ'を生成する。なお、ＩＤ'は、上述した第１及び第２の実施形態における照合対象識別情報ｇ１（ＶＩ）に相当する。さらに、生体情報読取装置１０２は、生成したＩＤ'のハッシュ値を生成する（ステップＳ３３）。以降、ＩＤ'のハッシュ値をＨａｓｈ（ＩＤ'）と表記する。また、本実施形態においてＨａｓｈ（ＩＤ'）は、上述した第２の実施形態における第１の照合用情報に相当する。
【００９２】
そして、生体情報読取装置１０２は、秘匿生体情報ＭＤｉとＨａｓｈ（ＩＤ'）とを計算装置１０１−１，１０１−２へ出力する。
【００９３】
生体情報読取装置１０２から出力された秘匿生体情報ＭＤｉとＨａｓｈ（ＩＤ'）とを受け付けた計算装置１０１−１，１０１−２は、受け付けたＨａｓｈ（ＩＤ'）と同じ値をラベルとする秘匿生体情報ＲＤｉをデータベース１０３から検索する（ステップＳ３４）。
【００９４】
そして、計算装置１０１−１，１０１−２は、マルチパーティプロトコルを用いて秘匿計算を実行することにより、検索された秘匿生体情報ＲＤｉと、受け付けた秘匿生体情報ＭＤｉとを照合する（ステップＳ３５）。そして、最終的な認証の結果を得る。
【００９５】
なお、ＩＤを生成する方法として、同一ユーザのＩＤｉとＩＤ'とは十分高い確率で一致する方法を選ぶのが望ましい。逆に、異なるユーザのＩＤｉとＩＤ'とが無視できない確率で一致してもかまわない。これは、生体認証においては本来なら拒絶されるべき要件であるが、本発明では、ＩＤｉ及びＩＤ'を照合のために用いるのではなく、データベース１０３に記憶された情報を検索するために用いているため問題がない。
【００９６】
なお、同一ユーザのＩＤｉとＩＤ'とが一致する確率と、異なるユーザのＩＤｉとＩＤ'とが不一致となる確率とは一般にトレードオフの関係にあるが、本発明では前者を優先しても良い。
【００９７】
また、（Ｈａｓｈ（ＩＤｉ）＝Ｈａｓｈ（ＩＤ'））となるＨａｓｈ（ＩＤｉ）が複数検索されても問題はない。その場合は、検索された複数のＨａｓｈ（ＩＤｉ）のそれぞれをラベルとする秘匿生体情報ＲＤｉに対して秘匿計算を実行すればよい。つまり、（Ｈａｓｈ（ＩＤｉ）＝Ｈａｓｈ（ＩＤ'））となるＨａｓｈ（ＩＤｉ）の個数がデータベース１０３に記憶されている秘匿生体情報ＲＤｉの数ｎよりも十分少なければ、本発明は十分に効果的であると考えられる。
【００９８】
このように本実施形態の生体情報照合装置１００において、生体情報読取装置１０２は、生体情報を受け付け、秘匿計算が実行可能な形式で、受け付けた生体情報を秘匿状態にした秘匿生体情報を生成するとともに、当該受け付けた生体情報を識別するＩＤを生成する。そして、受け付けた生体情報を記憶する記憶フェーズにおいて生体情報読取装置１０２は、生成されたＩＤのハッシュ値を生成された秘匿生体情報のラベルとして当該生成された秘匿生体情報とともにデータベース１０３に記憶させる。また、受け付けた生体情報と記憶された生体情報とを照合する照合フェーズにおいて計算装置１０１−１，１０１−２は、生成されたＩＤのハッシュ値と同じ値をラベルとする秘匿生体情報をデータベース１０３から検索し、検索された秘匿生体情報と生成された秘匿生体情報とを、マルチパーティプロトコルを用いて秘匿計算を実行することによって照合する。
【００９９】
そのため、生体情報を秘匿しつつ、効率的かつ高精度で生体情報を照合することができる。
【０１００】
（第４の実施形態）
上述した第３の実施形態では、ＩＤｉを秘匿するためにハッシュ関数を用いた。しかし、上述したように、ＩＤｉがある程度の確率で推定可能な場合や、候補数が少ない場合などは、辞書攻撃や全数探索などによってＩＤｉが特定されてしまう危険性がある。そこで、本実施形態では、このような攻撃を防ぐ場合について説明する。
【０１０１】
本実施形態において生体情報読取装置１０２は、受け付けた生体情報を識別するＩＤを秘匿計算が実行可能な形式で秘匿状態にする。また、計算装置１０１−１，１０１−２は、秘匿状態にされたＩＤから、マルチパーティプロトコルを用いて秘匿計算を実行することによってハッシュ値を生成する。そして、このハッシュ値が秘匿生体情報のラベルとなる。
【０１０２】
以下に、上記のように構成された生体情報照合装置１００の動作について説明する。ここでも、上述した第３の実施形態と同様に、登録フェーズと照合フェーズとに分けて説明する。
【０１０３】
図７は、図５に示した生体情報照合装置１００の動作の他の例を説明するためのフローチャートであり、（ａ）は登録フェーズにおける動作を説明するためのフローチャート、（ｂ）は照合フェーズにおける動作を説明するためのフローチャートである。
【０１０４】
まず、図７（ａ）を参照しながら、登録フェーズにおける動作について説明する。
【０１０５】
生体情報読取装置１０２は、生体情報の入力を受け付ける（ステップＳ５１）。
【０１０６】
生体情報の入力を受け付けた生体情報読取装置１０２は、受け付けた生体情報を秘匿計算が実行可能な形式で秘匿状態にした秘匿生体情報を生成する（ステップＳ５２）。以降、上述した第３の実施形態と同様に、登録フェーズにおいて秘匿状態にされた生体情報である秘匿生体情報をＲＤｉと表記する。
【０１０７】
次に、生体情報読取装置１０２は、秘匿生体情報ＲＤｉをデータベース１０３に記憶させる（ステップＳ５３）
次に、生体情報読取装置１０２は、ステップＳ５１において受け付けた生体情報を識別するＩＤであるＩＤｉを生成し、さらに、生成されたＩＤｉを秘匿計算が実行可能な形式で秘匿状態にした秘匿ＩＤｉを生成する（ステップＳ５４）。そして、生体情報読取装置１０２は、秘匿ＩＤｉを計算装置１０１−１，１０１−２へ出力する。なお、秘匿ＩＤｉは、上述した第２の実施形態における秘匿比較対象識別情報Ｅ（ｇ２（ＢＩi））に相当する。
【０１０８】
計算装置１０１−１，１０１−２は、生体情報読取装置１０２から出力された秘匿ＩＤｉを受け付ける。
【０１０９】
次に、計算装置１０１−１，１０１−２は、マルチパーティプロトコルを用いて秘匿計算を実行することにより、受け付けた秘匿ＩＤｉと乱数ａ，ｂとからハッシュ値を生成する（ステップＳ５５）。以降、秘匿ＩＤｉと乱数ａ，ｂとから生成されたハッシュ値をＨａｓｈ（ＩＤｉ||ａ||ｂ）と表記する。なお、乱数ａは計算装置１０１−１によって生成され、乱数ｂは計算装置１０１−２によって生成されたものである。また、記号（ｘ||ｙ）はデータｘ，ｙの連結を表す。また、本実施形態においてＨａｓｈ（ＩＤｉ||ａ||ｂ）は、上述した第２の実施形態における第２の照合用情報に相当する。
【０１１０】
そして、計算装置１０１−１，１０１−２は、生成されたＨａｓｈ（ＩＤｉ||ａ||ｂ）を、ステップＳ５３にてデータベース１０３に記憶された秘匿生体情報ＲＤｉのラベルとしてデータベース１０３に記憶させる（ステップＳ５６）。
【０１１１】
以上が、登録フェーズにおける動作である。
【０１１２】
次に、図７（ｂ）を参照しながら、照合フェーズにおける動作について説明する。
【０１１３】
生体情報読取装置１０２は、生体情報の入力を受け付ける（ステップＳ６１）。
【０１１４】
生体情報の入力を受け付けた生体情報読取装置１０２は、受け付けた生体情報を秘匿計算が実行可能な形式で秘匿状態にした秘匿生体情報を生成する（ステップＳ６２）。以降、上述した第３の実施形態と同様に、照合フェーズにおいて秘匿状態にされた生体情報である秘匿生体情報のことをＭＤｉと表記する。
【０１１５】
次に、生体情報読取装置１０２は、ステップＳ６１において受け付けた生体情報を識別するＩＤであるＩＤ'を生成し、生成されたＩＤ'を秘匿計算が実行可能な形式で秘匿状態にした秘匿ＩＤ'を生成する（ステップＳ６３）。なお、秘匿ＩＤ'は、上述した第２の実施形態における秘匿照合対象識別情報Ｅ（ｇ１（ＶＩ））に相当する。
【０１１６】
そして、生体情報読取装置１０２は、秘匿ＩＤ'と秘匿生体情報ＭＤｉとを計算装置１０１−１，１０１−２へ出力する。
【０１１７】
計算装置１０１−１，１０１−２は、生体情報読取装置１０２から出力された秘匿ＩＤ'と秘匿生体情報ＭＤｉとを受け付ける。
【０１１８】
次に、計算装置１０１−１，１０１−２は、マルチパーティプロトコルを用いて秘匿計算を実行することにより、受け付けた秘匿ＩＤ'と乱数ａ，ｂとからハッシュ値を生成する（ステップＳ６４）。以降、秘匿ＩＤ'と乱数ａ，ｂとから生成されたハッシュ値をＨａｓｈ（ＩＤ'||ａ||ｂ）と表記する。なお、本実施形態においてＨａｓｈ（ＩＤ'||ａ||ｂ）は、上述した第２の実施形態における第１の照合用情報に相当する。
【０１１９】
そして、計算装置１０１−１，１０１−２は、生成されたＨａｓｈ（ＩＤ'||ａ||ｂ）と同じ値をラベルとする秘匿生体情報ＲＤｉをデータベース１０３から検索する（ステップＳ６５）。
【０１２０】
そして、計算装置１０１−１，１０１−２は、マルチパーティプロトコルを用いて秘匿計算を実行することにより、検索された秘匿生体情報ＲＤｉと、受け付けた秘匿生体情報ＭＤｉとを照合する（ステップＳ６６）。そして、最終的な認証の結果を得る。
【０１２１】
このように、本実施形態が上述した第３の実施形態と異なる点は、秘匿生体情報ＲＤｉのラベルをＨａｓｈ（ＩＤｉ）からＨａｓｈ（ＩＤｉ||ａ||ｂ）へ変更したことと、その変更が可能となるように秘匿計算を実行していることである。この変更により、例えＩＤｉが推定可能であっても、乱数ａ，ｂがわからない限りＩＤｉを特定することが困難となる。
【０１２２】
このように本実施形態においては、秘匿生体情報ＲＤｉのＩＤｉを推定することが可能であっても、乱数ａ，ｂを知らない限りＩＤｉを特定することが困難となる。そのため、より強固に生体情報を秘匿しつつ、効率的かつ高精度で生体情報を照合することができる。
【０１２３】
なお、上述した第１〜第４の実施形態では、計算装置が２つある場合を一例として説明したが、計算装置の数は２つに限定されるものではなく、秘匿状態にされた情報を秘匿状態のままで演算する方法の種類等に応じ、計算装置の数を３つ以上としてもよい。
【０１２４】
また、本発明においては、情報照合装置内の処理は上述の専用のハードウェアにより実現されるもの以外に、その機能を実現するためのプログラムを情報照合装置にて読取可能な記録媒体に記録し、この記録媒体に記録されたプログラムを情報照合装置に読み込ませ、実行するものであっても良い。情報照合装置にて読取可能な記録媒体とは、フレキシブルディスク、光磁気ディスク、ＤＶＤ、ＣＤなどの移設可能な記録媒体の他、情報照合装置に内蔵されたＨＤＤなどを指す。
【符号の説明】
【０１２５】
１０，５０    情報照合装置
１１−１，１１−２，５１−１，５１−２，１０１−１，１０１−２    計算装置
５２    秘匿処理装置
１００    生体情報照合装置
１０２    生体情報読取装置
１０３    データベース
【図１】
2011024182.tif 000003
【図２】
2011024182.tif 000004
【図３】
2011024182.tif 000005
【図４】
2011024182.tif 000006
【図５】
2011024182.tif 000007
【図６】
2011024182.tif 000008
【図７】
2011024182.tif 000009