一、安装
- SEAL库是一个用C++编写的,实现了全同态加密的CKKS方案和BFV方案的全同态加密库,由Microsoft在Github开源
- 在SEAL中每个密文拥有一个特定的噪声预算量,需要在程序编写过程中通过重线性化操作自行控制乘法运算产生的噪声。基于SEAL实现同态加密运算的性能在很大程度上取决于程序编写的优劣,且存在着不同的优化方法。
- 总体而言,SEAL的学习和使用难度较大,但优化后的性能较好。
1、软硬件准备
cmake 版本3.13+
git 版本2.44
VS2022
win10
2、工具下载后添加到全局环境,进入SEAL源码所在目录,cmd
#在发布模式下为x64生成和构建
cmake -S . -B build -G "Visual Studio 17 2022" -A x64
cmake --build build --config Release
#在发布模式下为x86生成和构建
cmake -S . -B build -G "Visual Studio 17 2022" -A Win32
cmake --build build --config Release
此时build文件夹里有VS2022项目sln文件
继续
此时build/lib/release里生成文件。
在Windows中安装库也可以工作。但是,您需要在具有管理员权限的命令提示符下运行cmake --install build,而不是使用sudo命令。默认情况下,文件将安装到C:\Program Files(x86)\SEAL\。
但是呢,因为此时在D盘,且用的是VS的命令行窗口,没有管理者权限,所以直接输入命令会报错。
所以此时直接用管理者模式打开cmd,进入这个文件夹,再输入这条命令就可以啦!!
3、完成。
二、项目演示
配置借鉴在Windows环境下安装SEAL同态加密库_cmake -s . -b build -g "visual studio 17 2022" -a -优快云博客