JP4199753B2 - On-demand search method, on-demand search system and terminal - Google Patents
On-demand search method, on-demand search system and terminal Download PDFInfo
- Publication number
- JP4199753B2 JP4199753B2 JP2005191661A JP2005191661A JP4199753B2 JP 4199753 B2 JP4199753 B2 JP 4199753B2 JP 2005191661 A JP2005191661 A JP 2005191661A JP 2005191661 A JP2005191661 A JP 2005191661A JP 4199753 B2 JP4199753 B2 JP 4199753B2
- Authority
- JP
- Japan
- Prior art keywords
- keyword search
- keyword
- random number
- providing terminal
- search output
- 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 29
- 238000012795 verification Methods 0.000 claims description 19
- 230000005540 biological transmission Effects 0.000 claims description 6
- 230000014509 gene expression Effects 0.000 claims description 5
- 238000013507 mapping Methods 0.000 claims description 5
- 238000012545 processing Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 4
- 101100217298 Mus musculus Aspm gene Proteins 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
Images
Landscapes
- Storage Device Security (AREA)
Description
本発明は、複数のキーワードに夫々対応する複数のコンテンツを保有する情報提供者に、利用者が任意に選択したキーワードを知られることなく、その選択したキーワードに関連付けされたコンテンツを得ることができるオンデマンド検索方法及びシステムに関する。 The present invention can obtain the content associated with the selected keyword without the information provider holding the plurality of contents corresponding to the plurality of keywords being made aware of the keyword arbitrarily selected by the user. The present invention relates to an on-demand search method and system.
近年、インターネットを介してのオンデマンド検索システムが相次いで実現されている。オンデマンド検索システムは、利用端末からキーワードを入力すると、提供端末からキーワードに関連付けされた情報が提供されるシステムである。 In recent years, on-demand search systems via the Internet have been realized one after another. The on-demand search system is a system in which information associated with a keyword is provided from a providing terminal when a keyword is input from a use terminal.
オンデマンド検索システムは、オープンなインターネットを利用するために、利用者が入力したキーワード(例えば、購入情報)を秘匿するなど、プライバシの保証が求められる。そこで、プライバシの保証に対応するための技術として提案されたのが、オブリヴィアス キーワード サーチ(Oblivious Keyword Search,以下、OKS)である。 The on-demand search system requires privacy guarantee such as concealing a keyword (for example, purchase information) input by a user in order to use the open Internet. Therefore, the Oblivious Keyword Search (hereinafter referred to as “OKS”) has been proposed as a technique for dealing with the guarantee of privacy.
OKSとは、情報提供者と利用者の間で行われる以下のような2パーティプロトコルである。情報提供者は、情報(ここではn個のコンテンツとする。)を夫々キーワードに関連付けし、暗号化して管理する。また、情報提供者は、利用者に対してn個のキーワードwi(i:1,・・・,n)を与える。利用者は情報提供者から与えられたn個のキーワードwi(i:1,・・・,n)の中から任意のキーワードw*を選択し、そのキーワードw*が情報提供者に知られない状態にし(即ち、暗号化し)質問データとして情報提供者へ送る。情報提供者は、利用者からのキーワードw*を含む質問データに、コンテンツの暗号化に使用した暗号鍵を用いた処理を加え、利用者に暗号鍵を知られることがない状態にし応答データとして送り返す。情報提供者から利用者に送り返された応答データには、利用者自身が選択したキーワードw*と、コンテンツの暗号化に利用された暗号鍵とが含まれる。それゆえ、利用者は受け取った応答データを用いて、情報提供者により管理されている暗号化されたコンテンツを処理することにより、選択したキーワードw*に関連付けられたコンテンツのみを正しく復号することができる。 OKS is a following two-party protocol performed between an information provider and a user. The information provider associates information (here, n contents) with each keyword, and manages the information by encrypting it. The information provider gives n keywords w i (i: 1,..., N) to the user. The user selects an arbitrary keyword w * from n keywords w i (i: 1,..., N) given by the information provider, and the keyword w * is known to the information provider. The data is sent to the information provider as question data. The information provider adds the processing using the encryption key used to encrypt the content to the question data including the keyword w * from the user so that the encryption key used by the user is not known, and as response data Send back. The response data sent back from the information provider to the user includes the keyword w * selected by the user himself and the encryption key used for encrypting the content. Therefore, the user can correctly decrypt only the content associated with the selected keyword w * by processing the encrypted content managed by the information provider using the received response data. it can.
以上のようにして、OKSでは、利用者は、選択したキーワードw*を情報提供者に知られることなく、キーワードw*に関連付けられた情報を得ることができる。また、利用者は、自ら選択した任意のキーワードw*以外の他のキーワードに関連付けられた情報を得ることができない。 As described above, in OKS, the user can obtain information associated with the keyword w * without knowing the selected keyword w * by the information provider. Further, the user cannot obtain information associated with other keywords other than the arbitrary keyword w * selected by the user.
OKSの従来方式としては、尾形、黒澤によるRSAブラインド署名方式に基づいたOKSがある(非特許文献1参照。)。 As a conventional OKS system, there is OKS based on the RSA blind signature system by Ogata and Kurosawa (see Non-Patent Document 1).
以下、RSAブラインド署名方式に基づいたOKSについて詳細に説明する。 Hereinafter, OKS based on the RSA blind signature scheme will be described in detail.
step1.
予め、情報提供者側において、キーワードwi(i:1,・・・,n)とそれに夫々対応するコンテンツciがデータベースに格納されているとする。
step1.
Assume that on the information provider side, keywords w i (i: 1,..., N) and contents c i corresponding thereto are stored in the database in advance.
まず、情報提供者は、RSA署名の公開鍵(N,e)と秘密鍵(d)を生成し、i=1からnについて、下式によりKiを計算し、さらにEiを計算する。 First, the information provider generates a public key (N, e) and a secret key (d) for an RSA signature, calculates K i according to the following equation for i = 1 to n, and further calculates E i .
Ki=H(wi)d mod N
Ei=G(wi‖Ki‖i) XOR (0l‖ci)
ここで、H()は暗号学的に安全なハッシュ関数(SHA1など)、G()は擬似乱数生成器、‖はビット列の結合、XORはビット列の排他的論理和、0lは連続するl(エル)個の“0”ビット列である。
K i = H (w i ) d mod N
E i = G (w i ‖K i ‖i) XOR (0 l ‖c i )
Here, H () is a cryptographically secure hash function (such as SHA1), G () is a pseudo random number generator, ‖ is a combination of bit strings, XOR is an exclusive OR of bit strings, and 0 l is a continuous l (L) A number of “0” bit strings.
情報提供者は、公開鍵と求めたEiとの組である(N,e,E1,・・・,En)を利用者に配布する。 The information provider distributes (N, e, E 1 ,..., E n ), which is a set of the public key and the obtained E i , to the users.
step2.
利用者はキーワードw*(w1〜wnのいずれか)について検索したいとする。利用者は、乱数rを選び、
Y=re・H(w*) mod N
を計算し、求めたYを情報提供者に送る。
step2.
The user will want to search for (one of the w 1 ~w n) keyword w *. The user selects a random number r,
Y = r e · H (w * ) mod N
And Y obtained is sent to the information provider.
step3.
情報提供者は利用者からYを受け取り、RSA署名の秘密鍵dを用いて、
K′=Yd mod N
を計算し、求めたK′を利用者に送る。
step3.
The information provider receives Y from the user, uses the RSA signature private key d,
K ′ = Y d mod N
And the obtained K ′ is sent to the user.
step4.
利用者は情報提供者からK′を受け取り、乱数rを用いて、
K=K′/r mod N
を計算する。それから利用者は、i=1からnまでの全てについて、
ai‖bi=Ei XOR G(wi‖K‖i)
を計算する。ここで、aiは始めのl(エル)ビットで、biは残りの文字列である。
step4.
The user receives K ′ from the information provider and uses the random number r,
K = K '/ r mod N
Calculate Then the user can do everything from i = 1 to n.
a i ‖b i = E i XOR G (w i ‖K‖i)
Calculate Here, a i is the first l bit and b i is the remaining character string.
step5.
ai=0lであるとき、即ち先頭から“0”ビットがl(エル)個連続するとき、キーワードwiがw*と一致するとみなす。このとき、キーワードw*に対応するコンテンツciは、biとして得られる。
step5.
when it is a i = 0 l, that is from the beginning "0" when the bit is l (el) pieces continuous, regarded as keyword w i matches the w *. In this case, the content c i corresponding to the keyword w *, obtained as b i.
以上のようにして、利用者は自ら選択した任意のキーワードw*を情報提供者に知られることなく、キーワードw*に関連付けされた情報を入手できるので、利用者のプライバシが保証される。また、利用者は自ら選択した任意のキーワードw*に関連付けされた情報しか入手できないので、情報提供者の利益が保証される。 As described above, since the user can obtain the information associated with the keyword w * without the information provider knowing the arbitrary keyword w * selected by the user, the privacy of the user is guaranteed. Further, since the user can only obtain information associated with an arbitrary keyword w * selected by himself / herself, the profit of the information provider is guaranteed.
従来のオンデマンド検索システムにおいて利用者のプライバシを保護する方式は、RSA署名方式に基づいており、RSA署名方式の安全性を考慮すると、鍵長サイズを1024ビット以上に大きく設定する必要がある。その結果、情報提供者と利用者との間の通信量が大きくなってしまい、効率面に難がある。 In a conventional on-demand search system, a method for protecting the privacy of a user is based on the RSA signature method, and considering the security of the RSA signature method, it is necessary to set the key length size to 1024 bits or more. As a result, the amount of communication between the information provider and the user increases, which is difficult in terms of efficiency.
そこで、本発明は、情報提供者と利用者の間のOKSでやりとりするデータの通信量を削減し、さらに情報提供者が手順とおりに正しく行われているかを検証可能なオンデマンド検索システムを提供することを目的とする。 Therefore, the present invention provides an on-demand search system that can reduce the amount of data exchanged between the information provider and the user by OKS, and can verify whether the information provider is correctly performing according to the procedure. The purpose is to do.
本発明によれば、データベースに格納されているキーワードに1対1で対応するコンテンツを暗号化して暗号化コンテンツを提供する提供端末と、前記暗号化コンテンツを復号して利用するための利用端末とをネットワークを介して接続したオンデマンド検索システムを利用するオンデマンド検索方法であって、前記提供端末が、第一の乱数を生成するステップと、前記提供端末が、前記第一の乱数を用いて公開情報を生成するステップと、前記提供端末が、前記データベースに格納されているキーワードと、そのキーワードに1対1で対応するコンテンツと、前記第一の乱数と、第一のハッシュ関数と、第二のハッシュ関数とを用いて、前記暗号化コンテンツを生成するステップと、前記提供端末が、前記公開情報と、前記暗号化コンテンツとを記録媒体に記録するステップと、前記記録媒体を利用端末に配布するステップと、前記利用端末が、第二の乱数を生成するステップと、前記利用端末が、前記第二の乱数と、アーベル群の生成元と、前記第一のハッシュ関数とを用いて、任意に選択されたキーワードを前記提供端末に知得されない形態に変換してキーワード検索入力を生成するステップと、前記利用端末が、前記キーワード検索入力をネットワークを介して前記提供端末に送信するステップと、前記提供端末が、前記キーワード検索入力を受信するステップと、前記提供端末が、前記キーワード検索入力と、前記第一の乱数とを用いて、第一のキーワード検索出力を生成するステップと、前記提供端末が、前記第一のキーワード検索出力をネットワークを介して前記利用端末に送信するステップと、前記利用端末が、前記第一のキーワード検索出力を受信するステップと、前記利用端末が、前記記録媒体に記録された前記公開情報と、前記キーワード検索入力と、前記アーベル群の生成元と、ペアリング演算の性質を利用した検証式とを用いて、前記第一のキーワード検索出力の正当性を検証するステップと、前記利用端末が、正当であるとみなされた前記第一のキーワード検索出力と、前記公開情報と、前記第二の乱数とを用いて、第二のキーワード検索出力を生成するステップと、前記利用端末が、前記第二のキーワード検索出力と、前記記録媒体に記録された前記暗号化コンテンツと、前記第二のハッシュ関数と、前記任意に選択されたキーワードとを用いて、当該任意に選択されたキーワードに1対1で対応するコンテンツを得るステップと、を備えることを特徴とするオンデマンド検索方法が得られる。 According to the present invention, a providing terminal for providing encrypted content by encrypting content corresponding to a keyword stored in a database on a one-to-one basis, and a use terminal for decrypting and using the encrypted content, On-demand search method using an on-demand search system connected via a network, wherein the providing terminal generates a first random number, and the providing terminal uses the first random number Generating public information, the providing terminal, a keyword stored in the database, content corresponding to the keyword on a one-to-one basis, the first random number, a first hash function, a first Generating the encrypted content using a second hash function, and the providing terminal comprising the public information, the encrypted content, Are recorded on a recording medium, the recording medium is distributed to a user terminal, the user terminal generates a second random number, the user terminal receives the second random number, and Abel Using a group generator and the first hash function, converting an arbitrarily selected keyword into a form not known to the providing terminal to generate a keyword search input, and the using terminal, Transmitting the keyword search input to the providing terminal via a network; receiving the keyword search input by the providing terminal; and providing the keyword search input; and the first random number; And generating the first keyword search output using the network, and the providing terminal outputs the first keyword search output via the network. Transmitting to the terminal; receiving the first keyword search output; using the public information recorded on the recording medium; the keyword search input; and the abel Verifying the validity of the first keyword search output using a group generator and a verification formula using the nature of the pairing operation, and the use terminal is considered valid Generating a second keyword search output using the first keyword search output, the public information, and the second random number; and the user terminal, the second keyword search output, Using the encrypted content recorded on the recording medium, the second hash function, and the arbitrarily selected keyword, the arbitrarily selected keyword is 1: 1. And obtaining a corresponding content with the on-demand search method.
また、本発明によれば、データベースに格納されているキーワードに1対1で対応するコンテンツを暗号化して暗号化コンテンツを提供する提供端末と、前記暗号化コンテンツを復号して利用するための利用端末とをネットワークを介して接続したオンデマンド検索システムであって、前記提供端末は、第一の乱数を生成する第一の乱数生成手段と、前記第一の乱数を用いて公開情報を生成する公開情報生成手段と、前記データベースに格納されているキーワードと、そのキーワードに1対1で対応するコンテンツと、前記第一の乱数と、第一のハッシュ関数と、第二のハッシュ関数とを用いて、前記暗号化コンテンツを生成するコンテンツ暗号化手段と、前記公開情報と、前記暗号化コンテンツとを前記利用端末に配布するために記録媒体に記録する記録媒体書込み手段と、前記利用端末から前記ネットワークを介して送信されるキーワード検索入力を受信するキーワード検索入力受信手段と、前記キーワード検索入力と、前記第一の乱数とを用いて、第一のキーワード検索出力を生成する第一のキーワード検索出力生成手段と、前記第一のキーワード検索出力をネットワークを介して前記利用端末に送信する第一のキーワード検索出力送信手段と、を備え、前記利用端末は、第二の乱数を生成する第二の乱数生成手段と、前記第二の乱数と、アーベル群の生成元と、前記第一のハッシュ関数とを用いて、任意に選択されたキーワードを前記提供端末に知得されない形態に変換して前記キーワード検索入力を生成するキーワード検索入力生成手段と、前記キーワード検索入力を前記ネットワークを介して前記提供端末に送信するキーワード検索入力送信手段と、前記提供端末から前記ネットワークを介して送信される前記第一のキーワード検索出力を受信する第一のキーワード検索出力受信手段と、前記記録媒体に記録された前記公開情報と、前記キーワード検索入力と、前記アーベル群の生成元と、ペアリング演算の性質を利用した検証式とを用いて、前記第一のキーワード検索出力の正当性を検証する第一のキーワード検索出力正当性検証手段と、正当であるとみなされた前記第一のキーワード検索出力と、前記公開情報と、前記第二の乱数とを用いて、第二のキーワード検索出力を生成する第二のキーワード検索出力生成手段と、前記第二のキーワード検索出力と、前記記録媒体に記録された前記暗号化コンテンツと、前記第二のハッシュ関数と、前記任意に選択されたキーワードとを用いて、当該任意に選択されたキーワードに1対1で対応するコンテンツを得るコンテンツ復号手段とを備えることを特徴とするオンデマンド検索システムが得られる。 In addition, according to the present invention, a providing terminal that provides encrypted content by encrypting content corresponding to a keyword stored in a database on a one-to-one basis, and use for decrypting and using the encrypted content An on-demand search system in which a terminal is connected via a network, wherein the providing terminal generates first random number generation means for generating a first random number and public information using the first random number Using public information generating means, a keyword stored in the database, content corresponding to the keyword on a one-to-one basis, the first random number, a first hash function, and a second hash function In order to distribute the content encryption means for generating the encrypted content, the public information, and the encrypted content to the user terminal, Recording medium writing means for recording, keyword search input receiving means for receiving a keyword search input transmitted from the user terminal via the network, the keyword search input, and the first random number, First keyword search output generation means for generating one keyword search output, and first keyword search output transmission means for transmitting the first keyword search output to the user terminal via a network, The user terminal uses the second random number generation means for generating the second random number, the second random number, the generation source of the abelian group, and the keyword selected arbitrarily using the first hash function. A keyword search input generation means for generating the keyword search input by converting the information into a form that is not known to the providing terminal; A keyword search input transmitting means for transmitting to the providing terminal via a network; a first keyword search output receiving means for receiving the first keyword search output transmitted from the providing terminal via the network; Validity of the first keyword search output using the public information recorded on the recording medium, the keyword search input, the generation source of the abelian group, and a verification formula using the nature of the pairing operation Using the first keyword search output validity verification means for verifying, the first keyword search output deemed valid, the public information, and the second random number, Second keyword search output generation means for generating a search output, the second keyword search output, and the encrypted content recorded on the recording medium And content decrypting means for obtaining content corresponding to the arbitrarily selected keyword on a one-to-one basis using the second hash function and the arbitrarily selected keyword. An on-demand search system is obtained.
さらに本発明によれば、データベースに格納されているキーワードに1対1で対応するコンテンツを暗号化した暗号化コンテンツと公開情報とを提供するとともに、ネットワークを介して受信したキーワード検索入力を第一の乱数を用いて変換し、第一のキーワード検索出力を生成して返送する提供端末を含むオンデマンド検索システムに用いられる利用端末において、第二の乱数を生成する第二の乱数生成手段と、前記第二の乱数と、アーベル群の生成元と、第一のハッシュ関数とを用いて、任意に選択されたキーワードを前記提供端末に知得されない形態に変換して前記キーワード検索入力を生成するキーワード検索入力生成手段と、前記キーワード検索入力を前記ネットワークを介して前記提供端末に送信するキーワード検索入力送信手段と、前記提供端末から前記ネットワークを介して送信される前記第一のキーワード検索出力を受信する第一のキーワード検索出力受信手段と、前記公開情報と、前記キーワード検索入力と、前記アーベル群の生成元と、ペアリング演算の性質を利用した検証式とを用いて、前記第一のキーワード検索出力の正当性を検証する第一のキーワード検索出力正当性検証手段と、正当であるとみなされた前記第一のキーワード検索出力と、前記公開情報と、前記第二の乱数とを用いて、第二のキーワード検索出力を生成する第二のキーワード検索出力生成手段と、前記第二のキーワード検索出力と、前記暗号化コンテンツと、第二のハッシュ関数と、前記任意に選択されたキーワードとを用いて、当該任意に選択されたキーワードに1対1で対応するコンテンツを得るコンテンツ復号手段と、を備えることを特徴とする利用端末が得られる。 Further, according to the present invention, the encrypted content obtained by encrypting the content corresponding to the keyword stored in the database on a one-to-one basis and the public information are provided, and the keyword search input received via the network is the first. A second random number generating means for generating a second random number in a user terminal used for an on-demand search system including a providing terminal that converts and generates a first keyword search output by Using the second random number, the abel group generator, and the first hash function, the keyword search input is generated by converting an arbitrarily selected keyword into a form not known to the providing terminal. Keyword search input generation means and keyword search input transmission for transmitting the keyword search input to the providing terminal via the network A first keyword search output receiving means for receiving the first keyword search output transmitted from the providing terminal via the network, the public information, the keyword search input, and the abelian group. First keyword search output validity verification means for verifying the validity of the first keyword search output using a generation source and a verification expression using the nature of the pairing operation is regarded as valid. A second keyword search output generating means for generating a second keyword search output using the first keyword search output, the public information, and the second random number; and the second keyword search. Using the output, the encrypted content, the second hash function, and the arbitrarily selected keyword, one-to-one correspondence with the arbitrarily selected keyword A content decryption means for obtaining the content that, the user terminal characterized in that it comprises the obtained.
本発明によれば、鍵長サイズを160ビット程度で設定できる楕円曲線上の離散対数問題に基づく方式を適用することで、従来方式に比べて通信量を1/3に削減でき、効率面が改良される。 According to the present invention, by applying a method based on the discrete logarithm problem on an elliptic curve in which the key length size can be set at about 160 bits, the amount of communication can be reduced to 1/3 compared with the conventional method, and the efficiency side Improved.
また、本発明によれば、情報提供者と利用者の間のOKSでやりとりしたデータをベイユ・ペアリングあるいはテイト・ペアリングで検証することにより、利用者は情報提供者において手順のとおりに正しく処理が行われているを検証でき、情報提供者の不正を防止できる。 Further, according to the present invention, by verifying the data exchanged by the OKS between the information provider and the user by means of Bayeux pairing or Tate pairing, the user can correctly follow the procedure in the information provider. It is possible to verify that processing is being performed, and to prevent fraud of information providers.
以下、図面を参照して、本発明の一実施の形態について詳細に説明する。 Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings.
図1に、本発明に一実施の形態に係るオンデマンド検索システムの概略構成を示す。図示のシステムは、ネットワーク(ここでは、インターネット)10を介して互いに接続された提供端末(提供者端末)20及び利用端末(利用者端末)30を有している。また、提供端末20にはデータベース40が接続されている。
FIG. 1 shows a schematic configuration of an on-demand search system according to an embodiment of the present invention. The illustrated system includes a providing terminal (provider terminal) 20 and a use terminal (user terminal) 30 that are connected to each other via a network (here, the Internet) 10. In addition, a
提供端末20は、データベースに登録されているキーワード及びコンテンツの一部または全てを暗号化し、利用端末30に提供する。ここで、キーワードとコンテンツとは1対1で対応するものとする。また、暗号化されたキーワード及びコンテンツは、任意の記録媒体(例えば、CD−ROMやDVD)により利用端末30に提供されるものとする。
The providing
利用端末30は、任意に選択したキーワードを一方向性関数により提供端末20に知得されない形態に変換して、ネットワーク10を介して提供端末20へ送る。また、提供端末20は、利用端末30からのキーワードを含むデータを、コンテンツの暗号化に使用した暗号鍵を用いた一方向性関数により利用端末30に知得されない形態に変換し、ネットワーク10を介して利用端末30へ送り返す。ここでの利用端末30と提供端末20との間のデータの送受信には、鍵長サイズが比較的小さい楕円曲線上の離散対数問題に基づく方式を適用して、通信量を削減する。
The
提供端末20からのデータを受け取った利用端末30は、楕円曲線上で定義されている2点P、Qに対する双線形を持つ乗法群への写像であるベイユ・ペアリング(Weil pairing)あるいはテイト・ペアリング(Tate pairing)e(P,Q)を用いて、情報提供30での処理が手順どおりに正しく行われているか検証する。
The
以下、図2及び図3を参照してさらに本実施の形態について説明する。 Hereinafter, the present embodiment will be further described with reference to FIGS.
楕円曲線上の離散対数問題に基づくOKSを実現するために、まず、有限体上の離散対数問題に基づく効率的なOKSについて、図2を参照して説明する。 In order to realize the OKS based on the discrete logarithm problem on the elliptic curve, first, an efficient OKS based on the discrete logarithm problem on the finite field will be described with reference to FIG.
(1)有限体上の離散対数問題に基づくOKS
step1.
位数が素数qのアーベル群(可換群)をG、その群Gの生成元をgとする。また、ランダムなハッシュ関数をH0()、H1()とする。
(1) OKS based on discrete logarithm problem over finite field
step1.
An abelian group (commutative group) whose order is a prime number q is G, and a generation source of the group G is g. Also, let H 0 () and H 1 () be random hash functions.
データベース40には、予めn個のキーワードwi(i:1,・・・,n)とそれに1対1で対応するコンテンツciがデータベースに格納されているとする。
In the
step2.
提供端末20(情報提供者)は乱数sを選び、
y=gs
を計算する。また、提供端末20は、i=1からnの全てについて、
Ki=H0(wi)s
Ei=H1(wi‖Ki‖i) XOR (0l‖ci)
を計算する。ここで、‖はビット列の結合、XORはビット列の排他的論理和、0lは、連続するl(エル)個の“0”ビットである。
step2.
The providing terminal 20 (information provider) selects the random number s,
y = g s
Calculate In addition, the providing
K i = H 0 (w i ) s
E i = H 1 (w i ‖K i ‖i) XOR (0 l ‖c i )
Calculate Here, ‖ is a combination of bit strings, XOR is an exclusive OR of bit strings, and 0 l is l (0) consecutive “0” bits.
提供端末20は、求めたy及びEiを配布データ(y,E1,・・・,En)として、CD−ROMやDVD等の記録媒体等に記録する。提供端末20を使用する情報提供者は、その記録媒体を利用者に配布する
step3.
利用端末30を使用する利用者はキーワードw1〜wnのうちの任意のw*について検索したいとする。利用端末30は、乱数rを選び、
Y=gr H0(w*)
を計算し、得られたYをインターネット10を介して提供端末20に送る。
The providing
User to use the
Y = g r H 0 (w * )
And Y obtained is sent to the providing
step4.
提供端末20は利用端末30からのYを受け取ると、乱数sを用いて、
K′=Ys
を計算し、得られたK′をインターネット10を介して利用端末30に送る。
step4.
When the providing
K ′ = Y s
And the obtained K ′ is sent to the
step5.
利用端末30は、提供端末20からのK′を受け取ると、乱数rとyとを用いて
K=K′/yr
を計算する。さらに利用端末30は、i=1からnまでの全てについて、
ai‖bi=Ei XOR H1(wi‖K‖i)
を計算する。ここでaiは始めのl(エル)ビット、biは残りの文字列である。
step5.
When the
Calculate Furthermore, the
a i ‖b i = E i XOR H 1 (w i ‖K‖i)
Calculate Here, a i is the first l (el) bit, and b i is the remaining character string.
step6.
ai=0lであるとき、即ち、始めの連続するl(エル)ビットが全て“0”のとき、キーワードwiがw*と一致するとみなす。このとき、対応するコンテンツciは、biとして得られる。
step6.
When a i = 0 l, that is, when the first consecutive l bits are all “0”, it is considered that the keyword w i matches w * . At this time, the corresponding content c i is obtained as b i .
次に、情報提供者の不正を検出可能なOKSに拡張した例を、図3を参照して説明する。 Next, an example in which the information provider's fraud is extended to OKS will be described with reference to FIG.
(2)情報提供者の不正検出可能なOKS
step1.
楕円曲線上で定義された位数が素数qのアーベル群(可換群)をG、その群Gの生成元をPとする。また、ランダムなハッシュ関数をH0()、H1()とする。
(2) OKS that can detect fraudulent information providers
step1.
An abelian group (commutative group) whose order is a prime number q defined on the elliptic curve is G, and a generation source of the group G is P. Also, let H 0 () and H 1 () be random hash functions.
データベース40には、予めn個のキーワードwi(i:1,・・・,n)とそれに1対1で対応するコンテンツciがデータベースに格納されているとする。
In the
step2.
提供端末20(情報提供者)は乱数sを選び、
公開情報Y=sP
を計算する。また、提供端末20は、i=1からnの全てについて、
暗号鍵 Ki=sH0(wi)
暗号化コンテンツ Ei=H1(wi‖Ki‖i) XOR (0l‖ci)
を計算する。ここで、‖はビット列の結合、XORはビット列の排他的論理和、0lは、連続するl(エル)個の“0”ビットである。
step2.
The providing terminal 20 (information provider) selects the random number s,
Public information Y = sP
Calculate In addition, the providing
Encryption key Ki = sH 0 (wi)
Encrypted content Ei = H 1 (wi‖Ki‖i) XOR (0 l ‖ci)
Calculate Here, ‖ is a combination of bit strings, XOR is an exclusive OR of bit strings, and 0 l is l (0) consecutive “0” bits.
提供端末20は、求めたY及びEiをCD−ROMやDVD等の記録媒体等に記録する。提供端末20を使用する情報提供者は、その記録媒体を利用者に配布することによって、(Y,E1,・・・,En)を配布する。
Providing terminal 20 records the obtained Y and E i to a recording medium such as a CD-ROM or DVD. The information provider who uses the providing
step3.
利用端末30を使用する利用者はキーワードw1〜wnのうちの任意のw*について検索したいとする。利用端末30は、乱数rを選び、
キーワード検索入力X=rP+H0(w*)
を計算し、得られたXをインターネット10を介して提供端末20に送る。
step3.
It is assumed that the user who uses the
Keyword search input X = rP + H 0 (w * )
And the obtained X is sent to the providing
step4.
提供端末20は利用端末30からのXを受け取ると、乱数sを用いて、
第一のキーワード検索出力 K′=sX
を計算し、得られたK′をインターネット10を介して利用端末30に送る。
step4.
When the providing
First keyword search output K '= sX
And the obtained K ′ is sent to the
step5.
利用端末30は提供端末20からのK′を受け取ると、K′の正当性について、楕円曲線上で定義されている2点P、Qに対する双線形を持つ乗法群への写像であるベイユ・ペアリング(Weil pairing)あるいはテイト・ペアリング(Tate pairing)e(P,Q)を用いてe(P,K′)=e(Y,X)が等しいかどうかを検証する。
step5.
When the
ベイユ・ペアリングについては、宮地充子・菊池浩明 編著者、「IT Text 情報セキュリティ」、90ページ、オーム社、2003.10.25に記載されている。 The Beille pairing is described in Mitsuko Miyaji and Hiroaki Kikuchi, “IT Text Information Security”, page 90, Ohmsha, 2003.10.25.
利用端末30は、e(P,K′)=e(Y,X)が等価であるならば、K′は正当であるとみなし、等価でないならば、K′は不正であるとみなす。
The
step6.
利用端末30はstep5.の検証で正当であるとみなしたK′と乱数rとYとを用いて、
第二のキーワード検索出力 K=K′−rY
を計算する。さらに利用端末30は、i=1からnの全てについて、
ai‖bi=Ei XOR H1(wi‖K‖i)
を計算する。ここで、aiは始めのl(エル)ビット、biは残りの文字列である。
step6.
The
Second keyword search output K = K'-rY
Calculate Furthermore, the
ai‖bi = Ei XOR H 1 (wi‖K‖i)
Calculate Here, ai is the first l bit and bi is the remaining character string.
step7.
ai=0lであるとき、即ち、始めの連続するl(エル)ビットが全て“0”のとき、キーワードwiがw*と一致するとみなす。このとき、対応するコンテンツciは、biとして得られる。
step7.
When a i = 0 l, that is, when the first consecutive l bits are all “0”, it is considered that the keyword w i matches w * . At this time, the corresponding content c i is obtained as b i .
以上のように、本実施の形態では、楕円曲線上の離散対数問題に基づく方式を採用することで、鍵長サイズ(乱数s及びrのサイズ)を160ビット程度に設定することができ、従来方式に比べて通信量を1/3に削減できる。 As described above, in the present embodiment, by adopting a method based on the discrete logarithm problem on an elliptic curve, the key length size (the size of random numbers s and r) can be set to about 160 bits. The amount of communication can be reduced to 1/3 compared to the method.
また、提供端末20と利用端末30との間のOKSでやりとりしたデータをベイユ・ペアリングあるいはテイト・ペアリングで検証することにより、提供端末20における処理が手順とおりに正しく行われているかを検証できる。
Further, by verifying the data exchanged between the providing
10 ネットワーク
20 提供端末
30 利用端末
40 データベース
10
Claims (9)
前記提供端末が、第一の乱数を生成するステップと、
前記提供端末が、前記第一の乱数を用いて公開情報を生成するステップと、
前記提供端末が、前記データベースに格納されているキーワードと、そのキーワードに1対1で対応するコンテンツと、前記第一の乱数と、第一のハッシュ関数と、第二のハッシュ関数とを用いて、前記暗号化コンテンツを生成するステップと、
前記提供端末が、前記公開情報と、前記暗号化コンテンツとを記録媒体に記録するステップと、
前記記録媒体を利用端末に配布するステップと、
前記利用端末が、第二の乱数を生成するステップと、
前記利用端末が、前記第二の乱数と、アーベル群の生成元と、前記第一のハッシュ関数とを用いて、任意に選択されたキーワードを前記提供端末に知得されない形態に変換してキーワード検索入力を生成するステップと、
前記利用端末が、前記キーワード検索入力をネットワークを介して前記提供端末に送信するステップと、
前記提供端末が、前記キーワード検索入力を受信するステップと、
前記提供端末が、前記キーワード検索入力と、前記第一の乱数とを用いて、第一のキーワード検索出力を生成するステップと、
前記提供端末が、前記第一のキーワード検索出力をネットワークを介して前記利用端末に送信するステップと、
前記利用端末が、前記第一のキーワード検索出力を受信するステップと、
前記利用端末が、前記記録媒体に記録された前記公開情報と、前記キーワード検索入力と、前記アーベル群の生成元と、ペアリング演算の性質を利用した検証式とを用いて、前記第一のキーワード検索出力の正当性を検証するステップと、
前記利用端末が、正当であるとみなされた前記第一のキーワード検索出力と、前記公開情報と、前記第二の乱数とを用いて、第二のキーワード検索出力を生成するステップと、
前記利用端末が、前記第二のキーワード検索出力と、前記記録媒体に記録された前記暗号化コンテンツと、前記第二のハッシュ関数と、前記任意に選択されたキーワードとを用いて、当該任意に選択されたキーワードに1対1で対応するコンテンツを得るステップと、
を備えることを特徴とするオンデマンド検索方法。 A providing terminal that encrypts contents corresponding to keywords stored in the database on a one-to-one basis and provides the encrypted contents and a use terminal for decrypting and using the encrypted contents are connected via a network. An on-demand search method using the on-demand search system,
The providing terminal generates a first random number;
The providing terminal generates public information using the first random number;
The providing terminal uses a keyword stored in the database, content corresponding to the keyword on a one-to-one basis, the first random number, a first hash function, and a second hash function. Generating the encrypted content;
The providing terminal recording the public information and the encrypted content on a recording medium;
Distributing the recording medium to use terminals;
The user terminal generating a second random number;
The user terminal uses the second random number, the abel group generator, and the first hash function to convert an arbitrarily selected keyword into a form that is not known to the providing terminal. Generating a search input;
The user terminal transmitting the keyword search input to the providing terminal via a network;
The providing terminal receiving the keyword search input;
The providing terminal generates a first keyword search output using the keyword search input and the first random number;
The providing terminal transmitting the first keyword search output to the user terminal via a network;
The user terminal receiving the first keyword search output;
The use terminal uses the public information recorded on the recording medium, the keyword search input, the generation source of the abelian group, and a verification formula using the property of pairing operation, Verifying the validity of the keyword search output;
Generating a second keyword search output using the first keyword search output deemed valid by the user terminal, the public information, and the second random number;
The user terminal uses the second keyword search output, the encrypted content recorded on the recording medium, the second hash function, and the arbitrarily selected keyword to arbitrarily Obtaining content corresponding one-to-one with the selected keyword;
An on-demand search method comprising:
暗号鍵 Ki=sH0(wi)
及び
前記暗号化コンテンツ Ei=H1(wi‖Ki‖i) XOR (0l‖ci)
(但し、XORはビット列の排他的論理和、0lは連続するl個の0ビット、‖はビット列の結合である)
を計算する楕円曲線上の離散対数問題に基づく暗号方法を適用し、前記提供端末と前記利用端末との間で送受信されるデータの通信量を削減することを特徴とする請求項2記載のオンデマンド検索方法。 The providing terminal uses G as an abelian group (commutative group) whose order is a prime number q defined on an elliptic curve, P as a generation source of the group G, s as the first random number, and Y as the public information. = SP, the first hash function is set as H 0 , the second hash function is set as H 1, and for all the keywords wi and contents ci of indexes i = 1 to n,
Encryption key Ki = sH 0 (wi)
And the encrypted content Ei = H 1 (wi‖Ki‖i) XOR (0 l ‖ci)
(Where XOR is an exclusive OR of bit strings, 0 l is a series of l 0 bits, and ‖ is a combination of bit strings)
3. The method according to claim 2, wherein an encryption method based on a discrete logarithm problem on an elliptic curve for calculating is applied to reduce the amount of data transmitted and received between the providing terminal and the using terminal. Demand search method.
検証式 e(P,K′)=e(Y,X)
が等しいかを検証し、その検証式が等しいならば、前記第一のキーワード検索出力K′が正当なデータであるとみなすことを特徴とする請求項3記載のオンデマンド検索方法。 In order to verify whether or not K ′ received as the first keyword search output is valid data, the user terminal uses the public information Y and the second random number as r, and is arbitrarily selected. The keyword search input X = rP + H 0 (w * ) when the keyword is w * , the generation source P of the abelian group, and the two points P and Q defined on the elliptic curve are bilinear. Using Beille pairing or Tate pairing e (P, Q), which is a mapping to the multiplicative group,
Verification equation e (P, K ′) = e (Y, X)
4. The on-demand search method according to claim 3, wherein the first keyword search output K ′ is regarded as valid data if the verification expressions are equal.
前記提供端末は、
第一の乱数を生成する第一の乱数生成手段と、
前記第一の乱数を用いて公開情報を生成する公開情報生成手段と、
前記データベースに格納されているキーワードと、そのキーワードに1対1で対応するコンテンツと、前記第一の乱数と、第一のハッシュ関数と、第二のハッシュ関数とを用いて、前記暗号化コンテンツを生成するコンテンツ暗号化手段と、
前記公開情報と、前記暗号化コンテンツとを前記利用端末に配布するために記録媒体に記録する記録媒体書込み手段と、
前記利用端末から前記ネットワークを介して送信されるキーワード検索入力を受信するキーワード検索入力受信手段と、
前記キーワード検索入力と、前記第一の乱数とを用いて、第一のキーワード検索出力を生成する第一のキーワード検索出力生成手段と、
前記第一のキーワード検索出力をネットワークを介して前記利用端末に送信する第一のキーワード検索出力送信手段と、
を備え、
前記利用端末は、
第二の乱数を生成する第二の乱数生成手段と、
前記第二の乱数と、アーベル群の生成元と、前記第一のハッシュ関数とを用いて、任意に選択されたキーワードを前記提供端末に知得されない形態に変換して前記キーワード検索入力を生成するキーワード検索入力生成手段と、
前記キーワード検索入力を前記ネットワークを介して前記提供端末に送信するキーワード検索入力送信手段と、
前記提供端末から前記ネットワークを介して送信される前記第一のキーワード検索出力を受信する第一のキーワード検索出力受信手段と、
前記記録媒体に記録された前記公開情報と、前記キーワード検索入力と、前記アーベル群の生成元と、ペアリング演算の性質を利用した検証式とを用いて、前記第一のキーワード検索出力の正当性を検証する第一のキーワード検索出力正当性検証手段と、
正当であるとみなされた前記第一のキーワード検索出力と、前記公開情報と、前記第二の乱数とを用いて、第二のキーワード検索出力を生成する第二のキーワード検索出力生成手段と、
前記第二のキーワード検索出力と、前記記録媒体に記録された前記暗号化コンテンツと、前記第二のハッシュ関数と、前記任意に選択されたキーワードとを用いて、当該任意に選択されたキーワードに1対1で対応するコンテンツを得るコンテンツ復号手段と
を備える
ことを特徴とするオンデマンド検索システム。 A providing terminal that encrypts contents corresponding to keywords stored in the database on a one-to-one basis and provides the encrypted contents and a use terminal for decrypting and using the encrypted contents are connected via a network. On-demand search system,
The providing terminal is:
First random number generating means for generating a first random number;
Public information generating means for generating public information using the first random number;
Using the keyword stored in the database, the content corresponding to the keyword on a one-to-one basis, the first random number, the first hash function, and the second hash function, the encrypted content Content encryption means for generating
A recording medium writing means for recording the public information and the encrypted content on a recording medium for distribution to the user terminal;
Keyword search input receiving means for receiving a keyword search input transmitted from the user terminal via the network;
First keyword search output generation means for generating a first keyword search output using the keyword search input and the first random number;
First keyword search output transmission means for transmitting the first keyword search output to the user terminal via a network;
With
The user terminal is
Second random number generation means for generating a second random number;
Using the second random number, the abel group generator, and the first hash function, the keyword selection input is generated by converting an arbitrarily selected keyword into a form not known to the providing terminal. Keyword search input generation means for performing,
Keyword search input transmission means for transmitting the keyword search input to the providing terminal via the network;
First keyword search output receiving means for receiving the first keyword search output transmitted from the providing terminal via the network;
Validating the first keyword search output using the public information recorded on the recording medium, the keyword search input, the generation source of the abelian group, and a verification formula using the nature of the pairing operation First keyword search output correctness verification means for verifying
Second keyword search output generation means for generating a second keyword search output using the first keyword search output deemed valid, the public information, and the second random number;
Using the second keyword search output, the encrypted content recorded on the recording medium, the second hash function, and the arbitrarily selected keyword, to the arbitrarily selected keyword An on-demand search system comprising: content decrypting means for obtaining content corresponding one-to-one.
暗号鍵 Ki=sH0(wi)
及び
前記暗号化コンテンツ Ei=H1(wi‖Ki‖i) XOR (0l‖ci)
(但し、XORはビット列の排他的論理和、0lは連続するl個の0ビット、‖はビット列の結合である)
を計算し、前記利用端末と前記提供端末との間で送受信されるデータの通信量を削減する楕円曲線上の離散対数問題に基づく暗号方法を適用し、
前記利用端末が、前記第一のキーワード検索出力として受信したK′が正当なデータであるかどうかを検証するために、前記公開情報Yと、前記第二の乱数をr、前記任意に選択されたキーワードをw*としたときのキーワード検索入力X=rP+H0(w*)と、前記アーベル群の生成元Pと、前記楕円曲線上で定義されている2点P、Qに対する双線形を持つ乗法群への写像であるベイユ・ペアリングあるいはテイト・ペアリングe(P,Q)とを用いて、
検証式 e(P,K′)=e(Y,X)
が等しいかを検証し、その検証式が等しいならば、前記第一のキーワード検索出力K′が正当なデータであるとみなすことを特徴とする請求項5記載のオンデマンド検索システム。 The providing terminal uses G as an abelian group (commutative group) whose order is a prime number q defined on an elliptic curve, P as a generation source of the group G, s as the first random number, and Y as the public information. = SP, the first hash function is set as H 0 , the second hash function is set as H 1, and for all the keywords wi and contents ci of indexes i = 1 to n,
Encryption key Ki = sH 0 (wi)
And the encrypted content Ei = H 1 (wi‖Ki‖i) XOR (0 l ‖ci)
(Where XOR is an exclusive OR of bit strings, 0 l is a series of l 0 bits, and ‖ is a combination of bit strings)
And applying a cryptographic method based on a discrete logarithm problem on an elliptic curve that reduces the amount of data transmitted and received between the user terminal and the providing terminal,
In order to verify whether or not K ′ received as the first keyword search output is valid data, the user terminal uses the public information Y and the second random number as r, and is arbitrarily selected. The keyword search input X = rP + H 0 (w * ) when the keyword is w * , the generation source P of the abelian group, and the two points P and Q defined on the elliptic curve are bilinear. Using Beille pairing or Tate pairing e (P, Q), which is a mapping to the multiplicative group,
Verification equation e (P, K ′) = e (Y, X)
6. The on-demand search system according to claim 5, wherein if the verification expressions are equal, the first keyword search output K ′ is regarded as valid data.
第二の乱数を生成する第二の乱数生成手段と、
前記第二の乱数と、アーベル群の生成元と、第一のハッシュ関数とを用いて、任意に選択されたキーワードを前記提供端末に知得されない形態に変換して前記キーワード検索入力を生成するキーワード検索入力生成手段と、
前記キーワード検索入力を前記ネットワークを介して前記提供端末に送信するキーワード検索入力送信手段と、
前記提供端末から前記ネットワークを介して送信される前記第一のキーワード検索出力を受信する第一のキーワード検索出力受信手段と、
前記公開情報と、前記キーワード検索入力と、前記アーベル群の生成元と、ペアリング演算の性質を利用した検証式とを用いて、前記第一のキーワード検索出力の正当性を検証する第一のキーワード検索出力正当性検証手段と、
正当であるとみなされた前記第一のキーワード検索出力と、前記公開情報と、前記第二の乱数とを用いて、第二のキーワード検索出力を生成する第二のキーワード検索出力生成手段と、
前記第二のキーワード検索出力と、前記暗号化コンテンツと、第二のハッシュ関数と、前記任意に選択されたキーワードとを用いて、当該任意に選択されたキーワードに1対1で対応するコンテンツを得るコンテンツ復号手段と、
を備えることを特徴とする利用端末。 It provides encrypted content obtained by encrypting content corresponding to keywords stored in the database on a one-to-one basis and public information, and converts a keyword search input received via a network using a first random number. In a use terminal used in an on-demand search system including a providing terminal that generates and returns a first keyword search output,
Second random number generation means for generating a second random number;
Using the second random number, the abel group generator, and the first hash function, the keyword search input is generated by converting an arbitrarily selected keyword into a form not known to the providing terminal. Keyword search input generation means;
Keyword search input transmission means for transmitting the keyword search input to the providing terminal via the network;
First keyword search output receiving means for receiving the first keyword search output transmitted from the providing terminal via the network;
The first information for verifying the validity of the first keyword search output using the public information, the keyword search input, the generation source of the abelian group, and the verification formula using the property of the pairing operation A keyword search output correctness verification means;
Second keyword search output generation means for generating a second keyword search output using the first keyword search output deemed valid, the public information, and the second random number;
Using the second keyword search output, the encrypted content, the second hash function, and the arbitrarily selected keyword, content corresponding to the arbitrarily selected keyword is one-to-one. Content decrypting means to obtain;
A use terminal comprising:
暗号鍵 Ki=sH0(wi)
及び
前記暗号化コンテンツEi=H1(wi‖Ki‖i) XOR (0l‖ci)
(但し、XORはビット列の排他的論理和、0lは連続するl個の0ビット、‖はビット列の結合である)
を計算し、前記利用端末と前記提供端末との間で送受信されるデータの通信量を削減する楕円曲線上の離散対数問題に基づく暗号方法を適用し、
前記利用端末が、前記第一のキーワード検索出力として受信したK′が正当なデータであるかどうかを検証するために、前記公開情報Yと、前記第二の乱数をr、前記任意に選択されたキーワードをw*としたときのキーワード検索入力X=rP+H0(w*)と、前記アーベル群の生成元Pと、前記楕円曲線上で定義されている2点P、Qに対する双線形を持つ乗法群への写像であるベイユ・ペアリングあるいはテイト・ペアリングe(P,Q)とを用いて、
検証式 e(P,K′)=e(Y,X)
が等しいかを検証し、その検証式が等しいならば、前記第一のキーワード検索出力K′が正当なデータであるとみなすことを特徴とする請求項7記載の利用端末。 The providing terminal uses G as an abelian group (commutative group) whose order is a prime number q defined on an elliptic curve, P as a generation source of the group G, s as the first random number, and Y as the public information. = SP, the first hash function is set as H 0 , the second hash function is set as H 1, and all the keywords wi and contents ci of indexes i = 1 to n are set as follows:
Encryption key Ki = sH 0 (wi)
And the encrypted content Ei = H 1 (wi‖Ki‖i) XOR (0 l ‖ci)
(Where XOR is an exclusive OR of bit strings, 0 l is a series of l 0 bits, and ‖ is a combination of bit strings)
And applying a cryptographic method based on a discrete logarithm problem on an elliptic curve that reduces the amount of data transmitted and received between the user terminal and the providing terminal,
In order to verify whether or not K ′ received as the first keyword search output is valid data, the user terminal uses the public information Y and the second random number as r, and is arbitrarily selected. The keyword search input X = rP + H 0 (w * ) when the keyword is w * , the generation source P of the abelian group, and the two points P and Q defined on the elliptic curve are bilinear. Using Beille pairing or Tate pairing e (P, Q), which is a mapping to the multiplicative group,
Verification equation e (P, K ′) = e (Y, X)
8. The use terminal according to claim 7, wherein the first keyword search output K ′ is regarded as valid data if the verification expressions are equal to each other.
暗号鍵 Ki=sH0(wi)
及び
暗号化コンテンツ Ei=H1(wi‖Ki‖i) XOR (0l‖ci)
(但し、XORはビット列の排他的論理和、0lは連続するl個の0ビット、‖はビット列の結合である)
を計算し、前記利用端末と前記提供端末との間で送受信されるデータの通信量を削減する楕円曲線上の離散対数問題に基づく暗号方法を適用し、
前記利用端末が、前記第一のキーワード検索出力として受信したK′が正当なデータであるかどうかを検証するために、前記公開情報Yと、前記第二の乱数をr、前記任意に選択されたキーワードをw*としたときのキーワード検索入力X=rP+H0(w*)と、前記アーベル群の生成元Pと、前記楕円曲線上で定義されている2点P、Qに対する双線形を持つ乗法群への写像であるベイユ・ペアリングあるいはテイト・ペアリングe(P,Q)とを用いて、
検証式 e(P,K′)=e(Y,X)
が等しいかを検証し、その検証式が等しいならば、前記第一のキーワード検索出力K′が正当なデータであるとみなすことを特徴とする請求項1記載のオンデマンド検索方法。 The providing terminal uses G as an abelian group (commutative group) whose order is a prime number q defined on an elliptic curve, P as a generation source of the group G, s as the first random number, and Y as the public information. = SP, the first hash function is set as H 0 , the second hash function is set as H 1, and for all the keywords wi and contents ci of indexes i = 1 to n,
Encryption key Ki = sH 0 (wi)
And encrypted content Ei = H 1 (wi‖Ki‖i) XOR (0 l ‖ci)
(Where XOR is an exclusive OR of bit strings, 0 l is a series of l 0 bits, and ‖ is a combination of bit strings)
And applying a cryptographic method based on a discrete logarithm problem on an elliptic curve that reduces the amount of data transmitted and received between the user terminal and the providing terminal,
In order to verify whether or not K ′ received as the first keyword search output is valid data, the user terminal uses the public information Y and the second random number as r, and is arbitrarily selected. The keyword search input X = rP + H 0 (w * ) when the keyword is w * , the generation source P of the abelian group, and the two points P and Q defined on the elliptic curve are bilinear. Using Beille pairing or Tate pairing e (P, Q), which is a mapping to the multiplicative group,
Verification equation e (P, K ′) = e (Y, X)
The on-demand search method according to claim 1, wherein the first keyword search output K 'is regarded as valid data if the verification expressions are equal.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005191661A JP4199753B2 (en) | 2005-06-30 | 2005-06-30 | On-demand search method, on-demand search system and terminal |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005191661A JP4199753B2 (en) | 2005-06-30 | 2005-06-30 | On-demand search method, on-demand search system and terminal |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007013564A JP2007013564A (en) | 2007-01-18 |
JP4199753B2 true JP4199753B2 (en) | 2008-12-17 |
Family
ID=37751460
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005191661A Active JP4199753B2 (en) | 2005-06-30 | 2005-06-30 | On-demand search method, on-demand search system and terminal |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4199753B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8382265B2 (en) | 2003-12-26 | 2013-02-26 | Canon Kabushiki Kaisha | Liquid container and liquid supplying system |
-
2005
- 2005-06-30 JP JP2005191661A patent/JP4199753B2/en active Active
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8382265B2 (en) | 2003-12-26 | 2013-02-26 | Canon Kabushiki Kaisha | Liquid container and liquid supplying system |
US8454141B2 (en) | 2003-12-26 | 2013-06-04 | Canon Kabushiki Kaisha | Liquid container and liquid supplying system |
US8678570B2 (en) | 2003-12-26 | 2014-03-25 | Canon Kabushiki Kaisha | Liquid container and liquid supplying system |
Also Published As
Publication number | Publication date |
---|---|
JP2007013564A (en) | 2007-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111106936B (en) | SM 9-based attribute encryption method and system | |
JP4546231B2 (en) | ID-based signature and encryption system and method | |
US7590236B1 (en) | Identity-based-encryption system | |
US8429408B2 (en) | Masking the output of random number generators in key generation protocols | |
US9698984B2 (en) | Re-encrypted data verification program, re-encryption apparatus and re-encryption system | |
US20150288527A1 (en) | Verifiable Implicit Certificates | |
WO2012085664A2 (en) | Cryptography module for use with fragmented key and methods for use therewith | |
US9813386B2 (en) | Cooperation service providing system and server apparatus | |
JP6194886B2 (en) | Encryption statistical processing system, decryption system, key generation device, proxy device, encrypted statistical data generation device, encryption statistical processing method, and encryption statistical processing program | |
US20100172496A1 (en) | Key generating apparatus, encrypting apparatus and decrypting apparatus | |
US20180278417A1 (en) | Apparatus and method for generating key, and apparatus and method for encryption | |
KR20210063378A (en) | Computer-implemented systems and methods that share common secrets | |
CN116830523A (en) | threshold key exchange | |
CN114338229B (en) | Lightweight dynamic broadcast agent re-encryption and cloud data sharing method | |
JP2014515125A (en) | Method, computer program, and apparatus for data encryption | |
US20050220300A1 (en) | Public key cryptographic methods and systems | |
CN114095171A (en) | Identity-based wearable proxy re-encryption method | |
JPWO2016199507A1 (en) | KEY EXCHANGE METHOD, KEY EXCHANGE SYSTEM, KEY DISTRIBUTION DEVICE, COMMUNICATION DEVICE, AND PROGRAM | |
US20050135610A1 (en) | Identifier-based signcryption | |
CA2742530C (en) | Masking the output of random number generators in key generation protocols | |
CN116743358A (en) | Repudiation multi-receiver authentication method and system | |
CN115361109B (en) | Homomorphic encryption method supporting bidirectional proxy re-encryption | |
JP4199753B2 (en) | On-demand search method, on-demand search system and terminal | |
JP5679344B2 (en) | Signature key obfuscation system, signature key obfuscation method, encryption signature system using obfuscated signature key, encryption signature method and program using obfuscated signature key | |
JP4485122B2 (en) | Public key cryptosystem, signature system, cryptographic communication system, secret key generator, public key generator, and computer program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080521 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080718 |
|
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: 20080924 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20081003 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111010 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4199753 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121010 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131010 Year of fee payment: 5 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
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 |
|
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 |