Paper 2022/1256

EvalRound Algorithm in CKKS Bootstrapping

Seonghak Kim, Crypto Lab, Inc.
Minji Park, Ewha Womans University
Jaehyung Kim, Crypto Lab, Inc.
Taekyung Kim, Crypto Lab, Inc.
Chohong Min, Ewha Womans University
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)
PDF
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
Creative Commons Attribution
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}
}
Note: In order to protect the privacy of readers, eprint.iacr.org does not use cookies or embedded third party content.