假设我有两个向量x = [1,2,3,4] and y = [5,1,2,6]。
我使用PolyCRTBuilder (密文x和密文)合成并加密了这两个数组。
如果我减去两个密文(密文x减去密文),我应该得到Result = [-4, 1, 1, -2],但在同态减法之后,我得到了ResultDecrypted = [40957, 1, 1, 40959]。
我知道因为明文只定义了模plain_modulus,所以我们得到了那个结果。但是我想要将得到的负值用于下一次计算,如何将得到的负值赋给一个向量,并将其用于进一步的计算
发布于 2019-04-05 12:16:17
您使用的是一个相当老的SEAL版本,如果它仍然有PolyCRTBuilder的话;在较新版本的库中,它已重命名为BatchEncoder,并且它支持与std::vector<std::int64_t>之间的编码,我相信这正是您想要的。
https://stackoverflow.com/questions/55494894
复制相似问题