Patent ID: 8615668

Claim:
A confidential search system comprising an encrypted data accumulation device which accumulates encrypted data, and a search device which searches encrypted data that satisfies a predetermined search condition, from the encrypted data accumulated in the encrypted data accumulation device, wherein the encrypted data accumulation device includes an encrypted data accumulation part which accumulates encrypted data including an encryption vector c1 in which respective elements of an attribute vector generated from first attribute information indicating a searchable range are set as a coefficient for one or more of basis vectors of basis vectors b i (i=1, . . . , n) (n is an integer of 2 or more) that constitute a predetermined basis B, in a storage device, wherein the search device includes a user secret key storage part which stores a key vector k* L,0 in which respective elements of a first predicate vector generated from second attribute information indicating an attribute of a user are set as the coefficient for one or more, but not all, of basis vectors of basis vectors b i (i=1, . . . , n) that constitute a predetermined basis B*, in the storage device, a trap door generation part which generates a search condition vector SV in which respective elements of a second predicate vector generated from third attribute information indicating the predetermined search condition are set as the coefficient for a predetermined basis vector, where the elements of the first predicate vector are not set, in the key vector k* L,0 stored in the user secret key storage part, and which generates a vector obtained by adding the search condition vector SV generated, to the key vector k* L,0 , as a trap door X with a processing device, and a data transmission part which transmits the trap door X generated by the trap door generation part to the encrypted data accumulation device via a communication device, and wherein the encrypted data accumulation device further includes a search execution part which searches encrypted data that satisfies the search condition, among the encrypted data accumulated by the encrypted data accumulation part, by conducting a predetermined computation with the processing device using the encryption vector c1 included in the encrypted data accumulated by the encrypted data accumulation part and the trap door X transmitted by the data transmission part, and by checking whether or not the encrypted data satisfies the search condition based on a result obtained by the predetermined computation.