homenc / HElib

HElib is an open-source software library that implements homomorphic encryption. It supports the BGV scheme with bootstrapping and the Approximate Number CKKS scheme. HElib also includes optimizations for efficient homomorphic evaluation, focusing on effective use of ciphertext packing techniques and on the Gentry-Halevi-Smart optimizations.
https://homenc.github.io/HElib
Other
3.11k stars 759 forks source link

key switching procedure? #474

Open imtiyazuddin opened 2 years ago

imtiyazuddin commented 2 years ago

I can see that there are keyswitchgen procedure in Key.cpp and keyswtiching.cpp but where is the keyswtich procedure??? How do I actually do the keyswitching ??

xuann6 commented 1 year ago

I'm considering the same question now. And I would like to ask about the meaning of key-switching procedure step2-1 "zero-padding and split" in paper "Better Bootstrapping for Approximate Homomorphic Encryption". I understood the RNS-desompose part but why we have to do the "zero-padding and split" (especially "split")?

X1anWang commented 1 year ago

I also have the same question. How can I actually do the keyswitching?