A cryptographic system that implements a proxy re-encryption function in a cryptographic scheme according to which when two pieces of information correspond to each other, a ciphertext in which is set one of the two pieces of information can be decrypted with a decryption key in which is set the other one of the two pieces of information, the cryptographic system comprising a re-encryption key generation device and a re-encryption device,
- wherein the re-encryption key generation device includes
- a decryption key k*rk generation part that generates a decryption key k*rk by converting, using conversion information W1, a decryption key k* in which is set one of attribute information x and attribute information v corresponding to each other;
- a conversion information W1 encryption part that generates encrypted conversion information ψrk by encrypting the conversion information W1 with one of attribute information x′ and attribute information v′ corresponding to each other being set;
- and
- a re-encryption key transmission part that transmits to the re-encryption device the decryption key k*rk and the encrypted conversion information ψrk, as a re-encryption key rk;
- and
- wherein the re-encryption device includes
- a ciphertext receiving part that receives a ciphertext cenc in which is set the other one of the attribute information x and the attribute information v;
- a ciphertext crenc generation part that generates a ciphertext crenc by setting at least one of additional information H and additional information Θ corresponding to each other in the ciphertext cenc received by the ciphertext receiving part;
- a decryption key k*renc generation part that generates a decryption key k*renc by setting at least the other one of the additional information H and the additional information Θ in the decryption key k*rk included in the re-encryption key rk;
- and
- a re-encrypted ciphertext transmission part that transmits the ciphertext crenc, the decryption key k*renc, and the encrypted conversion information ψrk, as a re-encrypted ciphertext CT.