Recent trends in computing have prompted users and organizations to store an increasingly large amount of sensitive data at third party locations in the cloud outside of their direct control. In order to protect this data, it needs to be encrypted. However, traditional encryption systems lack the expressiveness needed for most applications involving big and complex data. The continued adoption and deployment of cloud computing hinges crucially on the ability to provide cryptographic measures that protect the privacy of our data, and new encryption schemes have the potential to affect how successful this computing paradigm will be.
Functional encryption is an emerging paradigm for public-key encryption that enables more fine-grained access control to encrypted data. Functional encryption provides the ability to specify a decryption policy in the ciphertext so that only individuals who satisfy the policy can decrypt, or the ability to associate keywords to a secret key so that it can only decrypt documents containing the keyword. This project investigates methods to obtain more efficient pairings-based functional encryption, and methods to realize new functionalities and more expressive functional encryption schemes.