Closed cgouert closed 2 years ago
XOR is supported only for binary encodings.
[x] SEAL:
std::vector<seal::Ciphertext> xor_bin(seal::Evaluator& evaluator, seal::RelinKeys& relinKeys,
std::vector<seal::Ciphertext>& ctxt_1, std::vector<seal::Ciphertext>& ctxt_2, size_t ptxt_mod) ;
[x] PALISADE:
template <typename T>
std::vector<Ciphertext<T>> xor_bin(CryptoContext<T>& cc, std::vector<Ciphertext<T>>& c1,
std::vector<Ciphertext<T>>& c2, size_t ptxt_mod)
[x] TFHE:
void e_xor(std::vector<LweSample*>& result, const std::vector<LweSample*>& a,
const std::vector<LweSample*>& b, const size_t nb_bits,
const TFheGateBootstrappingCloudKeySet* bk);
[x] Lattigo:
func BinXor(c1, c2 []*bfv.Ciphertext) []*bfv.Ciphertext
[x] HElib
std::vector<helib::Ctxt> xor_bin(helib::PubKey& public_key, std::vector<helib::Ctxt>& ct1_,
std::vector<helib::Ctxt>& ct2_, size_t ptxt_mod);
Needs to be added to compiler and functional units generated for all libraries except SEAL and TFHE.