FHE overview#

Protecting data confidentiality happens in three main locations.

  • At rest, e.g., by using symmetric encryption such as AES-GCM or AES-XTS.

  • In transit, e.g., by using cryptographic protocols such as TLS 1.3.

  • In use, e.g., by using Fully Homomorphic Encryption (FHE).

This page provides a short overview of how FHE assists in protecting data confidentiality while in use. Consider the following simple scenario with two parties a data owner and an untrusted server, where the data owner wishes to use the server to perform some computations over its data m_i, i=1,2,3.

To accomplish this, the data owner securely transmits the data m_i to the server, possibly employing a secure channel like TLS 1.3. The server can then evaluate various mathematical operations on this data. Upon completion, the server ships the results m_{res} back to the data owner.

Unencrypted

The challenge lies in the fact that the untrusted server can potentially gain access to the confidential information m_i. To address this concern, the data owner may consider employing a conventional encryption method like AES to encrypt the data, resulting in ciphertexts c_i = Enc(m_i). However, this approach restricts the server from conducting any computations on the data, essentially reducing it to a mere storage server. This limitation undermines the primary purpose of utilizing the server in the first place.

Symmetric encryption

That is precisely where HE can provide assistance. HE empowers the data owner to carry out computations on encrypted data. By utilizing HE, the data owner can encrypt its confidential data c_i = Enc(m_i), and upload it to the untrusted server. The server can then perform operations such as multiplication and addition on the ciphertexts c_i, without gaining any knowledge about the original data m_i. Upon decrypting the result, the data owner should obtain an output equivalent to what would have been obtained if the computations were performed on unencrypted data (within a certain margin of error tolerance).

with FHE

Using additions and multiplications is enough for performing many types of operations in an untrusted environment. For example, performing deep neural network inference operations.

with FHE NN

To learn more about the FHE technology see the FHE FAQ section below.

FHE FAQ#