HEAAN (Homomorphic Encryption for Arithmetic of Approximate Numbers) — CKKS
Some time, soon, we need to do two things:
- Switch off our main public key methods, as RSA (prime number factorization), ElGamal (discrete logs) and ECC (elliptic curve) will be cracked by quantum computers.
- We need to start to operate on encrypted values. This will involve the usage of homomorphic encryption (HE). With this we could two values of a and b, and where we encrypt them with public key to give Epk(a) and Epk(b). Next we can add them to get Epk(a+b), and where we now apply a secret key (sk) to find a+b.
HEAAN (Homomorphic Encryption for Arithmetic of Approximate Numbers) defines a homomorphic encryption library proposed by Cheon, Kim, Kim and Song (CKKS) in 2016 [here]:
The CKKS method uses approximate arithmetics over complex numbers. As a previous electronic engineer, I recognise a complex number with a real part (x) and an imaginary part (y).We thus get x + jy (note that in other areas, apart from electrical engineering, it would be defined with x+iy). HEAAN can be used for homomorphic addition and multiplication, along with rescaling, and uses a RLWE method…