JPWO2017122696A1 - 秘匿検索システム、秘匿検索方法及び秘匿検索プログラム - Google Patents
秘匿検索システム、秘匿検索方法及び秘匿検索プログラム Download PDFInfo
- Publication number
- JPWO2017122696A1 JPWO2017122696A1 JP2017547007A JP2017547007A JPWO2017122696A1 JP WO2017122696 A1 JPWO2017122696 A1 JP WO2017122696A1 JP 2017547007 A JP2017547007 A JP 2017547007A JP 2017547007 A JP2017547007 A JP 2017547007A JP WO2017122696 A1 JPWO2017122696 A1 JP WO2017122696A1
- Authority
- JP
- Japan
- Prior art keywords
- search
- encryption
- storage unit
- keyword
- management
- 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
Links
- 238000000034 method Methods 0.000 title claims description 177
- 238000007726 management method Methods 0.000 claims description 256
- 238000012545 processing Methods 0.000 claims description 69
- 238000013500 data storage Methods 0.000 claims description 27
- 230000005540 biological transmission Effects 0.000 description 68
- 230000006870 function Effects 0.000 description 58
- 238000012217 deletion Methods 0.000 description 33
- 230000037430 deletion Effects 0.000 description 33
- 238000010586 diagram Methods 0.000 description 23
- 238000004891 communication Methods 0.000 description 17
- 238000012795 verification Methods 0.000 description 13
- 238000012986 modification Methods 0.000 description 10
- 230000004048 modification Effects 0.000 description 10
- 238000004458 analytical method Methods 0.000 description 6
- 239000000284 extract Substances 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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
- G06F21/6227—Protecting 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 where protection concerns the structure of data, e.g. records, types, queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/14—Details of searching files based on file metadata
- G06F16/148—File search processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Library & Information Science (AREA)
- Data Mining & Analysis (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
Description
記憶装置である管理記憶部を備え、保管データが暗号化された暗号化データと、前記保管データに関連付けられた関連キーワードに対し確率暗号方式の暗号化を実行することにより生成された暗号化タグとを受信し、前記暗号化タグと前記暗号化データとを対応付けて前記管理記憶部に保管する管理装置と、
前記管理記憶部に保管されている前記暗号化データを検索する検索キーワードを取得すると、前記検索キーワードから一意に定まる確定的情報を算出し、前記検索キーワードに対し前記確定的情報を用いて確率暗号方式の暗号化を実行することにより検索クエリを生成し、前記検索クエリを前記管理装置に送信する検索装置と
を備え、
前記管理装置は、
前記検索装置から前記検索クエリを受信すると、前記検索クエリを復号して得られる前記検索キーワードが、前記管理記憶部に保管されている前記暗号化タグを復号して得られる関連キーワードと一致するか否かを判定する。
***構成の説明***
図1を用いて、本実施の形態に係る秘匿検索システム100の構成について説明する。
秘匿検索システム100は、鍵生成装置200と、登録装置300と、検索装置400と、管理装置500とを有する。
秘匿検索システム100では、鍵生成装置200と、複数の登録装置300と、複数の検索装置400と、管理装置500とのそれぞれがネットワーク101を経由して接続される。
ネットワーク101は、鍵生成装置200と、複数の登録装置300と、複数の検索装置400と、管理装置500とを接続する通信路である。ネットワーク101は、具体的には、インターネット、LAN(Local Area Network)であり、他の種類のネットワークが用いられてもよい。
登録装置300は、削除要求装置としても機能する。即ち、登録装置300は、管理装置500に対して、管理装置500に保管されている暗号化データ及び暗号化タグの削除を要求する。以下において、暗号化データ及び暗号化タグを保管暗号化データともいう。
管理装置500は、検索装置としても機能する。即ち、管理装置500は、検索装置400からの検索の要求があれば、暗号化タグの集合と検索クエリとを照合し、検索結果を検索装置400に送信する。
管理装置500は、削除装置としても機能する。即ち、管理装置500は、登録装置300から暗号化データ及び暗号化タグ、即ち保管暗号化データの削除の要求があれば、保管している保管暗号化データを削除する。
まず、図2を用いて鍵生成装置200の構成について説明する。
本実施の形態において、鍵生成装置200は、コンピュータである。鍵生成装置200は、CPU(Central Processing Unit)910、記憶装置920、入力インタフェース930、出力インタフェース940及び通信装置950といったハードウェアを備える。記憶装置920は、メモリ921と補助記憶装置922とを含む。
鍵生成装置200は、機能構成として、パラメータ受信部201と、鍵生成部202と、送信部209と、鍵生成記憶部250とを備える。以下の説明では、鍵生成装置200におけるパラメータ受信部201と、鍵生成部202と、送信部209との機能を、鍵生成装置200の「部」の機能という。鍵生成装置200の「部」の機能は、ソフトウェアで実現される。
また、鍵生成記憶部250は、メモリ921で実現される。鍵生成記憶部250は、鍵生成装置200の各部で使用されるデータを記憶する。
鍵生成部202は、パラメータ受信部201から受け取ったパラメータλを入力として、データを暗号化又は復号するための鍵K1及び鍵K2を生成する。
送信部209は、鍵生成部202で生成された鍵K1を、登録装置300と検索装置400とに送信する。また、送信部209は、鍵K2を、検索装置400と管理装置500とに送信する。
次に、図3を用いて登録装置300の構成について説明する。
本実施の形態において、登録装置300は、コンピュータである。登録装置300は、CPU910、記憶装置920、入力インタフェース930、出力インタフェース940及び通信装置950といったハードウェアを備える。記憶装置920は、メモリ921と補助記憶装置922とを含む。
登録装置300は、機能構成として、受信部301と、鍵保管部302と、入力部311と、暗号化部312と、送信部319と、登録記憶部350とを備える。以下の説明では、登録装置300における受信部301と、鍵保管部302と、入力部311と、暗号化部312と、送信部319との機能を、登録装置300の「部」の機能という。登録装置300の「部」の機能は、ソフトウェアで実現される。
また、登録記憶部350は、メモリ921で実現される。登録記憶部350は、登録装置300の各部で使用されるデータを記憶する。
鍵保管部302は、受信部301から受け取った鍵K1を登録記憶部350に保管する。
入力部311は、データ登録者から入力された保管データDと保管データ名ID(D)と保管データDに関連付ける関連キーワードwの集合W(D)とを、入力インタフェース930を介して受け取る。また、入力部311は、保管データDを削除する削除要求339を受け取る。
鍵K1を用いて暗号化された保管データDを暗号化データE(D)とする。鍵K1と第1乱数rの集合R(D)とを用いて確率的に暗号化された関連キーワードwの集合W(D)を暗号化タグcの集合C(D)とする。
即ち、暗号化部312は、保管データ名ID(D)と、暗号化タグcの集合C(D)の組(ID(D),C(D))と、第1乱数rの集合R(D)とを生成する。以降では、(ID(D),C(D))を保管暗号化データと書く場合がある。なお、保管データ名ID(D)には暗号化データE(D)が対応付けられているものとする。つまり、保管暗号化データ(ID(D),C(D))とは、保管データ名ID(D)に対応付けられた暗号化データE(D)と暗号化タグcの集合C(D)との組を表すものとする。
なお、関連キーワードwの集合を関連キーワードW(D)、第1乱数rの集合を第1乱数R(D)、暗号化タグcの集合を暗号化タグC(D)と書く場合もある。
次に、図4を用いて検索装置400の構成について説明する。
本実施の形態において、検索装置400は、コンピュータである。検索装置400は、CPU910、記憶装置920、入力インタフェース930、出力インタフェース940及び通信装置950といったハードウェアを備える。記憶装置920は、メモリ921と補助記憶装置922とを含む。
検索装置400は、機能構成として、受信部401と、入力部411と、暗号化部412と、送信部419と、鍵保管部421と、補助情報保管部422と、検索結果出力部439と、検索記憶部450とを備える。以下の説明では、検索装置400における受信部401と、入力部411と、暗号化部412と、送信部419と、鍵保管部421と、補助情報保管部422と、検索結果出力部439との機能を、検索装置400の「部」の機能という。検索装置400の「部」の機能は、ソフトウェアで実現される。
また、検索記憶部450は、メモリ921で実現される。検索記憶部450は、検索装置400の各部で使用されるデータを記憶する。
鍵保管部421は、受信部401から受け取った鍵K1及び鍵K2を検索記憶部450に保管する。
入力部411は、データ検索者から入力された検索キーワードs及び確定的指示fを受け取る。確定的指示fは、具体的にはフラグであり、高速索引作成フラグともいう。
検索キーワードsの確定的情報tとは、検索キーワードsと一対一対応する識別子である。即ち、ある検索キーワードsとs’の確定的情報をそれぞれtとt’とするとき、sとs’が一致することは、tとt’が一致することと同値である。確定的情報tは、具体的には、ハッシュ関数といった手法で計算される。確定的情報tは、確定値ともいう。
送信部419は、暗号化部412から受け取った確定的情報t又は検索クエリQ(s)を管理装置500へ通信装置950を介して送信する。
検索結果出力部439は、受信部401から受け取った検索結果I(s)に基づき、出力インタフェース940を介して検索結果をデータ検索者に対して出力する。
次に、図5を用いて管理装置500の構成について説明する。
本実施の形態において、管理装置500は、コンピュータである。管理装置500は、CPU910、記憶装置920、入力インタフェース930、出力インタフェース940及び通信装置950といったハードウェアを備える。記憶装置920は、メモリ921と補助記憶装置922とを含む。
管理装置500は、機能構成として、受信部501と、鍵保管部511と、データ保管部521と、高速照合部531と、照合部502と、送信部509と、管理記憶部550とを備える。以下の説明では、管理装置500における受信部501と、鍵保管部511と、データ保管部521と、高速照合部531と、照合部502と、送信部509との機能を、管理装置500の「部」の機能という。管理装置500の「部」の機能は、ソフトウェアで実現される。
また、管理記憶部550は、メモリ921で実現される。管理記憶部550は、管理装置500の各部で使用されるデータを記憶する。
鍵保管部511は、受信部501から受け取った鍵K2を管理記憶部550に保管する。
データ保管部521は、受信部501から受け取った保管暗号化データ(ID(D),C(D))を管理記憶部550に保管する。データ保管部521は、必要があれば、送信されてきた日時といった情報を保管暗号化データ(ID(D),C(D))と共に保管してもよい。また、データ保管部521は、受信部501から受け取った削除要求339に基づき、管理記憶部550に保管している保管暗号化データ(ID(D),C(D))を削除する。
なお、以降の説明では、保管暗号化データ(ID(D),C(D))を保管暗号化データ551、暗号化データE(D)を暗号化データ552、暗号化タグcの集合C(D)を暗号化タグ553として説明する場合がある。
送信部509は、照合部502又は高速照合部531から受け取った検索結果I(s)を検索装置400へ送信する。
CPU910は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。CPU910は、プロセッシングを行うIC(Integrated Circuit)である。CPU910は、プロセッサともいう。
出力インタフェース940は、ディスプレイといった表示機器のケーブルが接続されるポートである。出力インタフェース940は、具体的には、USB端子又はHDMI(登録商標)(High Definition Multimedia Interface)端子である。ディスプレイは、具体的には、LCD(Liquid Crystal Display)である。
なお、秘匿検索プログラム620は、秘匿検索システム100の各装置の「部」として説明している機能を実現するプログラムである。また、秘匿検索プログラムプロダクトと称されるものは、「部」として説明している機能を実現するプログラムが記録された記憶媒体及び記憶装置であり、見た目の形式に関わらず、コンピュータ読み取り可能なプログラムをロードしているものである。
次に、本実施の形態に係る秘匿検索システム100における秘匿検索方法610及び秘匿検索プログラム620による秘匿検索処理S100について説明する。
秘匿検索処理S100は、鍵生成保管処理S110と、登録処理S120と、検索処理S130と、削除処理S140とを有する。
図6を用いて、本実施の形態に係る秘匿検索システム100の鍵生成保管処理S110について説明する。
図6のステップS601からステップS609は、鍵生成装置200と、登録装置300と、検索装置400と、管理装置500とが実行する処理である。ステップS601からステップS603は鍵生成装置200により実行される鍵生成処理S112である。ステップS604からステップS605は登録装置300により実行される鍵生成処理S113である。ステップS606からステップS607は検索装置400により実行される鍵生成処理S114である。ステップS608からステップS609は管理装置500により実行される鍵生成処理S115である。
ステップS602において、鍵生成装置200の鍵生成部202は、ステップS601において鍵生成装置200のパラメータ受信部201が受信したパラメータλを入力として、鍵K1及び鍵K2を生成する。
ステップS603において、鍵生成装置200の送信部209は、ステップS602において鍵生成装置200の鍵生成部202が生成した鍵K1及び鍵K2を入力として、鍵K1を登録装置300と検索装置400とに送信する。また、鍵生成装置200の送信部209は、鍵K2を検索装置400と管理装置500とに送信する。
ステップS605において、登録装置300の鍵保管部302は、ステップS604において登録装置300の受信部301が受信した鍵K1を保管する。
ステップS607において、検索装置400の鍵保管部421は、ステップS606において検索装置400の受信部401が受信した鍵K1及び鍵K2を保管する。
ステップS609において、管理装置500の鍵保管部511は、ステップS608において管理装置500の受信部501が受信した鍵K2を保管する。
なお、鍵K1,K2は秘密情報であるため、鍵保管部302と、鍵保管部421とは、鍵K1,K2が外部に漏れないように厳重に保管する必要がある。
図7を用いて、本実施の形態に係る秘匿検索システム100の登録処理S120について説明する。
図7のステップS701からステップS708は、登録装置300と検索装置400と管理装置500とが実行する処理である。ステップS701からステップS704は登録装置300により実行される暗号化処理S123である。ステップS705からステップS706は検索装置400により実行される第1乱数保管処理S124である。ステップS707からステップS708は管理装置500により実行されるデータ保管処理S125である。
以下に具体的に説明する。
暗号化部312は、関連キーワードwの集合W(D)の要素の一つを関連キーワードwとする。暗号化部312は、全ての関連キーワードwに対して、乱数生成器によって第1乱数rを生成し、c=E(K1,E(K1,w),r)とする。なお、Eは暗号化関数とする。具体的には、EはAES(Advanced Encryption Standard)のような共通鍵暗号方式、HMAC(Hash−based Message Authentication Code)のようなメッセージ認証符号、SHA(Secure Hash Algorithm)−256のようなハッシュ関数である。ここで、全ての関連キーワードwに対して計算した暗号文、即ち暗号化タグcの集合をC(D)と書く。また、このとき生成した全ての第1乱数rの集合をR(D)と書く。
以上のように、暗号化部312は、保管暗号化データ(ID(D),C(D))と第1乱数rの集合R(D)とを生成する。
ステップS704において、登録装置300の送信部319は、ステップS702で生成した第1乱数rの集合R(D)を検索装置400へ送信する。
ステップS706において、検索装置400の補助情報保管部422は、ステップS705で受信部401が受信した第1乱数rの集合R(D)を保管する。以降では、補助情報保管部422に蓄積された全ての第1乱数rの集合をRと書く。
以下に具体的に説明する。
ステップS708において、管理装置500のデータ保管部521は、ステップS707で受信部501が受信した保管暗号化データ(ID(D),C(D))を管理記憶部550に保管する。上述したように、保管暗号化データ(ID(D),C(D))は、保管データ名ID(D)に対応付けられた暗号化データE(D)と、暗号化タグC(D)との組である。
図8を用いて、本実施の形態に係る秘匿検索システム100の検索処理S130について説明する。
図8のステップS801からステップS811は、検索装置400と管理装置500とが実行する処理である。ステップS801からステップS803は検索装置400により実行される検索クエリ生成処理S134である。ステップS804からステップS808は管理装置500によって実行される判定処理S135である。ステップS809からステップS811は検索装置400により実行される結果出力処理S136である。
以下に具体的に説明する。
ここで、確定的指示fは、検索キーワードsを暗号化する際に確定的情報tを用いるか否かを指示するものであり、具体的にはフラグである。確定的指示fは、高速索引作成フラグともいう。また、検索キーワードsを暗号化する際に確定的情報tを用いるとは、検索クエリQ(s)に高速検索に有効な情報である確定的情報tを埋め込むことを意味する。
検索装置400は、確定的指示fを取得し、確定的指示fにより確定的情報tを用いると指示された場合、検索キーワードsに対し確定的情報tを用いて確率暗号方式の暗号化を実行する。
また、検索装置400は、確定的指示fにより確定的情報tを用いないと指示された場合、検索キーワードsに対し確定的情報を用いずに確率暗号方式の暗号化を実行する。
ステップS401において、検索装置400は、検索キーワードsに対して確定暗号方式の暗号化を実行することにより確定的情報tを算出する。具体的には、暗号化部412は、検索キーワードsの確定的情報tをt=E(K1,s)とする。
ステップS402において、暗号化部412は、確定的情報tを算出すると、算出した確定的情報tが検索記憶部450に蓄積されているか否かを判定する。暗号化部412は、算出した確定的情報tが検索記憶部450に蓄積されている場合(S402でYES)、この確定的情報tを管理装置500に送信する。
具体的には、暗号化部412は、集合Tに、算出した確定的情報tが含まれているか確認する。算出した確定的情報tが集合Tに含まれている場合、暗号化部412は、算出した確定的情報tを送信部419へ出力する(ステップS403)。
暗号化部412は、検索クエリQ(s)を以下のように生成する。暗号化部412は、第2乱数を生成し、第2乱数と、登録装置300から受信した第1乱数Rと、確定的情報tとを用いて、検索キーワードsに対し確率暗号方式の暗号化を実行する。具体的には、暗号化部412は、第1乱数の集合Rの全ての要素ri(0<=i<|R|)に対して、暗号文diをdi=E(K1,t,ri)とする。次に、それぞれの暗号文diに対して、暗号文kiをki=E(K2,di)とする。さらに、乱数生成器によって第2乱数uiを生成し、暗号文qiをqi=(E(ki,t||ui),ui)とする。このとき、確定的指示fが偽の場合は、tの代わりに意味のない乱数を用いる。ここで、演算||はビット列の連結を表す。生成した暗号文qiの集合をQ(s)と書く。暗号文qの集合Q(s)を検索クエリと呼ぶ。最後に、検索クエリQ(s)を送信部419へ出力する(ステップS405)。また、確定的指示f及び確定的情報tを補助情報保管部422に出力する。
ここで、暗号文qiに第2乱数uiを含めず、代わりにqi=E(ki,0λ||t||ui)とすることもできる。検索クエリQ(s)と暗号化タグC(D)との一致判定の際は、暗号文qiを復号した結果、平文に0λが現れるならば一致、そうでなければ不一致として判定できる。
ステップS406において、送信部419は、確定的情報t又は検索クエリQ(s)を管理装置500に送信する。
以上でステップS802の処理を終わり、図8のステップS803に進む。
以上で検索装置400の検索クエリ生成処理S134の処理を終わり、ステップS804に進む。
管理装置500は、検索装置400から確定的情報tを受信すると、確定的情報tに対応する暗号化データE(D)を管理記憶部550から取得し、取得した暗号化データE(D)を含む検索結果I(s)を検索装置400に送信する。
以下に具体的に説明する。
ステップS804aにおいて、受信部501が検索クエリQ(s)を受信した場合、処理はステップ805に進み、受信部501が確定的情報tを受信した場合、処理はステップ807に進む。
照合部502は、空の検索結果I(s)を用意する。照合部502は、全ての保管暗号化データ(ID(D),C(D))と検索クエリQ(s)に対して、以下の処理を行う。暗号化タグC(D)の全ての要素cと、検索クエリQ(s)の全ての要素qの、任意のペア(c,q)に対して、一致判定を以下のようにして行う。qの2つの要素をe1,e2とする。暗号文kをk=E(K2,c)とする。復号関数であるDecを用いて、m=Dec(k,e1)とする。mをm1とm2に分割する。m2がe2と一致するとき、cとqは一致したと判定する。これは即ち、検索クエリQ(s)の要素と一致する要素が暗号化タグC(D)に含まれていることを示している。このとき、m1は確定的情報tである。cとqが一致した場合、検索結果I(s)に保管データ名ID(D)を加える。ここで、検索結果I(s)に保管データ名ID(D)を加えるとは、保管データ名ID(D)に対応付けられた暗号化データE(D)を検索結果I(s)に含めることを意味する。
上記の処理は、検索クエリQ(s)を復号して得られる検索キーワードsが、管理記憶部550に保管されている暗号化タグC(D)を復号して得られる関連キーワードwと一致するか否かを判定する処理である。
以上で管理装置500の判定処理S135の処理を終わり、ステップS809に進む。
以下に具体的に説明する。
ステップS810において、検索装置400の補助情報保管部422は、ステップS802で暗号化部412が生成した検索キーワードsの確定的情報t及び確定的指示fを受け取る。そして、補助情報保管部422は、ステップS809で受信部401が受信した検索キーワードsに対する検索結果I(s)を受け取り、以下の処理を行う。
確定的指示fが真、かつ、検索結果I(s)が空集合でない場合、即ち確定的情報tが埋め込まれた検索クエリQ(s)に対して暗号化データE(D)ありの場合は、補助情報保管部422は、確定的情報tを検索記憶部450に保管する。また、検索結果I(s)が空集合、即ち検索クエリQ(s)に対して暗号化データE(D)なしの場合、かつ、確定的情報tが補助情報保管部422により既に検索記憶部450に保管されている場合、補助情報保管部422は、保管されている確定的情報tを削除する。
ステップS811により、秘匿検索システム100の検索処理は終了する。
図10を用いて、本実施の形態に係る秘匿検索システム100の削除処理S140について説明する。
図10のステップS901からステップS904は、登録装置300と管理装置500とが実行する処理である。ステップS901からステップS902は登録装置300により実行される。ステップS903からステップS904は管理装置500によって実行される。
以下に具体的に説明する。
ステップS902において、登録装置300の送信部319は、ステップS901で入力部311に入力された削除要求339を管理装置500へ送信する。
ステップS903において、管理装置500の受信部501は、ステップS902で登録装置300の送信部319から送信されてきた削除要求339を受信する。
ステップS904において、管理装置500のデータ保管部521及び高速照合部531は、ステップS903で受信部501が受信した削除要求に含まれる削除データ名に基づき、保管している保管暗号化データ551を削除する。
ステップS904により、秘匿検索システム100の削除処理S140は終了する。
本実施の形態では、秘匿検索システム100の各装置の機能がソフトウェアで実現されるが、変形例として、秘匿検索システム100の各装置の機能がハードウェアで実現されてもよい。
この本実施の形態の変形例について、図11から図14を用いて説明する。
図12は、本実施の形態の変形例に係る登録装置300の構成を示す図である。
図13は、本実施の形態の変形例に係る検索装置400の構成を示す図である。
図14は、本実施の形態の変形例に係る管理装置500の構成を示す図である。
本実施の形態に係る秘匿検索システムは、検索を高速に行うために有用な情報が埋め込まれた検索クエリを生成する検索装置の暗号化部と、検索クエリを受信する管理装置の受信部と、関連キーワードが暗号化された暗号化タグを保管する管理装置のデータ保管部と、保管されている暗号化タグ集合の中から、暗号化された検索キーワードと一致するものを取り出す管理装置の照合部とを備える。よって、確率的であり、かつ、検索処理を高速化するための確定的情報が埋め込まれた検索クエリを用いて暗号化タグを検索することができる。また、本実施の形態に係る秘匿検索システムは、暗号化タグ及び検索クエリが、確率的暗号化によって生成されている。よって、暗号化タグ及び検索クエリは、保管データに関連付けられている関連キーワード及び検索キーワードの確定的情報に依らない。これにより暗号化タグ及び検索クエリは頻度分析耐性が高くなり、安全性が高い。
本実施の形態では、主に、実施の形態1と異なる点について説明する。
本実施の形態において、実施の形態1と共通する部分については、同一の符号を付し、その説明を省略する場合がある。
秘匿検索システム100aは、鍵生成装置200と、登録装置300aと、検索装置400aと、管理装置500aとを有する。図15は、実施の形態1で説明した図1に対応する。秘匿検索システム100aの基本的な構成及び機能については、実施の形態1で説明した図1と同様であるため、その説明を省略する。
次に、本実施の形態に係る秘匿検索システム100aの有する各装置の構成及び機能について説明する。
本実施の形態に係る鍵生成装置200の構成及び機能は、実施の形態1で説明した図2と同様であるため、説明を省略する。
なお、実施の形態1で説明したように、送信部209は、鍵生成部202で生成された鍵K1を、登録装置300aと検索装置400aとに送信し、鍵K2を、検索装置400aと管理装置500aとに送信する。このとき、鍵K2は公知のパラメータとしてもよいし、鍵K2は鍵K1と同一でも構わない。また、鍵K2を用いた暗号化を鍵なしの暗号化で置き換えても構わないし、鍵K2を用いた暗号化を行わなくても構わない。
次に、図16を用いて、本実施の形態に係る登録装置300aの構成及び機能について説明する。
本実施の形態に係る登録装置300aの構成は、実施の形態1で説明した図3と同様である。登録装置300aにおいて、実施の形態1と異なる機能は以下の通りである。
暗号化部312は、鍵保管部302から鍵K1を受け取り、入力部311から保管データDの集合Uと保管データ名集合IDと関連キーワードwの集合Wとを受け取り、鍵K1を用いて保管データDと、保管データDに関連付られる関連キーワードの集合W(D)とを暗号化する。
鍵K1を用いて暗号化された保管データDを暗号化データE(D)とする。鍵K1を用いて暗号化された関連キーワードwを暗号化タグcとする。なお、暗号化データE(D)の生成には鍵K1と異なる鍵を用いてもよい。
即ち、暗号化部312は、入力部311から受け取った全ての保管データDと、このDの保管データ名ID(D)と関連キーワード集合W(D)に対して、保管データ名ID(D)と暗号化タグcの組(ID(D),c)を生成する。以降では、(ID(D),c)を保管暗号化データと書く場合がある。なお、保管データ名ID(D)には暗号化データE(D)が対応付けられているものとする。つまり、保管暗号化データ(ID(D),c)とは、保管データ名ID(D)に対応付けられた暗号化データE(D)と暗号化タグcとの組を表すものとする。なお、暗号化部312が生成した保管暗号化データ(ID(D),c)の集合を暗号化索引Cと書く場合がある。
送信部319は、暗号化部312から受け取った暗号化索引Cを管理装置500aへ送信する。また、送信部319は、入力部311から受け取った削除要求339を管理装置500aへ送信する。
その他の機能については、実施の形態1で説明したものと同様である。
次に、図17を用いて、本実施の形態に係る検索装置400aの構成及び機能について説明する。
図17は、実施の形態1で説明した図4に対応する図である。図17において図4と異なる構成は次の通りである。本実施の形態に係る検索装置400は、検索記憶部450に第1乱数Rを記憶していない。その他の構成は、図4と同様である。
また、検索装置400において、実施の形態1と異なる機能は以下の通りである。
補助情報保管部422は、検索履歴情報451を検索記憶部450に保管する。即ち、補助情報保管部422は、暗号化部412から確定的指示f及び検索キーワードsの確定的情報tを受け取り、受信部401から検索キーワードsの検索結果I(s)を受け取る。そして、補助情報保管部422は、管理装置500により後述する高速索引情報554が作成されたことが確認できた場合は確定的情報tを検索履歴情報451に蓄積する。補助情報保管部422は、高速索引情報554が作成されたことが確認できなければ何も実行しない。以降では、補助情報保管部422により検索記憶部450の検索履歴情報451に蓄積された全ての確定的情報tの集合をTと書く。
暗号化部412は、鍵保管部421から鍵K1及び鍵K2、補助情報保管部422から確定的情報tの集合T、入力部411から検索キーワードs及び確定的指示fを受け取る。暗号化部412は、検索キーワードの確定的情報t又は検索クエリQ(s)を送信部419へ出力する。
受信部401、補助情報保管部422及び暗号化部412の機能については、第1乱数Rを扱わないという点以外は、実施の形態1と同様である。また、その他の機能については、実施の形態1と同様である。
次に、図18を用いて、本実施の形態に係る管理装置500aの構成及び機能について説明する。
本実施の形態に係る管理装置500aの構成は、実施の形態1で説明した図5と同様である。管理装置500aにおいて、実施の形態1と異なる機能は以下の通りである。
データ保管部521は、受信部501から受け取った暗号化索引Cを管理記憶部550に保管する。また、データ保管部521は、受信部501から受け取った削除要求339に基づき、管理記憶部550に保管している保管暗号化データ(ID(D),c)を削除する。
なお、以降の説明では、保管暗号化データ(ID(D),c)を保管暗号化データ551、暗号化データE(D)を暗号化データ552、暗号化タグcを暗号化タグ553として説明する場合がある。
照合部502は、受信部501から受け取った検索クエリQ(s)、鍵保管部511から受け取った鍵K2、データ保管部521から受け取った全ての保管暗号化データ(ID(D),c)に対して、検索結果I(s)を生成し、送信部509へ出力する。また、検索結果I(s)が空集合でない場合、照合部502は、確定的情報tと検索結果I(s)を高速照合部531へ出力する。
その他の機能については、実施の形態1と同様である。
次に、本実施の形態に係る秘匿検索システム100aにおける秘匿検索方法610及び秘匿検索プログラム620による秘匿検索処理S100aについて説明する。
実施の形態1と同様に、秘匿検索システム100aの秘匿検索処理S100は、鍵生成保管処理S110と、登録処理S120aと、検索処理S130aと、削除処理S140とを有する。
本実施の形態に係る秘匿検索システム100の鍵生成保管処理S110は、実施の形態1で説明した図6と同様であるため説明を省略する。
図19を用いて、本実施の形態に係る秘匿検索システム100aの登録処理S120aについて説明する。図19は、実施の形態1で説明した図7に対応する図である。図19において図7と同様の処理については同一の符号を付し、その説明を省略する場合がある。
図19のステップS701、ステップS702a及びステップS703は登録装置300aにより実行される暗号化処理S123aである。ステップS707からステップS708は管理装置500aにより実行されるデータ保管処理S125である。本実施の形態では、ステップS704と、ステップS705からステップS706の第1乱数保管処理S124とが存在しない点が実施の形態1とは異なる。
以下に具体的に説明する。
保管データDの関連キーワードの集合W(D)の要素の一つを関連キーワードwとする。暗号化部312は、Wに含まれる全ての関連キーワードwに対して、c=E(K1,w,j)とする。また、(ID(D),c)として、暗号化索引Cの要素である保管暗号化データを生成する。ただし、jはwに対して重複なく割り振られる値である。具体的には、複数の保管データに関連するキーワードwが存在する場合、それぞれの保管データに対して暗号化タグc=E(K1,w,j)が生成されるが、このときjは重複することなく割り振る。すなわち、暗号化タグcの集合を考えると、無視できる確率を除いてその集合の要素は互いに異なる。jは、具体的には、カウンタ値である。jをカウンタ値とした場合、キーワードw毎にカウンタ値jを初期値1として設定し、同じキーワードwの暗号化タグcを生成するたびにjに1を加える。jは、具体的には、ハッシュチェインのハッシュ値である。jをハッシュ値とした場合、キーワードw毎にハッシュ値jを初期値1として設定し、同じキーワードwの暗号化タグcを生成するたびにjをjのハッシュ値に更新する。なお、Eは暗号化関数とする。具体的には、EはAES(Advanced Encryption Standard)のような共通鍵暗号方式、HMAC(Hash−based Message Authentication Code)のようなメッセージ認証符号、SHA(Secure Hash Algorithm)−256のようなハッシュ関数である。
以上のように、登録装置300aの暗号化部312は、暗号化索引Cを生成する。
なお、関連キーワードwが関連付いていない保管データDに対して、j>|U|であるようなjを用いて保管暗号化データを生成し暗号化索引Cに追加してよい。これにより、暗号化索引Cにおける保管データ名の出現頻度を均一にすることもできる。また、どの保管データDにも関連付いていない関連キーワードに対して保管暗号化データを生成し暗号化索引Cに追加してよい。これにより、暗号化索引Cのサイズを調節することもできる。
以下に具体的に説明する。
ステップS708において、管理装置500aのデータ保管部521は、ステップS707で受信部501が受信した暗号化索引Cを管理記憶部550に保管する。上述したように、暗号化索引Cは、保管データ名ID(D)に対応付けられた暗号化データE(D)と、暗号化タグcとの組の集合である。
図20を用いて、本実施の形態に係る秘匿検索システム100aの検索処理S130aについて説明する。図20は、実施の形態1で説明した図8に対応する図である。図20において、図8と同様の処理ついては同一の符号を付し、その説明を省略する場合がある。
以下に具体的に説明する。
ここで、確定的指示fは、検索キーワードsを暗号化する際に確定的情報tを用いるか否かを指示するものであり、具体的にはフラグである。確定的指示fは、高速索引作成フラグともいう。また、検索キーワードsを暗号化する際に確定的情報tを用いるとは、検索クエリQ(s)に高速検索に有効な情報である確定的情報tを埋め込むことを意味する。
検索装置400aは、確定的指示fを取得し、確定的指示fにより確定的情報tを用いると指示された場合、検索キーワードsに対し確定的情報tを用いて確率暗号方式の暗号化を実行する。
また、検索装置400aは、確定的指示fにより確定的情報tを用いないと指示された場合、検索キーワードsに対し確定的情報tを用いずに確率暗号方式の暗号化を実行する。ステップS801の処理は、実施の形態1と同様である。
ステップS401において、検索装置400aは、検索キーワードsに対して確定暗号方式の暗号化を実行することにより確定的情報tを算出する。具体的には、暗号化部412は、検索キーワードsの確定的情報tをt=E(K1,s)とする。なお、確定的情報tの生成に用いる鍵はK1と異なる鍵を用いてもよい。
ステップS402において、暗号化部412は、ステップS401で確定的情報tを算出すると、算出した確定的情報tが検索記憶部450に蓄積されているか否かを判定する。暗号化部412は、算出した確定的情報tが検索記憶部450に蓄積されている場合(S402でYES)、この確定的情報tを管理装置500aに送信する。
具体的には、暗号化部412は、集合Tに、算出した確定的情報tが含まれているか確認する。算出した確定的情報tが集合Tに含まれている場合、暗号化部412は、算出した確定的情報tを送信部419へ出力する(ステップS403)。
暗号化部412は、検索クエリQ(s)を以下のように生成する。暗号化部412は、乱数を生成し、確定的情報tとを用いて、検索キーワードsに対し確率暗号方式の暗号化を実行する。具体的には、暗号化部412は、1から保管データ集合Uの要素数のカウンタ値j(1<=j<|U|)に対して、暗号文diをdi=E(K1,w,j)とする。次に、それぞれの暗号文diに対して、暗号文kiをki=E(K2,di)とする。さらに、乱数生成器によって乱数vを生成し、暗号文qiをqi=(E(ki,t||v),v)とする。このとき、確定的指示fが偽の場合は、tの代わりに意味のない乱数を用いる。ここで、演算||はビット列の連結を表す。生成した暗号文qiの集合をQ(s)と書く。暗号文qiの集合Q(s)を検索クエリと呼ぶ。なお、乱数vは、qiそれぞれに含めずに、Q(s)にひとつだけ含めてもよい。最後に、暗号化部412は、検索クエリQ(s)を送信部419へ出力する(ステップS405)。また、暗号化部412は、確定的指示f及び確定的情報tを補助情報保管部422に出力する。
なお、暗号文qiに乱数vを含めず、代わりにqi=E(ki,0λ||t||vi)とすることもできる。検索クエリQ(s)と暗号化タグcとの一致判定の際は、暗号文qiを復号した結果、平文に0λが現れるならば一致、そうでなければ不一致として判定できる。
ステップS406において、送信部419は、確定的情報t又は検索クエリQ(s)を管理装置500aに送信する。
以上でステップS802aの処理を終わり、図20のステップS803に進む。なお、ステップS802aにおいて、ステップS401からステップS403、及びステップS405からステップS406の処理は、実施の形態1と同様である。
以上で検索装置400aの検索クエリ生成処理S134aの処理を終わり、ステップS804に進む。
管理装置500aは、検索装置400aから確定的情報tを受信すると、確定的情報tに対応する暗号化データE(D)を管理記憶部550から取得し、取得した暗号化データE(D)を含む検索結果I(s)を検索装置400aに送信する。
以下に具体的に説明する。
ステップS804aにおいて検索クエリか確定的情報かを判定し、受信部501が検索クエリQ(s)を受信した場合、処理はステップ805a1に進み、受信部501が確定的情報tを受信した場合、処理はステップ807に進む。
照合部502は、空の検索結果I(s)を用意する。照合部502は、全ての保管暗号化データ(ID(D),c)と検索クエリQ(s)に対して、以下の処理を行う。暗号化索引Cに含まれる全ての暗号化タグcと、検索クエリQ(s)の全ての要素qの、任意のペア(c,q)に対して、一致判定を以下のようにして行う。qの2つの要素をe1,e2とする。暗号文kをk=E(K2,c)とする。復号関数であるDecを用いて、m=Dec(k,e1)とする。mをm1とm2に分割する。m2がe2と一致するとき、cとqは一致したと判定する。これは即ち、検索クエリQ(s)の要素と一致する要素が暗号化索引Cに含まれていることを示している。このとき、m1は確定的情報tである。cとqが一致した場合、検索結果I(s)に保管データ名ID(D)を加える。ここで、検索結果I(s)に保管データ名ID(D)を加えるとは、保管データ名ID(D)に対応付けられた暗号化データE(D)を検索結果I(s)に含めることを意味する。
上記の処理は、検索クエリQ(s)を復号して得られる検索キーワードsが、管理記憶部550に保管されている暗号化タグcを復号して得られる関連キーワードwと一致するか否かを判定する処理である。
以上で管理装置500aの判定処理S135aの処理を終わり、ステップS809に進む。なお、ステップS803、ステップS804及びステップS804aの処理は、実施の形態1と同様である。また、ステップS805a、ステップS806、ステップS807及びステップS808の処理は、実施の形態1と同様である。
以上により、秘匿検索システム100aの検索処理S130aは終了する。
なお、秘匿検索システム100aの削除処理S140については、実施の形態1で説明した図10の処理と同様であるため、説明を省略する。
本実施の形態に係る秘匿検索システムは、検索を高速に行うために有用な情報が埋め込まれた検索クエリを生成する検索装置の暗号化部と、検索クエリを受信する管理装置の受信部とを備える。また、秘匿検索システムは、関連キーワードが暗号化された暗号化タグを保管する管理装置のデータ保管部と、保管されている暗号化タグ集合の中から、暗号化された検索キーワードと一致するものを取り出す管理装置の照合部とを備える。よって、本実施の形態に係る秘匿検索システムは、確率的であり、かつ、検索処理を高速化するための確定的情報が埋め込まれた検索クエリを用いて暗号化タグを検索することができる。また、本実施の形態に係る秘匿検索システムは、検索クエリが、確率的暗号化によって生成されている。よって、検索クエリは、検索キーワードの確定的情報に依らない。これにより検索クエリは頻度分析耐性が高くなり、安全性が高い。
本実施の形態では、主に、実施の形態2と異なる点について説明する。
本実施の形態において、実施の形態2と共通する部分については、同一の符号を付し、その説明を省略する場合がある。
図22を用いて、本実施の形態に係る秘匿検索システム100bの構成について説明する。
秘匿検索システム100bは、鍵生成装置200と、登録装置300aと、検索装置400bと、管理装置500bとを有する。図22は、実施の形態2で説明した図15に対応する。秘匿検索システム100bの基本的な構成及び機能については、実施の形態2で説明した図15と同様であるため、その説明を省略する。
また、鍵生成装置200と登録装置300aとの各々の構成及び機能については、実施の形態2と同様であるため、その説明を省略する。
また、検索装置400bと管理装置500bとの各々の構成は、実施の形態2と同様であるため、その説明を省略する。なお、検索装置400bでは、暗号化部412の機能が実施の形態2と異なる。また、管理装置500bでは、照合部502の機能が実施の形態2と異なる。
検索装置400bは、乱数とカウンタ値とを用いて、検索キーワードに対し確率暗号方式の暗号化を実行する。検索装置400bは、暗号化タグと一致判定される第1暗号文Q1(s)と、第1暗号文Q1(s)と一致した前記暗号化タグを用いて確定的情報を算出するための第2暗号文Q2(s)とを生成する。
次に、本実施の形態に係る秘匿検索システム100bにおける秘匿検索方法610及び秘匿検索プログラム620による秘匿検索処理S100bについて説明する。
実施の形態2と同様に、秘匿検索システム100bの秘匿検索処理S100bは、鍵生成保管処理S110と、登録処理S120aと、検索処理S130bと、削除処理S140とを有する。
鍵生成保管処理S110と登録処理S120aと削除処理S140との各々については、実施の形態2と同様であるため、その説明を省略する。
図23を用いて、本実施の形態に係る秘匿検索システム100bの検索処理S130bについて説明する。図23は、実施の形態2で説明した図20に対応する図である。図23において、図20と同様の処理ついては同一の符号を付し、その説明を省略する場合がある。
以下に具体的に説明する。
ステップS802bにおいて、検索装置400bの暗号化部412は、ステップS607で鍵保管部421に保管された鍵K1及び鍵K2、及び補助情報保管部422により管理される確定的情報tの集合T、ステップS801で入力部411に入力された検索キーワードs及び確定的指示fを受け取る。暗号化部412は、受け取ったデータを用いて以下の処理を行う。
ステップS401において、検索装置400bは、検索キーワードsに対して確定暗号方式の暗号化を実行することにより確定的情報tを算出する。具体的には、暗号化部412は、検索キーワードsの確定的情報tをt=E(K1,s)とする。なお、確定的情報tの生成に用いる鍵はK1と異なる鍵を用いてもよい。
ステップS402において、暗号化部412は、ステップS401で確定的情報tを算出すると、算出した確定的情報tが検索記憶部450に蓄積されているか否かを判定する。暗号化部412は、算出した確定的情報tが検索記憶部450に蓄積されている場合(S402でYES)、この確定的情報tを管理装置500bに送信する。
具体的には、暗号化部412は、集合Tに、算出した確定的情報tが含まれているか確認する。算出した確定的情報tが集合Tに含まれている場合、暗号化部412は、算出した確定的情報tを送信部419へ出力する(ステップS403)。
ステップS401からステップS403の処理は、実施の形態2と同様である。
暗号化部412は、検索クエリQ(s)を以下のように生成する。検索クエリQ(s)は2つの要素、すなわち第1暗号文Q1(s)と第2暗号文Q2(s)で構成されている。暗号化部412は、乱数生成器によって乱数vを生成し、確定的情報tを用いて、検索キーワードsに対し確率暗号方式の暗号化を実行する。具体的には、暗号化部412は、1から保管データ集合Uの要素数のカウンタ値j(1<=j<=|U|)に対して、暗号文djをdj=E(K1,s,j)とする。次に、それぞれの暗号文djに対して、暗号文Q1j(s)をQ1j(s)=(E(K2,dj,v),v)とする。さらに、暗号文Q2j(s)をQ2j(s)=F(dj,t||vj)とする。ただし、vjは乱数で、Q2j(s)毎に生成してもよいし、Q(s)毎に生成してもよい。また、暗号化Fは秘密鍵djにより復号処理が可能な暗号化アルゴリズムとする。例えば、AESでもよい。このとき、確定的指示fが偽の場合は、tの代わりに意味のない乱数を用いる。ここで、演算||はビット列の連結を表す。生成した暗号文qj=(Q1j(s),Q2j(s))の集合をQ(s)と書く。暗号文qjの集合Q(s)を検索クエリと呼ぶ。なお、乱数vは、Q1j(s)及びQ2j(s)のそれぞれに含めずに、Q(s)に1つだけ含めてもよい。最後に、暗号化部412は、検索クエリQ(s)を送信部419へ出力する(ステップS405)。また、暗号化部412は、確定的指示f及び確定的情報tを補助情報保管部422に出力する。
ステップS406において、送信部419は、確定的情報t又は検索クエリQ(s)を管理装置500bに送信する。
以上でステップS802bの処理を終わり、図23のステップS803に進む。なお、ステップS802bにおいて、ステップS401からステップS403、及びステップS405からステップS406の処理は、実施の形態2と同様である。
以上で検索装置400bの検索クエリ生成処理S134bの処理を終わり、ステップS804に進む。
管理装置500bは、検索装置400bから確定的情報tを受信すると、確定的情報tに対応する暗号化データE(D)を管理記憶部550から取得し、取得した暗号化データE(D)を含む検索結果I(s)を検索装置400bに送信する。
以下に具体的に説明する。
ステップS804aにおいて検索クエリか確定的情報かを判定し、受信部501が検索クエリQ(s)を受信した場合、処理はステップ805b1に進み、受信部501が確定的情報tを受信した場合、処理はステップ807に進む。
照合部502は、空の検索結果I(s)を用意する。照合部502は、全ての保管暗号化データ(ID(D),c)と検索クエリQ(s)に対して、以下の処理を行う。
暗号化索引Cに含まれる全ての暗号化タグcと、検索クエリQ(s)の全ての要素Q1j(1<=j<=|U|)に対して、一致判定を以下のようにして行う。はじめに、Q1jに含まれる乱数vを用いて、全ての暗号化タグcに対して、c’=E(K2,c,v)を計算する。次に、計算した全てのc’に含まれるようなQ1jを求める。この処理は、Q1jとc’との共通部分を計算する処理であり、ソート、二分木探索あるいはハッシュマップなどにより効率的に計算される。このとき、計算されたQ1jはcに一致したと判定される。これは、検索クエリQ(s)の要素と一致する要素が暗号化索引Cに含まれていることを示している。すなわち、第1暗号文Q1(s)は、暗号化タグcと一致判定される。
ここで、Q1jのうち、c’に含まれるようなQ1jを1つ選び、これをQ1j’とする。そして、Q1j’と一致するc’に対応するcに対して、m=Dec(c,Q2j’)とする。このとき、mは確定的情報tである。すなわち、第2暗号文Q2(s)は、第1暗号文Q1(s)と一致した暗号化タグcを用いて確定的情報tを算出するために用いられる。cとQ1jが一致した場合、そのcに対応する保管データ名ID(D)を検索結果I(s)に加える。ここで、検索結果I(s)に保管データ名ID(D)を加えるとは、保管データ名ID(D)に対応付けられた暗号化データE(D)を検索結果I(s)に含めることを意味する。
上記の処理は、検索クエリQ(s)を復号して得られる検索キーワードsが、管理記憶部550に保管されている暗号化タグcを復号して得られる関連キーワードwと一致するか否かを判定する処理である。
以上で管理装置500bの判定処理S135bの処理を終わり、ステップS809に進む。なお、ステップS803、ステップS804及びステップS804aの処理は、実施の形態2と同様である。また、ステップS805a、ステップS806、ステップS807及びステップS808の処理は、実施の形態2と同様である。
以上により、秘匿検索システム100bの検索処理S130bは終了する。
本実施の形態に係る秘匿検索システムは、検索を高速に行うために有用な情報が埋め込まれた検索クエリを生成する検索装置の暗号化部と、検索クエリを受信する管理装置の受信部とを備える。また、秘匿検索システムは、関連キーワードが暗号化された暗号化タグを保管する管理装置のデータ保管部と、保管されている暗号化タグ集合の中から、暗号化された検索キーワードと一致するものを取り出す管理装置の照合部とを備える。よって、本実施の形態に係る秘匿検索システムは、確率的であり、かつ、検索処理を高速化するための確定的情報が埋め込まれた検索クエリを用いて暗号化タグを検索することができる。また、本実施の形態に係る秘匿検索システムは、検索クエリが、確率的暗号化によって生成されている。よって、検索クエリは、検索キーワードの確定的情報に依らない。これにより検索クエリは頻度分析耐性が高くなり、安全性が高い。
さらに、本実施の形態に係る秘匿検索システムでは、2つの集合の共通部分を求める処理を利用して検索を行うため、ソート、二分木探索あるいはハッシュマップなどにより効率的に計算される。よって、本実施の形態に係る秘匿検索システムによれば、より高速に検索を実行でき、効率的である。
なお、上記の実施の形態は、本質的に好ましい例示であって、本発明、その適用物あるいは用途の範囲を制限することを意図するものではなく、必要に応じて種々の変更が可能である。
Claims (20)
- 記憶装置である管理記憶部を備え、保管データが暗号化された暗号化データと、前記保管データに関連付けられた関連キーワードに対し確率暗号方式の暗号化を実行することにより生成された暗号化タグとを受信し、前記暗号化タグと前記暗号化データとを対応付けて前記管理記憶部に保管する管理装置と、
前記管理記憶部に保管されている前記暗号化データを検索する検索キーワードを取得すると、前記検索キーワードから一意に定まる確定的情報を算出し、前記検索キーワードに対し前記確定的情報を用いて確率暗号方式の暗号化を実行することにより検索クエリを生成し、前記検索クエリを前記管理装置に送信する検索装置と
を備え、
前記管理装置は、
前記検索装置から前記検索クエリを受信すると、前記検索クエリを復号して得られる前記検索キーワードが、前記管理記憶部に保管されている前記暗号化タグを復号して得られる関連キーワードと一致するか否かを判定する秘匿検索システム。 - 前記管理装置は、
前記検索クエリを復号して得られる前記検索キーワードが、前記暗号化タグを復号して得られる関連キーワードと一致した場合、前記暗号化タグに対応する前記暗号化データを含む検索結果を前記検索装置に送信し、
前記検索装置は、
記憶装置である検索記憶部を備え、前記管理装置から前記検索結果を受信すると、前記確定的情報を前記検索記憶部に蓄積する請求項1に記載の秘匿検索システム。 - 前記管理装置は、
前記検索クエリを復号して得られる前記検索キーワードが、前記暗号化タグを復号して得られる関連キーワードと一致した場合、前記検索クエリを復号して得られる前記確定的情報と前記暗号化タグに対応する前記暗号化データとを対応付けて前記管理記憶部に記憶する請求項2に記載の秘匿検索システム。 - 前記検索装置は、
前記確定的情報を算出すると、前記確定的情報が前記検索記憶部に蓄積されているか否かを判定し、前記確定的情報が前記検索記憶部に蓄積されていない場合に前記検索クエリを前記管理装置に送信し、前記確定的情報が前記検索記憶部に蓄積されている場合に前記確定的情報を前記管理装置に送信し、
前記管理装置は、
前記検索装置から前記確定的情報を受信すると、前記確定的情報に対応する前記暗号化データを前記管理記憶部から取得し、取得した前記暗号化データを含む前記検索結果を前記検索装置に送信する請求項3に記載の秘匿検索システム。 - 前記検索装置は、
前記検索キーワードに対して確定暗号方式の暗号化を実行することにより前記確定的情報を算出する請求項1から4のいずれか1項に記載の秘匿検索システム。 - 前記検索装置は、
前記検索キーワードを暗号化する際に前記確定的情報を用いるか否かを指示する確定的指示を取得し、前記確定的指示により前記確定的情報を用いると指示された場合、前記検索キーワードに対し前記確定的情報を用いて確率暗号方式の暗号化を実行し、前記確定的指示により前記確定的情報を用いないと指示された場合、前記検索キーワードに対し前記確定的情報を用いずに確率暗号方式の暗号化を実行する請求項1から5のいずれか1項に記載の秘匿検索システム。 - 前記秘匿検索システムは、さらに、
第1乱数を生成し、前記第1乱数を用いて、前記関連キーワードに対し確率暗号方式の暗号化を実行することにより前記暗号化タグを生成し、前記暗号化タグと前記暗号化データとを前記管理装置に送信すると共に、前記第1乱数を前記検索装置に送信する登録装置を備え、
前記検索装置は、
第2乱数を生成し、前記第2乱数と、前記登録装置から受信した前記第1乱数と、前記確定的情報とを用いて、前記検索キーワードに対し確率暗号方式の暗号化を実行する請求項1から6のいずれか1項に記載の秘匿検索システム。 - 前記管理装置は、
前記管理記憶部に保管されている前記暗号化データを削除する削除要求を受信し、前記削除要求に基づいて前記管理記憶部から前記暗号化データを削除する請求項1から7のいずれか1項に記載の秘匿検索システム。 - 記憶装置である管理記憶部を備えた管理装置と検索装置とを有する秘匿検索システムの秘匿検索方法において、
前記管理装置が、保管データが暗号化された暗号化データと、前記保管データに関連付けられた関連キーワードに対し確率暗号方式の暗号化を実行することにより生成された暗号化タグとを受信し、前記暗号化タグと前記暗号化データとを対応付けて前記管理記憶部に保管し、
前記検索装置が、前記管理記憶部に保管されている前記暗号化データを検索する検索キーワードを取得すると、前記検索キーワードから一意に定まる確定的情報を算出し、前記検索キーワードに対し前記確定的情報を用いて確率暗号方式の暗号化を実行することにより検索クエリを生成し、前記検索クエリを前記管理装置に送信し、
前記管理装置が、前記検索装置から前記検索クエリを受信すると、前記検索クエリを復号して得られる前記検索キーワードが、前記管理記憶部に保管されている前記暗号化タグを復号して得られる関連キーワードと一致するか否かを判定する秘匿検索方法。 - 記憶装置である管理記憶部を備えた管理装置と検索装置とを有する秘匿検索システムの秘匿検索プログラムにおいて、
保管データが暗号化された暗号化データと、前記保管データに関連付けられた関連キーワードに対し確率暗号方式の暗号化を実行することにより生成された暗号化タグとを受信し、前記暗号化タグと前記暗号化データとを対応付けて前記管理記憶部に保管するデータ保管処理と、
前記管理記憶部に保管されている前記暗号化データを検索する検索キーワードを取得すると、前記検索キーワードから一意に定まる確定的情報を算出し、前記検索キーワードに対し前記確定的情報を用いて確率暗号方式の暗号化を実行することにより検索クエリを生成し、前記検索クエリを前記管理装置に送信する検索クエリ生成処理と、
前記検索装置から前記検索クエリを受信すると、前記検索クエリを復号して得られる前記検索キーワードが、前記管理記憶部に保管されている前記暗号化タグを復号して得られる関連キーワードと一致するか否かを判定する判定処理と
をコンピュータに実行させる秘匿検索プログラム。 - 記憶装置である管理記憶部を備え、保管データが暗号化された暗号化データと、前記保管データに関連付けられた関連キーワードを暗号化して生成された暗号化タグとを受信し、前記暗号化タグと前記暗号化データとを対応付けて前記管理記憶部に保管する管理装置と、
前記管理記憶部に保管されている前記暗号化データを検索する検索キーワードを取得すると、前記検索キーワードから一意に定まる確定的情報を算出し、前記検索キーワードに対し前記確定的情報を用いて確率暗号方式の暗号化を実行することにより検索クエリを生成し、前記検索クエリを前記管理装置に送信する検索装置と
を備え、
前記管理装置は、
前記検索装置から前記検索クエリを受信すると、前記検索クエリを復号して得られる前記検索キーワードが、前記管理記憶部に保管されている前記暗号化タグを復号して得られる関連キーワードと一致するか否かを判定する秘匿検索システム。 - 前記管理装置は、
前記検索クエリを復号して得られる前記検索キーワードが、前記暗号化タグを復号して得られる関連キーワードと一致した場合、前記暗号化タグに対応する前記暗号化データを含む検索結果を前記検索装置に送信し、
前記検索装置は、
記憶装置である検索記憶部を備え、前記管理装置から前記検索結果を受信すると、前記確定的情報を前記検索記憶部に蓄積する請求項11に記載の秘匿検索システム。 - 前記管理装置は、
前記検索クエリを復号して得られる前記検索キーワードが、前記暗号化タグを復号して得られる関連キーワードと一致した場合、前記検索クエリを復号して得られる前記確定的情報と前記暗号化タグに対応する前記暗号化データとを対応付けて前記管理記憶部に記憶する請求項12に記載の秘匿検索システム。 - 前記検索装置は、
前記確定的情報を算出すると、前記確定的情報が前記検索記憶部に蓄積されているか否かを判定し、前記確定的情報が前記検索記憶部に蓄積されていない場合に前記検索クエリを前記管理装置に送信し、前記確定的情報が前記検索記憶部に蓄積されている場合に前記確定的情報を前記管理装置に送信し、
前記管理装置は、
前記検索装置から前記確定的情報を受信すると、前記確定的情報に対応する前記暗号化データを前記管理記憶部から取得し、取得した前記暗号化データを含む前記検索結果を前記検索装置に送信する請求項13に記載の秘匿検索システム。 - 前記検索装置は、
前記検索キーワードに対して確定暗号方式の暗号化を実行することにより前記確定的情報を算出する請求項11から14のいずれか1項に記載の秘匿検索システム。 - 前記検索装置は、
前記検索キーワードを暗号化する際に前記確定的情報を用いるか否かを指示する確定的指示を取得し、前記確定的指示により前記確定的情報を用いると指示された場合、前記検索キーワードに対し前記確定的情報を用いて確率暗号方式の暗号化を実行し、前記確定的指示により前記確定的情報を用いないと指示された場合、前記検索キーワードに対し前記確定的情報を用いずに確率暗号方式の暗号化を実行する請求項11から15のいずれか1項に記載の秘匿検索システム。 - 前記秘匿検索システムは、さらに、
カウンタ値を生成し、前記カウンタ値を用いて、前記関連キーワードに対し暗号化を実行することにより前記暗号化タグを生成し、前記暗号化タグと前記暗号化データとを前記管理装置に送信する登録装置を備え、
前記検索装置は、
乱数を生成し、前記乱数と、前記登録装置で生成した前記カウンタ値とを用いて、前記検索キーワードに対し確率暗号方式の暗号化を実行する請求項11から16のいずれか1項に記載の秘匿検索システム。 - 前記検索装置は、
前記乱数と前記カウンタ値とを用いて、前記検索キーワードに対し確率暗号方式の暗号化を実行し、前記暗号化タグと一致判定される第1暗号文と、前記第1暗号文と一致した前記暗号化タグを用いて前記確定的情報を算出するための第2暗号文とを生成する請求項17に記載の秘匿検索システム。 - 記憶装置である管理記憶部を備えた管理装置と検索装置とを有する秘匿検索システムの秘匿検索方法において、
前記管理装置が、保管データが暗号化された暗号化データと、前記保管データに関連付けられた関連キーワードを暗号化して生成された暗号化タグとを受信し、前記暗号化タグと前記暗号化データとを対応付けて前記管理記憶部に保管し、
前記検索装置が、前記管理記憶部に保管されている前記暗号化データを検索する検索キーワードを取得すると、前記検索キーワードから一意に定まる確定的情報を算出し、前記検索キーワードに対し前記確定的情報を用いて確率暗号方式の暗号化を実行することにより検索クエリを生成し、前記検索クエリを前記管理装置に送信し、
前記管理装置が、前記検索装置から前記検索クエリを受信すると、前記検索クエリを復号して得られる前記検索キーワードが、前記管理記憶部に保管されている前記暗号化タグを復号して得られる関連キーワードと一致するか否かを判定する秘匿検索方法。 - 記憶装置である管理記憶部を備えた管理装置と検索装置とを有する秘匿検索システムの秘匿検索プログラムにおいて、
保管データが暗号化された暗号化データと、前記保管データに関連付けられた関連キーワードを暗号化して生成された暗号化タグとを受信し、前記暗号化タグと前記暗号化データとを対応付けて前記管理記憶部に保管するデータ保管処理と、
前記管理記憶部に保管されている前記暗号化データを検索する検索キーワードを取得すると、前記検索キーワードから一意に定まる確定的情報を算出し、前記検索キーワードに対し前記確定的情報を用いて確率暗号方式の暗号化を実行することにより検索クエリを生成し、前記検索クエリを前記管理装置に送信する検索クエリ生成処理と、
前記検索装置から前記検索クエリを受信すると、前記検索クエリを復号して得られる前記検索キーワードが、前記管理記憶部に保管されている前記暗号化タグを復号して得られる関連キーワードと一致するか否かを判定する判定処理と
をコンピュータに実行させる秘匿検索プログラム。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2016/051006 WO2017122326A1 (ja) | 2016-01-14 | 2016-01-14 | 秘匿検索システム、秘匿検索方法及び秘匿検索プログラム |
JPPCT/JP2016/051006 | 2016-01-14 | ||
PCT/JP2016/079421 WO2017122393A1 (ja) | 2016-01-14 | 2016-10-04 | 秘匿検索システム、秘匿検索方法及び秘匿検索プログラム |
JPPCT/JP2016/079421 | 2016-10-04 | ||
PCT/JP2017/000679 WO2017122696A1 (ja) | 2016-01-14 | 2017-01-11 | 秘匿検索システム、秘匿検索方法及び秘匿検索プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6239213B1 JP6239213B1 (ja) | 2017-11-29 |
JPWO2017122696A1 true JPWO2017122696A1 (ja) | 2018-01-25 |
Family
ID=59311136
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017547007A Active JP6239213B1 (ja) | 2016-01-14 | 2017-01-11 | 秘匿検索システム、秘匿検索方法及び秘匿検索プログラム |
Country Status (5)
Country | Link |
---|---|
US (1) | US10872158B2 (ja) |
EP (1) | EP3382576B1 (ja) |
JP (1) | JP6239213B1 (ja) |
CN (1) | CN108351905B (ja) |
WO (3) | WO2017122326A1 (ja) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019142268A1 (ja) * | 2018-01-17 | 2019-07-25 | 三菱電機株式会社 | 登録装置、検索操作装置、データ管理装置、登録プログラム、検索操作プログラムおよびデータ管理プログラム |
WO2019220531A1 (ja) | 2018-05-15 | 2019-11-21 | 三菱電機株式会社 | 秘匿検索装置および秘匿検索方法 |
JP6918253B2 (ja) * | 2018-12-28 | 2021-08-11 | 三菱電機株式会社 | 秘匿検索システムおよび秘匿検索方法 |
US11281733B2 (en) * | 2019-03-14 | 2022-03-22 | Microsoft Technology Licensing, Llc | Selective presentation of rich experiences in search |
DE112020005557B4 (de) | 2020-01-14 | 2023-09-28 | Mitsubishi Electric Corporation | Registrierungseinrichtung, suchoperationseinrichtung, datenverwaltungseinrichtung, registrierungsprogramm, suchoperationsprogramm und datenverwaltungsprogramm |
JP7016458B2 (ja) * | 2020-01-14 | 2022-02-04 | 三菱電機株式会社 | 秘匿検索システム、秘匿検索方法、及び、秘匿検索プログラム |
CN114091054A (zh) * | 2021-11-03 | 2022-02-25 | 深圳前海微众银行股份有限公司 | 一种双向隐匿数据查询方法及装置 |
JP7455287B2 (ja) * | 2021-12-14 | 2024-03-25 | 三菱電機株式会社 | 秘匿検索システム、秘匿検索方法、及び、秘匿検索プログラム |
JP7217836B1 (ja) * | 2021-12-27 | 2023-02-03 | 三菱電機株式会社 | データ管理装置、秘匿検索システム、秘匿検索方法、および、秘匿検索プログラム |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002108910A (ja) * | 2000-09-27 | 2002-04-12 | Nec Soft Ltd | 暗号化ファイルシステム及び暗号化ファイル検索方法並びにコンピュータ可読記録媒体 |
JP2005101883A (ja) | 2003-09-25 | 2005-04-14 | Hitachi Ltd | 電子メール文書原本性保証装置 |
JP4395611B2 (ja) | 2003-10-28 | 2010-01-13 | 独立行政法人情報通信研究機構 | 暗号化データベース検索装置および方法ならびに暗号化データベース検索プログラム |
JP2006072585A (ja) | 2004-08-31 | 2006-03-16 | Planet:Kk | 移動体通信端末を用いた認証方法 |
JP2006113704A (ja) | 2004-10-13 | 2006-04-27 | Toshiba Corp | 医用システムのパスワード管理方法及び医用装置用パスワード管理システム |
JP5140026B2 (ja) | 2009-03-19 | 2013-02-06 | 株式会社日立製作所 | データベース処理方法、データベース処理プログラム、および、暗号化装置 |
JP5425307B2 (ja) | 2010-07-08 | 2014-02-26 | 三菱電機株式会社 | キーワード変換装置、キーワード変換プログラム、記録媒体及びキーワード変換方法 |
US8533489B2 (en) * | 2010-09-29 | 2013-09-10 | Microsoft Corporation | Searchable symmetric encryption with dynamic updating |
JP5412414B2 (ja) * | 2010-12-08 | 2014-02-12 | 株式会社日立製作所 | 検索可能暗号処理システム |
US8429421B2 (en) | 2010-12-17 | 2013-04-23 | Microsoft Corporation | Server-side encrypted pattern matching |
JP5420085B2 (ja) | 2011-01-13 | 2014-02-19 | 三菱電機株式会社 | データ処理装置及びデータ保管装置 |
JP2012164031A (ja) | 2011-02-03 | 2012-08-30 | Mitsubishi Electric Corp | データ処理装置及びデータ保管装置及びデータ処理方法及びデータ保管方法及びプログラム |
EP2680251B1 (en) | 2011-02-22 | 2016-05-25 | Mitsubishi Electric Corporation | Search system, search method for search system, information processing device, search program, corresponding keyword management device and corresponding keyword management system |
JP5816299B2 (ja) | 2011-12-01 | 2015-11-18 | 株式会社日立製作所 | 秘匿検索方法および秘匿検索装置 |
JP5800720B2 (ja) | 2012-01-24 | 2015-10-28 | 三菱電機株式会社 | 情報処理装置及び情報処理方法及びプログラム |
US9355359B2 (en) * | 2012-06-22 | 2016-05-31 | California Institute Of Technology | Systems and methods for labeling source data using confidence labels |
JP5255154B1 (ja) | 2012-12-26 | 2013-08-07 | 株式会社エアー | 部分一致検索の可能な暗号システム |
JP5963936B2 (ja) * | 2013-02-25 | 2016-08-03 | 三菱電機株式会社 | サーバ装置、秘匿検索プログラム,記録媒体及び秘匿検索システム |
JP6054790B2 (ja) | 2013-03-28 | 2016-12-27 | 三菱スペース・ソフトウエア株式会社 | 遺伝子情報記憶装置、遺伝子情報検索装置、遺伝子情報記憶プログラム、遺伝子情報検索プログラム、遺伝子情報記憶方法、遺伝子情報検索方法及び遺伝子情報検索システム |
JP6144992B2 (ja) | 2013-08-08 | 2017-06-07 | 株式会社日立製作所 | 検索可能暗号処理システム及び方法 |
JP6208586B2 (ja) | 2014-01-16 | 2017-10-04 | 株式会社日立製作所 | 検索可能暗号処理システムおよび検索可能暗号処理方法 |
JP2015170057A (ja) * | 2014-03-05 | 2015-09-28 | 富士通株式会社 | 秘匿検索装置、秘匿検索方法および秘匿検索プログラム |
US10747888B2 (en) | 2014-06-30 | 2020-08-18 | Nicira, Inc. | Method and apparatus for differently encrypting data messages for different logical networks |
WO2016063344A1 (ja) * | 2014-10-21 | 2016-04-28 | 三菱電機株式会社 | サーバ装置及び検索システム及び端末装置及び検索方法及びサーバプログラム及び端末プログラム |
JP6381128B2 (ja) | 2015-02-05 | 2018-08-29 | 国立研究開発法人産業技術総合研究所 | 検索システム、クライアント、サーバ、検索プログラムおよび検索方法 |
US9894042B2 (en) * | 2015-07-24 | 2018-02-13 | Skyhigh Networks, Inc. | Searchable encryption enabling encrypted search based on document type |
-
2016
- 2016-01-14 WO PCT/JP2016/051006 patent/WO2017122326A1/ja active Application Filing
- 2016-10-04 WO PCT/JP2016/079421 patent/WO2017122393A1/ja active Application Filing
-
2017
- 2017-01-11 JP JP2017547007A patent/JP6239213B1/ja active Active
- 2017-01-11 EP EP17738450.0A patent/EP3382576B1/en active Active
- 2017-01-11 WO PCT/JP2017/000679 patent/WO2017122696A1/ja active Application Filing
- 2017-01-11 US US16/063,457 patent/US10872158B2/en active Active
- 2017-01-11 CN CN201780003889.0A patent/CN108351905B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN108351905B (zh) | 2022-05-31 |
US20180365433A1 (en) | 2018-12-20 |
EP3382576A4 (en) | 2018-10-03 |
WO2017122326A1 (ja) | 2017-07-20 |
WO2017122696A1 (ja) | 2017-07-20 |
EP3382576B1 (en) | 2020-08-12 |
CN108351905A (zh) | 2018-07-31 |
WO2017122393A1 (ja) | 2017-07-20 |
EP3382576A1 (en) | 2018-10-03 |
JP6239213B1 (ja) | 2017-11-29 |
US10872158B2 (en) | 2020-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6239213B1 (ja) | 秘匿検索システム、秘匿検索方法及び秘匿検索プログラム | |
JP6208586B2 (ja) | 検索可能暗号処理システムおよび検索可能暗号処理方法 | |
JP5420085B2 (ja) | データ処理装置及びデータ保管装置 | |
Salam et al. | Implementation of searchable symmetric encryption for privacy-preserving keyword search on cloud storage | |
JP6234605B2 (ja) | サーバ装置及び検索システム及び端末装置及び検索方法及びサーバプログラム及び端末プログラム | |
CN111587452B (zh) | 登记装置、检索操作装置、数据管理装置和计算机能读取的存储介质 | |
JP6038427B1 (ja) | 暗号化装置、暗号化方法、暗号化プログラム及び保管装置 | |
JP2012164031A (ja) | データ処理装置及びデータ保管装置及びデータ処理方法及びデータ保管方法及びプログラム | |
KR101979267B1 (ko) | 클라우드 저장 기반 암호화 시스템 및 방법 | |
JP6289768B2 (ja) | 暗号化装置、暗号化プログラム及び暗号化方法 | |
WO2014141802A1 (ja) | 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム | |
US20210081562A1 (en) | Data processing apparatus, data processing method, and computer readable medium | |
JP6672451B2 (ja) | 暗号化検索インデックスマージサーバ、暗号化検索インデックスマージシステム、及び暗号化検索インデックスマージ方法 | |
US11106740B2 (en) | Search device, search system, search method, and computer readable medium | |
JP7217844B1 (ja) | 秘匿検索システムおよび秘匿検索方法 | |
JP7016458B2 (ja) | 秘匿検索システム、秘匿検索方法、及び、秘匿検索プログラム | |
JP6493402B2 (ja) | 追加装置、削除装置、追加依頼装置、データ検索システム、データ検索方法、および、コンピュータプログラム | |
CN117413489A (zh) | 加密标签生成装置、隐匿检索系统、加密标签生成方法和加密标签生成程序 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170906 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20170906 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20170927 |
|
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: 20171003 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20171031 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6239213 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |