JP6493402B2 - 追加装置、削除装置、追加依頼装置、データ検索システム、データ検索方法、および、コンピュータプログラム - Google Patents
追加装置、削除装置、追加依頼装置、データ検索システム、データ検索方法、および、コンピュータプログラム Download PDFInfo
- Publication number
- JP6493402B2 JP6493402B2 JP2016531110A JP2016531110A JP6493402B2 JP 6493402 B2 JP6493402 B2 JP 6493402B2 JP 2016531110 A JP2016531110 A JP 2016531110A JP 2016531110 A JP2016531110 A JP 2016531110A JP 6493402 B2 JP6493402 B2 JP 6493402B2
- Authority
- JP
- Japan
- Prior art keywords
- identifier
- information
- encrypted
- key information
- start point
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09C—CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- G09C1/00—Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
1.まず、始点配列において、キーワード列がw_iである行の番地列adr_{i,1}を読み出す。
2.次に、検索結果配列において、番地列がadr_{i,1}である行を参照することにより、データ列のid_{i,1}と、次番地列のadr_{i,2}を得る。得られたid_{i,1}は、1つ目の検索結果であり、adr_{i,2}は、2つめの検索結果が記憶されている検索結果配列の番地である。
3.次に、検索結果配列において、番地列がadr_{i,2}である行を参照することにより、データ列のid_{i,2}と、次番地列のadr_{i,3}を得る。得られたid_{i,2}は、2つ目の検索結果であり、adr_{i,3}は、3つ目の検索結果が記憶されている検索結果配列の番地である。
4.次に、検索結果配列において、番地列がadr_{i,3}である行を参照することにより、データ列のid_{i,3}と、次番地列のNULL値を得る。得られたid_{i,3}は、3つ目の検索結果である。また、次番地がNull値であるので、このノードが終端である。そこで、id_{i,1}, id_{i,2}, id_{i,3}が、w_iに関する検索結果となる。
ここで、wは、キーワードを表す。また、val_iは、キーワードwに関するi番目の検索結果の識別子を格納する。また、val_iは、Lビット列で表されるものとする。また、k_sは、暗号化線形リストの検索鍵を生成するための鍵を表す。また、nonは、ノード毎にランダムに生成される値(nonce)を表す。また、F1,F2は、鍵付き関数を表す。
F1(F2(k_s;w);non)◎[2つ目の要素]
=F1(F2(k_s;w);non)◎F1(F2(k_s;w);non)◎(val_i||adr_{i+1})
=val_i||adr_{i+1} ・・・(11)
となる。ここで、F2(k_s;w)は、キーワードwおよび上述の鍵k_sを用いて鍵付き関数F2により生成される情報である。F2(k_s;w)を、キーワードwについての検索鍵と呼ぶ。
1つ目のノード:(adr_1, F1(F2(k_s;w);non_1)◎(D1||adr_2), non_1)
2つ目のノード:(adr_2, F1(F2(k_s;w);non_2)◎(D2||adr_3), non_2)
3つ目のノード:(adr_3, F1(F2(k_s;w);non_3)◎(D3||NULL), non_3)
ここで、文書D2が削除される場合、番地がadr_2である2つめのノードを格納した行を暗号化検索結果配列から削除する必要がある。しかし、2つめのノードを格納した行を削除するだけでは、
1つ目のノード:(adr_1, F1(F2(k_s;w);non_1)◎(D1||adr_2), non_1)
3つ目のノード:(adr_3, F1(F2(k_s;w);non_3)◎(D3||NULL), non_3)
となり、暗号化線形リストの構造が壊れてしまう。つまり、1つ目のノードから得られる次番地adr_2に、次のノードが存在しないことになる。adr_2に記憶されているデータを削除する場合,線形リスト構造を壊さないようにadr_1に記憶されている値を更新する必要がある。具体的にはadr_1に記憶されている値を、以下のように更新すればよい。
1つ目のノード:(adr_1, F1(F2(k_s;w);non1)◎(D1||adr_3), non1)
このような更新は、adr_1とadr_2とadr_3とを用いて実行可能である。具体的には、adr_1に記憶されているF1(F2(k_s;w);nonce1)◎(D1||adr_2)に対し、(0^L||adr_2)および(0^L||adr_3)を、次式(12)のように排他的に加算すればよい。
=F1(F2(k_s;w);nonce1)◎(D1||adr_3) ・・・(12)
ここで、0^Lは、0をL個並べたビット列とする。また、以降、adr_2に対するadr_1を前番地と呼び、adr_2に対するadr_3を後番地と呼び、adr_2自体を中番地と呼ぶ。
1.削除配列から、データ識別子列がD_2である行を探し、その前番地adr_1、中番地adr_3、後番地adr_4を得る。
2.検索結果配列において、番地列が中番地adr_3の行を削除する。
3.検索結果配列において、番地が前番地adr_1の行の次番地をadr_4に変更する。
ここで、D_iは、データ識別子を表す。また、p_adrは前番地を表し、i_adrは中番地を表し、a_adrは後番地を表す。また、F4は鍵付き関数である。また、k_dは、削除鍵を生成するための鍵である。ここで、F4(k_d;D_i)は、データ識別子D_iおよび上述の鍵k_dを用いて鍵付き関数F4により生成される情報である。F4(k_d;D_i)を、データD_iについての削除鍵と呼ぶ。
=F4(k_d;D_i)◎F4(k_d;D_i)◎(p_adr||i_adr||a_adr)
=p_adr||i_adr||a_adr ・・・(14)
以上に説明したように,DSSEは3つの配列(暗号化始点配列、暗号化検索結果配列、暗号化削除配列)を用いて、キーワード検索、および、登録されている対象データの削除を行う。
・暗号化検索結果配列に、番地、暗号化データ識別子・次番地、nonce
・暗号化削除配列に、データ識別子、暗号化前・中・後番地
つまり、1つの対象データに関して、番地を1つ,データ識別子を1つ,暗号化された番地を4つ,暗号化された識別子を1つ、および、nonceを1つ記憶している。
P(k_p;W) ・・・(1)
ここで、Pは、鍵付き置換を表す。また、k_pは、キーワード鍵情報を表す。また、Wは、キーワードを表す。
F1(k_e;W) ・・・(2)
ここで、k_eは、始点鍵情報を生成するための鍵(始点鍵情報生成鍵)を表し、F1は、鍵付き関数を表す。このように、始点鍵情報は、該当するキーワードWを始点鍵情報生成鍵k_eによって鍵付き関数F1を用いて暗号化することによって生成された情報であってもよい。この場合、始点鍵情報は、キーワード毎に生成される。始点鍵情報が式(2)により表される場合、暗号化始点情報は、次式(3)により表される。
F1(k_e;W)◎D ・・・(3)
ここで、“◎”は、排他的論理和を表す。また、Dは、対象データ群のうちキーワードWに完全一致する検索結果リストにおける始点のデータ識別子を表す。
F2(k_d;D) ・・・(4)
ここで、Dは、該当するデータ識別子である。また、k_dは、前後識別子鍵情報を生成するための鍵(前後識別子鍵情報生成鍵)を表し、F2は、鍵付き関数を表す。このように、前後識別子鍵情報は、該当するデータ識別子Dを前後識別子鍵情報生成鍵k_dによって鍵付き関数F2を用いて暗号化することによって生成された情報であってもよい。この場合、前後識別子鍵情報は、データ識別子毎に生成される。前後識別子鍵情報が式(4)により表される場合、暗号化前後識別子情報は、次式(5)により表される。
F2(k_d;D)◎(D_p||D_a) ・・・(5)
ここで、“||”は、連結を表す。また、Dは、該当するデータ識別子である。また、D_pは、Dが含まれる検索結果リストにおいてDの前識別子を表し、D_aはDの後識別子を表す。
F3(k_s;W) ・・・(6)
ここで、k_sは、検索鍵情報を生成するための鍵(検索鍵情報生成鍵)を表し、F3は、鍵付き関数を表す。このように、検索鍵情報は、該当するキーワードWを検索鍵情報生成鍵k_sによって鍵付き関数F3を用いて暗号化することによって生成された情報であってもよい。この場合、検索鍵情報は、キーワード毎に生成される。前後識別子鍵情報が式(4)により表され、検索鍵情報が式(6)によって表される場合、暗号化前後識別子鍵情報は、次式(7)により表される。
Enc(F3(k_s;W);F2(k_d;D)) ・・・(7)
ここで、Encは、共通鍵暗号の暗号化関数を表す。
a1:暗号化始点配列格納部11において、暗号化キーワード情報P(k_p;W)に対応付けられている暗号化始点情報X=F1(k_e;W)◎Dを取得する。
a2:Xと始点鍵情報F1(k_e;W)との排他的論理和F1(k_e;W)◎Xを計算する。
ここで、排他的論理和演算の性質により、F1(k_e;W)◎X=F1(k_e;W)◎F1(k_e;W)◎D=Dとなり、始点Dが得られる。
a3:始点Dを検索結果に加える。
b1:暗号化検索結果配列格納部12において、データ識別子Dに対応付けられた暗号化前後識別子情報Y=F2(k_d;D)◎(D_p||D_a)および暗号化前後識別子鍵情報Z=Enc(F3(k_s;W);F2(k_d;D))を得る。
b2:Zを検索鍵情報F3(k_s;W)で復号する。すなわち、Dec(F3(k_s;W);Z)により、前後識別子鍵情報F2(k_d;D)が得られる。
b3:Yと前後識別子鍵情報F2(k_d;D)との排他的論理和F2(k_d;D)◎Yを計算する。ここで、排他的論理和演算の性質により、F2(k_d;D)◎Y=F2(k_d;D)◎F2(k_d;D)◎(D_p||D_a)=D_p||D_aとなり、前識別子D_pおよび後識別子D_aが得られる。
b4:D_aがNullでなければ、D_aをDとして検索結果に加え、手順b1から繰り返す。
c1:始点鍵情報F1(k_e;W)および追加識別子D_newを式(3)に適用し、新たな暗号化始点情報F1(k_e;W)◎D_newを算出する。
c2:暗号化始点配列格納部11において、暗号化キーワード情報P(k_p;W)に対応付けられた情報を、手順c1で算出した暗号化始点情報F1(k_e;W)◎D_newに更新する。
e1:暗号化検索結果配列格納部12において、更新前始点識別子D_fに対応付けられている暗号化前後識別子情報F2(k_d;D_f)◎(0^L ||D_a)を取得する。
e2:取得したF2(k_d;D_f)◎(0^L ||D_a)および追加識別子を前識別子として表す情報(D_new||0^L)の排他的論理和を演算することにより、更新前始点識別子D_fに対応する新たな暗号化前後識別子情報F2(k_d;D_f)◎(D_new||D_a)を算出する。
e3:暗号化検索結果配列格納部12において、更新前始点識別子D_fに対応付けられた暗号化前後識別子情報を、手順e2で算出した値に更新する。
e4:前後識別子鍵情報F2(k_d;D_new)および更新前始点識別子(0^L ||D_f)の排他的論理和を演算することにより、追加識別子D_fに対応する暗号化前後識別子情報としてF2(k_d;D_new)◎(0^L||D_f)を算出する。
e5:暗号化検索結果配列格納部12に、追加識別子D_newと、手順e4で算出した暗号化前後識別子情報F2(k_d;D_new)◎(0^L||D_f)と、暗号化前後識別子鍵情報Enc(F3(k_s;W);F2(k_d;D_new))とを対応付けた情報を追加する。
図9において、削除装置40は、削除要求受信部41と、前後識別子抽出部42と、暗号化検索結果配列削除部43とを備える。ここで、削除装置40が上述のサーバ100によって構成される場合、各機能ブロックは次のように構成される。削除要求受信部41は、ネットワークインタフェース1005と、ROM1003および記憶装置1004に記憶されたコンピュータ・プログラムおよび各種データをRAM1002に読み込んで実行するCPU1001とによって構成される。また、前後識別子抽出部42および暗号化検索結果配列削除部43は、ROM1003および記憶装置1004に記憶されたコンピュータ・プログラムおよび各種データをRAM1002に読み込んで実行するCPU1001によって構成される。なお、削除装置40の各機能ブロックのハードウェア構成は、上述の構成に限定されない。
g1:暗号化検索結果配列格納部12において、削除識別子D_delに対応する暗号化前後識別子情報Y=F2(k_d;D_del)◎(D_p||D_a)を取得する。
g2:Yおよび前後識別子鍵情報F2(k_d;D_del)の排他的論理和F2(k_d;D_del)◎Yを計算する。ここで、排他的論理和の性質により、F2(k_d;D_del)◎Y=F2(k_d;D_del)◎F2(k_d;D_del)◎(D_p||D_a)=D_p||D_aとなり、前識別子D_pおよび後識別子D_aが得られる。
h1:暗号化検索結果配列格納部12において、削除識別子D_delの行を削除する。
h2:暗号化検索結果配列格納部12において、削除識別子の前識別子D_pに対応付けられた暗号化前後識別子情報F2(k_d;D_p)◎(D_pp||D_del)を得る。
h3:手順h2で得られた暗号化前後識別子F2(k_d;D_p)◎(D_pp||D_del)に、削除識別子を後識別子として表す情報(0^L ||D_del)と、削除識別子の後識別子を後識別子として表す情報(0^L||D_a)とを排他的に加算する。これにより、削除識別子の前識別子D_pに対応する新たな暗号化前後識別子情報F2(k_d;D_p)◎(D_pp||D_a)が算出される。
h4:暗号化検索結果配列格納部12において、削除識別子の前識別子D_pに対応づけられた暗号化前後識別子情報を、手順h3で算出された値に更新する。
h5:暗号化検索結果配列格納部12において、削除識別子の後識別子D_aに対応付けられた暗号化前後識別子情報F2(k_d;D_a)◎(D_del||D_aa)を得る。
h6:手順h5で得られた暗号化前後識別子F2(k_d;D_a)◎(D_del||D_aa)に、削除識別子を前識別子として表す情報(D_del||0^L)と、削除識別子の前識別子を前識別子として表す情報(D_p||0^L)とを排他的に加算する。これにより、削除識別子の後識別子D_aに対応する新たな暗号化前後識別子情報F2(k_d;D_a)◎(D_p||D_aa)が算出される。
h7:暗号化検索結果配列格納部12において、削除識別子の後識別子D_aに対応づけられた暗号化前後識別子情報を、手順h6で算出された値に更新する。
10 検索補助データ格納装置
11 暗号化始点配列格納部
12 暗号化検索結果配列格納部
20 検索装置
21 検索要求受信部
22 始点復号部
23 検索結果抽出部
24 検索結果出力部
30 追加装置
31 追加要求受信部
32 始点抽出部
33 暗号化始点配列更新部
34 暗号化検索結果配列追加部
40 削除装置
41 削除要求受信部
42 前後識別子抽出部
43 暗号化検索結果配列削除部
50 検索依頼装置
51 入力部
52 暗号化キーワード算出部
53 始点鍵算出部
54 検索鍵算出部
55 検索要求送信部
60 追加依頼装置
61 入力部
62 暗号化キーワード算出部
63 始点鍵算出部
64 前後識別子鍵算出部
65 暗号化前後識別子鍵算出部
66 追加要求送信部
70 削除依頼装置
71 入力部
72 前後識別子鍵算出部
73 削除要求送信部
100 サーバ
200 端末
1001、2001 CPU
1002、2002 RAM
1003、2003 ROM
1004、2004 記憶装置
1005、2005 ネットワークインタフェース
2006 入力装置
2007 出力装置
Claims (9)
- 対象データ群に対する完全一致検索に用いられうる各キーワードをキーワード鍵情報により暗号化した暗号化キーワード情報と、前記対象データ群のうち該キーワードに完全一致する対象データのデータ識別子のリスト(検索結果リスト)における始点のデータ識別子に始点鍵情報を組み合わせて暗号化した暗号化始点情報とを対応付けた暗号化始点配列を格納する暗号化始点配列格納手段と;前記検索結果リストにおける各データ識別子と、前記検索結果リストにおいて該データ識別子の1つ前のデータ識別子(前識別子)および1つ後のデータ識別子(後識別子)に対して前後識別子鍵情報を組み合わせて暗号化した暗号化前後識別子情報と、前記前後識別子鍵情報を検索鍵情報により暗号化した暗号化前後識別子鍵情報とを対応付けた暗号化検索結果配列を格納する暗号化検索結果配列格納手段と;を備えた検索補助データ格納装置を用いる追加装置であって、
追加される対象データのデータ識別子(追加識別子)と、前記暗号化キーワード情報と、前記始点鍵情報と、前記前後識別子鍵情報と、前記暗号化前後識別子鍵情報とを追加要求として受信する追加要求受信手段と、
前記暗号化始点配列格納手段において、受信された暗号化キーワード情報に対応付けて格納された暗号化始点情報を、受信された始点鍵情報を用いて復号することにより、更新前の始点のデータ識別子(更新前始点識別子)を取得する始点抽出手段と、
前記暗号化始点配列格納手段において、受信された暗号化キーワード情報に対応付けられた暗号化始点情報を、前記追加識別子に前記始点鍵情報を組み合わせて暗号化した暗号化始点情報に更新する暗号化始点配列更新手段と、
前記暗号化検索結果配列格納手段において、前記更新前始点識別子に対応付けられて格納されている暗号化前後識別子情報を、該暗号化前後識別子情報に前記追加識別子を前識別子として組み合わせた情報に更新するとともに、前記追加識別子に対して、受信された前後識別子鍵情報に前記更新前始点識別子を後識別子として組み合わせて生成した前記暗号化前後識別子情報と、受信された暗号化前後識別子鍵情報とを対応付けた情報を追加する暗号化検索結果配列追加手段と、
を備えた追加装置。 - 前記追加識別子と、前記追加識別子の示す対象データが完全一致するキーワードと、鍵情報とを入力する入力手段と、
前記入力手段に入力された前記キーワードおよび前記鍵情報に基づいて、前記暗号化キーワード情報を算出する暗号化キーワード算出手段と、
前記入力手段に入力された前記キーワードおよび前記鍵情報に基づいて、前記始点鍵情報を算出する始点鍵算出手段と、
前記入力手段に入力された前記追加識別子および前記鍵情報に基づいて、前記前後識別子鍵情報を算出する前後識別子鍵算出手段と、
前記前後識別子鍵算出手段によって算出された前後識別子鍵情報と、前記入力手段に入力された前記キーワードおよび前記鍵情報とに基づいて、前記暗号化前後識別子鍵情報を算出する暗号化前後識別子鍵算出手段と、
前記入力手段に入力された前記追加識別子と、前記暗号化キーワード算出手段、前記始点鍵算出手段、前記前後識別子鍵算出手段、および、前記暗号化前後識別子鍵算出手段によって算出された前記暗号化キーワード情報と、前記始点鍵情報と、前記前後識別子鍵情報と、前記暗号化前後識別子鍵情報とを、前記追加要求として請求項1に記載の追加装置に送信する追加要求送信手段と、
を備えた追加依頼装置。 - 対象データ群に対する完全一致検索に用いられうる各キーワードをキーワード鍵情報により暗号化した暗号化キーワード情報と、前記対象データ群のうち該キーワードに完全一致する対象データのデータ識別子のリスト(検索結果リスト)における始点のデータ識別子に始点鍵情報を組み合わせて暗号化した暗号化始点情報とを対応付けた暗号化始点配列を格納する暗号化始点配列格納手段と;前記検索結果リストにおける各データ識別子と、前記検索結果リストにおいて該データ識別子の1つ前のデータ識別子(前識別子)および1つ後のデータ識別子(後識別子)に対して前後識別子鍵情報を組み合わせて暗号化した暗号化前後識別子情報と、前記前後識別子鍵情報を検索鍵情報により暗号化した暗号化前後識別子鍵情報とを対応付けた暗号化検索結果配列を格納する暗号化検索結果配列格納手段と;を備えた検索補助データ格納装置を用いる削除装置であって、
削除される対象データのデータ識別子(削除識別子)と、前記前後識別子鍵情報とを削除要求として受信する削除要求受信手段と、
前記暗号化検索結果配列格納手段において、前記削除識別子に対応付けられて格納されている暗号化前後識別子情報を、受信された前後識別子鍵情報を用いて復号することにより、前記削除識別子の前識別子および後識別子を取得する前後識別子抽出手段と、
前記暗号化検索結果配列格納手段において、前記削除識別子に対応付けられた情報を削除するとともに、前記削除識別子の前識別子に対応付けられた暗号化前後識別子情報に、前記削除識別子および前記削除識別子の後識別子を組み合わせることにより、該暗号化前後識別子情報が後識別子として前記削除識別子の後識別子を示すよう更新し、前記削除識別子の後識別子に対応付けられた暗号化前後識別子情報に、前記削除識別子および前記削除識別子の前識別子を組み合わせることにより、該暗号化前後識別子情報が前識別子として前記削除識別子の前識別子を示すよう更新する暗号化検索結果配列削除手段と、
を備えた削除装置。 - 対象データ群に対する完全一致検索に用いられうる各キーワードをキーワード鍵情報により暗号化した暗号化キーワード情報と、前記対象データ群のうち該キーワードに完全一致する対象データのデータ識別子のリスト(検索結果リスト)における始点のデータ識別子に始点鍵情報を組み合わせて暗号化した暗号化始点情報とを対応付けた暗号化始点配列を格納する暗号化始点配列格納手段と;前記検索結果リストにおける各データ識別子と、前記検索結果リストにおいて該データ識別子の1つ前のデータ識別子(前識別子)および1つ後のデータ識別子(後識別子)に対して前後識別子鍵情報を組み合わせて暗号化した暗号化前後識別子情報と、前記前後識別子鍵情報を検索鍵情報により暗号化した暗号化前後識別子鍵情報とを対応付けた暗号化検索結果配列を格納する暗号化検索結果配列格納手段と;を備えた検索補助データ格納装置と、
前記検索補助データ格納装置を用いる検索装置と、
前記検索補助データ格納装置を用いる追加装置と
を備え、
前記検索装置は、
前記暗号化キーワード情報と、前記始点鍵情報と、前記検索鍵情報とを検索要求として受信する検索要求受信手段と、前記暗号化始点配列格納手段において、受信された暗号化キーワード情報に対応付けて格納されている暗号化始点情報を、受信された始点鍵情報を用いて復号することにより、前記検索結果リストにおいて始点となるデータ識別子を得て検索結果に加える始点復号手段と、
前記暗号化検索結果配列格納手段において、前記検索結果に加えられたデータ識別子に対応付けて格納された暗号化前後識別子情報および暗号化前後識別子鍵情報を取得し、取得した暗号化前後識別子鍵情報を、受信された検索鍵情報を用いて復号して前後識別子鍵情報を取得し、取得した前後識別子鍵情報を用いて暗号化前後識別子情報を復号することにより、該データ識別子の1つ後のデータ識別子を得て前記検索結果に加える検索結果抽出処理を、1つ後のデータ識別子が得られなくなるまで繰り返す検索結果抽出手段と、
前記検索結果抽出手段によって抽出された検索結果を出力する検索結果出力手段と、
を備え、
前記追加装置は、
追加される対象データのデータ識別子(追加識別子)と、前記暗号化キーワード情報と、前記始点鍵情報と、前記前後識別子鍵情報と、前記暗号化前後識別子鍵情報とを追加要求として受信する追加要求受信手段と、
前記暗号化始点配列格納手段において、受信された暗号化キーワード情報に対応付けて格納された暗号化始点情報を、受信された始点鍵情報を用いて復号することにより、更新前の始点のデータ識別子(更新前始点識別子)を取得する始点抽出手段と、
前記暗号化始点配列格納手段において、受信された暗号化キーワード情報に対応付けられた暗号化始点情報を、前記追加識別子に前記始点鍵情報を組み合わせて暗号化した暗号化始点情報に更新する暗号化始点配列更新手段と、
前記暗号化検索結果配列格納手段において、前記更新前始点識別子に対応付けられて格納されている暗号化前後識別子情報を、該暗号化前後識別子情報に前記追加識別子を前識別子として組み合わせた情報に更新するとともに、前記追加識別子に対して、受信された前後識別子鍵情報に前記更新前始点識別子を後識別子として組み合わせて生成した前記暗号化前後識別子情報と、受信された暗号化前後識別子鍵情報とを対応付けた情報を追加する暗号化検索結果配列追加手段と、
を備えた
データ検索システム。 - キーワードおよび鍵情報を入力する入力手段と、前記入力手段に入力された前記キーワードおよび前記鍵情報に基づいて、前記暗号化キーワード情報を算出する暗号化キーワード算出手段と;前記入力手段に入力された前記キーワードおよび前記鍵情報に基づいて、前記始点鍵情報を算出する始点鍵算出手段と;前記入力手段に入力された前記キーワードおよび前記鍵情報に基づいて、前記検索鍵情報を算出する検索鍵算出手段と;前記暗号化キーワード算出手段、前記始点鍵算出手段および前記検索鍵算出手段によって算出された前記暗号化キーワード情報と、前記始点鍵情報と、前記検索鍵情報とを、前記検索要求として前記検索装置に送信する検索要求送信手段と;を備えた検索依頼装置をさらに備える請求項4に記載のデータ検索システム。
- 請求項3に記載の削除装置と、
請求項2に記載の追加依頼装置と
をさらに備えた請求項4又は請求項5に記載のデータ検索システム。 - 前記削除識別子および鍵情報を入力する入力手段と;前記入力手段に入力された前記削除識別子および前記鍵情報に基づいて、前記前後識別子鍵情報を算出する前後識別子鍵算出手段と;前記入力手段に入力された前記削除識別子と、前記前後識別子鍵算出手段によって算出された前記前後識別子鍵情報とを、前記削除要求として前記削除装置に送信する削除要求送信手段と;を備えた削除依頼装置をさらに備える請求項6に記載のデータ検索システム。
- 対象データ群に対する完全一致検索に用いられうる各キーワードをキーワード鍵情報により暗号化した暗号化キーワード情報と、前記対象データ群のうち該キーワードに完全一致する対象データのデータ識別子のリスト(検索結果リスト)における始点のデータ識別子に始点鍵情報を組み合わせて暗号化した暗号化始点情報とを対応付けた暗号化始点配列を格納する暗号化始点配列格納手段と;前記検索結果リストにおける各データ識別子と、前記検索結果リストにおいて該データ識別子の1つ前のデータ識別子(前識別子)および1つ後のデータ識別子(後識別子)に対して前後識別子鍵情報を組み合わせて暗号化した暗号化前後識別子情報と、前記前後識別子鍵情報を検索鍵情報により暗号化した暗号化前後識別子鍵情報とを対応付けた暗号化検索結果配列を格納する暗号化検索結果配列格納手段と;を備えた検索補助データ格納装置を用いるデータ検索方法であって、
前記暗号化キーワード情報と、前記始点鍵情報と、前記検索鍵情報とを検索要求として受信すると、
前記暗号化始点配列格納手段において、受信された暗号化キーワード情報に対応付けて格納されている暗号化始点情報を、受信された始点鍵情報を用いて復号することにより、前記検索結果リストにおいて始点となるデータ識別子を得て検索結果に加え、
前記暗号化検索結果配列格納手段において、前記検索結果に加えられたデータ識別子に対応付けて格納された暗号化前後識別子情報および暗号化前後識別子鍵情報を取得し、取得した暗号化前後識別子鍵情報を、受信された検索鍵情報を用いて復号して前後識別子鍵情報を取得し、取得した前後識別子鍵情報を用いて暗号化前後識別子情報を復号することにより、該データ識別子の1つ後のデータ識別子を得て前記検索結果に加える検索結果抽出処理を、1つ後のデータ識別子が得られなくなるまで繰り返し、
抽出した検索結果を出力するとともに、
追加される対象データのデータ識別子(追加識別子)と、前記暗号化キーワード情報と、前記始点鍵情報と、前記前後識別子鍵情報と、前記暗号化前後識別子鍵情報とを追加要求として受信すると、
前記暗号化始点配列格納手段において、受信された暗号化キーワード情報に対応付けて格納された暗号化始点情報を、受信された始点鍵情報を用いて復号することにより、更新前の始点のデータ識別子(更新前始点識別子)を取得し、
前記暗号化始点配列格納手段において、受信された暗号化キーワード情報に対応付けられた暗号化始点情報を、前記追加識別子に前記始点鍵情報を組み合わせて暗号化した暗号化始点情報に更新し、
前記暗号化検索結果配列格納手段において、前記更新前始点識別子に対応付けられて格納されている暗号化前後識別子情報を、該暗号化前後識別子情報に前記追加識別子を前識別子として組み合わせた情報に更新するとともに、前記追加識別子に対して、受信された前後識別子鍵情報に前記更新前始点識別子を後識別子として組み合わせて生成した前記暗号化前後識別子情報と、受信された暗号化前後識別子鍵情報とを対応付けた情報を追加するとともに、
削除される対象データのデータ識別子(削除識別子)と、前記前後識別子鍵情報とを削除要求として受信すると、
前記暗号化検索結果配列格納手段において、前記削除識別子に対応付けられて格納されている暗号化前後識別子情報を、受信された前後識別子鍵情報を用いて復号することにより、前記削除識別子の前識別子および後識別子を取得し、
前記暗号化検索結果配列格納手段において、前記削除識別子に対応付けられた情報を削除するとともに、前記削除識別子の前識別子に対応付けられた暗号化前後識別子情報に、前記削除識別子および前記削除識別子の後識別子を組み合わせることにより、該暗号化前後識別子情報が後識別子として前記削除識別子の後識別子を示すよう更新し、前記削除識別子の後識別子に対応付けられた暗号化前後識別子情報に、前記削除識別子および前記削除識別子の前識別子を組み合わせることにより、該暗号化前後識別子情報が前識別子として前記削除識別子の前識別子を示すよう更新する、データ検索方法。 - 対象データ群に対する完全一致検索に用いられうる各キーワードをキーワード鍵情報により暗号化した暗号化キーワード情報と、前記対象データ群のうち該キーワードに完全一致する対象データのデータ識別子のリスト(検索結果リスト)における始点のデータ識別子に始点鍵情報を組み合わせて暗号化した暗号化始点情報とを対応付けた暗号化始点配列を格納する暗号化始点配列格納手段と;前記検索結果リストにおける各データ識別子と、前記検索結果リストにおいて該データ識別子の1つ前のデータ識別子(前識別子)および1つ後のデータ識別子(後識別子)に対して前後識別子鍵情報を組み合わせて暗号化した暗号化前後識別子情報と、前記前後識別子鍵情報を検索鍵情報により暗号化した暗号化前後識別子鍵情報とを対応付けた暗号化検索結果配列を格納する暗号化検索結果配列格納手段と;を備えた検索補助データ格納装置を用いるコンピュータプログラムであって、
前記暗号化キーワード情報と、前記始点鍵情報と、前記検索鍵情報とを検索要求として受信する検索要求受信ステップと、
前記暗号化始点配列格納手段において、受信された暗号化キーワード情報に対応付けて格納されている暗号化始点情報を、受信された始点鍵情報を用いて復号することにより、前記検索結果リストにおいて始点となるデータ識別子を得て検索結果に加える始点復号ステップと、
前記暗号化検索結果配列格納手段において、前記検索結果に加えられたデータ識別子に対応付けて格納された暗号化前後識別子情報および暗号化前後識別子鍵情報を取得し、取得した暗号化前後識別子鍵情報を、受信された検索鍵情報を用いて復号して前後識別子鍵情報を取得し、取得した前後識別子鍵情報を用いて暗号化前後識別子情報を復号することにより、該データ識別子の1つ後のデータ識別子を得て前記検索結果に加える検索結果抽出処理を、1つ後のデータ識別子が得られなくなるまで繰り返す検索結果抽出ステップと、
前記検索結果抽出ステップで抽出された検索結果を出力する検索結果出力ステップと、
追加される対象データのデータ識別子(追加識別子)と、前記暗号化キーワード情報と、前記始点鍵情報と、前記前後識別子鍵情報と、前記暗号化前後識別子鍵情報とを追加要求として受信する追加要求受信ステップと、
前記暗号化始点配列格納手段において、受信された暗号化キーワード情報に対応付けて格納された暗号化始点情報を、受信された始点鍵情報を用いて復号することにより、更新前の始点のデータ識別子(更新前始点識別子)を取得する始点抽出ステップと、
前記暗号化始点配列格納手段において、受信された暗号化キーワード情報に対応付けられた暗号化始点情報を、前記追加識別子に前記始点鍵情報を組み合わせて暗号化した暗号化始点情報に更新する暗号化始点配列更新ステップと、
前記暗号化検索結果配列格納手段において、前記更新前始点識別子に対応付けられて格納されている暗号化前後識別子情報を、該暗号化前後識別子情報に前記追加識別子を前識別子として組み合わせた情報に更新するとともに、前記追加識別子に対して、受信された前後識別子鍵情報に前記更新前始点識別子を後識別子として組み合わせて生成した前記暗号化前後識別子情報と、受信された暗号化前後識別子鍵情報とを対応付けた情報を追加する暗号化検索結果配列追加ステップと、
削除される対象データのデータ識別子(削除識別子)と、前記前後識別子鍵情報とを削除要求として受信する削除要求受信ステップと、
前記暗号化検索結果配列格納手段において、前記削除識別子に対応付けられて格納されている暗号化前後識別子情報を、受信された前後識別子鍵情報を用いて復号することにより、前記削除識別子の前識別子および後識別子を取得する前後識別子抽出ステップと、
前記暗号化検索結果配列格納手段において、前記削除識別子に対応付けられた情報を削除するとともに、前記削除識別子の前識別子に対応付けられた暗号化前後識別子情報に、前記削除識別子および前記削除識別子の後識別子を組み合わせることにより、該暗号化前後識別子情報が後識別子として前記削除識別子の後識別子を示すよう更新し、前記削除識別子の後識別子に対応付けられた暗号化前後識別子情報に、前記削除識別子および前記削除識別子の前識別子を組み合わせることにより、該暗号化前後識別子情報が前識別子として前記削除識別子の前識別子を示すよう更新する暗号化検索結果配列削除ステップと、
をコンピュータ装置に実行させるコンピュータプログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014137024 | 2014-07-02 | ||
JP2014137024 | 2014-07-02 | ||
PCT/JP2015/003270 WO2016002198A1 (ja) | 2014-07-02 | 2015-06-30 | 検索補助データ格納装置、検索装置、追加装置、削除装置、検索依頼装置、追加依頼装置、削除依頼装置、データ検索システム、データ検索方法、および、記憶媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2016002198A1 JPWO2016002198A1 (ja) | 2017-05-25 |
JP6493402B2 true JP6493402B2 (ja) | 2019-04-03 |
Family
ID=55018775
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016531110A Active JP6493402B2 (ja) | 2014-07-02 | 2015-06-30 | 追加装置、削除装置、追加依頼装置、データ検索システム、データ検索方法、および、コンピュータプログラム |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP6493402B2 (ja) |
WO (1) | WO2016002198A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018211670A1 (ja) | 2017-05-18 | 2018-11-22 | 三菱電機株式会社 | 検索装置、タグ生成装置、クエリ生成装置、秘匿検索システム、検索プログラム、タグ生成プログラム及びクエリ生成プログラム |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2778953A4 (en) * | 2011-12-09 | 2015-09-09 | Nec Corp | CODED SEARCH DATABASE DEVICE, METHOD FOR ADDING AND DELETING DATA FOR CODED SEARCH, AND ADD / REMOVE PROGRAM |
-
2015
- 2015-06-30 JP JP2016531110A patent/JP6493402B2/ja active Active
- 2015-06-30 WO PCT/JP2015/003270 patent/WO2016002198A1/ja active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2016002198A1 (ja) | 2016-01-07 |
JPWO2016002198A1 (ja) | 2017-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110337649B (zh) | 用于搜索模式未察觉的动态对称可搜索加密的方法和系统 | |
CN106815350B (zh) | 一种云环境中动态的密文多关键词模糊搜索方法 | |
US10489604B2 (en) | Searchable encryption processing system and searchable encryption processing method | |
US8533489B2 (en) | Searchable symmetric encryption with dynamic updating | |
US10664610B2 (en) | Method and system for range search on encrypted data | |
WO2015055762A1 (en) | System and method for dynamic, non-interactive, and parallelizable searchable symmetric encryption | |
JP6239213B1 (ja) | 秘匿検索システム、秘匿検索方法及び秘匿検索プログラム | |
JP5348337B2 (ja) | 暗号化データベース管理システム、クライアントおよびサーバ、自然結合方法およびプログラム | |
JP5392439B2 (ja) | 暗号化検索データベース装置、暗号化検索用データの追加削除方法および追加削除プログラム | |
KR101979267B1 (ko) | 클라우드 저장 기반 암호화 시스템 및 방법 | |
CN115225409B (zh) | 基于多备份联合验证的云数据安全去重方法 | |
WO2014141802A1 (ja) | 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム | |
JP2017044779A (ja) | 検索可能暗号処理システム | |
JP6672451B2 (ja) | 暗号化検索インデックスマージサーバ、暗号化検索インデックスマージシステム、及び暗号化検索インデックスマージ方法 | |
CN104794243A (zh) | 基于文件名的第三方密文检索方法 | |
JP6493402B2 (ja) | 追加装置、削除装置、追加依頼装置、データ検索システム、データ検索方法、および、コンピュータプログラム | |
KR102602189B1 (ko) | 클라우드 기반의 문서 공유 서비스를 운영하기 위한 문서 공유 서비스 서버 및 그 동작 방법 | |
JP7217844B1 (ja) | 秘匿検索システムおよび秘匿検索方法 | |
US9058507B2 (en) | Signal processor with an encrypting or decrypting device in a memory system | |
CN114124469A (zh) | 数据处理的方法、装置和设备 | |
JP6462968B1 (ja) | データ管理装置、データ管理方法及びデータ管理プログラム | |
TWI558152B (zh) | Key replacement method and computer program products | |
KR20180099310A (ko) | 검색 가능 암호 시스템에서의 검색 장치 및 방법 | |
JP7217836B1 (ja) | データ管理装置、秘匿検索システム、秘匿検索方法、および、秘匿検索プログラム | |
CN117494159A (zh) | 可实现密文批量分享的动态可搜索对称加密方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161220 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180515 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20181113 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190111 |
|
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: 20190205 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190218 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6493402 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |