seal - Microsoft SEAL:减去两个 PolyCRT 组成的密文后需要负值
问题描述
假设我有两个向量x = [1,2,3,4] and y = [5,1,2,6]
。
我使用 PolyCRTBuilder(Ciphertextx 和 Ciphertexty)组成并加密了这两个数组。
如果我减去两个密文( Ciphertextx MINUS Ciphertexty ),我应该得到Result = [-4, 1, 1, -2]
但在同态减法之后我得到了ResultDecrypted = [40957, 1, 1, 40959]
。
我明白,因为明文只定义了模plain_modulus,所以我们得到了这个结果。但是我希望将得到的负值用于下一次计算我如何将得到的负值分配给向量并将其用于进一步的计算
解决方案
如果仍然有,您正在使用相当旧的 SEAL 版本PolyCRTBuilder
;在较新版本的库中,它已被重命名,BatchEncoder
并且它支持编码到/从中std::vector<std::int64_t>
,我相信这是你想要的。
推荐阅读
- php - How to convert string to integer or double in php?
- .net - 使用dapper的asp.net核心中的多个连接字符串
- r - 在闪亮的热图上显示不同的类别
- python - django filters.py @property def qs user
- vue.js - bootstrap vue select,如何捕获输入焦点事件
- javascript - Using javascript library with Maximo
- google-sheets - Imagick to Ghostscript equivalent command
- linq - linq group by 和 select inside group by 给出错误 EFcore
- javascript - 如何在网页上隐藏条纹javascript
- c++ - 有人可以在下面解释这个简单的程序吗?它将仅包含 1、2 和 3 的方程式的数字重新排列为升序?