Homomorphic encryption allows performing computations on data without having to decrypt it first. Confidentiality is maintained, and at the same time, the calculations yield the same results as if they had been performed with unencrypted data. The results are encrypted and can be viewed with knowledge of the appropriate key. Fully Homomorphic Encryption (FHE) allows arbitrary computational operations to be performed.
What is Homomorphic Encryption?
Homomorphic encryption is an encryption method that allows computational operations to be performed on encrypted data. Calculations produce the same results as if they had been performed with the unencrypted data. The results are available in encrypted form and can be viewed with knowledge of the appropriate key.
Thanks to the special properties of homomorphic encryption, encrypted data can be used for calculations while maintaining confidentiality. They do not have to be decrypted for the calculations.
The use of a homomorphic encryption method makes sense in cloud computing, for example. External service providers can perform calculations on sensitive data without having insight into the data. There are different types of homomorphic encryption such as Partially Homomorphic Encryption, Nearly Fully Homomorphic Encryption and Fully Homomorphic Encryption (FHE).
Fully Homomorphic Encryption allows the execution of arbitrary arithmetic operations. In 2009, the cryptologist Craig Gentry succeeded in theoretically proving the first FHE methods. They are complex and only partially applicable in practice.
The basic operation of homomorphic encryption
Homomorphism or homomorphism is a mathematical property. It states that the relationships between the elements of a data set are preserved even after it has been mapped. Applied to cryptology, this means that data encrypted with a homomorphic encryption scheme retains the same relationships and structures as the unencrypted data.
Computational operations applied to the encrypted data yield the same results as if the computations had been performed with the plaintext data. The results of the calculations with the encrypted data are available in encrypted form.
The different types of homomorphic encryption
There are different types of homomorphic encryption. Partially Homomorphic Encryption, in English Partially Homomorphic Encryption (PHE) supports only certain mathematical operations. For example, it allows either additive or multiplicative calculations.
Since in principle any mathematical operations can be mapped from additions and multiplications, Nearly Homomorphic Encryption, in English Somewhat Homomorphic Encryption (SHE) and Fully Homomorphic Encryption, in English Fully Homomorphic Encryption (FHE) is possible.
While only selected mathematical operations with limited complexity are available with SHE, Fully Homomorphic Encryption supports arbitrary arithmetic operations. The first theoretical proof of Fully Homomorphic Encryption was achieved by Craig Gentry in 2009. Meanwhile, several generations of Fully Homomorphic Encryption and several implementations of the methods exist.
FHE is still in the developmental stage. The FHE procedures are predicted to have great potential, even though many procedures have not yet proven their practicality. Numerous companies and institutions are working on the standardization of homomorphic encryption methods.
Possible applications of homomorphic encryption
Homomorphic encryption offers numerous possible applications such as:
- Storage and processing of sensitive data by external service providers, for example in cloud computing (ensuring data protection).
- Use of cloud databases for sensitive data
- Protection and secure use of data in healthcare (for example, anonymous analysis of medical data in electronic patient records)
- Testing of electronic voting procedures
- Machine learning based on sensitive data