JPWO2013018683A1 - 情報漏えいに耐性を持つインデックス生成システム及びインデックス生成装置並びにその方法 - Google Patents

情報漏えいに耐性を持つインデックス生成システム及びインデックス生成装置並びにその方法 Download PDF

Info

Publication number
JPWO2013018683A1
JPWO2013018683A1 JP2013526875A JP2013526875A JPWO2013018683A1 JP WO2013018683 A1 JPWO2013018683 A1 JP WO2013018683A1 JP 2013526875 A JP2013526875 A JP 2013526875A JP 2013526875 A JP2013526875 A JP 2013526875A JP WO2013018683 A1 JPWO2013018683 A1 JP WO2013018683A1
Authority
JP
Japan
Prior art keywords
index
value
secure
secure index
search
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2013526875A
Other languages
English (en)
Other versions
JP5942991B2 (ja
Inventor
俊則 荒木
俊則 荒木
勇 寺西
勇 寺西
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Publication of JPWO2013018683A1 publication Critical patent/JPWO2013018683A1/ja
Application granted granted Critical
Publication of JP5942991B2 publication Critical patent/JP5942991B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/316Indexing structures
    • G06F16/319Inverted lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

登録情報が暗号化されているデータベースにおいて範囲検索を効率的に実行する。
複数の値と、当該複数の値を識別するための第1の識別情報と、鍵とを入力として受け付ける。複数の前記値から値集合を生成する。前記値集合を単語集合として扱い、当該単語集合、前記第1の識別情報及び前記鍵からセキュアインデックスを生成する。検索する値及び鍵に基づいて、当該検索する値についてのトラップドア情報を生成する。前記トラップドア情報を用いて前記生成されたセキュアインデックスに対してセキュアインデックス判定処理を実行し、当該判定処理の結果前記検索する値が前記セキュアインデックスに含まれていると判定できた場合は当該セキュアインデックスを識別するための第2の識別情報を出力する。

Description

本発明は、情報漏えいに耐性を持つインデックス生成システム及びインデックス生成装置並びにその方法に関する。
データの集合に対して生成されるデータである「インデックス」を用いた技術が知られている。インデックスを用いると、生成元のデータ集合から、所望の特徴を含むデータを検索することが容易化される。
インデックスを用いた検索方法としては、キーワード検索や範囲検索が代表的である。ここで、特に範囲検索について考える。暗号化されていない通常のデータに対して範囲検索を行う場合は、単純に値の大小を比較することで実行でき、特別な手法は必要ない。
しかし、情報漏えい対策などでデータを暗号化する場合は、一般的な暗号化方式の暗号文の値から元のデータの大小比較はできない。例えば、特許文献1乃至5には、情報の漏洩を防止すべく、データを暗号化してデータベース化したり、検索のキーとするキーワードを暗号化するといった技術が記載されている。このように暗号化することにより暗号文からの情報漏えいを防止することができる。もっともこれらの技術により暗号化したデータを対象として範囲検索を行うことはできない。
すなわち、暗号化されたデータを対象として範囲検索を行うためには何らかの技術が必要となる。
以下の説明では、データを暗号化しながらデータの検索処理を行う技術について更に説明する。
非特許文献1には平文の数字的な大小を保ちながら暗号化することができる暗号方式を用いる方法が記載されている。もっとも、非特許文献1に記載の方法は、暗号文から順序情報自体が漏えいするという問題がある。
一方、非特許文献2や非特許文献3に記載のインデックスを用いる技術では、暗号文からの情報漏えいの両方を防ぐとともに、インデックスからの情報漏えいまでも防ぐことが可能である。
特開2005−134990号公報 特開2010−164835号公報 特開平11−328225号公報 特表2010−503118号公報 特表2010−506289号公報
Alexandra Boldyreva, Nathan Chenette, Younho Lee and Adam O'Neill. Order-Preserving Symmetric Encryption. Advances in Cryptology - Eurocrypt 2009 Proceedings, Lecture Notes in Computer Science Vol. 5479, pp. 224-241, A. Joux ed., 2009. Eu-Jin Goh:Secure Indexes.[online],[平成23年7月15日検索]インターネット<http://crypto.stanford.edu/~eujin/papers/secureindex/secureindex.pdf> Y.-C. Chang and M. Mitzenmacher. Privacy preserving keyword searches on remote encrypted data. Cryptology ePrint Archive, Report 2004/051, Feb 2004 [online],[平成23年7月15日検索]インターネット<http://eprint.iacr.org/2004/051/>
上述した各技術を用いて、データを暗号化することにより、情報漏えい対策を行うことが可能となる。また、暗号化したデータを対象としたキーワード検索を実施することも可能となる。
しかしながら上述した各技術は、キーワード検索向けに構成されており、範囲検索を実行するには適さない。情報漏えい対策などでデータを暗号化すると、暗号化された値の比較を単純に実行することができないためである。
そこで、本発明は、登録情報が暗号化されているデータベースにおいて範囲検索を効率的に実行することが可能な、情報漏えいに耐性を持つインデックス生成システム及びインデックス生成装置並びにその方法を提供することを目的とする。
本発明の第1の観点によれば、複数の値と、該複数の値を識別するための第1の識別情報と、鍵とを入力として受け付け、該入力に基づいてセキュアインデックスを生成するインデックス生成装置であって、複数の前記値に基づいて値集合を生成する値集合生成部と、前記値集合を単語集合として扱い、該単語集合、前記第1の識別情報及び前記鍵に基づいてセキュアインデックスを生成するセキュアインデックス生成部と、を備えることを特徴とするインデックス生成装置が提供される。
本発明の第2の観点によれば、セキュアインデックスを生成し、該生成したセキュアインデックスに対して判定処理を実行する検索システムであって、上記本発明の第1の観点により提供されるインデックス生成装置がセキュアインデックスを生成する部と、前記鍵及び検索する値に基づいて、該検索する値についてのトラップドア情報を生成するトラップドア生成部と、前記トラップドア情報を用いて前記生成されたセキュアインデックスに対してセキュアインデックス判定処理を実行し、該判定処理の結果前記検索する値が前記セキュアインデックスに含まれていると判定できた場合は該セキュアインデックスを識別するための第2の識別情報を出力するセキュアインデックス検索部と、を備えることを特徴とする検索システムが提供される。
本発明の第3の観点によれば、複数の値と、該複数の値を識別するための第1の識別情報と、鍵とを入力として受け付け、該入力に基づいてセキュアインデックスを生成し、該生成したセキュアインデックスに対して判定処理を実行する検索方法であって、複数の前記値に基づいて値集合を生成し、前記値集合を単語集合として扱い、該単語集合、前記第1の識別情報及び前記鍵に基づいてセキュアインデックスを生成し、前記鍵及び検索する値に基づいて、該検索する値についてのトラップドア情報を生成し、前記トラップドア情報を用いて前記生成されたセキュアインデックスに対してセキュアインデックス判定処理を実行し、該判定処理の結果前記検索する値が前記セキュアインデックスに含まれていると判定できた場合は該セキュアインデックスを識別するための第2の識別情報を出力する、ことを特徴とする検索方法が提供される。
本発明によれば、値を複数の値の集合に変換し、その値の集合を単語集合としたセキュアインデックスを生成することから、情報漏えいを防止し、且つ、登録情報が暗号化されているデータベースにおいて範囲検索を効率的に実行することが可能となる。
本発明の実施形態の基本的構成を表すブロック図である。 セキュアインデックスの生成方法について説明するための図である。 セキュアインデックスの判定方法について説明するための図である。 本発明の実施形態におけるインデックス生成装置の基本的構成を表すブロック図である。 本発明の実施形態におけるインデックス生成装置の基本的動作を表すブロック図である。 本発明の実施形態における検索依頼装置と検索装置の基本的構成を表すブロック図である。 本発明の実施形態における検索依頼装置と検索装置の基本的動作を表すブロック図である。 本発明の実施形態を実現するための装置の一例である処理装置の基本的構成を表すブロック図である。
10 処理装置
11 CPU
12 主記憶装置
13 記録媒体
14 データ蓄積装置
15 メモリ制御インターフェイス部
16 I/Oインターフェイス部
17 バス
20 入力装置
30 出力装置
100 インデックス生成装置
101 登録処理制御部
102 値集合生成部
103 セキュアインデックス生成部
200 検索依頼装置
201 トラップドア生成部
300 検索装置
301 検索処理制御部
302 セキュアインデックス判定部
次に、本発明の実施形態について図面を参照して詳細に説明する。
図1は、本実施形態の基本的構成を表すブロック図である。
図1を参照すると、本実施形態は、インデックス生成装置100、検索依頼装置200、検索装置300及びインデックス記憶装置400を含む。ここで、インデックス記憶装置400は、一台であっても良いが、複数台であってもよい。本実施形態では、インデックス記憶装置400−1、インデックス記憶装置400−2及びインデックス記憶装置400−nの3台を図示する。なお、便宜上図示する台数を3台としたが、これは本実施形態で利用可能なインデックス記憶装置400の台数を限定する趣旨ではない。本実施形態では任意の台数のインデックス記憶装置400を利用することが可能である。
インデックス生成装置100は、セキュアインデックスを生成する装置である。検索依頼装置200は、検索装置300が検索を実行するための情報を生成する装置である。検索装置300は、検索依頼装置200からの依頼に応じて検索を実行する装置である。インデックス記憶装置400は、識別情報と、インデックス生成装置100が生成したインデックスを記憶する装置である。
続いて、本実施形態に含まれる各装置の構成について説明するに先立ち、本実施形態におけるインデックスの生成方法及び判定方法について詳細に説明する。
本実施形態では、非特許文献2に記載のキーワード検索向けに構成されているインデックス生成方法を応用して、範囲検索向けのインデックス等を生成する。以下で、本実施形態で応用する非特許文献2に記載のインデックス生成方法を説明する。
このインデックス生成方法では、単語の集合と識別情報の組を文書として扱う。ここで、識別情報は、ファイル名や通し番号など、各識別情報を区別できる情報であれば任意のものを用いてよい。
識別情報がzであり、単語としてw_1,...,w_nを持つ文書Dを({w_1,...,w_n},z)とする。
また、インデックスを生成する主体者のみが所有する秘密の情報を鍵として用いる。この鍵を、以下の説明では「鍵K」とする。
鍵Kは、文書Dに含まれている各単語wをトラップドアと呼ばれる値に変換するために用いられる。この変換処理は鍵と単語を入力とした関数として実現される。この関数をトラップドア生成関数Trとし、鍵Kと単語wを入力したときの出力を単語wのトラップドアとする。また、このトラップドア生成関数Trを用いてトラップドアを生成する処理を以下の説明では、「トラップドア生成処理」という。
また、このインデックス生成方法では、単語ごとに異なるフィルタ関数を用いる。このフィルタ関数は、ビット列を出力する関数であって、識別情報zと、単語wのトラップドアを入力としてとることができる関数を用いて実現される。このような関数を「識別情報依存フィルタ関数F」とする。
ここで、インデックスを生成する関数を、「インデックス生成関数Gen」とすると、インデックス生成関数Genは以下の通りに表すことができる。
インデックス生成関数Gen:
1.文書({w_1,...,w_n},z)と鍵Kが入力される。
2.x_1=Tr(k,w_1)を計算する。同様に、x_2=Tr(k,w_2),...,x_n=Tr(k,w_n)を計算する。
3.y_1=F(z,x_1)を計算する。同様に、y_2=F(z,x_2),...,y_n=F(z,x_n)を計算する。
4.y_1の論理和からy_nの論理和までのそれぞれを求め、それぞれを出力する。
以上の処理によって生成されるフィルタはセキュアインデックスと呼ばれている。本実施形態では、この処理を「セキュアインデックス生成処理」という。
図2は、インデックス生成関数Genに文書({w_1,w_2,s_3},z)と、鍵Kが入力された場合の処理を図示している。
次に、ある識別情報zについてのセキュアインデックスfが単語wを含んでいるか否かを判定する処理について説明する。この判定処理を実現するための判定関数Checkは、トラップドアとフィルタと識別情報を入力とし、以下の通りに表すことができる。
判定関数Check:
1.インデックスfと識別情報zとトラップドアxが入力される。
2.y=F’(z,x)を計算する。
3.yにおいて1である箇所のすべてがインデックスfにおいても1であるかを調べ、すべてが1であるときには1を出力し、それ以外の場合0を出力する。
本実施形態では、以上の処理は「セキュアインデックス判定処理」という。
図3は、判定関数Checkの動作の一例を示している。
トラップドアは単語と鍵を用いて計算されている。そのため、或る単語に関する検索を実行しようとしても、鍵を持っていなければその或る単語に対応するトラップドアが計算できず、判定関数Checkを使用することができない。
鍵を持っている主体のみが、その或る単語に対応するトラップドアを計算し、文書とフィルタを保管しているデータベースなどに検索処理を依頼できることになる。
つまり、セキュアインデックスに対しては、鍵を知っており、その鍵によりトラップドアを計算できる単語に関する検索しか行うことができない。
以上のような理由から、セキュアインデックスは、そのデータ自体からの情報漏えいに強い。また、セキュアインデックスは、更に特有の特徴を持っている。
その特徴とは、判定関数Checkは入力された要素w_iが含まれていない集合に対して計算されたセキュアインデックスに対しても1を出力する場合がある一方で、要素w_iが集合に含まれている場合は必ず1を出力する、というものである。
この特徴を利用すると、文書を単語の集合とみなし、単語の集合を入力としたセキュアインデックスを作成し、各文書の暗号文とセキュアインデックスを対応させて保管することで、暗号化された文書のキーワード検索を効率化することができる。
各文書に対応するセキュアインデックスがキーワードを含んでいるかを判定関数Checkによって判定し、1が出力されたセキュアインデックスに対応する文書を抽出すれば、各文書がキーワードを含んでいるかどうかを直接調べる必要がないためである。
この点について、詳細に説明する。本実施形態ではデータが持つ特徴を複数の単語の集合に変換し、その単語の集合を文章としたセキュアインデックスを生成することで課題を解決する。
具体的な例として、ある閾値k以上であることを検索可能とする場合、値xを{1,...,x}に変換し、{1,...,x}を単語の集合としてセキュアインデックスを生成する。
このようにして生成したセキュアインデックスに対して、キーワードをkとしたセキュアインデックス判定処理を実行することを考えると、もし、xがk以上であれば、1が出力される。セキュアインデックスの誤りがおきなければ、xがk未満であるならば0が出力される。
このように1つの値xを{1,...,x}に変換することで、「以上」に関する検索を実行するインデックスを生成することができる。同様に、「以下」に関するインデックスを生成できる。
具体的には、ある閾値k以下であることを検索可能とする場合、値xを{x,...,xが取りうる最大の値であってk以上の値}に変換し、{x,...,xが取りうる最大の値であってk以上の値}を単語の集合としてセキュアインデックスを生成する。
このようにして生成したセキュアインデックスに対して、キーワードをkとしたセキュアインデックス判定処理を実行することを考えると、もし、xがk以下であれば、1が出力される。セキュアインデックスの誤りがおきなければ、xがkを超える値であるならば0が出力される。
このようにして値について「以上」のインデックスと、「以下」のインデックスを生成すれば、A以上B以下といった範囲検索を実行するためのインデックスも生成できる。
この方法では、A以上の値を検索する際に、A以上でないと判定された値はA未満であり、B以下でないと判定された値はBより大きい値であることがわかる。
つまり、A未満の値とBより大きい値の区別が付く。真にA以上B以下の要素のみを検索したいならば、これらの区別がつかない方法が望ましく、以下のような方法がある。
この場合、ある値についてのA以上、B未満といった検索を実行するためのセキュアインデックスを生成する場合、その値を含む範囲すべてをキーワードとしてセキュアインデックスを生成すればよい。
例えば、値がとる範囲が{1,2,3,4}であるならば、3を含む区間は3,{2,3},{3,4}{1,2,3}{2,3,4}{1,2,3,4}である。これらの集合のそれぞれを単語としてセキュアインデックスを生成する。
このようにして生成されたセキュアインデックスに対する検索処理は、例えば区間{2,3}に対するトラップドアを用いてすればよい。この場合、セキュアインデックスを生成した単語として、1,{1,4},4のみが含まれている場合はセキュアインデックスの誤りがおきなければ、0が出力される。一方、それ以外の場合は1が出力される。これにより真にA以上B以下の要素のみを検索することが可能となる。
すなわち、本実施形態では、値を複数の値の集合に変換し、その値の集合を単語集合としたセキュアインデックスを生成することで課題を解決する。
なお、上述の説明では非特許文献2に記載の方法を応用するものとして説明したが、これはあくまで一例にしか過ぎず、同様の性質を持つインデックス生成方法であれば、どのような方法を用いてもよい。
続いて、本実施形態に含まれる各装置の詳細な構成及び動作について説明する。
図4は、本実施形態のインデックス生成装置100の基本的構成を表すブロック図である。
図4を参照すると、インデックス生成装置100は、インデックス生成制御部101、
値集合生成部102及びセキュアインデックス生成部103を含む。
インデックス生成制御部101は、値D_valueと識別情報D_idと鍵Kを入力として受け付ける。そして、インデックス生成制御部101は、値集合生成部102及びセキュアインデックス生成部103を制御することにより、これら入力された情報からインデックス記憶装置400に記憶させる情報を生成する。生成した情報をインデックス記憶装置400に記憶させることによりインデックス記憶装置400の情報は更新される。なお、値D_valueは識別情報D_idと組とする。識別情報D_idは、重複さえないのであれば如何なる情報を用いても良い。例えば識別情報D_idは、各値D_valueに対して振られた通し番号のような情報でよい。
値集合生成部102は、インデックス生成制御部101が出力した値D_valueを入力として、値D_valueの集合Sを生成する。そして、値集合生成部102は、生成した集合Sをインデックス生成制御部101に対して出力する。
セキュアインデックス生成部103は、インデックス生成制御部101が出力した鍵Kと、識別情報D_idと、値D_valueの集合Sを入力とし、その入力に応じて、セキュアインデックス生成処理を実行する。そして、セキュアインデックス生成部103は、セキュアインデックス生成処理により生成されたインデックスI_valueを出力する。
図5は、本実施形態のインデックス生成装置100の基本的動作を表すフローチャートである。
図5を参照すると、まず、識別情報D_idと、値D_valueと、鍵Kがインデックス生成制御部101に入力される(ステップA−1)。
インデックス生成制御部101は、D_valueを値集合生成部102に入力し、その出力である単語集合Sを得る(ステップA−2)。
インデックス生成制御部101は鍵をK,識別情報をD_id,単語集合をSとしてセキュアインデックス生成部103を入力し、その出力であるインデックスI_valueと識別情報I_idを組にしてインデックス記憶装置402に記憶させる(ステップA−3)。なお、識別情報D_idと同様に識別情報I_idは、重複しないのであれば如何なる情報を用いても良い。例えば、I_idは、各値I_valueに対して振られた通し番号のような情報でよい。
図6は、本実施形態の検索依頼装置200と検索装置300の基本的構成を表すブロック図である。
検索依頼装置200は、トラップドア生成部201を含む。
検索依頼装置200は、鍵Kと、単語wを入力される。そして、トラップドア生成部201は入力された鍵Kと、単語wに基づいて、単語wに対するトラップドアtを出力する。
検索装置300は、検索処理制御部301と、セキュアインデックス判定部302を含む。
検索処理制御部301は、トラップドアtを入力される。また、検索処理制御部301は、インデックス記憶装置400−1、インデックス記憶装置400−2及びインデックス記憶装置400−nの何れかから、識別情報I_idと、インデックスI_valueを読み出す。そして、検索処理制御部301は、トラップドアtと、識別情報I_idと、インデックスI_valueをセキュアインデックス判定部302に対して出力する。
セキュアインデックス判定部302は、トラップドアtと、識別情報I_idと、インデックスI_valueを入力され、その入力に応じて、セキュアインデックス判定処理を実行する。そして、セキュアインデックス判定部302は、セキュアインデックス判定処理の結果を出力する。
図7は、本実施形態の検索依頼装置200と検索装置300の基本的動作を表すフローチャートである。
まず、単語wと鍵Kが検索依頼装置200に入力される(ステップB−1)。
トラップドア生成部201は、単語wに対するトラップドアtを、単語w及び鍵Kを入力として生成する(ステップB−2)。
ステップB−2において生成されたトラップドアtが検索装置300に入力される(ステップB−3)。
検索処理制御部301は、未判定のインデックス情報記憶装置400がないか調べる(ステップB−4)。
未判定のインデックス情報記憶装置400がある場合(ステップB−4においてNo)、検索処理制御部301は、未判定のインデックス情報記憶装置400を選び、これから識別情報I_idとインデックスI_valueを読み出し、I_idを識別情報とし、tをトラップドア情報とし、インデックスI_valueをセキュアインデックスとしてセキュアインデックス判定部302に対して出力し、セキュアインデックス判定部302がセキュアインデックス判定処理を実行する(ステップB−5)。
ステップB−5における判定処理結果が0の場合(ステップB−6において0)、ステップB−4に戻り、処理を継続する。一方、判定処理結果が1の場合(ステップB−6において1)、今回判定処理の対象としたインデックスI_valueに対応する識別情報I_idを保管する(ステップB−7)。その後、ステップB−4に戻り、処理を継続する。
ステップB−4ですべてのインデックス情報記憶装置400の記憶する全てのインデックスが判定済みだった場合(ステップB−4においてYes)、ステップB−7で記憶した識別情報I_idをすべて出力する。
本実施形態では、以上説明した動作により、情報漏えいを防止し、且つ、登録情報が暗号化されているデータベースにおいて範囲検索を効率的に実行することが可能となる。
なお、以上説明した、インデックス生成装置100、検索依頼装置200、検索装置300及びインデックス記憶装置400は、任意の方法により実現することが可能である。
例えばハードウェアとしてインデックス生成装置100、検索依頼装置200及び検索装置300を実現するのであれば、論理回路等から構成されるLSI(Large Scale Integration)やDSP(Digital Signal Processor)等の半導体集積回路によって実現できる。
また、インデックス記憶装置400は、ハードウェアとして任意のコンピュータ読み取り可能な記憶媒体を含む装置により実現することができる。
また、インデックス生成装置100、検索依頼装置200、検索装置300及びインデックス記憶装置400は、ハードウェア及びソフトウェアの組合せとしても実現可能である。例えば、図8に表される処理装置10と、入力部20と、出力部30とを含んだコンピュータによってインデックス生成装置100、検索依頼装置200、検索装置300及びインデックス記憶装置400を実現してもよい。
ここで、処理装置10は、プログラムに従って所定の処理を実行する装置であり、例えば、汎用のパーソナルコンピュータである。
また、入力部20は、処理装置10に対してコマンドや情報等を入力するための機器であり、例えば、キーボードやマウスである。
出力部30は、処理装置10の処理結果をモニタするための装置であり、例えばディスプレイや、プリンターである。
また、処理装置10について、以下詳細に説明する。
図4を参照すると処理装置10は、CPU11と、主記憶部12と、記録媒体13と、データ蓄積部14と、メモリ制御インターフェイス部15と、I/Oインターフェイス部16とを有する。これら各構成要素は、バス17を介して相互に接続されている。
CPU11はプログラムに基づいて演算を行う演算処理装置である。主記憶部12は、CPU11の演算処理に必要な情報を一時的に記憶する主記憶部である。
記録媒体13は、CPU11にインデックス生成装置100、検索依頼装置200及び検索装置300としての処理を実行させるためのプログラムが記録された記録媒体である。処理装置10は、記録媒体13に記録されたプログラムに従ってインデックス生成装置100、検索依頼装置200及び検索装置300としての機能を実現する。
データ蓄積部14は、処理に伴うデータが蓄積される補助記憶装置である。
なお、記録媒体13及びデータ蓄積部14は、任意の装置により実現可能である。記録媒体13及びデータ蓄積部14は、例えば、HDD(Hard disk drive)やFlash SSD(Solid State Drive)により実現される。また、この記憶装置は処理装置10内にある必要はなく、外部の記憶装置(図示を省略する)を利用するようにしてもよい。この場合記憶装置を別のコンピュータとして実現し、バスやUSB(Universal Serial Bus)規格に準拠したケーブルや、インターネット等の手段を用いて接続するようにしてもよい。更に、単一の記憶装置により実現されてもよいが、複数の記憶装置の組合せにより実現されていてもよい。加えて、記録媒体13は、磁気ディスク、半導体メモリ、光ディスクあるいはその他の記録媒体であってもよい。例えば、フレキシブルディスク、CD−ROM(Compact Disc Read-Only Memory)、DVD(Digital Versatile Disc)、MO(Magneto Optical Disk(Disc))BD(Blu-ray Disc:登録商標)等であってもよい。加えて、データ蓄積部14は、インデックス記憶装置400として用いてもよい。すなわち、インデックス生成装置100、検索依頼装置200、検索装置300及びインデックス記憶装置400、複数のコンピュータで実現してもよく、単一のコンピュータで実現してもよい。
メモリ制御インターフェイス部15は、主記憶部12、記録媒体13及びデータ蓄積部14とCPU11等とのデータ転送を制御する。
次に、本発明の実施例を説明する。かかる実施例は上述した本発明の実施形態に対応するものである。
各実施例では、値D_valueは識別情報D_idと組であるものとする。
[第1の実施例]
第1の実施例は値が一定の値以上であることを判定するインデックスを生成する場合の実施例である。
値D_valueを入力とした場合について考える。この場合に値D_valueのとりうる最小値をD_minとすると、値集合生成部102は、{D_min,...,D_value}を値集合Sとしてインデックスを生成する。
x以上の検索を実行する場合、xを単語とし、鍵Kを用いてxのトラップドアtを生成する。そして、このxのトラップドアtを用いてセキュアインデックスの判定処理を実行する。
以上のように実施すれば、D_valueがx以上である値に対して生成されたセキュアインデックスのすべてが1を出力し、それ以外はエラーが起きない限り0が出力されるので、「以上」の判定を実行することができる。
[第2の実施例]
第2の実施例は値が一定の値未満であることを判定するインデックスを生成する場合の実施例である。
値D_valueを入力とした場合について考える。この場合に値D_valueのとりうる最大値がD_maxとすると、値集合生成部102は、{D_value,...,D_max}を値集合Sとしてインデックスを生成する。
x以下の検索を実行する場合、xを単語とし、鍵Kを用いてxのトラップドアtを生成する。そして、このxのトラップドアtを用いてセキュアインデックスの判定処理を実行する。
以上のように実施すれば、D_valueがx以下である値に対して生成されたセキュアインデックスのすべてが1を出力し、それ以外はエラーが起きない限り0が出力されるので、以上の判定を実行することができる。
[第3の実施例]
第3の実施例は、第1の実施例と第2の実施例に従って、2つのインデックスを生成し、一定の値以上、一定の値以下であることを判定するためのインデックスを生成する方法である。
A以上、B以下である値の検索を実行する場合には、以上のインデックスに対しては、第1の実施例と同様にして、{D_min,...,D_value}を値集合Sとしてインデックスを生成する。そして、Aを単語としたインデックス判定処理を実行する。
一方、以下のインデックスに対しては、第1の実施例と同様にして、{D_value,...,D_max}を値集合Sとしてインデックスを生成する。そして、Bを単語としたインデックス判定処理を実行し、その両方の判定処理で1が出力されたものを1と判定することで、A以上、B以下の判定が実行できる。
[第4の実施例]
第3の実施例を用いると、[課題を解決するための手段]に記載したように、多少の情報が漏えいする場合がある。
本実施例は、そのような情報の漏えいをも防ぎたい場合に用いる。
値D_valueを入力とした場合について考える。値集合生成部102は、値D_valueの取りうる範囲内で、D_valueを含む範囲すべてからなる集合を値集合Sとしてインデックスを生成する。
ある区間に含まれる値の検索を実行する場合、区間そのものを単語としてセキュアインデックスの判定処理を実行する。
その区間に含まれている値はその区間を単語としたセキュアインデックスが対応しているので、所望の判定を実行することができる。
[第5の実施例]
本実施例は、値の取りうる数が多い場合の例である。第1から第4の実施例を、値が100万通りである場合に適用すると、値集合生成部102は非常に要素数の多い集合を出力することになり非効率的である。これを防ぐために利用する実施例である。
値そのものを値集合生成部102に入力するのではなく、値を適切な数の区間に分けた場合に、どの区間に含まれるのかを出力するような区分けを導入する。
例えば、10000通りの値を100の区間にわける場合、1〜100番目の値を区間1といったように割りあてる方法である。
各区間に均等に割り振る必要はなく、目的に応じて適切に設定する。例えば1〜100番目の値を区間1といったように割りあて、101〜110番目の値を区間2といったように不均等に割りあててもよい。
但し、この区分けは、インデックス生成装置100及び検索装置300の両方で共通の規則に則って行う必要がある。そのため、インデックス生成装置100及び検索装置300のそれぞれが、各装置に入力される値を共通の方法で区分けする。
以上説明した本発明の実施形態及び実施例は、以下に示すような多くの効果を奏する。
第1の効果は、情報漏えいを防止し、且つ、登録情報が暗号化されているデータベースにおいて範囲検索を効率的に実行することが可能なことである。
その理由は、値を複数の値の集合に変換し、その値の集合を単語集合としたセキュアインデックスを生成するからである。
第2の効果は値が一定の値以上であることを判定するインデックスを生成できることである。
その理由は、値D_valueのとりうる最小値をD_minとすると、{D_min,...,D_value}を値集合Sとしてインデックスを生成するからである。
第3の効果は値が一定の値未満であることを判定するインデックスを生成できることである。
その理由は、値D_valueのとりうる最大値がD_maxとすると、{D_value,...,D_max}を値集合Sとしてインデックスを生成するからである。
第4の効果は、A以上、B以下である値の検索を実行できることである。
その理由は、{D_min,...,D_value}を値集合Sとしてインデックスを生成し、更に{D_min,...,D_value}を値集合Sとしてインデックスを生成するからである。
第5の効果は、情報漏えいを防止し、且つ、A以上B以下の要素のみを検索できることである。
その理由は、値D_valueの取りうる範囲内で、D_valueを含む範囲すべてからなる集合を値集合Sとしてインデックスを生成するからである。また、ある区間に含まれる値の検索を実行する場合、区間そのものを単語としてセキュアインデックスの判定処理を実行するからである。
第6の効果は、効率的に判定を実行できることである。
その理由は、値を適切な数の区間に分けた場合に、どの区間に含まれるのかを出力するような区分けを導入するからである。
また、上述した実施形態は、本発明の好適な実施形態ではあるが、上記実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。
なお、上記のインデックス生成装置、検索依頼装置、検索装置及びインデックス記憶装置のそれぞれは、ハードウェア、ソフトウェア又はこれらの組合わせにより実現することができる。また、上記のインデックス生成装置、検索依頼装置、検索装置及びインデックス記憶装置により行なわれるインデックス生成方法も、ハードウェア、ソフトウェア又はこれらの組合わせにより実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
本願は、日本の特願2011−166749(2011年7月29日に出願)に基づいたものであり、又、特願2011−166749に基づくパリ条約の優先権を主張するものである。特願2011−166749の開示内容は、特願2011−166749を参照することにより本明細書に援用される。
本発明の代表的な実施の形態が詳細に述べられたが、様々な変更(changes)、置き換え(substitutions)及び選択(alternatives)が請求項で定義された発明の精神と範囲から逸脱することなくなされることが理解されるべきである。また、仮にクレームが出願手続きにおいて補正されたとしても、クレームされた発明の均等の範囲は維持されるものと発明者は意図する。
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1) 複数の値と、該複数の値を識別するための第1の識別情報と、鍵とを入力として受け付け、該入力に基づいてセキュアインデックスを生成するインデックス生成装置であって、
複数の前記値に基づいて値集合を生成する値集合生成部と、
前記値集合を単語集合として扱い、該単語集合、前記第1の識別情報及び前記鍵に基づいてセキュアインデックスを生成するセキュアインデックス生成部と、
を備えることを特徴とするインデックス生成装置。
(付記2) 付記1に記載のインデックス生成装置であって、
前記値の取りうる最小値を値最小値とした場合に、該値最小値から前記値までの1つ以上の値の集合を単語集合として扱い、該単語集合、前記第1の識別情報及び前記鍵に基づいてセキュアインデックスを生成することを特徴とするインデックス生成装置。
(付記3) 付記1に記載のインデックス生成装置であって、
前記値の取りうる最大値を値最大値とした場合に、該値最大値から前記値までの1つ以上の値の集合を単語集合として扱い、該単語集合、前記第1の識別情報及び前記鍵に基づいてセキュアインデックスを生成することを特徴とするインデックス生成装置。
(付記4) セキュアインデックスを生成し、該生成したセキュアインデックスに対して判定処理を実行する検索システムであって、
付記1乃至3の何れか1に記載のインデックス生成装置がセキュアインデックスを生成する部と、
前記鍵及び検索する値に基づいて、該検索する値についてのトラップドア情報を生成するトラップドア生成部と、
前記トラップドア情報を用いて前記生成されたセキュアインデックスに対してセキュアインデックス判定処理を実行し、該判定処理の結果前記検索する値が前記セキュアインデックスに含まれていると判定できた場合は該セキュアインデックスを識別するための第2の識別情報を出力するセキュアインデックス検索部と、
を備えることを特徴とする検索システム。
(付記5) 付記1に記載のインデックス生成装置であって、
前記値の取りうる最小値を値最小値とした場合に、該値最小値から前記値までの1つ以上の値の集合を単語集合として扱い、該単語集合、前記第1の識別情報及び前記鍵に基づいて第1のセキュアインデックスを生成し、
前記値の取りうる最大値を値最大値とした場合に、該値最大値から前記値までの1つ以上の値の集合を単語集合として扱い、該単語集合、前記第1の識別情報及び前記鍵に基づいて第2のセキュアインデックスを生成し、前記第1のセキュアインデックス及び前記第2のセキュアインデックスを組とすることを特徴とするインデックス生成装置。
(付記6) セキュアインデックスを生成し、該生成したセキュアインデックスに対して判定処理を実行する検索システムであって、
付記5に記載のインデックス生成装置を前記第1のセキュアインデックス及び前記第2のセキュアインデックスを生成する部として備え、
a<bを満たす値aと値bを入力として、それぞれについてのトラップドアt_a及びt_bを生成するトラップドア生成部と、
前記トラップドアt_aを前記第1のセキュアインデックスに対する検索処理に用いるトラップドアとして、前記トラップドアt_bを前記第2のセキュアインデックスに対する検索処理に用いるトラップドアとして、セキュアインデックス判定処理を実行し、それぞれの判定処理の結果の積集合を出力するセキュアインデックス検索部と、
を更に備えることを特徴とする検索システム。
(付記7) 付記1に記載のインデックス生成装置であって、
前記値の取りうる範囲内で、前記値を含む区間全てを含む集合を単語集合として扱い、該単語集合、前記第1の識別情報及び前記鍵に基づいてセキュアインデックスを生成することを特徴とするインデックス生成装置。
(付記8) セキュアインデックスを生成し、該生成したセキュアインデックスに対して判定処理を実行する検索システムであって、
付記7に記載のインデックス生成装置をセキュアインデックスを生成する部として備え、
鍵及び検索する値を含む区間に基づいて、該検索する値についてのトラップドア情報を生成するトラップドア生成部と、
前記トラップドア情報を用いて前記生成されたセキュアインデックスに対してセキュアインデックス判定処理を実行し、該判定処理の結果前記検索する値を含む区間が前記セキュアインデックスに含まれていると判定できた場合は該セキュアインデックスを識別するための第2の識別情報を出力するセキュアインデックス検索部と、
を更に備えることを特徴とする検索システム。
(付記9) 付記4、6及び8の何れか1に記載の検索システムにおいて、
値を何れかの区間に割当て、
前記値集合に代えて前記値が割り当てられている区間の集合を単語集合として扱い、該単語集合、前記第1の識別情報及び前記鍵に基づいてセキュアインデックスを生成し、
検索する値に割り当てられている区間及び鍵に基づいて、該検索する値についてのトラップドア情報を生成し、
前記トラップドア情報を用いて前記生成されたセキュアインデックスに対してセキュアインデックス判定処理を実行し、該判定処理の結果前記検索する値に割り当てられている区間が前記セキュアインデックスに含まれていると判定できた場合は該セキュアインデックスを識別するための第2の識別情報を出力する、
ことを特徴とする検索システム。
(付記10) 複数の値と、該複数の値を識別するための第1の識別情報と、鍵とを入力として受け付け、該入力に基づいてセキュアインデックスを生成し、該生成したセキュアインデックスに対して判定処理を実行する検索方法であって、
複数の前記値に基づいて値集合を生成し、
前記値集合を単語集合として扱い、該単語集合、前記第1の識別情報及び前記鍵に基づいてセキュアインデックスを生成し、
前記鍵及び検索する値に基づいて、該検索する値についてのトラップドア情報を生成し、
前記トラップドア情報を用いて前記生成されたセキュアインデックスに対してセキュアインデックス判定処理を実行し、該判定処理の結果前記検索する値が前記セキュアインデックスに含まれていると判定できた場合は該セキュアインデックスを識別するための第2の識別情報を出力する、ことを特徴とする検索方法。
(付記11) 付記10に記載の検索方法であって、
前記値の取りうる最小値を値最小値とした場合に、該値最小値から前記値までの1つ以上の値の集合を単語集合として扱い、該単語集合、前記第1の識別情報及び前記鍵に基づいてセキュアインデックスを生成することを特徴とするインデックス検索方法。
(付記12) 付記10に記載の検索方法であって、
前記値の取りうる最大値を値最大値とした場合に、該値最大値から前記値までの1つ以上の値の集合を単語集合として扱い、該単語集合、前記第1の識別情報及び前記鍵に基づいてセキュアインデックスを生成することを特徴とするインデックス検索方法。
(付記13) 複数の値と、該複数の値を識別するための第1の識別情報と、鍵とを入力として受け付け、該入力に基づいてセキュアインデックスを生成するインデックス生成装置に組み込まれるインデックス生成プログラムであって、
複数の前記値に基づいて値集合を生成する値集合生成部と、
前記値集合を単語集合として扱い、該単語集合、前記第1の識別情報及び前記鍵に基づいてセキュアインデックスを生成するセキュアインデックス生成部と、
を備えるインデックス生成装置としてコンピュータを機能させることを特徴とするインデックス生成プログラム。
(付記14) 付記13に記載のインデックス生成プログラムであって、
前記値の取りうる最小値を値最小値とした場合に、該値最小値から前記値までの1つ以上の値の集合を単語集合として扱い、該単語集合、前記第1の識別情報及び前記鍵に基づいてセキュアインデックスを生成することを特徴とするインデックス生成プログラム。
(付記15) 付記13に記載のインデックス生成プログラムであって、
前記値の取りうる最大値を値最大値とした場合に、該値最大値から前記値までの1つ以上の値の集合を単語集合として扱い、該単語集合、前記第1の識別情報及び前記鍵に基づいてセキュアインデックスを生成することを特徴とするインデックス生成プログラム。

Claims (10)

  1. 複数の値と、該複数の値を識別するための第1の識別情報と、鍵とを入力として受け付け、該入力に基づいてセキュアインデックスを生成するインデックス生成装置であって、
    複数の前記値に基づいて値集合を生成する値集合生成部と、
    前記値集合を単語集合として扱い、該単語集合、前記第1の識別情報及び前記鍵に基づいてセキュアインデックスを生成するセキュアインデックス生成部と、
    を備えることを特徴とするインデックス生成装置。
  2. 請求項1に記載のインデックス生成装置であって、
    前記値の取りうる最小値を値最小値とした場合に、該値最小値から前記値までの1つ以上の値の集合を単語集合として扱い、該単語集合、前記第1の識別情報及び前記鍵に基づいてセキュアインデックスを生成することを特徴とするインデックス生成装置。
  3. 請求項1に記載のインデックス生成装置であって、
    前記値の取りうる最大値を値最大値とした場合に、該値最大値から前記値までの1つ以上の値の集合を単語集合として扱い、該単語集合、前記第1の識別情報及び前記鍵に基づいてセキュアインデックスを生成することを特徴とするインデックス生成装置。
  4. セキュアインデックスを生成し、該生成したセキュアインデックスに対して判定処理を実行する検索システムであって、
    請求項1乃至3の何れか1項に記載のインデックス生成装置がセキュアインデックスを生成する部と、
    前記鍵及び検索する値に基づいて、該検索する値についてのトラップドア情報を生成するトラップドア生成部と、
    前記トラップドア情報を用いて前記生成されたセキュアインデックスに対してセキュアインデックス判定処理を実行し、該判定処理の結果前記検索する値が前記セキュアインデックスに含まれていると判定できた場合は該セキュアインデックスを識別するための第2の識別情報を出力するセキュアインデックス検索部と、
    を備えることを特徴とする検索システム。
  5. 請求項1に記載のインデックス生成装置であって、
    前記値の取りうる最小値を値最小値とした場合に、該値最小値から前記値までの1つ以上の値の集合を単語集合として扱い、該単語集合、前記第1の識別情報及び前記鍵に基づいて第1のセキュアインデックスを生成し、
    前記値の取りうる最大値を値最大値とした場合に、該値最大値から前記値までの1つ以上の値の集合を単語集合として扱い、該単語集合、前記第1の識別情報及び前記鍵に基づいて第2のセキュアインデックスを生成し、前記第1のセキュアインデックス及び前記第2のセキュアインデックスを組とすることを特徴とするインデックス生成装置。
  6. セキュアインデックスを生成し、該生成したセキュアインデックスに対して判定処理を実行する検索システムであって、
    請求項5に記載のインデックス生成装置を前記第1のセキュアインデックス及び前記第2のセキュアインデックスを生成する部として備え、
    a<bを満たす値aと値bを入力として、それぞれについてのトラップドアt_a及びt_bを生成するトラップドア生成部と、
    前記トラップドアt_aを前記第1のセキュアインデックスに対する検索処理に用いるトラップドアとして、前記トラップドアt_bを前記第2のセキュアインデックスに対する検索処理に用いるトラップドアとして、セキュアインデックス判定処理を実行し、それぞれの判定処理の結果の積集合を出力するセキュアインデックス検索部と、
    を更に備えることを特徴とする検索システム。
  7. 請求項1に記載のインデックス生成装置であって、
    前記値の取りうる範囲内で、前記値を含む区間全てを含む集合を単語集合として扱い、該単語集合、前記第1の識別情報及び前記鍵に基づいてセキュアインデックスを生成することを特徴とするインデックス生成装置。
  8. セキュアインデックスを生成し、該生成したセキュアインデックスに対して判定処理を実行する検索システムであって、
    請求項7に記載のインデックス生成装置をセキュアインデックスを生成する部として備え、
    鍵及び検索する値を含む区間に基づいて、該検索する値についてのトラップドア情報を生成するトラップドア生成部と、
    前記トラップドア情報を用いて前記生成されたセキュアインデックスに対してセキュアインデックス判定処理を実行し、該判定処理の結果前記検索する値を含む区間が前記セキュアインデックスに含まれていると判定できた場合は該セキュアインデックスを識別するための第2の識別情報を出力するセキュアインデックス検索部と、
    を更に備えることを特徴とする検索システム。
  9. 請求項4、6及び8の何れか1項に記載の検索システムにおいて、
    値を何れかの区間に割当て、
    前記値集合に代えて前記値が割り当てられている区間の集合を単語集合として扱い、該単語集合、前記第1の識別情報及び前記鍵に基づいてセキュアインデックスを生成し、
    検索する値に割り当てられている区間及び鍵に基づいて、該検索する値についてのトラップドア情報を生成し、
    前記トラップドア情報を用いて前記生成されたセキュアインデックスに対してセキュアインデックス判定処理を実行し、該判定処理の結果前記検索する値に割り当てられている区間が前記セキュアインデックスに含まれていると判定できた場合は該セキュアインデックスを識別するための第2の識別情報を出力する、
    ことを特徴とする検索システム。
  10. 複数の値と、該複数の値を識別するための第1の識別情報と、鍵とを入力として受け付け、該入力に基づいてセキュアインデックスを生成し、該生成したセキュアインデックスに対して判定処理を実行する検索方法であって、
    複数の前記値に基づいて値集合を生成し、
    前記値集合を単語集合として扱い、該単語集合、前記第1の識別情報及び前記鍵に基づいてセキュアインデックスを生成し、
    前記鍵及び検索する値に基づいて、該検索する値についてのトラップドア情報を生成し、
    前記トラップドア情報を用いて前記生成されたセキュアインデックスに対してセキュアインデックス判定処理を実行し、該判定処理の結果前記検索する値が前記セキュアインデックスに含まれていると判定できた場合は該セキュアインデックスを識別するための第2の識別情報を出力する、ことを特徴とする検索方法。
JP2013526875A 2011-07-29 2012-07-27 情報漏えいに耐性を持つインデックス生成システム及びインデックス生成装置並びにその方法 Expired - Fee Related JP5942991B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2011166749 2011-07-29
JP2011166749 2011-07-29
PCT/JP2012/069116 WO2013018683A1 (ja) 2011-07-29 2012-07-27 情報漏えいに耐性を持つインデックス生成システム及びインデックス生成装置並びにその方法

Publications (2)

Publication Number Publication Date
JPWO2013018683A1 true JPWO2013018683A1 (ja) 2015-03-05
JP5942991B2 JP5942991B2 (ja) 2016-06-29

Family

ID=47629207

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013526875A Expired - Fee Related JP5942991B2 (ja) 2011-07-29 2012-07-27 情報漏えいに耐性を持つインデックス生成システム及びインデックス生成装置並びにその方法

Country Status (4)

Country Link
US (1) US9690845B2 (ja)
EP (1) EP2738689A4 (ja)
JP (1) JP5942991B2 (ja)
WO (1) WO2013018683A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150108516A (ko) * 2014-03-18 2015-09-30 한국전자통신연구원 범위 검색을 위한 복호화가능 인덱스 생성 방법, 검색 방법, 및 복호화 방법
CN110226190A (zh) * 2017-01-27 2019-09-10 三菱电机株式会社 检索装置、监视装置、监视方法和检索程序
SG10201706106QA (en) * 2017-07-26 2019-02-27 Huawei Int Pte Ltd Searchable Encryption with Hybrid Index
US10831911B2 (en) 2017-12-19 2020-11-10 Industrial Technology Research Institute Method, computer program product and processing system for generating secure alternative representation
WO2019142268A1 (ja) 2018-01-17 2019-07-25 三菱電機株式会社 登録装置、検索操作装置、データ管理装置、登録プログラム、検索操作プログラムおよびデータ管理プログラム
US10909261B2 (en) * 2018-12-12 2021-02-02 Industrial Technology Research Institute Method and computer program product for generating secure alternative representation for numerical datum

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006163995A (ja) * 2004-12-09 2006-06-22 Matsushita Electric Ind Co Ltd 索引作成装置及び文書検索装置
JP2008276550A (ja) * 2007-04-27 2008-11-13 Hitachi Ltd 文書検索システム及び文書検索方法
JP2011146895A (ja) * 2010-01-14 2011-07-28 Mitsubishi Electric Corp 情報処理システム及び管理装置及びサーバ装置及び情報処理装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3607107B2 (ja) 1998-03-13 2005-01-05 株式会社東芝 データ管理装置
US7532989B1 (en) * 2003-02-13 2009-05-12 Pentomics, Inc. System for analysis and design of direct digital frequency synthesizers
JP4395611B2 (ja) 2003-10-28 2010-01-13 独立行政法人情報通信研究機構 暗号化データベース検索装置および方法ならびに暗号化データベース検索プログラム
US7519835B2 (en) * 2004-05-20 2009-04-14 Safenet, Inc. Encrypted table indexes and searching encrypted tables
EP1757006A2 (en) * 2004-06-01 2007-02-28 Ben-Gurion University of the Negev Research and Development Authority Structure preserving database encryption method and system
JP2009532975A (ja) * 2006-04-03 2009-09-10 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ルックアップテーブルを用いる透かし埋め込み
US7689547B2 (en) 2006-09-06 2010-03-30 Microsoft Corporation Encrypted data search
KR100737359B1 (ko) 2006-10-04 2007-07-10 (주)이글로벌시스템 암호화된 컬럼의 인덱스 구축방법
US20080195597A1 (en) * 2007-02-08 2008-08-14 Samsung Electronics Co., Ltd. Searching in peer-to-peer networks
CN101593196B (zh) * 2008-05-30 2013-09-25 日电(中国)有限公司 用于快速密文检索的方法、装置和系统
US20100146299A1 (en) * 2008-10-29 2010-06-10 Ashwin Swaminathan System and method for confidentiality-preserving rank-ordered search
CN101770462A (zh) * 2008-12-30 2010-07-07 日电(中国)有限公司 用于密文索引和检索的装置和方法
JP5274271B2 (ja) 2009-01-16 2013-08-28 三菱電機株式会社 検索システム及び索引暗号化装置及び検索暗号化装置及び検索装置及びコンピュータプログラム及び検索方法
US8458451B2 (en) * 2009-01-20 2013-06-04 New York University Database outsourcing with access privacy
CA2665213A1 (en) 2009-05-01 2010-11-01 6989837 Canada Ltd. Mobile device time tracking system and method
IL199657A0 (en) * 2009-07-02 2011-08-01 Carmel Haifa University Economic Corp Ltd Face representation systems for privacy aware applications and methods useful in conjunction therewith
KR101683883B1 (ko) * 2009-12-31 2016-12-08 삼성전자주식회사 이동 통신 시스템에서 보안을 지원하는 방법 및 시스템

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006163995A (ja) * 2004-12-09 2006-06-22 Matsushita Electric Ind Co Ltd 索引作成装置及び文書検索装置
JP2008276550A (ja) * 2007-04-27 2008-11-13 Hitachi Ltd 文書検索システム及び文書検索方法
JP2011146895A (ja) * 2010-01-14 2011-07-28 Mitsubishi Electric Corp 情報処理システム及び管理装置及びサーバ装置及び情報処理装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JPN6016003613; 菅 孝徳、外2名: 'ブルームフィルタを用いた検索自由度の高い検索可能暗号の設計と実装評価' 情報処理学会研究報告 2011(平成23)年度(1) , 20110705, p.1-6, 一般社団法人情報処理学会 *
JPN6016003616; 大村 浩正、外2名: 'プログラムの情報フロー解析における暗号技術に基づく関数への対処法' コンピュータセキュリティシンポジウム2003 第2003巻,第15号, 20031029, p.277-282, 社団法人情報処理学会 *

Also Published As

Publication number Publication date
EP2738689A4 (en) 2015-04-29
US20140129567A1 (en) 2014-05-08
JP5942991B2 (ja) 2016-06-29
US9690845B2 (en) 2017-06-27
EP2738689A1 (en) 2014-06-04
WO2013018683A1 (ja) 2013-02-07

Similar Documents

Publication Publication Date Title
JP5942991B2 (ja) 情報漏えいに耐性を持つインデックス生成システム及びインデックス生成装置並びにその方法
KR102668962B1 (ko) 기본 데이터 식별에 의한 오브젝트들의 중복 제거
EP3096245B1 (en) Retrievable cryptograph processing system and retrievable cryptograph processing method
US9111106B2 (en) Data processing apparatus and data storage apparatus
KR102219476B1 (ko) 데이터를 암호화하는 방법 및 그를 위한 장치
WO2013005825A1 (ja) 情報処理装置、情報処理方法およびプログラム
JP5835326B2 (ja) 暗号化装置、暗号文比較システム、暗号文比較方法、および暗号文比較プログラム
JP6239213B1 (ja) 秘匿検索システム、秘匿検索方法及び秘匿検索プログラム
JP6225918B2 (ja) データベース検索装置、データベース検索方法及びプログラム
JPWO2012115031A1 (ja) 検索システム、検索システムの検索方法、情報処理装置、検索プログラム、対応キーワード管理装置および対応キーワード管理プログラム
JP2012164031A (ja) データ処理装置及びデータ保管装置及びデータ処理方法及びデータ保管方法及びプログラム
JP2019207281A (ja) 大小判定サーバ、大小判定暗号化システム、及び大小判定方法
JPWO2014092183A1 (ja) ビット列照合システムと方法とプログラム
JPWO2016129259A1 (ja) サーバ装置、データ検索システム、検索方法および記録媒体
WO2011013463A1 (ja) 範囲検索システム、範囲検索方法、及び範囲検索用プログラム
CN110226190A (zh) 检索装置、监视装置、监视方法和检索程序
JP2017516194A (ja) ストリーミングデータの匿名化
WO2017126000A1 (ja) 暗号化装置、検索装置、暗号化プログラム、検索プログラム、暗号化方法及び検索方法
JPWO2019053788A1 (ja) データ処理装置、データ処理方法及びデータ処理プログラム
JP6672451B2 (ja) 暗号化検索インデックスマージサーバ、暗号化検索インデックスマージシステム、及び暗号化検索インデックスマージ方法
JP6797337B2 (ja) メッセージ認証装置、メッセージ認証方法及びメッセージ認証プログラム
JP6351890B1 (ja) 検索装置、秘匿検索システム及び検索プログラム
Elbour et al. Weak compactness of almost limited operators
Lewandowski et al. State Encoding Based Watermarking of Sequential Circuits Using Hybridized Darwinian Genetic Algorithm
WO2017145250A1 (ja) 情報処理装置及び情報処理方法及び情報処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150604

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160202

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160330

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160426

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160509

R150 Certificate of patent or registration of utility model

Ref document number: 5942991

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees