Secure joining system, method, secure computing apparatus and program

    公开(公告)号:US11888973B2

    公开(公告)日:2024-01-30

    申请号:US17267837

    申请日:2019-08-08

    摘要: A secure joining system is a secure joining system including a plurality of secure computing apparatuses. The plurality of secure computing apparatuses include a first vector joining unit, a first permutation calculation unit, a first vector generation unit, a second vector joining unit, a first permutation application unit, a second vector generation unit, a first inverse permutation application unit, a first vector extraction unit, a second permutation application unit, a third vector generation unit, a second inverse permutation application unit, a second vector extraction unit, a modified second table generation unit, a third permutation application unit, a fourth vector generation unit, a shifting unit, a third inverse permutation application unit, a bit inversion unit, a third vector extraction unit, a modified first table generation unit, a first table joining unit, and a first table formatting unit.

    Secret deduplication filter generation system, secret deduplication system, method for these, secret calculation apparatus, and program

    公开(公告)号:US11625363B2

    公开(公告)日:2023-04-11

    申请号:US16981472

    申请日:2019-03-14

    发明人: Dai Ikarashi

    IPC分类号: G06F16/17 G06F16/174

    摘要: A secure deduplication system, including a plurality of secure computation apparatuses, wherein the plurality of secure computation apparatuses include a plurality of permutation calculation parts 11n for generating a share {{σ}} of a permutation σ that stably sorts a vector v in ascending order, a plurality of permutation application parts 12n for generating a share [σ(v)] of a vector σ(v) obtained by applying the permutation σ to the vector v, a plurality of vector generation parts 13n for generating a share [e] of a vector e that has 1 as an element corresponding to a certain element when the certain element of the vector σ(v) and an element before the certain element are different, and has 0 otherwise, and a plurality of inverse permutation application parts 14n for generating a share [σ−1(e)] of a vector σ−1(e) obtained by applying an inverse permutation σ−1 of the permutation σ to the vector e.

    Secure aggregate order system, secure computation apparatus, secure aggregate order method, and program

    公开(公告)号:US11240012B2

    公开(公告)日:2022-02-01

    申请号:US17047432

    申请日:2019-04-17

    发明人: Dai Ikarashi

    摘要: An aggregate order is efficiently obtained while keeping confidentiality. An inverse permutating part (12) generates a share of a vector representing an inversely permutated cross tabulation by applying inverse permutation to a cross tabulation of a table, the inverse permutation being a permutation which moves elements so that, when the table is grouped based on a key attribute, last elements of each group are sequentially arranged from beginning. A partial summing part (13) computes a prefix sum from the inversely permutated cross tabulation. The order computing part (14) generates a share of a vector representing ascending order within a group from a result of the prefix sum.

    Secret falsification detecting system, secret computation apparatus, secret falsification detecting method, and program

    公开(公告)号:US10950144B2

    公开(公告)日:2021-03-16

    申请号:US15535638

    申请日:2015-12-22

    发明人: Dai Ikarashi

    摘要: Falsification is detected during secret computation that uses a plurality of types of secret sharing. A secret computation apparatus 1 uses shared values [a0], . . . , [aM-1] as inputs, and a function value [F([a0], . . . , [aM-1])] obtained with a function F for performing secret computation that uses J types of secret sharing as an output, and detects falsification during secret computation. A random number generating section 12 obtains shared values [r0], . . . , [rJ-1]. A randomizing section 13 multiplies the shared value [am] by the shared value [rj] to calculate a shared value [amrj], and generates a randomized shared value := . A secret computation section 14 obtains the function value [F([a0], . . . , [aM-1])] while including, in a checksum Cj, randomized shared values that are computation objects and randomized shared values that are computation results. A synchronizing section 15 keeps idling until all of secret computation that uses secret sharing are completed. A validating section 16 verifies that the shared value [φj] obtained by multiplying the sum of shared values [f0], . . . , [fμj-1] included in the checksum Cj by the shared value [rj] is equal to the shared value [ψj] obtained by adding shared values [f0rj], . . . , [fμj-1rj] included in the checksum Cj.

    Secure computation apparatus, secure computation method and program

    公开(公告)号:US10679522B2

    公开(公告)日:2020-06-09

    申请号:US15737915

    申请日:2016-06-13

    IPC分类号: G09C1/00

    摘要: A secret sharing value of a value represented by a “first target bit string” is used to obtain a secret sharing value of a value represented by a “first check bit string” obtained by setting a value of the most significant bit of the “first target bit string” to a value of a “first check bit” that is lower than the most significant bit. Here, the “first target bit string” corresponds to a null value when the most significant bit is 1 and corresponds to a real number when the most significant bit is 0. Next, the secret sharing value of the value represented by the “first check bit string” is used to obtain secret sharing values of bit values of the least significant bit to “first check bit” of the “first check bit string”.

    Inconsistency detecting method, inconsistency detecting system, inconsistency detecting device, and program

    公开(公告)号:US10665137B2

    公开(公告)日:2020-05-26

    申请号:US15541410

    申请日:2016-02-01

    摘要: An inconsistency in shares is detected with a small volume of communications traffic. n inconsistency detecting devices generate random numbers si and make the random numbers si public. The n inconsistency detecting devices generate a common random number s which is the sum total of the random numbers s0, . . . , sn−1. The n inconsistency detecting devices calculate shares [c]i. The n inconsistency detecting devices generate shares [r]i, each of which would become a random number r by reconstruction. The n inconsistency detecting devices calculate shares [d]i, each of which would become a judgment value d by reconstruction. One inconsistency detecting device receives shares [d]1, . . . , [d]n−1 from n−1 inconsistency detecting devices. The one inconsistency detecting device restores n−k shares [d]′k, . . . , [d]′n−1 from k shares [d]0, . . . , [d]k−1. The one inconsistency detecting device judges, for j=k, . . . , n−1, whether or not a share [d]j and a share [d]′j coincide with each other.

    Matrix application apparatus, matrix application method and program

    公开(公告)号:US10120837B2

    公开(公告)日:2018-11-06

    申请号:US15567812

    申请日:2016-05-11

    发明人: Dai Ikarashi

    IPC分类号: G06F7/00 G06F17/16 H03M13/15

    摘要: To reduce the processing amount of a field multiplication. A matrix application apparatus computes a vector b by multiplying a vector a and a matrix A, provided that a denotes a k-th order vector having elements a0, . . . , ak−1 (a0, . . . , ak−1εGF(xq)), b denotes an m-th order vector having elements b0, . . . , bm−1 (b0, . . . , bm−1∈GF(xq)), and A denotes a m-by-k Vandennonde matrix. A polynomial multiplication part computes a value bi. An order reduction part designates gi−hif′ as the value bi by using a polynomial hi obtained by dividing a part of the value bi having an order equal to or higher than q by Xq and a polynomial gi formed by a part of the value bi having an order lower than q.

    Secret parallel processing device, secret parallel processing method, and program

    公开(公告)号:US10083314B2

    公开(公告)日:2018-09-25

    申请号:US15025486

    申请日:2014-10-03

    摘要: A secret parallel processing device reducing communication amount includes: a randomization unit that obtains a non-randomized input sequence and outputs a randomized sequence obtained by joining the non-randomized sequence and a dummy record sequence formed of a disclosed value and subjecting the joined sequences to random replacement processing and concealed random replacement data obtained by concealing used random replacement data; a calculation unit that obtains the non-randomized sequence, the randomized sequence, and the dummy record sequence, applies a predetermined function to the sequences, and generates an output checksum for each sequence by using calculation procedure data used in the processing of applying the function; and a correctness verification unit that obtains the output checksum for each sequence and the concealed random replacement data, assesses the output checksum for each sequence, and outputs a final test result determining whether the predetermined function has been correctly applied on the non-randomized sequence.