Computational cryptography › Public-key encryption and key exchange › Post-quantum public-key › Lattices
PUBLIC-KEY ENCRYPTIONPrimitive

Fully homomorphic encryption

In plain words

Lets a server compute on your encrypted data and send back an encrypted answer, without ever seeing the data.

The idea: LWE-style ciphertexts hide a message under a little noise. Adding two ciphertexts adds the messages. Multiplying them multiplies the messages, but the noise grows quickly. Since any computation can be built from additions and multiplications, you can compute anything, until the noise drowns the message. Gentry's breakthrough, bootstrapping, runs decryption itself on the encrypted data using an encrypted copy of the key, producing a fresh, low-noise ciphertext so the computation can go on.

Why it matters: Enables private cloud services, like Apple's private caller-ID lookup.

The details

On the map: BGV, BFV, CKKS (with bootstrapping)

Compute on encrypted data: a server runs a computation on ciphertexts and returns an encrypted result without ever seeing the data. Gentry made it possible in 2009[1].

BGV and BFV work with integers, CKKS with approximate numbers[2, 3, 4]. All rest on Ring-LWE. Bootstrapping refreshes the noise that builds up and needs circular security. It is still thousands of times slower than computing in the clear, but deployed for focused tasks such as Apple's Live Caller ID Lookup[5].

Rests on

If any of these breaks, this breaks too.

If it falls

If this breaks, these break with it.

Nothing on the map depends on it: it is an end point, something people use directly.

References

  1. Craig Gentry. Fully homomorphic encryption using ideal lattices. Proceedings of the forty-first annual ACM symposium on Theory of computing, 2009. doi:10.1145/1536414.1536440
  2. Zvika Brakerski, Craig Gentry and Vinod Vaikuntanathan. (Leveled) fully homomorphic encryption without bootstrapping. Proceedings of the 3rd Innovations in Theoretical Computer Science Conference, 2012. doi:10.1145/2090236.2090262
  3. Somewhat Practical Fully Homomorphic Encryption. IACR Cryptology ePrint Archive, Paper 2012/144. eprint.iacr.org/2012/144
  4. Jung Hee Cheon, Andrey Kim, Miran Kim and Yongsoo Song. Homomorphic Encryption for Arithmetic of Approximate Numbers. Advances in Cryptology – ASIACRYPT 2017. doi:10.1007/978-3-319-70694-8_15
  5. Apple. Combining Machine Learning and Homomorphic Encryption in the Apple Ecosystem. Apple Machine Learning Research, 2024. machinelearning.apple.com/research/homomorphic-encryption