JP5836506B2 - 鍵生成装置、鍵生成プログラム、秘匿検索システム及び鍵配布方法 - Google Patents
鍵生成装置、鍵生成プログラム、秘匿検索システム及び鍵配布方法 Download PDFInfo
- Publication number
- JP5836506B2 JP5836506B2 JP2014556315A JP2014556315A JP5836506B2 JP 5836506 B2 JP5836506 B2 JP 5836506B2 JP 2014556315 A JP2014556315 A JP 2014556315A JP 2014556315 A JP2014556315 A JP 2014556315A JP 5836506 B2 JP5836506 B2 JP 5836506B2
- Authority
- JP
- Japan
- Prior art keywords
- public parameter
- key
- generation
- secret search
- keyword
- 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
- 238000000034 method Methods 0.000 title claims description 69
- 238000009826 distribution Methods 0.000 title claims description 14
- PWPJGUXAGUPAHP-UHFFFAOYSA-N lufenuron Chemical compound C1=C(Cl)C(OC(F)(F)C(C(F)(F)F)F)=CC(Cl)=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F PWPJGUXAGUPAHP-UHFFFAOYSA-N 0.000 title 1
- 230000005540 biological transmission Effects 0.000 claims description 24
- 230000004044 response Effects 0.000 claims description 7
- 239000013598 vector Substances 0.000 description 19
- 230000015654 memory Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 230000000694 effects Effects 0.000 description 7
- 238000003860 storage Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 125000004122 cyclic group Chemical group 0.000 description 4
- 230000009977 dual effect Effects 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000007429 general method Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000013500 data storage Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 239000003643 water by type Substances 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012946 outsourcing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0442—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
-
- 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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
-
- 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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
- H04L9/3073—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/42—Anonymization, e.g. involving pseudonyms
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Software Systems (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Physics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Description
暗号化データと前記暗号化データを検索するための暗号化されたキーワードである暗号化タグとを生成して送信する送信装置と、
前記送信装置から前記暗号化データと前記暗号化タグとを受信して保管すると共に秘匿検索の要求に応じて、前記秘匿検索を実行するサーバ装置と、
前記キーワードのデジタル署名に相当するデータであると共に前記サーバ装置に前記暗号化データの前記秘匿検索を要求するデータであるトラップドアを生成して前記サーバ装置に送信し、前記秘匿検索の結果を前記サーバ装置から受信する受信装置と
を備えた秘匿検索システムで使用される鍵情報であって、
前記送信装置による前記キーワードの暗号化と、前記受信装置による前記トラップドアの生成とに使用される真の公開パラメータPPと、
前記送信装置による前記キーワードの暗号化と、前記受信装置による前記トラップドアの生成と、前記サーバ装置による前記秘匿検索とに使用される保護鍵PK’と
を含む鍵情報である公開パラメータPK
に含まれる前記真の公開パラメータPPを生成する第1生成部と、
前記公開パラメータPKに含まれる前記保護鍵PK’を、前記第1生成部によって生成される前記真の公開パラメータPPとは分離して生成する第2生成部と
を備えたことを特徴とする。
図1は、各実施の形態に共通する秘匿検索システム1000の構成図である。
(1)送信者100−1から送信者100−nは、暗号化タグの作成者を表す。ここでnは任意の整数であり、PEKSにおいて暗号化タグを作成する送信者の数を表す。なお、送信者100−1から送信者100−nの実体は、送信者の使用する送信装置である。よって送信者100−1〜100−nとは、これら送信者の使用する1〜nの送信装置を意味する。以下では送信者100−1〜100−nを、送信装置100−1〜100−nと記載する場合がある。また、各送信者(各送信装置)を区別する必要が無い場合には、単に、送信者100(送信装置100)と記載する。
(2)受信者300は、公開鍵、マスタ秘密鍵、トラップドアの作成者を表す。なお受信者300の実体は、受信者300の使用する受信装置である。よって受信者300とは、受信者300の使用する受信装置を意味する。以下では受信者300を受信装置300と記載する場合がある。
(3)サーバ装置200(以下、サーバ200という)は、外部データベースを表す。これらはインターネットなどのネットワーク400を介して接続されているものとする。
(4)図1に示すように、秘匿検索システム1000は、送信装置100−1〜100−n、サーバ200及び受信装置300を備えている。
実施の形態1では、非特許文献2に記載のPEKSにおいて、トラップドアの安全性を確保する方法を開示する。まず、非特許文献2に記載のPEKSのアルゴリズムのうち、本実施の形態1に関係する部分について説明する。なお以下では、「非特許文献2に記載のPEKSのアルゴリズム」といえば、非特許文献2の4節「Our Main Construction」に記載のpredicate−only versionのアルゴリズムを指すものとする。非特許文献2の付録B節には「A Full−Fledged Predicate Encryption Scheme」として、4節のアルゴリズムを発展させ、いわゆる関数型暗号として用いる場合のアルゴリズムが記載されているが、PEKSとして用いる場合には4節のアルゴリズムで十分であることは、当業者であれば容易に理解できる。
図2において、
(1)p,q,rはそれぞれ素数を表す。
(2)Gはペアリング演算e^:G×G→GT
が可能な楕円曲線上の、位数N=pqrの巡回群を表す。
(3)GTはペアリング演算後の位数Nの巡回群を表す。
(4)e^はペアリング演算を表す。
(5)gp,gq,grは、「それぞれ位数がp,q,rであるようなGp、Gq、Gr」の部分群の生成元を表す。
(6)R0は、群Gr上で一様ランダムに選ばれた要素を表す。
(7){h1,i,h2,i}i=1,・・・,nは、群Gp上で一様ランダムに選ばれた要素を表す。
ここでnは、暗号化タグの生成とトラップドアの生成の際に用いる述語ベクトルの次元数を表す。
(8){R1,i,R2,i}i=1,・・・,nは、群Gr上で一様ランダムに選ばれた要素を表す。
なお、図2に示すように、後の説明のために、本実施の形態1においては、
「N,G,GT,e^」
の部分を真の公開パラメータPPと呼び、
残りの構成要素、すなわち、
「gp,gr,Q,{H1,i,H2,i}n i=1,・・・,n」
の部分を保護鍵PK’と呼ぶことにする。
つまり、非特許文献2に記載のセットアップ・アルゴリズムで生成される公開パラメータPKは、真の公開パラメータPPと保護鍵PK’からなるものとする。公開パラメータPPと保護鍵PK’との違いは、後の説明で明らかになる。
次に、図3を用いて、非特許文献2に記載のPEKSのアルゴリズムのうち、送信者100が暗号化タグを生成する際に利用するアルゴリズムである暗号化(Enc)アルゴリズムの手順を示す。従って図3の動作の主語は送信者(送信装置)である。暗号化タグを生成する際には、送信者100は、受信者300から配布された公開パラメータPK(PPとPK’の両方)を使用して、暗号化タグを生成する。
図3は、暗号化(Enc)アルゴリズムの手順を示したフローチャートである。
図3において、
送信者100は
属性ベクトルx→=(x1,x2,・・・,xn)∈ZN n
を暗号化して暗号化タグを生成したいとする。
ここで、
属性ベクトルx→∈ZN n
は暗号化するキーワードに対応したデータであり、完全一致検索やAND検索、OR検索など検索する内容によって異なる形式を取るデータである。例えば1キーワードの完全一致検索の場合には、x→=(1,キーワード)
である。
なお、
ZNは、0からN−1までの整数の集合を表す。
また、上記の
x→=(1,キーワード)
における「キーワード」は、整数化されたキーワードであり、後述の他の場合も同様である。
(2)次に、ステップS302にて、送信者100は、
群Grから、
公開パラメータPK=(PP,PK’)
のうちの保護鍵PK’が必要となる。
次に、図4を用いて、非特許文献2に記載のPEKSのアルゴリズムのうち、受信者300がトラップドアを生成する際に利用するアルゴリズムである鍵生成(GenKey)アルゴリズムの手順を示す。従って図4の動作の主語は受信者(受信装置)である。受信者300は、図2に示した公開パラメータPK(PP、PK’の両方)と、マスタ秘密鍵SKとを用いて、トラップドアを生成する。
図4は、鍵生成(GenKey)アルゴリズムの手順を示したフローチャートである。
図4において、受信者300は
述語ベクトルv→=(v1,v2,・・・,vn)∈ZN n
にデジタル署名してトラップドアを生成したいとする。
ここで述語ベクトルv→∈ZN n
は、検索するキーワードに対応したデータであり、完全一致検索やAND検索、OR検索など検索する内容によって異なる形式を取るデータである。
例えば1キーワードの完全一致検索の場合には、
v→=(キーワード,N−1)である。
(1)図4において、受信者300は、まずステップS401にて、Zpから
(2)次に、ステップS402にて、受信者300は、GrからR5をランダムに選ぶ。
(3)次に、ステップS403にて、受信者300は、Zqからf1,f2をランダムに選ぶ。
(4)最後に、ステップS404にて、受信者300は、
次に、図5を用いて、サーバ200が秘匿検索を実行する際に利用するアルゴリズムである復号(Dec)アルゴリズムの手順を示す。従って図5の動作の主語はサーバ200である。サーバ200による秘匿検索では、サーバ200は、受信者から送信された一つのトラップドアを基に、複数の送信者から送信された複数の暗号化タグのそれぞれに対して秘匿検索を実行する。この秘匿検索の際に、後述のように、公開パラメータPKのうち、真の公開パラメータPPが必要となる。言い換えれば、図2のように公開パラメータPKは、真の公開パラメータPPと、保護鍵PK’とを含むが、サーバ200の秘匿検索には、保護鍵PK’は、無くてもよい。
図5は、復号(Dec)アルゴリズムの手順を示したフローチャートである。
(1)図5において、サーバ200は、まずステップS501にて、
(2)次に、ステップS502にて、サーバ200はT=1かどうかを判断する。T=1であれば、ステップS503にて1を返して終了する。T=1でなければ、ステップS504にて0を返して終了する。
この復号(Dec)アルゴリズムの手順において、ステップS501を実行する際に公開パラメータPKが必要となる。
ただし、必要となるのは、
公開パラメータPK=(PP,PK’)
のうちの真の公開パラメータPPの部分のみであって、保護鍵PK’の部分は必要ない。これが図2に示す、真の公開パラメータPPと保護鍵PK’との区別の基準である。つまり、保護鍵PK’は、公開パラメータPKの成分のうち、暗号化アルゴリズム(送信者の暗号化タグの生成、及び受信者のトラップドアの生成)には必要であるが、復号アルゴリズム(サーバの秘匿検索)には必要のない成分をいう。また、真の公開パラメータPPは、公開パラメータPKの成分のうち、暗号化アルゴリズムと復号アルゴリズムの両方に必要な成分をいう。
(1)まず受信者300は、ステップS601において、セットアップ・アルゴリズムにより
公開パラメータPK=(PP,PK’)
を生成する。公開パラメータPKの具体的な生成方法は、非特許文献2に記載のセットアップ・アルゴリズムに準じる。また、真の公開パラメータPPと保護鍵PK’との区別は、前述のとおりである。(2)次に受信者300は、ステップS602において、公開パラメータPKを送信者100−1〜100−nへ配布する。この際、保護鍵PK’がサーバ200に漏洩しないような方法で配布することが望ましい。このような配布方法には、例えば以下の(a),(b)がある。
なお図9〜図11で後述する鍵生成装置310−1等の場合、公開パラメータPKは、真の公開パラメータPPと保護鍵PK’とが分離された状態で配布されても構わない。
(a)送信者に保護鍵PK’をオフラインで直接供給する方法である。例えばICカードなどの格納媒体に格納して全送信者100に直接手交する方法である。
(b)あるいは、送信者100だけが閲覧できるネットワーク上の電子掲示板に保護鍵PK’を掲示する方法などがある。送信者100は電子掲示板を介して保護鍵PK’を取得する。
(3)最後に受信者300は、ステップS603において、公開パラメータPKのうち、真の公開パラメータPPを、サーバ200へ配布する。サーバ200への配布の際は、特に漏洩の防止を図る必要はない。
各送信者100−1〜100−nは、ステップS611において受信者300から公開パラメータPKを受け取る。受け取った公開パラメータPKは、ICカードなどのデータ格納機器に格納される。
サーバ200は、ステップS621において受信者300から真の公開パラメータPPを受け取る。受け取った真の公開パラメータPPは、データ格納機器に格納される。
暗号化データと暗号化データを検索するための暗号化されたキーワードである暗号化タグとを生成して送信する送信装置100と、
送信装置100から暗号化データと暗号化タグとを受信して保管すると共に秘匿検索の要求に応じて、秘匿検索を実行するサーバ200と、
前記キーワードのデジタル署名に相当するデータであると共にサーバ200に暗号化データの秘匿検索を要求するデータであるトラップドアを生成してサーバ200に送信し、秘匿検索の結果をサーバ200から受信する受信装置300と
を備えた秘匿検索システム1000(図7)で使用される鍵情報である。
そして、公開パラメータPKは、図2に示すように、真の公開パラメータPPと保護鍵PK’とを含む鍵情報である。また図7、図8に示すように、真の公開パラメータPPは、送信装置100による暗号化タグの生成、受信装置300によるトラップドアの生成、及びサーバ200による秘匿検索に使用される。また保護鍵PK’は、送信装置100による暗号化タグの生成及び受信装置300によるトラップドアの生成に使用されるが、サーバ200の秘匿検索には使用されない。そこで鍵生成装置310−1では、それぞれ、真の公開パラメータ生成部311と保護鍵生成部312とで、真の公開パラメータPP、保護鍵PK’を分離して生成する。分離して生成された真の公開パラメータPPのみが、図6のように、受信装置300からサーバ200に配布される。これにより、トラップドアの安全性が高まる。
(1)受信者300からトラップドアを受け取ったサーバ200は、まずトラップドアの内部に含まれているであろうキーワードを推定する。
(2)そして、サーバ200は保護鍵PK’をも用いて、そのキーワードに対する暗号化タグを作成する。
(3)そしてサーバ200はトラップドアと暗号化タグとを復号アルゴリズムにかけ、出力を見る。もし出力が1であれば、推定したキーワードがトラップドアの内部に含まれているキーワードと一致していることがわかる。もし出力が0であれば、推定したキーワードがトラップドアの内部に含まれているキーワードと一致していないことがわかるので、サーバ200は次のキーワードを推定し、同じことを繰り返す。
(4)以上の処理をサーバ200の能力の許す限り続けることで、キーワードの候補が次々に絞られていく。また、使われるキーワードの種類がある程度限られていることが事前にわかっている場合には、遅かれ早かれ、上記の方法でキーワードの情報が完全にわかってしまう。このようにして、トラップドアからその内部に含まれているキーワードに関する情報が引き出されてしまう。
実施の形態1では、非特許文献2に記載のPEKSにおいて、トラップドアの安全性を確保する方法を開示した。本実施の形態2では、非特許文献3に記載の関数型暗号を、PEKSとして利用する場合において、トラップドアの安全性を確保する方法を開示する。システム構成は、図1である。
(2)位数qの有限体をFqとする。
(3)位数qの対称ペアリング群をGとする。
(4)Gの生成元をgとする。
(5)G上のペアリング演算を、e:G×G→GTとする。
ここでGTはペアリング演算後の位数qの巡回群である。
(6)対称ペアリング群の直積(direct product of symmetric pairing groups)で構成される双対ペアリングベクトル空間(DPVS:Dual Pairing Vector Space)を、
V=G×…×G
とする。
(7)VがN次元のDPVSのとき、
Vの標準基底を
A=(a0,・・・,aN−1)
と表す。
ここでai(i=0,...,N−1)は
(8)Fq上の乱数からなるN次正則行列を、X=(Xi,j)とする。
(9)AにXを掛けて得られるランダム基底XAを、
B=(b0,・・・,bN−1)と表す。
すなわち、
bi(i=0,・・・,N−1)
は、それぞれN次元のベクトルである。
(10)Xの転置逆行列(XT)−1に乱数ψを掛けて得られる行列を、
θ=(θi,j)=ψ(XT)−1とする。
(11)Aにθを掛けて得られる基底を、
B*=(b* 0,・・・,b* N−1)
と表す。
すなわち、
(12)ランダム基底Bについて、Fq上の
ベクトルx→=(x0,・・・,xN−1)∈Fq N
を係数とする線型結合を
(x0,・・・,xN−1)B
と表す。
すなわち、
続いて、図13を用いて、非特許文献3に記載の関数型暗号のアルゴリズムのうち、セットアップ・アルゴリズムを実行して作成される公開パラメータPKとマスタ秘密鍵SKとの構成を説明する。
図13は、本実施の形態2における公開パラメータPKと、マスタ秘密鍵SKとの構成を示す。実施の形態1と同様に、受信者300が公開パラメータPK、マスタ秘密鍵SKを生成するのは上記のとおりである。
PP=(q,V,GT,A,e,gT)
である。
ここで、
(1)qは素数、
(2)Vは4n+2次元(nは、暗号化タグの生成とトラップドアの生成の際に用いる述語ベクトルの次元数)の双対ペアリングベクトル空間、
(3)GTはペアリング演算後の位数qの巡回群、
(4)AはVの標準基底、
(5)eはペアリング演算、
(6)gTはGTの生成元、
を表す。
また、
保護鍵PK’は
B^=(b0,・・・,bn,b4n+1)
で構成される。
なお、B^の「^」は、上記の基底Bの一部を用いて作ったことを示す。
また、マスタ秘密鍵SKは、
B*^=(b* 0,・・・,b* n,b* 3n+1,・・・,b* 4n)
で構成される。
なお、B*^の「^」は、上記の基底B*の一部を用いて作ったことを示す。
なお、これらは、非特許文献3に記載のアルゴリズムGob(λ,4n+2)により生成される。
次に、図14を用いて、非特許文献3に記載の関数型暗号のアルゴリズムのうち、送信者100が暗号化タグを生成する際に利用するアルゴリズムである暗号化(Enc)アルゴリズムの手順を示す。従って図14の動作の主語は送信者(送信装置)である。暗号化タグを生成する際には、送信者100は、受信者300から配布された図13の公開パラメータPK(PPとPK’の両方)を使用して、暗号化タグを生成する。なお、関数型暗号をPEKSとして利用するため、アルゴリズムの一部を変更した上で、変更後のアルゴリズムを記載する。
図14は、暗号化(Enc)アルゴリズムの手順を示したフローチャートである。
図14において、送信者100は
属性ベクトルx→=(x1,x2,・・・,xn)∈Fq n
を暗号化して暗号化タグを生成したいとする。
ここで
属性ベクトルx→∈Fq n
は暗号化するキーワードに対応したデータであり、完全一致検索やAND検索、OR検索など検索する内容によって異なる形式を取るデータである。
例えば1キーワードの完全一致検索の場合には、
x→=(1,キーワード)
である。
(1)このとき、送信者100は、まずステップS901にて、Fqからω,φをランダムに選ぶ。
(2)次に、ステップS902にて、送信者100は、
次に、図15を用いて、非特許文献3に記載の関数型暗号のアルゴリズムのうち、受信者300がトラップドアを生成する際に利用するアルゴリズムである鍵生成(KeyGen)アルゴリズムの手順を示す。従って図15の動作の主語は受信者(受信装置)である。受信者300は、図13に示した公開パラメータPK(PP、PK’の両方)と、マスタ秘密鍵SKとを用いて、トラップドアを生成する。
図15は、鍵生成(KeyGen)アルゴリズムの手順を示したフローチャートである。
図15において、受信者300は、
述語ベクトルv→=(v1,v2,・・・,vn)∈Fq n
にデジタル署名してトラップドアを生成したいとする。
ここで、
述語ベクトルv→∈Fq n
は検索するキーワードに対応したデータであり、完全一致検索やAND検索、OR検索など検索する内容によって異なる形式を取るデータである。
例えば1キーワードの完全一致検索の場合には、
v→=(キーワード,N−1)
である。
(1)このとき、受信者300は、まずステップS1001にて、Fqからσをランダムに選ぶ。
(2)次に、受信者300は、ステップS1002にて、Fq nからη→をランダムに選ぶ。
(3)最後に受信者300は、ステップS1003にて、
次に、図16を用いて、サーバ200が秘匿検索を実行する際に利用するアルゴリズムである復号(Dec)アルゴリズムの手順を示す。従って図16の動作の主語はサーバ200である。サーバ200による秘匿検索では、サーバ200は、実施の形態1と同様に、受信者から送信された一つのトラップドアを基に、送信者から送信された複数の暗号化タグのそれぞれに対して秘匿検索を実行する。この秘匿検索の際に、公開パラメータPK(図13)のうち、真の公開パラメータPPが必要となる。サーバ200の秘匿検索に保護鍵PK’が無くてもよいのは実施の形態1と同様である。なお、関数型暗号をPEKSとして利用するため、アルゴリズムの一部を変更した上で、変更後のアルゴリズムを記載する。
図16は、復号(Dec)アルゴリズムの手順を示したフローチャートである。
T=e(C,k*)を計算する。
(2)次に、サーバ200は、ステップS1102にて、T=gTかどうかを判断する。T=gTであれば、ステップS1103にて1を返して終了する。T=gTでなければ、ステップS1104にて0を返して終了する。
次に、実施の形態2における公開パラメータPKの各エンティティへの配布方法を説明する。実施の形態2における公開パラメータPKの各エンティティへの配布方法は、実施の形態1の図6と同様である。すなわち、図6において、ステップS601からステップS603、およびステップS611とステップS621により、公開パラメータPKを各送信者100に配布し、真の公開パラメータPPをサーバ200に配布する。実施の形態1との違いは、公開パラメータPKの具体的な中身の違いであり、それはすでに述べたようなアルゴリズムの違いに起因したものである。
また、本実施の形態2に示した公開パラメータPKの配布方法をとることにより、受信者300とサーバ200との間の通信量を低減できるという効果がある。
図17、図18を参照して実施の形態3を説明する。実施の形態3は、コンピュータである送信装置100、受信装置300、サーバ200のハードウェア構成を説明する。送信装置100、受信装置300、サーバ200はいずれも同様のコンピュータであるので、以下の説明では、受信装置300を想定して説明する。受信装置300の説明は送信装置100、サーバ200にも当てはまる。
Claims (9)
- 暗号化データと前記暗号化データを検索するための暗号化されたキーワードである暗号化タグとを生成して送信する送信装置と、
前記送信装置から前記暗号化データと前記暗号化タグとを受信して保管すると共に秘匿検索の要求に応じて、前記秘匿検索を実行するサーバ装置と、
前記キーワードのデジタル署名に相当するデータであると共に前記サーバ装置に前記暗号化データの前記秘匿検索を要求するデータであるトラップドアを生成して前記サーバ装置に送信し、前記秘匿検索の結果を前記サーバ装置から受信する受信装置と
を備えた秘匿検索システムで使用される鍵情報であって、
前記送信装置による前記キーワードの暗号化と、前記受信装置による前記トラップドアの生成と、前記サーバ装置による前記秘匿検索とに使用される真の公開パラメータPPと、
前記送信装置による前記キーワードの暗号化と、前記受信装置による前記トラップドアの生成とに使用される保護鍵PK’と
を含む鍵情報である公開パラメータPK
に含まれる前記真の公開パラメータPPを生成する第1生成部と、
前記公開パラメータPKに含まれる前記保護鍵PK’を、前記第1生成部によって生成される前記真の公開パラメータPPとは分離して生成する第2生成部と
を備えたことを特徴とする鍵生成装置。 - 前記鍵生成装置は、さらに、
前記公開パラメータPKを入力する入力部を備え、
前記第1生成部は、
前記入力部が入力した前記公開パラメータPKから前記真の公開パラメータPPを抽出することによって、前記真の公開パラメータPPを生成し、
前記第2生成部は、
前記入力部が入力した前記公開パラメータPKから前記保護鍵PK’を抽出することによって、前記保護鍵PK’を生成する
ことを特徴とする請求項1記載の鍵生成装置。 - 前記鍵生成装置は、さらに、
前記公開パラメータPKを生成する第3生成部を備え、
前記入力部は、
前記第3生成部が生成した前記公開パラメータPKを入力することを特徴とする請求項2記載の鍵生成装置。 - コンピュータに、
暗号化データと前記暗号化データを検索するための暗号化されたキーワードである暗号化タグとを生成して送信する送信装置と、
前記送信装置から前記暗号化データと前記暗号化タグとを受信して保管すると共に秘匿検索の要求に応じて、前記秘匿検索を実行するサーバ装置と、
前記キーワードのデジタル署名に相当するデータであると共に前記サーバ装置に前記暗号化データの前記秘匿検索を要求するデータであるトラップドアを生成して前記サーバ装置に送信し、前記秘匿検索の結果を前記サーバ装置から受信する受信装置と
を備えた秘匿検索システムで使用される鍵情報であって、
前記送信装置による前記キーワードの暗号化と、前記受信装置による前記トラップドアの生成と、前記サーバ装置による前記秘匿検索とに使用される真の公開パラメータPPと、
前記送信装置による前記キーワードの暗号化と、前記受信装置による前記トラップドアの生成とに使用される保護鍵PK’と
を含む鍵情報である公開パラメータPK
に含まれる前記真の公開パラメータPPを生成する第1生成処理、
前記公開パラメータPKに含まれる前記保護鍵PK’を、前記第1生成処理によって生成される前記真の公開パラメータPPとは分離して生成する第2生成処理、
を実行させるための鍵生成プログラム。 - 暗号化データと前記暗号化データを検索するための暗号化されたキーワードである暗号化タグとを生成して送信する送信装置と、
前記送信装置から前記暗号化データと前記暗号化タグとを受信して保管すると共に秘匿検索の要求に応じて、前記秘匿検索を実行するサーバ装置と、
前記キーワードのデジタル署名に相当するデータであると共に前記サーバ装置に前記暗号化データの前記秘匿検索を要求するデータであるトラップドアを生成して前記サーバ装置に送信し、前記秘匿検索の結果を前記サーバ装置から受信する受信装置と
を備えた秘匿検索システムにおいて、
前記受信装置は、
前記秘匿検索システムで使用される鍵情報であって、
前記送信装置による前記キーワードの暗号化と、前記受信装置による前記トラップドアの生成と、前記サーバ装置による前記秘匿検索とに使用される真の公開パラメータPPと、
前記送信装置による前記キーワードの暗号化と、前記受信装置による前記トラップドアの生成とに使用される保護鍵PK’と
を含む鍵情報である公開パラメータPK
に含まれる前記真の公開パラメータPPを生成する第1生成部と、
前記公開パラメータPKに含まれる前記保護鍵PK’を、前記第1生成部によって生成される前記真の公開パラメータPPとは分離して生成する第2生成部と
を有する鍵生成装置
を備えたことを特徴とする秘匿検索システム。 - 前記サーバ装置は、
前記鍵生成装置が生成した前記真の公開パラメータPPと前記保護鍵PK’とのうち、前記真の公開パラメータPPのみが配布されることを特徴とする請求項5記載の秘匿検索システム。 - 前記送信装置は、
前記鍵生成装置の前記第2生成部が生成した前記保護鍵PK’が、オフラインで供給されることを特徴とする請求項5または6のいずれかに記載の秘匿検索システム。 - 前記送信装置は、
前記鍵生成装置の前記第2生成部が生成した前記保護鍵PK’が、前記送信装置だけが閲覧可能な電子掲示板を介して供給されることを特徴とする請求項5または6のいずれかに記載の秘匿検索システム。 - 暗号化データと前記暗号化データを検索するための暗号化されたキーワードである暗号化タグとを生成して送信する送信装置と、
前記送信装置から前記暗号化データと前記暗号化タグとを受信して保管すると共に秘匿検索の要求に応じて、前記秘匿検索を実行するサーバ装置と、
前記キーワードのデジタル署名に相当するデータであると共に前記サーバ装置に前記暗号化データの前記秘匿検索を要求するデータであるトラップドアを生成して前記サーバ装置に送信し、前記秘匿検索の結果を前記サーバ装置から受信する受信装置と
を備えた秘匿検索システムで使用される鍵情報であって、
前記送信装置による前記キーワードの暗号化と、前記受信装置による前記トラップドアの生成と、前記サーバ装置による前記秘匿検索とに使用される真の公開パラメータPPと、
前記送信装置による前記キーワードの暗号化と、前記受信装置による前記トラップドアの生成とに使用される保護鍵PK’と
を含む鍵情報である公開パラメータPKのうち、
前記送信装置には、前記真の公開パラメータPPと前記保護鍵PK’との両方が配布され、
前記サーバ装置には、前記真の公開パラメータPPのみが配布される
ことを特徴とする鍵配布方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2013/050495 WO2014109066A1 (ja) | 2013-01-12 | 2013-01-12 | 鍵生成装置、鍵生成プログラム、秘匿検索システム及び鍵配布方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP5836506B2 true JP5836506B2 (ja) | 2015-12-24 |
JPWO2014109066A1 JPWO2014109066A1 (ja) | 2017-01-19 |
Family
ID=51166733
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014556315A Active JP5836506B2 (ja) | 2013-01-12 | 2013-01-12 | 鍵生成装置、鍵生成プログラム、秘匿検索システム及び鍵配布方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9237137B2 (ja) |
EP (1) | EP2945313B1 (ja) |
JP (1) | JP5836506B2 (ja) |
CN (1) | CN104798339B (ja) |
WO (1) | WO2014109066A1 (ja) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
US10235539B2 (en) | 2013-02-25 | 2019-03-19 | Mitsubishi Electric Corporation | Server device, recording medium, and concealed search system |
JP6228912B2 (ja) * | 2014-12-18 | 2017-11-08 | 日本電信電話株式会社 | ブラインド秘密鍵発行システム、ブラインドデータ検索システム、これらの方法、鍵生成サーバ、復号装置及びプログラム |
JP6272546B2 (ja) * | 2015-02-20 | 2018-01-31 | 三菱電機株式会社 | データ保管装置及びデータ処理方法及びデータ処理プログラム |
CN105490807A (zh) * | 2016-01-04 | 2016-04-13 | 成都卫士通信息产业股份有限公司 | 一种开盖毁钥的vpn设备 |
EP3483867B1 (en) * | 2016-07-06 | 2022-04-20 | Nippon Telegraph and Telephone Corporation | System, device, method, and program for indexing a secret-shared array with secure multiparty computations |
CN106603636B (zh) * | 2016-11-29 | 2020-05-26 | 中国银联股份有限公司 | 一种差错交易的标准化方法及装置 |
EP3675086B1 (en) * | 2017-09-12 | 2021-10-27 | Mitsubishi Electric Corporation | Registration terminal, search terminal, search server, search system, registration program, and search program |
EP3731107B1 (en) * | 2018-01-17 | 2021-10-27 | Mitsubishi Electric Corporation | Data management device, search device, registration device, data management method, and data management program |
CN112074889B (zh) * | 2018-05-15 | 2023-07-04 | 三菱电机株式会社 | 隐匿检索装置和隐匿检索方法 |
US11032251B2 (en) * | 2018-06-29 | 2021-06-08 | International Business Machines Corporation | AI-powered cyber data concealment and targeted mission execution |
JP7060115B2 (ja) * | 2019-01-10 | 2022-04-26 | 日本電信電話株式会社 | 秘密配列アクセス装置、秘密配列アクセス方法、およびプログラム |
CN112861153B (zh) * | 2021-02-10 | 2024-10-15 | 华中科技大学 | 一种关键字可搜索延迟加密方法及系统 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007235659A (ja) | 2006-03-02 | 2007-09-13 | Mebius Corp | 鍵管理方法、暗号処理方法、電子署名方法、アクセス管理方法 |
JP2007318583A (ja) | 2006-05-29 | 2007-12-06 | Sony Ericsson Mobilecommunications Japan Inc | コンテンツ再生装置 |
US8520842B2 (en) * | 2010-01-07 | 2013-08-27 | Microsoft Corporation | Maintaining privacy during user profiling |
JP5334873B2 (ja) | 2010-01-08 | 2013-11-06 | 三菱電機株式会社 | 暗号処理システム、鍵生成装置、鍵委譲装置、暗号化装置、復号装置、暗号処理方法及び暗号処理プログラム |
WO2011086687A1 (ja) * | 2010-01-15 | 2011-07-21 | 三菱電機株式会社 | 秘匿検索システム及び暗号処理システム |
JP5424974B2 (ja) | 2010-04-27 | 2014-02-26 | 三菱電機株式会社 | 暗号処理システム、鍵生成装置、暗号化装置、復号装置、署名処理システム、署名装置及び検証装置 |
JP5400740B2 (ja) | 2010-10-05 | 2014-01-29 | 日本電信電話株式会社 | 検索可能暗号システム、検索可能暗号方法、ストレージ装置、検索装置、及び登録者装置 |
JP2012098649A (ja) | 2010-11-05 | 2012-05-24 | Nippon Shokubai Co Ltd | 輝度向上フィルム |
CN103329478B (zh) | 2011-01-18 | 2015-11-25 | 三菱电机株式会社 | 密码系统以及密码系统的密码处理方法 |
-
2013
- 2013-01-12 US US14/420,995 patent/US9237137B2/en active Active
- 2013-01-12 JP JP2014556315A patent/JP5836506B2/ja active Active
- 2013-01-12 CN CN201380059312.3A patent/CN104798339B/zh active Active
- 2013-01-12 EP EP13870780.7A patent/EP2945313B1/en active Active
- 2013-01-12 WO PCT/JP2013/050495 patent/WO2014109066A1/ja active Application Filing
Non-Patent Citations (5)
Title |
---|
JPN6015039747; Camenisch, J. et al.: 'Blind and Anonymous Identity-Based Encryption and Authorised Private Searches on Public Key Encrypte' Lecture Notes in Computer Science Vol.5443, 2009, p.196-214 * |
JPN6015039748; Tang, Q. and Chen, L.: 'Public-Key Encryption with Registered Keyword Search' Lecture Notes in Computer Science Vol.6391, 2010, p.163-178 * |
JPN6015039749; Tan, Y. et al.: 'New Security Notions for Public-Key Encryptionwith Keyword Search' 2009年暗号と情報セキュリティシンポジウム講演論文集 , 2009 * |
JPN6015039750; NISHIOKA, M: 'Perfect Keyword Privacy in PEKS Systems' Lecture Notes in Computer Science Vol.7496, 2012, p.175-192 * |
JPN6015039753; Boneh, D. et al.: 'Public Key Encryption That Allows PIR Queries' Lecture Notes in Computer Science Vol.4622, 2007, p.50-67 * |
Also Published As
Publication number | Publication date |
---|---|
JPWO2014109066A1 (ja) | 2017-01-19 |
EP2945313A1 (en) | 2015-11-18 |
CN104798339A (zh) | 2015-07-22 |
CN104798339B (zh) | 2018-06-01 |
WO2014109066A1 (ja) | 2014-07-17 |
EP2945313B1 (en) | 2017-09-06 |
EP2945313A4 (en) | 2016-09-07 |
US20150207782A1 (en) | 2015-07-23 |
US9237137B2 (en) | 2016-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5836506B2 (ja) | 鍵生成装置、鍵生成プログラム、秘匿検索システム及び鍵配布方法 | |
US11381398B2 (en) | Method for re-keying an encrypted data file | |
JP6941183B2 (ja) | データのトークン化 | |
CN108989026B (zh) | 一种发布/订阅环境下用户属性可撤销的方法 | |
Liu et al. | Time-based proxy re-encryption scheme for secure data sharing in a cloud environment | |
JP5420085B2 (ja) | データ処理装置及びデータ保管装置 | |
WO2021057073A1 (zh) | 一种非对称密钥中的私钥生成和使用方法、装置和设备 | |
KR101866935B1 (ko) | 연관된 개인 키 부분을 사용하는 보다 빠른 공개 키 암호화를 위한 시스템들 및 방법들 | |
CN107077469B (zh) | 服务器装置、检索系统、终端装置以及检索方法 | |
JP5680007B2 (ja) | 暗号システム、暗号方法及び暗号プログラム | |
JP6363032B2 (ja) | 鍵付替え方向制御システムおよび鍵付替え方向制御方法 | |
Rahmani et al. | Encryption as a Service (EaaS) as a Solution for Cryptography in Cloud | |
US20140143541A1 (en) | Method and Apparatus for Managing Encrypted Files in Network System | |
EP4073673B1 (en) | Encrypted search with a public key | |
WO2016129259A1 (ja) | サーバ装置、データ検索システム、検索方法および記録媒体 | |
Lee et al. | A secure index management scheme for providing data sharing in cloud storage | |
WO2018047698A1 (ja) | 暗号化メッセージ検索方法、メッセージ送受信システム、サーバ、端末、プログラム | |
CN116346310A (zh) | 基于同态加密的匿踪查询方法、装置和计算机设备 | |
Chamili et al. | Searchable encryption: a review | |
JP6494893B2 (ja) | 暗号化タグ生成装置、検索クエリ生成装置及び秘匿検索システム | |
KR102126295B1 (ko) | 암호문 비교 방법 및 이를 수행하기 위한 장치 | |
JP2010160235A (ja) | 検索システム、端末装置、データベース装置、検索方法及びプログラム | |
KR102526114B1 (ko) | 암호화 및 복호화를 위한 장치 및 방법 | |
Odelu et al. | DMAMA: Dynamic migration access control mechanism for mobile agents in distributed networks | |
Lee et al. | A study of practical proxy reencryption with a keyword search scheme considering cloud storage structure |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20151006 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20151102 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5836506 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 |
|
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 |