如何运行CryptoNets源码,以及个人遇到的一些问题解决

论文:CryptoNets: Applying Neural Networks to Encrypted Data with High Throughput and Accuracy
源码链接:[https://github.com/microsoft/CryptoNets]
论文链接:(http://proceedings.mlr.press/v48/gilad-bachrach16.pdf)
这篇论文是第一篇利用同态加密做的神经网络加密,不过必须注意的是训练是在明文下训练得到的,预测是在同态加密下完成的。

注意事项

1.要求使用SEAL version 3.2,你可以在github的branch下载
2.Windows下使用 Visual-Studio 2017
3.在创建NUGET包的时候,遇到了不少困难,主要是个人不熟悉VS的使用过程,导致无法get作者的意思。
创建包链接:https://github.com/microsoft/SEAL/blob/master/dotnet/nuget/NUGET.md

如何运行CryptoNets源码,以及个人遇到的一些问题解决
如何编译二进制呢??其实只需要用VS2017 打开所下载的SEAl.sln文件,依次对上面三个文件点击生成即可如何运行CryptoNets源码,以及个人遇到的一些问题解决
显示如下信息即编译成功:

D:\testseal\SEAL-3.2.0\dotnet\native…\lib\x64\Release\sealnetnative.dll
3>------ 已启动全部重新生成: 项目: SEALNet, 配置: Release Any CPU ------ 3>SEALNet
-> D:\testseal\SEAL-3.2.0\dotnet\lib\Release\netstandard2.0\SEALNet.dll
========== 全部重新生成: 成功 3 个,失败 0 个,跳过 0 个 ==========

然后按照步骤继续即可创建Nuget包,如何你实在没有成功的话,我在这里为提供了两个版本的Nuget包,你可以下载使用。

如何运行CryptoNets源码,以及个人遇到的一些问题解决
然后按照步骤运行即可
运行成功:
如何运行CryptoNets源码,以及个人遇到的一些问题解决