CPC G09C 1/00 (2013.01) [G06F 16/90344 (2019.01); H04L 9/0643 (2013.01); H04L 9/0869 (2013.01); H04L 9/3242 (2013.01); G06F 7/588 (2013.01)] | 10 Claims |
1. An information processing apparatus, comprising:
an encrypting unit configured to generate an encrypted bit string in which a hash value calculated by using keyed hashing from a keyword for an information search is mapped into a bit string having a predetermined length;
a bit inverting unit configured to select a predetermined number of bits from the encrypted bit string on a basis of a dynamically generated random number, and invert the predetermined number of selected bits;
a communicating unit configured to receive, as a search result, encrypted inverted-bit-number information corresponding to an encrypted index in which the predetermined number of bits are inverted, the encrypted index corresponding to a sent encrypted keyword; and
a decrypting unit configured to generate inverted-bit-number information before encryption on a basis of the encrypted inverted-bit-number information, wherein
the communication is further configured to send the encrypted bit string and the inverted-bit-number information to an external apparatus, the inverted-bit-number information indicating a number of bits inverted by the bit inverting unit, and
the decrypting unit is further configured to calculate logical AND of the encrypted keyword and the inverted-bit-number information before the encryption to determine whether or not the search result includes an erroneous determination on a basis of a result of the calculation.
|