tuneinsight/lattigo

Bug[he]: linear tranformation correctness issue

Pro7ech opened this issue · 0 comments

The linear transformations in the package he are instantiated with an auxiliary prime P that is always set to the largest level allowed by the parameters: params.MaxLevelP. However, it is possible to generate Galois keys (and any other evaluation keys) with a smaller level for P, which results in a correctness error when evaluating linear transformations.

A field LevelP should be added to the linear transformation and an error should be returned by the functions in the rlwe package that take ciphertexts mod QP as input if their modulus P level does not match the evaluation key modulus P.