JP2015022098A - Decryption system, terminal device, signature system, method therefor, and program - Google Patents

Decryption system, terminal device, signature system, method therefor, and program Download PDF

Info

Publication number
JP2015022098A
JP2015022098A JP2013149152A JP2013149152A JP2015022098A JP 2015022098 A JP2015022098 A JP 2015022098A JP 2013149152 A JP2013149152 A JP 2013149152A JP 2013149152 A JP2013149152 A JP 2013149152A JP 2015022098 A JP2015022098 A JP 2015022098A
Authority
JP
Japan
Prior art keywords
information
value
terminal device
ciphertext
proxy
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2013149152A
Other languages
Japanese (ja)
Other versions
JP5752751B2 (en
Inventor
鉄太郎 小林
Tetsutaro Kobayashi
鉄太郎 小林
山本 剛
Takeshi Yamamoto
剛 山本
麗生 吉田
Reisei Yoshida
麗生 吉田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2013149152A priority Critical patent/JP5752751B2/en
Publication of JP2015022098A publication Critical patent/JP2015022098A/en
Application granted granted Critical
Publication of JP5752751B2 publication Critical patent/JP5752751B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To provide a decryption system capable of acquiring decrypted text without calculating true secrete information aand not by gathering K pieces of secrete information.SOLUTION: The decryption system includes a terminal device and N proxy calculation devices n. The proxy computing devices n include a storage unit in which dispersed secrete information f(j) and a calculation unit for finding a value f(j)τ by using information τ corresponding to cipher text and the dispersed secrete information f(j). The terminal device includes a request unit for requesting the proxy computing devices n to find the value f(j)τ from the information τ corresponding to cipher text, and a decryption unit for finding information aτ corresponding to the cipher text by using K values f(j)τ, k=1, 2, etc., to K, jbeing one of j,j, etc., to jdiffering for each k.

Description

本発明は、秘密分散法を用いた復号システム、その復号システムにおいて利用する端末装置、秘密分散法を用いた署名システム、その署名システムにおいて利用する端末装置、その方法、及びプログラムに関する。   The present invention relates to a decryption system using a secret sharing method, a terminal device used in the decryption system, a signature system using a secret sharing method, a terminal device used in the signature system, a method thereof, and a program.

秘密分散法を用いた復号方法として、非特許文献1が従来技術として知られている。   As a decryption method using the secret sharing method, Non-Patent Document 1 is known as a prior art.

Secret Sharing方式では、多項式
f(x)=aK-1xK-1+…+ a1x1+a0 (1)
を用いて、真の秘密情報a0を保存する代わりに、f(1),f(2),…,f(N)の値を分散された秘密情報として、複数の装置に保存する。
In the Secret Sharing method, polynomial
f (x) = a K-1 x K-1 +… + a 1 x 1 + a 0 (1)
Using, instead of storing the true secret information a 0, f (1), f (2), ..., as the secret information that is dispersed the value of f (N), stores the plurality of devices.

(K,N)しきい値秘密分散法では、N個の分散された秘密情報f(n)のうちの任意の相異なるK個の秘密情報f(nk)が集まると、真の秘密情報a0を求めることができる。一方、任意の相異なるK-1個の秘密情報f(nk')では、真の秘密情報a0に関して全く情報が得られない。ここで、Nは2以上の整数、Kは1以上N以下の整数、n=1,2,…,N、k=1,2,…,K、k'=1,2,…,K-1、nk及びnk'はそれぞれk及びk'に対応する1,2,…,Nの何れかの値である。 In the (K, N) threshold secret sharing method, if any K different pieces of secret information f (n k ) out of N pieces of distributed secret information f (n) are collected, the true secret information a 0 can be obtained. On the other hand, with any different K−1 pieces of secret information f (n k ′ ), no information can be obtained regarding the true secret information a 0 . Here, N is an integer greater than or equal to 2, K is an integer greater than or equal to 1 and less than or equal to N, n = 1,2, ..., N, k = 1,2, ..., K, k '= 1,2, ..., K- 1, n k and n k ′ are values of 1, 2,..., N corresponding to k and k ′, respectively.

複数の装置で分散された秘密情報f(n)を保存することで、K-1個まで分散された秘密情報f(n)を盗まれても真の秘密情報a0が漏れず、また、N-K個まで分散された秘密情報f(n)を紛失したり破壊されても真の秘密情報a0を復元できる。 By storing secret information f (n) distributed by a plurality of devices, even if K-1 pieces of secret information f (n) are stolen, the true secret information a 0 does not leak, Even if NK pieces of secret information f (n) distributed are lost or destroyed, the true secret information a 0 can be restored.

岡本龍明、山本博資著、「現代暗号」、1997年、産業図書、pp209〜218.Okamoto Tatsuaki and Yamamoto Hiroshi, `` Contemporary Cryptography '', 1997, Industrial Books, pp209-218.

しかしながら、従来技術の場合、一度K個の秘密情報f(nk)を集めてしまうと、真の秘密情報a0を計算できてしまうため、真の秘密情報a0を利用した後に確実に消去する必要があり、消去を失敗すると情報漏洩する可能性がある。 However, in the conventional art, the thus collected once the K secret information f (n k), since she can calculate the true secret information a 0, reliably after using the true secret information a 0 Clear There is a possibility of information leakage if erasure fails.

本発明の第一の態様は、真の秘密情報a0を計算せずに、復号文を取得することができる復号システム、その復号システムにおいて利用する端末装置、その方法、及びプログラムを提供することを目的とする。 A first aspect of the present invention provides a decryption system capable of obtaining a decrypted text without calculating true secret information a 0 , a terminal device used in the decryption system, a method thereof, and a program With the goal.

また、本発明の他の態様は、真の秘密情報a0を計算せずに、電子署名を生成することができる署名システム、その署名システムにおいて利用する端末装置、その方法、及びプログラムを提供することを目的とする。 Also, another aspect of the present invention provides a signature system that can generate an electronic signature without calculating true secret information a 0 , a terminal device used in the signature system, a method thereof, and a program For the purpose.

上記の課題を解決するために、本発明の第一の態様によれば、復号システムは、Nを2以上の整数とし、n=1,…,Nとし、端末装置と、N個の代理計算装置nとを含む。Kを1以上N以下の整数とし、f(x)=a(K-1)x(K-1)+…+a1x+a0とし、a0=f(0)を真の秘密情報とし、jnをn毎に異なる1以上の整数とし、f(jn)を分散された秘密情報とし、代理計算装置nは、分散された秘密情報f(jn)が記憶される記憶部と、暗号文に対応する情報τと分散された秘密情報f(jn)とを用いて値f(jn)τを求める計算部と、を含む。端末装置は、暗号文に対応する情報τから値f(jn)τを求めるように代理計算装置nに対して依頼する依頼部と、k=1,2,…,K、jkをk毎に異なるj1,j2,…,jNの何れかの値とし、K個の値f(jk)τを用いて、復号文に対応する情報a0τを求める復号部と、を含む。 In order to solve the above problem, according to the first aspect of the present invention, the decoding system is configured such that N is an integer greater than or equal to 2, n = 1,..., N, a terminal device, and N proxy calculations Device n. K is an integer between 1 and N, f (x) = a (K-1) x (K-1) + ... + a 1 x + a 0, and a 0 = f (0) is true secret information And j n is an integer greater than or equal to 1 different for each n , f (j n ) is distributed secret information, and the proxy computing device n is a storage unit for storing the distributed secret information f (j n ) And a calculation unit for obtaining the value f (j n ) τ using the information τ corresponding to the ciphertext and the distributed secret information f (j n ). Terminal apparatus includes a request unit that requests the proxy computing device n to seek from the information corresponding to the ciphertext tau value f (j n) τ, k = 1,2, ..., K, the j k k different j 1, j 2 for each, ..., and any value of j N, with K values f (j k) τ, a decoding unit for obtaining the information a 0 tau corresponding to the decrypted text, the Including.

上記の課題を解決するために、本発明の他の態様によれば、署名システムは、Nを2以上の整数とし、n=1,…,Nとし、端末装置と、N個の代理計算装置nとを含む。Kを1以上N以下の整数とし、f(x)=a(K-1)x(K-1)+…+a1x+a0とし、a0=f(0)を真の秘密情報とし、jnをn毎に異なる1以上の整数とし、f(jn)を分散された秘密情報とし、代理計算装置nは、分散された秘密情報f(jn)が記憶される記憶部と、平文に対応する情報τと分散された秘密情報f(jn)とを用いて値f(jn)τを求める計算部と、を含む。端末装置は、平文に対応する情報τから値f(jn)τを求めるように代理計算装置nに対して依頼する依頼部と、k=1,2,…,K、jkをk毎に異なるj1,j2,…,jNの何れかの値とし、K個の値f(jk)τを用いて、電子署名に対応する情報a0τを求める署名生成部と、を含む。 In order to solve the above-described problem, according to another aspect of the present invention, the signature system is configured such that N is an integer greater than or equal to 2, n = 1,..., N, a terminal device, and N proxy computing devices n. K is an integer between 1 and N, f (x) = a (K-1) x (K-1) + ... + a 1 x + a 0, and a 0 = f (0) is true secret information And j n is an integer greater than or equal to 1 different for each n , f (j n ) is distributed secret information, and the proxy computing device n is a storage unit for storing the distributed secret information f (j n ) And a calculation unit for obtaining the value f (j n ) τ using the information τ corresponding to the plaintext and the distributed secret information f (j n ). The terminal device requests the proxy computing device n to obtain the value f (j n ) τ from the information τ corresponding to the plaintext, and k = 1, 2,..., K, j k for each k different j 1, j 2, the ..., and any value of j N, with K values f (j k) τ, a signature generation unit for obtaining the information a 0 tau corresponding to the electronic signature, the Including.

本発明によれば、真の秘密情報a0による情報漏洩を防止することができる。 According to the present invention, information leakage due to true secret information a 0 can be prevented.

第一実施形態に係る復号システムの構成例を示す図。The figure which shows the structural example of the decoding system which concerns on 1st embodiment. 第一実施形態に係る復号システム1の処理フローを示す図。The figure which shows the processing flow of the decoding system 1 which concerns on 1st embodiment. 第一実施形態に係る端末装置の機能ブロック図。The functional block diagram of the terminal device which concerns on 1st embodiment. 第一実施形態に係る代理計算装置の機能ブロック図Functional block diagram of the proxy computing device according to the first embodiment 第二実施形態に係る復号システムの構成例を示す図。The figure which shows the structural example of the decoding system which concerns on 2nd embodiment. 第三実施形態に係る復号システムの構成例を示す図。The figure which shows the structural example of the decoding system which concerns on 3rd embodiment. 第三実施形態に係る復号システム1の処理フローを示す図。The figure which shows the processing flow of the decoding system 1 which concerns on 3rd embodiment. 第三実施形態に係る端末装置の機能ブロック図。The functional block diagram of the terminal device which concerns on 3rd embodiment. 第四実施形態に係る電子署名システムの構成例を示す図。The figure which shows the structural example of the electronic signature system which concerns on 4th embodiment. 第四実施形態に係る電子署名システムの処理フローを示す図。The figure which shows the processing flow of the electronic signature system which concerns on 4th embodiment. 第四実施形態に係る端末装置の機能ブロック図。The functional block diagram of the terminal device which concerns on 4th embodiment.

以下、本発明の実施形態について説明する。なお、以下の説明に用いる図面では、同じ機能を持つ構成部や同じ処理を行うステップには同一の符号を記し、重複説明を省略する。   Hereinafter, embodiments of the present invention will be described. In the drawings used for the following description, constituent parts having the same function and steps for performing the same process are denoted by the same reference numerals, and redundant description is omitted.

<第一実施形態>
図1及び図2を用いて第一実施形態に係る復号システム1を説明する。図1は第一実施形態に係る復号システム1の構成例を、図2はその処理フローを示す。
<First embodiment>
A decoding system 1 according to the first embodiment will be described with reference to FIGS. 1 and 2. FIG. 1 shows a configuration example of a decoding system 1 according to the first embodiment, and FIG. 2 shows a processing flow thereof.

復号システム1は、端末装置11と、N個の代理計算装置12−nとを含む。これらはネットワークを通じて通信可能に構成されている。ただし、Nは2以上の整数であり、n=1,…,Nである。   The decryption system 1 includes a terminal device 11 and N proxy computing devices 12-n. These are configured to be able to communicate through a network. However, N is an integer greater than or equal to 2, n = 1, ..., N.

ここで、Kを1以上N以下の整数とし、f(x)=a(K-1)x(K-1)+…+a1x+a0とし、a0=f(0)を真の秘密情報とし、jnをn毎に異なる1以上の整数とし、f(jn)を分散された秘密情報とする。平文Mの暗号文Cに対応する情報τと真の秘密情報a0とを用いて復号文M'に対応する情報a0τを求めることができ、復号文M'に対応する情報a0τから復号文M'を得ることができるものとする。ここでは、群で定義された演算を加法的に表現する。すなわちGを巡回群とし、α∈Gに対する「αb」は、群Gで定義された演算をαに対してb回作用させることを意味する。 Here, K is an integer from 1 to N, f (x) = a (K-1) x (K-1) + ... + a 1 x + a 0, and a 0 = f (0) is true Secret information, j n is an integer of 1 or more different for each n, and f (j n ) is distributed secret information. 'It can determine the information a 0 tau corresponding to, decrypted text M' decrypted text M by using the information corresponding to the ciphertext C of the plaintext M tau and the true secret information a 0 information a 0 tau corresponding to It is assumed that the decrypted text M ′ can be obtained from Here, operations defined by groups are expressed additively. That is, G is a cyclic group, and “αb” for α∈G means that the operation defined in group G is applied to α for b times.

図3に示すように、端末装置11は、依頼部111と復号部112と記憶部113とを含む。代理計算装置12−nは、安全に管理される装置であり、図4に示すように、記憶部122と計算部121とを含む。図3及び図4は、それぞれ端末装置11及び代理計算装置12−nの機能ブロック図を示す。   As illustrated in FIG. 3, the terminal device 11 includes a request unit 111, a decryption unit 112, and a storage unit 113. The proxy computing device 12-n is a device that is safely managed, and includes a storage unit 122 and a computing unit 121, as shown in FIG. 3 and 4 show functional block diagrams of the terminal device 11 and the proxy computing device 12-n, respectively.

端末装置11及び代理計算装置12−nは、ルータ装置、サーバ装置、携帯電話、ICカードなどの計算機能及び記憶機能を備えた機器や、特別なプログラムが読み込まれたCPU(central processing unit)やRAM(random-access memory)を備えた公知又は専用のコンピュータなどである。   The terminal device 11 and the proxy computing device 12-n include a router device, a server device, a mobile phone, an IC card, and other devices having a calculation function and a storage function, a CPU (central processing unit) loaded with a special program, It is a known or dedicated computer equipped with RAM (random-access memory).

<事前処理>
例えば、図示しない分配装置(公開鍵サーバ)は、公開鍵yと、公開鍵yに対応する秘密鍵dを生成し、公開鍵yを公開する。公開鍵暗号方式としては、ElGamal暗号方式、楕円ElGamal暗号方式、RSA暗号方式、Pailler暗号方式などが考えられる。また、分配装置は、秘密鍵dを真の秘密情報a0とし、a0を定数項とするランダムな(K-1)次の多項式を選び、
f(x)=a(K-1)x(K-1)+…+a1x+a0 (1)
とし、代理計算装置12−nに分散された秘密情報f(jn)を配る。さらに、分配装置は、分散された秘密情報f(jn)を配った後に、真の秘密情報a0を削除してもよい。
<Pre-processing>
For example, a distribution device (public key server) (not shown) generates a public key y and a private key d corresponding to the public key y, and publishes the public key y. As public key cryptosystems, ElGamal cryptosystem, elliptic ElGamal cryptosystem, RSA cryptosystem, Pailler cryptosystem, and the like are conceivable. Further, the distribution device selects a random (K-1) degree polynomial having the secret key d as the true secret information a 0 and a 0 as the constant term,
f (x) = a (K-1) x (K-1) +… + a 1 x + a 0 (1)
And distribute the secret information f (j n ) distributed to the proxy computing device 12-n. Further, the distribution device may delete the true secret information a 0 after distributing the distributed secret information f (j n ).

代理計算装置12−nは、分散された秘密情報f(jn)を受け取り、記憶部122に分散された秘密情報f(jn)を格納しておく。 The proxy computing device 12-n receives the distributed secret information f (j n ) and stores the distributed secret information f (j n ) in the storage unit 122.

図示しない端末装置は、公開鍵yを用いて、対応する公開鍵暗号方式により平文Mを暗号化し、暗号文C=Enc(y,M)を生成し、暗号文Cを端末装置11に送信する。   A terminal device (not shown) encrypts the plaintext M using the public key y using the public key encryption method, generates a ciphertext C = Enc (y, M), and transmits the ciphertext C to the terminal device 11. .

端末装置11は、暗号文Cを受け取り、記憶部113に暗号文Cを格納しておく。   The terminal device 11 receives the ciphertext C and stores the ciphertext C in the storage unit 113.

<復号処理>
端末装置11の依頼部111は、暗号文Cに対応する情報τから値f(jn)τを求めるように代理計算装置12−nに対して依頼する(s1)。例えば、ネットワークを介して暗号文に対応する情報τと計算依頼情報(値f(jn)τを求めるように記述された情報)とをN個の代理計算装置12−nに送信する。なお、必ずしもN個の代理計算装置12−nに送信する必要はなく、少なくともK個の代理計算装置12−nに送信すればよい。
<Decryption process>
The request unit 111 of the terminal device 11 requests the proxy computing device 12-n to obtain the value f (j n ) τ from the information τ corresponding to the ciphertext C (s1). For example, the information τ corresponding to the ciphertext and the calculation request information (information described so as to obtain the value f (j n ) τ) are transmitted to the N proxy computing devices 12-n via the network. Note that it is not always necessary to transmit to N proxy computing devices 12-n, and it is sufficient to transmit to at least K proxy computing devices 12-n.

代理計算装置12−nの計算部121は、暗号文Cに対応する情報τを受け取ると、記憶部122から分散された秘密情報f(jn)を読み込み、暗号文Cに対応する情報τと分散された秘密情報f(jn)とを用いて値f(jn)τを求め(s2)、端末装置11に送信する。 Upon receiving the information τ corresponding to the ciphertext C, the calculation unit 121 of the proxy computer 12-n reads the secret information f (j n ) distributed from the storage unit 122, and the information τ corresponding to the ciphertext C Using the distributed secret information f (j n ), a value f (j n ) τ is obtained (s 2) and transmitted to the terminal device 11.

端末装置11の復号部112は、K個の値f(jk)τを受け取ると、K個の値f(jk)τを用いて、復号文M'に対応する情報a0τを求める(s3)。ここで、k=1,2,…,K、jkはk毎に異なるj1,j2,…,jnの何れかの値である。例えば、K個の値f(jk)τをそれぞれ定数倍し、加算することで、復号文M'に対応する情報a0τを求める。さらに、復号部112は、復号文M'に対応する情報a0τから復号文M'を取得し、ディスプレイ等の出力部から出力する。なお、N-K個まで分散された秘密情報f(n)を紛失したり破壊されても復号文M'に対応する情報a0τを求めることができる。以下、K=2の場合、K=3の場合の例を示す。なお、説明を分かり易くするために、この例では、jn=jk=nとする。 When receiving the K values f (j k ) τ, the decryption unit 112 of the terminal device 11 obtains information a 0 τ corresponding to the decrypted text M ′ using the K values f (j k ) τ. (S3). Here, k = 1,2, ..., K , j k varies from k j 1, j 2, ... , is any value of j n. For example, the information a 0 τ corresponding to the decrypted text M ′ is obtained by multiplying K values f (j k ) τ by a constant and adding them. Further, the decryption unit 112 acquires the decrypted text M ′ from the information a 0 τ corresponding to the decrypted text M ′, and outputs it from an output unit such as a display. Note that the information a 0 τ corresponding to the decrypted text M ′ can be obtained even if up to NK pieces of secret information f (n) are lost or destroyed. Hereinafter, examples of K = 2 and K = 3 are shown. For easy understanding, in this example, j n = j k = n.

<K=2の場合>
例えば、K=2、f(x)=a1x+a0の場合、a0=2f(1)+f(2)の関係が成り立つため(式(1)参照)、端末装置11の依頼部111は、代理計算装置12−1、12−2にそれぞれf(1)τ、f(2)τの計算を依頼する。端末装置11の復号部112は、f(1)τ、f(2)τを受け取ると、次式により、復号文M'に対応する情報a0τを求める。
a0τ=2f(1)τ+f(2)τ
<When K = 2>
For example, when K = 2 and f (x) = a 1 x + a 0 , since the relationship of a 0 = 2f (1) + f (2) is established (see Expression (1)), the request from the terminal device 11 The unit 111 requests the proxy calculation devices 12-1 and 12-2 to calculate f (1) τ and f (2) τ, respectively. Upon receiving f (1) τ and f (2) τ, the decryption unit 112 of the terminal device 11 obtains information a 0 τ corresponding to the decrypted text M ′ by the following equation.
a 0 τ = 2f (1) τ + f (2) τ

このような構成とすることで、離散対数問題が困難な群であれば、端末装置11は、復号文M'に対応する情報a0τを知った後でも、真の秘密情報a0を知ることはできない。そのため、端末装置11は、暗号文Cと無関係な暗号文C'に対応する情報τ'から復号文M'に対応する情報a0τ'を求めることはできない。この点が、従来の秘密分散法とは異なる。 With such a configuration, if the discrete logarithm problem is a difficult group, the terminal device 11 knows the true secret information a 0 even after knowing the information a 0 τ corresponding to the decrypted text M ′. It is not possible. Therefore, the terminal device 11 cannot obtain the information a 0 τ ′ corresponding to the decrypted text M ′ from the information τ ′ corresponding to the cipher text C ′ unrelated to the cipher text C. This is different from the conventional secret sharing method.

<K=3の場合>
また、例えば、K=3、f(x)=a2x2+a1x+a0の場合、a0=f(3)-2f(2)+f(1)の関係が成り立つため(式(1)参照)、端末装置11の依頼部111は、代理計算装置12−1、12−2、12−3にそれぞれf(1)τ、f(2)τ、f(3)τの計算を依頼する。端末装置11の復号部112は、f(1)τ、f(2)τ、f(3)τを受け取ると、次式により、復号文M'に対応する情報a0τを求める。
a0τ=f(3)τ-2f(2)τ+f(1)τ
<When K = 3>
For example, when K = 3 and f (x) = a 2 x 2 + a 1 x + a 0 , the relationship of a 0 = f (3) -2f (2) + f (1) holds ( (See equation (1)), the request unit 111 of the terminal device 11 sends f (1) τ, f (2) τ, and f (3) τ to the proxy computing devices 12-1, 12-2, and 12-3, respectively. Request a calculation. Upon receiving f (1) τ, f (2) τ, and f (3) τ, the decryption unit 112 of the terminal device 11 obtains information a 0 τ corresponding to the decrypted text M ′ by the following equation.
a 0 τ = f (3) τ-2f (2) τ + f (1) τ

以下、RSA暗号、ElGamal暗号、楕円ElGamal暗号を用いた場合の公開鍵暗号方式についてそれぞれ説明する。   Hereinafter, public key cryptosystems using RSA encryption, ElGamal encryption, and elliptic ElGamal encryption will be described.

(RSA暗号を用いた公開鍵暗号方式について)
RSA暗号を用いた公開鍵暗号方式の一例について説明する。まず、tをセキュリティパラメータとする。p,q(p≠q)をt/2ビットの素数とし、m=pqとする。eをφ(m)未満の正の整数で、φ(m)と互いに素な数とし、d(=a0)を、φ(m)を法としたeの逆数(de≡1(modφ(m)))とする。ただし、ここでφ(m)はmのオイラー関数で、この場合は(p-1)(q-1)に等しい。0以上m未満の整数の集合をZmで表す。Mを平文空間Zmの元とする。
(About public key cryptography using RSA cryptography)
An example of a public key cryptosystem using RSA cryptography will be described. First, let t be a security parameter. Let p, q (p ≠ q) be a t / 2-bit prime number, and m = pq. e is a positive integer less than φ (m), which is relatively prime with φ (m), d (= a 0 ) is the inverse of e modulo φ (m) (de≡1 (modφ ( m))). Here, φ (m) is an Euler function of m, and in this case, is equal to (p−1) (q−1). A set of integers greater than or equal to 0 and less than m is represented by Z m . The M to the original plaintext space Z m.

RSA暗号を用いた公開鍵暗号方式では、公開鍵y=(e,m)とする。   In the public key cryptosystem using RSA cryptography, the public key y = (e, m).

図示しない端末装置は、公開鍵y=(e,m)を用いて、平文Mを次式により暗号化する。
C=Me mod m
ここでは、群で定義された演算を乗法的に表現する。すなわちGを群とし、α∈Gに対する「αb」は、群Gで定義された演算をαに対してb回作用させることを意味する。暗号文Cに対応する情報τを暗号文Cそのもの(τ=C)とし、復号文M'に対応する情報a0τをCa_0とし、復号文M'を次式により表す。
M'=Ca_0 mod m
なお、上付き添え字a_0は、a0を意味する。
A terminal device (not shown) encrypts the plaintext M by the following equation using the public key y = (e, m).
C = M e mod m
Here, the operation defined by the group is expressed in a multiplicative manner. That is, G is a group, and “α b ” for α∈G means that the operation defined in group G is applied to α b times. The information τ corresponding to the ciphertext C is the ciphertext C itself (τ = C), the information a 0 τ corresponding to the decrypted text M ′ is C a — 0 , and the decrypted text M ′ is expressed by the following equation.
M '= C a_0 mod m
In addition, the superscript a_0 means a 0.

端末装置11は、暗号文Cと計算依頼情報(値Cf(n)を求めるように記述された情報)とをN個の代理計算装置12−nに送信する。 The terminal device 11 transmits the ciphertext C and the calculation request information (information described so as to obtain the value C f (n) ) to the N proxy calculation devices 12-n.

代理計算装置12−nは、値Cf(n)を求め、端末装置11に送信する。 The proxy computing device 12-n obtains a value C f (n) and transmits it to the terminal device 11.

端末装置11は、公開鍵y=(m,e)とK個の値Cf(k)とを用いて、復号文M'=Cf(0) mod mを求める。 The terminal device 11 obtains the decrypted text M ′ = C f (0) mod m using the public key y = (m, e) and the K values C f (k) .

例えば、K=2、f(x)=a1x+a0の場合、a0=2f(1)+f(2)の関係が成り立つため、Cf(1)、Cf(2)を用いて、次式により復号文M'=Ca_0mod mを求めることができる。
M'=Ca_0 mod m =C2f(1)+f(2)mod m
For example, when K = 2 and f (x) = a 1 x + a 0 , the relationship of a 0 = 2f (1) + f (2) holds, so C f (1) and C f (2) are The decrypted text M ′ = C a — 0 mod m can be obtained by the following equation.
M '= C a_0 mod m = C 2f (1) + f (2) mod m

(ElGamal暗号を用いた公開鍵暗号方式について)
ElGamalを用いた公開鍵暗号方式の一例について説明する。tをセキュリティパラメータとする。巡回群Gで、位数qが素数であり、かつqのビット数がtであるものを選ぶ。Gの生成元gを選ぶ。x(=a0)を{0,…,q-1}からランダムに選ぶ。h=gxとする。平文空間はGであり、MはGの元である。暗号文空間はG2であり、(C1,C2)∈G×Gである。
(About public key cryptosystem using ElGamal cipher)
An example of a public key cryptosystem using ElGamal will be described. Let t be the security parameter. Select a cyclic group G in which the order q is a prime number and the number of bits of q is t. Select G generator g. x (= a 0 ) is randomly selected from {0, ..., q-1}. Let h = g x . The plaintext space is G, and M is an element of G. The ciphertext space is G 2 and (C 1 , C 2 ) ∈G × G.

ElGamal暗号を用いた公開鍵暗号方式では、公開鍵y=(G,q,g,h=ga_0)とする。 In the public key cryptosystem using ElGamal cryptography, the public key y = (G, q, g, h = ga_0 ).

図示しない端末装置は、公開鍵y=(G,q,g,h=ga_0)を用いて、平文Mを次式により暗号化する。
C=(C1,C2)
C1=gr
C2=Mhr
ただし、rは図示しない端末装置によって生成される乱数であり、0<r<qからランダムに選ばれる整数である。ここでは、群で定義された演算を乗法的に表現する。暗号文Cに対応する情報τを暗号文Cの一部であるC1とし、復号文M'に対応する情報a0τをC1 a_0とし、復号文M'を次式により表す。
M'=C2/C1 a_0
A terminal device (not shown) encrypts the plaintext M by the following equation using the public key y = (G, q, g, h = ga_0 ).
C = (C 1 , C 2 )
C 1 = g r
C 2 = Mh r
However, r is a random number generated by a terminal device (not shown), and is an integer randomly selected from 0 <r <q. Here, the operation defined by the group is expressed in a multiplicative manner. The information τ corresponding to the ciphertext C is C 1 which is a part of the ciphertext C, the information a 0 τ corresponding to the decrypted text M ′ is C 1 a — 0 , and the decrypted text M ′ is expressed by the following equation.
M '= C 2 / C 1 a_0

端末装置11は、暗号文の一部C1と計算依頼情報(値C1 f(n)を求めるように記述された情報)とをN個の代理計算装置12−nに送信する。 The terminal device 11 transmits a part C 1 of the ciphertext and the calculation request information (information described so as to obtain the value C 1 f (n) ) to the N proxy calculation devices 12-n.

代理計算装置12−nは、値C1 f(n)を求め、端末装置11に送信する。 The proxy computing device 12-n obtains a value C 1 f (n) and transmits it to the terminal device 11.

端末装置11は、公開鍵y=(G,q,g,h=ga_0)と暗号文Cの一部C2とK個の値C1 f(k)とを用いて、復号文M'=C2/C1 a_0を求める。 The terminal device 11 uses the public key y = (G, q, g, h = g a — 0 ), a part C 2 of the ciphertext C, and the K values C 1 f (k) to obtain a decrypted text M ′. = C 2 / C 1 a_0 is obtained.

例えば、K=2、f(x)=a1x+a0の場合、a0=2f(1)+f(2)の関係が成り立つため、C1 f(1)、C1 f(2)を用いて、次式により復号文M'=C2/C1 a_0を求めることができる。
M'=C2/C1 a_0=C2/C1 2f(1)+f(2)
For example, if K = 2, f (x) = a 1 x + a 0 , the relationship a 0 = 2f (1) + f (2) holds, so C 1 f (1) , C 1 f (2 ) , The decrypted text M ′ = C 2 / C 1 a — 0 can be obtained by the following equation.
M '= C 2 / C 1 a_0 = C 2 / C 1 2f (1) + f (2)

(楕円ElGamal暗号を用いた公開鍵暗号方式について)
Eを楕円曲線パラメータ、J及びHを楕円曲線E上の点、qを楕円曲線E上の点Jの位数とし、楕円ElGamal暗号を用いた公開鍵暗号方式では、公開鍵y=(E,q,J,H=a0J)とする。
(About public key cryptography using elliptic ElGamal cryptography)
In the public key cryptosystem using the elliptic ElGamal cipher, where E is an elliptic curve parameter, J and H are points on the elliptic curve E, q is the order of the point J on the elliptic curve E, the public key y = (E, q, J, H = a 0 J).

図示しない端末装置は、公開鍵y=(J,H=a0J)を用いて、平文Mを次式により暗号化する。
C=(C1,C2)
C1=rJ
C2=M+rH
ただし、rは図示しない端末装置によって生成される乱数であり、0<r<qからランダムに選ばれる整数である。ここでは、群で定義された演算を加法的に表現する。暗号文Cに対応する情報τを暗号文Cの一部であるC1とし、復号文M'に対応する情報をa0C1とし、復号文M'を次式により表す。
M'=C2-a0C1
A terminal device (not shown) encrypts the plaintext M by the following equation using the public key y = (J, H = a 0 J).
C = (C 1 , C 2 )
C 1 = rJ
C 2 = M + rH
However, r is a random number generated by a terminal device (not shown), and is an integer randomly selected from 0 <r <q. Here, operations defined by groups are expressed additively. The information τ corresponding to the ciphertext C is C 1 which is a part of the ciphertext C, the information corresponding to the decrypted text M ′ is a 0 C 1 , and the decrypted text M ′ is expressed by the following equation.
M '= C 2 -a 0 C 1

端末装置11は、暗号文の一部C1と計算依頼情報(値f(n)C1を求めるように記述された情報)とをN個の代理計算装置12−nに送信する。 The terminal device 11 transmits a part C 1 of the ciphertext and calculation request information (information described so as to obtain the value f (n) C 1 ) to the N proxy calculation devices 12-n.

代理計算装置12−nは、値f(n)C1を求め、端末装置11に送信する。 The proxy computing device 12-n obtains the value f (n) C 1 and transmits it to the terminal device 11.

端末装置11は、公開鍵y=(E,q,J,H=a0J)と暗号文の一部C2とK個の値f(k)C1とを用いて、復号文M'=C2-a0C1を求める。 The terminal device 11 uses the public key y = (E, q, J, H = a 0 J), a part C 2 of the ciphertext, and K values f (k) C 1 to use the decrypted text M ′. = C 2 -a 0 C 1 is obtained.

例えば、K=2、f(x)=a1x+a0の場合、a0=2f(1)+f(2)の関係が成り立つため、C1f(1)、C1f(2)を用いて、次式により復号文M'=C2-C1a0を求めることができる。
M'=C2-a0C1=C2-(2f(1)+f(2))C1
For example, if K = 2, f (x) = a 1 x + a 0 , the relationship a 0 = 2f (1) + f (2) holds, so C 1 f (1), C 1 f (2 ), The decrypted text M ′ = C 2 −C 1 a 0 can be obtained by the following equation.
M '= C 2 -a 0 C 1 = C 2- (2f (1) + f (2)) C 1

<効果>
このような構成により、真の秘密情報a0を計算せずに、復号文M'に対応する情報a0τを求めることができ、復号文M'に対応する情報a0τから復号文M'を取得することができる。端末装置11では、真の秘密情報a0を知ることはできないため、真の秘密情報a0の消去を失敗するということがなく、真の秘密情報a0の消去失敗による情報漏洩を防止することができる。また、秘密情報f(n)を配った後に、秘密鍵d=a0を削除しても、暗号文Cを復号することができ、秘密鍵の管理負担を軽減することができる。
<Effect>
With this configuration, without calculating the true secret information a 0, 'it is possible to determine the information a 0 tau corresponding to, decrypted text M' decrypted text M decrypted text M from information a 0 tau corresponding to 'Can get. In the terminal apparatus 11, since it is not possible to know the true secret information a 0, without that fail to erase the true secret information a 0, to prevent information leakage due to erasure failure of the true secret information a 0 Can do. Further, even if the secret key d = a 0 is deleted after the secret information f (n) is distributed, the ciphertext C can be decrypted, and the management burden of the secret key can be reduced.

<変形例>
本実施形態では、端末装置11の依頼部111が、計算依頼情報を代理計算装置12−nに送信する構成となっているが、計算依頼情報を送信せずとも代理計算装置12−nが暗号文Cを受け取ると、値f(jn)τを計算し、この値を返す構成としてもよい。
<Modification>
In the present embodiment, the request unit 111 of the terminal device 11 is configured to transmit the calculation request information to the proxy calculation device 12-n. However, the proxy calculation device 12-n is encrypted without transmitting the calculation request information. When the sentence C is received, a value f (j n ) τ may be calculated and this value may be returned.

図示しない分配装置は、N個の代理計算装置12−nとは別に設けてもよいし、N個の代理計算装置12−nの内の何れかにその機能を持たせてもよい。   A distribution device (not shown) may be provided separately from the N proxy computing devices 12-n, or any of the N proxy computing devices 12-n may have the function.

<第二実施形態>
第一実施形態と異なる部分を中心に説明する。図5を用いて第二実施形態に係る復号システム2を説明する。図5は第二実施形態に係る復号システム2の構成例を示す。
<Second embodiment>
A description will be given centering on differences from the first embodiment. The decoding system 2 according to the second embodiment will be described with reference to FIG. FIG. 5 shows a configuration example of the decoding system 2 according to the second embodiment.

復号システム2は、端末装置11と、N個の代理計算装置12−nと、鍵装置23とを含む。これらはネットワークを通じて通信可能に構成されている。鍵装置23は、N個の代理計算装置12−nを管理する。例えば、鍵装置23は、N個の代理計算装置12−nのアドレスや、N個の代理計算装置12−nの変更、追加、削除等を行い、端末装置11とN個の代理計算装置12−nとは、鍵装置23を介して情報を送受信する。また、鍵装置23において、アクセス制御を行う構成としてもよい。   The decryption system 2 includes a terminal device 11, N proxy computing devices 12-n, and a key device 23. These are configured to be able to communicate through a network. The key device 23 manages N proxy computing devices 12-n. For example, the key device 23 changes the address of the N proxy computing devices 12-n, changes, adds, deletes the N proxy computing devices 12-n, and the terminal device 11 and the N proxy computing devices 12 -N transmits and receives information via the key device 23. The key device 23 may be configured to perform access control.

第一実施形態では、端末装置11がN個の代理計算装置12−nに対して計算依頼を直接行っていたが、第二実施形態では、鍵装置23を介して計算依頼を行う。このとき、鍵装置23に暗号文Cを渡すと、復号文M'を鍵装置23に知られてしまう。そこで、本実施形態では、鍵装置23に暗号文Cそのものではなく暗号文Cの一部C1を渡し、鍵装置23を介して値f(jn)C1を求めるように代理計算装置12−nに対して依頼する。本実施形態では、暗号文Cに対応する情報τは暗号文Cの一部C1である。なお、暗号文Cの一部C1は、暗号文Cに対応する情報であり、かつ、それのみから復号文M'を復号できない情報である。なお、暗号文Cを復号するためには、暗号文Cの一部C1と他の部分とを必要とする。例えば、暗号文Cの一部C1として第一実施形態のElGamal暗号や楕円ElGamal暗号のC1を用いることができる。 In the first embodiment, the terminal device 11 directly makes a calculation request to the N proxy computing devices 12-n. In the second embodiment, the terminal device 11 makes a calculation request via the key device 23. At this time, if the ciphertext C is passed to the key device 23, the decrypted text M ′ is known to the key device 23. Therefore, in the present embodiment, the proxy computer 12 is configured to pass a part C 1 of the ciphertext C instead of the ciphertext C itself to the key device 23 and obtain the value f (j n ) C 1 via the key device 23. -Ask to n. In the present embodiment, the information τ corresponding to the ciphertext C is a part C 1 of the ciphertext C. A part C 1 of the ciphertext C is information corresponding to the ciphertext C, and is information that cannot decrypt the decrypted text M ′ alone. In order to decrypt the ciphertext C may require a portion C 1 and the other part of the ciphertext C. For example, it is possible to use C 1 of ElGamal encryption and elliptic ElGamal encryption of the first embodiment as a part C 1 of the ciphertext C.

<事前処理>
例えば、鍵装置23は、公開鍵yと、公開鍵yに対応する秘密鍵dを生成し、公開鍵yを公開する。公開鍵暗号方式としては、ElGamal暗号方式、楕円ElGamal暗号方式などが考えられる。また、鍵装置23は、秘密鍵dを真の秘密情報a0とし、a0を定数項とするランダムな(K-1)次の多項式を選び、
f(x)=a(K-1)x(K-1)+…+a1x+a0
とし、代理計算装置12−nに分散された秘密情報f(jn)を配る。さらに、鍵装置23は、分散された秘密情報f(jn)を配った後に、真の秘密情報a0を削除してもよい。
<Pre-processing>
For example, the key device 23 generates a public key y and a private key d corresponding to the public key y, and publishes the public key y. As public key cryptosystems, ElGamal cryptosystem, elliptical ElGamal cryptosystem, and the like are conceivable. Further, the key device 23 selects a random (K−1) degree polynomial having the secret key d as the true secret information a 0 and a 0 as the constant term,
f (x) = a (K-1) x (K-1) +… + a 1 x + a 0
And distribute the secret information f (j n ) distributed to the proxy computing device 12-n. Further, the key device 23 may delete the true secret information a 0 after distributing the distributed secret information f (j n ).

代理計算装置12−nは、分散された秘密情報f(jn)を受け取り、記憶部122に分散された秘密情報f(jn)を格納しておく。 The proxy computing device 12-n receives the distributed secret information f (j n ) and stores the distributed secret information f (j n ) in the storage unit 122.

図示しない端末装置は、公開鍵yを用いて、対応する公開鍵暗号方式により平文Mを暗号化し、暗号文C=Enc(y,M)を生成し、暗号文Cを端末装置11に送信する。   A terminal device (not shown) encrypts the plaintext M using the public key y using the public key encryption method, generates a ciphertext C = Enc (y, M), and transmits the ciphertext C to the terminal device 11. .

例えば、ElGamal暗号を用いた公開鍵暗号方式では、公開鍵y=(g,h=ga_0)とし、暗号文Cを
C=(C1,C2)
C1=gr
C2=Mhr
とする。また、楕円ElGamal暗号を用いた公開鍵暗号方式では、公開鍵y=(G,H=a0G)とし、暗号文Cを
C=(C1,C2)
C1=rG
C2=M+rH
とする。
For example, in the public key cryptosystem using ElGamal cipher, the public key y = (g, h = ga_0 ) and the ciphertext C
C = (C 1 , C 2 )
C 1 = g r
C 2 = Mh r
And In the public key cryptosystem using the elliptic ElGamal cipher, the public key y = (G, H = a 0 G) and the ciphertext C
C = (C 1 , C 2 )
C 1 = rG
C 2 = M + rH
And

端末装置11は、暗号文Cを受け取り、記憶部113に暗号文Cを格納しておく。例えば、暗号文CはC1とC2とからなり、C=(C1,C2)と表される。 The terminal device 11 receives the ciphertext C and stores the ciphertext C in the storage unit 113. For example, the ciphertext C consists of C 1 and C 2 and is expressed as C = (C 1 , C 2 ).

<復号処理>
本実施形態では、暗号文Cに対応する情報τとして、暗号文Cの一部C1を用い、端末装置11の依頼部111は、鍵装置23を介して、暗号文Cの一部C1から値f(jn)C1を求めるようにN個の代理計算装置12−nに対して依頼する(s1)。
<Decryption process>
In the present embodiment, a part C 1 of the ciphertext C is used as the information τ corresponding to the ciphertext C, and the request unit 111 of the terminal device 11 transmits the part C 1 of the ciphertext C via the key device 23. N proxy computing devices 12-n are requested to obtain the value f (j n ) C 1 from (s1).

代理計算装置12−nの計算部121は、暗号文Cの一部C1を受け取ると、記憶部122から分散された秘密情報f(jn)を読み込み、暗号文Cの一部C1と分散された秘密情報f(jn)とを用いて値f(jn)C1を求め(s2)、鍵装置23に送信する。 Upon receiving the part C 1 of the ciphertext C, the calculation unit 121 of the proxy computing device 12-n reads the secret information f (j n ) distributed from the storage unit 122, and the part C 1 of the ciphertext C A value f (j n ) C 1 is obtained using the distributed secret information f (j n ) (s 2) and transmitted to the key device 23.

端末装置11の復号部112は、鍵装置23を介して代理計算装置12−nから値f(jn)C1を受け取り、K個の値f(jk)C1から復号文M'に対応する情報a0C1を求める(s3)。なお、鍵装置23において、K個の値f(jk)C1から復号文M'に対応する情報a0C1を求め、復号文M'に対応する情報a0C1を端末装置11に送信する構成としてもよい。復号文M'に対応する情報a0C1から復号文M'を求める処理は、第一実施形態で説明した通りである。例えば、ElGamal暗号を用いた場合、M'=C2/C1 a_0により復号文M'を求め、楕円ElGamal暗号を用いた場合、M'=C2-C1a0により復号文M'を求める。 The decryption unit 112 of the terminal device 11 receives the value f (j n ) C 1 from the proxy computing device 12-n via the key device 23, and converts the K values f (j k ) C 1 into the decrypted text M ′. Corresponding information a 0 C 1 is obtained (s3). Incidentally, in the key device 23, K number of 'for information a 0 C 1 corresponding to, decrypted text M' value f (j k) from C 1 decrypted text M information a 0 C 1 corresponding to the terminal device 11 It is good also as a structure which transmits to. The process for obtaining the decrypted text M ′ from the information a 0 C 1 corresponding to the decrypted text M ′ is as described in the first embodiment. For example, when ElGamal cipher is used, the decrypted text M ′ is obtained by M ′ = C 2 / C 1 a_0 , and when elliptic ElGamal cipher is used, the decrypted text M ′ is obtained by M ′ = C 2 -C 1 a 0. Ask.

<効果>
このような構成により、第一実施形態と同様の効果を得ることができる。さらに、鍵装置23で、N個の代理計算装置12−nを管理しているため、端末装置11は、個別にN個の代理計算装置12−nに計算を依頼する必要がなく、端末装置11の処理を軽減することができる。暗号文Cの一部C1のみから、復号文M'を復号できないため、鍵装置23に復号文M'を秘密にしたまま処理を中継させることができる。
<Effect>
With such a configuration, the same effect as that of the first embodiment can be obtained. Further, since the N proxy computing devices 12-n are managed by the key device 23, the terminal device 11 does not need to individually request the N proxy computing devices 12-n for calculation, and the terminal device 11 11 processing can be reduced. Since the decrypted text M ′ cannot be decrypted from only part C 1 of the cipher text C, the key device 23 can relay the process while keeping the decrypted text M ′ secret.

<第三実施形態>
第二実施形態と異なる部分を中心に説明する。図6及び7を用いて第三実施形態に係る復号システム3を説明する。図6は第三実施形態に係る復号システム3の構成例を、図7はその処理フローを示す。
<Third embodiment>
A description will be given centering on differences from the second embodiment. The decoding system 3 according to the third embodiment will be described with reference to FIGS. FIG. 6 shows a configuration example of the decoding system 3 according to the third embodiment, and FIG. 7 shows a processing flow thereof.

本実施形態では、鍵装置23に暗号文Cの一部C1ではなく、乱数rnによって暗号文Cとの関係をかく乱させたかく乱情報τ(n)を渡し、鍵装置23を介して値f(jn)τ(n)を求めるように代理計算装置12−nに対して依頼する。鍵装置23がランダム帰着可能な暗号文(かく乱情報)の復号を行う点が第二実施形態と相違する。ランダム帰着可能な暗号化方式は、ランダム化アルゴリズムと復元アルゴリズムとからなる。ランダム化アルゴリズムは、暗号文と乱数とを用いて別の暗号文を出力する確率アルゴリズムで、出力は入力によらずランダムに選ばれた暗号文と識別できない確率分布に従う。復元アルゴリズムはランダム化アルゴリズムの出力である暗号文を復号した結果とランダム化アルゴリズムで用いられた乱数を入力として、もとの暗号文を復号した平文を出力する。このような暗号方式は、例えばElGamal暗号、楕円ElGamal 暗号、RSA暗号、Pailler暗号などの準同型暗号方式を用いて容易に構成できる。第三実施形態は、準同型暗号方式を用いてランダム自己帰着可能な暗号方式を構成した例を示しながら記述する。本実施形態では、暗号文Cに対応する情報τは乱数rnによって暗号文Cとの関係をかく乱させたかく乱情報τ(n)である。なお、かく乱情報τ(n)は、暗号文Cに対応する情報であり、かつ、乱数rnを知らなければ復号文M'を復号できない情報である。なお、乱数rnは、複数の乱数の集合であってもよい。 In the present embodiment, not the part C 1 of the ciphertext C but the disturbance information τ (n) that disturbs the relationship with the ciphertext C by the random number r n is passed to the key device 23, and the value is transmitted via the key device 23. The proxy computing device 12-n is requested to obtain f (j n ) τ (n). The difference from the second embodiment is that the ciphertext (disturbance information) that can be randomly returned by the key device 23 is decrypted. The encryption method capable of random reduction consists of a randomization algorithm and a restoration algorithm. The randomization algorithm is a probability algorithm that outputs another ciphertext using a ciphertext and a random number, and the output follows a probability distribution that cannot be distinguished from a randomly selected ciphertext regardless of input. The restoration algorithm outputs the plaintext obtained by decrypting the original ciphertext, with the result of decrypting the ciphertext output from the randomization algorithm and the random number used in the randomization algorithm as inputs. Such an encryption method can be easily configured using a homomorphic encryption method such as ElGamal encryption, elliptical ElGamal encryption, RSA encryption, and Pailler encryption. The third embodiment will be described with reference to an example in which a random self-reducing encryption scheme is configured using a homomorphic encryption scheme. In the present embodiment, the information tau corresponding to the ciphertext C is a disturbance information obtained by disrupting the relation between ciphertext C by the random number r n τ (n). Incidentally, disturbance information tau (n) is information corresponding to the ciphertext C, and is information that can not decode the decrypted text M 'without knowing the random number r n. The random number r n may be a set of a plurality of random numbers.

復号システム3は、端末装置31と、N個の代理計算装置12−nと、鍵装置23とを含む。これらはネットワークを通じて通信可能に構成されている(図6参照)。例えば、N個の代理計算装置12−nと、鍵装置23とから鍵管理クラウドを構成し、クラウド鍵管理型暗号方式(参考文献1参照)を実現することができる。
(参考文献1)特開2012−151756号公報
The decryption system 3 includes a terminal device 31, N proxy computing devices 12-n, and a key device 23. These are configured to be communicable through a network (see FIG. 6). For example, a key management cloud can be configured by N proxy computing devices 12-n and a key device 23, and a cloud key management type encryption method (see Reference 1) can be realized.
(Reference 1) JP 2012-151756 A

図8に示すように、端末装置31は、依頼部111と復号部112と記憶部113とかく乱情報生成部314と第二復号部315とを含む。図8は、端末装置31の機能ブロック図を示す。   As illustrated in FIG. 8, the terminal device 31 includes a request unit 111, a decoding unit 112, a storage unit 113, a disturbance information generation unit 314, and a second decoding unit 315. FIG. 8 shows a functional block diagram of the terminal device 31.

<復号処理>
端末装置31のかく乱情報生成部314は、N個の乱数rnを生成し、暗号文Cを記憶部113から取り出し、乱数rnによって暗号文Cとの関係をかく乱させたかく乱情報τ(n)を生成し(s31)、依頼部111へ出力する。N個の乱数rnは記憶部113に記憶しておく。言い換えると、かく乱情報生成部314は、暗号方式のランダム自己帰着性から定義されるランダム化アルゴリズムに則り、暗号文Cと乱数rnに対応するかく乱情報τ(n)を生成する。例えば暗号文Cが準同型暗号方式の暗号文である場合、かく乱情報生成部314は、それと同じ準同型暗号方式に則って公開鍵yで乱数rnを暗号化して得られる暗号文(乱数暗号文)をEnc(y,rn)とし、Enc(y,rn)とCとの乗法によってかく乱情報τ(n)=Enc(y,rn)・Cを生成する。
<Decryption process>
Disturbance information generating unit 314 of the terminal apparatus 31 generates the N random numbers r n, takes out the ciphertext C from the storage unit 113, disturbance information is disrupting the relation between ciphertext C by the random number r n τ (n ) Is generated (s31) and output to the request unit 111. N random numbers r n are stored in the storage unit 113. In other words, disturbance information generating unit 314, in accordance with randomizing algorithm defined from the random self return of the encryption method, generates the disturbance information corresponding to the cipher text C and the random number r n τ (n). For example, if the ciphertext C is a ciphertext homomorphic encryption scheme, disturbance information generating unit 314, the same ciphertext (random cryptographic obtained by encrypting the random number r n in a public key y in accordance with the same homomorphic cryptography the statement) Enc (y, and r n), Enc (y, disturbance information by multiplication with r n) and C τ (n) = Enc ( y, generates a r n) · C.

端末装置31の依頼部111は、鍵装置23を介して、かく乱情報τ(n)から値f(jn)τ(n)を求めるようにN個の代理計算装置12−nに対して依頼する(s1)。 The request unit 111 of the terminal device 31 requests the N proxy computing devices 12-n to obtain the value f (j n ) τ (n) from the disturbance information τ (n) via the key device 23. (S1).

代理計算装置12−nの計算部121は、かく乱情報τ(n)を受け取ると、記憶部122から分散された秘密情報f(jn)を読み込み、前述の準同型暗号化方式に則って、かく乱情報τ(n)と分散された秘密情報f(jn)とを用いて値f(jn)τ(n)を求め(s2)、鍵装置23に送信する。 Upon receiving the disturbance information τ (n), the calculation unit 121 of the proxy calculation device 12-n reads the secret information f (j n ) distributed from the storage unit 122 and follows the homomorphic encryption method described above. A value f (j n ) τ (n) is obtained using the disturbance information τ (n) and the distributed secret information f (j n ) (s2) and transmitted to the key device 23.

端末装置11の第二復号部315は、鍵装置23を介して代理計算装置12−nから値f(jn)τ(n)を受け取り、乱数rnを記憶部113から取り出し、暗号方式のランダム自己帰着性から定義される復元アルゴリズムに則り、乱数rnを用いて、値f(j)τ(n)から値f(j)Cを求め(s32)、値f(j)Cを復号部112に出力する。例えば前述したかく乱情報(n)=Enc(y,rn)・Cである例の場合、第二復号部315は乱数rnの逆元rn −1を用い、f(jn)τ(n)と元rn −1との乗法f(j)C=(rn −1)・f(jn)τ(n)によって値f(j)Cを得ることができる。これは準同型暗号方式の暗号化関数および復号関数が準同型性を持つことに基づく。 The second decryption unit 315 of the terminal apparatus 11 receives the proxy computing device 12-n from the value f (j n) τ (n ) through the key device 23 takes out a random number r n from the storage unit 113, the encryption method accordance with the recovery algorithm defined from the random self return property, using the random number r n, the value f (j n) τ determined the value f (j n) C from (n) (s32), the value f (j n) C is output to the decoding unit 112. For example, in the case of the above-described example where the disturbance information (n) = Enc (y, r n ) · C, the second decoding unit 315 uses the inverse element r n −1 of the random number r n and uses f (j n ) τ ( n) with the original r n multiplication with -1 f (j n) C = (r n -1) · f (j n) τ (n) makes it possible to obtain a value f (j n) C. This is based on the fact that the encryption function and the decryption function of the homomorphic cryptosystem have homomorphism.

端末装置11の復号部112は、K個の値f(jk)Cから復号文M'に対応する情報a0Cを求め、情報a0Cから復号文M'を取得し、ディスプレイ等の出力部から出力する(s3)。 The decryption unit 112 of the terminal device 11 obtains information a 0 C corresponding to the decrypted text M ′ from the K values f (j k ) C, obtains the decrypted text M ′ from the information a 0 C, and displays Output from the output unit (s3).

<効果>
このような構成により、第二実施形態と同様の効果を得ることができる。さらに本実施形態では、鍵装置23を経由するのは暗号文Cと乱数rnとに対応するかく乱情報τ(n)であり、暗号文Cそのものではない。鍵装置23は値f(jn)τ(n)を得ることができても、鍵装置23は乱数rnを知らないため値f(jn)τ(n)から値f(j)Cを得ることはできない。これにより、鍵装置23の管理者が仮にK個の値f(jk)τ(k)を取得したとしても暗号文Cの復号結果M'が知られることを防止できる。
<Effect>
With such a configuration, the same effect as that of the second embodiment can be obtained. Further in this embodiment, to via the key device 23 is a disturbance data corresponding to the cipher text C and the random number r n τ (n), not the ciphertext C. Even if the key device 23 can obtain the value f (j n ) τ (n), since the key device 23 does not know the random number r n , the value f (j n ) τ (n) to the value f (j n ) You can't get C. Thereby, even if the administrator of the key device 23 acquires K values f (j k ) τ (k), it is possible to prevent the decryption result M ′ of the ciphertext C from being known.

なお、暗号文Cに対応する情報τは、乱数rnによって暗号文Cの一部C1との関係をかく乱させたかく乱情報τ(n)であってもよい。 The information corresponding to the ciphertext C tau may be disturbance information obtained by disrupting the relation with a portion C 1 of the ciphertext C tau (n) by a random number r n.

<第四実施形態>
図9及び図10を用いて第四実施形態に係る電子署名システム4を説明する。図9は第四実施形態に係る電子署名システム4の構成例を、図10はその処理フローを示す。
<Fourth embodiment>
The electronic signature system 4 according to the fourth embodiment will be described with reference to FIGS. 9 and 10. FIG. 9 shows a configuration example of the electronic signature system 4 according to the fourth embodiment, and FIG. 10 shows the processing flow.

電子署名システム4は、端末装置41と、N個の代理計算装置12−nとを含む。これらはネットワークを通じて通信可能に構成されている。ただし、Nは2以上の整数であり、n=1,…,Nである。   The electronic signature system 4 includes a terminal device 41 and N proxy computing devices 12-n. These are configured to be able to communicate through a network. However, N is an integer greater than or equal to 2, n = 1, ..., N.

ここで、Kを1以上N以下の整数とし、f(x)=a(K-1)x(K-1)+…+a1x+a0とし、a0=f(0)を真の秘密情報とし、jnをn毎に異なる1以上の整数とし、f(jn)を分散された秘密情報とする。平文Mに対応する情報τと真の秘密情報a0とを用いて電子署名σに対応する情報a0τを求めることができ、電子署名σに対応する情報a0τから電子署名σを求めるものとする。ここでは、群で定義された演算を加法的に表現する。 Here, K is an integer from 1 to N, f (x) = a (K-1) x (K-1) + ... + a 1 x + a 0, and a 0 = f (0) is true Secret information, j n is an integer of 1 or more different for each n, and f (j n ) is distributed secret information. Can ask for information a 0 tau corresponding to the electronic signature σ by using the information tau and true secret information a 0 corresponding to the plaintext M, obtains the electronic signature σ from the information a 0 tau corresponding to the electronic signature σ Shall. Here, operations defined by groups are expressed additively.

図11に示すように、端末装置41は、依頼部411と署名生成部412と記憶部413とを含む。図11は、端末装置41の機能ブロック図を示す。   As illustrated in FIG. 11, the terminal device 41 includes a request unit 411, a signature generation unit 412, and a storage unit 413. FIG. 11 shows a functional block diagram of the terminal device 41.

端末装置41及び代理計算装置12−nは、ルータ装置、サーバ装置、携帯電話、ICカードなどの計算機能及び記憶機能を備えた機器や、特別なプログラムが読み込まれたCPU(central processing unit)やRAM(random-access memory)を備えた公知又は専用のコンピュータなどである。   The terminal device 41 and the proxy computing device 12-n include a router device, a server device, a mobile phone, an IC card and other devices having a calculation function and a storage function, a CPU (central processing unit) loaded with a special program, It is a known or dedicated computer equipped with RAM (random-access memory).

<事前処理>
例えば、図示しない分配装置(公開鍵サーバ)は、公開鍵yと、公開鍵yに対応する秘密鍵dを生成し、公開鍵yを公開する。電子署名の暗号方式としては、ElGamal暗号方式、楕円ElGamal暗号方式、RSA暗号方式、Pailler暗号方式などが考えられる。
<Pre-processing>
For example, a distribution device (public key server) (not shown) generates a public key y and a private key d corresponding to the public key y, and publishes the public key y. As an electronic signature encryption method, an ElGamal encryption method, an elliptic ElGamal encryption method, an RSA encryption method, a Pailler encryption method, and the like can be considered.

また、分配装置は、秘密鍵dを真の秘密情報a0とし、a0を定数項とするランダムな(K-1)次の多項式を選び、
f(x)=a(K-1)x(K-1)+…+a1x+a0
とし、代理計算装置12−nに分散された秘密情報f(jn)を配る。さらに、分配装置は、分散された秘密情報f(jn)を配った後に、真の秘密情報a0を削除してもよい。
Further, the distribution device selects a random (K-1) degree polynomial having the secret key d as the true secret information a 0 and a 0 as the constant term,
f (x) = a (K-1) x (K-1) +… + a 1 x + a 0
And distribute the secret information f (j n ) distributed to the proxy computing device 12-n. Further, the distribution device may delete the true secret information a 0 after distributing the distributed secret information f (j n ).

代理計算装置12−nは、分散された秘密情報f(jn)を受け取り、記憶部122に分散された秘密情報f(jn)を格納しておく。 The proxy computing device 12-n receives the distributed secret information f (j n ) and stores the distributed secret information f (j n ) in the storage unit 122.

端末装置41は、平文Mを受け取り、記憶部413に平文Mを格納しておく。   The terminal device 41 receives the plaintext M and stores the plaintext M in the storage unit 413.

<署名生成処理>
端末装置41の依頼部411は、平文Mに対応する情報τから値f(jn)τを求めるように代理計算装置12−nに対して依頼する(s1)。例えば、ネットワークを介して平文Mに対応する情報τと計算依頼情報(値f(jn)τを求めるように記述された情報)とをN個の代理計算装置12−nに送信する。なお、必ずしもN個の代理計算装置12−nに送信する必要はなく、少なくともK個の代理計算装置12−nに送信すればよい。
<Signature generation processing>
The request unit 411 of the terminal device 41 requests the proxy computing device 12-n to obtain the value f (j n ) τ from the information τ corresponding to the plaintext M (s1). For example, the information τ corresponding to the plaintext M and the calculation request information (information described so as to obtain the value f (j n ) τ) are transmitted to the N proxy computing devices 12-n via the network. Note that it is not always necessary to transmit to N proxy computing devices 12-n, and it is sufficient to transmit to at least K proxy computing devices 12-n.

代理計算装置12−nの計算部121は、平文Mに対応する情報τを受け取ると、記憶部122から分散された秘密情報f(jn)を読み込み、平文Mに対応する情報τと分散された秘密情報f(jn)とを用いて値f(jn)τを求め(s2)、端末装置41に送信する。 Upon receiving the information τ corresponding to the plaintext M, the calculation unit 121 of the proxy computing device 12-n reads the secret information f (j n ) distributed from the storage unit 122 and is distributed with the information τ corresponding to the plaintext M. Using the secret information f (j n ) obtained, a value f (j n ) τ is obtained (s 2) and transmitted to the terminal device 41.

端末装置41の署名生成部412は、K個の値f(jk)τを受け取ると、K個の値f(jk)τを用いて、電子署名σに対応する情報a0τを求め、電子署名σに対応する情報a0τから電子署名σを求める(s3)。 Signature generation unit 412 of the terminal device 41 receives the K values f (j k) τ, using the K values f (j k) τ, for information a 0 tau corresponding to the electronic signature σ The electronic signature σ is obtained from the information a 0 τ corresponding to the electronic signature σ (s3).

端末装置41は、平文Mと電子署名σを図示しない端末装置に送信する。   The terminal device 41 transmits the plaintext M and the electronic signature σ to a terminal device (not shown).

図示しない端末装置は、平文Mと電子署名σと公開鍵yとを用いて、電子署名σが真正であるか否かを判断することができる。   A terminal device (not shown) can determine whether or not the electronic signature σ is authentic by using the plaintext M, the electronic signature σ, and the public key y.

以下、RSA暗号を用いた場合の電子署名について説明する。なお、説明を分かり易くするために、この例では、jn=jk=nとする。 Hereinafter, an electronic signature when RSA encryption is used will be described. For easy understanding, in this example, j n = j k = n.

(RSA暗号を用いた場合の電子署名)
RSA暗号を用いた電子署名では、公開鍵y=(e,m)とする。
(Digital signature when RSA encryption is used)
For an electronic signature using RSA encryption, the public key y = (e, m).

平文Mに対応する情報τを平文Mそのもの(τ=M)とし、電子署名σを次式により生成する。
σ=Ma_0
The information τ corresponding to the plaintext M is the plaintext M itself (τ = M), and the electronic signature σ is generated by the following equation.
σ = M a_0

ここでは、群で定義された演算を乗法的に表現する。   Here, the operation defined by the group is expressed in a multiplicative manner.

端末装置41は、平文Mと計算依頼情報(値Mf(n)を求めるように記述された情報)とをN個の代理計算装置12−nに送信する。 The terminal device 41 transmits the plaintext M and calculation request information (information described so as to obtain the value M f (n) ) to the N proxy calculation devices 12-n.

代理計算装置12−nは、値Mf(n)を求め、端末装置41に送信する。 The proxy calculation device 12-n obtains the value M f (n) and transmits it to the terminal device 41.

端末装置41は、K個の値Mf(k)を用いて、電子署名σ=Ca_0を生成し、平文Mと電子署名σを図示しない端末装置に送信する。例えば、K=2、f(x)=a1x+a0の場合、a0=2f(1)+f(2)の関係が成り立つため、Mf(1)、Mf(2)を用いて、次式により電子署名σを生成することができる。
σ=Ma_0=M2f(1)+f(2)
The terminal device 41 generates an electronic signature σ = C a — 0 using K values M f (k) and transmits the plaintext M and the electronic signature σ to a terminal device (not shown). For example, when K = 2 and f (x) = a 1 x + a 0 , the relationship of a 0 = 2f (1) + f (2) holds, so M f (1) and M f (2) are By using the following expression, the electronic signature σ can be generated.
σ = M a_0 = M 2f (1) + f (2)

図示しない端末装置は、平文Mと電子署名σと公開鍵y=(m,e)とを用いて、次式が成り立つか否か検証し、成り立つ場合には電子署名σが真正であると判断する。
M=σe mod m
A terminal device (not shown) uses plaintext M, the electronic signature σ, and the public key y = (m, e) to verify whether or not the following equation holds, and if so, determines that the electronic signature σ is authentic: To do.
M = σ e mod m

<効果>
このような構成により、真の秘密情報a0を端末装置41に対して秘密にしたまま、端末装置41は平文Mに対する電子署名σを生成することができる。端末装置11では、真の秘密情報a0を知ることはできないため、真の秘密情報a0の消去失敗による情報漏洩を防止することができる。なお、本実施形態と第二実施形態とを組合せてもよい。例えば、鍵装置23がN個の代理計算装置12−nを管理し、鍵装置23を介して情報を送受信する。また、本実施形態と第三実施形態とを組合せてもよい。例えば、乱数rnによって平文との関係をかく乱させたかく乱情報τ(n)を平文に対応する情報τとして生成し、各処理を行う。
<Effect>
With such a configuration, the terminal device 41 can generate the electronic signature σ for the plaintext M while keeping the true secret information a 0 secret from the terminal device 41. Since the terminal device 11 cannot know the true secret information a 0 , it is possible to prevent information leakage due to a failure to delete the true secret information a 0 . In addition, you may combine this embodiment and 2nd embodiment. For example, the key device 23 manages N proxy computing devices 12-n and transmits / receives information via the key device 23. Moreover, you may combine this embodiment and 3rd embodiment. For example, the disturbance information τ (n) in which the relationship with the plaintext is disturbed by the random number r n is generated as information τ corresponding to the plaintext, and each process is performed.

<その他の変形例>
本発明は上記の実施形態及び変形例に限定されるものではない。例えば、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
<Other variations>
The present invention is not limited to the above-described embodiments and modifications. For example, the various processes described above are not only executed in time series according to the description, but may also be executed in parallel or individually as required by the processing capability of the apparatus that executes the processes. In addition, it can change suitably in the range which does not deviate from the meaning of this invention.

<プログラム及び記録媒体>
また、上記の実施形態及び変形例で説明した各装置における各種の処理機能をコンピュータによって実現してもよい。その場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記各装置における各種の処理機能がコンピュータ上で実現される。
<Program and recording medium>
In addition, various processing functions in each device described in the above embodiments and modifications may be realized by a computer. In that case, the processing contents of the functions that each device should have are described by a program. Then, by executing this program on a computer, various processing functions in each of the above devices are realized on the computer.

この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。   The program describing the processing contents can be recorded on a computer-readable recording medium. As the computer-readable recording medium, for example, any recording medium such as a magnetic recording device, an optical disk, a magneto-optical recording medium, and a semiconductor memory may be used.

また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD−ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させてもよい。   The program is distributed by selling, transferring, or lending a portable recording medium such as a DVD or CD-ROM in which the program is recorded. Further, the program may be distributed by storing the program in a storage device of the server computer and transferring the program from the server computer to another computer via a network.

このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶部に格納する。そして、処理の実行時、このコンピュータは、自己の記憶部に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実施形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよい。さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、プログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。   A computer that executes such a program first stores, for example, a program recorded on a portable recording medium or a program transferred from a server computer in its storage unit. When executing the process, this computer reads the program stored in its own storage unit and executes the process according to the read program. As another embodiment of this program, a computer may read a program directly from a portable recording medium and execute processing according to the program. Further, each time a program is transferred from the server computer to the computer, processing according to the received program may be executed sequentially. Also, the program is not transferred from the server computer to the computer, and the above-described processing is executed by a so-called ASP (Application Service Provider) type service that realizes the processing function only by the execution instruction and result acquisition. It is good. Note that the program includes information provided for processing by the electronic computer and equivalent to the program (data that is not a direct command to the computer but has a property that defines the processing of the computer).

また、コンピュータ上で所定のプログラムを実行させることにより、各装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。   In addition, although each device is configured by executing a predetermined program on a computer, at least a part of these processing contents may be realized by hardware.

Claims (10)

Nを2以上の整数とし、n=1,…,Nとし、端末装置と、N個の代理計算装置nとを含む復号システムであって、
Kを1以上N以下の整数とし、f(x)=a(K-1)x(K-1)+…+a1x+a0とし、a0=f(0)を真の秘密情報とし、jnをn毎に異なる1以上の整数とし、f(jn)を分散された秘密情報とし、
前記代理計算装置nは、
前記分散された秘密情報f(jn)が記憶される記憶部と、
暗号文に対応する情報τと前記分散された秘密情報f(jn)とを用いて値f(jn)τを求める計算部と、を含み、
前記端末装置は、
前記暗号文に対応する情報τから値f(jn)τを求めるように前記代理計算装置nに対して依頼する依頼部と、
k=1,2,…,K、jkをk毎に異なるj1,j2,…,jNの何れかの値とし、K個の値f(jk)τを用いて、復号文に対応する情報a0τを求める復号部と、を含む、
復号システム。
N is an integer of 2 or more, n = 1,..., N, a decoding system including a terminal device and N proxy computing devices n,
K is an integer between 1 and N, f (x) = a (K-1) x (K-1) + ... + a 1 x + a 0, and a 0 = f (0) is true secret information And j n is an integer of 1 or more different for each n , and f (j n ) is distributed secret information,
The proxy computing device n is
A storage unit for storing the distributed secret information f (j n );
A calculation unit for obtaining a value f (j n ) τ using information τ corresponding to ciphertext and the distributed secret information f (j n ), and
The terminal device
A request unit that requests the proxy computing device n to obtain a value f (j n ) τ from information τ corresponding to the ciphertext;
k = 1, 2,..., K, j k is a value of j 1 , j 2 ,..., j N that differs for each k, and K values f (j k ) τ are used to decrypt A decoding unit for obtaining information a 0 τ corresponding to
Decryption system.
請求項1記載の復号システムであって、
さらに、前記N個の代理計算装置nを管理する鍵装置を含み、
前記端末装置は、
乱数rnによって前記暗号文との関係をかく乱させたかく乱情報τ(n)を、前記暗号文に対応する情報τとして生成するかく乱情報生成部と、
前記鍵装置を介して前記代理計算装置nから値f(j)τ(n)を受け取り、前記乱数rnを用いて、前記値f(j)τ(n)から値f(j)Cを求める第二復号部と、をさらに含み、
前記依頼部は、前記鍵装置を介して、前記かく乱情報τ(n)から値f(jn)τ(n)を求めるように前記代理計算装置nに対して依頼し、
前記代理計算装置nの計算部は、
前記かく乱情報τ(n)と前記分散された秘密情報f(jn)とを用いて値f(jn)τ(n)を求める、
復号システム。
The decoding system according to claim 1, wherein
And a key device for managing the N proxy computing devices n.
The terminal device
A disturbance information generating unit that generates disturbance information τ (n) that disturbs the relationship with the ciphertext by a random number r n as information τ corresponding to the ciphertext;
Receiving the proxy computing device n from the value f (j n) τ (n ) through the key device, the random number with r n, the value f (j n) τ (n ) from the value f (j n A second decoding unit for obtaining C,
The request unit requests the proxy calculation device n to obtain a value f (j n ) τ (n) from the disturbance information τ (n) via the key device,
The calculation unit of the proxy calculation device n is:
A value f (j n ) τ (n) is obtained using the disturbance information τ (n) and the distributed secret information f (j n ).
Decryption system.
Nを2以上の整数とし、n=1,…,Nとし、端末装置と、N個の代理計算装置nとを含む署名システムであって、
Kを1以上N以下の整数とし、f(x)=a(K-1)x(K-1)+…+a1x+a0とし、a0=f(0)を真の秘密情報とし、jnをn毎に異なる1以上の整数とし、f(jn)を分散された秘密情報とし、
前記代理計算装置nは、
前記分散された秘密情報f(jn)が記憶される記憶部と、
平文に対応する情報τと前記分散された秘密情報f(jn)とを用いて値f(jn)τを求める計算部と、を含み、
前記端末装置は、
前記平文に対応する情報τから値f(jn)τを求めるように前記代理計算装置nに対して依頼する依頼部と、
k=1,2,…,K、jkをk毎に異なるj1,j2,…,jNの何れかの値とし、K個の値f(jk)τを用いて、電子署名に対応する情報a0τを求める署名生成部と、を含む、
署名システム。
N is an integer greater than or equal to 2, n = 1,..., N, a signature system including a terminal device and N proxy computing devices n,
K is an integer between 1 and N, f (x) = a (K-1) x (K-1) + ... + a 1 x + a 0, and a 0 = f (0) is true secret information And j n is an integer of 1 or more different for each n , and f (j n ) is distributed secret information,
The proxy computing device n is
A storage unit for storing the distributed secret information f (j n );
A calculation unit for obtaining a value f (j n ) τ using information τ corresponding to plaintext and the distributed secret information f (j n ), and
The terminal device
A request unit that requests the proxy computing device n to obtain a value f (j n ) τ from information τ corresponding to the plaintext;
k = 1, 2,..., K, j k is a different value of j 1 , j 2 ,..., j N for each k , and an electronic signature is obtained using K values f (j k ) τ And a signature generation unit for obtaining information a 0 τ corresponding to
Signature system.
Nを2以上の整数とし、n=1,…,Nとし、N個の代理計算装置nに代理計算を依頼する端末装置であって、
Kを1以上N以下の整数とし、f(x)=a(K-1)x(K-1)+…+a1x+a0とし、a0=f(0)を真の秘密情報とし、jnをn毎に異なる1以上の整数とし、f(jn)を分散された秘密情報とし、
前記暗号文に対応する情報τから値f(jn)τを求めるように前記代理計算装置nに対して依頼する依頼部と、
k=1,2,…,K、jkをk毎に異なるj1,j2,…,jNの何れかの値とし、K個の値f(jk)τを用いて、復号文に対応する情報a0τを求める復号部と、を含む、
端末装置。
N is an integer of 2 or more, n = 1,..., N, and a terminal device that requests proxy calculation to N proxy calculation devices n,
K is an integer between 1 and N, f (x) = a (K-1) x (K-1) + ... + a 1 x + a 0, and a 0 = f (0) is true secret information And j n is an integer of 1 or more different for each n , and f (j n ) is distributed secret information,
A request unit that requests the proxy computing device n to obtain a value f (j n ) τ from information τ corresponding to the ciphertext;
k = 1, 2,..., K, j k is a value of j 1 , j 2 ,..., j N that differs for each k, and K values f (j k ) τ are used to decrypt A decoding unit for obtaining information a 0 τ corresponding to
Terminal device.
請求項4記載の端末装置であって、
乱数rnによって前記暗号文との関係をかく乱させたかく乱情報τ(n)を、前記暗号文に対応する情報τとして生成するかく乱情報生成部と、
鍵装置を介して前記代理計算装置nから値f(j)τ(n)を受け取り、前記乱数rnを用いて、前記値f(j)τ(n)から値f(j)Cを求める第二復号部と、をさらに含み、
前記依頼部は、前記鍵装置を介して、前記かく乱情報τ(n)から値f(jn)τ(n)を求めるように前記代理計算装置nに対して依頼する、
端末装置。
The terminal device according to claim 4,
A disturbance information generating unit that generates disturbance information τ (n) that disturbs the relationship with the ciphertext by a random number r n as information τ corresponding to the ciphertext;
The value f (j n ) τ (n) is received from the proxy computing device n via the key device, and the value f (j n ) τ (n) to the value f (j n ) using the random number r n A second decryption unit for obtaining C,
The requesting unit requests the proxy computing device n to obtain the value f (j n ) τ (n) from the disturbance information τ (n) via the key device;
Terminal device.
Nを2以上の整数とし、n=1,…,Nとし、N個の代理計算装置nに代理計算を依頼する端末装置であって、
Kを1以上N以下の整数とし、f(x)=a(K-1)x(K-1)+…+a1x+a0とし、a0=f(0)を真の秘密情報とし、jnをn毎に異なる1以上の整数とし、f(jn)を分散された秘密情報とし、
前記平文に対応する情報τから値f(jn)τを求めるように前記代理計算装置nに対して依頼する依頼部と、
k=1,2,…,K、jkをk毎に異なるj1,j2,…,jNの何れかの値とし、K個の値f(jk)τを用いて、電子署名に対応する情報a0τを求める署名生成部と、を含む、
端末装置。
N is an integer of 2 or more, n = 1,..., N, and a terminal device that requests proxy calculation to N proxy calculation devices n,
K is an integer between 1 and N, f (x) = a (K-1) x (K-1) + ... + a 1 x + a 0, and a 0 = f (0) is true secret information And j n is an integer of 1 or more different for each n , and f (j n ) is distributed secret information,
A request unit that requests the proxy computing device n to obtain a value f (j n ) τ from information τ corresponding to the plaintext;
k = 1, 2,..., K, j k is a different value of j 1 , j 2 ,..., j N for each k , and an electronic signature is obtained using K values f (j k ) τ And a signature generation unit for obtaining information a 0 τ corresponding to
Terminal device.
Nを2以上の整数とし、n=1,…,Nとし、端末装置と、N個の代理計算装置nとを用いる復号方法であって、
Kを1以上N以下の整数とし、f(x)=a(K-1)x(K-1)+…+a1x+a0とし、a0=f(0)を真の秘密情報とし、jnをn毎に異なる1以上の整数とし、f(jn)を分散された秘密情報とし、
前記端末装置が、前記暗号文に対応する情報τから値f(jn)τを求めるように前記代理計算装置nに対して依頼する依頼ステップと、
前記代理計算装置nが、予め記憶されている前記分散された秘密情報f(jn)と、暗号文に対応する情報τとを用いて値f(jn)τを求める計算ステップと、
k=1,2,…,K、jkをk毎に異なるj1,j2,…,jNの何れかの値とし、前記端末装置が、K個の値f(jk)τを用いて、復号文に対応する情報a0τを求める復号ステップと、を含む、
復号方法。
N is an integer of 2 or more, n = 1,..., N, a decoding method using a terminal device and N proxy computing devices n,
K is an integer between 1 and N, f (x) = a (K-1) x (K-1) + ... + a 1 x + a 0, and a 0 = f (0) is true secret information And j n is an integer of 1 or more different for each n , and f (j n ) is distributed secret information,
A requesting step in which the terminal device requests the proxy computing device n to obtain a value f (j n ) τ from information τ corresponding to the ciphertext;
The proxy computing device n calculates a value f (j n ) τ using the distributed secret information f (j n ) stored in advance and information τ corresponding to the ciphertext;
k = 1, 2,..., K, j k is a value of j 1 , j 2 ,..., j N that is different for each k , and the terminal device sets K values f (j k ) τ Using a decryption step to obtain information a 0 τ corresponding to the decrypted text,
Decryption method.
請求項7記載の復号方法であって、
さらに、前記N個の代理計算装置nを管理する鍵装置を用い、
前記端末装置が、乱数rnによって前記暗号文との関係をかく乱させたかく乱情報τ(n)を、前記暗号文に対応する情報τとして生成するかく乱情報生成ステップと、
前記端末装置が、前記鍵装置を介して前記代理計算装置nから値f(j)τ(n)を受け取り、前記乱数rnを用いて、前記値f(j)τ(n)から値f(j)Cを求める第二復号ステップと、をさらに含み、
前記依頼ステップにおいて、前記鍵装置を介して、前記かく乱情報τ(n)から値f(jn)τ(n)を求めるように前記代理計算装置nに対して依頼し、
前記計算ステップにおいて、前記かく乱情報τ(n)と前記分散された秘密情報f(jn)とを用いて値f(jn)τ(n)を求める、
復号方法。
The decoding method according to claim 7, wherein
Furthermore, using a key device that manages the N proxy computing devices n,
A disturbance information generating step in which the terminal device generates disturbance information τ (n) that disturbs the relationship with the ciphertext by a random number r n as information τ corresponding to the ciphertext;
The terminal device receives said through said key device proxy computing device n from the value f (j n) τ (n ) , using the random number r n, from the value f (j n) τ (n ) A second decoding step for determining a value f (j n ) C;
In the requesting step, the proxy computing device n is requested to obtain the value f (j n ) τ (n) from the disturbance information τ (n) via the key device,
In the calculation step, a value f (j n ) τ (n) is obtained using the disturbance information τ (n) and the distributed secret information f (j n ).
Decryption method.
Nを2以上の整数とし、n=1,…,Nとし、端末装置と、N個の代理計算装置nとを含む署名方法であって、
Kを1以上N以下の整数とし、f(x)=a(K-1)x(K-1)+…+a1x+a0とし、a0=f(0)を真の秘密情報とし、jnをn毎に異なる1以上の整数とし、f(jn)を分散された秘密情報とし、
前記端末装置が、平文に対応する情報τから値f(jn)τを求めるように前記代理計算装置nに対して依頼する依頼ステップと、
前記代理計算装置nが、予め記憶されている前記分散された秘密情報f(jn)と、平文に対応する情報τとを用いて値f(jn)τを求める計算ステップと、
k=1,2,…,K、jkをk毎に異なるj1,j2,…,jNの何れかの値とし、前記端末装置が、K個の値f(jk)τを用いて、電子署名に対応する情報a0τを求める署名生成ステップと、を含む、
署名方法。
N is an integer of 2 or more, n = 1,..., N, a signature method including a terminal device and N proxy computing devices n,
K is an integer between 1 and N, f (x) = a (K-1) x (K-1) + ... + a 1 x + a 0, and a 0 = f (0) is true secret information And j n is an integer of 1 or more different for each n , and f (j n ) is distributed secret information,
A requesting step in which the terminal device requests the proxy computing device n to obtain a value f (j n ) τ from information τ corresponding to plaintext;
A calculation step in which the proxy calculation device n calculates a value f (j n ) τ using the distributed secret information f (j n ) stored in advance and information τ corresponding to plaintext;
k = 1, 2,..., K, j k is a value of j 1 , j 2 ,..., j N that is different for each k , and the terminal device sets K values f (j k ) τ Using a signature generation step to obtain information a 0 τ corresponding to the electronic signature,
Signature method.
請求項4から請求項6の何れかに記載された端末装置としてコンピュータを機能させるためのプログラム。   The program for functioning a computer as a terminal device in any one of Claims 4-6.
JP2013149152A 2013-07-18 2013-07-18 Decryption system, terminal device, signature system, method thereof, and program Expired - Fee Related JP5752751B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013149152A JP5752751B2 (en) 2013-07-18 2013-07-18 Decryption system, terminal device, signature system, method thereof, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013149152A JP5752751B2 (en) 2013-07-18 2013-07-18 Decryption system, terminal device, signature system, method thereof, and program

Publications (2)

Publication Number Publication Date
JP2015022098A true JP2015022098A (en) 2015-02-02
JP5752751B2 JP5752751B2 (en) 2015-07-22

Family

ID=52486613

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013149152A Expired - Fee Related JP5752751B2 (en) 2013-07-18 2013-07-18 Decryption system, terminal device, signature system, method thereof, and program

Country Status (1)

Country Link
JP (1) JP5752751B2 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003188872A (en) * 2001-10-03 2003-07-04 Internatl Business Mach Corp <Ibm> List matching method, network system, and server and information terminal of the same
JP2004015241A (en) * 2002-06-04 2004-01-15 Internatl Business Mach Corp <Ibm> Encryption communication system, terminal apparatus and server therefor, and decoding method
JP2012098570A (en) * 2010-11-04 2012-05-24 Nippon Telegr & Teleph Corp <Ntt> Proxy calculation system, terminal device, proxy calculation device, proxy calculation method, and program
WO2013050613A1 (en) * 2011-10-06 2013-04-11 The Provost, Fellows, Foundation Scholars, And The Other Members Of Board, Of The College Of The Holy And Undivided Trinity Of Queen Elizabeth, Near Dublin System and apparatus for securely storing data

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003188872A (en) * 2001-10-03 2003-07-04 Internatl Business Mach Corp <Ibm> List matching method, network system, and server and information terminal of the same
JP2004015241A (en) * 2002-06-04 2004-01-15 Internatl Business Mach Corp <Ibm> Encryption communication system, terminal apparatus and server therefor, and decoding method
JP2012098570A (en) * 2010-11-04 2012-05-24 Nippon Telegr & Teleph Corp <Ntt> Proxy calculation system, terminal device, proxy calculation device, proxy calculation method, and program
WO2013050613A1 (en) * 2011-10-06 2013-04-11 The Provost, Fellows, Foundation Scholars, And The Other Members Of Board, Of The College Of The Holy And Undivided Trinity Of Queen Elizabeth, Near Dublin System and apparatus for securely storing data

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
小林 鉄太郎、山本 剛、吉田 麗生: ""鍵保管システムの冗長化に関する研究"", 2013年 暗号と情報セキュリティシンポジウム SCIS2013 [CD−ROM], vol. 2F2−2, JPN6015018283, 22 January 2013 (2013-01-22), JP, pages 1 - 3, ISSN: 0003067997 *
山本 剛、小林 鉄太郎、山本 具英、冨士 仁、高橋 克巳: ""暗号技術はクラウドで情報を保護できるか"", 2012年 暗号と情報セキュリティシンポジウム, vol. 3D1−6, JPN6015018284, 30 January 2012 (2012-01-30), JP, pages 1 - 5, ISSN: 0003067998 *
高橋 慧、岩村 恵市: ""クラウドコンピューティングに適した秘密分散法"", 電子情報通信学会技術研究報告, vol. 112, no. 226, JPN6015018285, 27 September 2012 (2012-09-27), JP, pages 11 - 16, ISSN: 0003067999 *

Also Published As

Publication number Publication date
JP5752751B2 (en) 2015-07-22

Similar Documents

Publication Publication Date Title
US10361841B2 (en) Proxy computing system, computing apparatus, capability providing apparatus, proxy computing method, capability providing method, program, and recording medium
US8429408B2 (en) Masking the output of random number generators in key generation protocols
Hao et al. A multiple-replica remote data possession checking protocol with public verifiability
Shao et al. Fine-grained data sharing in cloud computing for mobile devices
Kolhar et al. Cloud data auditing techniques with a focus on privacy and security
US9037623B2 (en) Proxy calculation system, proxy calculation method, proxy calculation requesting apparatus, and proxy calculation program and recording medium therefor
JPWO2014112551A1 (en) Split storage device, secret key split storage method
Hrestak et al. Homomorphic encryption in the cloud
CN111404952B (en) Transformer substation data encryption transmission method and device, computer equipment and storage medium
JP2016158189A (en) Change direction with key control system and change direction with key control method
Kaaniche et al. A novel zero-knowledge scheme for proof of data possession in cloud storage applications
Huang et al. Block-Level Message-Locked Encryption with Polynomial Commitment for IoT Data.
JP6294882B2 (en) Key storage device, key storage method, and program thereof
EP2395698B1 (en) Implicit certificate generation in the case of weak pseudo-random number generators
JP6840685B2 (en) Data sharing method, data sharing system, communication terminal, data sharing server, program
JP2013217970A (en) Hierarchical type inner product cipher system based on lattice problem, hierarchical type inner product cipher method, device based on lattice problem
Zheng et al. Improved anonymous proxy re-encryption with CCA security
JP5752751B2 (en) Decryption system, terminal device, signature system, method thereof, and program
JP5850888B2 (en) Information storage system, information storage device, method thereof, and program
Zhou et al. Secure fine-grained access control of mobile user data through untrusted cloud
US20210226791A1 (en) Encryption system, encryption apparatus, decryption apparatus, encryption method, decryption method, and program
Lin Cloud data storage with group collaboration supports
Msilini et al. Homomorphic Cryptosystems for Securing Data in Public Cloud Computing
Mohanty Secure Data Storage on the Cloud using Homomorphic Encryption
JP5860420B2 (en) Safety evaluation device and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141029

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150424

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: 20150512

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150520

R150 Certificate of patent or registration of utility model

Ref document number: 5752751

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees