赞
踩
Microsoft SEAL
是一个易于使用的开源(MIT 许可)同态加密库,由 Microsoft 的密码学研究小组开发。而 SEAL-Python
是SEAL
的python版本,能方便用python实现同态加密功能。我们在linux
系统和Windows
系统下实现安装,linux
系统是用的Ubuntu22
版(当然我用的Windows
下的Ubuntu
的子系统)。下面我们分系统介绍如何安装SEAL-Python
。
sudo apt-get install clang
sudo apt-get install cmake
sudo apt-get install gcc
sudo apt-get install g++
sudo apt-get install git
Python
。sudo apt-get install git build-essential cmake python3 python3-dev python3-pip
git clone https://github.com/Huelse/SEAL-Python.git
cd SEAL-Python
pybind11
和numpy
pip3 install numpy pybind11
SEAL
# 下载相关依赖
git submodule update --init --recursive
# 进入SEAL文件夹,安装SEAL
cd SEAL
cmake -S . -B build -DSEAL_USE_MSGSL=OFF -DSEAL_USE_ZLIB=OFF
cmake --build build
cd ..
SEAL-Python
python3 setup.py build_ext -i
cp seal.*.so examples
cd examples
python3 4_bgv_basics.py
运行命令会打印一个bgv方案的简单例子,如果能正确运行,则安装成功。
Windows系统下安装SEAL-Python
相对来说更加复杂。
Visual Studio 2022
和git
参考链接: 在Windows环境下安装SEAL同态加密库。python
比较简单,自行安装。下载SEAL-Python
和SEAL
。
下载地址:SEAL-Python
下载地址:SEAL
下载时也可以通过链接直接下载所有源码,并且能保证正确的目录结构。
安装SEAL
需要 Visual Studio 2019 或更高版本。仅支持 x64!并使用VS 命令提示符的 x64 Native Tools Command Prompt 来配置和构建 Microsoft SEAL 库。
将目录调整到SEAL-Python
的解压目录。
进入SEAL
文件夹
# 进入SEAL文件夹,安装SEAL
cd SEAL
cmake -S . -B build -DSEAL_USE_MSGSL=OFF -DSEAL_USE_ZLIB=OFF
cmake --build build
cd ..
安装pybind11
和numpy
pip3 install numpy pybind11
安装SEAL-Python
python3 setup.py build_ext -i
注:在安装时可以通过以下步骤将库安装到Anaconda
环境中。
//激活环境
activate your_environment
//进入到setup.py文件目录下执行命令
python setup.py build
python setup.py install
pip list
打印结果中包含seal库。
copy seal.*.so examples
cd examples
python3 4_bgv_basics.py
运行命令会打印一个bgv方案的简单例子,如果能正确运行,则安装成功。
注:这是官方给的例子,他依赖生成的后缀文件.so
,所以并不是所有地方运行都能完成,必须要保证运行目录下有这个文件才行。如果是安装到库,则使用from seal import *
直接使用,以下是4_bgv_basics
文件内容和运行成功截图,一定要保证环境正确。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。