(57)【要約】  登録先決定装置（５０）は、登録データを構成するデータ種別を対象種別として、複数のデータ管理装置（２０Ａ，２０Ｂ）それぞれで管理される登録データの対象種別に設定された値の出現頻度分布が、複数のデータ管理装置（２０Ａ，２０Ｂ）全体で管理される登録データの対象種別に設定された値の出現頻度分布と異なるように、複数のデータ管理装置（２０Ａ，２０Ｂ）のうちどのデータ管理装置に登録データを管理させるかを決定する。
2017203698.tif 000002
【特許請求の範囲】
【請求項１】
登録データを構成するデータ種別を対象種別として、複数のデータ管理装置それぞれで管理される前記登録データの前記対象種別に設定された値の出現頻度分布が、前記複数のデータ管理装置で管理される前記登録データの前記対象種別に設定された値の出現頻度分布と異なるように、前記複数のデータ管理装置のうちどのデータ管理装置に前記登録データを管理させるかを決定する登録先決定部
を備える登録先決定装置。
【請求項２】
前記登録先決定部は、前記対象種別に設定された値毎に、異なる確率で各データ管理装置を選択することにより、どのデータ管理装置に前記登録データを管理させるかを決定する
請求項１に記載の登録先決定装置。
【請求項３】
前記登録先決定装置は、さらに、
前記対象種別に設定された値毎に、前記複数のデータ管理装置それぞれを選択する選択確率を記憶した決定情報記憶部
を備え、
前記登録先決定部は、前記決定情報記憶部に記憶された選択確率に従い、データ管理装置を選択する
請求項２に記載の登録先決定装置。
【請求項４】
前記登録先決定部は、前記登録データと秘密情報とから前記複数のデータ管理装置それぞれを選択する選択確率を計算し、計算された選択確率に従い、データ管理装置を選択する
請求項２に記載の登録先決定装置。
【請求項５】
前記登録データは、秘匿検索用のキーワードである
請求項１から４までのいずれか１項に記載の登録先決定装置。
【請求項６】
請求項５に記載の登録先決定装置と、
前記登録先決定装置により前記登録データを管理させると決定されたデータ管理装置に、前記登録データを送信する送信部と
を備える登録装置。
【請求項７】
請求項６に記載の登録装置と、
前記複数のデータ管理装置と、
前記複数のデータ管理装置に検索要求を送信して、送信された検索要求に対応するキーワードを特定させる検索装置と
を備える秘匿検索システム。
【請求項８】
コンピュータが、登録データを構成するデータ種別を対象種別として、複数のデータ管理装置それぞれで管理される前記登録データの前記対象種別に設定された値の出現頻度分布が、前記複数のデータ管理装置で管理される前記登録データの前記対象種別に設定された値の出現頻度分布と異なるように、前記複数のデータ管理装置のうちどのデータ管理装置に前記登録データを管理させるかを決定する登録先決定方法。
【請求項９】
登録データを構成するデータ種別を対象種別として、複数のデータ管理装置それぞれで管理される前記登録データの前記対象種別に設定された値の出現頻度分布が、前記複数のデータ管理装置で管理される前記登録データの前記対象種別に設定された値の出現頻度分布と異なるように、前記複数のデータ管理装置のうちどのデータ管理装置に前記登録データを管理させるかを決定する登録先決定処理
をコンピュータに実行させる登録先決定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、頻度分析攻撃を防止するデータの登録技術に関する。
【背景技術】
【０００２】
データ管理装置で管理されたデータを、検索装置がキーワードを指定して検索でき、かつその際にデータ及びキーワードをデータ管理装置に対して秘匿する秘匿検索システムがある。
秘匿検索システムは、機密データ管理のアウトソーシングと、メールデータ管理装置における暗号化メールのフィルタリングとに対する応用が期待されている。秘匿検索システムでは、種々の安全性要件を達成するための技術と、データ管理装置及び検索装置のストレージ使用量と通信オーバーヘッドと演算オーバーヘッドとを削減するための様々な技術が研究されている。【０００３】
秘匿検索は、確定的暗号をベースとした方式と、確率的暗号をベースとした方式とに大別できる。
確定的暗号をベースとした秘匿検索では、同じキーワードが同じ暗号化キーワードになる。そのため、データ管理装置は、指定された暗号化キーワードに基づくバイナリ一致判定を行うだけで検索を行うことができる。したがって、確定的暗号をベースとした秘匿検索は、既存の検索技術を用いた高速化が可能というメリットがある。
しかし、確定的暗号をベースとした秘匿検索では、キーワードの頻度情報がそのまま暗号化キーワードの頻度情報として現れる。そのため、確定的暗号をベースとした秘匿検索は、データ管理装置が暗号化キーワードの頻度を調べることによって対応するキーワードを推測する「頻度分析」と呼ばれる攻撃が可能となるデメリットがある。
特許文献１には、頻度分析攻撃への対策を行った、確定的暗号をベースとした秘匿検索方式が記載されている。【０００４】
一方で、確率的暗号をベースとした秘匿検索では、同じキーワードから異なる暗号化キーワードが生成される。そのため、確率的暗号をベースとした秘匿検索では、データ管理装置が暗号化キーワードの頻度を調べても、キーワードを推測することができず、安全性が高いというメリットがある。
しかし、確率的暗号をベースとした秘匿検索では、暗号化キーワードと検索要求（トラップドア）との照合に、バイナリ一致判定ではない特別な演算が必要となる。また、確率的暗号をベースとした秘匿検索では、既存の検索技術を用いた高速化ができない。そのため、確率的暗号をベースとした秘匿検索は、検索に要する時間が確定的暗号ベースの方式よりも長くなるというデメリットがある。
非特許文献１には、確率的暗号をベースとした秘匿検索方式が記載されている。【０００５】
特許文献１に記載された方式及び非特許文献１に記載された方式では、データ管理装置が暗号化キーワードを閲覧するだけではキーワードの頻度が分からないが、実際に秘匿検索システムが稼働して検索が行われると、検索にヒットしたキーワードの頻度が判明する。そのため、システムを長期稼働すると頻度情報の多くがデータ管理装置に漏えいし、最終的にはデータ管理装置による頻度分析攻撃が可能になってしまうという課題があった。
特許文献２，３には、検索者に指定された検索条件よりも広い条件を検索要求としてデータ管理装置に送信することでヒット率を変化させるとともに、ヒット率が均一になるような工夫を行う方式が記載されている。これにより、データ管理装置によるキーワードの推測を困難にしている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】国際公開第２０１２／１１５０３１号
【特許文献２】特開２０１４−９８９８９号公報
【特許文献３】特開２０１４−９８９９０号公報
【非特許文献】
【０００７】
【非特許文献１】Ｄ．  Ｂｏｎｅｈ，  Ｇ．Ｄ．  Ｃｒｅｓｃｅｎｚｏ，  Ｒ．  Ｏｓｔｒｏｖｓｋｙ，  ａｎｄ  Ｇ．  Ｐｅｒｓｉａｎｏ，  “Ｐｕｂｌｉｃ  ｋｅｙ  ｅｎｃｒｙｐｔｉｏｎ  ｗｉｔｈ  ｋｅｙｗｏｒｄ  ｓｅａｒｃｈ”，  ＥＵＲＯＣＲＹＰＴ  ２００４，  ＬＮＣＳ  ３０２７，  ｐｐ．５０６−５２２，  Ｉｎｔｅｒｌａｋｅｎ，  Ｓｗｉｔｚｅｒｌａｎｄ，  Ｍａｙ  ２００４．
【発明の概要】
【発明が解決しようとする課題】
【０００８】
特許文献２，３に記載された方式は、検索者に指定された検索条件よりも広い条件を検索要求としてデータ管理装置に送信するため、検索結果として、検索者が必要としないデータまで送信され、通信のオーバーヘッドが発生していた。また、ヒット率を均一にする必要があるため、各キーワードの出現頻度分布が事前に判明していなければならないという制限もあった。
この発明は、簡便な構成により、データ管理装置による登録データの推測を困難にすることを目的とする。
【課題を解決するための手段】
【０００９】
この発明に係る登録先決定装置は、
登録データを構成するデータ種別を対象種別として、複数のデータ管理装置それぞれで管理される前記登録データの前記対象種別に設定された値の出現頻度分布が、前記複数のデータ管理装置で管理される前記登録データの前記対象種別に設定された値の出現頻度分布と異なるように、前記複数のデータ管理装置のうちどのデータ管理装置に前記登録データを管理させるかを決定する登録先決定部
を備える。
【発明の効果】
【００１０】
この発明では、各データ管理装置における登録データの値の出現頻度分布が撹乱される。そのため、データ管理装置による登録データの推測が困難になる。
【図面の簡単な説明】
【００１１】
【図１】実施の形態１に係る秘匿検索システム１０の構成図。
【図２】実施の形態１に係るデータ管理装置２０の構成図。
【図３】実施の形態１に係る登録装置３０の構成図。
【図４】実施の形態１に係る検索装置４０の構成図。
【図５】実施の形態１に係る登録先決定装置５０の構成図。
【図６】実施の形態１に係るデータ記憶部２２１に記憶されるデータを示す図。
【図７】実施の形態１に係る暗号鍵記憶部３２１に記憶されるデータを示す図。
【図８】実施の形態１に係る登録先記憶部３２２及び登録先記憶部４２２に記憶されるデータを示す図。
【図９】実施の形態１に係る検索鍵記憶部４２１に記憶されるデータを示す図。
【図１０】実施の形態１に係る決定情報記憶部５２１に記憶されるデータを示す図。
【図１１】実施の形態１に係る（１）初期設定処理のフローチャート。
【図１２】実施の形態１に係る（２）データ登録処理のフローチャート。
【図１３】実施の形態１に係る（３）データ検索処理のフローチャート。
【図１４】変形例３に係る決定情報記憶部５２１に記憶されるデータを示す図。
【図１５】変形例８に係るデータ管理装置２０の構成図。
【図１６】変形例８に係る登録装置３０の構成図。
【図１７】変形例８に係る検索装置４０の構成図。
【図１８】変形例８に係る登録先決定装置５０の構成図。
【図１９】実施の形態２に係る決定情報記憶部５２１に記憶されるデータを示す図。
【発明を実施するための形態】
【００１２】
実施の形態１．
＊＊＊構成の説明＊＊＊
図１を参照して、実施の形態１に係る秘匿検索システム１０の構成を説明する。
秘匿検索システム１０は、複数のデータ管理装置２０と、登録装置３０と、検索装置４０とを備える。登録装置３０は、登録先決定装置５０を備える。各データ管理装置２０と登録装置３０と検索装置４０とは、ネットワーク６０を介して接続されている。
秘匿検索システム１０が備えるデータ管理装置２０は、２台以上であればよい。実施の形態１では、図１に示すように、秘匿検索システム１０が、複数のデータ管理装置２０として、データ管理装置２０Ａとデータ管理装置２０Ｂと２台を備える例を説明する。
【００１３】
図２を参照して、実施の形態１に係るデータ管理装置２０の構成を説明する。
データ管理装置２０は、コンピュータである。
データ管理装置２０は、プロセッサ２１と、記憶装置２２と、通信インタフェース２３とのハードウェアを備える。プロセッサ２１は、システムバスを介して他のハードウェアと接続され、これら他のハードウェアを制御する。
【００１４】
データ管理装置２０は、機能構成要素として、登録部２１１と、検索部２１２とを備える。登録部２１１と、検索部２１２との各部の機能は、ソフトウェアにより実現される。
記憶装置２２には、データ管理装置２０の各部の機能を実現するプログラムが記憶されている。このプログラムは、プロセッサ２１により読み込まれ実行される。また、記憶装置２２は、データ記憶部２２１の機能を実現する。
【００１５】
図３を参照して、実施の形態１に係る登録装置３０の構成を説明する。
登録装置３０は、コンピュータである。
登録装置３０は、プロセッサ３１と、記憶装置３２と、通信インタフェース３３とのハードウェアを備える。プロセッサ３１は、システムバスを介して他のハードウェアと接続され、これら他のハードウェアを制御する。また、登録装置３０は、登録先決定装置５０を備える。
【００１６】
登録装置３０は、機能構成要素として、登録データ生成部３１１と、送信部３１２とを備える。登録データ生成部３１１と、送信部３１２との各部の機能は、ソフトウェアにより実現される。
記憶装置３２には、登録装置３０の各部の機能を実現するプログラムが記憶されている。このプログラムは、プロセッサ３１により読み込まれ実行される。また、記憶装置３２は、暗号鍵記憶部３２１と、登録先記憶部３２２との機能を実現する。
【００１７】
図４を参照して、実施の形態１に係る検索装置４０の構成を説明する。
検索装置４０は、コンピュータである。
検索装置４０は、プロセッサ４１と、記憶装置４２と、通信インタフェース４３とのハードウェアを備える。プロセッサ４１は、システムバスを介して他のハードウェアと接続され、これら他のハードウェアを制御する。
【００１８】
検索装置４０は、機能構成要素として、検索要求生成部４１１と、送信部４１２と、復号部４１３とを備える。検索要求生成部４１１と、送信部４１２と、復号部４１３との各部の機能は、ソフトウェアにより実現される。
記憶装置４２には、検索装置４０の各部の機能を実現するプログラムが記憶されている。このプログラムは、プロセッサ４１により読み込まれ実行される。また、記憶装置４２は、検索鍵記憶部４２１と、登録先記憶部４２２との機能を実現する。
【００１９】
図５を参照して、実施の形態１に係る登録先決定装置５０の構成を説明する。
登録先決定装置５０は、コンピュータである。
登録先決定装置５０は、プロセッサ５１と、記憶装置５２と、通信インタフェース５３とのハードウェアを備える。プロセッサ５１は、システムバスを介して他のハードウェアと接続され、これら他のハードウェアを制御する。
【００２０】
登録先決定装置５０は、機能構成要素として、登録先決定部５１１を備える。登録先決定部５１１の機能は、ソフトウェアにより実現される。
記憶装置５２には、登録先決定部５１１の機能を実現するプログラムが記憶されている。このプログラムは、プロセッサ５１により読み込まれ実行される。また、記憶装置５２は、決定情報記憶部５２１の機能を実現する。
【００２１】
なお、ここでは、登録装置３０と登録先決定装置５０とは別のコンピュータとしたが、登録装置３０と登録先決定装置５０とは１つのコンピュータとして一体化されて実現されてもよい。
【００２２】
プロセッサ２１，３１，４１，５１は、プロセッシングを行うＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）である。プロセッサ２１，３１，４１，５１は、具体例としては、ＣＰＵ、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）、ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）である。
【００２３】
記憶装置２２，３２，４２，５２は、電源がオフの間も実行プログラム及びデータを保持し続けることが可能な不揮発性メモリと、電源がオンの間にデータを高速に移動可能な揮発性メモリとで構成される。
不揮発性メモリは、具体例としては、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、フラッシュメモリである。不揮発性メモリは、ＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）メモリカード、ＣＦ（ＣｏｍｐａｃｔＦｌａｓｈ）、ＮＡＮＤフラッシュ、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ（登録商標）ディスク、ＤＶＤといった可搬記憶媒体であってもよい。
揮発性メモリは、具体例としては、ＤＤＲ２−ＳＤＲＡＭ（Ｄｏｕｂｌｅ−Ｄａｔａ−Ｒａｔｅ２  Ｓｙｎｃｈｒｏｎｏｕｓ  Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＤＤＲ３−ＳＤＲＡＭ（Ｄｏｕｂｌｅ−Ｄａｔａ−Ｒａｔｅ３  Ｓｙｎｃｈｒｏｎｏｕｓ  Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。
【００２４】
通信インタフェース２３，３３，４３，５３は、ネットワーク６０を介して他の装置と通信するための装置である。通信インタフェース２３，３３，４３，５３は、具体例としては、Ｅｔｈｅｒｎｅｔ（登録商標）、ＲＳ２３２Ｃ、ＵＳＢ、ＩＥＥＥ１３９４の端子である。
【００２５】
図２では、プロセッサ２１は、１つだけ示されている。しかし、データ管理装置２０は、プロセッサ２１を代替する複数のプロセッサを備えていてもよい。これら複数のプロセッサは、データ管理装置２０の各部の機能を実現するプログラムの実行を分担する。それぞれのプロセッサは、プロセッサ２１と同じように、プロセッシングを行うＩＣである。同様に、図３から図５では、プロセッサ３１，４１，５１は、１つだけ示されている。しかし、登録装置３０と検索装置４０と登録先決定装置５０とは、それぞれプロセッサ３１，４１，５１を代替する複数のプロセッサを備えていてもよい。
【００２６】
＊＊＊動作の説明＊＊＊
図６から図１３を参照して、実施の形態１に係る秘匿検索システム１０の動作を説明する。
実施の形態１に係る秘匿検索システム１０の動作は、実施の形態１に係る秘匿検索方法に相当する。また、実施の形態１に係る秘匿検索システム１０の動作は、実施の形態１に係る秘匿検索プログラムの処理に相当する。
【００２７】
秘匿検索システム１０の動作の前提として、各記憶部に記憶されるデータについて説明する。
【００２８】
図６を参照して、実施の形態１に係るデータ記憶部２２１に記憶されるデータについて説明する。
データ記憶部２２１には、登録装置３０によってデータが暗号化された暗号化データと、登録装置３０によって秘匿検索用に生成された暗号化キーワードとが、関連付けて記憶される。
図６では、関数Ｆはキーワードから秘匿検索用の暗号化キーワードを生成する関数であり、関数Ｅはデータを暗号化する関数である。例えば１行目のレコードでは、暗号化された「高橋太郎、男、３１、・・・」というデータを検索するためのキーワードとして、「高橋」「男」「３１」が秘匿検索用に暗号化されて記憶されている。なお、図６では説明を容易にするため「名字」「性別」「年齢」というデータ種別が明記されているが、これらはデータ管理装置２０に分からないように暗号化されていてもよい。
【００２９】
図７を参照して、実施の形態１に係る暗号鍵記憶部３２１に記憶されるデータについて説明する。
暗号鍵記憶部３２１は、暗号化データ生成用の暗号鍵と、暗号化キーワード生成用の暗号鍵とを記憶する。暗号化データ生成用の暗号鍵は、具体例としては、ＡＥＳ（Ａｄｖａｎｃｅｄ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ）の鍵、又は、ＲＳＡの公開鍵である。暗号化キーワード生成用の暗号鍵は、具体例としては、非特許文献１等に記載された既存の秘匿検索技術の暗号鍵である。
暗号鍵記憶部３２１は、図７に示すように、全てのデータ管理装置２０に共通の暗号化データ生成用の暗号鍵と、暗号化キーワード生成用の暗号鍵とを記憶してもよいし、データ管理装置２０毎に、異なる暗号化データ生成用の暗号鍵と、異なる暗号化キーワード生成用の暗号鍵とを記憶してもよい。
【００３０】
図８を参照して、実施の形態１に係る登録先記憶部３２２及び登録先記憶部４２２に記憶されるデータについて説明する。
登録先記憶部３２２及び登録先記憶部４２２は、各データ管理装置２０を特定するための情報を記憶する。図８では、登録先記憶部３２２及び登録先記憶部４２２は、各データ管理装置２０のＩＰアドレスを記憶している。
【００３１】
図９を参照して、実施の形態１に係る検索鍵記憶部４２１に記憶されるデータについて説明する。
検索鍵記憶部４２１は、データ復号用の暗号鍵と、検索要求であるトラップドア生成用の暗号鍵とを記憶する。データ復号用の暗号鍵は、具体例としては、ＡＥＳの鍵、又は、ＲＳＡの秘密鍵である。トラップドア生成用の暗号鍵は、具体例としては、非特許文献１等に記載された既存の秘匿検索技術のトラップドア生成用の暗号鍵である。
データ復号用の暗号鍵と、暗号鍵記憶部３２１に記憶された暗号化データ生成用の暗号鍵とは対応する鍵である。また、トラップドア生成用の暗号鍵と、暗号鍵記憶部３２１に記憶された暗号化キーワード生成用の暗号鍵とは対応する鍵である。したがって、暗号鍵記憶部３２１に、データ管理装置２０毎に、異なる暗号化データ生成用の暗号鍵と、異なる暗号化キーワード生成用の暗号鍵とが記憶される場合には、検索鍵記憶部４２１も、データ管理装置２０毎に、異なるデータ復号用の暗号鍵と、異なるトラップドア生成用の暗号鍵とが記憶される。
【００３２】
図１０を参照して、実施の形態１に係る決定情報記憶部５２１に記憶されるデータについて説明する。
決定情報記憶部５２１は、頻度分析攻撃を防ぐために出現頻度分布を撹乱したいデータ種別に設定される値毎、つまりキーワード毎に、複数データ管理装置２０それぞれを選択する選択確率を記憶する。図１０では、名字の出現頻度分布を撹乱する場合において、検索用のキーワードが「佐藤」であるデータを確率０．４でデータ管理装置ＩＤが“Ａ”であるデータ管理装置２０Ａに登録し、確率０．６でデータ管理装置ＩＤが“Ｂ”であるデータ管理装置２０Ｂに登録することを表している。また、一番下のレコードは、図１０に存在しない名字については、確率０．５ずつで各データ管理装置２０に登録することを表している。一番下のレコードは、名字を全て列挙することは現実的でないために設けられている。性別及び血液型のように、設定される値の種類が少ないようなデータ種別については、全ての値について選択確率を記憶してもよい。
【００３３】
以上の各記憶部に記憶されるデータを前提として、実施の形態１に係る秘匿検索システム１０の動作を説明する。実施の形態１に係る秘匿検索システム１０の動作は、（１）初期設定処理、（２）データ登録処理、（３）データ検索処理の３つの処理に大別される。
なお、以下では、各データ管理装置２０における名字の出現頻度分布を撹乱する例について説明する。つまり、各データ管理装置２０による名字の推測を困難にする例について説明する。
【００３４】
図１１を参照して、実施の形態１に係る（１）初期設定処理について説明する。
初期設定処理では、秘匿検索システム１０全体の初期設定が行われる。
【００３５】
（ステップＳ１１：検索鍵格納処理）
検索装置４０の復号部４１３は、データ復号用の暗号鍵と暗号化データ生成用の暗号鍵とのペアを生成して、データ復号用の暗号鍵を検索鍵記憶部４２１に書き込む。送信部４１２は、データ復号用の暗号鍵に対応する暗号化データ生成用の暗号鍵を公開する、又は、登録装置３０に送信する。
また、検索装置４０の検索要求生成部４１１は、トラップドア生成用の暗号鍵と暗号化キーワード生成用の暗号鍵とのペアを生成して、トラップドア生成用の暗号鍵を検索鍵記憶部４２１に書き込む。送信部４１２は、トラップドア生成用の暗号鍵に対応する暗号化キーワード生成用の暗号鍵を公開する又は、登録装置３０に送信する。
その結果、図９に示すように検索鍵記憶部４２１に、データ復号用の暗号鍵と、トラップドア生成用の暗号鍵とが記憶される。
なお、復号部４１３は、データ復号用の暗号鍵と暗号化データ生成用の暗号鍵とのペアを、生成するのではなく、外部で生成されたものを取得してもよい。同様に、検索要求生成部４１１は、トラップドア生成用の暗号鍵と暗号化キーワード生成用の暗号鍵とのペアを、生成するのではなく、外部で生成されたものを取得してもよい。
【００３６】
（ステップＳ１２：登録先格納処理）
検索装置４０の送信部４１２は、各データ管理装置２０を特定するための情報を登録先記憶部４２２に書き込む。具体例としては、送信部４１２は、通信インタフェース４３を介して各データ管理装置２０のＩＰアドレスを取得して、登録先記憶部４２２に書き込む。
その結果、図８に示すように、登録先記憶部４２２に各データ管理装置２０を特定するための情報が記憶される。
【００３７】
（ステップＳ１３：暗号鍵格納処理）
登録装置３０の登録データ生成部３１１は、ステップＳ１１で公開された、又は送信された暗号化データ生成用の暗号鍵と、暗号化キーワード生成用の暗号鍵とを取得し、暗号鍵記憶部３２１に書き込む。
その結果、図７に示すように暗号鍵記憶部３２１に、暗号化データ生成用の暗号鍵と、暗号化キーワード生成用の暗号鍵とが記憶される。
【００３８】
（ステップＳ１４：登録先格納処理）
登録装置３０の送信部３１２は、各データ管理装置２０を特定するための情報を登録先記憶部３２２に書き込む。具体例としては、送信部３１２は、通信インタフェース３３を介して各データ管理装置２０のＩＰアドレスを取得して、登録先記憶部３２２に書き込む。ここでは、ステップＳ１２で登録先記憶部４２２に書き込まれた情報と同じ情報が登録先記憶部３２２に書き込まれる。
その結果、図８に示すように、登録先記憶部３２２に各データ管理装置２０を特定するための情報が記憶される。
【００３９】
（ステップＳ１５：決定情報格納処理）
登録先決定装置５０の登録先決定部５１１は、登録データを構成する少なくとも一部のデータ種別を対象種別として、対象種別に設定される値毎に選択確率を設定して、決定情報記憶部５２１に書き込む。例えば、名字の出現頻度分布の撹乱を目的とする場合、登録先決定部５１１は、各名字に対し、当該名字をキーワードとしたデータをデータ管理装置２０に登録する際に、各データ管理装置２０を登録先として選択する選択確率を設定して、決定情報記憶部５２１に書き込む。
具体例としては、登録先決定部５１１は、対象種別に設定される値毎に選択確率の入力をユーザから受け付け、受け付けられた選択確率を決定情報記憶部５２１に書き込む。あるいは、登録先決定部５１１は、対象種別に設定される値毎にランダムに選択確率を設定して、決定情報記憶部５２１に書き込んでもよい。ここでのポイントは、設定される値毎に異なる選択確率を設定することである。
その結果、図１０に示すように、決定情報記憶部５２１に対象種別に設定される値毎に、選択確率が記憶される。
【００４０】
図１２を参照して、実施の形態１に係る（２）データ登録処理について説明する。
データ登録処理は、登録するデータ毎に登録先のデータ管理装置２０が決定され、暗号化キーワードと暗号化データとを決定されたデータ管理装置２０に記憶させる処理である。
ここでは、「高橋太郎、男、３１、・・・」というデータを、名字「高橋」、性別「男」、年齢「３１」というキーワードで秘匿検索できるように登録する例について説明する。
【００４１】
（ステップＳ２１：登録先決定処理）
登録先決定装置５０の登録先決定部５１１は、出現頻度分布を撹乱したいキーワード、つまり値に対し、決定情報記憶部５２１が記憶する選択確率を参照して、登録先を決定する。
ここでは、登録先決定部５１１は、名字の出現頻度分布を撹乱したいため、キーワードである名字「高橋」に対する選択確率を取得する。図１０に示す選択確率が決定情報記憶部５２１に記憶されている場合、データは、データ管理装置２０Ａに確率０．２で振り分けられ、データ管理装置２０Ｂに確率０．８で振り分けられる。登録先決定部５１１は、取得された選択確率に基づき、登録先のデータ管理装置２０を決定する。ここでは、登録先がデータ管理装置２０Ｂに決定されたとする。
【００４２】
（ステップＳ２２：データ暗号化処理）
登録装置３０の登録データ生成部３１１は、暗号鍵記憶部３２１に記憶された暗号化データ生成用の暗号鍵を用いて、データを暗号化して、暗号化データを生成する。なお、暗号鍵記憶部３２１に、データ管理装置２０毎に異なる暗号鍵が記憶されている場合、登録データ生成部３１１は、登録先のデータ管理装置２０に対応する暗号鍵を利用する。
ここでは、登録データ生成部３１１は、データ「高橋太郎、男、３１、・・・」を暗号化して、暗号化データＥ（高橋太郎、男、３１、・・・）を生成する。
【００４３】
（ステップＳ２３：キーワード暗号化処理）
登録装置３０の登録データ生成部３１１は、暗号鍵記憶部３２１に記憶された暗号化キーワード生成用の暗号鍵を用いて、キーワードを暗号化して、暗号化キーワードを生成する。なお、暗号鍵記憶部３２１に、データ管理装置２０毎に異なる暗号鍵が記憶されている場合、登録データ生成部３１１は、登録先のデータ管理装置２０に対応する暗号鍵を利用する。
ここでは、登録データ生成部３１１は、キーワードとして「高橋」と「男」と「３１」とを暗号化して、暗号化キーワードとしてＦ（高橋）とＦ（男）とＦ（３１）とを生成する。なお、暗号化キーワード生成用の暗号鍵は、名字と性別と年齢といったデータ種別毎に異なっていてもよいし、データ種別によらず同一であってもよい。暗号鍵がデータ種別毎に異なる場合には、登録データ生成部３１１は、データ種別毎に対応する暗号鍵を利用する。
【００４４】
（ステップＳ２４：データ送信処理）
登録装置３０の送信部３１２は、ステップＳ２１で決定された登録先のデータ管理装置２０を特定するための情報を登録先記憶部３２２から読み出す。そして、送信部３１２は、読み出された情報に従い、ステップＳ２２で生成された暗号化データと、ステップＳ２３で生成された暗号化キーワードとを、登録先のデータ管理装置２０に送信する。
図８に示す情報が登録先記憶部３２２に記憶されている場合、ここでは、データ管理装置２０ＢのＩＰアドレスである「Ｙ．Ｙ．Ｙ．Ｙ」が読み出される。そして、送信部３１２は、暗号化データと暗号化キーワードとを、ＩＰアドレス「Ｙ．Ｙ．Ｙ．Ｙ」に従いデータ管理装置２０Ｂに送信する。
【００４５】
（ステップＳ２５：データ記憶処理）
登録先のデータ管理装置２０の登録部２１１は、ステップＳ２４で送信された暗号化データと暗号化キーワードとを、データ記憶部２２１に書き込む。
ここでは、図６の１行目に示すデータがデータ記憶部２２１に書き込まれる。
【００４６】
図１３を参照して、実施の形態１に係る（３）データ検索処理について説明する。
データ検索処理は、キーワードが指定され、各データ管理装置２０に記憶されたデータに対して秘匿検索を行う処理である。
【００４７】
（ステップＳ３１：要求生成処理）
検索装置４０の検索要求生成部４１１は、キーワードの入力を受け付ける。そして、検索要求生成部４１１は、検索鍵記憶部４２１に記憶されたトラップドア生成用の暗号鍵を用いて、受け付けられたキーワードを暗号化して、検索要求を生成する。なお、検索鍵記憶部４２１に、データ管理装置２０毎に異なる暗号鍵が記憶されている場合、検索要求生成部４１１は、各暗号鍵を用いて各データ管理装置２０に対応する検索要求を生成する。
ここでは、検索要求生成部４１１は、キーワードとして名字「高橋」を受け付ける。そして、検索要求生成部４１１は、トラップドア生成用の暗号鍵を用いてＴ（高橋）を生成する。Ｔは、トラップドア生成関数である。暗号鍵がデータ種別毎に異なる場合には、検索要求生成部４１１は、データ種別毎に対応する暗号鍵を利用する。
【００４８】
（ステップＳ３２：要求送信処理）
検索装置４０の送信部４１２は、ステップＳ３１で生成された検索要求を各データ管理装置２０に送信する。なお、検索鍵記憶部４２１に、データ管理装置２０毎に異なる暗号鍵が記憶されている場合、対応する暗号鍵を用いて生成された検索要求をデータ管理装置２０に送信する。
【００４９】
（ステップＳ３３：検索処理）
各データ管理装置２０の検索部２１２は、ステップＳ３２で送信された検索要求に従い、データ記憶部２２１に記憶されたデータに対して検索を行う。具体例としては、検索部２１２は、非特許文献１に記載された既存の秘匿検索処理を実行する。
ここでは、Ｔ（高橋）を用いて検索を行った結果、図６の１行目に示すＥ（高橋太郎、男、３１、・・・）がヒットする。
【００５０】
（ステップＳ３４：結果送信処理）
各データ管理装置２０の検索部２１２は、ステップＳ３３でヒットしたデータを検索装置４０へ送信する。
ここでは、図６の１行目に示すＥ（高橋太郎、男、３１、・・・）が送信される。
【００５１】
（ステップＳ３５：復号処理）
検索装置４０の復号部４１３は、検索鍵記憶部４２１に記憶されたデータ復号用の暗号鍵を用いて、ステップＳ３４で送信されたデータを復号する。なお、検索鍵記憶部４２１に、データ管理装置２０毎に異なる暗号鍵が記憶されている場合、データの送信元のデータ管理装置２０に対応する暗号鍵を用いて復号する。
ここでは、Ｅ（高橋太郎、男、３１、・・・）が復号されて、高橋太郎、男、３１、・・・というデータが得られる。
【００５２】
＊＊＊実施の形態１の効果＊＊＊
以上のように、実施の形態１に係る秘匿検索システム１０では、各データ管理装置における登録データの値の出現頻度分布が撹乱される。そのため、データ管理装置による登録データの推測が困難になる。
【００５３】
具体的には、（２）データ登録処理において、値毎に異なる確率で各データ管理装置２０が選択される。これにより、値の本来の出現頻度分布と、各データ管理装置２０における値の出現頻度分布とが異なる。
例えば、名字の本来の出現頻度分布が、「佐藤」１．６％、「鈴木」１．４％、「高橋」１．２％である場合、データ管理装置２０Ａには、キーワードが「佐藤」であるデータが全体の０．６４％（＝１．６％×０．４）登録される。同様に、「鈴木」は全体の０．９８％（＝１．４％×０．７）が、「高橋」は全体の０．２４％（＝１．２％×０．２）が登録される。したがって、各データ管理装置２０への登録データの総量が均等であると仮定すると、データ管理装置２０Ａにおける名字の出現頻度分布は、「佐藤」１．２８％、「鈴木」１．９６％、「高橋」０．４８％となり、本来と異なる分布になる。
そのため、秘匿検索システム１０が長期稼働するなどして、データ管理装置２０がこれらの頻度（１．２８％、１．９６％、０．４８％、・・・）を観測できたとしても、キーワードを正しく推測することができず、頻度分析攻撃に対する安全性が保たれる。なお、データ管理装置２０Ｂに関しても、名字の出現頻度分布は「佐藤」１．９２％、「鈴木」０．８４％、「高橋」１．９２％となり、頻度分析攻撃に対する安全性が保たれる。
【００５４】
また、実施の形態１に係る秘匿検索システム１０では、余計なデータが送受信されることがなく、通信のオーバーヘッドがない。
【００５５】
また、実施の形態１に係る秘匿検索システム１０では、キーワードの出現頻度分布が未知であっても安全性を実現できる。つまり、利用者が出現頻度分布を知らず、攻撃者のみ出現頻度分布を知っている状況でも安全性を実現できる。
【００５６】
＊＊＊他の構成＊＊＊
＜変形例１＞
実施の形態１では、暗号化キーワードの生成と、検索要求の生成とには、既存の秘匿検索技術を用いた。しかし、変形例１として、既存の秘匿検索技術に代えて、ＡＥＳといった確定的暗号、又は、ＨＭＡＣ（Ｈａｓｈ−ｂａｓｅｄ  Ｍｅｓｓａｇｅ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｃｏｄｅ）といった鍵付ハッシュ関数を用いてもよい。
【００５７】
ＡＥＳ又はＨＭＡＣを用いて暗号化キーワードを確定的に生成する場合、登録先決定装置５０がキーワードから登録先を決定する代わりに、暗号化キーワードから登録先を決定するようにしてもよい。これにより、登録先決定装置５０が暗号化されていないデータ及びキーワードを扱う必要がなくなる。その結果、登録先決定装置５０を登録装置３０から独立させ、登録先決定装置５０を登録者及び検索者以外の第三者が管理するシステム構成とすることも可能である。
【００５８】
＜変形例２＞
実施の形態１では、決定情報記憶部５２１には値毎に選択確率が記憶された。しかし、変形例２として、各値について、ある１つのデータ管理装置２０に対する選択確率を１とし、他のデータ管理装置２０に対する選択確率を０としてもよい。これにより、特定の値は、必ず特定のデータ管理装置２０に記憶されることになる。検索装置４０にも、この選択確率を記憶させておけば、データ検索処理で、検索装置４０が検索要求を送信する先のデータ管理装置２０を、限定することができる。
【００５９】
＜変形例３＞
実施の形態１では、１つのデータ種別について出現頻度分布を撹乱する場合を説明した。しかし、変形例３として、複数のデータ種別について出現頻度分布を撹乱してもよい。例えば、実施の形態１では、名字についてのみ出現頻度分布を撹乱したが、名字と性別とについて出現頻度分布を撹乱してもよい。
複数のデータ種別について出現頻度分布を撹乱する場合、図１４に示すように、決定情報記憶部５２１に、データ種別毎に選択確率を記憶しておく必要がある。その上で、登録先決定部５１１は、出現頻度分布を撹乱する対象のデータ種別をランダムに選択して、選択されたデータ種別についての選択確率に基づき登録先を決定すればよい。図１４に示す選択確率が決定情報記憶部５２１に記憶されている場合、例えば、登録先決定部５１１は、名字と性別とを確率０．５ずつでランダムに選択する。
【００６０】
＜変形例４＞
実施の形態１では、データ記憶部２２１に暗号化データと暗号化キーワードとが一元的に記憶された。しかし、変形例４として、データＩＤを介在させる等して、暗号化データと暗号化キーワードとを関連付けておき、暗号化データと暗号化キーワードと別々に記憶してもよい。特に、暗号化データと暗号化キーワードとを別の装置に記憶してもよい。
【００６１】
＜変形例５＞
実施の形態１では、登録装置３０と検索装置４０とを別々の装置とした。しかし、変形例５として、情報検索者のみが情報登録可能であるような場合には、登録装置３０と検索装置４０とを１つの装置にまとめてもよい。この場合、暗号化キーワード生成用の暗号鍵及び暗号化データ生成用の暗号鍵を外部に公開する必要がなくなるため、攻撃者に余分な情報を与えることなく秘匿検索システムを運用することができる。
【００６２】
＜変形例６＞
実施の形態１では、登録装置３０の暗号鍵記憶部３２１、及び、検索装置４０の検索鍵記憶部４２１に暗号鍵を記憶した。しかし、変形例６として、暗号鍵を必要時に外部から取得するようにしてもよい。例えば、暗号鍵をＩＣカードから取得してもよいし、パスワードあるいは生体情報から暗号鍵を自動生成してもよい。
【００６３】
＜変形例７＞
実施の形態１では、登録装置３０及び検索装置４０を１台だけ利用した。しかし、変形例７として、複数の登録装置３０及び複数の検索装置４０を利用して、データの登録及び検索をそれぞれが実行できるようにしてもよい。この場合、複数の検索装置４０間でトラップドア生成用の暗号鍵を共有することで、異なる装置からでも同じ検索結果を得ることが可能となる。一方で、同じ検索キーワードでも、装置毎に検索結果を変えたい場合は、トラップドア生成用の暗号鍵を装置毎に変えればよい。
【００６４】
＜変形例８＞
実施の形態１では、データ管理装置２０と登録装置３０と検索装置４０と登録先決定装置５０との各装置の各部の機能がソフトウェアで実現された。変形例８として、各装置の各部の機能はハードウェアで実現されてもよい。この変形例８について、実施の形態１と異なる点を説明する。
【００６５】
図１５から図１８を参照して、変形例８に係る各装置の構成を説明する。
各部の機能がハードウェアで実現される場合、各装置は、プロセッサ２１，３１，４１，５１と記憶装置２２，３２，４２，５２とに代えて、処理回路２４，３４，４４，５４を備える。処理回路２４，３４，４４，５４は、各装置の各部の機能と、記憶装置２２の機能とを実現する専用の電子回路である。
【００６６】
処理回路２４，３４，４４，５４は、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックＩＣ、ＧＡ（Ｇａｔｅ  Ａｒｒａｙ）、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）が想定される。
各装置は、処理回路２４，３４，４４，５４を代替する複数の処理回路を備えていてもよい。これら複数の処理回路により、全体として各部の機能が実現される。それぞれの処理回路は、処理回路２４，３４，４４，５４と同じように、専用の電子回路である。
【００６７】
＜変形例９＞
変形例９として、一部の機能がハードウェアで実現され、他の機能がソフトウェアで実現されてもよい。つまり、各装置の各部のうち、一部の機能がハードウェアで実現され、他の機能がソフトウェアで実現されてもよい。
【００６８】
プロセッサ２１，３１，４１，５１と記憶装置２２，３２，４２，５２と処理回路２４，３４，４４，５４とを、総称して「プロセッシングサーキットリー」という。つまり、各部の機能は、プロセッシングサーキットリーにより実現される。
【００６９】
＜変形例１０＞
実施の形態１では、各装置間の通信の保護には言及していない。しかし、変形例１０として、ＴＬＳ（Ｔｒａｎｓｐｏｒｔ  Ｌａｙｅｒ  Ｓｅｃｕｒｉｔｙ）といった既存の暗号技術を利用して通信を保護してもよい。
【００７０】
実施の形態２．
実施の形態２は、出現頻度分布を撹乱したいデータ種別の値が指定された時点で選択確率を計算する点が実施の形態１と異なる。実施の形態２では、この異なる点を説明する。
【００７１】
＊＊＊動作の説明＊＊＊
図１９と、図１１から図１２とを参照して、実施の形態２に係る秘匿検索システム１０の動作を説明する。
実施の形態２に係る秘匿検索システム１０の動作は、実施の形態２に係る秘匿検索方法に相当する。また、実施の形態２に係る秘匿検索システム１０の動作は、実施の形態２に係る秘匿検索プログラムの処理に相当する。
【００７２】
図１９を参照して、実施の形態２に係る決定情報記憶部５２１に記憶されるデータについて説明する。
決定情報記憶部５２１は、各値から選択確率を確定的に導出するための秘密情報を記憶する。具体例としては、決定情報記憶部５２１は、ＨＭＡＣ鍵を記憶する。値毎に異なる選択確率を確定的に導出できるなら、ＨＭＡＣ鍵以外の秘密情報を記憶してもよい。
【００７３】
図１１を参照して、実施の形態２に係る（１）初期設定処理について説明する。
ステップＳ１１からステップＳ１４までの処理は、実施の形態１と同じである。
【００７４】
（ステップＳ１５：決定情報格納処理）
登録先決定装置５０の登録先決定部５１１は、選択確率を確定的に導出するための秘密情報を決定情報記憶部５２１に書き込む。実施の形態２では、登録先決定部５１１は、ＨＭＡＣ鍵を決定情報記憶部５２１に書き込む。
【００７５】
図１２を参照して、実施の形態２に係る（２）データ登録処理について説明する。
ステップＳ２２からステップＳ２５までの処理は、実施の形態１と同じである。
【００７６】
（ステップＳ２１：登録先決定処理）
登録先決定装置５０の登録先決定部５１１は、出現頻度分布を撹乱したいキーワード、つまり値と、決定情報記憶部５２１に記憶された秘密情報とから、選択確率を計算する。そして、登録先決定部５１１は、計算された選択確率を参照して、登録先を決定する。
実施の形態２では、登録先決定部５１１は、キーワードと、ＨＭＡＣ鍵とからハッシュ値を計算する。そして、登録先決定部５１１は、計算されたハッシュ値を、０以上１以下の値に正規化して得られた値を、データ管理装置２０Ａに対する選択確率とする。また、登録先決定部５１１は、データ管理装置２０Ａに対する選択確率を１から減じた値を、データ管理装置２０Ｂに対する選択確率とする。
【００７７】
＊＊＊実施の形態２の効果＊＊＊
以上のように、実施の形態２に係る秘匿検索システム１０では、データを記憶する場合に選択確率が計算される。そのため、事前に各値に対する選択確率を準備しておく必要がない。
データ登録時にキーワードを自由に設定できる場合と、キーワードの値が限定されている場合であっても、取り得る値が多岐にわたる場合等には、事前に各値に対する選択確率を準備しておくことが難しい。このような場合にも、実施の形態２に係る秘匿検索システム１０では、安全な秘匿検索を実現することが可能である。
【００７８】
また、実施の形態２に係る秘匿検索システム１０では、決定情報記憶部５２１にはＨＭＡＣ鍵といった秘密情報を記憶しておくだけでよい。そのため、決定情報記憶部５２１に記憶されるデータ量を少なくすることができる。
【００７９】
＊＊＊他の構成＊＊＊
＜変形例１１＞
実施の形態２では、ステップＳ２１でハッシュ値から選択確率が直接計算された。しかし、変形例１１として、選択確率を確率的に計算する確率的アルゴリズムの乱数シードとしてハッシュ値が与えられ、ハッシュ値から確定的に選択確率が計算されてもよい。
【符号の説明】
【００８０】
１０  秘匿検索システム、２０  データ管理装置、２１  プロセッサ、２２  記憶装置、２３  通信インタフェース、２４  処理回路、２１１  登録部、２１２  検索部、２２１  データ記憶部、３０  登録装置、３１  プロセッサ、３２  記憶装置、３３  通信インタフェース、３４  処理回路、３１１  登録データ生成部、３１２  送信部、３２１  暗号鍵記憶部、３２２  登録先記憶部、４０  検索装置、４１  プロセッサ、４２  記憶装置、４３  通信インタフェース、４４  処理回路、４１１  検索要求生成部、４１２  送信部、４１３  復号部、４２１  検索鍵記憶部、４２２  登録先記憶部、５０  登録先決定装置、５１  プロセッサ、５２  記憶装置、５３  通信インタフェース、５４  処理回路、５１１  登録先決定部、５２１  決定情報記憶部、６０  ネットワーク。
【図１】
2017203698.tif 000003
【図２】
2017203698.tif 000004
【図３】
2017203698.tif 000005
【図４】
2017203698.tif 000006
【図５】
2017203698.tif 000007
【図６】
2017203698.tif 000008
【図７】
2017203698.tif 000009
【図８】
2017203698.tif 000010
【図９】
2017203698.tif 000011
【図１０】
2017203698.tif 000012
【図１１】
2017203698.tif 000013
【図１２】
2017203698.tif 000014
【図１３】
2017203698.tif 000015
【図１４】
2017203698.tif 000016
【図１５】
2017203698.tif 000017
【図１６】
2017203698.tif 000018
【図１７】
2017203698.tif 000019
【図１８】
2017203698.tif 000020
【図１９】
2017203698.tif 000021
【手続補正書】
【提出日】平成30年6月7日(2018.6.7)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
登録データを構成するデータ種別を対象種別として、複数のデータ管理装置それぞれで管理される前記登録データの前記対象種別に設定された値の出現頻度分布が、前記複数のデータ管理装置で管理される前記登録データの前記対象種別に設定された値の出現頻度分布と異なるように、前記複数のデータ管理装置のうちどのデータ管理装置に前記登録データを管理させるかを決定する登録先決定部と、
前記対象種別に設定された値毎に、前記複数のデータ管理装置それぞれを選択する選択確率を記憶した決定情報記憶部と
を備え、
前記登録先決定部は、前記決定情報記憶部に記憶された選択確率に従い、データ管理装置を選択することにより、どのデータ管理装置に前記登録データを管理させるかを決定する
登録先決定装置。
【請求項２】
登録データを構成するデータ種別を対象種別として、複数のデータ管理装置それぞれで管理される前記登録データの前記対象種別に設定された値の出現頻度分布が、前記複数のデータ管理装置で管理される前記登録データの前記対象種別に設定された値の出現頻度分布と異なるように、前記複数のデータ管理装置のうちどのデータ管理装置に前記登録データを管理させるかを決定する登録先決定部であって、前記登録データと秘密情報とから前記複数のデータ管理装置それぞれを選択する選択確率を計算し、計算された選択確率に従い、データ管理装置を選択することにより、どのデータ管理装置に前記登録データを管理させるかを決定する登録先決定部
を備える登録先決定装置。
【請求項３】
前記登録データは、秘匿検索用のキーワードである
請求項１又は２に記載の登録先決定装置。
【請求項４】
請求項３に記載の登録先決定装置と、
前記登録先決定装置により前記登録データを管理させると決定されたデータ管理装置に、前記登録データを送信する送信部と
を備える登録装置。
【請求項５】
請求項４に記載の登録装置と、
前記複数のデータ管理装置と、
前記複数のデータ管理装置に検索要求を送信して、送信された検索要求に対応するキーワードを特定させる検索装置と
を備える秘匿検索システム。
【請求項６】
コンピュータが、登録データを構成するデータ種別を対象種別として、複数のデータ管理装置それぞれで管理される前記登録データの前記対象種別に設定された値の出現頻度分布が、前記複数のデータ管理装置で管理される前記登録データの前記対象種別に設定された値の出現頻度分布と異なるように、前記複数のデータ管理装置のうちどのデータ管理装置に前記登録データを管理させるかを決定する登録先決定方法であって、前記対象種別に設定された値毎に記憶装置に記憶された、前記複数のデータ管理装置それぞれを選択する選択確率に従い、データ管理装置を選択することにより、どのデータ管理装置に前記登録データを管理させるかを決定する登録先決定方法。
【請求項７】
コンピュータが、登録データを構成するデータ種別を対象種別として、複数のデータ管理装置それぞれで管理される前記登録データの前記対象種別に設定された値の出現頻度分布が、前記複数のデータ管理装置で管理される前記登録データの前記対象種別に設定された値の出現頻度分布と異なるように、前記複数のデータ管理装置のうちどのデータ管理装置に前記登録データを管理させるかを決定する登録先決定方法であって、前記登録データと秘密情報とから前記複数のデータ管理装置それぞれを選択する選択確率を計算し、計算された選択確率に従い、データ管理装置を選択することにより、どのデータ管理装置に前記登録データを管理させるかを決定する登録先決定方法。
【請求項８】
登録データを構成するデータ種別を対象種別として、複数のデータ管理装置それぞれで管理される前記登録データの前記対象種別に設定された値の出現頻度分布が、前記複数のデータ管理装置で管理される前記登録データの前記対象種別に設定された値の出現頻度分布と異なるように、前記複数のデータ管理装置のうちどのデータ管理装置に前記登録データを管理させるかを決定する登録先決定処理であって、前記対象種別に設定された値毎に記憶装置に記憶された、前記複数のデータ管理装置それぞれを選択する選択確率に従い、データ管理装置を選択することにより、どのデータ管理装置に前記登録データを管理させるかを決定する登録先決定処理
をコンピュータに実行させる登録先決定プログラム。
【請求項９】
登録データを構成するデータ種別を対象種別として、複数のデータ管理装置それぞれで管理される前記登録データの前記対象種別に設定された値の出現頻度分布が、前記複数のデータ管理装置で管理される前記登録データの前記対象種別に設定された値の出現頻度分布と異なるように、前記複数のデータ管理装置のうちどのデータ管理装置に前記登録データを管理させるかを決定する登録先決定処理であって、前記登録データと秘密情報とから前記複数のデータ管理装置それぞれを選択する選択確率を計算し、計算された選択確率に従い、データ管理装置を選択することにより、どのデータ管理装置に前記登録データを管理させるかを決定する登録先決定処理
をコンピュータに実行させる登録先決定プログラム。
【国際調査報告】
2017203698.tif 000022
2017203698.tif 000023