US 12,412,487 B2
Secret calculation system, apparatus, method and program
Ryo Kikuchi, Musashino (JP); Dai Ikarashi, Musashino (JP); and Hiroki Sudo, Musashino (JP)
Assigned to NIPPON TELEGRAPH AND TELEPHONE CORPORATION, Tokyo (JP)
Appl. No. 18/574,762
Filed by NIPPON TELEGRAPH AND TELEPHONE CORPORATION, Tokyo (JP)
PCT Filed Jul. 8, 2021, PCT No. PCT/JP2021/025769
§ 371(c)(1), (2) Date Dec. 28, 2023,
PCT Pub. No. WO2023/281693, PCT Pub. Date Jan. 12, 2023.
Prior Publication US 2025/0131855 A1, Apr. 24, 2025
Int. Cl. H04L 29/06 (2006.01); G06F 17/16 (2006.01); G09C 5/00 (2006.01)
CPC G09C 5/00 (2013.01) [G06F 17/16 (2013.01)] 6 Claims
OG exemplary drawing
 
1. A secure computation system comprising a plurality of secure computation devices
in which m is a number of records and is an integer of 1 or more, k is a vector of a key k=(k1, . . . , km), f is a vector of a flag f=(f1, . . . , fm), [α] is a ciphertext of α with α set as any value or any vector, and a predetermined operation using α as a ciphertext is possible,
wherein the plurality of secure computation devices comprises processing circuitry configured to:
generate a ciphertext [f′] and a ciphertext [k′] of a vector f′ and a vector k′ obtained by sorting the vector f and the vector k, respectively, with a vector obtained by concatenating negative of the vector f and the vector k set as a key, using a ciphertext [f] of the vector f and a ciphertext [k] of the vector k;
generate a ciphertext [e′] of a vector e′ including ei (i=1, . . . , m) as an element by generating a ciphertext [e′m] of e′m such that e′i=0 is satisfied when f′i=1 and k′i≠k′i+1 or f′i=1 and f1+1=0 are satisfied or otherwise e′i=1 is satisfied, and e′m=0 is satisfied when f′m=1 is satisfied or otherwise e′m=1 is satisfied, with i=1, . . . , m−1 set, using the ciphertext [f′] and the ciphertext [k′];
generate a ciphertext [m′] of m′ with a result obtained by subtracting a number of records having a flag of 0 from the m set as m′, using at least the m;
generate a ciphertext [x] of a vector x including xi (i=1, . . . , m) as an element by generating a ciphertext [xi] of xi having a value of i when an element ei=0 is satisfied, the element ei being an element of the vector e, and a value of m′ when an element ei=1 is satisfied, the element ei being an element of the vector e, with i=1, . . . , m set, using the ciphertext [e′];
obtain a ciphertext [x′], a ciphertext [k″], and a ciphertext [e″] of a vector x′, a vector k″, and a vector e″ obtained by sorting the vector x, the vector k′, and the vector e′, respectively, with the vector e′ set as a key, using the ciphertext [e′], the ciphertext [x], and the ciphertext [k′];
generate a ciphertext [c] of a vector c including ci (i=1, . . . , m) as an element by generating a ciphertext [ci] of ci that is a value obtained by subtracting an element x′i−1 from an element x′i of the vector x′ with a ciphertext [x′1] of an element x′1 of the vector x′ set as a ciphertext [c1] and with i=2, . . . , m set, using the ciphertext [x″]; and
calculate a ciphertext [e′″] of a vector e′″ including a value obtained by subtracting each element of the vector e″ from 1, using the ciphertext [e″].