JP6362811B1 - 登録端末、鍵サーバ、検索システム、登録プログラム - Google Patents
登録端末、鍵サーバ、検索システム、登録プログラム Download PDFInfo
- Publication number
- JP6362811B1 JP6362811B1 JP2018511293A JP2018511293A JP6362811B1 JP 6362811 B1 JP6362811 B1 JP 6362811B1 JP 2018511293 A JP2018511293 A JP 2018511293A JP 2018511293 A JP2018511293 A JP 2018511293A JP 6362811 B1 JP6362811 B1 JP 6362811B1
- Authority
- JP
- Japan
- Prior art keywords
- range
- registration
- key
- search
- ciphertext
- 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
-
- 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/088—Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
-
- 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
-
- 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/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/083—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
-
- 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/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
Description
公開鍵型の秘匿検索方式は、アクセス制御が可能であるというメリットがある。しかし、公開鍵型の秘匿検索方式は、共通鍵型の秘匿検索方式に比べて低速であるというデメリットがある。一方、共通鍵型の秘匿検索方式は、公開鍵型の秘匿検索方式に比べて高速であるというメリットがある。しかし、共通鍵型の秘匿検索方式は、アクセス制御ができないというデメリットがある。
この発明は、アクセス制御が可能であり、かつ、処理速度を早くすることが可能な秘匿検索方式を実現することを目的とする。
アクセスを許可する範囲を示すアクセス範囲Xを入力として、前記アクセス範囲Xが設定され鍵Kが暗号化された暗号文CTXと、前記鍵Kとを生成する暗号化部と、
前記アクセス範囲Xと前記暗号化部によって生成された前記暗号文CTXとの組を鍵サーバに登録する鍵登録部と、
前記鍵Kと検索用のキーワードwとを入力として、検索用のタグtを生成するタグ生成部と、
前記タグ生成部によって生成された前記タグtを検索サーバに登録するタグ登録部と
を備える。
これにより、検索端末は、アクセス範囲Xに基づき復号可能な暗号文CTXを取得することにより、利用可能な鍵Kを得ることができる。したがって、アクセス制御を実現できる。また、検索端末は、鍵Kに基づき検索する際に検索サーバへ送信する情報であるトラップドアを生成することにより、共通鍵型の秘匿検索方式により、検索処理を実行できる。したがって、共通鍵型の秘匿検索方式と同様に高速に検索処理を実行できる。
***構成の説明***
図1を参照して、実施の形態1に係る秘匿検索システム1の構成を説明する。
秘匿検索システム1は、1台以上の登録端末10と、1台以上の検索端末20と、鍵サーバ30と、検索サーバ40とを備える。登録端末10と、鍵サーバ30及び検索サーバ40とは、伝送路91を介して接続されている。また、検索端末20と、鍵サーバ30及び検索サーバ40とは、伝送路91を介して接続されている。
登録端末10は、プロセッサ11と、メモリ12と、ストレージ13と、通信インタフェース14とのハードウェアを備える。プロセッサ11は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
ストレージ13には、登録端末10の各機能構成要素の機能を実現するプログラムが記憶されている。このプログラムは、プロセッサ11によりメモリ12に読み込まれ、プロセッサ11によって実行される。これにより、登録端末10の各機能構成要素の機能が実現される。
検索端末20は、プロセッサ21と、メモリ22と、ストレージ23と、通信インタフェース24とのハードウェアを備える。プロセッサ21は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
ストレージ23には、検索端末20の各機能構成要素の機能を実現するプログラムが記憶されている。このプログラムは、プロセッサ21によりメモリ22に読み込まれ、プロセッサ21によって実行される。これにより、検索端末20の各機能構成要素の機能が実現される。
鍵サーバ30は、プロセッサ31と、メモリ32と、ストレージ33と、通信インタフェース34とのハードウェアを備える。プロセッサ31は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
ストレージ33には、鍵サーバ30の各機能構成要素の機能を実現するプログラムが記憶されている。このプログラムは、プロセッサ31によりメモリ32に読み込まれ、プロセッサ31によって実行される。これにより、鍵サーバ30の各機能構成要素の機能が実現される。
検索サーバ40は、プロセッサ41と、メモリ42と、ストレージ43と、通信インタフェース44とのハードウェアを備える。プロセッサ41は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
ストレージ43には、検索サーバ40の各機能構成要素の機能を実現するプログラムが記憶されている。このプログラムは、プロセッサ41によりメモリ42に読み込まれ、プロセッサ41によって実行される。これにより、検索サーバ40の各機能構成要素の機能が実現される。
図6から図8を参照して、実施の形態1に係る秘匿検索システム1の動作を説明する。
実施の形態1に係る秘匿検索システム1の動作は、実施の形態1に係る秘匿検索方法に相当する。また、実施の形態1に係る秘匿検索システム1の動作は、実施の形態1に係る秘匿検索プログラムの処理に相当する。
実施の形態1に係る秘匿検索システム1の動作は、登録処理と検索処理とを含む。実施の形態1に係る登録処理は、実施の形態1に係る登録方法に相当する。また、実施の形態1に係る登録処理は、実施の形態1に係る登録プログラムの処理に相当する。実施の形態1に係る検索処理は、実施の形態1に係る検索方法に相当する。また、実施の形態1に係る検索処理は、実施の形態1に係る検索プログラムの処理に相当する。
(ステップS11:暗号化処理)
登録端末10の暗号化部111は、アクセスを許可する範囲を示すアクセス範囲Xの入力を受け付ける。アクセス範囲Xは、具体例としては、属性の論理式によって表される。アクセス範囲Xは、登録端末10の利用者によって入力装置が操作され入力される。
具体的には、暗号化部111は、アクセス制御が可能な公開鍵暗号方式のKEM(Key Encapsulating Mechanism)機能を用いて、暗号文CTXと、鍵Kとを生成する。例えば、暗号化部111は、特許文献2に記載された関数型暗号方式のEncアルゴリズムを用いて、暗号文CTXと鍵Kとを生成する。この場合、例えば、暗号化部111は、アクセス範囲Xを属性集合Γとし、値1をメッセージmとして入力し、Encアルゴリズムを実行して、要素c0及び要素ctを暗号文CTXとして生成し、要素cd+1を鍵Kとして生成する。
登録端末10の鍵登録部112は、ステップS11で受け付けられたアクセス範囲Xと、ステップS11で生成された暗号文CTXとの組を鍵サーバ30に登録する。
具体的には、鍵登録部112は、アクセス範囲Xと暗号文CTXとの組を、伝送路91を介して鍵サーバ30に送信する。すると、鍵サーバ30の暗号文取得部311は、送信されたアクセス範囲Xと暗号文CTXとの組を取得して、ストレージ33に書き込む。これにより、ストレージ33にアクセス範囲Xと暗号文CTXとの組が蓄積される。
登録端末10のタグ生成部113は、検索用のキーワードwの入力を受け付ける。キーワードwは、任意の文字列である。キーワードwは、登録端末10の利用者によって入力装置が操作され入力される。
具体的には、タグ生成部113は、鍵Kとキーワードwとを入力として、共通鍵型の秘匿検索方式におけるタグ生成アルゴリズムを用いて、検索用のタグtを生成する。例えば、タグ生成部113は、鍵Kとキーワードwとを入力として、ハッシュ関数Hを計算して、検索用のタグtを生成する。共通鍵型の秘匿検索方式としては、部分一致検索可能な方式であってもよい。
登録端末10のタグ登録部114は、ステップS13で生成されたタグtを検索サーバ40に登録する。
具体的には、タグ登録部114は、タグtを、伝送路91を介して検索サーバ40に送信する。すると、検索サーバ40のタグ取得部411は、送信されたタグtを取得して、ストレージ43に書き込む。これにより、ストレージ43にタグtが蓄積される。
(ステップS21:暗号文取得処理)
検索端末20の暗号文取得部212は、属性Yを鍵サーバ30に送信して、アクセスを許可する範囲に属性Yを含むアクセス範囲Xが設定された暗号文CTXを取得する。属性Yは、検索端末20の利用者の属性である。
具体的には、暗号文取得部212は、属性Yを伝送路91を介して鍵サーバ30に送信する。すると、鍵サーバ30の属性判定部312は、ストレージ33に記憶されたアクセス範囲Xと暗号文CTXとの組から、アクセス範囲Xに属性Yが含まれる組を抽出する。鍵サーバ30の暗号文送信部313は、抽出された組の暗号文CTXを伝送路91を介して検索端末20に送信する。暗号文送信部313は、複数の組が抽出されている場合には、各組の暗号文CTXを送信する。暗号文取得部212は、送信された暗号文CTXを取得する。
検索端末20の復号部213は、ステップS21で取得された暗号文CTXを、属性Yが設定された復号鍵skYによって復号して鍵Kを生成する。
具体的には、復号部213は、ステップS11で用いられた公開鍵暗号方式の復号アルゴリズムを用いて、暗号文CTXを復号鍵skYによって復号する。図7のステップS11で特許文献2に記載された関数型暗号方式のEncアルゴリズムが用いられた場合には、復号部213は、特許文献2に記載された関数型暗号方式のDecアルゴリズムを用いて、暗号文CTXを復号鍵skYによって復号する。この場合、例えば、復号部213は、要素k* 0,...,k* Lを復号鍵skYとし、暗号文CTXである要素c0及び要素ctと、要素k* 0,...,k* Lとのペアリング演算を計算して、セッション鍵Kを鍵Kとして生成する。
検索端末20の要求受付部211は、検索用のキーワードw’を含む検索要求の入力を受け付ける。キーワードw’は、任意の文字列である。キーワードw’は、検索端末20の利用者によって入力装置が操作され入力される。
トラップドア生成部214は、ステップS22で生成された鍵Kと、ステップS23で受け付けられた検索用のキーワードw’とを入力として、検索用のトラップドアt’を生成する。
具体的には、トラップドア生成部214は、鍵Kとキーワードw’とを入力として、共通鍵型の秘匿検索方式におけるトラップドア生成アルゴリズムを用いて、検索用のトラップドアt’を生成する。例えば、トラップドア生成部214は、鍵Kとキーワードw’とを入力として、図7のステップS13で用いられたハッシュ関数Hを計算して、検索用のトラップドアt’を生成する。
検索端末20のデータ取得部215は、ステップS24で生成されたトラップドアt’を検索サーバ40に送信して、キーワードw’に対応するデータを取得する。
具体的には、データ取得部215は、トラップドアt’を、伝送路91を介して検索サーバ40に送信する。すると、検索サーバ40のトラップドア取得部412は、送信されたトラップドアt’を取得する。検索サーバ40のタグ抽出部413は、記憶装置であるストレージ43に記憶されたタグtから、トラップドアt’に対応するタグtを抽出する。例えば、タグ抽出部413は、トラップドアt’と一致するタグtを抽出する。そして、タグ抽出部413は、抽出されたタグtに関するデータを、伝送路91を介して検索端末20に送信する。
タグtに関するデータとは、具体例としては、タグtの識別子である。また、タグtに関するデータは、抽出されたタグtの個数であってもよい。また、タグtに関するデータは、タグtと暗号文Cとの組が検索サーバ40に登録されている場合には、タグtに関する暗号文Cであってもよい。
以上のように、実施の形態1に係る秘匿検索システム1では、登録端末10はアクセス範囲Xと暗号文CTXとの組を鍵サーバ30に登録するとともに、タグtを検索サーバ40に登録しておく。そして、検索端末20は、鍵サーバ30から属性Yに対応した暗号文CTXを取得して鍵Kを生成し、鍵Kでトラップドアt’を生成して検索サーバ40に送信してデータを取得する。
これにより、実施の形態1に係る秘匿検索システム1では、アクセス制御を実現しつつ、検索処理の速度を早くすることができる。具体的には、検索端末20が取得できる鍵Kは、属性Yが設定された復号鍵skYで復号可能な鍵Kに限定される。したがって、アクセス制御が実現される。また、タグtとトラップドアt’とは、共通鍵型の秘匿検索方式におけるアルゴリズムで生成されている。したがって、タグtとトラップドアt’との生成処理、及び、タグtとトラップドアt’とのマッチング処理は、共通鍵型の秘匿検索方式と同じ速度になる。
<変形例1>
実施の形態1では、検索処理を1つの一連の処理とした。しかし、検索処理は、鍵生成処理と、データ取得処理との2つの処理に分けてもよい。
鍵生成処理は、要求受付部211によって検索要求が受け付けられたタイミングとは異なる任意のタイミングに実行される。例えば、鍵生成処理は、定期的に実行される。
ステップS31からステップS32の処理は、図8のステップS21からステップS22の処理に対応する。つまり、ステップS31で暗号文取得部212は、要求受付部211によって検索要求が受け付けられたタイミングとは異なる任意のタイミングに、暗号文CTXを取得する。そして、ステップS32で復号部213は、取得された暗号文CTXを、復号鍵skYによって復号して鍵Kを生成し、生成された鍵Kを記憶装置であるストレージ23に記憶しておく。
データ取得処理は、要求受付部211によって検索要求が受け付けられたタイミングに実行される。
ステップS41からステップS43の処理は、図8のステップS23からステップS25の処理に対応する。つまり、ステップS41で要求受付部211は、検索要求を受け付ける。すると、ステップS42でトラップドア生成部214は、記憶装置であるストレージ23に記憶された鍵Kと検索用のキーワードw’とを入力として、検索用のトラップドアt’を生成する。そして、ステップS43でデータ取得部215は、トラップドアt’を検索サーバ40に送信して、キーワードw’に対応するデータを取得する。
実施の形態1では、アクセス範囲Xと暗号文CTXとの組は、鍵サーバ30のストレージ33に記憶された。しかし、アクセス範囲Xと暗号文CTXとの組は、鍵サーバ30の外部の記憶装置に記憶されてもよい。
同様に、実施の形態1では、タグtは、検索サーバ40のストレージ43に記憶された。しかし、タグtは、検索サーバ40の外部の記憶装置に記憶されてもよい。
実施の形態1では、登録端末10と検索端末20と鍵サーバ30と検索サーバ40との各機能構成要素の機能がソフトウェアで実現された。しかし、変形例3として、登録端末10と検索端末20と鍵サーバ30と検索サーバ40との各機能構成要素の機能はハードウェアで実現されてもよい。この変形例3について、実施の形態1と異なる点を説明する。
各機能構成要素の機能がハードウェアで実現される場合、登録端末10は、プロセッサ11とメモリ12とストレージ13とに代えて、電子回路15を備える。電子回路15は、登録端末10の各部の機能とメモリ12とストレージ13との機能とを実現する専用の電子回路である。
各機能構成要素の機能がハードウェアで実現される場合、検索端末20は、プロセッサ21とメモリ22とストレージ23とに代えて、電子回路25を備える。電子回路25は、検索端末20の各部の機能とメモリ22とストレージ23との機能とを実現する専用の電子回路である。
各機能構成要素の機能がハードウェアで実現される場合、鍵サーバ30は、プロセッサ31とメモリ32とストレージ33とに代えて、電子回路35を備える。電子回路35は、鍵サーバ30の各部の機能とメモリ32とストレージ33との機能とを実現する専用の電子回路である。
各機能構成要素の機能がハードウェアで実現される場合、検索サーバ40は、プロセッサ41とメモリ42とストレージ43とに代えて、電子回路45を備える。電子回路45は、検索サーバ40の各部の機能とメモリ42とストレージ43との機能とを実現する専用の電子回路である。
登録端末10の各部の機能を1つの電子回路15で実現してもよいし、登録端末10の各部の機能を複数の電子回路15に分散させて実現してもよい。同様に、検索端末20の各部の機能を1つの電子回路25で実現してもよいし、検索端末20の各部の機能を複数の電子回路25に分散させて実現してもよい。同様に、鍵サーバ30の各部の機能を1つの電子回路35で実現してもよいし、鍵サーバ30の各部の機能を複数の電子回路35に分散させて実現してもよい。同様に、検索サーバ40の各部の機能を1つの電子回路45で実現してもよいし、検索サーバ40の各部の機能を複数の電子回路45に分散させて実現してもよい。
変形例4として、一部の機能がハードウェアで実現され、他の機能がソフトウェアで実現されてもよい。つまり、登録端末10の各機能構成要素のうち、一部の機能がハードウェアで実現され、他の機能がソフトウェアで実現されてもよい。同様に、検索端末20と鍵サーバ30と検索サーバ40とについても、各機能構成要素のうち、一部の機能がハードウェアで実現され、他の機能がソフトウェアで実現されてもよい。
実施の形態2は、タグtとトラップドアt’とのマッチングの前に、処理対象とするタグtを属性Yで絞り込む点が実施の形態1と異なる。実施の形態2では、この異なる点を説明し、同一の点については説明を省略する。
図15を参照して、実施の形態2に係る検索サーバ40の構成を説明する。
検索サーバ40は、機能構成要素として、属性抽出部414を備える点が図5に示す検索サーバ40と異なる。属性抽出部414は、他の機能構成要素と同様に、ソフトウェア又はハードウェアで実現される。
図7及び図8と、図16とを参照して、実施の形態2に係る秘匿検索システム1の動作を説明する。
ステップS11からステップS13の処理は、実施の形態1と同じである。
登録端末10のタグ登録部114は、ステップS11で受け付けられたアクセス範囲Xと、ステップS13で生成されたタグtとの組を検索サーバ40に登録する。
ステップS21からステップS24の処理は、実施の形態1と同じである。
検索端末20のデータ取得部215は、属性Yと、ステップS24で生成されたトラップドアt’の組を検索サーバ40に送信して、キーワードw’に対応するデータを取得する。
具体的には、データ取得部215は、属性Yとトラップドアt’との組を、伝送路91を介して検索サーバ40に送信する。すると、検索サーバ40のトラップドア取得部412は、送信された属性Yとトラップドアt’との組を取得する。検索サーバ40の属性抽出部414は、記憶装置であるストレージ43に記憶されたアクセス範囲Xとタグtとの組から、トラップドア取得部412によって取得された組に含まれる属性Yを、アクセスを許可する範囲に含むアクセス範囲Xを含む組を抽出する。タグ抽出部413は、属性抽出部414によって抽出された組から、トラップドア取得部412によって取得された組に含まれるトラップドアt’に対応するタグtを含む組を抽出する。そして、タグ抽出部413は、抽出されたタグtに関するデータを、伝送路91を介して検索端末20に送信する。
以上のように、実施の形態2に係る秘匿検索システム1では、登録端末10はアクセス範囲Xとタグtとの組を検索サーバ40に登録しておく。そして、検索端末20は、属性Yとトラップドアt’との組を検索サーバ40に送信する。すると、検索サーバ40は、アクセス範囲Xと属性Yとで処理対象のタグtを絞り込んだ上で、トラップドアt’に対応するタグtを抽出する。
これにより、実施の形態2に係る秘匿検索システム1では、実施の形態1に比べ検索処理の速度を早くすることができる。つまり、実施の形態1では、検索端末20の利用者がアクセス権限を持たないタグtについても、トラップドアt’とのマッチング処理の対象になっていた。しかし、実施の形態2では、トラップドアt’とのマッチング処理の前に、属性Yによりタグtを絞り込んでおく。属性Yによるタグtの絞り込みは、アクセス範囲Xによってタグtを整列する等しておけば、高速に行うことが可能である。したがって、検索処理の速度を早くすることができる。
実施の形態3は、同じアクセス範囲Xを指定する場合に同じ鍵Kを用いてタグtが生成される点が実施の形態1,2と異なる。実施の形態3では、この異なる点を説明し、同一の点については説明を省略する。
実施の形態3では、実施の形態1に機能を追加した場合を説明する。しかし、実施の形態2に機能を追加することも可能である。
図17を参照して、実施の形態3に係る登録端末10の構成を説明する。
登録端末10は、暗号文取得部115と、復号部116とを備える点が、図2に示す登録端末10と異なる。暗号文取得部115と、復号部116とは、他の機能構成要素と同様に、ソフトウェア又はハードウェアで実現される。
図18及び図19を参照して、実施の形態3に係る秘匿検索システム1の動作を説明する。
(ステップS51:暗号文取得処理)
登録端末10の暗号化部111は、範囲情報X*の入力を受け付ける。範囲情報X*は、後述するステップS56で生成されるタグtのアクセス範囲Xとなる範囲である。範囲情報X*は、具体例としては、属性の論理式によって表される。範囲情報X*は、登録端末10の利用者によって入力装置が操作され入力される。
具体的には、暗号文取得部115は、属性Y’を伝送路91を介して鍵サーバ30に送信する。すると、鍵サーバ30の属性判定部312は、ストレージ33に記憶されたアクセス範囲Xと登録範囲X’と暗号文CTXとの組から、範囲情報X*と同じ範囲を示すアクセス範囲Xが設定され、かつ、登録範囲X’に属性Y’が含まれる組を抽出する。なお、後述するように、鍵サーバ30には、アクセス範囲Xと登録範囲X’と暗号文CTXとの組が登録されている。鍵サーバ30の暗号文送信部313は、抽出された組の暗号文CTXを伝送路91を介して登録端末10に送信する。暗号文取得部115は、送信された暗号文CTXを取得する。
登録端末10の暗号文取得部115は、ステップS52で暗号文CTXが取得されたか否かを判定する。
暗号文取得部115は、暗号文CTXが取得された場合には、処理をステップS53に進める。一方、暗号文取得部115は、暗号文CTXが取得されなかった場合には、処理をステップS54に進める。
登録端末10の復号部116は、ステップS51で取得された暗号文CTXを、属性Y’が設定された復号鍵skY’によって復号して鍵Kを生成する。具体的な処理は、復号鍵skY’を用いる点を除き、図8のステップS22と同じである。
登録端末10の暗号化部111は、登録を許可する範囲を示す登録範囲X’の入力を受け付ける。登録範囲X’は、登録端末10の利用者によって入力装置が操作され入力される。
具体的には、暗号化部111は、図7のステップS11と同様に、アクセス制御が可能な公開鍵暗号方式のKEM機能を用いて、暗号文CTXと、鍵Kとを生成する。この際、暗号化部111は、アクセス範囲Xと登録範囲X’とがOR条件で結ばれた条件を暗号文CTXの復号条件として設定する。つまり、暗号文CTXは、アクセス範囲Xが示す範囲に含まれる属性と、登録範囲X’が示す範囲に含まれる属性との少なくともいずれかの属性が設定された復号鍵によって復号可能である。
具体的には、鍵登録部112は、アクセス範囲Xと登録範囲X’と暗号文CTXとの組を、伝送路91を介して鍵サーバ30に送信する。すると、鍵サーバ30の暗号文取得部311は、送信されたアクセス範囲Xと登録範囲X’と暗号文CTXとの組を取得して、ストレージ33に書き込む。これにより、ストレージ33にアクセス範囲Xと登録範囲X’と暗号文CTXとの組が蓄積される。
登録端末10のタグ生成部113は、検索用のキーワードwの入力を受け付ける。キーワードwは、任意の文字列である。キーワードwは、登録端末10の利用者によって入力装置が操作され入力される。
タグ生成部113は、ステップS53又はステップS54で生成された鍵Kと、受け付けられた検索用のキーワードwとを入力として、検索用のタグtを生成する。具体的な処理は、図7のステップS13と同じである。
登録端末10のタグ登録部114は、ステップS56で生成されたタグtを検索サーバ40に登録する。具体的な処理は、図7のステップS14と同じである。
以上のように、実施の形態3に係る秘匿検索システム1では、登録端末10は同じアクセス範囲Xを指定する場合に同じ鍵Kを用いてタグtを生成する。
これにより、実施の形態3に係る秘匿検索システム1では、検索端末20は、1つのアクセス範囲Xについて1つの暗号文CTXを復号すれば済む。つまり、実施の形態1では、検索端末20は、1つのアクセス範囲Xについて複数の暗号文CTXを復号しなければならない場合があった。暗号文CTXの復号は計算量が多く、処理時間がかかった。しかし、実施の形態3では、検索端末20は、1つのアクセス範囲Xについて1つの暗号文CTXを復号すれば済むため、鍵Kの生成の速度を早くすることができる。
その後、登録端末10Nがアクセス範囲Xを指定して別のタグtを登録する場合、登録端末10Nは鍵サーバ30から暗号文CTXを取得することにより、登録端末10Mによって生成された鍵Kを得る。そして、登録端末10Nは、登録端末10Mによって生成された鍵Kによりタグtを生成して検索サーバ40に登録する。
このように、登録端末10M及び登録端末10Nが同じ鍵Kによりタグtを生成することができる。その結果、検索端末20は、1つのアクセス範囲Xについて1つの暗号文CTXを復号すれば済む。
Claims (5)
- アクセスを許可する範囲を示すアクセス範囲Xと、登録を許可する範囲を示す登録範囲X’とを入力として、前記アクセス範囲Xと前記登録範囲X’とが設定され鍵Kが暗号化された暗号文CTXと、前記鍵Kとを生成する暗号化部と、
前記アクセス範囲Xと前記登録範囲X’と前記暗号化部によって生成された前記暗号文CTXとの組を鍵サーバに登録する鍵登録部と、
属性Y’と範囲を示す範囲情報X * とを前記鍵サーバに送信して、前記範囲情報X * と同じ範囲を示すアクセス範囲Xが設定され、かつ、登録を許可する範囲に前記属性Y’を含む登録範囲X’が設定された暗号文CT X を取得する暗号文取得部と、
前記暗号文取得部によって取得された前記暗号文CT X を、前記属性Y’が設定された復号鍵sk Y’ によって復号して鍵Kを生成する復号部と、
前記復号部によって生成された前記鍵Kと検索用のキーワードwとを入力として、検索用のタグtを生成するタグ生成部と、
前記タグ生成部によって生成された前記タグtを検索サーバに登録するタグ登録部と
を備える登録端末。 - 前記タグ登録部は、前記アクセス範囲Xと前記タグtとの組を前記検索サーバに登録する
請求項1に記載の登録端末。 - アクセスを許可する範囲を示すアクセス範囲Xと、登録を許可する範囲を示す登録範囲X’と、前記アクセス範囲Xと前記登録範囲X’とが設定され鍵Kが暗号化された暗号文CT X との組を登録端末から取得して、記憶装置に記憶する暗号文取得部と、
属性Y’と範囲を示す範囲情報X * とを登録端末から取得して、前記範囲情報X * と同じ範囲を示すアクセス範囲Xが設定され、かつ、登録を許可する範囲に前記属性Y’を含む登録範囲X’が設定された前記組を抽出する属性判定部と、
前記属性判定部によって前記組に含まれる暗号文CT X を、前記登録端末に送信する暗号文送信部と
を備える鍵サーバ。 - 登録端末と、検索端末と、鍵サーバと、検索サーバとを備える検索システムであり、
前記登録端末は、
アクセスを許可する範囲を示すアクセス範囲Xと、登録を許可する範囲を示す登録範囲X’とを入力として、前記アクセス範囲Xと前記登録範囲X’とが設定され鍵Kが暗号化された暗号文CTXと、前記鍵Kとを生成する暗号化部と、
前記アクセス範囲Xと前記登録範囲X’と前記暗号化部によって生成された前記暗号文CTXとの組を前記鍵サーバに登録する鍵登録部と、
属性Y’と範囲を示す範囲情報X * とを前記鍵サーバに送信して、前記範囲情報X * と同じ範囲を示すアクセス範囲Xが設定され、かつ、登録を許可する範囲に前記属性Y’を含む登録範囲X’が設定された暗号文CT X を取得する暗号文取得部と、
前記暗号文取得部によって取得された前記暗号文CT X を、前記属性Y’が設定された復号鍵sk Y’ によって復号して鍵Kを生成する復号部と、
前記復号部によって生成された前記鍵Kと検索用のキーワードwとを入力として、検索用のタグtを生成するタグ生成部と、
前記タグ生成部によって生成された前記タグtを前記検索サーバに登録するタグ登録部と
を備え、
前記検索端末は、
属性Yを前記鍵サーバに送信して、アクセスを許可する範囲に前記属性Yを含むアクセス範囲Xが設定された暗号文CTXを取得する暗号文取得部と、
前記暗号文取得部によって取得された前記暗号文CTXを、前記属性Yが設定された復号鍵skYによって復号して鍵Kを生成する復号部と、
前記復号部によって生成された鍵Kと検索用のキーワードw’とを入力として、検索用のトラップドアt’を生成するトラップドア生成部と、
前記トラップドア生成部によって生成された前記トラップドアt’を前記検索サーバに送信して、前記キーワードw’に対応するデータを取得するデータ取得部と
を備える検索システム。 - アクセスを許可する範囲を示すアクセス範囲Xと、登録を許可する範囲を示す登録範囲X’とを入力として、前記アクセス範囲Xと前記登録範囲X’とが設定され鍵Kが暗号化された暗号文CTXと、前記鍵Kとを生成する暗号化処理と、
前記アクセス範囲Xと前記登録範囲X’と前記暗号化処理によって生成された前記暗号文CTXとの組を鍵サーバに登録する鍵登録処理と、
属性Y’と範囲を示す範囲情報X * とを前記鍵サーバに送信して、前記範囲情報X * と同じ範囲を示すアクセス範囲Xが設定され、かつ、登録を許可する範囲に前記属性Y’を含む登録範囲X’が設定された暗号文CT X を取得する暗号文取得処理と、
前記暗号文取得処理によって取得された前記暗号文CT X を、前記属性Y’が設定された復号鍵sk Y’ によって復号して鍵Kを生成する復号処理と、
前記復号処理によって生成された前記鍵Kと検索用のキーワードwとを入力として、検索用のタグtを生成するタグ生成処理と、
前記タグ生成処理によって生成された前記タグtを検索サーバに登録するタグ登録処理と
をコンピュータに実行させる登録プログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2017/032857 WO2019053778A1 (ja) | 2017-09-12 | 2017-09-12 | 登録端末、検索端末、検索サーバ、検索システム、登録プログラム及び検索プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6362811B1 true JP6362811B1 (ja) | 2018-07-25 |
JPWO2019053778A1 JPWO2019053778A1 (ja) | 2019-11-07 |
Family
ID=62976530
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018511293A Active JP6362811B1 (ja) | 2017-09-12 | 2017-09-12 | 登録端末、鍵サーバ、検索システム、登録プログラム |
Country Status (5)
Country | Link |
---|---|
US (1) | US11170123B2 (ja) |
EP (1) | EP3675086B1 (ja) |
JP (1) | JP6362811B1 (ja) |
CN (1) | CN111066076B (ja) |
WO (1) | WO2019053778A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112163854A (zh) * | 2020-09-14 | 2021-01-01 | 北京理工大学 | 一种层级化基于区块链公钥可搜索加密方法及系统 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111930688B (zh) * | 2020-09-23 | 2021-01-08 | 西南石油大学 | 云服务器中多关键词查询的密态数据可搜索方法及装置 |
CN117596085A (zh) * | 2024-01-19 | 2024-02-23 | 华南理工大学 | 基于属性集的具有前后向隐私的可搜索加密方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050005132A1 (en) * | 2003-07-03 | 2005-01-06 | International Business Machines Corporation | Password management |
JP2005187140A (ja) * | 2003-12-25 | 2005-07-14 | Nippon Yusoki Co Ltd | サヤフォーク |
US20100153403A1 (en) * | 2008-12-12 | 2010-06-17 | Electronics And Telecommunications Research Institute | Method for data encryption and method for conjunctive keyword search of encrypted data |
WO2013084957A1 (ja) * | 2011-12-09 | 2013-06-13 | 日本電気株式会社 | 暗号化検索データベース装置、暗号化検索用データの追加削除方法および追加削除プログラム |
JP2015106354A (ja) * | 2013-12-02 | 2015-06-08 | 古河インフォメーション・テクノロジー株式会社 | 検索サジェスト装置、検索サジェスト方法、及び、プログラム |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4891933B2 (ja) | 2008-02-04 | 2012-03-07 | Kddi株式会社 | アクセス制御装置、アクセス制御方法およびプログラム |
US8874930B2 (en) | 2009-12-09 | 2014-10-28 | Microsoft Corporation | Graph encryption |
EP2525340B1 (en) * | 2010-01-15 | 2018-06-06 | Mitsubishi Electric Corporation | Confidential search system and encryption processing system |
JP5432736B2 (ja) * | 2010-01-18 | 2014-03-05 | 日本電信電話株式会社 | 暗号化された情報のためのキーワード検索システム、キーワード検索方法、検索要求装置、検索代行装置、プログラム、記録媒体 |
JP5424974B2 (ja) | 2010-04-27 | 2014-02-26 | 三菱電機株式会社 | 暗号処理システム、鍵生成装置、暗号化装置、復号装置、署名処理システム、署名装置及び検証装置 |
JP5412414B2 (ja) * | 2010-12-08 | 2014-02-12 | 株式会社日立製作所 | 検索可能暗号処理システム |
CN103329184B (zh) | 2011-01-13 | 2016-02-03 | 三菱电机株式会社 | 数据处理装置以及数据保管装置 |
JP2012164031A (ja) | 2011-02-03 | 2012-08-30 | Mitsubishi Electric Corp | データ処理装置及びデータ保管装置及びデータ処理方法及びデータ保管方法及びプログラム |
JP2013150026A (ja) | 2012-01-17 | 2013-08-01 | Mitsubishi Electric Corp | データ処理システム及び秘匿化装置及び秘密鍵生成装置及び秘匿化方法及び秘密鍵生成方法及びプログラム |
US9391965B2 (en) * | 2012-01-25 | 2016-07-12 | Mitsubishi Electric Corporation | Data search device, data search method, data search program, data registration device, data registration method, data registration program, and information processing device |
US10007803B2 (en) * | 2012-10-26 | 2018-06-26 | Infosys Limited | Searching over encrypted keywords in a database |
JP5836506B2 (ja) * | 2013-01-12 | 2015-12-24 | 三菱電機株式会社 | 鍵生成装置、鍵生成プログラム、秘匿検索システム及び鍵配布方法 |
US20150278553A1 (en) | 2013-01-18 | 2015-10-01 | Mitsubishi Electric Corporation | Data decryption device, attribute-based encryption system, random number element removing device, randomized secret key generation device, data decryption method, and data decryption program |
WO2017023385A2 (en) * | 2015-07-07 | 2017-02-09 | Private Machines Inc. | Secure searchable and shareable remote storage system and method |
CN105323061B (zh) * | 2015-12-02 | 2019-07-12 | 河海大学 | 一种可关键字搜索的外包密钥生成和解密的属性基系统及解密方法 |
-
2017
- 2017-09-12 EP EP17924972.7A patent/EP3675086B1/en active Active
- 2017-09-12 US US16/628,974 patent/US11170123B2/en active Active
- 2017-09-12 WO PCT/JP2017/032857 patent/WO2019053778A1/ja unknown
- 2017-09-12 CN CN201780094589.8A patent/CN111066076B/zh active Active
- 2017-09-12 JP JP2018511293A patent/JP6362811B1/ja active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050005132A1 (en) * | 2003-07-03 | 2005-01-06 | International Business Machines Corporation | Password management |
JP2005187140A (ja) * | 2003-12-25 | 2005-07-14 | Nippon Yusoki Co Ltd | サヤフォーク |
US20100153403A1 (en) * | 2008-12-12 | 2010-06-17 | Electronics And Telecommunications Research Institute | Method for data encryption and method for conjunctive keyword search of encrypted data |
WO2013084957A1 (ja) * | 2011-12-09 | 2013-06-13 | 日本電気株式会社 | 暗号化検索データベース装置、暗号化検索用データの追加削除方法および追加削除プログラム |
JP2015106354A (ja) * | 2013-12-02 | 2015-06-08 | 古河インフォメーション・テクノロジー株式会社 | 検索サジェスト装置、検索サジェスト方法、及び、プログラム |
Non-Patent Citations (1)
Title |
---|
平野 貴人 ほか: "確定値を部分的に使った高速な共通鍵暗号ベース秘匿検索", コンピュータセキュリティシンポジウム 2017 論文集, vol. Vol.2017 No.2 2E3−3, JPN7017003701, 16 October 2017 (2017-10-16), JP, pages 749 - 756, ISSN: 0003802234 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112163854A (zh) * | 2020-09-14 | 2021-01-01 | 北京理工大学 | 一种层级化基于区块链公钥可搜索加密方法及系统 |
CN112163854B (zh) * | 2020-09-14 | 2022-08-05 | 北京理工大学 | 一种层级化基于区块链公钥可搜索加密方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
EP3675086B1 (en) | 2021-10-27 |
EP3675086A1 (en) | 2020-07-01 |
WO2019053778A1 (ja) | 2019-03-21 |
CN111066076A (zh) | 2020-04-24 |
CN111066076B (zh) | 2023-03-17 |
EP3675086A4 (en) | 2020-08-26 |
US20200226279A1 (en) | 2020-07-16 |
US11170123B2 (en) | 2021-11-09 |
JPWO2019053778A1 (ja) | 2019-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108449172B (zh) | 加密/解密方法和计算设备的集成电路 | |
JP5875441B2 (ja) | データを暗号化する装置及び方法 | |
US20120269340A1 (en) | Hierarchical encryption/decryption device and method thereof | |
JP6362811B1 (ja) | 登録端末、鍵サーバ、検索システム、登録プログラム | |
JP6522263B2 (ja) | 準同型演算装置、暗号システム及び準同型演算プログラム | |
CN107534549B (zh) | 可读存储介质、用于数据流字块加密的方法及系统 | |
US20200186328A1 (en) | Encryption device, decryption device, encryption method, decryption method, and computer readable medium | |
US11321475B2 (en) | Entropy data based on error correction data | |
US9887835B2 (en) | Symmetric stream cipher | |
US10374608B1 (en) | Bridged integrated circuits | |
US20210173957A1 (en) | Encrypted tag generation device, search query generation device, and searchable encryption system | |
US10057054B2 (en) | Method and system for remotely keyed encrypting/decrypting data with prior checking a token | |
CN113542224B (zh) | 培训数据的处理方法、装置、服务器及介质 | |
JP6462968B1 (ja) | データ管理装置、データ管理方法及びデータ管理プログラム | |
US10886923B1 (en) | Bridged integrated circuits | |
JP6797337B2 (ja) | メッセージ認証装置、メッセージ認証方法及びメッセージ認証プログラム | |
US11451372B2 (en) | Privacy-preserving analysis device, privacy-preserving analysis system, privacy-preserving analysis method, and computer readable medium | |
US10936757B2 (en) | Registration destination determination device, searchable encryption system, destination determination method, and computer readable medium | |
WO2017221308A1 (ja) | データ管理装置、データ管理方法、データ管理プログラム、検索装置、検索方法及び検索プログラム | |
WO2020245898A1 (ja) | 検索装置、サーバ装置、検索方法、情報処理方法、検索プログラム及び情報処理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180228 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180228 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20180228 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20180314 |
|
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: 20180529 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180626 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6362811 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 |