The purpose of homomorphic encryption is to allow computation on encrypted data so it can remain confidential while it is processed, enabling useful tasks to be accomplished with data residing in untrusted environments.
A homomorphic cryptosystem functions similarly to other types of public encryption in the sense that it utilizes a public key to encrypt data and only permits the person with the corresponding private key to access the unencrypted data. Its distinctiveness, however, lies in its use of an algebraic system that enables a range of computations (or operations) on the encrypted data.
Most homomorphic encryption systems function optimally with data expressed as integers and when using operational functions like addition and multiplication. This allows the encrypted data to be analyzed and manipulated as if it’s in plaintext format without actually decrypting it. The encrypted data can be computed and processed to get an encrypted answer, but only the private key owner can decrypt the ciphertext and understand what it means.
3 Types of Homomorphic Encryption
Homomorphic encryption is classified into three categories based on the kind and frequency of mathematical computations that can be executed on the ciphertext.
- Partially Homomorphic Encryption: Partially Homomorphic Encryption (PHE) permits only specific mathematical operations to be executed on encrypted values. This implies that only one operation, either addition or multiplication, can be carried out indefinitely on the ciphertext. Multiplicative PHE is the cornerstone of RSA encryption, a common method used to establish secure connections via SSL/TLS.
- Somewhat Homomorphic Encryption: A Somewhat Homomorphic Encryption (SHE) system supports a specific operation (either addition or multiplication) up to a particular complexity level, but these operations can only be carried out a fixed number of times.
- Fully Homomorphic Encryption: Fully Homomorphic Encryption (FHE) holds great promise for harmonizing functionality with privacy by aiding in maintaining data security while keeping it accessible simultaneously. Evolved from the SHE system, FHE can use both addition and multiplication operations indefinitely, enhancing the efficiency of secure multi-party computation. Unlike other types of homomorphic encryption, it can manage arbitrary computations on your ciphertexts.
Uses of Homomorphic Encryption
Researchers have already identified several practical applications:
- Securing Data Stored in the Cloud. Using homomorphic encryption, you can secure the data that you store in the cloud while also retaining the ability to calculate and search ciphered information that you can later decrypt without compromising the integrity of the data as a whole.
- Enabling Data Analytics in Regulated Industries. Homomorphic encryption allows data to be encrypted and outsourced to commercial cloud environments for research and data-sharing purposes while protecting user or patient data privacy. It can be used for businesses and organizations across a variety of industries including financial services, retail, information technology, and healthcare to allow people to use data without seeing its unencrypted values. Examples include predictive analysis of medical data without putting data privacy at risk, preserving customer privacy in personalized advertising, financial privacy for functions like stock price prediction algorithms, and forensic image recognition.
- Improving Election Security and Transparency. Researchers are working on how to use homomorphic encryption to make democratic elections more secure and transparent. For example, the Paillier encryption scheme, which uses additional operations, would be best suited for voting-related applications because it allows users to add up various values in an unbiased way while keeping their values private. This technology could not only protect data from manipulation, it could allow it to be independently verified by authorized third parties.
Learn more about machine identity security, and how it can benefit your organization!