(57)【特許請求の範囲】
【請求項１】
第１の信号と第２の信号との間のマンハッタン距離を安全に求めるための方法であって、該方法のステップは、前記第２の信号が第１のプロセッサから秘密にされ、前記第１の信号が第２のプロセッサから秘密にされるように処理を実施するための第１及び第２のプロセッサによって実施され、
前記第１のプロセッサが前記第１の信号を第１の二値信号にマッピングするステップと、
前記第１の二値信号と第２の二値信号との間の二乗距離が前記第１の信号と前記第２の信号との間のマンハッタン距離に等しくなるように、前記第２のプロセッサが前記第２の信号を前記第２の二値信号にマッピングするステップと、
前記第１のプロセッサが前記第１の二値信号を第１の低次元信号に低減するステップと、
前記第２のプロセッサが前記第２の二値信号を第２の低次元信号に低減するステップであって、前記第１の低次元信号と前記第２の低次元信号との間の二乗距離が前記第１の二値信号と前記第２の二値信号との間の前記二乗距離を近似する、低減するステップと、
前記第１のプロセッサまたは前記第２のプロセッサが前記第１の低次元信号と前記第２の低次元信号との間の前記二乗距離を安全に求めるステップであって、前記第１のプロセッサまたは前記第２のプロセッサが前記第１の信号と前記第２の信号との間の前記マンハッタン距離を安全に求める、求めるステップと、
を含む、方法。
【請求項２】
前記求めるステップの前に、前記第１のプロセッサが前記第１の低次元信号を、鍵を用いて暗号化し、前記第２のプロセッサが前記第２の低次元信号を、鍵を用いて暗号化することをさらに含む、請求項１に記載の方法。
【請求項３】
前記マッピングするステップは、前記第１のプロセッサが前記第１の信号を二値変換関数に従って変換し、前記第２のプロセッサが前記第２の信号を二値変換関数に従って変換することをさらに含む、請求項１に記載の方法。
【請求項４】
前記低減するステップは、前記第１のプロセッサが前記第１の信号を、埋め込み関数を使用して前記第１の低次元信号に変換し、前記第２のプロセッサが前記第２の信号を、埋め込み関数を使用して前記第２の低次元信号に変換することをさらに含む、請求項１に記載の方法。
【請求項５】
前記埋め込み関数は、低歪み埋め込みに関してジョンソン−リンデンシュトラウスの補題に従って定義される、請求項４に記載の方法。
【請求項６】
前記第１の低次元信号及び前記第２の低次元信号は整数値を有する、請求項１に記載の方法。
【請求項７】
前記安全に求めるステップは、
前記第１のプロセッサおよび前記第２のプロセッサが二乗距離関数を準同型成分の線形結合として表現すること、及び
前記第１の低次元信号と前記第２の低次元信号との間の前記二乗距離を、前記第１のプロセッサまたは前記第２のプロセッサが前記準同型成分の前記線形結合を使用して準同型変換に基づいて求めること、
をさらに含む、請求項１に記載の方法。
【請求項８】
前記第１の信号と前記第２の信号との間の前記マンハッタン距離は、前記第１のプロセッサまたは前記第２のプロセッサが前記鍵を用いて暗号化する、請求項２に記載の方法。
【請求項９】
前記第１のプロセッサまたは前記第２のプロセッサが前記マンハッタン距離を第３のプロセッサに送信すること、及び
前記第３のプロセッサが前記マンハッタン距離を復号すること、
をさらに含む、請求項８に記載の方法。
【請求項１０】
前記第１の信号及び前記第２の信号は生体特徴ベクトルである、請求項１に記載の方法。
【請求項１１】
第３のプロセッサが前記第１の信号と前記第２の信号との間の前記マンハッタン距離を復号することであって、前記第３のプロセッサが復号されたマンハッタン距離を生成して復号すること、及び
前記第３のプロセッサが前記復号されたマンハッタン距離を閾値と比較することであって、前記第３のプロセッサが比較結果を生成して比較すること、
をさらに含む、請求項１に記載の方法。
【請求項１２】
第１の信号と第２の信号との間のマンハッタン距離を安全に求めるためのシステムであって、前記第１の信号が第２のプロセッサから秘密にされ、前記第２の信号が第１のプロセッサから秘密にされるように処理を行うための前記第１のプロセッサ及び前記第２のプロセッサを備え、前記第１の信号は前記第１のプロセッサにより第１の二値信号にマッピングされ、該第１の二値信号は前記第１のプロセッサにより次元をさらに低減されて第１の低次元信号を生成し、該システムは、
前記第２のプロセッサにより前記第２の信号を第２の二値信号にマッピングする手段であって、前記第２のプロセッサにより前記第１の二値信号と前記第２の二値信号との間の二乗距離がマンハッタン距離に等しくなるようにマッピングする第１の手段と、
前記第１の低次元信号と前記第２の低次元信号との間の二乗距離が前記第１の二値信号と前記第２の二値信号との間の前記二乗距離を近似するように、前記第２のプロセッサにより前記第２の二値信号の次元を低減して前記第２の低次元信号を生成する第２の手段と、
前記第１のプロセッサまたは前記第２のプロセッサにより前記第１の低次元信号と前記第２の低次元信号との間の前記二乗距離を安全に求めて、前記第１の信号と前記第２の信号との間の前記マンハッタン距離を安全に求める第３の手段と、
を備える、システム。
【請求項１３】
前記第３の手段の前に、前記第２のプロセッサにより前記第２の二値信号を、鍵を用いて暗号化する第４の手段をさらに備える、請求項１２に記載のシステム。
【請求項１４】
前記第３の手段は、
前記第１のプロセッサおよび前記第２のプロセッサにより二乗距離関数を準同型成分の線形結合として表現する第５の手段と、
前記第１のプロセッサまたは前記第２のプロセッサにより前記第１の二値信号と前記第２の二値信号との間の前記二乗距離を、前記準同型成分の前記線形結合を使用して準同型変換に基づいて求める第６の手段と、
をさらに備える、請求項１２に記載のシステム。
【請求項１５】
前記第１の信号及び前記第２の信号は生体特徴ベクトルである、請求項１２に記載のシステム。
【請求項１６】
前記第１のプロセッサまたは前記第２のプロセッサにより前記マンハッタン距離を第３のプロセッサに送信する手段と、
前記第３のプロセッサにより前記マンハッタン距離を復号する手段と、
をさらに備える、請求項１２に記載のシステム。
【請求項１７】
請求項１２に記載のシステムにおいて用いられる、第１の信号と第２の信号との間のマンハッタン距離を安全に求めるための方法であって、該方法のステップは、プロセッサによって実施され、該方法は、
前記第１の手段が、第１の二値信号と第２の二値信号との間の二乗距離が前記第１の信号と前記第２の信号との間のマンハッタン距離に等しくなるように、前記第２の信号を前記第２の二値信号にマッピングするステップと、
前記第３の手段が、前記第１の二値信号と前記第２の二値信号との間の前記二乗距離を求めるステップであって、前記マンハッタン距離を生成する、求めるステップと、
を含む、方法。
【請求項１８】
請求項１３に記載のシステムにおいて用いられる方法であって、前記求めるステップの前に、前記第４の手段が、前記第１の二値信号及び前記第２の二値信号を、鍵を用いて暗号化することをさらに含む、請求項１７に記載の方法。
【請求項１９】
請求項１４に記載のシステムにおいて用いられる方法であって、前記求めるステップは、
前記第５の手段が、二乗距離関数を準同型成分の線形結合として表現すること、及び
前記第６の手段が、前記第１の二値信号と前記第２の二値信号との間の前記二乗距離を、前記準同型成分の前記線形結合を使用して準同型変換に基づいて求めること、
をさらに含む、請求項１７に記載の方法。
【請求項２０】
請求項１５に記載のシステムにおいて用いられる方法であって、前記第１の信号及び前記第２の信号は生体特徴ベクトルである、請求項１７に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本方法は包括的には信号間の差異を求めることに関し、より詳細には、２つの暗号化信号間の差異を求めることに関する。
【背景技術】
【０００２】
２つの信号の差異測定値を安全に求めることが多くの場合に必要とされている。従来の方法は通常、暗号学的ハッシュ関数を使用して、２つの信号が異なっているか否かを判断する。ハッシュの衝突が発生する確率が無視できるほど低いことを前提とすれば、信号ｘ及び信号ｙのハッシュが等しい場合、信号ｘは信号ｙに等しい。このような暗号学的ハッシュの比較は、ほとんどのパスワード管理アプリケーション及び鍵管理アプリケーションにおいて基本となっている。
【０００３】
従来の暗号学的ハッシュ関数の本質的な特性は、ハッシュが、比較される信号の基礎構造を保たないことである。特に、１つの信号が別の信号の雑音があるバージョンである場合、雑音が小さい場合であっても２つの信号の暗号学的ハッシュは異なる。したがって、暗号学的ハッシュ関数は、雑音がある環境、たとえば記憶装置及び通信チャネル内で信号を比較するのに、単独では使用することができない。
【０００４】
安全に信号間の差異を求めることは、多くの用途において重要である。たとえば、個人的な医療データは、該医療データを第三者に明らかにすることなく該第三者によって分析及び分類されるべきである。加えて、第三者は分類方法も、分類に使用されるデータベースも明らかにすることを望まない。
【０００５】
この問題は、多くの場合に安全な複数者間計算（ＳＭＣ）として定義される。紛失通信（ＯＴ）、安全な内積（secure inner product）（ＳＩＰ）のような計算的に安全な方法を原形として使用して、より複雑な演算を実施し、それによってＳＭＣを可能にすることができる。たとえば特許文献１がそのような方法を記載しているのを参照されたい。その方法は、ユーザによって供給される画像も、分類器によって使用される分類方法も明らかにすることなく物体検出を実施する。しかしながら、この方法は、ユーザと分類器との間で多数のやりとりを必要とする。やりとり及び鍵管理に関するオーバヘッドは非常に大きい。
【０００６】
信号間の差異は距離メトリックに従って求められる。距離メトリックの例は、二乗距離、ハミング距離、及びマンハッタン距離である。当該技術分野において、信号間の二乗距離及びハミング距離を安全に求めるための多数の方法が存在する。たとえば、参照により本明細書に援用される、２００９年６月３０日付けでRane他によって出願された米国特許出願第１２／４９５，７２１号明細書を参照されたい。しかしながら、当該技術分野において、低い通信オーバヘッドを有しながら、２つの信号間のマンハッタン距離を安全に求めるための２者間の方法は存在しない。本明細書において定義されるように、「安全に」は、各者、たとえばプロセッサが、計算全体を通じて自身の信号を他者から秘密にしておくことを意味する。
【０００７】
２点間のマンハッタン距離は、それらの座標の絶対差の和である。マンハッタン距離は、Ｌ１距離、タクシー距離、街区距離、及び直線距離とも呼ばれる。
【０００８】
信号の場合、次元ｎの信号、ｘ＝（ｘ１，ｘ２，．．．，ｘｎ）、及びｙ＝（ｙ１，ｙ２，．．．，ｙｎ）間のマンハッタン距離は、以下である。
【０００９】
【数１】
0005566192.tif 000002
【００１０】
ただし、ｘ及びｙは信号であり、法線ｘｉ及びｙｉは信号ｘ及びｙの個々の成分である。
【００１１】
当該技術分野において、異なる複数の距離空間においてマンハッタン距離を近似するための多数の方法が存在する。しかしながら、これらの方法は全て意図的に安全でなく、且つ複数者間の大きな通信オーバヘッドを必要とする。このため、２つの信号間のマンハッタン距離を安全に求めることが望まれている。
【００１２】
同様に、２点間の二乗距離は、それらの座標の二乗差異の和である。したがって、次元ｎの信号、ｘ＝（ｘ１，ｘ２，．．．，ｘｎ）、及びｙ＝（ｙ１，ｙ２，．．．，ｙｎ）間の二乗距離は、以下である。
【００１３】
【数２】
0005566192.tif 000003
【先行技術文献】
【特許文献】
【００１４】
【特許文献１】米国特許出願第１１／００５，２９３号明細書
【発明の概要】
【００１５】
本発明の実施の形態は、二値信号間の二乗距離が信号間のマンハッタン距離に等しくなるように、信号ｘ及びｙを対応する
【００１６】
【数３】
0005566192.tif 000004
【００１７】
にマッピングすることができるという認識に基づく。したがって、当該技術分野において既知の任意の方法を使用して二値信号間の二乗距離を安全に求めることによって、信号間のマンハッタン距離を安全に求めることができる。さらに、二値信号間の二乗距離を保ちながら、該二値信号の長さ、及びそれに応じて通信のオーバヘッドを低減することができる。
【００１８】
１つの実施の形態は、第１の信号と第２の信号との間のマンハッタン距離を安全に求めるための方法を開示する。本方法は、第１の二値信号と第２の二値信号との間の二乗距離がマンハッタン距離に等しくなるように、第１の信号を第１の二値信号にマッピングし、第２の信号を第２の二値信号にマッピングする。次に、本方法は、第１の低次元信号と第２の低次元信号との間の二乗距離が第１の二値信号と第２の二値信号との間の二乗距離を近似するように、第１の二値信号及び第２の二値信号の次元をそれぞれ低減して、第１の低次元信号及び第２の低次元信号を生成する。そして最後に、本方法は、第１の低次元信号と第２の低次元信号との間の二乗距離を求めて、第１の信号と第２の信号との間のマンハッタン距離を安全に求める。マンハッタン距離を安全に求めることは、異なる二者が信号ｘ及びｙを有する場合、ｘ及びｙを共有することなく距離算出を実行することができることを意味する。換言すれば、各者は計算全体を通じて該者の入力信号の機密を保持する。
【００１９】
代替的な実施の形態では、第１の信号及び第２の信号を第１の二値信号及び第２の二値信号にマッピングし、第１の二値信号と第２の二値信号との間の二乗距離を安全に求めることによってマンハッタン距離を安全に求める。この実施の形態では、次元低減ステップは省略される。この実施の形態では通信オーバヘッドは関心事ではない。
【００２０】
別の実施の形態は、第１の信号と第２の信号との間のマンハッタン距離を安全に求めるためのシステムを開示する。本システムは、第１の信号が第２のプロセッサから秘密にされ、第２の信号が第１のプロセッサから秘密にされるように本方法のステップを実施する第１のプロセッサ及び第２のプロセッサを備え、第１の信号は第１の二値信号にマッピングされ、第１の二値信号は次元をさらに低減されて第１の低次元信号が生成される。本システムは、第２の信号を第２の二値信号にマッピングする手段であって、第１の二値信号と第２の二値信号との間の二乗距離はマンハッタン距離に等しい、マッピングする手段と、第１の低次元信号と第２の低次元信号との間の二乗距離が第１の二値信号と第２の二値信号との間の二乗距離を近似するように、第２の二値信号の次元を低減して第２の低次元信号を生成する手段と、第１の低次元信号と第２の低次元信号との間の二乗距離を安全に求めて、第１の信号と第２の信号との間のマンハッタン距離を安全に求める手段とを備える。
【図面の簡単な説明】
【００２１】
【図１】信号間の暗号化されたマンハッタン距離を安全に求めるための方法の図である。
【図２】信号間の暗号化されたマンハッタン距離を安全に求めるための方法の図である。
【図３】本発明の一実施形態による生体認証又は個人的なマルチメディア検索のための安全な差異算出のための方法の概略図である。
【発明を実施するための形態】
【００２２】
本発明の実施形態は、二値信号間の二乗距離が信号間のマンハッタン距離に等しくなるように、信号ｘ及びｙを対応する
【００２３】
【数４】
0005566192.tif 000005
【００２４】
にマッピングすることができるという認識に基づく。したがって、当該技術分野において既知の任意の方法を使用して二値信号間の二乗距離を安全に求めることによって、信号間のマンハッタン距離を安全に求めることができる。さらに、二値信号間の二乗距離、及びしたがって元の信号ｘ及びｙ間のマンハッタン距離を概ね保ちながら、二値信号の長さ、及びそれに応じて通信のオーバヘッドを低減することができる。
【００２５】
用語「信号」は、本明細書及び添付の特許請求の範囲において広義で使用される。たとえば、信号は、データベクトル信号、行列信号、画像信号、生物学的データ信号、電磁信号等とすることができる。
【００２６】
図１は、２つの信号１１０間の暗号化されたマンハッタン距離１９０を安全に求めるためのシステム及び方法１００を示している。本発明の様々な実施形態によれば、マンハッタン距離１９０は、二値信号１４０又は低次元信号１６５に適用される二乗距離関数の暗号化結果１２０に等しい。
【００２７】
結果１２０は公開鍵１５０を用いて暗号化される。１つの実施形態では、暗号化結果を安全に通信し（１２５）、公開鍵１５０に関連付けられる（１５３）秘密鍵１５１を用いて復号する（１８０）。幾つかの実施形態では、システムは本方法のステップを実施する１つ又は複数のプロセッサ、たとえば第１のプロセッサ１０１を備える。
【００２８】
以下でより詳細に説明するように、二値信号１４０間の二乗距離が信号１１０間のマンハッタン距離に等しくなるように、信号ｘ及びｙを
【００２９】
【数５】
0005566192.tif 000006
【００３０】
にマッピングする（１３０）。したがって、以下となる。
【００３１】
【数６】
0005566192.tif 000007
【００３２】
ただし、下付き文字２は二乗距離を表し、下付き文字１はマンハッタン距離を表す。
【００３３】
１つの実施形態では、以下で説明するように、２つの信号間の二乗距離を安全に求めるための従来の方法を使用して二値信号の二乗距離を求める（１７０）。通常、二値信号１４０は信号１１０よりもはるかに大きな次元を有する。このことは、プロトコル内の暗号化の使用に起因して、求めるステップ１７０の間の通信オーバヘッドを増大させる。
【００３４】
この問題を解決するために、１つの実施形態では、二値信号間の二乗距離が２つの低次元信号間の二乗距離に概ね等しくなるように、
【００３５】
【数７】
0005566192.tif 000008
【００３６】
１６５を生成する。したがって、以下となる。
【００３７】
【数８】
0005566192.tif 000009
【００３８】
このため、マンハッタン距離１９０を計算するタスクは、低次元信号１６５間の二乗距離１２０の安全な計算１７０に低減される。低次元信号１６５は通例、信号１１０よりもわずかに大きな次元しか有しない。
【００３９】
信号のマッピング
１つの実施形態では、信号１１０は次元ｎの２つの整数列、ｘ＝（ｘ１，ｘ２，．．．，ｘｎ）、及びｙ＝（ｙ１，ｙ２，．．．，ｙｎ）であり、ただし、全てのｉ∈｛１，２，．．．，ｎ｝の場合にｘｉ，ｙｉ∈｛０，１，．．．，Ｍ−１｝であり、Ｍは信号の各要素の最大値である。１つの実施形態では、値Ｍは正の整数である。別の実施形態では、値Ｍは、次に高い整数に量子化される、すなわちマッピングを近似する。
【００４０】
信号ｘ及びｙの幾つかの要素又は全ての要素が負値を有する場合、全ての要素が非負値を有することを確実にするために、適切な整数定数が信号ｘ及びｙの各要素に加算される。
【００４１】
ｆ（ｕ）が最初のｕ個エントリとして１を含み、それに続くＭ−１−ｕ個のエントリとして０を含む二値信号となるように、以下の二値変換関数を定義する。
【００４２】
【数９】
0005566192.tif 000010
【００４３】
たとえば、信号ｘが２つの要素｛１，３｝を有し、Ｍが５である場合、二値信号ｆ（ｕ）は｛１００００，１１１００｝である。
【００４４】
したがって、１つの実施形態では、二値変換関数に従って信号１１０を
【００４５】
【数１０】
0005566192.tif 000011
【００４６】
にマッピングする。
【００４７】
二値信号間の二乗距離は、二値信号間のマンハッタン距離に等しく、重要なことには２つの信号間のマンハッタン距離に等しい。したがって、以下となる。
【００４８】
【数１１】
0005566192.tif 000012
【００４９】
【数１２】
0005566192.tif 000013
【００５０】
は次元ｎ（Ｍ−１）を有する。たとえば、最大値Ｍが２５５である場合、二値信号の次元は信号の次元より２５４倍大きく、これによって二値信号間の二乗距離を安全に求める間の高い通信オーバヘッドがもたらされる。このため、二値信号間の二乗距離を少なくとも幾らか近似して保ちながら、二値信号の次元を低減することが望まれている。
【００５１】
信号の次元の低減
幾つかの実施形態において、二値信号及び低次元信号間で二乗距離１２が概ね保たれるように、
【００５２】
【数１３】
0005566192.tif 000014
【００５３】
の次元を低減して（１６０）低次元信号を生成する。
【００５４】
１つの実施形態では、ジョンソン−リンデンシュトラウスの補題（ＪＬ）に従って定義される埋め込み関数を使用して二値信号を低次元信号に変換する。これによって高次元データが低次元空間に埋め込まれる。
【００５５】
補題１：パラメータε＞０及び整数ｓを所与とし、ｋを
【００５６】
【数１４】
0005566192.tif 000015
【００５７】
となるような正の整数とする。
【００５８】
【数１５】
0005566192.tif 000016
【００５９】
内のｓ個の点から成る全ての集合Ｐについて、全てのｕ，ｖ∈Ｐの場合に
【００６０】
【数１６】
0005566192.tif 000017
【００６１】
となるような埋め込み関数
【００６２】
【数１７】
0005566192.tif 000018
【００６３】
が存在する。
【００６４】
このため、埋め込み関数ｇを使用すると、高次元の任意の２つの点ｕ、ｖ間の二乗距離１２は、低次元のｇ（ｕ）、ｇ（ｖ）間の二乗距離ｌ２に概ね等しい。
【００６５】
１つの実施形態では、補題１においてｓ＝Ｍｎを設定して、低減された次元の数を求める。次に、パラメータε，β＞０について、以下を設定する。
【００６６】
【数１８】
0005566192.tif 000019
【００６７】
別の実施形態では、ｋ＝α ｎｌｏｇ Ｍを設定して式（３）を単純化する。ただし、定数αは、対数の底の変化に加えて、パラメータε及びβ両方の関数を表す。ここで、ε及びβは、以下で詳細に述べられるランダムに選択された埋め込み関数ｇのための近似パラメータ及び誤り確率パラメータである。
【００６８】
１つの実施形態では、以下のようにＪＬ埋め込み関数
【００６９】
【数１９】
0005566192.tif 000020
【００７０】
をランダムに選択する。
【００７１】
【数２０】
0005566192.tif 000021
【００７２】
を定義し、同様に
【００７３】
【数２１】
0005566192.tif 000022
【００７４】
を定義する。ただし、ｎ（Ｍ−１）×ｋ行列Ｒのエントリは、互いに独立であり同一の分布に従う（i.i.d.）ベルヌーリ数であり、各ビットは等しい確率ｂ、すなわちｂ＝０．５を有する＋１又は−１である。（２）が偽である事象の確率は、最大でもｓ−βである。行列Ｒのエントリを生成するのに使用されるシード１５５はプロセッサ間で共有される。
【００７５】
【数２２】
0005566192.tif 000023
【００７６】
は、次元ｋを有する。このため、補題１及び式（３）に従って、以下となる。
【００７７】
【数２３】
0005566192.tif 000024
【００７８】
【数２４】
0005566192.tif 000025
【００７９】
は、通常、整数信号ではない。幾つかの実施形態では、低次元信号１６５の値を、該信号１６５間の二乗距離を求める（１７０）前に整数値に変換する（１６７）。たとえば、１つの実施形態では、上記のＪＬ埋め込み関数に従って、信号１６５の各要素の値を√ｋと乗算する。これによって信号が整数であることが確実になる。次に、暗号化結果１２０を求めた後、暗号化結果を√ｋで除算する。別の実施形態では、信号１６５の各要素の値を最も近い整数に量子化する。
【００８０】
二乗距離の安全な計算
本発明の実施形態は、信号１６５間又は信号１４０間の二乗距離を安全に求めるための様々な方法を使用する。１つの実施形態では、参照により本明細書に援用される米国特許出願第１２／４９５，７２１号明細書に記載されるように、二乗距離関数を準同型成分の線形結合として表現して、準同型変換に基づいて二乗距離を求める。準同型成分は信号１６５の代数結合であり、該代数結合の暗号化結果が、準同型特性を使用して信号の暗号化バーションから直接求められるのに適しているようになっている。信号１６５は公開鍵１５０を用いて暗号化される。
【００８１】
したがって、信号１６５の暗号化されたバージョンから準同型成分の暗号化結果を求め、線形結合に従って準同型成分の暗号化結果を結合して暗号化結果１２０を生成する。
【００８２】
実施例
図２は、第１のプロセッサ１０１に記憶される第１の信号２１０と、第２のプロセッサ１０２に記憶される第２の信号２１５との間の暗号化されたマンハッタン距離１９０を求めるための方法２００を示している。本方法は、第１の信号が第２のプロセッサから秘密にされ、第２の信号が第１のプロセッサから秘密にされるように、第１のプロセッサ及び第２のプロセッサによって実行される。
【００８３】
第１のプロセッサは第１の信号をマッピングして（１３０）第１の二値信号２２０を生成し、第１の二値信号の長さを低減して（１６０）第１の低次元信号２３０を生成し、第１の低次元信号を公開鍵１５０を用いて暗号化して（２７０）第１の暗号化信号２４０を生成する。第１の暗号化信号は、求めるステップ１７０に対する入力である。
【００８４】
同様に、第２のプロセッサは第２の信号をマッピングして（１３０）第２の二値信号２２５を生成し、第２の二値信号の次元を低減して（１６０）第２の低次元信号２３５を生成し、第２の低次元信号を鍵１５０を用いて暗号化して（２７５）第２の暗号化信号２４５を生成する。第２の暗号化信号は、求めるステップ１７０に対する入力である。
【００８５】
個人的な画像検索
図３は、本発明の実施形態による画像データ３０５の個人的な検索のための方法を示している。個人的な検索を必要とする画像データの例は、生体データ、たとえば指紋３０６及び顔の画像３０７のような生体特徴ベクトルを含む。要件は、データベースが画像クエリに対するアクセスを有せず、画像クエリの暗号化バージョンに対してのみアクセスを有することを確実にしながら、画像クエリを使用して画像データベースを探索することが可能でなくてはならないことである。１つの実施形態では、プロセッサ１０１及び１０２は第３のプロセッサ１０３、たとえば遠隔認証サーバと対話する。しかしながら、別の実施形態では、プロセッサ１０３によって実行されるプロセスは、プロセッサ１０１及び１０２のうちの１つによって実行される。
【００８６】
クエリ画像データ３０５から信号２１５を抽出する（３１０）。信号２１５が、データベース３２０内の信号のうちの少なくとも１つ、たとえば信号２１０から閾値Ｄｔｈ３５５未満のマンハッタン距離を内部に有する場合、遠隔サーバ１０３は、信号２１５のクエリが成功したことを確認する。
【００８７】
プロセッサ１０１及び１０２は、入力信号２１５及び２１０を用いて方法２００を実行し、信号間の暗号化されたマンハッタン距離ｌ１を求める。公開鍵１５０が第３のプロセッサ１０３によって提供される。暗号化された差異１９０が第３のプロセッサに送信される。該差異を、秘密鍵１５１を用いて復号した（１８０）後、閾値３５５と比較する（３５０）。比較した後、確認（又は拒絶）をプロセッサ１０２に送信する（３６０）。
【００８８】
本発明を、好ましい実施形態の例として説明してきたが、本発明の精神及び範囲内で他のさまざまな適合及び変更を行えることが理解されるべきである。したがって、本発明の真の精神及び範囲内に入るすべての変形及び変更を包含することが、添付の特許請求の範囲の目的である。
【図１】
0005566192.tif 000026
【図２】
0005566192.tif 000027
【図３】
0005566192.tif 000028