WO2014112548A1 - 秘匿計算システム、演算装置、秘匿計算方法、およびプログラム - Google Patents
秘匿計算システム、演算装置、秘匿計算方法、およびプログラム Download PDFInfo
- Publication number
- WO2014112548A1 WO2014112548A1 PCT/JP2014/050647 JP2014050647W WO2014112548A1 WO 2014112548 A1 WO2014112548 A1 WO 2014112548A1 JP 2014050647 W JP2014050647 W JP 2014050647W WO 2014112548 A1 WO2014112548 A1 WO 2014112548A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- value
- variance
- checksum
- randomized
- secret
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/582—Pseudo-random number generators
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/46—Secure multiparty computation, e.g. millionaire problem
Definitions
- the present invention relates to a secret calculation technique, and more particularly to a technique for performing calculation while keeping data secret and guaranteeing the correctness of a calculation result.
- Non-Patent Document 1 This is a protocol for deriving the result of arithmetic / logical operation by cooperative calculation of 3 parties (3 calculation subjects) without restoring the distributed input value.
- data is handled as a natural number less than a predetermined prime number p.
- a a 0 + a 1 + a 2 mod p
- X is, if a a 2 received from a 2 and Z received from Y agreed, to restore a by calculating a 0 + a 1 + a 2.
- Y if a 0 received from X matches a 0 received from Z, a 0 + a 1 + a 2 is calculated to restore a.
- Z if a 1 received from X matches a 1 received from Y, a 0 + a 1 + a 2 is calculated to restore a.
- (2) c a + secure computing data b for b is also in the same manner as data a, the X is (b 0, b 1), the Y is (b 1, b 2), the Z (b 2, Let b 0 ) be distributed and concealed.
- c a * b secret calculation (multiplication without fraud detection)
- the conventional secret calculation technique that guarantees the correctness of the calculation result has a problem that the security parameter cannot be selected.
- An object of the present invention is to provide a secret calculation technique that can arbitrarily set security parameters and can reduce the probability of success of falsification.
- the secret calculation system of the present invention includes at least three arithmetic devices.
- M, m, i are integers of 1 or more, 0 ⁇ m ⁇ M, ⁇ is the number of randomized variance values included in the checksum C, and 0 ⁇ i ⁇ .
- the secret calculation can be performed with a lower probability of falsification success than before. Also, the validity proof is more efficient than before, and tampering can be detected at high speed.
- the figure which illustrates the function structure of a secret calculation system The figure which illustrates the function structure of a calculating device. The figure which illustrates the function structure of a secret calculation part. The figure which illustrates the processing flow of a secret calculation method.
- R is a ring.
- A is a bonded multi-ring on R.
- a bond multiple ring is a bond ring and has a structure of some kind of linear space on the body so as to be compatible therewith. It can be said that the combined multi-ring is that the value handled in the vector space is not a field but a ring.
- X i (subscript).
- [X] is a secret sentence with the value x ⁇ R.
- the secret text is a value obtained by concealing the value by means such as encryption or secret sharing.
- [X] is a set in which each element of the set X is concealed.
- X is the number of elements in set X.
- ⁇ X> is the randomized variance value with value x ⁇ R.
- the randomized variance value is a set of variance value [x] and variance value [xr] of integrated value xr of value x and random number r ⁇ A. Therefore, the randomized variance value can be defined as the following formula (1).
- the 0th component ([x] in equation (1)) of the randomized dispersion value is also called the R component, and the first component ([xr] in equation (1)) is also called the A component.
- Rr be the space of the randomized variance with the random number r ⁇ A as a parameter.
- ⁇ safety> In the technical field of cryptography, users / participants and attackers are modeled to prove the security of the protocol. As such a model, a malicious model or a semi-honest model is used. In the malicious model, an attacker performs arbitrary illegal actions. The semi-honest model is correct for the attacker to handle and tries to steal data in that category. Therefore, it can be evaluated that the protocol whose security is proved in the malicious model is more secure.
- Non-Patent Document 1 The conventional secret calculation technique described in Non-Patent Document 1 is safe in the semi-honest model, but the malicious model guarantees the correctness of the calculation result, but the confidentiality is not guaranteed.
- the present invention realizes secure secret calculation in the malicious model having stronger security by using secure secret calculation in the semi-honest model.
- an operation on the combined multiple ring A can be processed with upward compatibility with the element of the ring R with the same efficiency as the operation on the ring R.
- an extension field that is an algebraic structure belonging to a coupled multiple ring has a uniform distribution of multiplication results with random numbers, and is an ideal algebraic structure from the viewpoint of safety.
- the secret calculation system 1 includes N (N ⁇ 3) arithmetic devices 2 1 ,..., 2 N.
- N computing devices 2 1 ,..., 2 N are connected to the network 9 respectively.
- the network 9 only needs to be configured so that the connected devices can communicate with each other.
- the network 9 can be configured by the Internet, a LAN (Local Area Network), a WAN (Wide Area Network), or the like.
- Each device does not necessarily need to be able to communicate online via a network.
- the arithmetic device 2 n includes a control unit 101, a memory 102, an input unit 11, a random number generation unit 12, a randomization unit 13, a secret calculation unit 14, a validity proof unit 15, and an output unit 16.
- the arithmetic device 2 n is a special device configured by reading a special program into a known or dedicated computer having, for example, a CPU (Central Processing Unit), a RAM (Random Access Memory), and the like.
- the arithmetic device 2 n executes each process under the control of the control unit 101. Data input to the arithmetic unit 2 n and data obtained in each process are stored in the memory 102, and the data stored in the memory 102 is read out as necessary and used for other processes.
- the secret calculation unit 14 includes an addition constant multiplication unit 141, a multiplication unit 142, a product-sum unit 143, and a random replacement unit 144.
- the secret calculation unit 14 controls each component unit to execute a desired calculation.
- At least one dispersion value [a 0 ],..., [A M ⁇ 1 ] (M ⁇ 1) is input to the input unit 11 included in the arithmetic device 2 n (1 ⁇ n ⁇ N) (step S11).
- the input variance values [a 0 ],..., [A M ⁇ 1 ] are output to the randomizing unit 13.
- the distributed value [a m ] (0 ⁇ m ⁇ M) is a distributed value obtained by secretly distributing the value a m .
- the secret sharing method needs to be a secret sharing method that can perform addition, multiplication, product-sum, and random replacement operations on the secret calculation. Any secret sharing method that can perform these operations is possible. It may be. Refer to Non-Patent Document 1 for details on applicable secret sharing methods.
- the number M of the input variance values [a 0 ],..., [A M ⁇ 1 ] is appropriately determined depending on the contents of the secret calculation performed by the secret calculation unit 14.
- the random number generation unit 12 generates a distributed value [r] of the random number r ⁇ A selected from the combined multiple ring A (step S12).
- the generated variance value [r] is output to the randomizing unit 13.
- the distribution value [r] must be generated in a state in which the random number r is concealed from any of the arithmetic devices 2 1 ,..., 2 N.
- the arithmetic devices 2 1 ,..., 2 N constituting the secret calculation system 1 can cooperate to generate the distributed value [r] of the random number r.
- each of the computing devices 2 n generates a random number r n .
- the variance [r n ] of the random number r n is generated by the concealment method described in Non-Patent Document 1.
- any of the arithmetic devices 2 1 ,..., 2 N can obtain the variance [r] of the random number r without knowing the random number r.
- the distributed value [r] of the random number r can be generated using replicated secret sharing. If the replica secret sharing is used, the distributed value [r] of the random number r can be generated without communication between the arithmetic devices 2 1 ,..., 2 N.
- replica secret sharing For details on replicating secret sharing, see “R. Cramer, I. Damgard, and Y. Ishai,“ Share conversion, pseudorandom secret-sharing and applications to secure computation ”, TCC, Vol. 3378 of Lecture Notes in Computer Science, pp. 342-362, Springer, 2005. (Reference 1).
- Randomizer 13 variance [a 0], ..., generate [a M-1] and variance values using the [r], randomized variance ⁇ a 0>, ..., ⁇ a M-1 > (Step S13). Randomized variance ⁇ a 0 generated>, ..., ⁇ a M-1> is outputted to the secret computing unit 14.
- a randomized variance ⁇ a 0>, ..., ⁇ a M-1 respect> is function values concealed by performing the function F containing at least one security operation [F ([a [ 0 ], ..., [a M-1 ])] are obtained (step S14).
- ⁇ is the number of randomized variance values included in the checksum C.
- the value of ⁇ is added every time the checksum C is updated.
- the obtained function value [F ([a 0 ],..., [A M ⁇ 1 ])] and the checksum C are output to the validity proving unit 15.
- the secret calculation unit 14 When performing the addition / constant multiplication secret calculation in the function F, the secret calculation unit 14 performs the secret calculation by the addition constant multiplication unit 141. Since the randomized variance value has additive homomorphism, the addition / constant multiplication secret computation can be executed without communication with the other arithmetic unit 2 n in the same manner as the addition to the variance value on the ring R. .
- randomized variance ⁇ a> and ⁇ b> each randomized variance ⁇ a 0>, ..., of each component contained in one or concealment calculator 14 of ⁇ a M-1>
- the randomized variance value ⁇ a + b> is calculated by the following equation (2), assuming that the output is the randomized variance value, ⁇ is an arbitrary constant, and the calculated randomized variance value ⁇ a + b>
- the R component [ ⁇ a + b] is included in the function value [F ([a 0 ], ..., [a M-1 ])]
- the randomized variance value ⁇ a + b> Include in checksum C. Since the addition / constant multiplication secret computation can be realized by computation inside the computation device, the checksum C is not updated by the randomized variance value before computation.
- the secret calculation unit 14 When performing the secret calculation of multiplication in the function F, the secret calculation unit 14 performs the secret calculation by the multiplication unit 142. Multiplication secret calculation is realized by ring R multiplication and scalar multiplication.
- randomized variance ⁇ a> and ⁇ b> each randomized variance ⁇ a 0>, ..., of each component contained in one or concealment calculator 14 of ⁇ a M-1>
- the checksum C is updated by the following formula (4)
- the randomized variance value ⁇ ab> is calculated by the formula (5)
- the randomized variance value ⁇ ab> of the calculation result R component [ab] is included in the function value [F ([a 0 ], ..., [a M-1 ])]
- the randomized variance value ⁇ ab> is calculated by the checksum C Include in
- Ring R multiplication is described in “R. Gennaro, MO Rabin, and T. Rabin,“ Simplied VSS and fast-track multiparty computations with applications to threshold cryptography ”, PODC, pp. 101-111, ACM, 1998. 2) ”and“ I. Damgard and JB Nielsen, “Scalable and unconditionally secure multiparty computation”, CRYPTO, Vol. 4622 of Lecture Notes in Computer Science, pp. 572-590, Springer, 2007. (reference 3). The described method can be applied.
- the method described in Reference 2 performs a round of communication O (n 2 ), whereas Reference 3
- the method described in Reference 2 since the communication amount O (n) is performed three rounds, the method described in Reference 2 is superior in terms of the communication amount.
- the method described in Reference 2 has a communication amount of n (n-1), and the method described in Reference 3 has a communication amount of n (n-1) / k + 6 (n- When n is small, the method described in Reference 2 may be more efficient.
- Multiplication on the combined multiple ring A can be performed without any problem because A is a ring if replicating secret sharing is used. If A is a body, there is no particular problem even if Shamir secret sharing is used. When Shamir secret sharing is used and A is not a body, it is not obvious, but when A is simply R q , multiplication on R may be performed for each component.
- Scalar multiplication is an operation that calculates [ab] ⁇ [A] from [a] ⁇ [R] and [b] ⁇ [A]. If A is represented as a q-dimensional vector of R 'relative to R's homomorphism R', scalar multiplication is easy.
- h Since h is a local calculation, the communication traffic is q times R 'multiplication (or one multiplication A), and the number of rounds is 1.
- A is an expanded body is the simplest case that satisfies this condition.
- the secret calculation unit 14 performs the secret calculation by the product-sum unit 143.
- the secret calculation of the product sum is realized by the ring R upper product sum and the scalar product sum.
- L is an integer between 2 and M
- randomized dispersion values ⁇ 0 >, ..., ⁇ L-1 >, ⁇ 0 >, ..., ⁇ L-1 > are randomized respectively.
- variance ⁇ a 0>, ..., checksum C as a randomized variance value output of each component either or included in the secret computing unit 14 of ⁇ a M-1>
- the following equation (7) update the calculates the randomized variance ⁇ i ⁇ L ⁇ i ⁇ i> by equation (8)
- Ring R upper product sum can be realized using ring R upper multiplication.
- the traffic volume of the sum of products on ring R is the same as the traffic volume for one multiplication on ring R.
- Scalar product-sum can be realized using scalar multiplication.
- the traffic of scalar product-sum is the same as the traffic for one scalar multiplication.
- the reason why the [ ⁇ i r] that is the A component is not used for the randomized variance value ⁇ i > is to avoid a change in the order of the random number r for the same reason as the multiplication unit 142.
- the secret calculation unit 14 when performing random replacement secret calculation, performs the secret calculation by the random replacement unit 144.
- the random replacement for the randomized dispersion value performs the same random replacement for the R component and the A component of the randomized dispersion value.
- the two or more M an integer of L, ⁇ 0>, ... , randomized variance ⁇ L-1> respectively ⁇ a 0>, ..., either ⁇ a M-1>
- the checksum C is updated by the following equation (10) as a randomized variance value output by each component included in the secret calculation unit 14, and ⁇ is mapped to a set of integers not less than 0 and less than L.
- the correctness proving unit 15 verifies the checksum C using the distributed value [r], thereby proving the correctness of the function value [F ([a 0 ],..., [A M-1 ])]. (Step S15). As a result of verifying the checksum C, if it is determined that there is no alteration, the function value [F ([a 0 ],..., [A M-1 ])] is output to the output unit 16. When it is determined that there has been falsification, information indicating that fact (for example, “ ⁇ ”) is output to the output unit 16.
- the checksum C is verified by calculating the variance [ ⁇ ] obtained by multiplying the sum of variances [f 0 ], ..., [f ⁇ -1 ] included in the checksum C by the variance [r], and the checksum C This is performed based on the dispersion value [ ⁇ ] which is the sum of the dispersion values [f 0 r],..., [F ⁇ 1 r] included.
- the validity proving unit 15 verifies the checksum C as follows, for example. First, mu random numbers [rho 0 on associative algebra A, ..., dispersion value of ⁇ ⁇ -1 [ ⁇ 0] , ..., and generates a [ ⁇ ⁇ -1]. Variance [ ⁇ 0], ..., [ ⁇ ⁇ -1] random number [rho 0 from any of the computing device 2 n generation of, ..., ⁇ ⁇ -1 must be performed in a state of being concealed.
- the variance values [ ⁇ 0 ],..., [ ⁇ ⁇ 1 ] may be generated by the same method as the random number generator 12.
- the dispersion value [ ⁇ ] is obtained by the following equation (14).
- the restoration method may be a secret sharing type restoration operation corresponding to each shared value, but at this time, the malicious model guarantees the correctness.
- all the arithmetic devices 2 1 ,..., 2 N mutually transmit the dispersion value [ ⁇ ] to the other arithmetic devices, and confirm the consistency of the dispersion values to guarantee complete correctness.
- the total number of arithmetic unit 2 n n, the number of arithmetic unit 2 n required to restore as k, the total traffic is n (n-1).
- the total communication amount can be set to n (k ⁇ 1) when the data amount of the variance value is large.
- the attacker must manipulate the [f i ] and [f i r] by matching the traps so that the value of this xr-y becomes 0, but this is because the attacker does not know the random number r ⁇ A.
- the probability of satisfying is 1 /
- the random numbers ⁇ 0 ,..., ⁇ ⁇ 1 are multiplied, the overall alteration success probability is at most 2 /
- the secret calculation unit 14 does not necessarily include all of the addition constant multiplication unit 141, the multiplication unit 142, the product-sum unit 143, and the random replacement unit 144, and each configuration corresponding to the calculation included in the function F to be executed. It is sufficient that the part is included without shortage. For example, if the function F calculates only constant multiplication and multiplication, the secret calculation unit 14 may include only the addition constant multiplication unit 141 and the multiplication unit 142.
- [Modification] Z can be an integer ring, p can be a prime number, and ring R and bond multiple ring A can be Z / pZ. With this configuration, the success probability of alteration can be about 2 / p. In addition, it is possible to reduce the amount of data communicated between the computing devices in the secret computation.
- Z can be an integer ring
- p can be a prime number
- q can be an integer greater than or equal to 1
- ring R can be Z / pZ
- bond multiple ring A can be a q-order extension of ring R.
- Z can be an integer ring
- p can be a prime number
- n and m can be integers
- ring R can be Z / p n Z
- bond multiple ring A can be Z / p m Z.
- the success probability of alteration can be about 2 / p q .
- the program describing the processing contents can be recorded on a computer-readable recording medium.
- a computer-readable recording medium any recording medium such as a magnetic recording device, an optical disk, a magneto-optical recording medium, and a semiconductor memory may be used.
- this 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. Furthermore, 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.
- a computer that executes such a program first stores a program recorded on a portable recording medium or a program transferred from a server computer in its own storage device.
- the computer reads a program stored in its own recording medium and executes a process according to the read program.
- the computer may directly read the program from a portable recording medium and execute processing according to the program, and the program is transferred from the server computer to the computer.
- the processing according to the received program may be executed sequentially.
- 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 a processing function only by an execution instruction and result acquisition. It is good.
- the program in this embodiment includes information that is used for processing by an electronic computer and that conforms to the program (data that is not a direct command to the computer but has a property that defines the processing of the computer).
- the present apparatus is configured by executing a predetermined program on a computer.
- a predetermined program on a computer.
- at least a part of these processing contents may be realized by hardware.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Physics (AREA)
- Computational Mathematics (AREA)
- Software Systems (AREA)
- Storage Device Security (AREA)
- Complex Calculations (AREA)
Abstract
Description
実際には乱数a1,a2を生成し、a0=a-a1-a2とする。そして3パーティX、Y、Zに対して、Xに(a0,a1)、Yに(a1,a2)、Zに(a2,a0)を送信する。すると、a1,a2が乱数であるため、X、Y、Zのいずれのパーティもaの情報を持たないが、いずれか2パーティが集まればaを復元することができる。
(1) X、Y、Zに分散された秘匿データaの復元
Xは、Yにa0を送信し、Zにa1を送信する。Yは、Zにa1を送信し、Xにa2を送信する。Zは、Xにa2を送信し、Yにa0を送信する。
(2) c=a+bの秘密計算
データbもデータaと同様な方法により、Xに(b0,b1)が、Yに(b1,b2)が、Zに(b2,b0)が、それぞれ分散されて秘匿されているとする。
(3) c=a+αの秘密計算(αは既知の定数)
Xは、(c0,c1)=(a0+α,a1)を計算して記録し、Zは、(c2,c0)=(a2,a0+α)を計算して記録する。Yの処理は無い。
(4) c=a*αの秘密計算
Xは、(c0,c1)=(a0*α,a1*α)を計算して記録し、Yは、(c1,c2)=(a1*α,a2*α)を計算して記録し、Zは、(c2,c0)=(a2*α,a0*α)を計算して記録する。
(5) c=a*bの秘密計算(不正検知なし乗算)
まず、Xは、乱数r1,r2,c0を生成し、c1=(a0+a1)(b0+b1)-r1-r2-c0を計算し、Yに(r1,c1)を、Zに(r2,c0)を送信する。
(6) c=a*bの秘密計算(不正検知付き乗算)
上記(5)の方法によりc=a*bの乗算を行った上で、X、Y、Zのそれぞれに対して以下の処理を行う。なお、以下の処理においてPはX、Y、Zのそれぞれを意味し、PがXである場合は、P-はZ、P+はYを意味し、PがYである場合は、P-はX、P+はZを意味し、PがZである場合は、P-はY、P+はXを意味する。
<表記方法>
この発明で扱う値は、特に断りのない限りR上の値とする。Rは環である。AはR上結合多元環である。結合多元環とは、結合的な環であって、かつそれと両立するような、何らかの体上の線型空間の構造を備えたものである。結合多元環は、ベクトル空間で扱う値が体ではなく環でよくなったものと言える。
<安全性>
暗号理論の技術分野ではプロトコルの安全性を証明するために利用者・参加者や攻撃者をモデル化する。このようなモデルとして、maliciousモデルやsemi-honestモデルが用いられている。maliciousモデルは攻撃者が任意の不正な動作を行う。semi-honestモデルは攻撃者の行う処理は正しく、その範疇でデータを盗み見ようとする。したがって、maliciousモデルにおいて安全性が証明されたプロトコルの方がより安全性が高いと評価できる。
従来の秘匿計算技術では、環R上の演算を4系統で行うことにより正当性の証明を行なっていた。この発明では、環R上の演算と、結合多元環A上の演算との2系統で行うことで正当性の証明を行う。
[実施形態]
以下、この発明の実施の形態について詳細に説明する。なお、図面中において同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。
<構成>
図1を参照して、この実施形態の秘匿計算システム1の構成例を説明する。秘匿計算システム1は、N(N≧3)台の演算装置21,…,2Nを含む。N台の演算装置21,…,2Nはそれぞれネットワーク9に接続される。ネットワーク9は、接続される各装置が相互に通信可能なように構成されていればよく、例えばインターネットやLAN(Local Area Network)、WAN(Wide Area Network)などで構成することができる。なお、各装置は必ずしもネットワークを介してオンラインで通信可能である必要はない。例えば、演算装置21,…,2Nへ入力する情報を磁気テープやUSBメモリなどの可搬型記録媒体に記憶し、その可搬型記録媒体から演算装置21,…,2Nへオフラインで入力するように構成してもよい。
図4を参照して、この実施形態の秘匿計算システム1の動作例について手続きの順に従って詳細に説明する。
Zを整数環、pを素数として、環Rと結合多元環AとをZ/pZとすることができる。このように構成することで、改ざん成功確率は約2/pとすることができる。また、秘匿演算において演算装置同士で通信するデータ量を少なくすることができる。
この発明は上述の実施形態に限定されるものではなく、この発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。上記実施例において説明した各種の処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。
Claims (8)
- 少なくとも3台の演算装置を含む秘匿計算システムであって、
M,m,iは1以上の整数であり、0≦m<Mであり、μはチェックサムCに含まれるランダム化分散値の数であり、0≦i<μであり、
前記演算装置は、
乱数rを秘密分散した分散値[r]を求める乱数生成部と、
値a0,…,aM-1を秘密分散した分散値[a0],…,[aM-1]と前記分散値[r]とを用いて、値a0,…,aM-1と乱数rの積算値a0r,…,aM-1rの分散値[a0r],…,[aM-1r]を計算し、前記分散値[a0],…,[aM-1]と前記分散値[a0r],…,[aM-1r]とを組としたランダム化分散値<a0>,…,<aM-1>を生成するランダム化部と、
秘匿演算の内容に応じて演算対象および演算結果のランダム化分散値<fi>をチェックサムC:=<f0>,…,<fμ-1>へ含めながら少なくとも1つの秘匿演算を含む関数Fを実行して秘匿された関数値[F([a0],…,[aM-1])]を求める秘匿計算部と、
前記チェックサムCに含まれる分散値[fi]の総和に前記分散値[r]を乗じた分散値[φ]と前記チェックサムCに含まれる分散値[fir]の総和である分散値[ψ]とに基づいて前記関数値[F([a],…,[aM-1])]の正当性を検証する正当性証明部と、
を含む秘匿計算システム。 - 請求項1に記載の秘匿計算システムであって、
前記秘匿計算部は、
<a>:=([a],[ar]),<b>:=([b],[br])をそれぞれ前記ランダム化分散値<a0>,…,<aM-1>のいずれかとし、γを定数として、ランダム化分散値<γa+b>:=(γ[a]+[b],γ[ar]+[br])を計算し、前記ランダム化分散値<γa+b>を前記チェックサムCに含める加算定数倍部、
を含む秘匿計算システム。 - 請求項1に記載の秘匿計算システムであって、
前記秘匿計算部は、
<a>:=([a],[ar]),<b>:=([b],[br])をそれぞれ前記ランダム化分散値<a0>,…,<aM-1>のいずれかとして、<a>,<b>を前記チェックサムCへ含め、ランダム化分散値<ab>:=([a][b],[a][br])を計算し、前記ランダム化分散値<ab>を前記チェックサムCに含める乗算部、
を含む秘匿計算システム。 - 請求項1に記載の秘匿計算システムであって、
前記秘匿計算部は、
Lを2以上M以下の整数とし、<α0>:=([α0],[α0r]),…,<αL-1>:=([αL-1],[αL-1r]),<β0>:=([β0],[β0r]),…,<βL-1>:=([βL-1],[βL-1r])をそれぞれ前記ランダム化分散値<a0>,…,<aM-1>のいずれかとして、<α0>,…,<αL-1>,<β0>,…,<βL-1>を前記チェックサムCへ含め、ランダム化分散値<Σi<Lαiβi>:=(Σi<L[αi][βi],Σi<L[αi][βir])を計算し、前記ランダム化分散値<Σi<Lαiβi>を前記チェックサムCに含める積和部、
を含む秘匿計算システム。 - 請求項1に記載の秘匿計算システムであって、
前記秘匿計算部は、
Lを2以上M以下の整数とし、<α0>:=([α0],[α0r]),…,<αL-1>:=([αL-1],[αL-1r])をそれぞれ前記ランダム化分散値<a0>,…,<aM-1>のいずれかとし、πを0以上L未満の整数の集合への写像として、<α0>,…,<αL-1>を前記チェックサムCへ含め、ランダム化分散値<απ(i)>:=([απ(i)],[απ(i)r])を計算し、前記ランダム化分散値<απ(i)>を前記チェックサムCに含めるランダム置換部、
を含む秘匿計算システム。 - M,m,iは1以上の整数であり、0≦m<Mであり、μはチェックサムCに含まれる要素の数であり、0≦i<μであり、
乱数rを秘密分散した分散値[r]を求める乱数生成部と、
値a0,…,aM-1を秘密分散した分散値[a0],…,[aM-1]と前記分散値[r]とを用いて、値a0,…,aM-1と乱数rの積算値a0r,…,aM-1rの分散値[a0r],…,[aM-1r]を計算し、前記分散値[a0],…,[aM-1]と前記分散値[a0r],…,[aM-1r]を組としたランダム化分散値<a0>,…,<aM-1>を生成するランダム化部と、
秘匿演算の内容に応じて演算対象および演算結果のランダム化分散値<fi>をチェックサムC:=<f0>,…,<fμ-1>へ含めながら少なくとも1つの秘匿演算を含む関数Fを実行して秘匿された関数値[F([a0],…,[aM-1])]を求める秘匿計算部と、
前記チェックサムCに含まれる分散値[fi]の総和に前記分散値[r]を乗じた分散値[φ]と前記チェックサムCに含まれる分散値[fir]の総和である分散値[ψ]とに基づいて前記関数値[F([a],…,[aM-1])]の正当性を検証する正当性証明部と、
を含む演算装置。 - M,m,iは1以上の整数であり、0≦m<Mであり、μはチェックサムCに含まれる要素の数であり、0≦i<μであり、
乱数生成部が、乱数rを秘密分散した分散値[r]を求める乱数生成ステップと、
ランダム化部が、値a0,…,aM-1を秘密分散した分散値[a0],…,[aM-1]と前記分散値[r]とを用いて、値a0,…,aM-1と乱数rの積算値a0r,…,aM-1rの分散値[a0r],…,[aM-1r]を計算し、前記分散値[a0],…,[aM-1]と前記分散値[a0r],…,[aM-1r]を組としたランダム化分散値<a0>,…,<aM-1>を生成するランダム化ステップと、
秘匿計算部が、秘匿演算の内容に応じて演算対象および演算結果のランダム化分散値<fi>をチェックサムC:=<f0>,…,<fμ-1>へ含めながら少なくとも1つの秘匿演算を含む関数Fを実行して秘匿された関数値[F([a0],…,[aM-1])]を求める秘匿計算ステップと、
正当性証明部が、前記チェックサムCに含まれる分散値[fi]の総和に前記分散値[r]を乗じた分散値[φ]と前記チェックサムCに含まれる分散値[fir]の総和である分散値[ψ]とに基づいて前記関数値[F([a],…,[aM-1])]の正当性を検証する正当性証明ステップと、
を含む秘匿計算方法。 - 請求項6に記載の演算装置としてコンピュータを機能させるためのプログラム。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP14740760.5A EP2947642B1 (en) | 2013-01-17 | 2014-01-16 | Secret computation system, arithmetic unit, secret computation method and program |
US14/758,373 US9860058B2 (en) | 2013-01-17 | 2014-01-16 | Secret computation system, arithmetic unit, secret computation method and program |
JP2014557490A JP6016948B2 (ja) | 2013-01-17 | 2014-01-16 | 秘匿計算システム、演算装置、秘匿計算方法、およびプログラム |
CN201480005233.9A CN105027180B (zh) | 2013-01-17 | 2014-01-16 | 保密计算系统、运算装置、以及保密计算方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013006690 | 2013-01-17 | ||
JP2013-006690 | 2013-01-17 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2014112548A1 true WO2014112548A1 (ja) | 2014-07-24 |
Family
ID=51209637
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2014/050647 WO2014112548A1 (ja) | 2013-01-17 | 2014-01-16 | 秘匿計算システム、演算装置、秘匿計算方法、およびプログラム |
Country Status (5)
Country | Link |
---|---|
US (1) | US9860058B2 (ja) |
EP (1) | EP2947642B1 (ja) |
JP (1) | JP6016948B2 (ja) |
CN (1) | CN105027180B (ja) |
WO (1) | WO2014112548A1 (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016104476A1 (ja) * | 2014-12-26 | 2016-06-30 | 日本電信電話株式会社 | 秘密改ざん検知システム、秘密計算装置、秘密改ざん検知方法、およびプログラム |
JP2016126354A (ja) * | 2016-01-13 | 2016-07-11 | 日本電信電話株式会社 | 秘密改ざん検知システム、秘密計算装置、秘密改ざん検知方法、およびプログラム |
JP5968484B1 (ja) * | 2015-03-18 | 2016-08-10 | 日本電信電話株式会社 | シェア復旧システム、シェア復旧方法、およびプログラム |
WO2017038761A1 (ja) * | 2015-08-31 | 2017-03-09 | 日本電気株式会社 | 秘密計算システム、秘密計算装置、および、秘密計算方法 |
JP2017097102A (ja) * | 2015-11-20 | 2017-06-01 | 国立研究開発法人情報通信研究機構 | サーバ、サービス方法 |
CN108140336A (zh) * | 2015-10-13 | 2018-06-08 | 日本电信电话株式会社 | 秘密认证码附加装置、秘密认证码附加方法以及程序 |
EP3316176A4 (en) * | 2015-08-17 | 2018-12-19 | Nippon Telegraph And Telephone Corporation | Computation system, computation device, method thereof, and program |
WO2019176520A1 (ja) | 2018-03-12 | 2019-09-19 | 日本電信電話株式会社 | 秘密計算装置、秘密計算方法、プログラム、および記録媒体 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5957126B1 (ja) * | 2015-06-24 | 2016-07-27 | 日本電信電話株式会社 | 秘密計算装置、秘密計算方法、およびプログラム |
JP6534778B2 (ja) * | 2016-07-06 | 2019-06-26 | 日本電信電話株式会社 | 秘密計算システム、秘密計算装置、秘密計算方法、およびプログラム |
EP3573041A4 (en) * | 2017-01-18 | 2020-06-03 | Nippon Telegraph And Telephone Corporation | METHOD FOR SAFE CALCULATION, SYSTEM FOR SAFE CALCULATION, DEVICE FOR SAFE CALCULATION AND PROGRAM |
US11157612B2 (en) * | 2017-05-25 | 2021-10-26 | Nippon Telegraph And Telephone Corporation | Secret tampering detection system, secret tampering detection apparatus, secret tampering detection method, and program |
DE102017117907B4 (de) * | 2017-08-07 | 2023-04-27 | Infineon Technologies Ag | Durchführen einer kryptografischen Operation |
WO2019039381A1 (ja) * | 2017-08-22 | 2019-02-28 | 日本電信電話株式会社 | 秘密計算装置、秘密計算方法、プログラム、および記録媒体 |
WO2019063503A1 (en) * | 2017-09-29 | 2019-04-04 | Robert Bosch Gmbh | METHOD FOR CALCULATING FASTER SECURED MULTIPARTITE INTERNAL PRODUCT USING SPDZ |
CN109255247B (zh) * | 2018-08-14 | 2020-08-14 | 阿里巴巴集团控股有限公司 | 多方安全计算方法及装置、电子设备 |
CN114981864A (zh) * | 2020-01-20 | 2022-08-30 | 日本电信电话株式会社 | 秘密选择积计算系统、秘密选择积计算方法、秘密计算装置以及程序 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012078446A (ja) * | 2010-09-30 | 2012-04-19 | Nippon Telegr & Teleph Corp <Ntt> | 不正検知方法、秘密計算システム、計算装置、計算プログラム |
WO2012121333A1 (ja) * | 2011-03-10 | 2012-09-13 | 日本電信電話株式会社 | 秘匿積和結合システム、計算装置、秘匿積和結合方法、及びそれらのプログラム |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4300838B2 (ja) * | 2003-03-25 | 2009-07-22 | 沖電気工業株式会社 | 分散計算装置及び分散計算システム |
US8752032B2 (en) * | 2007-02-23 | 2014-06-10 | Irdeto Canada Corporation | System and method of interlocking to protect software-mediated program and device behaviours |
JP5065802B2 (ja) * | 2007-08-06 | 2012-11-07 | Kddi株式会社 | 分散情報生成装置、秘密情報復元装置、権限情報を伴った分散情報の生成方法、秘密情報のアクセス制御方法およびプログラム |
US8031875B1 (en) * | 2007-08-09 | 2011-10-04 | Emc Corporation | Key distribution in unidirectional channels with applications to RFID |
US8989391B2 (en) * | 2010-10-06 | 2015-03-24 | Nippon Telegraph And Telephone Corporation | Secret sharing system, secret sharing apparatus, secret sharing method, secret sorting method and secret sharing program |
US9292258B2 (en) * | 2011-01-24 | 2016-03-22 | Nippon Telegraph And Telephone Corporation | Secure sum-of-product computation method, secure sum-of-product computation system, computation apparatus and programs therefor |
CN102364888B (zh) * | 2011-09-30 | 2015-01-07 | 深圳市文鼎创数据科技有限公司 | 动态令牌密钥因子的设置方法、系统、终端及验证服务器 |
US9350550B2 (en) * | 2013-09-10 | 2016-05-24 | M2M And Iot Technologies, Llc | Power management and security for wireless modules in “machine-to-machine” communications |
EP3096309B1 (en) * | 2014-01-17 | 2018-10-31 | Nippon Telegraph And Telephone Corporation | Secret calculation method, secret calculation system, sorting device, and program |
US10218495B2 (en) * | 2014-01-28 | 2019-02-26 | Nippon Telegraph And Telephone Corporation | Secure computation method, secure computation system, secure computation server, registrant terminal, user terminal and program |
US20160125396A1 (en) * | 2014-10-29 | 2016-05-05 | Google Inc. | Confirming physical possession of plastic nfc cards with a mobile digital wallet application |
-
2014
- 2014-01-16 JP JP2014557490A patent/JP6016948B2/ja active Active
- 2014-01-16 US US14/758,373 patent/US9860058B2/en active Active
- 2014-01-16 WO PCT/JP2014/050647 patent/WO2014112548A1/ja active Application Filing
- 2014-01-16 EP EP14740760.5A patent/EP2947642B1/en active Active
- 2014-01-16 CN CN201480005233.9A patent/CN105027180B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012078446A (ja) * | 2010-09-30 | 2012-04-19 | Nippon Telegr & Teleph Corp <Ntt> | 不正検知方法、秘密計算システム、計算装置、計算プログラム |
WO2012121333A1 (ja) * | 2011-03-10 | 2012-09-13 | 日本電信電話株式会社 | 秘匿積和結合システム、計算装置、秘匿積和結合方法、及びそれらのプログラム |
Non-Patent Citations (7)
Title |
---|
DAI IGARASHI ET AL.: "Hijoni Kokoritsu na n>=2k-1 no malicious Model-jo Himitsu Bunsan Base Himitsu Keisan", 2013 NEN SYMPOSIUM ON CRYPTOGRAPHY AND INFORMATION SECURITY GAIYOSHU CD-ROM, 22 January 2013 (2013-01-22), pages 3C3 - 2, XP008180067 * |
DAI IGARASHI ET AL.: "Keiryo Kensho Kano 3 Party Hitoku Kansu Keisan no Koritsuka Oyobi Kore o Mochiita Secure na Database Shori", 2011 NEN SYMPOSIUM ON CRYPTOGRAPHY AND INFORMATION SECURITY GAIYOSHU CD-ROM, 25 January 2011 (2011-01-25), pages 2C3 - 6, XP008180066 * |
I. DAMGARD; J. B. NIELSEN: "CRYPTO", vol. 4622, 2007, SPRINGER, article "Scalable and unconditionally secure multiparty computation", pages: 572 - 590 |
KOKI HAMADA; DAI IKARASHI; KOJI CHIDA; KATSUMI TAKAHASHI: "A Random Permutation Protocol on Three-Party Secure Function Evaluation", CSS2010, 2010 |
R. CRAMER; I. DAMGARD; Y. ISHAI: "TCC", vol. 3378, 2005, SPRINGER, article "Share conversion, pseudorandom secret-sharing and applications to secure computation", pages: 342 - 362 |
R. GENNARO; M. O. RABIN; T. RABIN: "PODC", 1998, ACM, article "Simplified VSS and fast-track multiparty computations with applications to threshold cryptography", pages: 101 - 111 |
SATOSHI OBANA ET AL.: "Almost Optimum Secret Sharing Schemes Secure Against Cheating for Arbitrary Secret Distribution", 2006, XP047030247, Retrieved from the Internet <URL:https://www.iacr. org/archive/asiacrypt2006/asiacrypt2006.html> [retrieved on 20140207] * |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10950144B2 (en) | 2014-12-26 | 2021-03-16 | Nippon Telegraph And Telephone Corporation | Secret falsification detecting system, secret computation apparatus, secret falsification detecting method, and program |
CN107111965A (zh) * | 2014-12-26 | 2017-08-29 | 日本电信电话株式会社 | 秘密篡改检测系统、秘密计算装置、秘密篡改检测方法、以及程序 |
WO2016104476A1 (ja) * | 2014-12-26 | 2016-06-30 | 日本電信電話株式会社 | 秘密改ざん検知システム、秘密計算装置、秘密改ざん検知方法、およびプログラム |
EP3239963A4 (en) * | 2014-12-26 | 2018-08-15 | Nippon Telegraph and Telephone Corporation | Secret falsification detection system, secret calculation device, secret falsification detection method, and program |
JP5968484B1 (ja) * | 2015-03-18 | 2016-08-10 | 日本電信電話株式会社 | シェア復旧システム、シェア復旧方法、およびプログラム |
WO2016147718A1 (ja) * | 2015-03-18 | 2016-09-22 | 日本電信電話株式会社 | シェア復旧システム、シェア復旧装置、シェア復旧方法、およびプログラム |
CN107430829A (zh) * | 2015-03-18 | 2017-12-01 | 日本电信电话株式会社 | 份额恢复系统、份额恢复装置、份额恢复方法以及程序 |
US10693886B2 (en) | 2015-08-17 | 2020-06-23 | Nippon Telegraph And Telephone Corporation | Computation system, computation device, method thereof, and program to perform information processing |
EP3316176A4 (en) * | 2015-08-17 | 2018-12-19 | Nippon Telegraph And Telephone Corporation | Computation system, computation device, method thereof, and program |
WO2017038761A1 (ja) * | 2015-08-31 | 2017-03-09 | 日本電気株式会社 | 秘密計算システム、秘密計算装置、および、秘密計算方法 |
US10924270B2 (en) | 2015-08-31 | 2021-02-16 | Nec Corporation | Secret calculation system, secret calculation apparatus, and secret calculation method |
EP3346455A4 (en) * | 2015-08-31 | 2019-05-22 | Nec Corporation | SECRET CALCULATION SYSTEM, SECRET CALCULATION DEVICE AND SECRET CALCULATION PROCEDURE |
CN108140336A (zh) * | 2015-10-13 | 2018-06-08 | 日本电信电话株式会社 | 秘密认证码附加装置、秘密认证码附加方法以及程序 |
CN108140336B (zh) * | 2015-10-13 | 2021-06-22 | 日本电信电话株式会社 | 秘密认证码附加装置、秘密认证码附加方法以及记录介质 |
JP2017097102A (ja) * | 2015-11-20 | 2017-06-01 | 国立研究開発法人情報通信研究機構 | サーバ、サービス方法 |
JP2016126354A (ja) * | 2016-01-13 | 2016-07-11 | 日本電信電話株式会社 | 秘密改ざん検知システム、秘密計算装置、秘密改ざん検知方法、およびプログラム |
WO2019176520A1 (ja) | 2018-03-12 | 2019-09-19 | 日本電信電話株式会社 | 秘密計算装置、秘密計算方法、プログラム、および記録媒体 |
Also Published As
Publication number | Publication date |
---|---|
US20150358155A1 (en) | 2015-12-10 |
JPWO2014112548A1 (ja) | 2017-01-19 |
US9860058B2 (en) | 2018-01-02 |
CN105027180B (zh) | 2017-03-29 |
EP2947642B1 (en) | 2017-09-06 |
EP2947642A1 (en) | 2015-11-25 |
CN105027180A (zh) | 2015-11-04 |
EP2947642A4 (en) | 2016-11-09 |
JP6016948B2 (ja) | 2016-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6016948B2 (ja) | 秘匿計算システム、演算装置、秘匿計算方法、およびプログラム | |
JP7554493B2 (ja) | 閾ボールトを生成する、コンピュータにより実施される方法 | |
Xu et al. | VerifyNet: Secure and verifiable federated learning | |
Yu et al. | Platform-independent secure blockchain-based voting system | |
Yu et al. | Enhanced privacy of a remote data integrity-checking protocol for secure cloud storage | |
Wang et al. | Privacy-preserving public auditing for data storage security in cloud computing | |
US11895231B2 (en) | Adaptive attack resistant distributed symmetric encryption | |
Huang et al. | Achieving accountable and efficient data sharing in industrial internet of things | |
JP2020515087A5 (ja) | ||
JP2020521369A (ja) | データ重複排除のためのアプリケーションによる暗号化鍵の生成 | |
Barsoum et al. | Integrity verification of multiple data copies over untrusted cloud servers | |
Jayapandian et al. | Secure and efficient online data storage and sharing over cloud environment using probabilistic with homomorphic encryption | |
Vijayakumar et al. | A secured cloud storage auditing with empirical outsourcing of key updates | |
JP2021510954A (ja) | デジタル署名されたデータを取得するためのコンピュータにより実施される方法及びシステム | |
WO2016104476A1 (ja) | 秘密改ざん検知システム、秘密計算装置、秘密改ざん検知方法、およびプログラム | |
Tran et al. | An efficient privacy-enhancing cross-silo federated learning and applications for false data injection attack detection in smart grids | |
Mashhadi et al. | Provably secure verifiable multi‐stage secret sharing scheme based on monotone span program | |
JP6053238B2 (ja) | 秘密改ざん検知システム、秘密計算装置、秘密改ざん検知方法、およびプログラム | |
US20220345312A1 (en) | Zero-knowledge contingent payments protocol for granting access to encrypted assets | |
WO2018216512A1 (ja) | 秘密改ざん検知システム、秘密改ざん検知装置、秘密改ざん検知方法、およびプログラム | |
Pei et al. | Smart contract based multi-party computation with privacy preserving and settlement addressed | |
Rewadkar et al. | Cloud storage system enabling secure privacy preserving third party audit | |
Rehman et al. | Securing cloud storage by remote data integrity check with secured key generation | |
EP3764588A1 (en) | Zero-knowledge contingent payments protocol for granting access to encrypted assets | |
Abraham et al. | Proving possession and retrievability within a cloud environment: A comparative survey |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 201480005233.9 Country of ref document: CN |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 14740760 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 14758373 Country of ref document: US |
|
ENP | Entry into the national phase |
Ref document number: 2014557490 Country of ref document: JP Kind code of ref document: A |
|
REEP | Request for entry into the european phase |
Ref document number: 2014740760 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2014740760 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |