WO2011086992A1 - 代理計算システム、方法、依頼装置、プログラム及びその記録媒体 - Google Patents
代理計算システム、方法、依頼装置、プログラム及びその記録媒体 Download PDFInfo
- Publication number
- WO2011086992A1 WO2011086992A1 PCT/JP2011/050278 JP2011050278W WO2011086992A1 WO 2011086992 A1 WO2011086992 A1 WO 2011086992A1 JP 2011050278 W JP2011050278 W JP 2011050278W WO 2011086992 A1 WO2011086992 A1 WO 2011086992A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- calculation
- random number
- input information
- unit
- information
- 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.)
- Ceased
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/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/065—Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
- H04L9/0656—Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09C—CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- G09C1/00—Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- 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
-
- 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/76—Proxy, i.e. using intermediary entity to perform cryptographic operations
Definitions
- This invention relates to computer computing technology.
- the present invention relates to a technique for performing calculations using calculation results obtained by other computers.
- Non-Patent Document 1 describes a technique in which a requesting device calculates a function f using a result of a calculation requested to a computing device that does not always perform correct calculation.
- the self-corrector described in Non-Patent Document 1 calculates a function f by requesting a calculation device a plurality of times and taking the majority of the calculation results (see Non-Patent Document 1, for example).
- Non-Patent Document 1 In order for the self-corrector of Non-Patent Document 1 to operate normally, the calculation device needs to perform a correct calculation with a certain probability or more, and the function f is calculated using a calculation device with a low probability of performing a correct calculation. There is a problem that the technique of calculating is not known.
- the proxy calculation system includes a function for copying G and H to a cyclic group, f to an element x of the group H to a group G, and a random variable having a value in the group G as X 1 and X 2 .
- a first power calculator, a second randomizable sampler capable of calculating f (x) a x 2 and having the calculation result v, a second power calculator for calculating v ′ v b
- G, H, and F are cyclic groups
- the mapping ⁇ : G ⁇ H ⁇ F is a bimorphic homomorphism
- g is an element of the group G
- h is the original group H
- K H is the order of the group H
- a mu g as a generator of the group G the mu h a generator of the group H
- [nu theta ( mu g, and mu g)
- requesting apparatus includes a first random number generation unit for generating a random number r 1 integer from 0 to less than K G, 0 or K
- a second random number generator that generates an integer random number r 2 less than H
- second input information h 1 ⁇ h r2
- a first input information calculation unit that calculates
- the calculation device can calculate ⁇ (g 1 , h 1 ) using g 1 and h 1 received from the request device, and outputs a calculation result as z 1 , a request device ⁇ (g 2 , h 2 ) can be calculated using g 2 and h 2 received from, and a second output information calculation unit that outputs the calculation result as z 2 , and g 3 and h 3 is capable calculate ⁇ (g 3, h 3) with, theta using a third output information calculation unit for outputting the calculation result as z 3, the g 4 and h 4 received from the requesting apparatus (G 4 , h 4 ) can be calculated, and a fourth output information calculation unit that outputs the calculation result as z 4 is included.
- the function f can be calculated using a calculation device with a low probability of correct calculation.
- the functional block diagram of the example of the proxy calculation system of 1st embodiment to 3rd embodiment The functional block diagram of the example of the request apparatus and calculation apparatus of 3rd embodiment from 1st embodiment.
- the functional block diagram of the example of the sample device of 1st embodiment to 3rd embodiment The functional block diagram of the example of the 1st randomizable sampler and 2nd randomizable sampler of 1st embodiment to 3rd embodiment.
- the flowchart of the example of the proxy calculation method of 1st embodiment to 3rd embodiment The flowchart which shows the example of step S3.
- f (x) is calculated using the result of the calculation requested by the requesting device 1 to the computing device 2.
- the proxy calculation system includes a request device 1 and a calculation device 2 as illustrated in FIG. 1, and calculates f (x) using the calculation result requested by the request device 1 to the calculation device 2. .
- the request apparatus 1 includes a natural number storage unit 11, an integer calculation unit 12, a first power calculation unit 13, a first list storage unit 14, a determination unit 15, a second power calculation unit 16, and a second list.
- a storage unit 17, a control unit 18, and a final calculation unit 19 are included.
- the computing device 2 includes, for example, a first randomizable sampler 21 and a second randomizable sampler 22. In the first embodiment, the first randomizable sampler 21 and the second randomizable sampler 22 correspond to the calculation device 2.
- G and H are cyclic groups
- a function f a function that maps H ⁇ G to an element x of group H to group G
- generators of groups G and H are set to ⁇ g , ⁇ h , X 1 , and X 2 to group G, respectively.
- random variable with values, x 1 the realization of the random variable X 1, the realization of the random variable X 2 and x 2.
- the natural number storage unit 11 stores a plurality of sets (a, b) of two natural numbers a and b that are relatively prime. Assuming that I is a set of two natural numbers less than the order of the group G and prime to each other, the natural number storage unit 11 stores a set (a, b) of natural numbers a and b corresponding to the subset S of I. Can be considered.
- the first randomizable sampler 21 can calculate f (x) b x 1 , calculates using x and b, and sets the calculation result to u (step S 3).
- the calculation result u is sent to the first power calculation unit 13.
- “calculatable” means that it can be calculated with a probability that cannot be ignored.
- the probability that cannot be ignored is a probability of 1 / F (k) or more, assuming that a polynomial that is a broad monotone function for the security parameter k is a polynomial F (k).
- f (x) b x 1 is to calculate the value of the formula is defined as f (x) b x 1. If the value of the expression f (x) b x 1 can be finally calculated, the calculation method in the middle is not limited. The same applies to the calculation of other equations appearing in this application.
- a set (u, u ′) of the calculation result u and u ′ calculated based on the calculation result is stored in the first list storage unit 14.
- the second randomizable sampler 22 can calculate f (x) a x 2 , calculates using x and a, and sets the calculation result to v (step S 6).
- the calculation result v is sent to the second power calculation unit 16.
- a set (v, v ′) of the calculation result v and v ′ calculated based on the calculation result is stored in the second list storage unit 17.
- the final calculation unit 19 calculates u b ′ v a ′ using u and v corresponding to u ′ and v ′, and outputs the result (u b ′ v a ′ ) ( Step S12).
- the calculated u b ′ v a ′ f (x).
- the reason why u b ′ v a ′ f (x) will be described later.
- X be a random variable whose value is in group G.
- a sample x ′ extracted according to the random variable R every time a request is received by a certain computing device and returning wx ′ is called a sampler having an error X for w.
- a sample x ′ is extracted according to a random variable X and w a x ′ is returned, and a randomizable sampler having an error X with respect to w (randomizable) sampler).
- the proxy calculation system of the above embodiment configures a proxy calculation system that inputs x and outputs f (x), the first randomizable sampler 21 having an error X 1 with respect to f (x), f (x and using the second random number of possible sample 22 with an error X 2 About).
- x 1 and x 2 are the identity e g in the group G
- u b 'v a' (f (x) b x 1) b '(f (x) a x 2)
- a' (f ( x) b e g) b ' (f (x) a e g)
- the proxy calculation system outputs f (x) with an overwhelming probability.
- S ⁇ (1, d)
- the amount of calculation of the sampler is smaller than that of a sampler capable of randomization.
- the sampler 23 performs the calculation instead of the first randomizable sampler 21 and the second randomizable sampler 22 to reduce the calculation amount of the calculation device 2. Can do.
- the proxy calculation system of the second embodiment embodies an example of the first randomizable sampler 21 and the second randomizable sampler 22, in other words, an example of step S3 and step S6.
- the description will focus on the parts that are different from the first embodiment, and overlapping descriptions will be omitted for the common parts.
- the first randomizable sampler 21 of the second embodiment includes a first random number generation unit 110, a first input information calculation unit 111, a first output information calculation unit 24, and a first calculation unit 112, as shown in FIG.
- the second randomizable sampler 22 of the second embodiment includes a second random number generation unit 113, a second input information calculation unit 114, a second output information calculation unit 25, and a second calculation, as shown in FIG.
- the unit 115 is included.
- the first random number generator 110, the first input information calculator 111, the first calculator 112, the second random number generator 113, the second input information calculator 114, and the second calculator 115 are: It is included in the request device 1.
- the first output information calculation unit 24 and the second output information calculation unit 25 are included in the calculation device 2.
- the first output information calculation unit 24 and the second output information calculation unit 25 correspond to the calculation device 2.
- Step S3 includes steps S31 to S34 illustrated in FIG.
- the first random number generation unit 110 generates an integer uniform random number r 1 of 0 or more and less than K H (step S31).
- the generated random number r 1 is sent to the first input information calculation unit 111.
- the first input information calculation unit 111 calculates the first input information ⁇ h r1 x b (step S32).
- the calculated first input information ⁇ h r1 x b is sent to the first output information calculation unit 24.
- the first output information calculation unit 24 performs calculation using the first input information ⁇ h r1 x b, and sets the calculation result as the first output information z 1 (step S33).
- the calculated first output information z 1 is sent to the first calculation unit 112.
- the first output information calculation unit 24 can calculate f ( ⁇ h r1 x b ). Some possible first output information calculating unit 24 the result of calculation by is f ( ⁇ h r1 x b) , may not be f ( ⁇ h r1 x b) .
- mu superscript r1 of h is that of r 1.
- ⁇ is expressed as ⁇ ⁇ , where ⁇ is the first character, ⁇ is the second character, ⁇ is a number, ⁇ means ⁇ ⁇ , that is, ⁇ subscript ⁇ To do.
- the first calculation unit 112 calculates z 1 ⁇ ⁇ r1 and sets the calculation result to u (step S34).
- the calculation result u is sent to the first power calculation unit 13.
- Step S6 includes steps S61 to S64 illustrated in FIG.
- Second random number generation unit 113 generates a uniform random number r 2 integer from 0 to less than K H (step S61).
- the generated random number r 2 is sent to the second input information calculation unit 114.
- the second input information calculation unit 114 calculates the second input information ⁇ h r2 x a (Step S62).
- the calculated second input information ⁇ h r2 x a is sent to the second output information calculation unit 25.
- the second output information calculation unit 25 performs calculation using the second input information ⁇ h r2 x a and sets the calculation result as the second output information z 2 (step S63).
- the calculated second output information z 2 is sent to the second calculation unit 115.
- the second output information calculation unit 25 can calculate f ( ⁇ h r2 x a ). Some possible second output information calculating unit 25 the result of calculation by is f ( ⁇ h r2 x a) , may not be f ( ⁇ h r2 x a) .
- the second calculation unit 115 calculates z 2 v ⁇ r2 and sets the calculation result as v (step S64). The calculation result v is sent to the second power calculation unit 16.
- the sampler 23 calculates the value of u or v instead of the first randomizable sampler 21 or the second randomizable sampler 22. Thus, the calculation amount may be reduced.
- the sampler 23 of the second embodiment includes, for example, a third random number generation unit 116, a third input information calculation unit 117, a third output information calculation unit 26, and a third calculation unit 118, as shown in FIG.
- the third random number generator 116, the third input information calculator 117, and the third calculator 118 are included in the requesting device 1.
- the third output information calculation unit 26 is included in the calculation device 2.
- each part of the sampler 23 performs the following processing instead of the first randomizable sampler 21 and the second randomizable sampler 22.
- the third random number generation unit 116 generates a random integer r 3 of 0 to less than K H.
- the generated random number r 3 is sent to the third input information calculation unit 117.
- the third input information calculation unit 117 calculates the third input information xr3 .
- the calculated third input information xr3 is sent to the third output information calculation unit 26.
- Third output information calculating unit 26 performs calculation using the third input information x r3, to the calculation result and the third output information z 3.
- the calculated third output information z 3 is sent to the third calculation unit 118.
- the third output information calculation unit 26 can calculate f (x r3 ). Some possible third output information calculating unit 26 the result of calculation by is f (x r3), may not be f (x r3).
- the calculation result v is sent to the second power calculation unit 16.
- the calculation result u is sent to the first power calculation unit 13.
- z 3 1 / r3 is a sampler having an error X 3 with respect to f (x).
- z 3 1 / r3 is a sampler having an error X 3 with respect to f (x). The reason will be described later.
- the third calculation unit 118 sequentially selects ( ⁇ 1 , ⁇ 1 ), ( ⁇ 2 , ⁇ 2 ),..., ( ⁇ m , ⁇ ) from the random number r 3 and the set of z 3 calculated based on the random number r 3. m ),... are stored in a storage unit (not shown).
- m is a natural number.
- the third calculation unit 118 sets ⁇ 1 , ⁇ 2 ,..., ⁇ m as integers to ⁇ 1 ⁇ 1 + ⁇ 2 ⁇ 2 +.
- x ⁇ H that is the target of the calculation of the value of the function f is set as the request device 1 and the computing device. 2 can be concealed from the third party that intercepts communication with the computer 2 and the computing device 2.
- This property is based on the fact that the function f is a homomorphism and R and R ′ are random numbers.
- This property is based on the fact that R and R ′ are random numbers. Therefore, considering that r 3 is a random number, z 1 / R becomes a randomizable sampler having an error X 3 for f (x).
- the proxy calculation system of the third embodiment embodies another example of the first randomizable sampler 21 and the second randomizable sampler 22, in other words, other examples of step S3 and step S6. .
- H G ⁇ G
- the example of the first randomizable sampler 21 and the second randomizable sampler 22 in the case of 2 ⁇ s is embodied.
- the description will focus on the parts that are different from the first embodiment, and overlapping descriptions will be omitted for the common parts.
- the first randomizable sampler 21 of the third embodiment includes a fourth random number generation unit 119, a fifth random number generation unit 120, a fourth input information calculation unit 121, and a fifth input information calculation unit. 122, the 4th output information calculation part 27, and the 4th calculation part 123 are included, for example.
- the second randomizable sampler 22 includes a sixth random number generator 124, a seventh random number generator 125, a sixth input information calculator 126, a seventh input information calculator 127, and a fifth output.
- the information calculation unit 28 and the fifth calculation unit 128 are included.
- the sixth input information calculation unit 126, the seventh input information calculation unit 127, the fifth output information calculation unit 28, and the fifth calculation unit 128 are included in the requesting apparatus 1.
- the fourth output information calculation unit 27 and the fifth output information calculation unit 28 are included in the calculation device 2.
- the fourth output information calculation unit 27 and the fifth output information calculation unit 28 correspond to the calculation device 2.
- Step S3 of the third embodiment includes steps S31 'to S36' illustrated in FIG.
- Fourth random number generation unit 119 generates a uniform random number r 4 integer from 0 to less than K G (step S31 ').
- the generated random number r 4 is sent to the fourth input information calculation unit 121, the fifth input information calculation unit 122, and the fourth calculation unit 123.
- Fifth random number generation unit 120 generates a uniform random number r 5 integer from 0 to less than K G (step S32 ').
- the generated random number r 5 is sent to the fourth input information calculation unit 121 and the fourth calculation unit 123.
- Fourth input information calculating unit 121 calculates the fourth input information c 1 b V r4 ⁇ g r5 ( Step S33 '). Fourth input information c 1 b V r4 ⁇ g r5 calculated is sent to the fourth output information calculating unit 27.
- the fifth input information calculation unit 122 calculates the fifth input information c 2 b W r4 (step S34 ′). The calculated fifth input information c 2 b W r4 is sent to the fourth output information calculation unit 27.
- Fourth output information calculating unit 27 performs the calculation using the fourth input information c 1 b V r4 ⁇ g r5 and fifth input information c 2 b W r4, to the calculation result and the fourth output information z 4 (Step S35 ').
- Fourth output information calculating unit 27 is capable of calculating the f (c 1 b V r4 ⁇ g r5, c 2 b W r4).
- Some possible results of the calculation by the fourth output information calculating unit 27 is f (c 1 b V r4 ⁇ g r5, c 2 b W r4), f (c 1 b V r4 ⁇ g r5, c 2 b W r4 It may not be.
- the fourth calculation unit 123 calculates z 4 Y ⁇ r4 ⁇ g ⁇ r5 and sets the calculation result to u (step S36 ′).
- the calculation result u is sent to the first power calculation unit 13.
- Step S6 of the third embodiment includes steps S61 'to S66' illustrated in FIG.
- Sixth random number generation unit 124 generates a uniform random number r 6 integer from 0 to less than K G (step S61 '). The generated random number r 6 is sent to the sixth input information calculation unit 126, the seventh input information calculation unit 127, and the fifth calculation unit 128. Seventh random number generating unit 125 generates a uniform random number r 7 integer from 0 to less than K G (step S62 '). The generated random number r 7 is sent to the sixth input information calculation unit 126 and the fifth calculation unit 128.
- Sixth input information calculating unit 126 calculates the sixth input information c 1 a V r6 ⁇ g r7 (step S63 '). The calculated sixth input information c 1 a V r6 ⁇ g r7 are is sent to the fifth output information calculating unit 28.
- the seventh input information calculation unit 127 calculates the seventh input information c 2 a W r6 (step S64 ′). The calculated seventh input information c 2 a W r6 is sent to the fifth output information calculation unit 28.
- Fifth output information calculating section 28 the sixth input information c 1 a V r6 ⁇ g perform the calculation using the r7 and the seventh input information c 2 a W r6, the calculation result fifth output information z 5 (Step S65 ′).
- the calculated fifth output information z 5 is sent to the fifth calculation unit 128.
- Fifth output information calculating unit 28 is capable of calculating the f (c 1 a V r6 ⁇ g r7, c 2 a W r6).
- Some possible fifth output information calculating unit 28 the result of calculation by is f (c 1 a V r6 ⁇ g r7, c 2 a W r6), f (c 1 a V r6 ⁇ g r7, c 2 a W r6 It may not be.
- Fifth calculation unit 128 calculates the z 5 Y -r6 ⁇ g -r7 to the calculation result v (step S66 ').
- the calculation result v is sent to the second power calculation unit 16.
- a, b are natural numbers and r 4, r 5, r 6 and r 7 is considered to be a random number, similarly, z 4 Y -r4 ⁇ g -r5 , z 5 Y -r6 ⁇ g -r7 Is a randomizable sampler with errors X 1 and X 2 for f (c 1 , c 2 ), respectively.
- the random variables X 1 , X 2 and X 3 may be the same or different.
- Each of the sixth random number generator 124 and the seventh random number generator 125 may generate a random number that is not a uniform random number.
- the first randomizable sampler 21 and the second randomizable sampler 22 are called once, but in order to reduce the number of communications between the requesting device 1 and the computing device 2, they are the same.
- the first randomizable sampler 21 and the second randomizable sampler 22 are called a plurality of times for a and b so that the requesting apparatus 1 can acquire a plurality of u and v in one communication. Also good.
- the units of the first randomizable sampler 21, the second randomizable sampler 22, and the sampler 23 may be arranged in the requesting apparatus 1 or in the calculation apparatus 2. That is, all the units may be arranged in the computing device 2 as in the first embodiment, or for example, the requesting device 1 and the computing device 2 are arranged separately as in the second embodiment and the third embodiment. Also good.
- the exchange of data between the units of the requesting apparatus 1 may be performed directly or may be performed via a storage unit (not shown).
- data exchange between the units of the computing device 2 may be performed directly or may be performed via a storage unit (not shown).
- Each of the requesting device 1 and the computing device 2 can be realized by a computer.
- the processing contents of each function that the apparatus should have are described by a program. Then, by executing this program on a computer, each processing function in this apparatus is realized on the computer.
- the program describing the processing contents can be recorded on a computer-readable recording medium.
- these apparatuses are configured by executing a predetermined program on a computer.
- at least a part of these processing contents may be realized by hardware.
- ⁇ (g, h) is calculated using the calculation result requested by the requesting device 1 ′ to the calculating device 2 ′.
- the proxy calculation system of the fourth embodiment includes a request apparatus 1 ′ and a calculation apparatus 2 ′ as illustrated in FIG. 11, and uses the result of the calculation requested by the request apparatus 1 ′ to the calculation apparatus 2 ′.
- the map ⁇ (g, h) is calculated.
- G, H, and F are cyclic groups
- the mapping ⁇ : G ⁇ H ⁇ F is a bimorphic mapping
- g is an element of group G
- h is an element of group H
- KG is an element of group G.
- K H is the order of group H
- ⁇ g is the generator of group G
- ⁇ h is the generator of group H
- ⁇ ⁇ ( ⁇ g , ⁇ g )
- k 1 or more
- K 2k .
- Bimorphic map means a map that is homomorphic for each of the two inputs.
- the mapping ⁇ (g, h) is homomorphic with respect to the element g of the group G and homomorphic with respect to the element h of the group H.
- a communication path is established between the requesting device 1 'and the computing device 2', and the requesting device 1 'and the computing device 2' can communicate bidirectionally. This communication path does not need to be kept secret, and a third party may be able to intercept information flowing through this communication path.
- the requesting device 1 ′ transmits the information disturbed by the random number to the unreliable computing device 2 ′, and the computing device 2 ′ uses the disturbed information to perform the calculation according to a certain algorithm, and the calculation result is the requesting device 1 ′.
- the requesting device 1' Reply to By repeatedly transmitting and receiving information to and from the calculation device 2 ', the requesting device 1' finally calculates ⁇ (g, h).
- the requesting device 1 ′ first calculates information ( ⁇ , ⁇ ′) equivalent to ⁇ (g, ⁇ h ) by the processing from step S11 ′ to step S125 ′ (FIG. 15), and the ⁇ (g, ⁇ h ).
- ⁇ (g, ⁇ ) is calculated by processing from step S21 ′ to step S225 ′ using information ( ⁇ , ⁇ ′) equivalent to.
- the request device 1 ′ includes a first random number generation unit 11 ′, a second random number generation unit 12 ′, a first input information calculation unit 13 ′, a second input information calculation unit 14 ′, One list information calculation unit 15 ′, first list storage unit 16 ′, reception unit 17 ′, transmission unit 18 ′, fourth random number generation unit 21 ′, fifth random number generation unit 22 ′, third input information calculation unit 23 ′ , Fourth input information calculation unit 24 ′, second list information calculation unit 25 ′, second list storage unit 26 ′, third random number generation unit 27 ′, first determination unit 28 ′, sixth random number generation unit 31 ′, Seventh random number generation unit 32 ′, fifth input information calculation unit 33 ′, sixth input information calculation unit 34 ′, third list information calculation unit 35 ′, third list storage unit 36 ′, ninth random number generation unit 41 ′ , Tenth random number generator 42 ', seventh input information calculator 43', eighth input information calculator 44 ', fourth list information Calculation unit 45 includes ', fourth list calculator 46'
- the calculation device 2 ′ includes a reception unit 51 ′, a transmission unit 52 ′, a first output information calculation unit 53 ′, a second output information calculation unit 54 ′, and a third output information calculation unit 55 ′. And a fourth output information calculation unit 56 ′.
- Step S11 ′ (FIG. 15)>
- the first random number generating unit 11 'generates r 1 is a uniform random number integer from 0 to less than K G (step S11').
- the generated random number r 1 is sent to the first input information calculation unit 13 ′ and the first list information calculation unit 15 ′.
- Step S12 '> The second random number generation unit 12 ′ generates r 2 that is an integer uniform random number not less than 0 and less than K H (step S12 ′). Random number r 2 that is generated, the second input information calculating unit 14 ', the first list information calculating unit 15' is sent to and the first list storage unit 16 '.
- the calculated g 1 is sent to the transmission unit 18 ′.
- mu superscript r1 of g is that of r 1.
- Step S15 '> The transmission unit 18 ′ transmits the first input information g 1 and the second input information h 1 to the calculation device 2 ′ (step S15 ′).
- Step S16 '> 'Receiving unit 51 of the' calculation unit 2 receives the first input information g 1 and the second input information h 1 (step S16 ').
- Step S17 '> First output information calculating unit 53 'performs a calculation using the first input information g 1 and the second input information h 1, to the calculation result as the first output information z 1 (step S17'). z 1 is sent to the transmitter 52 ′.
- the first output information calculation unit 53 ′ can calculate ⁇ (g 1 , h 1 ). Some possible result of the calculation by the first output information calculating unit 53 'is ⁇ (g 1, h 1) , may not be ⁇ (g 1, h 1) .
- “calculatable” means that it can be calculated with a probability that cannot be ignored.
- the probability that cannot be ignored is a probability of 1 / f (k) or more, where a polynomial that is a monotonically increasing function in a broad sense for the security parameter k is a polynomial f (k).
- Step S19 '> 'Receiving unit 17 of the' requesting apparatus 1 receives the first output information z 1 (step S19 ').
- the received first output information z 1 is sent to the first list information calculation unit 15 ′.
- the first output information z 1 is the original group F.
- Step S110 '> The first list information calculation unit 15 ′ calculates z 1 v ⁇ r1r2 using the random number r 1 , the random number r 2 and the first output information z 1 (step S110 ′). The calculated z 1 ⁇ ⁇ r1r2 is sent to the first list storage unit 16 ′.
- Step S111 '> A set of information (r 2 , z 1 v -r1r2 ) composed of the random number r 2 and z 1 v -r1r2 is added to the list L 1 .
- a set of information (r 2 , z 1 v ⁇ r1r2 ) is stored in the first list storage unit 16 ′ (step S111 ′).
- Step S112 '> The third random number generation unit 27 ′ generates d 1 which is an integer uniform random number not less than 0 and less than K (step S112 ′). Generated random number d 1 is sent to the third input information calculating unit 23 'and a second list storage unit 26'.
- Fourth random number generator 21 'generates r 4 is a uniform random number integer from 0 to less than K G (step S113'). Random number r 4 thus generated is fed to the third input information calculating unit 23 'and the second list information calculating unit 25'.
- Step S114 '> The fifth random number generation unit 22 ′ generates r 5 that is an integer uniform random number not less than 0 and less than K H (step S114 ′). Random number r 5
- the generated fourth input information calculating unit 24 ', the second list information calculating unit 25' is sent to and the second list storage unit 26 '.
- Step S117 '> The transmission unit 18 ′ transmits the third input information g 2 and the fourth input information h 2 to the calculation device 2 ′ (Step S117 ′).
- Step S118 '> 'Receiving unit 51 of the' calculation unit 2 receives the third input information g 2 and the fourth input information h 2 (step S118 ').
- Step S119 '> The second output information calculating unit 54 'performs a calculation using the third input information g 2 and the third input information h 2, to the calculation result and the second output information z 2 (step S119'). z 2 is sent to the transmission unit 52 '.
- the second output information calculation unit 54 ′ can calculate ⁇ (g 2 , h 2 ). Some possible results of the calculation by the second output information calculating unit 54 'is ⁇ (g 2, h 2) , may not be ⁇ (g 2, h 2) .
- Step S121 '> 'Receiving unit 17 of the' requesting apparatus 1 receives the second output information z 2 (step S121 ').
- the second output information z 2 received is sent to the second list information calculating unit 25 '.
- the second output information z 2 is an element of the group F.
- Step S122 '> The second list information calculation unit 25 ′ calculates z 2 v ⁇ r4r5 using the random number r 4 , the random number r 5 and the second output information z 2 (step S122 ′). The calculated z 2 ⁇ ⁇ r4r5 is sent to the second list storage unit 26 ′.
- Step S123 '> A set of information (d 1 , r 5 , z 2 v -r4r5 ) composed of the random number d 1 , the random number r 5 , and z 2 v -r4r5 is added to the list L 2 .
- a set of information (d 1 , r 5 , z 2 v ⁇ r4r5 ) is stored in the second list storage unit 26 ′ (step S123 ′).
- Step S124 '> The first determination unit 28 ', the first list storage unit 16' sets of the first component of the information read from the s 1, a second component and w 1, of the information read from the second list storage unit 26 '
- the first component of the set is t 2
- the second component is s 2
- the third component is w 2
- the first determination unit 28 ′ stores information stored in the first list storage unit 16 ′.
- information (d 2 , z 1 v -r1r2 ) and a set of information (d 1 , r 5 , z 2 v -r4r5 ) stored in the second list storage unit 26 ' It is determined whether the pair satisfies the above relationship. Of course, for a pair of information that has already been determined whether or not the above relationship is satisfied, the determination process may be omitted.
- Step S125 ′ If the above relationship is satisfied, the first determination unit 28 ′ substitutes s 1 into ⁇ and substitutes w 1 into ⁇ ′ (step S125 ′).
- Step S21 ′ (FIG. 16)>
- Sixth random number generating unit 31 'generates a r 6 is a uniform random number integer from 0 to less than K G (step S21').
- the generated random number r 6 is sent to the fifth input information calculation unit 33 ′, the third list information calculation unit 35 ′, and the third list storage unit 36 ′.
- Step S22 ′ The seventh random number generator 32 ′ generates r 7 that is an integer uniform random number not less than 0 and less than K H (step S22 ′). The generated random number r 7 is sent to the sixth input information calculation unit 34 ′ and the third list information calculation unit 35 ′.
- Step S25 '> The transmission unit 18 ′ transmits the fifth input information g 3 and the sixth input information h 3 to the calculation device 2 ′ (step S25 ′).
- Step S26 '> 'Receiving unit 51 of the' calculation unit 2 receives the fifth input information g 3 and the sixth input information h 3 (step S26 ').
- Step S27 '> Third output information calculating unit 55 'performs a calculation using the fifth input information g 3 and the sixth input information h 3, to the calculation result and the third output information z 3 (step S27'). z 3 is sent to the transmitter 52 ′.
- the third output information calculation unit 55 ′ can calculate ⁇ (g 3 , h 3 ). Some possible results of the calculation by the third output information calculating unit 55 'is ⁇ (g 3, h 3) , it may not be ⁇ (g 3, h 3) .
- Step S29 '> 'Receiving unit 17 of the' requesting apparatus 1 receives the third output information z 3 (step S29 ').
- Third output information z 3 received is sent to the third list information calculating unit 35 '.
- the third output information z 3 is an element of the group F.
- the third list information calculation unit 35 ′ calculates z 3 ⁇ ′ ⁇ r6r7 using the random number r 6 , the random number r 7 and the third output information z 3 (step S210 ′).
- the calculated z 3 ⁇ - r6r7 is sent to the third list storage unit 36 ′.
- Step S211 '> A set of information (r 6 , z 3 ⁇ ′ -r6r7 ) composed of the random number r 6 and z 3 ⁇ ′ -r6r7 is added to the list L 3 .
- the information set (r 6 , z 3 ⁇ ′ ⁇ r6r7 ) is stored in the third list storage unit 36 ′ (step S211 ′).
- Step S212 '> The eighth random number generation unit 47 ′ generates d 2 that is an integer uniform random number not less than 0 and less than K (step S212 ′). Random number d 2 generated is sent to the eighth input information calculating unit 44 and the fourth list storage unit 46 '.
- Step S213 Ninth random number generator 41 'generates a r 9 is a uniform random number integer from 0 to less than K G (step S213').
- the generated random number r 9 is sent to the seventh input information calculation unit 43 ′, the fourth list information calculation unit 45 ′, and the fourth list storage unit 46 ′.
- Step S214 Tenth random number generation unit 42 'generates the r 10 is a uniform random number integer from 0 to less than K H (step S214').
- the generated random number r 10 is sent to the eighth input information calculation unit 44 ′, the fourth list information calculation unit 45 ′, and the fourth list storage unit 46 ′.
- the calculated eighth input information h 4 was is sent to the transmitter 18 '.
- Step S218 '> 'Receiving unit 51 of the' calculation unit 2 receives the seventh input information g 4 and the eighth input information h 4 (step S218 ').
- Step S219 ′ Fourth output information calculating unit 56 'performs a calculation using the seventh input information g 4 and the eighth input information h 4, to the calculation result and the fourth output information z 4 (step S219'). z 4 is sent to the transmission unit 52 '.
- the fourth output information calculation unit 56 ′ can calculate ⁇ (g 4 , h 4 ). Some possible results of the calculation by the fourth output information calculating unit 56 'is ⁇ (g 4, h 4) , may not be ⁇ (g 4, h 4) .
- Step S221 '> 'Receiving unit 17 of the' requesting apparatus 1 receives the fourth output information z 4 (step S221).
- Fourth output information z 4 received is sent to the fourth list information calculating unit 45 '.
- the fourth output information z 4 is an element of the group F.
- the fourth list information calculation unit 45 ′ calculates z 4 ⁇ ′ ⁇ r9r10 using the random number r 9 , the random number r 10 and the fourth output information z 4 (step S222 ′).
- the calculated z 4 ⁇ ′-r9r10 is sent to the fourth list storage unit 46 ′.
- Step S223 ′ A set of information (d 2 , r 9 , z 4 ⁇ ′ -r9r10 ) composed of the random number d 2 , the random number r 9 , and z 4 ⁇ -r9r10 is added to the list L 4 .
- the information set (d 2 , r 9 , z 4 v ⁇ r9r10 ) is stored in the fourth list storage unit 46 ′ (step S223 ′).
- the first component of the set is t 4
- the second component is s 4
- the third component is w 4
- the second determination unit 48 ′ stores information stored in the third list storage unit 36 ′. (R 6 , z 3 ⁇ ′ ⁇ r6r7 ) and information set (d 2 , r 9 , z 4 ⁇ ′ ⁇ r9r10 ) stored in the fourth list storage unit 46 ′ It is determined whether the information pair satisfies the above relationship. Of course, for a pair of information that has already been determined whether or not the above relationship is satisfied, the determination process may be omitted.
- Step S225 ′ If the above relationship is satisfied, the second determination unit 48 ′ outputs (w 3 ) ⁇ (s 3 ⁇ 1 ) (step S225 ′).
- (w 3 ) ⁇ (s 3 ⁇ 1 ) ⁇ (g, h).
- the reason why (w 3 ) ⁇ (s 3 ⁇ 1 ) ⁇ (g, h) will be described later. If the above relationship is not satisfied, the process returns to step S21 ′.
- ⁇ (g, h) can be easily calculated as follows.
- m is a natural number.
- the computing device 2 ′ does not need to be a reliable computer, and the configuration requirements of the system for calculating the bimorphism can be relaxed.
- a computer that can be trusted is generally expensive and expensive to operate, it is not necessary for the computing device 2 'to be a computer that can be trusted. Operation costs can be reduced.
- This property is used. This property is based on the fact that R 1 , R 2 , R 1 ′ and R 2 ′ are random numbers.
- the realized value of S X (1) is expressed as ⁇ (g, ⁇ h ) 1 x 1 and the realized value of S X (d) is expressed as ⁇ (g, ⁇ h ) d x 2 .
- the proxy calculation system of the above embodiment uses the property of this randomizable sampler.
- step S11 ′ to step S111 ′ corresponds to the calculation of the actual value ⁇ (g, ⁇ h ) 1 x 1 of S X (1).
- the process of 'step S123 from' step S112 corresponds to realize values ⁇ (g, ⁇ h) of d1 x 2 calculation of S X (d 1).
- ⁇ and ⁇ ′ in step S125 ′ correspond to ⁇ (g, ⁇ h ).
- the proxy calculation system of the above embodiment uses the property of this randomizable sampler.
- step S21 ′ to step S211 ′ corresponds to the calculation of the actual value ⁇ (g, h) 1 x 1 of S X (1).
- the actual value of S X (1) is not calculated, but z 3 ⁇ ′-r6r7 is obtained as 1 / r by using (r 6 , z 3 ⁇ ′ -r6r7 ) obtained by the same processing.
- (z 3 ⁇ ′ ⁇ r6r7 ) 1 / r6 z 3 1 / r6 ⁇ ′ ⁇ r7
- step process S212 'from the step S223' corresponds to the realization theta (g, h) of d2 x 2 calculation of S X (d 2).
- s 3 r 6
- w 3 z 3 ⁇ ′ ⁇ r6r7
- t 4 d 2
- s 4 r 9
- w 4 z 4 ⁇ ′ ⁇ r9r10 by definition .
- (w 3 ) ⁇ (s 3 ⁇ 1 ) in step S225 ′ corresponds to ⁇ (g, h).
- (w 3 ) ⁇ (s 3 ⁇ 1 ) in step S225 ′ corresponds to ⁇ (g, h).
- (w 3 ) ⁇ (s 3 ⁇ 1 ) (z 3 ⁇ ′ ⁇ r6r7 ) ⁇
- the proxy calculation system of the fifth embodiment is different from the proxy calculation system of the fourth embodiment in step S13 ′, step S110 ′, and step S111 ′, and other parts are the same as the proxy calculation system of the fourth embodiment. is there.
- a description will be given centering on differences from the fourth embodiment.
- the first list information calculation unit 15 ′ calculates r 1 r 2 using the random number r 1 and the random number r 2 instead of z 1 v ⁇ r1r2 , and sends the calculation result to the first list storage unit 16 ′.
- the first list storage unit 16 ′ is not composed of a set of information (r 2 , z 1 v ⁇ r1r2 ) but is composed of calculated r 1 r 2 and z 1 ⁇ F received from the calculation device 2 ′.
- a set of information (r 1 r 2 , z 1 ) is stored (step S111 ′).
- step S110 ′ of the fourth embodiment it is necessary to perform the group F power operation z 1 ⁇ r1r2 , but in step S110 ′ of the fifth embodiment, r 1 r 2 should be calculated.
- the number of times has decreased by 1.
- the efficiency of calculation can be increased by reducing the number of power calculations.
- the safety does not decrease compared to the fourth embodiment.
- the proxy calculation system of the sixth embodiment is different from the proxy calculation system of the fourth embodiment in step S24 ′, step S210 ′, and step S211 ′, and the other parts are the same as the proxy calculation system of the fourth embodiment. is there.
- a description will be given centering on differences from the fourth embodiment.
- the third list information calculation unit 35 ′ calculates r 6 r 7 using the random number r 6 and the random number r 7 instead of z 3 ⁇ ′-r6r7 (step S210 ′).
- the third list storage unit 36 ′ is not composed of the information set (r 6 , z 3 ⁇ ′ ⁇ r6r7 ) but is composed of the calculated r 6 r 7 and z 3 ⁇ F received from the calculation device 2 ′.
- the information set (r 6 r 7 , z 3 ) is stored (step S211 ′).
- step S210 ′ of the fourth embodiment it was necessary to perform a power of the group F of z 3 ⁇ ′-r6r7 , but in step S210 ′ of the sixth embodiment, r 6 r 7 should be calculated.
- the number of operations has decreased by one. Thus, the efficiency of calculation can be increased by reducing the number of power calculations.
- the proxy calculation system of the seventh embodiment is different from the proxy calculation system of the fourth embodiment in step S125 ′ and step S214 ′, and the other parts are the same as the proxy calculation system of the fourth embodiment.
- the first determination unit 28 ′ substitutes t 1 s 2 into ⁇ and substitutes w 2 into ⁇ ′ (step S125 ′).
- the tenth random number generation unit 42 ′ calculates ⁇ r 9 ⁇ 1 using the random number r 9 and sets it to r 10 (step S214 ′).
- step S22 'and step S211' may be further changed as follows.
- the seventh random number generator 32 ′ calculates ⁇ r 6 ⁇ 1 using the random number r 6 and sets it to r 7 (step S22 ′).
- the 1 and the calculated z 3 [nu' third list storage unit 36 -R6r7 Metropolitan from configured data set (1, z 3 ⁇ '-r6r7 ) is stored (step S211').
- the number of times of generating a random number can be reduced by calculating the random number r 7 using the random number r 6 . If it is difficult to calculate a non-obvious root in the group G and the group H, the safety does not decrease compared to the fourth embodiment.
- the proxy calculation system of the eighth embodiment is different from the proxy calculation system of the fourth embodiment in step S113 ′, and the other parts are the same as those of the proxy calculation system of the fourth embodiment.
- a description will be given centering on differences from the fourth embodiment.
- Step S113 generates a random number r 5 (step S114 ').
- the fourth random number generation unit 21 ′ calculates ⁇ r 5 ⁇ 1 using the random number r 5 and sets it to r 4 (step S113 ′).
- the number of times of generating a random number can be reduced by calculating the random number r 4 using the random number r 5 .
- the request apparatus 1 ′ further includes a pre-calculation unit 29 ′ indicated by a broken line in FIG. 12, and step S115 ′ is different from the proxy calculation system of the fourth embodiment. About the part, it is the same as that of the proxy calculation system of 4th embodiment. Hereinafter, a description will be given centering on differences from the fourth embodiment.
- the pre-calculation unit 29 ′ calculates g d1 using d 1 generated by the third random number generation unit 27 ′. This process is performed after step S112 ′ and before step S115 ′.
- step S114 ′ If the determination condition is not satisfied in step S114 ′, the processing from step S11 ′ to step S123 ′ is repeated.
- the request apparatus 1 ′ further includes a pre-calculation unit 49 ′ indicated by a broken line in FIG. 13, and step S216 ′ is different from the proxy calculation system of the fourth embodiment. About the part, it is the same as that of the proxy calculation system of 4th embodiment. Hereinafter, a description will be given centering on differences from the fourth embodiment.
- the pre-calculation unit 49 ′ calculates h d2 using d 2 generated by the eighth random number generation unit 47 ′. This process is performed after step S212 ′ and before step S216 ′.
- Eighth input information calculating unit 44 'by using the h d2 that has been pre-calculated, the calculation of the eighth input information h 4 ⁇ h r10 ⁇ h d2 ( step S116').
- Each of the random number generation unit 32 ′, the eighth random number generation unit 47 ′, the ninth random number generation unit 41 ′, and the tenth random number generation unit 42 ′ generates uniform random numbers, so that the safety of the proxy calculation system is the highest. Get higher.
- the generator 22 ′, the sixth random number generator 31 ′, the seventh random number generator 32 ′, the eighth random number generator 47 ′, the ninth random number generator 41 ′, and the tenth random number generator 42 ′ is uniform.
- a random number that is not a random number may be generated.
- the process of the first determination unit 28 ′ may be performed. For example, when the information set (d 1 , r 5 , z 2 ⁇ ⁇ r4r5 ) is stored in the second list storage unit 26 ′, the process of step S124 ′ may be performed after step S111 ′. good. Similarly, every time a set of information is added to the list L 3 and the list L 4 , the process of the second determination unit 48 ′ may be performed.
- the fourth embodiment to the tenth embodiment can be combined with each other.
- the exchange of data between the units of the request apparatus 1 ′ may be performed directly or may be performed via a storage unit (not shown). Similarly, data exchange between the units of the computing device 2 ′ may be performed directly or via a storage unit (not shown).
- Each of the requesting device 1 'and the computing device 2' can be realized by a computer.
- the processing contents of each function that the apparatus should have are described by a program. Then, by executing this program on a computer, each processing function in this apparatus is realized on the computer.
- the program describing the processing contents can be recorded on a computer-readable recording medium.
- these apparatuses are configured by executing a predetermined program on a computer.
- at least a part of these processing contents may be realized by hardware.
- the first embodiment to the third embodiment may be combined with the fourth embodiment to the tenth embodiment.
- the computing device 2 of the first to third embodiments includes the requesting device 1 ′ of the fourth to tenth embodiments, and includes this requesting device 1 ′.
- the calculation device 2 may calculate the function f using the calculation device 2 ′ in the same manner as described in the fourth to tenth embodiments.
- the calculation device 2 calculates the value of the corresponding mapping ⁇ (g, h) using the calculation device 2 ′.
- ciphertext and decryption of the ciphertext are performed as follows.
- a random number r is generated and (Q r , m (+) H ( ⁇ (P r , Q ID ))) is calculated, and this is converted into a ciphertext (C 1 , C 2 ).
- plain text is obtained by calculating C 2 (+) H (f (C 1 )) for cipher text (C 1 , C 2 ).
- H is a hash function
- (+) is an exclusive OR.
- the computing device 2 is an IC card or a mobile phone and it is difficult to extract secret information, but the computing ability is limited, it is beneficial to multiplex and combine the requesting device and the computing device in this way. .
- the present invention is not limited to the above-described embodiment, and can be appropriately changed without departing from the gist of the present invention.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Algebra (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Complex Calculations (AREA)
Abstract
Description
第一実施形態から第二実施形態は、依頼装置1が計算装置2に依頼した計算の結果を用いてf(x)を計算するものである。
第一実施形態の代理計算システムは、図1に例示するように依頼装置1及び計算装置2を含み、依頼装置1が計算装置2に依頼した計算の結果を用いてf(x)を計算する。
第一乱数化可能標本器21は、f(x)bx1を計算可能であり、x及びbを用いて計算を行い、その計算結果をuとする(ステップS3)。計算結果uは、第一べき乗計算部13に送られる。
Xを群Gに値を持つ確率変数とする。w∈Gについて、ある計算装置で要求を受けるたびに確率変数Rに従って標本x’を抽出しwx’を返信するものを、wについて誤差Xを持つ標本器(sampler)と呼ぶ。
L/♯Sが無視できる量になるようなSの例には、例えばS={(1,d)|d∈[2,|G|-1]}がある。
第二実施形態の代理計算システムは、第一乱数化可能標本器21及び第二乱数化可能標本器22の一例、言い換えればステップS3及びステップS6の一例を具体化したものである。以下、第一実施形態と異なる部分を中心に説明し、共通する部分については重複説明を省略する。
第一入力情報計算部111は、第一入力情報μh r1xbを計算する(ステップS32)。計算された第一入力情報μh r1xbは、第一出力情報計算部24に送られる。
第一出力情報計算部24は、第一入力情報μh r1xbを用いて計算を行い、その計算結果を第一出力情報z1とする(ステップS33)。計算された第一出力情報z1は、第一計算部112に送られる。
第一出力情報計算部24は、f(μh r1xb)を計算可能である。第一出力情報計算部24による計算の結果がf(μh r1xb)であることもあれば、f(μh r1xb)でないこともある。
第一計算部112は、z1ν-r1を計算してその計算結果をuとする(ステップS34)。計算結果uは、第一べき乗計算部13に送られる。ここで、u=z1ν-r1=f(x)bx1となる。すなわち、z1ν-r1は、f(x)について誤差X1を持つ乱数化可能標本器となる。その理由については後述する。
第二入力情報計算部114は、第二入力情報μh r2xaを計算する(ステップS62)。計算された第二入力情報μh r2xaは、第二出力情報計算部25に送られる。
第二出力情報計算部25は、第二入力情報μh r2xaを用いて計算を行い、その計算結果を第二出力情報z2とする(ステップS63)。計算された第二出力情報z2は、第二計算部115に送られる。
第二計算部115は、z2ν-r2を計算してその計算結果をvとする(ステップS64)。計算結果vは、第二べき乗計算部16に送られる。ここで、v=z2ν-r2=f(x)ax2となる。すなわち、z2ν-r2は、f(x)について誤差X2を持つ乱数化可能標本器となる。その理由については後述する。
第三乱数生成部116は、0以上KH未満の整数の乱数r3を生成する。生成された乱数r3は第三入力情報計算部117に送られる。
第三入力情報計算部117は、第三入力情報xr3を計算する。計算された第三入力情報xr3は、第三出力情報計算部26に送られる。
第三出力情報計算部26は、f(xr3)を計算可能である。第三出力情報計算部26による計算の結果がf(xr3)であることもあれば、f(xr3)でないこともある。
cを自然数、R及びR’を乱数として、計算装置2がμh Rxcを用いて行う計算の計算結果をB(μh Rxc)(すなわち、計算装置2が依頼装置1に返す計算結果をzとすると、z=B(μh Rxc)である。)とし、群Gに値を持つ確率変数XをX=B(μh R’)f(μh R’)-1と定義する。
R及びR’を乱数として、計算装置2がxRを用いて行う計算の計算結果をB(xR)(すなわち、計算装置2が依頼装置1に返す計算結果をzとすると、z=B(xR)である。)とし、群Gに値を持つ確率変数XをX=B(xR)1/Rf(x)-1と定義する。
このとき、z1/R=B(xR)1/R=Xf(x)=f(x)Xとなる。すなわち、z1/Rは、f(x)について誤差Xを持つ標本器となる。
したがって、r3が乱数であることを考慮すると、z1/Rがf(x)について誤差X3を持つ乱数化可能標本器となるのである。
第三実施形態の代理計算システムは、第一乱数化可能標本器21及び第二乱数化可能標本器22の他の例、言い換えればステップS3及びステップS6の他の例を具体化したものである。具体的には、H=G×Gで、関数fがElGamal暗号の復号関数、すなわち秘密鍵s及び暗号文(c1,c2)に対してf(c1,c2)=c1c2 -sである場合の第一乱数化可能標本器21及び第二乱数化可能標本器22の例を具体化したものである。以下、第一実施形態と異なる部分を中心に説明し、共通する部分については重複説明を省略する。
第五乱数生成部120は、0以上KG未満の整数の一様乱数r5を生成する(ステップS32’)。生成された乱数r5は、第四入力情報計算部121及び第四計算部123に送られる。
第五入力情報計算部122は、第五入力情報c2 bWr4を計算する(ステップS34’)。計算された第五入力情報c2 bWr4は、第四出力情報計算部27に送られる。
第四出力情報計算部27は、f(c1 bVr4μg r5,c2 bWr4)を計算可能である。第四出力情報計算部27による計算の結果がf(c1 bVr4μg r5,c2 bWr4)であることもあれば、f(c1 bVr4μg r5,c2 bWr4)でないこともある。
第七乱数生成部125は、0以上KG未満の整数の一様乱数r7を生成する(ステップS62’)。生成された乱数r7は、第六入力情報計算部126及び第五計算部128に送られる。
第七入力情報計算部127は、第七入力情報c2 aWr6を計算する(ステップS64’)。計算された第七入力情報c2 aWr6は、第五出力情報計算部28に送られる。
第五出力情報計算部28は、f(c1 aVr6μg r7,c2 aWr6)を計算可能である。第五出力情報計算部28による計算の結果がf(c1 aVr6μg r7,c2 aWr6)であることもあれば、f(c1 aVr6μg r7,c2 aWr6)でないこともある。
cを自然数、R1、R2、R1’及びR2’を乱数として、計算装置2がc1 cVR1μg R2及びc2 cWR1を用いて行う計算の計算結果をB(c1 cVR1μg R2,c2 cWR1)(すなわち、計算装置2が依頼装置1に返す計算結果をzとすると、z=B(c1 cVR1μg R2,c2 cWR1)である。)とし、群Gに値を持つ確率変数XをX=B(VR1’μg R2’,WR1’)f(VR1’μg R2’,WR1’)-1と定義する。
確率変数X1、X2及びX3は、同じでも異なっていてもよい。
第一乱数生成部110、第二乱数生成部113、第三乱数生成部116、第四乱数生成部119、第五乱数生成部120、第六乱数生成部124及び第七乱数生成部125のそれぞれは、一様乱数を生成することにより、代理計算システムの安全性が最も高くなる。しかし、求める安全性のレベルがそれほど高くない場合には、第一乱数生成部110、第二乱数生成部113、第三乱数生成部116、第四乱数生成部119、第五乱数生成部120、第六乱数生成部124及び第七乱数生成部125のそれぞれは、一様乱数ではない乱数を生成してもよい。
第四実施形態から第十実施形態は、依頼装置1’が計算装置2’に依頼した計算の結果を用いてθ(g,h)を計算するものである。
第一乱数生成部11’は、0以上KG未満の整数の一様乱数であるr1を生成する(ステップS11’)。生成された乱数r1は、第一入力情報計算部13’及び第一リスト情報計算部15’に送られる。
第二乱数生成部12’は、0以上KH未満の整数の一様乱数であるr2を生成する(ステップS12’)。生成された乱数r2は、第二入力情報計算部14’、第一リスト情報計算部15’及び第一リスト記憶部16’に送られる。
第一入力情報計算部13’は、第一入力情報g1=μg r1gを計算する(ステップS13’)。計算されたg1は送信部18’に送られる。
ここで、μgの右肩のr1は、r1のことである。このように、この出願において、αを第一の文字、βを第二の文字、γを数字として、αβγと表記した場合には、そのβγはβγ、すなわちβの下付きγを意味する。
第二入力情報計算部14’は、第二入力情報h1=μh r2を計算する(ステップS14’)。計算されたh1は送信部18’に送られる。
送信部18’は、第一入力情報g1及び第二入力情報h1を計算装置2’に送信する(ステップS15’)。
計算装置2’の受信部51’(図14)は、第一入力情報g1及び第二入力情報h1を受信する(ステップS16’)。
第一出力情報計算部53’は、第一入力情報g1及び第二入力情報h1を用いて計算を行い、その計算結果を第一出力情報z1とする(ステップS17’)。z1は、送信部52’に送られる。
送信部52’は、第一出力情報z1を依頼装置1’に送信する(ステップS18’)。
依頼装置1’の受信部17’(図12)は、第一出力情報z1を受信する(ステップS19’)。受信した第一出力情報z1は、第一リスト情報計算部15’に送られる。ここでは、第一出力情報z1は群Fの元であるとする。
第一リスト情報計算部15’は、乱数r1、乱数r2及び第一出力情報z1を用いて、z1ν-r1r2を計算する(ステップS110’)。計算されたz1ν-r1r2は、第一リスト記憶部16’に送られる。
乱数r2と、z1ν-r1r2とから構成される情報の組(r2,z1ν-r1r2)がリストL1に追加される。この例では、第一リスト記憶部16’に、情報の組(r2,z1ν-r1r2)が記憶される(ステップS111’)。
第三乱数生成部27’は、0以上K未満の整数の一様乱数であるd1を生成する(ステップS112’)。生成された乱数d1は、第三入力情報計算部23’及び第二リスト記憶部26’に送られる。
第四乱数生成部21’は、0以上KG未満の整数の一様乱数であるr4を生成する(ステップS113’)。生成された乱数r4は、第三入力情報計算部23’及び第二リスト情報計算部25’に送られる。
第五乱数生成部22’は、0以上KH未満の整数の一様乱数であるr5を生成する(ステップS114’)。生成された乱数r5は、第四入力情報計算部24’、第二リスト情報計算部25’及び第二リスト記憶部26’に送られる。
第三入力情報計算部23’は、第三入力情報g2=μg r4gd1を計算する(ステップS115’)。計算された第三入力情報g2は、送信部18’に送られる。
第四入力情報計算部24’は、第四入力情報h2=μh r5を計算する(ステップS116’)。計算された第四入力情報h2は、送信部18’に送られる。
送信部18’は、第三入力情報g2及び第四入力情報h2を計算装置2’に送信する(ステップS117’)。
計算装置2’の受信部51’(図14)は、第三入力情報g2及び第四入力情報h2を受信する(ステップS118’)。
第二出力情報計算部54’は、第三入力情報g2及び第三入力情報h2を用いて計算を行い、その計算結果を第二出力情報z2とする(ステップS119’)。z2は、送信部52’に送られる。
第二出力情報計算部54’は、θ(g2,h2)を計算可能である。第二出力情報計算部54’による計算の結果がθ(g2,h2)であることもあれば、θ(g2,h2)でないこともある。
送信部52’は、第二出力情報z2を依頼装置1’に送信する(ステップS120’)。
依頼装置1’の受信部17’(図12)は、第二出力情報z2を受信する(ステップS121’)。受信した第二出力情報z2は、第二リスト情報計算部25’に送られる。ここでは、第二出力情報z2は群Fの元であるとする。
第二リスト情報計算部25’は、乱数r4、乱数r5及び第二出力情報z2を用いて、z2ν-r4r5を計算する(ステップS122’)。計算されたz2ν-r4r5は、第二リスト記憶部26’に送られる。
乱数d1と、乱数r5と、z2ν-r4r5とから構成される情報の組(d1,r5,z2ν-r4r5)が、リストL2に追加される。この例では、第二リスト記憶部26’には、情報の組(d1,r5,z2ν-r4r5)が記憶される(ステップS123’)。
第一判定部28’は、第一リスト記憶部16’から読み込んだ情報の組の第一成分をs1とし、第二成分をw1とし、第二リスト記憶部26’から読み込んだ情報の組の第一成分をt2とし、第二成分をs2とし、第三成分をw2として、これらの情報の組が(w1)^(t2s2s1 -1)=w2の関係を満たすかを判定する(ステップS124’)。
第一判定部28’は、上記の関係を満たす場合には、s1をσに代入し、w1をν’に代入する(ステップS125’)。ここで、ν’1/σ=w1 1/σ=θ(g,μh)となる。ν’1/σ=θ(g,μh)となる理由については後述する。
上記の関係を満たさない場合には、ステップS11’に戻る。
第六乱数生成部31’は、0以上KG未満の整数の一様乱数であるr6を生成する(ステップS21’)。生成された乱数r6は、第五入力情報計算部33’、第三リスト情報計算部35’及び第三リスト記憶部36’に送られる。
第七乱数生成部32’は、0以上KH未満の整数の一様乱数であるr7を生成する(ステップS22’)。生成された乱数r7は、第六入力情報計算部34’及び第三リスト情報計算部35’に送られる。
第五入力情報計算部33’は、第五入力情報g3=μg r6を計算する(ステップS23’)。計算されたg3は送信部18’に送られる。
第六入力情報計算部34’は、第六入力情報h3=μh r7σhを計算する(ステップS24’)。計算されたh3は送信部18’に送られる。
送信部18’は、第五入力情報g3及び第六入力情報h3を計算装置2’に送信する(ステップS25’)。
計算装置2’の受信部51’(図14)は、第五入力情報g3及び第六入力情報h3を受信する(ステップS26’)。
第三出力情報計算部55’は、第五入力情報g3及び第六入力情報h3を用いて計算を行い、その計算結果を第三出力情報z3とする(ステップS27’)。z3は、送信部52’に送られる。
第三出力情報計算部55’は、θ(g3,h3)を計算可能である。第三出力情報計算部55’による計算の結果がθ(g3,h3)であることもあれば、θ(g3,h3)でないこともある。
送信部52’は、第三出力情報z3を依頼装置1’に送信する(ステップS28’)。
依頼装置1’の受信部17’(図13)は、第三出力情報z3を受信する(ステップS29’)。受信した第三出力情報z3は、第三リスト情報計算部35’に送られる。ここでは、第3出力情報z3は群Fの元であるとする。
第三リスト情報計算部35’は、乱数r6、乱数r7及び第三出力情報z3を用いて、z3ν’-r6r7を計算する(ステップS210’)。計算されたz3ν-r6r7は、第三リスト記憶部36’に送られる。
乱数r6と、z3ν’-r6r7とから構成される情報の組(r6,z3ν’-r6r7)がリストL3に追加される。この例では、第三リスト記憶部36’に、情報の組(r6,z3ν’-r6r7)が記憶される(ステップS211’)。
第八乱数生成部47’は、0以上K未満の整数の一様乱数であるd2を生成する(ステップS212’)。生成された乱数d2は、第八入力情報計算部44及び第四リスト記憶部46’に送られる。
第九乱数生成部41’は、0以上KG未満の整数の一様乱数であるr9を生成する(ステップS213’)。生成された乱数r9は、第七入力情報計算部43’、第四リスト情報計算部45’及び第四リスト記憶部46’に送られる。
第十乱数生成部42’は、0以上KH未満の整数の一様乱数であるr10を生成する(ステップS214’)。生成された乱数r10は、第八入力情報計算部44’、第四リスト情報計算部45’及び第四リスト記憶部46’に送られる。
第七入力情報計算部43’は、第七入力情報g4=gr9を計算する(ステップS215’)。計算された第七入力情報g4は、送信部18’に送られる。
第八入力情報計算部44’は、第八入力情報h4=μh r10σhd2を計算する(ステップS216’)。計算された第八入力情報h4は、送信部18’に送られる。
送信部18’は、第七入力情報g4及び第八入力情報h4を計算装置2’に送信する(ステップS217’)。
計算装置2’の受信部51’(図14)は、第七入力情報g4及び第八入力情報h4を受信する(ステップS218’)。
第四出力情報計算部56’は、第七入力情報g4及び第八入力情報h4を用いて計算を行い、その計算結果を第四出力情報z4とする(ステップS219’)。z4は、送信部52’に送られる。
第四出力情報計算部56’は、θ(g4,h4)を計算可能である。第四出力情報計算部56’による計算の結果がθ(g4,h4)であることもあれば、θ(g4,h4)でないこともある。
送信部52’は、第四出力情報z4を依頼装置1’に送信する(ステップS220’)。
依頼装置1’の受信部17’(図12)は、第四出力情報z4を受信する(ステップS221)。受信した第四出力情報z4は、第四リスト情報計算部45’に送られる。ここでは、第四出力情報z4は群Fの元であるとする。
第四リスト情報計算部45’は、乱数r9、乱数r10及び第四出力情報z4を用いて、z4ν’-r9r10を計算する(ステップS222’)。計算されたz4ν’-r9r10は、第四リスト記憶部46’に送られる。
乱数d2と、乱数r9と、z4ν-r9r10とから構成される情報の組(d2,r9,z4ν’-r9r10)が、リストL4に追加される。この例では、第四リスト記憶部46’に、情報の組(d2,r9,z4ν-r9r10)が記憶される(ステップS223’)。
第二判定部48’は、第三リスト記憶部36’から読み込んだ情報の組の第一成分をs3とし、第二成分をw3とし、第四リスト記憶部46’から読み込んだ情報の組の第一成分をt4とし、第二成分をs4とし、第三成分をw4として、これらの情報の組が(w3)^(t4s4s3 -1)=w4の関係を満たすかを判定する(ステップS224’)。
第二判定部48’は、上記の関係を満たす場合には、(w3)^(s3 -1)を出力する(ステップS225’)。ここで、(w3)^(s3 -1)=θ(g,h)となる。(w3)^(s3 -1)=θ(g,h)となる理由については後述する。
上記の関係を満たさない場合には、ステップS21’に戻る。
まず、randomizable samplerと呼ばれる確率変数SX(d)について説明する。w∈Fに関する誤差Xのrandomizable samplerである確率変数SX(d)は、SX(d)=wdXである。dは自然数である。
R1,R2,R1’及びR2’を乱数として、計算装置がgR1及びhdμh R2を用いて行う計算の計算結果をB(gR1,hdμh R2)(計算装置が依頼装置に返す計算結果をzとすると、z=B(gR1,hdμh R2)である。)とし、群Fに値を持つ確率変数XをX=B(gR’1,μh R’2)1/R’1θ(g,μh R’2)-1と定義すると、SX(d)=z(1/R1)ν’-R2は、θ(g,h)に関する誤差Xのrandomizable samplerとなる。
第五実施形態の代理計算システムは、ステップS13’、ステップS110’及びステップS111’が第四実施形態の代理計算システムとは異なり、他の部分については第四実施形態の代理計算システムと同様である。以下、第四実施形態と異なる部分を中心に説明する。
第一リスト情報計算部15’は、z1ν-r1r2ではなく、乱数r1及び乱数r2を用いてr1r2を計算して、その計算結果を第一リスト記憶部16’に送る(ステップS110’)。
第一リスト記憶部16’には、情報の組(r2,z1ν-r1r2)ではなく、計算されたr1r2と計算装置2’から受信したz1∈Fとから構成される情報の組(r1r2,z1)が記憶される(ステップS111’)。
第六実施形態の代理計算システムは、ステップS24’、ステップS210’及びステップS211’が第四実施形態の代理計算システムとは異なり、他の部分については第四実施形態の代理計算システムと同様である。以下、第四実施形態と異なる部分を中心に説明する。
第三リスト情報計算部35’は、z3ν’-r6r7ではなく、乱数r6及び乱数r7を用いてr6r7を計算する(ステップS210’)。
第三リスト記憶部36’には、情報の組(r6,z3ν’-r6r7)ではなく、計算されたr6r7と計算装置2’から受信したz3∈Fとから構成される情報の組(r6r7,z3)が記憶される(ステップS211’)。
第七実施形態の代理計算システムは、ステップS125’及びステップS214’が第四実施形態の代理計算システムとは異なり、他の部分については第四実施形態の代理計算システムと同様である。以下、第四実施形態と異なる部分を中心に説明する。
第一判定部28’は、上記の関係を満たす場合には、t1s2をσに代入し、w2をν’に代入する(ステップS125’)。
第十乱数生成部42’は、乱数r9を用いて-r9 -1を計算してr10とする(ステップS214’)。
第三リスト記憶部36’には、1と上記計算されたz3ν’-r6r7とから構成される情報の組(1,z3ν’-r6r7)が記憶される(ステップS211’)。
群G、群Hにおいて非自明べき根の計算が困難であるならば、第四実施形態と比較して安全性は低下しない。
第八実施形態の代理計算システムは、ステップS113’が第四実施形態の代理計算システムとは異なり、他の部分については第四実施形態の代理計算システムと同様である。以下、第四実施形態と異なる部分を中心に説明する。
第四乱数生成部21’は、乱数r5を用いて-r5 -1を計算してr4とする(ステップS113’)。
このように、乱数r5を用いて乱数r4を計算することにより乱数を生成する回数を減らすことができる。
第九実施形態の代理計算システムは、依頼装置1’が図12に破線で示された事前計算部29’を更に含み、ステップS115’が第四実施形態の代理計算システムとは異なり、他の部分については第四実施形態の代理計算システムと同様である。以下、第四実施形態と異なる部分を中心に説明する。
第三入力情報計算部23’は、事前計算されたgd1を用いて、g2=μg r4gd1の計算を行う(ステップS115’)。
第十実施形態の代理計算システムは、依頼装置1’が図13に破線で示された事前計算部49’を更に含み、ステップS216’が第四実施形態の代理計算システムとは異なり、他の部分については第四実施形態の代理計算システムと同様である。以下、第四実施形態と異なる部分を中心に説明する。
第八入力情報計算部44’は、事前計算されたhd2を用いて、第八入力情報h4=μh r10σhd2の計算を行う(ステップS116’)。
第一乱数生成部11’、第二乱数生成部12’、第三乱数生成部27’、第四乱数生成部21’、第五乱数生成部22’、第六乱数生成部31’、第七乱数生成部32’、第八乱数生成部47’、第九乱数生成部41’及び第十乱数生成部42’のそれぞれは、一様乱数を生成することにより、代理計算システムの安全性が最も高くなる。しかし、求める安全性のレベルがそれほど高くない場合には、第一乱数生成部11’、第二乱数生成部12’、第三乱数生成部27’、第四乱数生成部21’、第五乱数生成部22’、第六乱数生成部31’、第七乱数生成部32’、第八乱数生成部47’、第九乱数生成部41’及び第十乱数生成部42’のそれぞれは、一様乱数ではない乱数を生成してもよい。
鍵の発行は以下のようにして行われる。鍵発行センタは、IDに対応して定まるHの元QIDについて、PID=sQIDを計算してIDの保持者に対して通知する。PIDはIDの保持者の秘密鍵である。このとき、復号関数f:G→Fは、f(x)=τ(x,PID)で定義される。
Claims (19)
- G,Hを巡回群、fを群Hの元xを群Gへ写す関数、X1,X2を群Gに値を持つ確率変数、確率変数X1の実現値をx1、確率変数X2の実現値をx2として、
互いに素である2つの自然数a,bを用いて、a’a+b’b=1の関係を満たす整数a’,b’を計算する整数計算部と、
f(x)bx1を計算可能であり、その計算結果をuとする第一乱数化可能標本器と、
u’=uaを計算する第一べき乗計算部と、
f(x)ax2を計算可能であり、その計算結果をvとする第二乱数化可能標本器と、
v’=vbを計算する第二べき乗計算部と、
u’=v’であるか判定する判定部と、
u’=v’であると判定された場合には、ub’va’を計算する最終計算部と、
を含む代理計算システム。 - 請求項1の代理計算システムにおいて、
X3を群Gに値を持つ確率変数、確率変数X3の実現値をx3として、f(x)x3を計算可能であり、a=1あれば上記第二乱数化可能標本器に代わりその計算結果を上記vとし、b=1であれば上記第一乱数化可能標本器に代わりその計算結果を上記uとする標本器を更に含む、
代理計算システム。 - 請求項1の代理計算システムにおいて、
上記fを準同型写像、群Hの生成元をμh、群Hの位数をKH、ν=f(μh)として、
上記第一乱数化可能標本器は、0以上KH未満の整数の乱数r1を生成する第一乱数生成部と、第一入力情報μh r1xbを計算する第一入力情報計算部と、上記第一入力情報μh r1xbを用いてf(μh r1xb)を計算可能でありその計算結果を第一出力情報z1とする第一出力情報計算部と、z1ν-r1を計算してその計算結果を上記uとする第一計算部とを含み、
上記第二乱数化可能標本器は、0以上KH未満の整数の乱数r2を生成する第二乱数生成部と、第二入力情報μh r2xaを計算する第二入力情報計算部と、上記第二入力情報μh r2xaを用いてf(μh r2xa)を計算可能でありその計算結果を第二出力情報z2とする第二出力情報計算部と、z2ν-r2を計算してその計算結果を上記vとする第二計算部とを含む、
代理計算システム。 - 請求項3の代理計算システムにおいて、
0以上KH未満の整数の乱数r3を生成する第三乱数生成部と、第三入力情報xr3を計算する第三入力情報計算部と、上記第三入力情報xr3を用いてf(xr3)を計算可能でありその計算結果を第三出力情報z3とする第三出力情報計算部と、z3 1/r3を計算してa=1あれば上記第二乱数化可能標本器に代わりその計算結果を上記vとしb=1であれば上記第一乱数化可能標本器に代わりその計算結果を上記uとする第三計算部とを含む標本器を更に含む、
代理計算システム。 - 請求項1の代理計算システムにおいて、
群H=G×G、上記fを準同型写像、群Gの生成元をμg、群Gの位数をKG、x=(c1,c2),(V,W)を群Hの元、f(V,W)=Yとして、
上記第一乱数化可能標本器は、0以上KG未満の整数の乱数r4を生成する第四乱数生成部と、0以上KG未満の整数の乱数r5を生成する第五乱数生成部と、第四入力情報c1 bVr4μg r5を計算する第四入力情報計算部と、第五入力情報c2 bWr4を計算する第五入力情報計算部と、上記第四入力情報c1 bVr4μg r5及び上記第五入力情報c2 bWr4を用いてf(c1 bVr4μg r5,c2 bWr4)を計算可能でありその計算結果を第四出力情報z4とする第四出力情報計算部と、z4Y-r4μg -r5を計算してその計算結果を上記uとする第四計算部とを含み、
上記第二乱数化可能標本器は、0以上KG未満の整数の乱数r6を生成する第六乱数生成部と、0以上KG未満の整数の乱数r7を生成する第七乱数生成部と、第六入力情報c1 aVr6μg r7を計算する第六入力情報計算部と、第七入力情報c2 aWr6を計算する第七入力情報計算部と、上記第六入力情報c1 aVr6μg r7及び上記第七入力情報c2 aWr6を用いてf(c1 aVr6μg r7,c2 aWr6)を計算可能でありその計算結果を第五出力情報z5とする第五出力情報計算部と、z5Y-r6μg -r7を計算してその計算結果を上記vとする第五計算部とを含む、
代理計算システム。 - G,Hを巡回群、fを群Hの元xを群Gへ写す関数、X1,X2を群Gに値を持つ確率変数、確率変数X1の実現値をx1、確率変数X2の実現値をx2として、
整数計算部が、互いに素である2つの自然数a,bを用いて、a’a+b’b=1の関係を満たす整数a’,b’を計算する整数計算ステップと、
第一乱数化可能標本器が、f(x)bx1を計算可能であり、その計算結果をuとする第一乱数化可能標本抽出ステップと、
第一べき乗計算部が、u’=uaを計算する第一べき乗計算ステップと、
第二乱数化可能標本器が、f(x)ax2を計算可能であり、その計算結果をvとする第二乱数化可能標本抽出ステップと、
第二べき乗計算部が、v’=vbを計算する第二べき乗計算ステップと、
判定部が、u’=v’であるか判定する判定ステップと、
最終計算部が、u’=v’であると判定された場合には、ub’va’を計算する最終計算ステップと、
を含む代理計算方法。 - G,Hを巡回群、fを群Hの元xを群Gへ写す関数、X1,X2を群Gに値を持つ確率変数、確率変数X1の実現値をx1、確率変数X2の実現値をx2として、
互いに素である2つの自然数a,bを用いて、a’a+b’b=1の関係を満たす整数a’,b’を計算する整数計算部と、
f(x)bx1を計算可能な第一乱数化可能標本器による計算結果uを用いてu’=uaを計算する第一べき乗計算部と、
f(x)ax2を計算可能な第二乱数化可能標本器による計算結果vを用いてv’=vbを計算する第二べき乗計算部と、
u’=v’であるか判定する判定部と、
u’=v’であると判定された場合には、ub’va’を計算する最終計算部と、
を含む依頼装置。 - 依頼装置が計算装置に依頼した計算の結果を用いてθ(g,h)を計算する代理計算システムにおいて、
G、H及びFを巡回群とし、写像θ:G×H→Fを双準同型写像とし、gを群Gの元とし、hを群Hの元とし、KGを群Gの位数とし、KHを群Hの位数とし、μgを群Gの生成元とし、μhを群Hの生成元とし、ν=θ(μg,μg)とし、kを自然数のセキュリティパラメータとし、K=2kとして、
上記依頼装置は、
0以上KG未満の整数の乱数r1を生成する第一乱数生成部と、
0以上KH未満の整数の乱数r2を生成する第二乱数生成部と、
第一入力情報g1=μg r1gを計算する第一入力情報計算部と、
第二入力情報h1=μh r2を計算する第二入力情報計算部と、
上記計算装置から受信したz1∈Fを用いて、z1ν-r1r2を計算する第一リスト情報計算部と、
上記乱数r2と上記計算されたz1ν-r1r2とから構成される情報の組(r2,z1ν-r1r2)が記憶される第一リスト記憶部と、
0以上K未満の整数の一様乱数であるd1を生成する第三乱数生成部と、
0以上KG未満の整数の一様乱数であるr4を生成する第四乱数生成部と、
0以上KH未満の整数の一様乱数であるr5を生成する第五乱数生成部と、
第三入力情報g2=μg r4gd1を計算する第三入力情報計算部と、
第四入力情報h2=μh r5を計算する第四入力情報計算部と、
上記計算装置から受信したz2∈Fを用いて、z2ν-r4r5を計算する第二リスト情報計算部と、
上記d1と上記r5と上記計算されたz2ν-r4r5とから構成される情報の組(d1,r5,z2ν-r4r5)が記憶される第二リスト記憶部と、
上記第一リスト記憶部から読み込んだ情報の組の第一成分をs1とし、第二成分をw1とし、上記第二リスト記憶部から読み込んだ情報の組の第一成分をt2とし、第二成分をs2とし、第三成分をw2として、これらの情報の組が(w1)^(t2s2s1 -1)=w2の関係を満たすかを判定し、その関係を満たす場合には、s1をσに代入し、w1をν’に代入する第一判定部と、
0以上KG未満の整数の一様乱数であるr6を生成する第六乱数生成部と、
0以上KH未満の整数の一様乱数であるr7を生成する第七乱数生成部と、
第五入力情報g3=gr6を計算する第五入力情報計算部と、
第六入力情報h3=μh r7σhを計算する第六入力情報計算部と、
上記計算装置から受信したz3∈Fを用いて、z3ν’-r6r7を計算する第三リスト情報計算部と、
上記r6と上記計算されたz3ν’-r6r7とから構成される情報の組(r6,z3ν’-r6r7)が記憶される第三リスト記憶部と、
0以上K未満の整数の一様乱数であるd2を生成する第八乱数生成部と、
0以上KG未満の整数の一様乱数であるr9を生成する第九乱数生成部と、
0以上KH未満の整数の一様乱数であるr10を生成する第十乱数生成部と、
第七入力情報g4=μg r9を計算する第七入力情報計算部と、
第八入力情報h4=μh r10σhd2を計算する第八入力情報計算部と、
上記計算装置から受信したz4∈Fを用いて、z4ν’-r9r10を計算する第四リスト情報計算部と、
上記d2と上記r9と上記計算されたz4ν’-r9r10とから構成される情報の組(d2,r9,z4ν’-r9r10)が記憶される第四リスト記憶部と、
上記第三リスト記憶部から読み込んだ情報の組の第一成分をs3とし、第二成分をw3とし、上記第四リスト記憶部から読み込んだ情報の組の第一成分をt4とし、第二成分をs4とし、第三成分をw4として、これらの情報の組が(w3)^(t4s4s3 -1)=w4の関係を満たすかを判定し、その関係を満たす場合には、(w3)^(s3 -1)を出力する第二判定部と、
を含み、
上記計算装置は、
上記依頼装置から受信したg1及びh1を用いてθ(g1,h1)を計算可能であり、その計算結果を上記z1として出力する第一出力情報計算部と、
上記依頼装置から受信したg2及びh2を用いてθ(g2,h2)を計算可能であり、その計算結果を上記z2として出力する第二出力情報計算部と、
上記依頼装置から受信したg3及びh3を用いてθ(g3,h3)を計算可能であり、その計算結果を上記z3として出力する第三出力情報計算部と、
上記依頼装置から受信したg4及びh4を用いてθ(g4,h4)を計算可能であり、その計算結果を上記z4として出力する第四出力情報計算部と、
を含む、
代理計算システム。 - 請求項8の代理計算システムにおいて、
上記第一入力情報計算部は、第一入力情報g1=gr1を計算し、
上記第一リスト情報計算部は、上記r1及び上記r2を用いてr1r2を計算し、
上記第一リスト記憶部には、上記計算されたr1r2と上記計算装置から受信したz1∈Fとから構成される情報の組(r1r2,z1)が記憶される、
ことを特徴とする代理計算システム。 - 請求項8又は9に記載の代理計算システムにおいて、
上記第六入力情報計算部は、第六入力情報h3=hr7を計算し、
上記第三リスト情報計算部は、上記r6及び上記r7を用いてr6r7を計算し、
上記第三リスト記憶部には、上記計算されたr6r7と上記計算装置から受信したz3∈Fとから構成される情報の組(r6r7,z3)が記憶される、
ことを特徴とする代理計算システム。 - 請求項8から10の何れかに記載の代理計算システムにおいて、
上記第一判定部は、上記の関係を満たす場合には、t1s2をσに代入し、w2をν’に代入し、
上記第十乱数生成部は、上記r9を用いて-r9 -1を計算してr10とする、
ことを特徴とする代理計算システム。 - 請求項11に記載の代理計算システムにおいて、
上記第七乱数生成部は、上記r6を用いて-r6 -1を計算してr7とし、
上記第三リスト記憶部には、1と上記計算されたz3ν’-r6r7とから構成される情報の組(1,z3ν’-r6r7)が記憶される、
ことを特徴とする代理計算システム。 - 請求項8から12の何れかに記載の代理計算システムにおいて、
上記第四乱数生成部は、上記r5を用いて-r5 -1を計算してr4とする、
ことを特徴とする代理計算システム。 - 請求項8から13の何れかに記載の代理計算システムにおいて、
上記d1を用いてgd1を計算する事前計算部を更に含み、
上記第三入力情報計算部は、上記事前計算されたgd1を用いて、上記g2の計算を行う、 ことを特徴とする代理計算システム。 - 請求項8から14の何れかに記載の代理計算システムにおいて、
上記d2を用いてhd2を計算する事前計算部を更に含み、
上記第八入力情報計算部は、上記事前計算されたhd2を用いて、上記h4の計算を行う、
ことを特徴とする代理計算システム。 - 依頼装置が計算装置に依頼した計算の結果を用いてθ(g,h)を計算する代理計算方法において、
G、H及びFを巡回群とし、写像θ:G×H→Fを双準同型写像とし、gを群Gの元とし、hを群Hの元とし、KGを群Gの位数とし、KHを群Hの位数とし、μgを群Gの生成元とし、μhを群Hの生成元とし、ν=θ(μg,μg)とし、kを整数のセキュリティパラメータとし、K=2kとして、
上記依頼装置の第一乱数生成部が、0以上KG未満の整数の乱数r1を生成する第一乱数生成ステップと、
上記依頼装置の第二乱数生成部が、0以上KH未満の整数の乱数r2を生成する第二乱数生成ステップと、
上記依頼装置の第一入力情報計算部が、第一入力情報g1=μg r1gを計算する第一入力情報計算ステップと、
上記依頼装置の第二入力情報計算部が、第二入力情報h1=μh r2を計算する第二入力情報計算ステップと、
上記計算装置の第一出力情報計算部が、上記依頼装置から受信したg1及びh1を用いてθ(g1,h1)を計算可能であり、その計算結果を上記z1として出力する第一出力情報計算ステップと、
上記依頼装置の第一リスト情報計算部が、上記計算装置から受信したz1∈Fを用いて、z1ν-r1r2を計算する第一リスト情報計算ステップと、
上記依頼装置の第一リスト記憶部に、上記乱数r2と上記計算されたz1ν-r1r2とから構成される情報の組(r2,z1ν-r1r2)が記憶されるステップと、
上記依頼装置の第三乱数生成部が、0以上K未満の整数の一様乱数であるd1を生成する第三乱数生成ステップと、
上記依頼装置の第四乱数生成部が、0以上KG未満の整数の一様乱数であるr4を生成する第四乱数生成ステップと、
上記依頼装置の第五乱数生成部が、0以上KH未満の整数の一様乱数であるr5を生成する第五乱数生成ステップと、
上記依頼装置の第三入力情報計算部が、第三入力情報g2=μg r4gd1を計算する第三入力情報計算ステップと、
上記依頼装置の第四入力情報計算部が、第四入力情報h2=μh r5を計算する第四入力情報計算ステップと、
上記計算装置の第二出力情報計算部が、上記依頼装置から受信したg2及びh2を用いてθ(g2,h2)を計算可能であり、その計算結果を上記z2として出力する第二出力情報計算ステップと、
上記依頼装置の第二リスト情報計算部が、上記計算装置から受信したz2∈Fを用いて、z2ν-r4r5を計算する第二リスト情報計算ステップと、
上記依頼装置の第二リスト記憶部に、上記d1と上記r5と上記計算されたz2ν-r4r5とから構成される情報の組(d1,r5,z2ν-r4r5)が記憶されるステップと、
上記依頼装置の第一判定部が、上記第一リスト記憶部から読み込んだ情報の組の第一成分をs1とし、第二成分をw1とし、上記第二リスト記憶部から読み込んだ情報の組の第一成分をt2とし、第二成分をs2とし、第三成分をw2として、これらの情報の組が(w1)^(t2s2s1 -1)=w2の関係を満たすかを判定し、その関係を満たす場合には、s1をσに代入し、w1をν’に代入する第一判定ステップと、
上記依頼装置の第六乱数生成部が、0以上KG未満の整数の一様乱数であるr6を生成する第六乱数生成ステップと、
上記依頼装置の第七乱数生成部が、0以上KH未満の整数の一様乱数であるr7を生成する第七乱数生成ステップと、
上記依頼装置の第五入力情報計算部が、第五入力情報g3=gr6を計算する第五入力情報計算ステップと、
上記依頼装置の第六入力情報計算部が、第六入力情報h3=μh r7σhを計算する第六入力情報計算ステップと、
上記計算装置の第三出力情報計算部が、上記依頼装置から受信したg3及びh3を用いてθ(g3,h3)を計算可能であり、その計算結果を上記z3として出力する第三出力情報計算ステップと、
上記依頼装置の第三リスト情報計算部が、上記計算装置から受信したz3∈Fを用いて、z3ν’-r6r7を計算する第三リスト情報計算ステップと、
上記依頼装置の第三リスト記憶部に、上記r6と上記計算されたz3ν’-r6r7とから構成される情報の組(r6,z3ν’-r6r7)が記憶されるステップと、
上記依頼装置の第八乱数生成部が、0以上K未満の整数の一様乱数であるd2を生成する第八乱数生成ステップと、
上記依頼装置の第九乱数生成部が、0以上KG未満の整数の一様乱数であるr9を生成する第九乱数生成ステップと、
上記依頼装置の第十乱数生成部が、0以上KH未満の整数の一様乱数であるr10を生成する第十乱数生成ステップと、
上記依頼装置の第七入力情報計算部が、第七入力情報g4=μg r9を計算する第七入力情報計算ステップと、
上記依頼装置の第八入力情報計算部が、第八入力情報h4=μh r10σhd2を計算する第八入力情報計算ステップと、
上記計算装置の第四出力情報計算部が、上記依頼装置から受信したg4及びh4を用いてθ(g4,h4)を計算可能であり、その計算結果を上記z4として出力する第四出力情報計算ステップと、
上記依頼装置の第四リスト情報計算部が、上記計算装置から受信したz4∈Fを用いて、z4ν’-r9r10を計算する第四リスト情報計算ステップと、
上記依頼装置の第四リスト記憶部に、上記d2と上記r9と上記計算されたz4ν’-r9r10とから構成される情報の組(d2,r9,z4ν’-r9r10)が記憶されるステップと、
上記依頼装置の第二判定部が、上記第三リスト記憶部から読み込んだ情報の組の第一成分をs3とし、第二成分をw3とし、上記第四リスト記憶部から読み込んだ情報の組の第一成分をt4とし、第二成分をs4とし、第三成分をw4として、これらの情報の組が(w3)^(t4s4s3 -1)=w4の関係を満たすかを判定し、その関係を満たす場合には、(w3)^(s3 -1)を出力する第二判定ステップと、
を含む代理計算方法。 - 依頼装置が計算装置に依頼した計算の結果を用いてθ(g,h)を計算する代理計算システムの依頼装置において、
G、H及びFを巡回群とし、写像θ:G×H→Fを双準同型写像とし、gを群Gの元とし、hを群Hの元とし、KGを群Gの位数とし、KHを群Hの位数とし、μgを群Gの生成元とし、μhを群Hの生成元とし、ν=θ(μg,μg)とし、kを自然数のセキュリティパラメータとし、K=2kとして、
0以上KG未満の整数の乱数r1を生成する第一乱数生成部と、
0以上KH未満の整数の乱数r2を生成する第二乱数生成部と、
第一入力情報g1=μg r1gを計算する第一入力情報計算部と、
第二入力情報h1=μh r2を計算する第二入力情報計算部と、
上記計算装置から受信したz1∈Fを用いて、z1ν-r1r2を計算する第一リスト情報計算部と、
上記乱数r2と上記計算されたz1ν-r1r2とから構成される情報の組(r2,z1ν-r1r2)が記憶される第一リスト記憶部と、
0以上K未満の整数の一様乱数であるd1を生成する第三乱数生成部と、
0以上KG未満の整数の一様乱数であるr4を生成する第四乱数生成部と、
0以上KH未満の整数の一様乱数であるr5を生成する第五乱数生成部と、
第三入力情報g2=μg r4gd1を計算する第三入力情報計算部と、
第四入力情報h2=μh r5を計算する第四入力情報計算部と、
上記計算装置から受信したz2∈Fを用いて、z2ν-r4r5を計算する第二リスト情報計算部と、
上記d1と上記r5と上記計算されたz2ν-r4r5とから構成される情報の組(d1,r5,z2ν-r4r5)が記憶される第二リスト記憶部と、
上記第一リスト記憶部から読み込んだ情報の組の第一成分をs1とし、第二成分をw1とし、上記第二リスト記憶部から読み込んだ情報の組の第一成分をt2とし、第二成分をs2とし、第三成分をw2として、これらの情報の組が(w1)^(t2s2s1 -1)=w2の関係を満たすかを判定し、その関係を満たす場合には、s1をσに代入し、w1をν’に代入する第一判定部と、
0以上KG未満の整数の一様乱数であるr6を生成する第六乱数生成部と、
0以上KH未満の整数の一様乱数であるr7を生成する第七乱数生成部と、
第五入力情報g3=gr6を計算する第五入力情報計算部と、
第六入力情報h3=μh r7σhを計算する第六入力情報計算部と、
上記計算装置から受信したz3∈Fを用いて、z3ν’-r6r7を計算する第三リスト情報計算部と、
上記r6と上記計算されたz3ν’-r6r7とから構成される情報の組(r6,z3ν’-r6r7)が記憶される第三リスト記憶部と、
0以上K未満の整数の一様乱数であるd2を生成する第八乱数生成部と、
0以上KG未満の整数の一様乱数であるr9を生成する第九乱数生成部と、
0以上KH未満の整数の一様乱数であるr10を生成する第十乱数生成部と、
第七入力情報g4=μg r9を計算する第七入力情報計算部と、
第八入力情報h4=μh r10σhd2を計算する第八入力情報計算部と、
上記計算装置から受信したz4∈Fを用いて、z4ν’-r9r10を計算する第四リスト情報計算部と、
上記d2と上記r9と上記計算されたz4ν’-r9r10とから構成される情報の組(d2,r9,z4ν’-r9r10)が記憶される第四リスト記憶部と、
上記第三リスト記憶部から読み込んだ情報の組の第一成分をs3とし、第二成分をw3とし、上記第四リスト記憶部から読み込んだ情報の組の第一成分をt4とし、第二成分をs4とし、第三成分をw4として、これらの情報の組が(w3)^(t4s4s3 -1)=w4の関係を満たすかを判定し、その関係を満たす場合には、(w3)^(s3 -1)を出力する第二判定部と、
を含む依頼装置。 - 請求項7又は請求項17の依頼装置の各部としてコンピュータを機能させるためのプログラム。
- 請求項18の依頼装置プログラムが記録されたコンピュータ読み取り可能な記録媒体。
Priority Applications (5)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201180005420.3A CN102687184B (zh) | 2010-01-12 | 2011-01-11 | 代理计算系统、方法及代理计算委托装置 |
| EP11732862.5A EP2525341B1 (en) | 2010-01-12 | 2011-01-11 | Proxy calculation system, proxy calculation method, proxy calculation requesting apparatus, and proxy calculation program and recording medium therefor |
| JP2011549975A JP5379869B2 (ja) | 2010-01-12 | 2011-01-11 | 代理計算システム、方法、依頼装置、プログラム及びその記録媒体 |
| KR1020127017347A KR101344352B1 (ko) | 2010-01-12 | 2011-01-11 | 대리 계산 시스템, 방법, 의뢰 장치, 프로그램 및 그 기록 매체 |
| US13/520,491 US9037623B2 (en) | 2010-01-12 | 2011-01-11 | Proxy calculation system, proxy calculation method, proxy calculation requesting apparatus, and proxy calculation program and recording medium therefor |
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2010003924 | 2010-01-12 | ||
| JP2010-003924 | 2010-01-12 | ||
| JP2010007835 | 2010-01-18 | ||
| JP2010-007835 | 2010-01-18 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2011086992A1 true WO2011086992A1 (ja) | 2011-07-21 |
Family
ID=44304266
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2011/050278 Ceased WO2011086992A1 (ja) | 2010-01-12 | 2011-01-11 | 代理計算システム、方法、依頼装置、プログラム及びその記録媒体 |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US9037623B2 (ja) |
| EP (2) | EP2525341B1 (ja) |
| JP (1) | JP5379869B2 (ja) |
| KR (1) | KR101344352B1 (ja) |
| CN (1) | CN102687184B (ja) |
| WO (1) | WO2011086992A1 (ja) |
Cited By (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2011227193A (ja) * | 2010-04-16 | 2011-11-10 | Nippon Telegr & Teleph Corp <Ntt> | 環準同型を計算可能な公開鍵暗号方法、環準同型を計算可能な公開鍵暗号システム、送信装置、処理装置、受信装置、それらのプログラム及び記録媒体 |
| JP2012220834A (ja) * | 2011-04-12 | 2012-11-12 | Nippon Telegr & Teleph Corp <Ntt> | 再暗号化システム、再暗号化装置、再暗号化方法、能力提供方法、及びプログラム |
| JP2012237881A (ja) * | 2011-05-12 | 2012-12-06 | Nippon Telegr & Teleph Corp <Ntt> | 情報提供システム、仲介装置、情報提供装置、仲介方法、情報提供方法、及びプログラム |
| JP5491638B2 (ja) * | 2010-10-26 | 2014-05-14 | 日本電信電話株式会社 | 代理計算システム、計算装置、能力提供装置、代理計算方法、能力提供方法、プログラム、及び記録媒体 |
| WO2014112523A1 (ja) | 2013-01-16 | 2014-07-24 | 日本電信電話株式会社 | 復号サービス提供装置、処理装置、安全性評価装置、プログラム、および記録媒体 |
| WO2015008607A1 (ja) | 2013-07-18 | 2015-01-22 | 日本電信電話株式会社 | 復号装置、復号能力提供装置、それらの方法、およびプログラム |
| WO2015008605A1 (ja) | 2013-07-18 | 2015-01-22 | 日本電信電話株式会社 | 計算装置、計算方法、およびプログラム |
| WO2015008769A1 (ja) | 2013-07-18 | 2015-01-22 | 日本電信電話株式会社 | ディレクトリサービス装置、クライアント装置、鍵クラウドシステム、それらの方法、およびプログラム |
| WO2015056601A1 (ja) | 2013-10-16 | 2015-04-23 | 日本電信電話株式会社 | 鍵装置、鍵クラウドシステム、復号方法、およびプログラム |
| US10275960B2 (en) | 2014-05-13 | 2019-04-30 | Nippon Telegraph And Telephone Corporation | Security system, management apparatus, permission apparatus, terminal apparatus, security method and program |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP2667371B8 (en) * | 2011-03-04 | 2018-03-07 | Nippon Telegraph And Telephone Corporation | Proxy calculation system, method, request device, and program |
| US9231757B2 (en) * | 2012-12-05 | 2016-01-05 | Inha-Industry Partnership Institute | Proxy signature scheme |
| EP3232603B1 (en) * | 2015-01-16 | 2023-05-31 | Nippon Telegraph and Telephone Corporation | Key-exchange method, key-exchange system, terminal device, and program |
| US12099997B1 (en) | 2020-01-31 | 2024-09-24 | Steven Mark Hoffberg | Tokenized fungible liabilities |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2002082609A (ja) * | 2000-09-06 | 2002-03-22 | Toyo Commun Equip Co Ltd | 依頼計算を用いた演算装置、及び記録媒体 |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0381523A3 (en) * | 1989-02-02 | 1993-03-03 | Kabushiki Kaisha Toshiba | Server-aided computation method and distributed information processing unit |
| US6509728B1 (en) * | 1998-05-28 | 2003-01-21 | Anritsu Corporation | Spectrum analyzer having function of displaying amplitude probability distribution effectively |
| FR2877453A1 (fr) | 2004-11-04 | 2006-05-05 | France Telecom | Procede de delegation securisee de calcul d'une application bilineaire |
-
2011
- 2011-01-11 US US13/520,491 patent/US9037623B2/en active Active
- 2011-01-11 KR KR1020127017347A patent/KR101344352B1/ko active Active
- 2011-01-11 JP JP2011549975A patent/JP5379869B2/ja active Active
- 2011-01-11 EP EP11732862.5A patent/EP2525341B1/en active Active
- 2011-01-11 EP EP14178947.9A patent/EP2808860A1/en not_active Ceased
- 2011-01-11 CN CN201180005420.3A patent/CN102687184B/zh active Active
- 2011-01-11 WO PCT/JP2011/050278 patent/WO2011086992A1/ja not_active Ceased
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2002082609A (ja) * | 2000-09-06 | 2002-03-22 | Toyo Commun Equip Co Ltd | 依頼計算を用いた演算装置、及び記録媒体 |
Non-Patent Citations (8)
| Title |
|---|
| DAN BONEH; MATT FRANKLIN: "Identity-Based Encryption from the Weil Pairing", CRYPTO 2001, 2001, pages 213 - 229 |
| M. BLUM; M. LUBY; R. RUBINFELD: "Self-Testing/Correcting with Applications to Numerical Problems", STOC, 1990, pages 73 - 83 |
| MANUEL BLUM ET AL.: "Reflections on the Pentium Division Bug", IEEE TRANSACTIONS ON COMPUTERS, vol. 45, no. 4, April 1996 (1996-04-01), pages 385 - 393, XP000584783, Retrieved from the Internet <URL:http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=494097> [retrieved on 20110204] * |
| See also references of EP2525341A4 |
| TSUTOMU MATSUMOTO ET AL.: "How to ask and verify oracles for speeding up secret computations. Part 3", IEICE TECHNICAL REPORT, vol. 89, no. 215, 25 September 1989 (1989-09-25), pages 25 - 28 * |
| TSUTOMU MATSUMOTO ET AL.: "How to ask and verify oracles for sppeding up secret computations", IEICE TECHNICAL REPORT, vol. 89, no. 45, 19 May 1989 (1989-05-19), pages 21 - 28 * |
| TSUTOMU MATSUMOTO ET AL.: "How to ask and verity oracles for speeding up secret computations. Part 2", IEICE TECHNICAL REPORT, vol. 89, no. 145, 21 July 1989 (1989-07-21), pages 13 - 20 * |
| TSUYOSHI YAMAMOTO ET AL.: "Jun Dogata Shazo ni Taisuru Jiko Teisei ni Tsuite", 2010 NEN SYMPOSIUM ON CRYPTOGRAPHY AND INFORMATION SECURITY GAIYOSHU, 19 January 2010 (2010-01-19) * |
Cited By (17)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2011227193A (ja) * | 2010-04-16 | 2011-11-10 | Nippon Telegr & Teleph Corp <Ntt> | 環準同型を計算可能な公開鍵暗号方法、環準同型を計算可能な公開鍵暗号システム、送信装置、処理装置、受信装置、それらのプログラム及び記録媒体 |
| JP5491638B2 (ja) * | 2010-10-26 | 2014-05-14 | 日本電信電話株式会社 | 代理計算システム、計算装置、能力提供装置、代理計算方法、能力提供方法、プログラム、及び記録媒体 |
| JP2012220834A (ja) * | 2011-04-12 | 2012-11-12 | Nippon Telegr & Teleph Corp <Ntt> | 再暗号化システム、再暗号化装置、再暗号化方法、能力提供方法、及びプログラム |
| JP2012237881A (ja) * | 2011-05-12 | 2012-12-06 | Nippon Telegr & Teleph Corp <Ntt> | 情報提供システム、仲介装置、情報提供装置、仲介方法、情報提供方法、及びプログラム |
| US9735963B2 (en) | 2013-01-16 | 2017-08-15 | Nippon Telegraph And Telephone Corporation | Decryption service providing device, processing device, safety evaluation device, program, and recording medium |
| WO2014112523A1 (ja) | 2013-01-16 | 2014-07-24 | 日本電信電話株式会社 | 復号サービス提供装置、処理装置、安全性評価装置、プログラム、および記録媒体 |
| US10033711B2 (en) | 2013-07-18 | 2018-07-24 | Nippon Telegraph And Telephone Corporation | Directory service device, client device, key cloud system, method thereof, and program |
| WO2015008769A1 (ja) | 2013-07-18 | 2015-01-22 | 日本電信電話株式会社 | ディレクトリサービス装置、クライアント装置、鍵クラウドシステム、それらの方法、およびプログラム |
| CN105393491A (zh) * | 2013-07-18 | 2016-03-09 | 日本电信电话株式会社 | 计算装置、计算方法以及程序 |
| WO2015008605A1 (ja) | 2013-07-18 | 2015-01-22 | 日本電信電話株式会社 | 計算装置、計算方法、およびプログラム |
| US9842086B2 (en) | 2013-07-18 | 2017-12-12 | Nippon Telegraph And Telephone Corporation | Calculation device, calculation method, and program |
| WO2015008607A1 (ja) | 2013-07-18 | 2015-01-22 | 日本電信電話株式会社 | 復号装置、復号能力提供装置、それらの方法、およびプログラム |
| US10163370B2 (en) | 2013-07-18 | 2018-12-25 | Nippon Telegraph And Telephone Corporation | Decoding apparatus, decoding capability providing apparatus, method thereof and program |
| CN105393491B (zh) * | 2013-07-18 | 2019-04-19 | 日本电信电话株式会社 | 计算装置、计算方法以及记录介质 |
| WO2015056601A1 (ja) | 2013-10-16 | 2015-04-23 | 日本電信電話株式会社 | 鍵装置、鍵クラウドシステム、復号方法、およびプログラム |
| US10686604B2 (en) | 2013-10-16 | 2020-06-16 | Nippon Telegraph And Telephone Corporation | Key device, key cloud system, decryption method, and program |
| US10275960B2 (en) | 2014-05-13 | 2019-04-30 | Nippon Telegraph And Telephone Corporation | Security system, management apparatus, permission apparatus, terminal apparatus, security method and program |
Also Published As
| Publication number | Publication date |
|---|---|
| EP2525341A4 (en) | 2014-01-08 |
| US20120323981A1 (en) | 2012-12-20 |
| EP2525341A1 (en) | 2012-11-21 |
| EP2808860A1 (en) | 2014-12-03 |
| JP5379869B2 (ja) | 2013-12-25 |
| CN102687184B (zh) | 2015-11-25 |
| CN102687184A (zh) | 2012-09-19 |
| JPWO2011086992A1 (ja) | 2013-05-20 |
| EP2525341B1 (en) | 2016-04-06 |
| KR20120101506A (ko) | 2012-09-13 |
| KR101344352B1 (ko) | 2013-12-24 |
| US9037623B2 (en) | 2015-05-19 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP5379869B2 (ja) | 代理計算システム、方法、依頼装置、プログラム及びその記録媒体 | |
| US12028454B2 (en) | Multi-party threshold authenticated encryption | |
| US10116443B1 (en) | Pairing verification in supersingular isogeny-based cryptographic protocols | |
| US10218504B1 (en) | Public key validation in supersingular isogeny-based cryptographic protocols | |
| US11804960B2 (en) | Distributed symmetric encryption | |
| CN113259329B (zh) | 一种数据不经意传输方法、装置、电子设备及存储介质 | |
| Fazio et al. | Homomorphic secret sharing from paillier encryption | |
| JP5736816B2 (ja) | 認証装置、認証方法、プログラム、及び署名生成装置 | |
| JP6349841B2 (ja) | 暗号文処理装置、暗号文処理方法、暗号文処理プログラムおよび情報処理装置 | |
| JP2020508021A (ja) | キー交換デバイス及び方法 | |
| JP6041864B2 (ja) | データの暗号化のための方法、コンピュータ・プログラム、および装置 | |
| Pal et al. | Offline witness encryption from witness PRF and randomized encoding in CRS model | |
| JP5314449B2 (ja) | 電子署名検証システム、電子署名装置、検証装置、電子署名検証方法、電子署名方法、検証方法、電子署名プログラム、検証プログラム | |
| JP5227764B2 (ja) | 電子署名検証システム、電子署名装置、検証装置、電子署名検証方法、電子署名方法、検証方法、電子署名プログラム、検証プログラム | |
| Yasuda et al. | Constructions for the IND-CCA1 secure fully homomorphic encryption | |
| US11005656B2 (en) | Embedding information in elliptic curve base point | |
| Dharminder et al. | A Novel Post-quantum Piekert’s Reconciliation-Based Forward Secure Authentication Key Agreement for Mobile Devices | |
| JP6267657B2 (ja) | 安全性強化方法、安全性強化システム、安全性強化装置、検証装置、およびプログラム | |
| Behnia | Efficient Post-Quantum and Compact Cryptographic Constructions for the Internet of Things | |
| Blanco et al. | Quantum Resistant Authentication Methods for Quantum Key Distribution | |
| Schneider | Basics of Efficient Secure Function Evaluation | |
| Thorncharoensri et al. | Fair multi-signature |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| WWE | Wipo information: entry into national phase |
Ref document number: 201180005420.3 Country of ref document: CN |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2011549975 Country of ref document: JP |
|
| ENP | Entry into the national phase |
Ref document number: 20127017347 Country of ref document: KR Kind code of ref document: A |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 13520491 Country of ref document: US |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2011732862 Country of ref document: EP |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |