System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于安全多方计算的隐私保护机器学习实现系统及方法技术方案_技高网

基于安全多方计算的隐私保护机器学习实现系统及方法技术方案

技术编号:39956801 阅读:4 留言:0更新日期:2024-01-08 23:44
一种基于安全多方计算的隐私保护机器学习实现系统及方法,包括:输入输出模块、线性计算模块和非线性计算模块,其中:输入输出模块在系统开始运行时生成秘密分享密文和所有计算完成后输出最终结果;线性计算模块计算机器学习模型中的线性部分;非线性计算模块计算机器学习模型中的非线性激活函数。本发明专利技术结合电路相关预处理技术,在预处理阶段使用额外的随机数来随机化电路,使得向量乘法的在线通信量仅为每方1个环元素,与向量长度无关;带小数截断乘法的在线开销与不带小数截断的乘法相同,即截断操作无额外开销。本发明专利技术能够抵抗恶意敌手的攻击,达到可证明安全性,在任意多方(非全部参与方)恶意敌手合谋的情况下仍然可以保证安全性。

【技术实现步骤摘要】

本专利技术涉及的是一种信息安全领域的技术,具体是一种基于安全多方计算的隐私保护机器学习实现系统及方法


技术介绍

1、安全多方计算是实现隐私保护机器学习的常用方法。作为一种密码学领域的技术,其优点在于可严格证明安全性。安全多方计算协议的安全性的两个重要衡量标准是:1)敌手是被动的半诚实敌手还是主动的恶意敌手,2)敌手可以控制的协议参与方数量。对于协议的n个参与方,一个很强的安全性模型就是可以抗任意n-1方恶意敌手的安全模型,该模型可以抵抗任意n-1方恶意敌手的合谋。下文将该安全性模型简称为抗任意恶意敌手合谋的安全性模型。

2、现有的隐私保护机器学习技术存在的主要问题在于:1)绝大多数技术只考虑了弱的半诚实敌手,无法达到抗任意恶意敌手合谋的安全性;2)少数已有的抗任意恶意敌手合谋的隐私保护机器学习技术效率低下,在广域网(wan)环境下进行lenet神经网络对tinyimagenet数据集的1次模型推测,在线阶段需要长达近450秒。这限制抗任意恶意敌手合谋的隐私保护机器学习在大型卷积神经网络上的应用。


技术实现思路

1、本专利技术针对现有技术在抗任意恶意敌手合谋的安全性模型下,隐私保护机器学习协议在线阶段效率低的缺陷以及加性秘密分享的向量乘法通信量与向量长度成正比的不足,提出一种基于安全多方计算的隐私保护机器学习实现系统及方法,结合电路相关预处理技术,在预处理阶段使用额外的随机数来随机化电路,使得向量乘法的在线通信量仅为每方1个环元素,与向量长度无关;带小数截断乘法的在线开销与不带小数截断的乘法相同,即截断操作无额外开销。本专利技术能够抵抗恶意敌手的攻击,达到可证明安全性,在任意多方(非全部参与方)恶意敌手合谋的情况下仍然可以保证安全性。

2、本专利技术是通过以下技术方案实现的:

3、本专利技术涉及一种基于安全多方计算的隐私保护机器学习实现系统,包括:输入输出模块、线性计算模块和非线性计算模块,其中:输入输出模块在系统开始运行时生成秘密分享和所有计算完成后输出最终结果;线性计算模块计算机器学习模型中的线性部分;非线性计算模块计算机器学习模型中的非线性激活函数。

4、所述的输入输出模块包括:输入单元和输出单元,其中:输入单元对于协议的参与方的输入数据整数生成秘密分享密文[x];输出单元根据最终计算结果的秘密分享密文,进行广播和检查,若检查正确则得到正确的结果y,若不正确则停止计算,防止得到错误结果。

5、所述的秘密分享密文[x]是指:对于所有n个参与方,第i个参与方持有整数和整数其中s是安全参数,且这些值满足以及按照上述定义该秘密分享密文可以记作

6、所述的生成秘密分享密文[x],具体步骤为:

7、1)预处理阶段:

8、1.1)所有参与方取整数环上的随机数,其中第i个参与方生成的随机数记为αi。

9、1.2)所有参与方取整数环上的随机数,得到[λx],具体包括:

10、1.2.1)所有参与方取整数环上的随机数,其中第i个参与方生成的随机数记为

11、1.2.2)所有参与方两两进行一次不经意线性函数计算协议,其中,在第i个和第j个参与方的协议中,第i个参与方输入αi,第j个参与方输入记第i个参与方的输出为ai,j,第j个参与方的输出为bj,i。

12、1.2.3)所有参与方进行计算,其中第i个参与方计算

13、1.2.4)所有参与方设置

14、1.3)所有参与方将自己持有的发给持有数据x的参与方,该参与方计算

15、2)在线阶段:

16、2.1)持有数据x的参与方计算并向所有其他参与方广播δx=λx+x;

17、2.2)所有参与方计算[x]=δx-[λx],完成秘密分享密文[x]的生成。

18、所述的对最终计算结果的秘密分享密文进行广播和检查,具体步骤为:

19、1)对于结果的秘密分享密文,参与方将其高s比特使用一个随机数掩盖,得到然后所有参与方广播yi的值并计算

20、2)所有参与方分别进行计算:第i个参与方计算并将zi的承诺广播给其他所有参与方,当收到所有其他参与方的承诺后,打开自己的承诺以公开zi;

21、3)所有参与方计算并检查z是否为0,若是则输出y为正确结果,否则终止计算。

22、所述的线性计算模块包括:加法单元、向量点乘单元和带小数截断乘法单元,其中:加法单元根据参与方输入的秘密分享密文[x],[y],生成[z]使得z=x+y;向量点乘单元根据参与方输入的秘密分享密文(其中向量元素个数记为m),生成[z]使得带小数截断乘法单元根据参与方输入的秘密分享密文[x],[y],生成[z’]使得z'=xy/2d,其中:d是一个预先协商好的公开常数。

23、所述的生成[z]使得具体步骤为:

24、1)预处理阶段:

25、1.1)所有参与方取整数环上的随机数,得到[λz];

26、1.2)所有参与方生成m个乘法三元组构成向量其中

27、1.3)所有参与方计算并广播

28、2)在线阶段:

29、2.1)所有参与方计算

30、2.2)所有参与方广播并得到明文δz,则[z]=δz-[λz]。

31、所述的生成[z]使得z=x+y,具体步骤为:

32、1)预处理阶段:各方本地计算[λz]=[λx]+[λy]。

33、2)在线阶段:各方本地计算δz=δx+δy,则[z]=δz-[λz]。

34、所述的生成<z'>使得z'=xy/2d,具体步骤为:

35、1)预处理阶段:

36、1.1)各方生成随机的比特并计算

37、1.2)所有参与方生成乘法三元组([a],[b],[c]);

38、1.3)所有参与方计算并广播δx=a-λx,δy=b-λy。

39、2)在线阶段:

40、2.1)所有参与方计算[δz]=(δx+δx)(δy+δy)-(δy+δy)[a]-(δx+δx)[b]+[c]+[λz]。

41、2.2)所有参与方广播并得到明文δz;

42、2.3)所有参与方计算δ'z=δz/2d,则[z’]=δz’-[λz’]。

43、所述的非线性计算模块包括:比较单元和乘法单元,其中:比较单元根据参与方输入的秘密分享密文[x],生成[z]使得z是x<0的比较结果,即x<0时z=1,否则z=0;乘法单元根据参与方输入的秘密分享密文[x],[y],生成[z]使得z=xy。

44、所述的生成[z]使得z是x<0的比较结果,即x<0时z=1,否则z=0,具体步骤为:

45、1)预处理阶段:各方生成随机的[λz]和λx的每一比特的秘密分享密文

46、2)在线阶段:各方使用一个比较电路比较本文档来自技高网...

【技术保护点】

1.一种基于安全多方计算的隐私保护机器学习实现系统,其特征在于,包括:输入输出模块、线性计算模块和非线性计算模块,其中:输入输出模块在系统开始运行时生成秘密分享密文和所有计算完成后输出最终结果;线性计算模块计算机器学习模型中的线性部分;非线性计算模块计算机器学习模型中的非线性激活函数;

2.根据权利要求1所述的基于安全多方计算的隐私保护机器学习实现系统,其特征是,所述的秘密分享密文[x]是指:对于所有n个参与方,第i个参与方持有整数xi,和整数其中s是安全参数,且这些值满足以及按照上述定义该秘密分享密文记作

3.根据权利要求1所述的基于安全多方计算的隐私保护机器学习实现系统,其特征是,所述的生成秘密分享密文[x],具体步骤为:

4.根据权利要求1所述的基于安全多方计算的隐私保护机器学习实现系统,其特征是,所述的对最终计算结果的秘密分享密文进行广播和检查,具体步骤为:

5.根据权利要求1所述的基于安全多方计算的隐私保护机器学习实现系统,其特征是,所述的生成[z]使得具体步骤为:

6.根据权利要求1所述的基于安全多方计算的隐私保护机器学习实现系统,其特征是,所述的生成[z]使得z=x+y,具体步骤为:

7.根据权利要求1所述的基于安全多方计算的隐私保护机器学习实现系统,其特征是,所述的生成<z'>使得z'=xy/2d,具体步骤为:

8.根据权利要求1所述的基于安全多方计算的隐私保护机器学习实现系统,其特征是,所述的生成<z>使得z是x<0的比较结果,即x<0时z=1,否则z=0,具体步骤为:

9.根据权利要求1所述的基于安全多方计算的隐私保护机器学习实现系统,其特征是,所述的生成[z]使得z=xy,具体步骤为:

...

【技术特征摘要】

1.一种基于安全多方计算的隐私保护机器学习实现系统,其特征在于,包括:输入输出模块、线性计算模块和非线性计算模块,其中:输入输出模块在系统开始运行时生成秘密分享密文和所有计算完成后输出最终结果;线性计算模块计算机器学习模型中的线性部分;非线性计算模块计算机器学习模型中的非线性激活函数;

2.根据权利要求1所述的基于安全多方计算的隐私保护机器学习实现系统,其特征是,所述的秘密分享密文[x]是指:对于所有n个参与方,第i个参与方持有整数xi,和整数其中s是安全参数,且这些值满足以及按照上述定义该秘密分享密文记作

3.根据权利要求1所述的基于安全多方计算的隐私保护机器学习实现系统,其特征是,所述的生成秘密分享密文[x],具体步骤为:

4.根据权利要求1所述的基于安全多方计算的隐私保护机器学习实现系统,其特征是,所述的对最终计算结果的秘密分享密...

【专利技术属性】
技术研发人员:袁博实谷大武丁宁龙宇陆海宁
申请(专利权)人:上海交通大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1