摘要 |
<p>A second node generates a public key/secret key pair, and transmits the public key to a first node. The first node uses the public key to encrypt authentication data, and transmits the encrypted authentication data to the third node. The third node stores the encrypted authentication data therein. When data to be authenticated that is to be verified against the authentication data is received, the first node acquires the encrypted authentication data from the third node, and calculates the distance between the data to be authenticated and the authentication data in a state of being encrypted by the public key. The third node generates a polynomial expression including, as a parameter thereof, a threshold value for the distance between the data to be authenticated and the authentication data, and transmits the polynomial expression to the first node. The first node assigns the distance to the polynomial expression to generate, as verification data, a value encrypted by the public key, and transmits said value to the second node. The second node verifies, against the authentication data, on the basis of the secret key and the verification data, the data to be authenticated. As a result, data to be authenticated and authentication data are concealed in a server on the basis of simple processing.</p> |