A data search device comprising: a data storage unit (391, 390) configured to store a plurality of data groups into which pieces of search target data are classified and a plurality of decryption keys, by associating each of the plurality of the data groups with each of the plurality of the decryption keys; a search condition input unit configured to obtain a search condition which is a condition for searching for data; a data group selecting unit; a data searching unit configured to obtain as search result data a piece of data that satisfies the search condition obtained by the search condition input unit, from among pieces of data included in the search target group selected by the data group selecting unit; and a search result output unit configured to output the search result data obtained by the data searching unit, characterized in that the data search device further comprising: the data storage unit (391, 390) configured to store a plurality of decryption keys for decrypting encrypted identifiers of the data groups; a key-determination information storage unit configured to store key-determination information which is a value for determining a decryption key; the search condition input unit configured to obtain encrypted information generated by encrypting an identifier of a data group to be searched; the data group selecting unit configured to decrypt the encrypted information obtained by the search condition input unit by using each of the plurality of the decryption keys stored in the data storage unit, select a decryption key used to generate a decryption result which is same as the key-determination information, from among the plurality of the decryption keys, and select as a search target group a data group associated with the decryption key selected, from among the plurality of the data groups stored in the data storage unit. a data storage unit (391, 390) configured to store a plurality of data groups into which pieces of search target data are classified and a plurality of decryption keys, by associating each of the plurality of the data groups with each of the plurality of the decryption keys; a search condition input unit configured to obtain a search condition which is a condition for searching for data; a data group selecting unit; a data searching unit configured to obtain as search result data a piece of data that satisfies the search condition obtained by the search condition input unit, from among pieces of data included in the search target group selected by the data group selecting unit; and a search result output unit configured to output the search result data obtained by the data searching unit, characterized in that the data search device further comprising: the data storage unit (391, 390) configured to store a plurality of decryption keys for decrypting encrypted identifiers of the data groups; a key-determination information storage unit configured to store key-determination information which is a value for determining a decryption key; the search condition input unit configured to obtain encrypted information generated by encrypting an identifier of a data group to be searched; the data group selecting unit configured to decrypt the encrypted information obtained by the search condition input unit by using each of the plurality of the decryption keys stored in the data storage unit, select a decryption key used to generate a decryption result which is same as the key-determination information, from among the plurality of the decryption keys, and select as a search target group a data group associated with the decryption key selected, from among the plurality of the data groups stored in the data storage unit. the data storage unit (391, 390) configured to store a plurality of decryption keys for decrypting encrypted identifiers of the data groups; a key-determination information storage unit configured to store key-determination information which is a value for determining a decryption key; the search condition input unit configured to obtain encrypted information generated by encrypting an identifier of a data group to be searched; the data group selecting unit configured to decrypt the encrypted information obtained by the search condition input unit by using each of the plurality of the decryption keys stored in the data storage unit, select a decryption key used to generate a decryption result which is same as the key-determination information, from among the plurality of the decryption keys, and select as a search target group a data group associated with the decryption key selected, from among the plurality of the data groups stored in the data storage unit.