System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 多方安全计算方法、装置、设备及介质制造方法及图纸_技高网

多方安全计算方法、装置、设备及介质制造方法及图纸

技术编号:40915316 阅读:3 留言:0更新日期:2024-04-18 14:42
本发明专利技术涉及信息安全技术领域,公开了一种多方安全计算方法、装置、设备及介质,该方法包括:应用于任一计算节点,多个计算节点基于各自持有的秘密份额共同参与多方安全计算,该方法包括:响应于需求方的指示命令,获取自身与包含自身在内的各计算节点之间的交叉不变量;交叉不变量是两个计算节点之间或计算节点自身在执行计算任务过程中保持不变的常量;根据所持有的秘密份额和交叉不变量,确定截断因子;计算所持有的秘密份额与截断因子之差,得到低阶秘密份额;计算低阶秘密份额之积,得到秘密数据乘积的分享结果。这样可以解决乘积分享所带来的分享多项式次数指数级增长的问题,减少了计算资源占用量,显著提升了多方安全计算的效率。

【技术实现步骤摘要】

本专利技术涉及信息安全,特别是涉及一种多方安全计算方法、装置、设备及介质


技术介绍

1、移动互联网、云计算和大数据等技术的快速发展,孕育并产生了各种新的服务模式和应用。这些服务和应用会采集用户的相关信息,但是所采集信息中往往含有大量的敏感信息,对这些信息的一些操作会直接或间接地泄露用户隐私。多方安全计算技术(securemulti-party computation,mpc)为该问题提供了解决方案。mpc是指在无可信第三方的情况下,多个参与方协同计算约定的函数,除计算结果以外,各参与方无法通过计算过程中的交互数据推断出其他参与方的原始数据。

2、在mpc协议的设计中通常采用秘密分享技术。秘密分享是将秘密数据通过某种方式拆分成若干份,然后将秘密份额交给不同的参与方管理,单个参与方无法恢复秘密数据,只有超过特定数量的人合作才能恢复秘密数据。然而,秘密分享同时支持加法和乘积分享运算,其中乘积分享运算会导致分享多项式的次数指数级增长,运算相对复杂,计算资源占用量大。在相关技术方案中会利用重组向量或随机双分享对分享多项式进行降阶,但是计算开销较大,降低了多方安全计算效率。


技术实现思路

1、本专利技术的目的是提供一种多方安全计算方法、装置、设备及介质,可以减少计算资源占用量,显著提升多方安全计算的效率。

2、为了解决上述技术问题,本专利技术提供一种多方安全计算方法,应用于任一计算节点,多个计算节点基于各自持有的秘密份额共同参与多方安全计算,所述方法包括:

>3、响应于需求方的指示命令,获取自身与包含自身在内的各计算节点之间的交叉不变量;所述交叉不变量是两个计算节点之间或计算节点自身在执行计算任务过程中保持不变的常量;

4、根据所持有的秘密份额和所述交叉不变量,确定截断因子;

5、计算所持有的秘密份额与所述截断因子之差,得到低阶秘密份额;

6、计算所述低阶秘密份额之积,得到秘密数据乘积的分享结果。

7、第一方面,在本专利技术提供的上述多方安全计算方法中,获取自身与包含自身在内的各计算节点之间的交叉不变量,包括:

8、接收所述需求方分配的公开标识;所述公开标识为所述需求方从有限域中选取的非零元素;各计算节点分配到的所述公开标识互异;

9、根据分配的所述公开标识,获取自身与包含自身在内的各计算节点之间的交叉不变量。

10、另一方面,在本专利技术提供的上述多方安全计算方法中,在获取自身与包含自身在内的各计算节点之间的交叉不变量之后,还包括:

11、接收数据方通过沙米尔秘密分享方式分享的秘密数据或秘密数据的若干次幂,以获得自身持有的秘密份额。

12、另一方面,在本专利技术提供的上述多方安全计算方法中,所述数据方通过沙米尔秘密分享方式分享秘密数据或秘密数据的若干次幂的过程,包括:

13、所述数据方接收所述需求方确定的功能函数;所述功能函数对应各数据方的数据所要完成的计算任务;

14、基于所述功能函数的形式,计算秘密数据的若干次幂;

15、根据各计算节点的所述公开标识,将秘密数据或秘密数据的若干次幂通过沙米尔秘密分享进行处理,得到秘密数据或秘密数据的若干次幂的多个秘密份额并分发至对应的计算节点。

16、另一方面,在本专利技术提供的上述多方安全计算方法中,采用下述公式确定所述功能函数:

17、;

18、其中,分别为个数据方所持有的秘密数据;为元有限域,为素数幂;公开,称为数乘因子;均为公开数据,为自然数集,为秘密数据的次幂,为秘密数据的次幂,为秘密数据的次幂。

19、另一方面,在本专利技术提供的上述多方安全计算方法中,根据分配的所述公开标识,获取自身与包含自身在内的各计算节点之间的交叉不变量,包括:

20、计算阶数阈值;

21、根据各计算节点的所述公开标识,生成多阶范德蒙方阵;

22、计算所述多阶范德蒙方阵的逆矩阵,并根据所述阶数阈值,将所述逆矩阵中设定位置的元素按照设定顺序排列得到目标向量;

23、根据所述目标向量、所述阶数阈值结合自身分配的所述公开标识,得到自身与包含自身在内的各计算节点之间的交叉不变量。

24、另一方面,在本专利技术提供的上述多方安全计算方法中,采用下述公式得到所述交叉不变量:

25、;

26、;

27、;

28、;

29、其中,为的交叉不变量,为第个计算节点,为第个计算节点,,,为所有计算节点的总个数;为所述阶数阈值;为阶范德蒙方阵,阶范德蒙方阵的逆矩阵;为所述公开标识;为所述逆矩阵中第行、第至第列的个元素按照设定顺序排列而成的目标向量。

30、另一方面,在本专利技术提供的上述多方安全计算方法中,采用下述公式将秘密数据或秘密数据的若干次幂通过沙米尔秘密分享进行处理:

31、;

32、;

33、其中,由所述数据方秘密且随机选取,为秘密数据或的若干次幂的分享向量,,为数据方的总个数;当为时,计算是对进行沙米尔秘密分享,分享的结果为的个秘密份额;当为的若干次幂时,计算是对的若干次幂进行沙米尔秘密分享,分享的结果为的若干次幂的个秘密份额;为的前行向量按照既定顺序排列而成的阶子矩阵;,符号表示集合,表示由有限域上全体维向量构成的线性空间。

34、另一方面,在本专利技术提供的上述多方安全计算方法中,采用下述公式将秘密数据或秘密数据的若干次幂通过沙米尔秘密分享进行处理:

35、;

36、其中,为秘密数据或的若干次幂的分享多项式,由所述数据方秘密且随机选取,当为时,计算是对进行沙米尔秘密分享,分享的结果为的个秘密份额;当为的若干次幂时,计算是对的若干次幂进行沙米尔秘密分享,分享的结果为的若干次幂的个秘密份额;,符号表示集合。

37、另一方面,在本专利技术提供的上述多方安全计算方法中,根据所持有的秘密份额和所述交叉不变量,确定截断因子,包括:

38、根据所持有的秘密份额和所述交叉不变量,获取中间截断因子;

39、根据加法秘密分享拆分所述中间截断因子,得到中间截断因子份额并分享至其它计算节点,以使其它计算节点得到截断因子中间值;

40、计算所述截断因子中间值之和,确定截断因子。

41、另一方面,在本专利技术提供的上述多方安全计算方法中,采用下述方式得到秘密数据乘积的分享结果:

42、设,为形如的秘密数据,其中,,为自然数集;

43、设,的分享多项式,的形式为:

44、;

45、;

46、其中,,,,,,;

47、令,称为的截断多项式;令,称为的截断多项式;

48、令,;

49、计算,得到经多项式分享的秘密份额:

50、;

51、其中,的次数不超过,是经截断多项式分享的秘密份额,是经本文档来自技高网...

【技术保护点】

1.一种多方安全计算方法,其特征在于,应用于任一计算节点,多个计算节点基于各自持有的秘密份额共同参与多方安全计算,所述方法包括:

2.根据权利要求1所述的多方安全计算方法,其特征在于,获取自身与包含自身在内的各计算节点之间的交叉不变量,包括:

3.根据权利要求2所述的多方安全计算方法,其特征在于,在获取自身与包含自身在内的各计算节点之间的交叉不变量之后,还包括:

4.根据权利要求3所述的多方安全计算方法,其特征在于,所述数据方通过沙米尔秘密分享方式分享秘密数据或秘密数据的若干次幂的过程,包括:

5.根据权利要求4所述的多方安全计算方法,其特征在于,采用下述公式确定所述功能函数:

6.根据权利要求5所述的多方安全计算方法,其特征在于,根据分配的所述公开标识,获取自身与包含自身在内的各计算节点之间的交叉不变量,包括:

7.根据权利要求6所述的多方安全计算方法,其特征在于,采用下述公式得到所述交叉不变量:

8.根据权利要求7所述的多方安全计算方法,其特征在于,采用下述公式将秘密数据或秘密数据的若干次幂通过沙米尔秘密分享进行处理:

9.根据权利要求7所述的多方安全计算方法,其特征在于,采用下述公式将秘密数据或秘密数据的若干次幂通过沙米尔秘密分享进行处理:

10.根据权利要求6所述的多方安全计算方法,其特征在于,根据所持有的秘密份额和所述交叉不变量,确定截断因子,包括:

11.根据权利要求10所述的多方安全计算方法,其特征在于,根据所持有的秘密份额和所述交叉不变量,获取中间截断因子,包括:

12.根据权利要求10所述的多方安全计算方法,其特征在于,采用下述方式得到秘密数据乘积的分享结果:

13.根据权利要求12所述的多方安全计算方法,其特征在于,采用下述方式得到秘密数据经截断多项式分享的秘密份额:

14.根据权利要求12所述的多方安全计算方法,其特征在于,采用下述方式得到秘密数据经截断多项式分享的秘密份额:

15.根据权利要求14所述的多方安全计算方法,其特征在于,还包括:

16.根据权利要求15所述的多方安全计算方法,其特征在于,采用下述方式得到所述秘密数据和的分享结果:

17.根据权利要求15所述的多方安全计算方法,其特征在于,采用下述方式得到所述秘密数据与数乘因子乘积的分享结果:

18.根据权利要求15所述的多方安全计算方法,其特征在于,还包括:

19.根据权利要求18所述的多方安全计算方法,其特征在于,采用下述方式得到计算任务的最终结果:

20.一种多方安全计算装置,其特征在于,应用于任一计算节点,多个计算节点基于各自持有的秘密份额共同参与多方安全计算,所述装置包括:

21.一种多方安全计算设备,其特征在于,应用于任一计算节点,多个计算节点基于各自持有的秘密份额共同参与多方安全计算,所述设备包括:

22.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至19任一项所述的多方安全计算方法的步骤。

...

【技术特征摘要】

1.一种多方安全计算方法,其特征在于,应用于任一计算节点,多个计算节点基于各自持有的秘密份额共同参与多方安全计算,所述方法包括:

2.根据权利要求1所述的多方安全计算方法,其特征在于,获取自身与包含自身在内的各计算节点之间的交叉不变量,包括:

3.根据权利要求2所述的多方安全计算方法,其特征在于,在获取自身与包含自身在内的各计算节点之间的交叉不变量之后,还包括:

4.根据权利要求3所述的多方安全计算方法,其特征在于,所述数据方通过沙米尔秘密分享方式分享秘密数据或秘密数据的若干次幂的过程,包括:

5.根据权利要求4所述的多方安全计算方法,其特征在于,采用下述公式确定所述功能函数:

6.根据权利要求5所述的多方安全计算方法,其特征在于,根据分配的所述公开标识,获取自身与包含自身在内的各计算节点之间的交叉不变量,包括:

7.根据权利要求6所述的多方安全计算方法,其特征在于,采用下述公式得到所述交叉不变量:

8.根据权利要求7所述的多方安全计算方法,其特征在于,采用下述公式将秘密数据或秘密数据的若干次幂通过沙米尔秘密分享进行处理:

9.根据权利要求7所述的多方安全计算方法,其特征在于,采用下述公式将秘密数据或秘密数据的若干次幂通过沙米尔秘密分享进行处理:

10.根据权利要求6所述的多方安全计算方法,其特征在于,根据所持有的秘密份额和所述交叉不变量,确定截断因子,包括:

11.根据权利要求10所述的多方安全计算方法,其特征在于,根据所持有的秘密份额和...

【专利技术属性】
技术研发人员:郭文烁李茹杨赵雅倩李雪雷李丽
申请(专利权)人:浪潮北京电子信息产业有限公司
类型:发明
国别省市:

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

1