Paper 2022/1256
EvalRound Algorithm in CKKS Bootstrapping
Abstract
Homomorphic encryption (HE) has opened an entirely new world up in the privacy-preserving use of sensitive data by conducting computations on encrypted data. Amongst many HE schemes targeting computation in various contexts, Cheon--Kim--Kim--Song (CKKS) scheme is distinguished since it allows computations for encrypted real number data, which have greater impact in real-world applications. CKKS scheme is a levelled homomorphic encryption scheme, consuming one level for each homomorphic multiplication. When the level runs out, a special computational circuit called bootstrapping is required in order to conduct further multiplications. The algorithm proposed by Cheon et al. has been regarded as a standard way to do bootstrapping in the CKKS scheme, and it consists of the following four steps: ModRaise, CoeffToSlot, EvalMod and SlotToCoeff. However, the steps consume a number of levels themselves, and thus optimizing this extra consumption has been a major focus of the series of recent research. Among the total levels consumed in the bootstrapping steps, about a half of them is spent in CoeffToSlot and SlotToCoeff steps to scale up the real number components of DFT matrices and round them to the nearest integers. Each scale-up factor is very large so that it takes up one level to rescale it down. Scale-up factors can be taken smaller to save levels, but the error of rounding would be transmitted to EvalMod and eventually corrupt the accuracy of bootstrapping. EvalMod aims to get rid of the superfluous $qI$ term from a plaintext $pt + qI$ resulting from ModRaise, where $q$ is the bottom modulus and $I$ is a polynomial with small integer coefficients. EvalRound is referred to as its opposite, obtaining $qI$. We introduce a novel bootstrapping algorithm consisting of ModRaise, CoeffToSlot, EvalRound and SlotToCoeff, which yields taking smaller scale-up factors without the damage of rounding errors.
Note: - (30 August 2023) Measurements on Table 6, 7, 8 was updated as the code on https://github.com/CryptoLabInc/EvalRound had been fixed. - (31 August 2023) Measurements on Table 1 was updated to show consistent result with Table 6, 7, 8.
Metadata
- Available format(s)
- Category
- Public-key cryptography
- Publication info
- A minor revision of an IACR publication in ASIACRYPT 2022
- Contact author(s)
-
ksh @ cryptolab co kr
qkralswl150 @ ewhain net
jaehyungkim @ cryptolab co kr
taekyung kim @ cryptolab co kr
chohongmin @ gmail com - History
- 2023-08-31: last of 2 revisions
- 2022-09-21: received
- See all versions
- Short URL
- https://ia.cr/2022/1256
- License
-
CC BY
BibTeX
@misc{cryptoeprint:2022/1256, author = {Seonghak Kim and Minji Park and Jaehyung Kim and Taekyung Kim and Chohong Min}, title = {{EvalRound} Algorithm in {CKKS} Bootstrapping}, howpublished = {Cryptology {ePrint} Archive, Paper 2022/1256}, year = {2022}, url = {https://eprint.iacr.org/2022/1256} }