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 761 forks source link

Noise estimate question #198

Open Jyun-Neng opened 6 years ago

Jyun-Neng commented 6 years ago

In section 3.1.4 of the document, you say that "As the l2 norm of the canonical embedding of m is larger by a (phi(m))^2 factor than the l2 norm of its coefficient vector, we therefore use the condition (noiseVar)^1/2 >= q/2 as our decryption-error condition." I'm confused about it.

Why can we just use the condition (noiseVar)^1/2 >= q/2? It seems that the standard deviation (noiseVar)^1/2 is larger enough than the standard deviation of each coefficient in m.

The standard deviation of the canonical embedding of m is (phi(m)*noiseVar)^1/2. If we just use the condition above, in my opinion, it is not enough to ensure that the variable will not exceed q/2.

Can you give me some examples or details? Thanks.

shaih commented 6 years ago

We are working on improving the noise management in HElib, making it a little less "hackish", I will try to also improve the documentation while we're at it. I hope to have this change ready sometime in the summer.