(57)【要約】      （修正有）【課題】第１の信号と第２の信号との間の類似性をセキュアに検証するための方法を提供する。【解決手段】第１の信号及び第２の信号は、暗号鍵を使用して準同型に暗号化される。先ず、類似性制約によって決定される誤差パターンの集合を獲得する。この場合、各誤差パターンは、鍵を使用して準同型に暗号化され、セットアップフェーズにおいて検証器に提示される。誤差パターンの集合のいずれかの誤差パターンが、第１の暗号化信号と第２の暗号化信号との間の準同型関係を満たす場合には、検証器は、第１の信号が第２の信号と類似していると宣言する。【選択図】図１
2010237653.tif 000002
【特許請求の範囲】
【請求項１】
第１の信号と第２の信号との間の類似性を検証するための方法であって、前記第１の信号及び前記第２の信号は、鍵を使用して準同型に暗号化され、該方法のステップを実行するためのプロセッサを備え、該方法は、
誤差パターンの集合を獲得するステップであって、各誤差パターンは、前記鍵を使用して準同型に暗号化され、前記誤差パターンの集合は、類似性制約によって決定される、誤差パターンの集合を獲得するステップ、及び
前記誤差パターンの集合のいずれかの誤差パターンが、前記第１の信号と前記第２の信号との間の準同型関係を満たす場合には、前記第１の信号が前記第２の信号と類似していると宣言するステップ、
を含む方法。
【請求項２】
前記類似性制約は、二乗ユークリッド距離である、請求項１に記載の方法。
【請求項３】
前記類似性制約は、平均絶対誤差である、請求項１に記載の方法。
【請求項４】
前記第１の信号及び前記第２の信号は、整数のベクトルであり、該ベクトルは、等しい長さを有する、請求項１に記載の方法。
【請求項５】
前記宣言することは、検証の結果を生成し、該方法は、
前記検証の結果をクライアントへ送信すること、
をさらに含む、請求項１に記載の方法。
【請求項６】
第１のコードブックの第１のビンの各暗号化信号が、前記誤差パターンと前記第２の暗号化信号との間の準同型関係を満たさない場合には、前記第１のビンの暗号化信号から前記第１の信号を選択すること、及び
満たす場合には、第１のコードブックの第１のビン及び第２のコードブックの第２のビンにおける共通の暗号化信号として前記第１の信号を選択すること、
をさらに含み、前記第１のビン及び前記第２のビンは、多くとも１つのみの共通の暗号化信号を有する、請求項１に記載の方法。
【請求項７】
第１の信号と第２の信号との間の類似性を検証するための方法であって、前記第１の信号及び前記第２の信号は、鍵を使用して準同型に暗号化され、該方法のステップを実行するためのプロセッサを備え、該方法は、
誤差パターンの集合を獲得するステップであって、各誤差パターンは、前記鍵を使用して準同型に暗号化され、前記誤差パターンの集合は、類似性制約によって決定される、誤差パターンの集合を獲得するステップ、
第１のコードブックの第１のビンの暗号化信号から一致信号の集合を選択するステップであって、前記誤差パターンの集合の適切な誤差パターンと対にされた各一致信号は、該一致信号と前記第２の信号との間の準同型関係を満たす、第１のコードブックの第１のビンの暗号化信号から一致信号の集合を選択するステップ、並びに
前記一致信号の集合が空である場合には、前記第１の信号が前記第２の信号と非類似であると宣言するステップ、及び
前記一致信号の集合が空でない場合において、前記一致信号の集合が、第２のコードブックの第２のビンの暗号化信号と共通の信号を有しない場合には、前記第１の信号が前記第２の信号と非類似であると宣言するステップ、及び
前記一致信号の集合が、第２のコードブックの第２のビンの暗号化信号と共通の信号を有する場合には、前記第１の信号が前記第２の信号と類似していると宣言するステップ、
を含む方法。
【請求項８】
前記第１の信号は、準同型暗号化関数ξ（ｘ，Ａ）で暗号化され、ｘは非負の整数であり、ＡはPaillier暗号化に対するパラメータである、請求項７に記載の方法。
【請求項９】
前記第１の信号は、前記第１のコードブックの前記第１のビンに圧縮され、該方法は、
前記第１のビンのインデックスを獲得すること、及び
前記インデックスに基づいて前記第１のビンを選択すること、
をさらに含む、請求項７に記載の方法。
【請求項１０】
前記第１の信号は、前記第２のコードブックの前記第２のビンに圧縮され、該方法は、
前記第２のビンのインデックスを獲得すること、及び
前記インデックスに基づいて前記第２のビンを選択すること、
をさらに含む、請求項７に記載の方法。
【請求項１１】
前記第１のコードブックからの前記第１のビン及び前記第２のコードブックからの前記第２のビンは、１つの信号のみを共通に有する、請求項７に記載の方法。
【請求項１２】
前記第１の信号は、準同型暗号化関数ξ（ｘ，Ａ）で暗号化され、ｘは非負の整数であり、ＡはPaillier暗号化に対するパラメータである。請求項７に記載の方法。
【請求項１３】
前記第２のビンの暗号化信号から第２の一致信号の集合を選択することであって、前記誤差パターンの集合の適切な誤差パターンと対にされた各第２の一致信号は、該一致信号と前記第２の信号との間の準同型関係を満たす、前記第２のビンの暗号化信号から第２の一致信号の集合を選択すること、及び
前記第２の一致信号の集合が空である場合には、前記第１の信号が前記第２の信号と非類似であると宣言すること、
をさらに含む、請求項７に記載の方法。
【請求項１４】
前記第１の信号は、クライアントによって送信され、該方法は、
前記宣言の結果を前記クライアントへ送信すること、
をさらに含む、請求項７に記載の方法。
【請求項１５】
前記第１の信号はクライアントによって送信され、前記第２の信号はサーバによって送信され、該方法は、
前記クライアントによって前記鍵を決定すること、及び
前記クライアントから前記サーバへ前記鍵を送信すること、
をさらに含む、請求項７に記載の方法。
【請求項１６】
前記方法は検証器によって実行され、該方法は、
前記検証器へ前記鍵を送信すること、
をさらに含む、請求項７に記載の方法。
【請求項１７】
第１の信号と第２の信号との間の類似性を検証するためのシステムであって、前記第１の信号及び前記第２の信号は、鍵を使用して準同型に暗号化され、該方法のステップを実行するためのプロセッサを備え、該方法は、
誤差パターンの集合を獲得する手段であって、各誤差パターンは、前記鍵を使用して準同型に暗号化され、前記誤差パターンの集合は、類似性制約によって決定される、誤差パターンの集合を獲得する手段、
前記誤差パターンの集合から、前記第１の信号と前記第２の信号との間の準同型関係を満たす誤差パターンを選択する手段、及び
前記誤差パターンに従って、前記第１の信号と前記第２の信号との間の前記類似性を判断する手段、
を備える、システム。
【請求項１８】
前記判断する手段は、
前記第１の信号と前記第２の信号との間の前記準同型関係を満たす前記誤差パターンが選択された場合には、前記第１の信号が前記第２の信号と類似していると宣言する手段、
をさらに備える、請求項１７に記載のシステム。
【請求項１９】
前記判断する手段は、
前記第１の信号と前記第２の信号との間の前記準同型関係を満たす前記誤差パターンの集合の前記誤差パターンが選択されなかった場合には、前記第１の信号が前記第２の信号と非類似であると宣言する手段、
をさらに備える、請求項１７に記載のシステム。
【請求項２０】
少なくとも１つのコードブックから、該コードブックのビンのインデックスに従って前記第１の信号を選択する手段、
をさらに備える、請求項１７に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、包括的には、信号間の類似性を検証することに関し、より詳細には、暗号化信号間の類似性をセキュアに検証することに関する。
【背景技術】
【０００２】
２つの信号間の類似性をセキュアに検証することが多くの場合必要とされる。従来の方法は、暗号ハッシュ関数を使用して、２つの信号が類似しているか否かを検証する。ハッシュ衝突は無視できるほど低い確率でしか起こらないと仮定して、信号ｘのハッシュと信号ｙのハッシュとが等しい場合に、信号ｘは信号ｙに等しい。暗号ハッシュのこの比較は、ほとんどのパスワード及び鍵の管理アプリケーションの基本となる構成要素である。従来の暗号ハッシュ関数の本質的な特性は、ハッシュが、比較されている信号の基礎となる統計的構造を保存していないということである。具体的には、一方の信号が他方の信号に雑音が含まれているものである場合、それら２つの信号の暗号ハッシュは、たとえその雑音が小さくても、非常に異なったものとなる。したがって、暗号ハッシュに基づく照合は雑音の影響を受けやすいので、暗号ハッシュは、それ自体、例えばストレージ又は通信チャネルといった雑音のある環境では不完全な一致を検証するのに使用することができない。
【０００３】
信号の不完全な一致の問題を解決するための１つの方法は、信号の一方、例えば信号ｘが、雑音を有するチャネルを介して送信され、破損した信号ｙとして受信されると仮定するものである。この場合、或るエラー訂正符号（ＥＣＣ）も、信号ｘと共に送信され、推定信号チルダｘが回復される、この時、信号ｘの暗号ハッシュと推定信号チルダｘの暗号ハッシュとを比較することができる。エラー訂正が成功した場合、ハッシュは完全一致し、したがって、信号ｘ及びｙは、実際には、最大でＥＣＣの特性によって決まる或る許容可能な歪みまでは類似している。その方法は、共通のランダム性を利用し、バイオメトリック認証、セキュアなコラボレーション、及び画像認証についてファジーボールトベースの方式で広く採用されてきた。
【０００４】
しかしながら、上記ランダム性方法は、信号ｘ及びｙがすでに暗号化されている場合には利用することができない。このことは、多くの用途で重要である。例えば、病院は、基礎となるデータを第三者に明らかにすることなく、医療データを第三者によって解析及び分類してほしい。その上、第三者は、病院に分類方法を公開したくない場合がある。この「ダブルブラインド」形式で計算を実行することが多くの場合望まれている。
【０００５】
この問題は、多くの場合、セキュアマルチパーティ計算（secure multiparty computation）（ＳＭＣ）と定義される。紛失通信（ＯＴ）、セキュア内積（Secure Inner Product）（ＳＩＰ）等の計算的にセキュアな方法は、より複雑な演算を実行するプリミティブとして使用され、それによって、セキュアマルチパーティ計算を可能にする。このような方法の例には、ブラインドビジョンが含まれる。これについては、特許文献１を参照されたい。それらの方法は、ユーザが供給したテスト画像も分類器によって使用される分類方法も明らかにすることなく顔検出を実行する。しかしながら、その方法は、ユーザと分類器との間に多くの鍵交換を必要とする。ハンドシェーク及び鍵管理の点からのオーバーヘッドが非常に大きい。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】米国特許出願第１１／００５，２９３号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００７】
したがって、２つの信号間の類似性をセキュアに検証すると同時にオーバーヘッドを最小にすることが多くの場合望まれている。
【課題を解決するための手段】
【０００８】
本発明は、最大で或る所定の歪しきい値まで２つの暗号化信号間の類似性をセキュアに検証するための方法を提供する。本方法は、セキュアマルチパーティ計算（ＳＭＣ）を使用する。ＳＭＣでは、第一者であるアリスは、クライアントコンピュータを動作させ、第二者であるボブは、サーバコンピュータを動作させる。第三者であるチャーリーは、限界のある計算能力を有するアントラステッド検証エージェンシーである。
【０００９】
本発明は、任意の２つの準同型暗号化信号が誤差パターンによって非類似になり、その誤差パターンを暗号化したものを誤差パターンの有限集合から選択できるという認識に基づいている。誤差パターンの集合は、非類似性制約によって決定される。
【００１０】
さらに、信号文字体系について、各コードブックからのインデックスを組み合わせて文字体系の任意の要素を一意に識別できるような複数のコードブックを設計することができる。識別された要素は暗号化形態にあるので、秘密性は保持される。
【００１１】
アリスはテスト信号ｘを有し、ボブは基準信号ｙを有する。アリスは、所定のしきい値に従って、信号ｘが基準信号ｙと類似しているか否か、すなわちｄ（ｘ，ｙ）≦Ｄであるか否か、を判断したい。ここで、ｄ（ｘ，ｙ）は所定の歪尺度であり、Ｄは所定のしきい値である。一方、関係者のいずれもが、互いにどのデータも明らかにしたくなく、データに対する操作に使用されるプロセスも明らかにしたくない。
【００１２】
実施の形態は、アントラステッド検証器であるチャーリーを使用して、上記制約を満たす。本方法は、信号ｘ及びｙの準同型暗号化を信号ｘに対するビニング符号と組み合わせる。
【００１３】
アリス及びボブは、チャーリーへデータを送信する前に、準同型関数を使用してデータを暗号化する。アリス及びボブは、暗号化用に同じ公開鍵を使用する。本発明によれば、セットアップフェーズ中、チャーリーは、暗号化誤差パターンの集合を獲得する。各誤差パターンは、同じ公開鍵を使用して準同型に暗号化されている。暗号化誤差パターンの集合は、類似性制約によって決定される。一実施の形態では、誤差パターンの集合からの誤差パターンが、アリスの暗号化信号とボブの暗号化信号との間の準同型関係を満たす場合に、２つの暗号化信号は、類似性制約に従って類似している。
【００１４】
本発明のいくつかの実施の形態は、関係者の一人、例えばアリスが、帯域幅制約のもとで動作し、通信オーバーヘッドを削減する必要がある場合に対処する。これらの実施の形態は、一対のビニング符号を使用してこの問題を解決する。チャーリーは、信号ｘのすべての可能な暗号化値を含むコードブックを有するが、他の情報を有しない。１つ又は最大２つのビンインデックスを獲得することによって、チャーリーは、信号ｘとｙとが、最大で指定された距離までは類似しているか否かを判断することが可能になる。
【００１５】
本発明の実施形態は、例えば、セキュア医療データ処理、セキュアキーワード検索、及びセキュアデータ分類において広範囲の用途を有する。
【発明の効果】
【００１６】
本発明の実施形態は、例えば医療データのセキュアな分類に用途を有する。従来のメディア信号が整数又はバイナリの特徴ベクトル等の圧縮された特徴信号に変換される多数の用途がある。特徴信号を生成する動機は、ストレージの削減、オリジナルメディアのプライバシー保護の有効化、有益な統計的特性の抽出、検索アルゴリズムの高速化等のための場合がある。例えば、整数特徴ベクトルは、オリジナルのフィンガープリント（fingerprint：指紋）のプライバシーを保護するために顔画像から抽出できると同時に、雑音が存在する中で顔に基づく認識及び認証を容易にすることができる。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施形態によるアントラステッド検証器を使用して２つの信号の類似性を検証するための方法及びシステムのブロック図である。
【図２】本発明の実施形態によるアントラステッド検証器を使用して２つの信号の類似性を検証するための方法及びシステムのブロック図である。
【図３】本発明の実施形態による図１の方法のフローチャートである。
【図４】本発明の実施形態による図１の方法のフローチャートである。
【図５】本発明の実施形態による条件を満たす２つのコードブックの模式図である。
【図６】本発明の実施形態による条件を満たす２つのコードブックの模式図である。
【図７】本発明の実施形態による非類似信号の模式図である。
【図８】本発明の実施形態による類似信号の模式図である。
【発明を実施するための形態】
【００１８】
図１は、本発明の一実施形態による２つの暗号化信号１１０及び１２０の類似性を検証する（１３０）ための方法及びシステム１００を示す。一実施形態では、このシステムは、少なくとも、本方法のステップを実行するプロセッサ、すなわち、クライアントプロセッサ（アリス）、サーバプロセッサ（ボブ）、及び検証器のプロセッサ（チャーリー）を含む。
【００１９】
信号１１０及び１２０は、公開鍵を使用して準同型に（homomorphically）暗号化されている。検証器１３０のもう１つの入力は、暗号化誤差パターンの集合１４０である。この集合１４０において、各誤差パターンは、信号の暗号化に使用されたものと同じ公開鍵によって準同型に暗号化されている。
【００２０】
集合１４０は、以下で詳細に説明する類似性制約１５０によって決定される。集合１４０からのいずれかの誤差パターンが、第１の暗号化信号１１０と第２の暗号化信号１２０との間の準同型関係を満たす場合（１６０）、これらの信号は類似している（１７０）と宣言される。そうでない場合、これらの信号は非類似である（１８０）。
【００２１】
準同型暗号化
準同型暗号化は、場合によっては異なる代数演算を暗号文に対して実行することにより特定の代数演算が平文に対して実行される暗号化の一形態である。Ρを、二項演算子・Ρに関連付けられた平文の集合であるとし、Ηを、二項演算子・Ηに関連付けられた暗号文の集合であるとする。
【００２２】
定義１．１：暗号化関数ξ：Ρ→Ηは、すべてのａ，ｂ∈Ρについて、
ξ（ａ・Ρｂ）＝ξ（ａ）・Ηξ（ｂ）
である場合に準同型である。
【００２３】
多くの公開鍵暗号システムは準同型特性を使用する。本発明の実施形態は、二項演算子・Ρが整数加算演算子である一方、・Η演算子が整数乗算演算子である暗号システムに関係したものである。加算演算及び乗算演算の双方は、整数の有限集合に対するものである。公開鍵暗号法のための確率的非対称暗号化プロセスであるPaillier（パイエ）暗号システムが、本発明において使用するこのような１つの暗号システムである。
【００２４】
信号はｘ及びｙであり、距離尺度はｄ（ｘ，ｙ）＝｜ｘ−ｙ｜である。ξ（・）が暗号化関数を示す場合、ξ（ｘ）は、信号ｘを暗号化したものである。
【００２５】
一実施形態では、距離尺度は平均絶対誤差（ＭＡＥ）である。簡単にするために、本発明の実施形態は、この距離尺度を使用して説明される。しかしながら、本発明は、二乗距離、すなわち、ｄ（ｘ，ｙ）＝（ｘ−ｙ）２であるユークリッド距離等の他の距離尺度にも有効である。
【００２６】
一実施形態では、信号ｘ及びｙは、シングルトン整数である。別の実施形態では、信号ｘ及びｙは、同じ長さの整数のベクトルである。その実施形態では、距離尺度は、ベクトルの各要素について計算され、ｘとｙとの間の最終距離は、個々の要素の対間の距離の合計である。例えば、長さｎのベクトルの場合、ＭＡＥ距離尺度は、ｄ（ｘ，ｙ）＝Σ｜ｘｉ−ｙｉ｜である。ここで、この合計は、ｉ＝１〜ｎからのものである。
【００２７】
類似性制約
信号ｘ及びｙが類似として分類されるために満たさなければならない類似性制約が使用される。
【００２８】
定義２．１：信号ｙは、ｄ（ｘ，ｙ）＝｜ｘ−ｙ｜≦Ｄである場合に限り、距離関数ｄ（・，・）に関してｘと類似している。ここで、Ｄは所定の歪しきい値である。信号ｙは、或る正又は負の整数ｅについてｙ＝ｘ−ｅと記述することができる。整数ｅを誤差パターンと呼ぶことにする。したがって、｜ｅ｜＝｜ｘ−ｙ｜≦Ｄの場合に限り、信号ｙは信号ｘと類似している。二乗距離等の他の距離尺度も、実施形態によって使用される。
【００２９】
類似性制約は、検証器に記憶される誤差パターンを決定する。類似性制約の上記定義を使用すると、類似性制約を満たす誤差パターンの例は、−Ｄ、−Ｄ＋１、−Ｄ＋２、…、０、…、Ｄ−２、Ｄ−１、Ｄである。
【００３０】
Paillier準同型暗号システム
構成：２つの素数ｐ，ｑを選び、Ｎ＝ｐｑであるとする。ｇｃｄ（Ｌ（ｇλ mod Ｎ２），Ｎ）＝１であるような
【００３１】
【数１】
2010237653.tif 000003
【００３２】
を選択する。ここで、λ＝ｌｃｍ（ｐ−１，ｑ−１）であり、Ｌ（ｘ）＝（ｘ−１）／Ｎである。ここで、ｇｃｄは最大公約数を指し、ｌｃｍは最小公倍数を指す。公開鍵として（Ｎ，ｇ）を使用し、私有鍵として（ｐ，ｑ）を使用し、上述したように、
【００３３】
【数２】
2010237653.tif 000004
【００３４】
は、Ｎ２を法とする逆数を有する非負の整数の集合である。
【００３５】
暗号化：ｍ∈ＺＮを平文とする。この場合、暗号文は、
ｃ＝ξ（ｍ，ｒ）＝ｇｍ・ｒＮ mod Ｎ２                      （１）
となる。ここで、ｒ∈Ｚ＊Ｎは、ランダムに選択された整数であり、ＺＮ＝｛０，１，２，…，Ｎ−１｝であり、Ｚ＊Ｎは、Ｎを法とする逆数を有する非負の整数の集合である。整数ｒは、Paillier暗号化関数のパラメータである。暗号化の結果は、このランダムパラメータに依存する。メッセージｍが、異なるｒで複数回暗号化される場合、対応する暗号文は異なる。したがって、暗号化値は、ランダムに選ばれる定数ｒに依存するので、Paillier暗号化は本質的に確率的である。
【００３６】
解読：
【００３７】
【数３】
2010237653.tif 000005
【００３８】
を暗号文とする。この場合、対応する平文は、
【００３９】
【数４】
2010237653.tif 000006
【００４０】
となる。ここで、関数Ｌ（・）は、Ｌ（ｘ）＝（ｘ−１）／Ｎと定義される。数学的には、解読は、暗号化中に使用されたｒの値に関わらず、結果ｍを与える。
【００４１】
準同型特性は、平文集合（ＺＮ，＋）から暗号文集合
【００４２】
【数５】
2010237653.tif 000007
【００４３】
へのPaillier暗号化関数について成立する。すなわち、
ξ（ｍ１＋ｍ２，ｒ１ｒ２）＝ξ（ｍ１，ｒ１）・ξ（ｍ２，ｒ２）
である。
【００４４】
上記関係において、ｒ１及びｒ２は、Paillier暗号化で使用されたパラメータである。上記式（１）のｒと同様に、これらのパラメータは、集合Ｚ＊Ｎからランダムに選ばれる。
【００４５】
Paillier準同型関係
Paillier暗号化の準同型関係を使用するものとする。Paillier準同型関係によれば、２つの信号の合計の暗号化値は、それら２つの信号のそれぞれの暗号化値の積に等しい。この関係を信号ｘ、ｙ及び誤差パターンｅに適用するものとする。したがって、ｅ＝ｘ−ｙは、ξ（ｘ，Ａ）ξ（−ｙ，Ｂ）＝ξ（ｅ，ＡＢ）を意味する。この関係では、アリス及びボブが、信号ｘの暗号化及び信号ｙの暗号化をそれぞれ実行するとき、Ａ及びＢは、アリス及びボブによってそれぞれ使用されるパラメータである。Ａ及びＢは、Ｚ＊Ｎからランダムに選択された整数である。パラメータＡ及びＢは、式（１）内の乱数ｒと同じ役割を果たす。ＡＢも暗号化パラメータであり、この暗号化パラメータは、Ｎを法とする、暗号化パラメータＡ及びＢの積に等しい。
【００４６】
したがって、許容可能な誤差パターンの集合１４０について、準同型関係ξ（ｘ，Ａ）ξ（−ｙ，Ｂ）＝ξ（ｅ，ＡＢ）を満たす（１６０）誤差パターン内の集合１４０の或る誤差パターンｅを決定することが可能である場合に限り、信号ｘ  １１０と信号ｙ  １２０とは類似している。ここで、Ａはアリスに知られており、Ｂはボブに知られている。
【００４７】
Ａ及びＢは、アリス及びボブによってそれぞれ使用されるPaillier暗号化のパラメータであるが、これらパラメータは秘密である必要はない。代替的に、アリスは、集合Ｚ＊ＮからランダムにＡ及びＢを選択することができ、そして、Ｂをボブへ送信することができる。チャーリーは、ＡもＢもどちらも知らない。
【００４８】
図２は、本発明の実施形態によるアントラステッドな第三者の検証器を使用して２つの信号の類似性を検証するための方法及びシステム２００を示す。
【００４９】
通常、第１のプロセッサを含むクライアントコンピュータを動作させる第一者、例えばアリス１１０は、信号ｘ  ２１５を有する。
【００５０】
通常、サーバコンピュータを動作させる第二者、例えばボブ１２０は、信号ｙ  ２２５を有する。アリス及びボブは、ｘ及びｙが共に整数であること以外は、互いの信号ｘ  ２１５及びｙ  ２２５について何も知らない。アリスは、アントラステッドな第三者の検証器、例えば第３のプロセッサを動作させるチャーリー１３０を使用して、信号ｘ  ２１５が信号ｙ  ２２５と合致しているか否かを検証する。
【００５１】
チャーリーが方法２００の期間中に受信する唯一の情報は、信号ｘとｙとが類似しているか否かということである。すなわち、チャーリーは、信号それ自体について何も知ることはない。一実施形態では、チャーリーは、結果２５０をアリスへ通信する（２４０）。
【００５２】
アリス１１０は、ボブ及びチャーリーと公開鍵κ  ２６５を共有する（２６０）。ボブは、鍵κ  ２６５及びランダムに選ばれた定数Ｂを使用して、信号ｙ  ２２５を暗号化して（２７０）暗号化信号ξ（ｙ，Ｂ）２７５を生成し、その暗号化信号２７５を検証器チャーリーへ送信する（２７７）。簡単にするために、送信２７７はエラーがないものと仮定するが、送信２７７は、エラー訂正符号（ＥＣＣ）を使用して保護することができる。同様に、アリスは、公開鍵κ  ２６５及びランダムに選ばれた定数Ａを使用して信号ｘ  ２１５を暗号化し（２８０）、暗号化信号ξ（ｘ，Ａ）２８５を生成する。
【００５３】
本発明のいくつかの実施形態は、アリスが、暗号化信号ξ（ｘ，Ａ）２８５をチャーリーへタイミング良く送信するのに必要とされる平均帯域幅を削減する必要があるとき、又は、アリスが、１回の送信当たり一定の限られた情報量のみをチャーリーへ送信する必要があるときに使用される。これらの実施形態では、暗号化信号ξ（ｘ，Ａ）２８５を、例えばビニング符号Ｃ  ２８７を使用して圧縮し（２８３）、ビンＣｉに対応するインデックスｉ  ２８８のみをチャーリーへ送信する（２８９）。ここでも同様に、送信２８９はエラーがないものと仮定するが、信頼できるチャネルが利用可能でない場合には、ビンインデックスｉ  ２８８も、エラー訂正符号（ＥＣＣ）によって保護することができる。ビニング符号２８７は、信号ｘを暗号化したものに適用される。
【００５４】
さらに、図５に示すようなコードブックが、例えばセットアップフェーズ中にチャーリーに利用可能にされる。これは、通例、デジタル通信の場合であり、デジタル通信では、符号化器及び復号器は、実際のデータ送信の前のセットアップフェーズ中に合意されるコードブックを使用する。ビンインデックスｉ  ２８８に基づいて、チャーリーは、コードブックにおいてビンを突き止めることができる。ビンは、暗号化信号ｘを含めて、所定の個数の暗号化信号の変形を含む。しかし、チャーリーは、どの暗号化された変形が暗号化信号ｘに対応するのかを知らない。暗号化関数ξ（・，・）を逆に戻すのに使用される私有鍵は、アリスにのみ利用可能であるので、チャーリーは、信号ｘ及びｙにアクセスすることができない。
【００５５】
チャーリーは、ビンインデックスｉ  ２８８が与えられると、信号ｘ  ２１５とｙ  ２２５とが、上記で提供した定義２．１に従って類似しているか否かを判断する。さらに、いくつかの実施形態では、チャーリーとアリスとの間にフィードバックチャネル２４０があり、このフィードバックチャネル２４０は、単一ビットフィードバックをアリスに提供するのに使用される。通例、フィードバックチャネルは、信号ｘとｙとの類似性を検証する方法の期間中、多くとも１回のみ使用され、結果２５０がアリスへ返信されるときにさらにもう１回使用される。
【００５６】
信号ｘと信号ｙとの類似性のチェック
図３〜図４は、定義２．１に従って２つの整数信号ｘとｙとの類似性をセキュアに検証するための方法を示す。
【００５７】
アリス１１０は、整数の或る集合Αから整数信号ｘを選択し（３１０）、準同型暗号化関数で信号ｘを暗号化して（３２０）、ξ（ｘ，Ａ）を求める。ここで、Ａは、Paillier暗号化に対するパラメータである。
【００５８】
Paillier暗号化によれば、暗号化されている数は、非負の整数の集合｛１，２，…，Ｎ｝に属する。したがって、整数ｘが負である場合、元の負の整数に対応する非負の整数を得るために、Ｎを法とする算術計算が使用される。整数ｘ、ｙ、及びｅは、サイズＮの加法群に属する。ここで、Ｎは、ｘ、ｙ、又はｅよりもかなり大きい。準同型暗号化のための公開鍵κ＝（Ｎ，ｇ）２６５は、アリス及びボブの双方に利用可能である。私有鍵（ｐ，ｑ）は、アリスのみが知っている。
【００５９】
コードブック
【００６０】
【数６】
2010237653.tif 000008
【００６１】
及びコードブック
【００６２】
【数７】
2010237653.tif 000009
【００６３】
を、Ｃｉ∩Ｃ’ｊが、任意のｉ＝１、２、…、ｌ１及びｊ＝１、２、…、ｌ２についてΑの多くとも１つの共通要素のみを含むような集合Αの２つの区画であるとする。各Ｃｉは、インデックスｉを有するビンである。したがって、区画Ｃ及びＣ’は、Ｃから選ばれたいずれのビンも、Ｃ’から選ばれたいずれのビンとも多くとも１つの要素のみを共通して有するようなｘを圧縮するのに使用できる２つのコードブックである。アリスは、後述するように、ビニング符号を使用して、ξ（ｘ，Ａ）を圧縮する。ここで、ξ（・，・）は暗号化関数である。
【００６４】
本明細書で定義したように、ｉ＝１、２、…、ｌ１及びｊ＝１、２、…、ｌ２についてξ（Ｃｉ，Ａ）＝｛ξ（ｘ，Ａ）｜ｘ∈Ｃｉ｝であり、ξ（Ｃ’ｊ，Ａ）＝｛ξ（ｘ，Ａ）｜ｘ∈Ｃ’ｊ｝である。したがって、コードブックξ（Ｃ，Ａ）及びξ（Ｃ’，Ａ）における区画は、Ｃ及びＣ’における区画と同じである。唯一の相違は、ξ（Ｃ，Ａ）及びξ（Ｃ’，Ａ）が、この時、集合Αの要素を暗号化したものを含む一方、Ｃ及びＣ’はΑからの実際の整数の要素を含むということである。
【００６５】
次に、アリスは、コードブック
【００６６】
【数８】
2010237653.tif 000010
【００６７】
を使用して、暗号化信号ξ（ｘ，Ａ）を圧縮する（３３０）。すなわち、ξ（ｘ，Ａ）∈ξ（Ｃｉ，Ａ）である場合に限り、ξ（ｘ，Ａ）は、ビンインデックスｉに圧縮される。次に、インデックスｉを、チャーリーへ送信する（３３５）。
【００６８】
図５は、必要とされる条件を満たす２つのコードブックＣ  ５１０及びＣ’  ５２０の一例を示す。すなわち、いずれのＣｉ  ５１０及びＣ’ｊ  ５２０も、多くとも１つの要素、例えば要素５３０しか共通に有しない。本方法は、先ず集合Αを区分化し、集合Αの要素を暗号化したものに同じ区画を使用する。オプションとして、平文領域に区画を構築し、次いで、Αの暗号化要素にそれら区画を使用する。代替的に、アリスが、Αの暗号化要素から直接区画を生成する。
【００６９】
図６は、必要とされる条件を満たす２つのコードブックＣ  ６１０及びＣ’  ６２０の別の例を示す。アリスは、ξ（Ｃ，Ａ）からのビンとξ（Ｃ’，Ａ）からのビンとの間のいずれの積集合も多くとも１つの共通要素５３０のみを含むような２つのコードブックξ（Ｃ，Ａ）及びξ（Ｃ’，Ａ）を集合ξ（Α，Ａ）＝｛ξ（ｘ，Ａ）｜ｘ∈Α｝から任意に構築する。ξ（Α，Ａ）からの要素を含むコードブックξ（Ｃ，Ａ）及びξ（Ｃ’，Ａ）は、セットアップフェーズ中にチャーリーによって獲得される。チャーリーは、私有鍵を所有していないので、暗号化コードブックから情報をリトリーブすることはできない。
【００７０】
ボブ１２０は、整数信号ｙ∈Ωを選択する（３１１）。ボブは、公開鍵κ  ２６５及び暗号化パラメータＢを使用して、暗号化信号ξ（−ｙ，Ｂ）を計算し（３２１）、暗号化信号ξ（−ｙ，Ｂ）をチャーリーへ送信する（３３１）。アリスと同様に、−ｙが負である場合、ボブは、Ｎを法とする算術計算を使用して、サイズＮの加法群において−ｙに対応する非負の整数を見つけ、その数を暗号化する。
【００７１】
図４を参照して、チャーリーは、アリス及びボブによって送信されたデータを入力として受信する。チャーリーは、誤差パターン集合１４０  ε＝｛ξ（ｅ，ＡＢ）：｜ｅ｜≦Ｄ｝も受信する。誤差パターン集合εは、類似性制約のもとで可能なすべての暗号化誤差パターンの集合である。この集合は、プロトコルが実行される前の「セットアップ」段階でアリス又はボブのいずれかがチャーリーへ送信することができる。
【００７２】
しきい値Ｄは、通常、小さいので、εの要素の個数｜ε｜は管理可能である。εの要素の個数は、Ｄと共に線形に増大し、上記例では、２Ｄ＋１に等しい。
【００７３】
次に、チャーリーは、類似性制約に従ってボブの暗号化信号ξ（−ｙ，Ｂ）３２１と一致する、アリスのビンインデックスｉ  ３３５によってインデックスされた信号の第１の一致集合Λ４２５を構築する（４２０）。第１の一致集合は、誤差パターンの集合１４０からの任意の適切な誤差パターンと組み合わさって、暗号化信号ξ（−ｙ，Ｂ）に関する準同型関係を満たす、インデックスｉを有するビンからのすべての信号を含む。すなわち、Λ＝｛ξ（ｘバー，Ａ）∈ξ（Ｃｉ，Ａ）｜ξ（ｅ，ＡＢ）＝ξ（ｘバー、Ａ）ξ（−ｙ，Ｂ）、或るξ（ｅ，ＡＢ）∈εのとき｝である。
【００７４】
チャーリーは、第１の一致集合Λ４２５が空であるか否か、すなわちΛ＝φであるか否かを判断する（４３０）。第１の一致集合４２５が空である場合（４３２）、チャーリーは、信号ｙが信号ｘと非類似である、すなわち、信号ｘが類似性制約に違反している、と判断する（４４０）。そうでない場合（４３３）、チャーリーは、コードブック
【００７５】
【数９】
2010237653.tif 000011
【００７６】
からのξ（ｘ，Ａ）の別の圧縮したものをアリスに要求する（４５０）。この要求は、好ましくは、単一ビットのエラーのないフィードバックによって行われる。
【００７７】
図３を参照して、アリスが、チャーリーからξ（ｘ，Ａ）の別の圧縮したものに対する要求を受信したとき（３４０）、アリスは、信号ｘを含むビンＣ’ｊ３５０のインデックスｊを送信する（３５５）。すなわち、アリスは、ξ（ｘ，Ａ）を含むビンξ（Ｃ’ｊ，Ａ）のインデックスｊを送信する（３５５）。
【００７８】
図４を参照して、チャーリーは、ビンＣ’ｊのインデックスｊを受信すると、類似性制約に従ってボブの暗号化信号ξ（−ｙ，Ｂ）３２１と一致する、アリスのビンインデックスｊによってインデックスされたエントリーの第２の一致集合４６５  Λ’を構築する（４６０）。すなわち、Λ’＝｛ξ（ｘバー，Ａ）∈ξ（Ｃ’ｊ，Ａ）｜ξ（ｅ，ＡＢ）＝ξ（ｘバー、Ａ）ξ（−ｙ，Ｂ）、或るξ（ｅ，ＡＢ）∈εのとき｝である。第２の一致集合が空である場合（４６２）、すなわち、Λ’＝φである場合、チャーリーは、この場合も、信号ｙが信号ｘと非類似である、すなわち類似性制約に違反している、と判定する（４４０）。
【００７９】
第１の一致集合４２５及び第２の一致集合４６５が空でない場合（４６６）、すなわち、Λ≠φ且つΛ’≠φである場合、チャーリーは、これらの一致集合を比較して、一致集合４２５及び４６５が共通の要素を有するか否かを判断する（４７０）。一致集合が共通の要素を有しない場合（４７２）、すなわち、Λ∩Λ’＝φである場合、チャーリーは、信号ｙが信号ｘと非類似である、すなわち、類似性制約に違反している、と宣言する（４７６）。
【００８０】
図７は、信号ｙと信号ｘとが非類似であるときの一例を示す。第１の一致集合及び第２の一致集合の要素ｘバー７１０、すなわち、ｘバー∈Λ∪Λ’は、或るξ（ｅ，ＡＢ）∈εについて等式ξ（ｅ，ＡＢ）＝ξ（ｘバー，ＡＢ）ξ（−ｙ，Ｂ）を満たし、要素７２０は満たさない。積集合は空である。すなわち、Λ∩Λ’＝φであり、したがって、信号ｘとｙとは非類似である。
【００８１】
一致集合４２５及び４６５が共通の要素４７４を有する場合、チャーリーは、信号ｙが距離Ｄ内で信号ｘと類似していることを宣言する（４７８）。構築によって、Λ∩Λ’は、空であるか又は図８に示すようにアリスによって選ばれた１つの要素ξ（ｘ，Ａ）４７４のみを有するかのいずれかである。したがって、類似性に関するテストが成功した場合、チャーリーは、ξ（ｘ，Ａ）を求め、したがって、ξ（ｅ，ＡＢ）＝ξ（ｘ，Ａ）ξ（−ｙ，Ｂ）を満たすξ（ｅ，ＡＢ）を求める。ここで、ξ（ｘ，Ａ）∈Λ∩Λ’である。チャーリーは、ｘの値もｙの値もｅの値も知ることはできない。
【００８２】
図２に示すように、チャーリーは、結果２５０、すなわち類似又は非類似、をアリスへ送信することができる（２４０）。必要に応じて、チャーリーは、公開鍵κ  ２６５を使用して結果を暗号化することができ、アリスは、私有鍵で結果を解読することができる。
【００８３】
実施例
Ｄ＝３とする。これは、｜ｘ−ｙ｜≦３である場合に限り、ｘとｙとが合致していることを意味する。次に、
Α＝｛０，７，１５，２５，３３，４１，４９，５７，６５，７３，８１，９０，９８，１１０，１１８，１２６｝
とする。アリスは、Αの２つの区画、すなわちＣ及びＣ’を選ぶ。各区画は、次のような４つのビンを有する。
Ｃ１＝｛０，８１，１１０，４９｝
Ｃ２＝｛３３，５７，１５，９０｝
Ｃ３＝｛７，１２６，４１，７３｝
Ｃ４＝｛１１８，９８，６５，２５｝
Ｃ’１＝｛０，３３，７，１１８｝
Ｃ’２＝｛８１，５７，１２６，９８｝
Ｃ’３＝｛１１０，１５，４１，６５｝
Ｃ’４＝｛４９，９０，７３，２５｝
【００８４】
Paillier暗号システムについて、ｐ＝１１２５８９９９０６８４６５６７、ｑ＝１１２５８９９９０６８４８５５９、及びｇ＝２を選ぶ。したがって、Ｎ＝ｐｑ＝１２６７６５０６００２３９３５１０４０７７６５１８０４６９５３である。この例では、単に例示の目的のため、ｐ、ｑ、及びＮの選んだ大きさは小さい。他の例では、Ｎは、非常に大きく、因数分解するのが困難である。便宜上、アリスは、Paillier暗号化のパラメータとして、集合｛１，２，…，Ｎ｝からランダムにＡ＝１１２３４５６５３２５１１５及びＢ＝２３４５６７８７８６７８５１を選ぶ。アリスは、Ｂの値をボブに提供する。上記と同じ区画Ｃ及びＣ’を保ちながら、アリスは、パラメータＡを使用してコードブックエントリーを暗号化し、以下のビンを有するコードブックξ（Ｃ，Ａ）及びξ（Ｃ’，Ａ）を自身に与える。
【００８５】
ξ（Ｃ１，Ａ）≡
｛１３４７０１７０６６４２５３５８８７６１９３８０１９９３３１２７６２７７７７４０３３２９３７０４１１５８４８２２５７６，７９９２４７６６４２２４７１１３２６０１８０８９２７４０６１８０３１４２０３４５５７２８５０１７７３４５５９０５０９９０，１５１１７１５２１３０５７３５５０１９５５６４５４２０７１８１５３１４８３０４９１３３０３３４１７０４５９６２６４１２１８，２１９０９４３６９３２３４５９３４６６１５７５７０６７９５９４２８１８５２９５７７６４３１５８３３７７８０３２７７９３２，｝
【００８６】
ξ（Ｃ２，Ａ）≡
｛９３１０７４０７３９７５２５６１５６９２６４３７８５２３０７１８４４３１１３１４６９５０５９７６９６９８６７１５１６５５，１４５２２６５０４１０４１２３５３８１０１９５１１４６０２１２０２７３８８８６３５１９１４２８９８８６６２１１２８７４８６，１０８９５２８１９１５７２３６３７６８３５２１６５５５５５４８６０３３３８２３６４７９９９１１１２５９７０１８０９７１０２，１０５２５４０８３４１０６７０５７５７６１３７１７８４６１１３６９８０１８７１５８９３９００２１９９１００３７７１７７９４，｝
【００８７】
ξ（Ｃ３，Ａ）≡
｛１１７２４３８００７３７２７２３８０５６８８２２４９４４５７９３６７０７０７０７０７１１９９２８９８１３４４７０５５１９，８２３８９６５３３１６６８１１５５２４６８３２０７６９９４４１４７６７５０４９８５５７７０３５８５５３８１３２０９５８０，５２８１３２３８３１６１９０２９９１１９９９６９７５７２４４０６６４００９９２１７５６８６５１６４６２１２８３６０７４８，１５２２１８０６８１１７８６０９２２１５５５２９３５５８８４２９７８５８６１８６５９７５１８９０６５３７１１１７３６０５３，｝
【００８８】
ξ（Ｃ４，Ａ）≡
｛１３３３９６３９１３７５８００９５７６２３３７０３３６２６９６１４４０３５７１７４８７０７８６７５４０３４１５９４１６４８，１０９１８００１３５３５６４４８１２８９１８０１１０８９０４５９５１５０２３０３３５８８６２５１８８１７０５４１９２３６１，５７７１６２２７６２１６０６４９３９４０９５５６６５１３４４６９２７６０１３２６０２４６１３７４７００６８２６４４１３７，４６１８６５４３４７９２７３４００６９０２１５３３３５９８４４６２３３８９３３６９７４９７６１０４９６７９７９９１４０２，｝
【００８９】
第２のコードブックの暗号化されたものは以下の通りである。
ξ（Ｃ’１，Ａ）≡
｛１３４７０１７０６６４２５３５８８７６１９３８０１９９３３１２７６２７７７７４０３３２９３７０４１１５８４８２２５７６，９３１０７４０７３９７５２５６１５６９２６４３７８５２３０７１８４４３１１３１４６９５０５９７６９６９８６７１５１６５５，１１７２４３８００７３７２７２３８０５６８８２２４９４４５７９３６７０７０７０７０７１１９９２８９８１３４４７０５５１９，１３３３９６３９１３７５８００９５７６２３３７０３３６２６９６１４４０３５７１７４８７０７８６７５４０３４１５９４１６４８，｝
【００９０】
ξ（Ｃ’２，Ａ）≡
｛７９９２４７６６４２２４７１１３２６０１８０８９２７４０６１８０３１４２０３４５５７２８５０１７７３４５５９０５０９９０，１４５２２６５０４１０４１２３５３８１０１９５１１４６０２１２０２７３８８８６３５１９１４２８９８８６６２１１２８７４８６，８２３８９６５３３１６６８１１５５２４６８３２０７６９９４４１４７６７５０４９８５５７７０３５８５５３８１３２０９５８０，１０９１８００１３５３５６４４８１２８９１８０１１０８９０４５９５１５０２３０３３５８８６２５１８８１７０５４１９２３６１，｝
【００９１】
ξ（Ｃ’３，Ａ）≡
｛１５１１７１５２１３０５７３５５０１９５５６４５４２０７１８１５３１４８３０４９１３３０３３４１７０４５９６２６４１２１８，１０８９５２８１９１５７２３６３７６８３５２１６５５５５５４８６０３３３８２３６４７９９９１１１２５９７０１８０９７１０２，５２８１３２３８３１６１９０２９９１１９９９６９７５７２４４０６６４００９９２１７５６８６５１６４６２１２８３６０７４８，５７７１６２２７６２１６０６４９３９４０９５５６６５１３４４６９２７６０１３２６０２４６１３７４７００６８２６４４１３７，｝
【００９２】
ξ（Ｃ’４，Ａ）≡
｛２１９０９４３６９３２３４５９３４６６１５７５７０６７９５９４２８１８５２９５７７６４３１５８３３７７８０３２７７９３２，１０５２５４０８３４１０６７０５７５７６１３７１７８４６１１３６９８０１８７１５８９３９００２１９９１００３７７１７７９４，１５２２１８０６８１１７８６０９２２１５５５２９３５５８８４２９７８５８６１８６５９７５１８９０６５３７１１１７３６０５３，４６１８６５４３４７９２７３４００６９０２１５３３３５９８４４６２３３８９３３６９７４９７６１０４９６７９７９９１４０２，｝
【００９３】
上記コードブックは、チャーリーに利用可能にされる。これは、「セットアップ」フェーズ中に行われる。
【００９４】
Ｄ＝３の場合、許容可能な誤差の集合は、単純に｛０，１、−１，２、−２，３、−３｝であり、７つの要素を含む。アリスは、ランダムパラメータＡ及びＢを知っているので、パラメータＡＢを使用してこれら７つの誤差を暗号化し、以下を取得する。
【００９５】
ε≡
｛１６２０５２２６０２８８０２９７２１０３１６２８４１２１８１６３５１３３２７８９５５８４２１２２７９８２０６６１４４３１，３２４１０４５２０５７６０５９４４２０６３２５６８２４３６３２７０２６６５５７９１１６８４２４５５９６４１３２２８８６２，８８４４９５１５２２８７６０８３５０９９５４３６２３４５８２０１７３９０８５７９３７４４０８０３２４９８５９５９９３２０，６４８２０９０４１１５２１１８８８４１２６５１３６４８７２６５４０５３３１１５８２３３６８４９１１９２８２６４５７７２４，４４２２４７５７６１４３８０４１７５４９７７１８１１７２９１００８６９５４２８９６８７２０４０１６２４９２９７９９６６０，１２９６４１８０８２３０４２３７７６８２５３０２７２９７４５３０８１０６６２３１６４６７３６９８２３８５６５２９１５４４８，２２１１２３７８８０７１９０２０８７７４８８５９０５８６４５５０４３４７７１４４８４３６０２００８１２４６４８９９８３０｝
【００９６】
この暗号化誤差パターンの集合も、セットアップフェーズ中にチャーリーに利用可能にされる。
【００９７】
次に、本方法の実際のステップを進むことにする。
【００９８】
アリスの選んだ入力がｘ＝８１であると仮定する。この場合、
ξ（ｘ，Ａ）＝７９９２４７６６４２２４７１１３２６０１８０８９２７４０６１８０３１４２０３４５５７２８５０１７７３４５５９０５０９９０∈ξ（Ｃ１，Ａ）
である。本方法によれば、アリスは、ビンインデックス１をチャーリーへ送信する。アリスには知られていないが、ボブの入力がｙ＝７９であると仮定する。ボブは、公開鍵及び数Ｂをパラメータとして使用して、
ξ（−ｙ，Ｂ）＝１０２８１０６８２４６０３１１０２２８２６９３３３８２６２８１０５０６３４４６１２１７７８１１５８１１３８０９２６６８１２
を取得し、これをエラーなしでチャーリーへ送信する。
チャーリーはξ（Ｃ１，Ａ）のエントリー及び集合εを見てこれを見つけ、
６４８２０９０４１１５２１１８８８４１２６５１３６４８７２６５４０５３３１１５８２３３６８４９１１９２８２６４５７７２４∈ε、及び
７９９２４７６６４２２４７１１３２６０１８０８９２７４０６１８０３１４２０３４５５７２８５０１７７３４５５９０５０９９０∈ξ（Ｃ，Ａ）について、
Ｎ２＝６４８２０９０４１１５２１１８８８４１２６５１３６４８７２６５４０５３３１１５８２３３６８４９１１９２８２６４５７７２４
を法とする、積
７９９２４７６６４２２４７１１３２６０１８０８９２７４０６１８０３１４２０３４５５７２８５０１７７３４５５９０５０９９０×１０２８１０６８２４６０３１１０２２８２６９３３３８２６２８１０５０６３４４６１２１７７８１１５８１１３８０９２６６８１２
が得られる。
【００９９】
したがって、
Λ＝｛７９９２４７６６４２２４７１１３２６０１８０８９２７４０６１８０３１４２０３４５５７２８５０１７７３４５５９０５０９９０｝
である。
【０１００】
チャーリーは、フィードバックチャネルを使用して、ξ（ｘ，Ａ）の別の圧縮したものをアリスに要求する。ξ（ｘ，Ａ）∈ξ（Ｃ’２，Ａ）であるので、アリスは、ビンインデックス２をチャーリーへ送信する。
【０１０１】
上記のように進むと、チャーリーは、再び、準同型関係を満たす
６４８２０９０４１１５２１１８８８４１２６５１３６４８７２６５４０５３３１１５８２３３６８４９１１９２８２６４５７７２４∈ε、及び
７９９２４７６６４２２４７１１３２６０１８０８９２７４０６１８０３１４２０３４５５７２８５０１７７３４５５９０５０９９０∈ξ（Ｃ’２，Ａ）
を見つける。次に、プロトコルに従って、
Λ’＝｛７９９２４７６６４２２４７１１３２６０１８０８９２７４０６１８０３１４２０３４５５７２８５０１７７３４５５９０５０９９０｝
となる。チャーリーは、
Λ∩Λ’＝｛７９９２４７６６４２２４７１１３２６０１８０８９２７４０６１８０３１４２０３４５５７２８５０１７７３４５５９０５０９９０｝
を有する。したがって、チャーリーは、ｙがｘと合致していると判定する。チャーリーは、この結果をアリスへセキュアに通信することができる。
【０１０２】
｜ｘ−ｙ｜＝｜８１−７９｜＝２＜３＝Ｄであることを検証する。したがって、本方法は、ｙがｘと合致していることを判断する際に正しく機能したことになる。
【０１０３】
ステップ２において、ボブがｙ＝１０７及び
ξ（−ｙ，Ｂ）＝９２６６１３１１２２３１１５７２０２８３３２５３２４１３６９５３０６４４８８４２０９３４２６８１２１２９５３７３９６９１
を有する第２の例を考える。ステップ３において、チャーリーは、
Ｎ２＝１２９６４１８０８２３０４２３７７６８２５３０２７２９７４５３０８１０６６２３１６４６７３６９８２３８５６５２９１５４４８
を法とする積が、
９２６６１３１１２２３１１５７２０２８３３２５３２４１３６９５３０６４４８８４２０９３４２６８１２１２９５３７３９６９１
×
１５１１７１５２１３０５７３５５０１９５５６４５４２０７１８１５３１４８３０４９１３３０３３４１７０４５９６２６４１２１８
であるような、
１２９６４１８０８２３０４２３７７６８２５３０２７２９７４５３０８１０６６２３１６４６７３６９８２３８５６５２９１５４４８∈ε、及び
１５１１７１５２１３０５７３５５０１９５５６４５４２０７１８１５３１４８３０４９１３３０３３４１７０４５９６２６４１２１８∈ξ（Ｃ１，Ａ）
を見つけることができる。これは、
Λ＝｛１５１１７１５２１３０５７３５５０１９５５６４５４２０７１８１５３１４８３０４９１３３０３３４１７０４５９６２６４１２１８｝
であることを意味する。
【０１０４】
一方、チャーリーは、準同型関係が成立するようなどの要素もε及びξ（Ｃ’２，Ａ）において見つけることができない。すなわち、Λ’＝φである。したがって、チャーリーは、ｙがｘと合致していないと宣言する。
【０１０５】
この第２の例の場合、
｜ｘ−ｙ｜＝｜８１−１０７｜＝２６＞３＝Ｄ
であることが検証される。したがって、本方法は、ｙがｘと合致していないと判断する際に正しく機能したことになる。
【０１０６】
入力信号ｘ及びｙのセキュリティ
上述したように、信号ｘとｙとが非類似である場合、チャーリーは、ξ（−ｙ，Ｂ）を知るだけである。それら信号が類似している場合、チャーリーは、ξ（ｘ，Ａ）及びξ（−ｙ，Ｂ）の双方に加えてξ（ｅ，ＡＢ）も知る。しかしながら、ξ（・，・）を解読するのに使用される私有鍵は、アリスにのみ利用可能であるため、チャーリーは、信号ｘもｙも発見することができない。この場合、プロトコルのセキュリティは、基礎となる準同型暗号化関数ξ（・，・）のセキュリティ及びチャーリーの計算資源が限られているということに直接依存する。
【０１０７】
発明の効果
本発明の実施形態は、例えば医療データのセキュアな分類に用途を有する。従来のメディア信号が整数又はバイナリの特徴ベクトル等の圧縮された特徴信号に変換される多数の用途がある。特徴信号を生成する動機は、ストレージの削減、オリジナルメディアのプライバシー保護の有効化、有益な統計的特性の抽出、検索アルゴリズムの高速化等のための場合がある。例えば、整数特徴ベクトルは、オリジナルのフィンガープリント（fingerprint：指紋）のプライバシーを保護するために顔画像から抽出できると同時に、雑音が存在する中で顔に基づく認識及び認証を容易にすることができる。
【０１０８】
次元削減特徴変換（dimensionality-reducing feature transformation）が利用可能である場合、本発明は、不完全な一致を特徴空間で検索するのに使用することができる。例えば、暗号化された形態の画像を含むデータベースを検索する問題が解決される。各画像は、特徴から成る小さな集合に関連付けられる。画像は、従来の暗号化を使用して暗号化される一方、はるかに小さな特徴集合は、準同型関数を使用して暗号化される。クエリー画像から特徴が抽出され、準同型暗号化が、その特徴にのみ適用される。次に、セキュアな検索アルゴリズムは、暗号化されたクエリー特徴と類似する暗号化された画像特徴の発見を試みる。クエリーが成功した場合、他の動作を実行することができる。例えば、アリスは、関連付けられた解読鍵と共に、暗号化データベースから一致画像のフルバージョンを要求することができる。したがって、アリスは、自身の画像に類似した画像を取得することができるが、データベースの他の画像について何も知ることはない。
【０１０９】
本実施形態は、オーディオ信号が暗号化されているときに、これらの信号において話し言葉を検索するのに使用することもできる。本方法によって、チャーリーによる処理の複雑度が増加する可能性があるという犠牲は生じるが、初期化中の単一の公開鍵交換を除いて、鍵交換はなくなる。
【０１１０】
好ましい実施形態の例として本発明を説明してきたが、本発明の精神及び範囲内において他のさまざまな適合及び変更を行えることが理解されるべきである。したがって、本発明の真の精神及び範囲内に入るようなこのようなすべての変形及び変更をカバーすることが添付の特許請求の範囲の目的である。
【図１】
2010237653.tif 000012
【図２】
2010237653.tif 000013
【図３】
2010237653.tif 000014
【図４】
2010237653.tif 000015
【図５】
2010237653.tif 000016
【図６】
2010237653.tif 000017
【図７】
2010237653.tif 000018
【図８】
2010237653.tif 000019
【外国語明細書】
2010237653.tif 000020
2010237653.tif 000021
2010237653.tif 000022
2010237653.tif 000023
2010237653.tif 000024
2010237653.tif 000025
2010237653.tif 000026
2010237653.tif 000027
2010237653.tif 000028
2010237653.tif 000029
2010237653.tif 000030
2010237653.tif 000031
2010237653.tif 000032
2010237653.tif 000033
2010237653.tif 000034
2010237653.tif 000035
2010237653.tif 000036
2010237653.tif 000037
2010237653.tif 000038
2010237653.tif 000039
2010237653.tif 000040
2010237653.tif 000041
2010237653.tif 000042
2010237653.tif 000043
2010237653.tif 000044
2010237653.tif 000045
2010237653.tif 000046
2010237653.tif 000047
2010237653.tif 000048
2010237653.tif 000049
2010237653.tif 000050
2010237653.tif 000051
2010237653.tif 000052
2010237653.tif 000053
2010237653.tif 000054
2010237653.tif 000055
2010237653.tif 000056
2010237653.tif 000057
2010237653.tif 000058
2010237653.tif 000059
2010237653.tif 000060