You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We can make valid ciphertexts where the sampled $u, e_1, e_2$ are all set to zero. This would allow for fhe_var! created variables to be legitimate Cipher nodes while still being deterministic, and allow us to remove the Indeterminate, Stage, etc. types from crate::types::intern::fhe_program_node (added in #272).
Additionally, we should ensure that SEAL_THROW_ON_TRANSPARENT_CIPHERTEXT is set to false, since there are a number of checks to ensure that these values are not zero. E.g. here.
However, it would be good to expose that is_transparent() method and call it in the Cipher::output implementation as a safeguard for the user not to return transparent ciphertexts from an FHE program.
The text was updated successfully, but these errors were encountered:
We can make valid ciphertexts where the sampled$u, e_1, e_2$ are all set to zero. This would allow for
fhe_var!
created variables to be legitimateCipher
nodes while still being deterministic, and allow us to remove theIndeterminate, Stage
, etc. types fromcrate::types::intern::fhe_program_node
(added in #272).It looks like this would require factoring
seal::util::rlwe::encrypt_zero_asymmetric
to support accepting these values, rather than always generating them viaparms.random_generator()->create();
.Additionally, we should ensure that
SEAL_THROW_ON_TRANSPARENT_CIPHERTEXT
is set to false, since there are a number of checks to ensure that these values are not zero. E.g. here.However, it would be good to expose that
is_transparent()
method and call it in theCipher::output
implementation as a safeguard for the user not to return transparent ciphertexts from an FHE program.The text was updated successfully, but these errors were encountered: