A distributed data transform apparatus, in a secret sharing system comprising a data distribution apparatus and N distributed data transform apparatuses, wherein the data distribution apparatus receives an electronic information file a as an input, selects K′−1 keys s1, . . . , sK′−1εS, computes rj=P(sj) from the keys s1, . . . , sK′−1 to generate pseudorandom numbers r1, . . . , rK′−1, where j=1, . . . , K′−1;
- generates a ciphertext c from information aεR by using the pseudorandom numbers r1, . . . , rK′−1, divides each of the keys s1, . . . , sK′−1 into N shares fs1(n), . . . , fsK′−1(n) by using an arbitrary secret sharing scheme S1, and divides the ciphertext c into N shares fc(n) by using an arbitrary sharing scheme S0, the distributed data transform apparatus comprising:
- circuitry configured to
- compute a reconstructed value Uj=P(uj) from a value uj generated by reconstructing of shares fsj(i) by using the secret sharing scheme S1 when K shares fsj(i) are input, and generate the reconstructed value Uj (j=K′) by reconstruction of shares fc(i) by using the secret sharing scheme S0 when K shares fc(i) are input;
- divide the reconstructed value Uj into N shares fUj(n) by using an arbitrary homomorphic secret sharing scheme S2;
- and
- generate a share ga(i) of the electronic information file a from K′ shares fU1(i), . . . , fUK′(i);
- where N, K and K′ are integers greater than or equal to 2, N≧K, n=1, . . . , N, λ represents K different integers greater than or equal to 1 and less than or equal to N, i is an integer, iελ, fx(n) represents N shares of x, R is a ring, S is a key space, and P(x) is a mapping that maps xεS to the ring R,
- wherein at least K′ distributed data transform apparatuses are configured to reproduce the original electronic information file a, when at least K′ reconstructed values Uj are reconstructed separately respectively by the at least K′ distributed data transform apparatuses, and none of the original electronic information file a can be obtained when less than K′ reconstructed values Uj are reconstructed by less than K′ distributed data transform apparatuses.