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.16k stars 761 forks source link

Running error #27

Closed ldwaiwai closed 9 years ago

ldwaiwai commented 10 years ago

hi, I have a new running error need help.

AltCRT.cpp:322: double AltCRT::addPrimesAndScale(const IndexSet&): Assertion `empty(s1 & map.getIndexSet())' failed

Thank you!

ldwaiwai commented 10 years ago

I solved this error by replace the multiply operation from Ctxt1.*=Ctxt2 to Ctxt1.multiplycation=Ctxt2.But I'm not very clear about the difference between the two operator.Relinearize operation is the only difference between them?

TomMD commented 10 years ago

Yes, relinearization is a critical part of the proper multiplication, unless you are doing something much lower level. It could be argued that the *= operation should not be exposed so readily to users. For more you can read "Efficient Fully Homomorphic Encryption from (standard) LWE".