Credit: iStockPhoto.com
Suppose that you want to delegate the ability to process your data, without giving away access to it. This separation is possible: we describe a "fully homomorphic" encryption scheme that keeps data private, but that allows a worker that does not have the secret decryption key to compute any (still encrypted) result of the data, even when the function of the data is very complex.