Patent ID: 8369518

Claim:
An electronic data encryption and decryption system comprising: a privileged-user device, a user device and an encrypted data generation device, wherein the privileged-user device comprises: a privileged-user key generation unit that generates a privileged-user secret key x and a privileged-user public key x·P, where P is a generator, and stores the privileged-user secret key and the privileged-user public key in a first key storage unit, a first input/output unit that receives at least encrypted data from the encrypted data generation device and sends to the user device the privileged-user public key stored in the first key storage unit, a first session key generation unit that generates a session key K based on bilinear pairing using the privileged-user secret key stored in the first key storage unit, and a first decryption unit that decrypts the encrypted data by using the session key K generated by the first session key generation unit; the user device comprises: a second input/output unit that receives the privileged-user public key x·P from the privileged-user device, and receives at least the encrypted data from the encrypted data generation device, a user key generation unit that generates a user secret key r, a user public key r·P, and a public key rx·P and stores the user secret key, the user public key and the public key in a second key storage unit, a second session key generation unit that generates the session key K based on the bilinear pairing using the user secret key stored in the second key storage unit, and a second decryption unit that decrypts the encrypted data by using the session key K generated by the second session key generation unit; and the encrypted data generation device comprises: a third input/output unit that receives from the user device at least the public key rx·P and stores the at least the public key in a third key storage unit, a third session key generation unit that generates a session key K based on the bilinear pairing by using the public key rx·P, session key generation information s and a random point Q, which are stored in the third key storage unit, and a unit that encrypts input electronic data using the session key K generated by the third session key generation unit.