Homomorphic Encryption (HE) refers to a special type of encryption technique that allows for computations to be done on encrypted data, without requiring access to a secret (decryption) key. The results of the computations remain encrypted, and can be revealed only by the owner of the secret key.
While traditional encryption schemes can be used to privately outsource data storage to the cloud, the data cannot be used for computations without first decrypting it, resulting in a huge loss of utility. For example, a secure cloud service may require a user to download their encrypted data, decrypt it locally, and perform necessary computations, instead of simply returning an encrypted result to the user.
Homomorphic encryption solves precisely this problem, as it allows the cloud service to perform the computations while protecting the customer’s data with a state-of-the-art cryptographic security guarantee. The cloud only ever sees encrypted data, and only the customer can reveal the result of the computation.
Simple Encrypted Arithmetic Library – SEAL
We actively develop and maintain the Simple Encrypted Arithmetic Library – SEAL, with the goal of making homomorphic encryption available in an easy-to-use form both to experts and to non-experts. For more information, and to download SEAL, see the SEAL project page.
We have demonstrated (see paper) that deep learning on homomorphically encrypted data is indeed feasible. We believe that this approach can have a wide range of applications in cloud industry, healthcare, genomics, and finance.
We believe that at this point homomorphic encryption is ready to be standardized, and are actively working towards this goal. As a concrete step, we hosted a Homomorphic Encryption Standardization Workshop at Microsoft in July 2017, gathering together a large group of experts from industry, academia, and government to discuss the way ahead. More information on the standardization efforts can be found at http://HomomorphicEncryption.org.