Abstract:
A combination of secure texts of values “a”, “b” and “c” having a relationship c=ab is efficiently generated. A secure text generation part 12 generates secure texts [xi] of xi satisfying xi=f(ki), and secure texts [yi] of yi satisfying yi=g(ki), for i=0, . . . , m. A fragment generation part 13 generates εi decrypted from [xi]−[ai] and ρi decrypted from [yi]−[bi], for i=1, . . . , m, and calculates [ci]+εi[bi]+ρi[ai]+εiρi and generates secure texts [z1], . . . , [zm]; and A random number synthesizing part 14 generates a secure text [z0] using different values k0, . . . , km and secure texts [z1], . . . , [zm].
Abstract:
A second set including a plurality of elements a5(1), . . . , a5(N) or a concealed text of the second set is obtained, where the second set is obtained by setting a replication source element a(f(h)) included in a first set to an element a(f(h))−a(f(h−1)) and setting elements other than the replication source in the first set to zero with respect to h=2, . . . , M. An additive inverse of a replication source element a(f(h−1)) of which the order is before the replication source element a(f(h)) and is the closest to the replication source element a(f(h)) is −a(f(h−1)). The second set or the concealed text of the second set is used to obtain a third set or a concealed text of the third set. The third set is a set including a first element b(1)=a5(1) and i=2, . . . , Nth element b(i)=b(i−1)+a5(i).
Abstract:
Secret calculation including secret random permutation is performed at high speed. In unit permutation, random permutation devices p0, . . . , pk-1 perform permutation of additive secret sharing values «a»ρi of a plain text a with sub shares πρi of permutation data π. In resharing, the random permutation device p0 generates additive secret sharing values «a»ρi+1pk by using random numbers r1, . . . , rk-1 which are respectively shared with random permutation devices pj (j=1, . . . , k−1) so as to transmit the additive secret sharing values «a»ρi+1pk to the random permutation device pk and each of the random permutation devices pj generates additive secret sharing values «a»ρi+1pj by using random numbers rj.
Abstract:
Even when an intermediate server exists, a plurality of servers simultaneously authenticates a user securely. A user apparatus disperses a password. The user apparatus obtains a ciphertext, which is obtained by encrypting a dispersed value. The intermediate server transmits the ciphertext to an authentication server. The authentication server decrypts the ciphertext to obtain the dispersed value. The authentication server determines a verification value. The authentication server obtains a ciphertext. The intermediate server decrypts the ciphertext to obtain the verification value. The intermediate server verifies whether a sum total of the verification values is equal to 0 or not. The authentication server determines a verification value. The authentication server obtains a ciphertext. The authentication server decrypts the ciphertext to obtain the verification value. The authentication server verifies whether a sum total of the verification values is equal to 0 or not.
Abstract:
A secret sharing system transforms computational secret shares to homomorphic secret shares. On a data distribution apparatus, a key selector selects K′−1 keys. A pseudorandom number generator generates pseudorandom numbers from the keys. An encryption part generates a ciphertext from information using the pseudorandom numbers. A key division part divides the keys into N shares fg(n) using an arbitrary sharing. A ciphertext division part divides the ciphertext into N shares fan) using an arbitrary sharing. When K shares fsj(i) are input into distributed data transform apparatuses, a reconstruction part generates a reconstructed value by reconstructing shares fsj(i) using the secret sharing, and when K shares fc(i) are input, generates the reconstructed value uj by reconstructing shares fc(i) using the arbitrary sharing. A redivision part divides reconstructed value Uj into N shares fuj(n) using a homomorphic secret sharing. A transformer generates share ga(i) of the information from K′ shares fUj.
Abstract:
The present invention provides techniques to calculate the number of surviving and the number of deaths while still concealing survival time data. The present invention includes: a group data position calculation means configured to calculate a share [[gA]] of a sequence gA and a share [[gB]] of a sequence gB represented by predetermined equations from a share [[g]] of a sequence g of values of group of survival time data included in a survival time data set D; a group data number calculation means configured to calculate a share [[sA]] and a share [[sB]] from a share [[t]] of a sequence t of values of time of survival time data included in the survival time data set D, the share [[gA]], and the share [[gB]], by [[sA]]=GroupSum ([[gA]], [[t]]), [[sB]]=GroupSum ([[gB]], [[t]]); and a survival number calculation means.
Abstract:
To efficiently determine intermediate data for use with an aggregate function while keeping confidentiality, a bit decomposition unit generates a share of a bit string by bit decomposition and concatenation of key attributes. A group sort generation unit generates a share of a first permutation, which performs a stable sort of the bit string in ascending order. A bit string sorting unit generates a share of a sorted bit string obtained by sorting the bit string with the first permutation. A flag generation unit generates a share of a flag indicating a boundary between groups. A key aggregate sort generation unit generates a share of a second permutation, which performs a stable sort of the negation of the flag in ascending order. A de-duplication unit generates shares of de-duplicated key attributes. A key sorting unit generates shares of sorted key attributes by sorting the de-duplicated key attributes.
Abstract:
Data is efficiently read from and written in a sequence without an access position being revealed. A secure reading and writing apparatus (1) receives a read command or a write command as input, and, when the read command is input, outputs a secret text [a[x]] which is an x-th element of a secret text sequence [a], and, when the write command is input, adds the secret text [a[x]] which is the x-th element of the secret text sequence [a], to a secret text [d]. A secure reading part (12) reads the secret text [a[x]] which is the x-th element from the secret text sequence [a]. A buffer addition part (13) adds a secret text [c] of an unreflected value c to the secret text [a[x]]. A buffer appending part (14) appends a secret text [x] and the secret text [d] to a write buffer [b]. When the number of elements of the write buffer [b] exceeds a predetermined value, a secure writing part (15) adds a value indicated with a secret text vector [b1] to an access position of the secret text sequence [a] which is indicated with a secret text vector [b0].
Abstract:
A secure table reference system includes a first combining part 11n for generating [v′] of v′ ∈ Fm+nt in which d and v are combined, a difference calculation part 12n for generating [r″] of r″ that has a difference between a certain element of r and an element before the certain element as an element corresponding to the certain element, a second combining part 13n for generating [r′] of r′ ∈ Fm+nt in which r″ and an m-dimensional zero are combined, a permutation calculation part 14n for generating {{σ}} of a permutation σ that stably sorts v′ in ascending order, a permutation application part 15n for generating [s] of s: =σ(r′) obtained by applying the permutation σ to r′, a vector generation part 16n for generating [s′] of a prefix-sum s′ of s, an inverse permutation application part for generating [s″] of s″ obtained by applying an inverse permutation σ−1 of the permutation σ to s′, and an output part 17n for generating [x] of x ∈ Fm consisting of (nt+1)th and subsequent elements of s″.
Abstract:
Multiple elements are efficiently read from a secured array. A secure text array =( , . . . , ) where an array a=(a[0], . . . , a[n−1]) having a size of n is secured, secure text of an integer x that is equal to or higher than 0 and less than n, and in integers i0, . . . , im-1 that are equal to or higher than 0 and less than n are input into an input part 11. A secure shift part 12 secure-shifts the secure text array by to obtain a secure text array =( , . . . , ) where an array a′=(a′[0], . . . , a′[n−1]) obtained by shifting leftward the array a by x is secured. An array generation part 13 generates a secure text array =( , . . . , ) from the secure text array .