差分隐私 MP-SPDZ框架安装

ubuntu虚拟机安装MP-SPDZ框架

1.下载安装包到虚拟机内   https://github.com/data61/MP-SPDZ/releases

安装git    报错Waiting for cache lock: Could not get lock /var/lib/dpkg/lock-frontend. It is held by process 4402(unattended-upgr)

解决方案

#杀死进程
sudo kill 4402
#删除导致锁定的文件
sudo rm /var/lib/spkg/lock
#重启系统
sudo reboot

重启后安装git

sudo apt install git

2.在解压后的MP-SPDZ根目录下打开终端,安装依赖

sudo apt-get install automake build-essential cmake git libboost-dev libboost-thread-dev libntl-dev libsodium-dev libssl-dev libtool m4 python3 texinfo yasm

成功:

差分隐私 MP-SPDZ框架安装_第1张图片

执行命令

Scripts/tldr.sh

3.需要手动安装四个文件夹

GitHub - data61/MP-SPDZ: Versatile framework for multi-party computation    获取ssh路径

差分隐私 MP-SPDZ框架安装_第2张图片

 git clone手动安装前 创建ssh连接

ls -al ~/.ssh
ssh-keygen -t rsa -C "github用户名"    #按三次回车
#查看生成的key
cat ~/.ssh/id_rsa.pub

登陆github,点击头像-settings-new SSH,复制新生成的SSH配置到服务器,把上面生成的key拷贝到github上配置

4.在mp-spdz/Programs/Source目录下创建一个测试文件

gedit xxxxxx.mpc

编辑内容后保存

# sint是SPDZ定义的安全类型
a = sint.get_input_from(0)    #接收第0方的秘密输入
b = sint.get_input_from(1)    #接收第1方的秘密输入
c = a + b 
print_ln('%s', c.reveal())    #reveal重构得到原数据

返回mp-spdz根目录编译

./compile.py -F 64 xxxxxx.mpc

生成证书文件 

Scripts/setup-ssl.sh 2    #需要几方计算,就写几

第一个终端执行

./mascot-party.x -N 2 -I -p 0 xxxxxx     #2:两方; 0:第0方

第二个终端执行

./mascot-party.x -N 2 -I -p 1 xxxxx

分别输入11 13 结果:

差分隐私 MP-SPDZ框架安装_第3张图片

你可能感兴趣的:(MP-SPDZ,MP-SPDZ)