A shared-key recovery apparatus that receives a shared key from a shared-key generation apparatus in secrecy, the shared-key generation apparatus generating a seed value, generating a verification value and a shared key from the seed value, encrypting the verification value to generate first encryption information, encrypting the seed value based on the verification value to generate second encryption information, and transmitting the first encryption information and the second encryption information, the shared-key recovery apparatus comprising:
- a receiving unit operable to receive the first encryption information and the second encryption information;
- a first decryption unit operable to decrypt the first encryption information, to generate a first decryption verification value;
- a second decryption unit operable to decrypt the second encryption information based on the first decryption verification value, to generate a decryption seed value;
- a shared-key generating unit operable to generate a second decryption verification value and a decryption shared key, from the decryption seed value and according to a same method as used in the shared-key generation apparatus;
- a judging unit operable to judge, based on the first decryption verification value and the second decryption verification value, whether the decryption shared key should be outputted;
- and
- an outputting unit operable, when the judging unit has judged affirmatively, to output the decryption shared key.