一种安全多方计算方法、装置、电子设备及存储介质制造方法及图纸

技术编号:35292209 阅读:20 留言:0更新日期:2022-10-22 12:38
本申请提供一种安全多方计算方法、装置、电子设备及存储介质,用于改善对数据做统计分析的性能效率较低的问题。该方法包括:获取本地统计算子,并使用本地统计算子对本地存储的明文态数据进行计算,获得明文态结果;对明文态结果依次进行秘密分享,获得密文态数据;使用本地统计算子对应的安全多方算子对密文态数据进行安全多方计算,获得密文态结果。通过在传统的安全多方计算过程中增加了使用本地统计算子对本地存储的明文态数据进行计算的过程,使得原本在安全多方计算过程中对密文态数据的计算量提前至本地计算过程中完成,有效地减少了对数据做统计的分析计算量和通信传输量,从而提高了对数据做统计分析的性能效率。率。率。

【技术实现步骤摘要】
一种安全多方计算方法、装置、电子设备及存储介质


[0001]本申请涉及机器学习、安全多方计算和计算机安全的
,具体而言,涉及一种安全多方计算方法、装置、电子设备及存储介质。

技术介绍

[0002]安全多方计算(Secure Multi

Party Computation,SMPC)的研究主要是针对无可信第三方的情况下,即两个或者多个参与方在不泄露每一方输入的信息的前提下,共同计算一个函数,使得所有参与方能算出计算结果。
[0003]目前,在安全多方计算领域中对数据做统计分析时,采用的计算协议大部分都是密码学中的秘密分享协议(例如Shamir算法)产生的所有数据进行统计处理的。在具体的实践过程中发现,在统计分析的过程中,需要交换大量密文态数据,并在密文态数据的基础上进行统计分析,因此,在安全多方计算领域中对数据做统计分析的数据计算量和通信传输量会比较大,也就是说,目前对数据做统计分析的性能效率较低。

技术实现思路

[0004]本申请实施例的目的在于提供一种安全多方计算方法、装置、电子设备及存储介质,用于改善对数据做统计分析的性能效率较低的问题。
[0005]本申请实施例提供了一种安全多方计算方法,包括:获取本地统计算子,并使用本地统计算子对本地存储的明文态数据进行计算,获得明文态结果;对明文态结果依次进行秘密分享,获得密文态数据;使用本地统计算子对应的安全多方算子对密文态数据进行安全多方计算,获得密文态结果。
[0006]在上述方案的实现过程中,通过结合使用本地统计算子和安全多方算子来实现安全多方计算过程,即在传统的安全多方计算过程中增加了使用本地统计算子对本地存储的明文态数据进行计算的过程,使得原本在安全多方计算过程中对密文态数据的计算量提前至本地计算过程中完成,因此,能够减少密文态数据的计算过程中需要分发和交换的计算量,有效地减少了对数据做统计的分析计算量和通信传输量,从而提高了对数据做统计分析的性能效率。
[0007]可选地,在本申请实施例中,明文态数据包括多个明文态数据,密文态数据包括多个密文态数据;使用本地统计算子对本地存储的明文态数据进行计算,包括:使用本地统计算子计算出多个明文态数据的和值、个数以及平方和;使用本地统计算子对应的安全多方算子对密文态数据进行安全多方计算,包括:使用本地统计算子对应的安全多方算子计算出多个密文态数据的和值、个数以及平方和。
[0008]在上述方案的实现过程中,通过拆解出能本地运算的本地统计算子,从而使得原本在安全多方计算过程中对密文态数据的计算量提前至本地计算过程中完成,有效地减少了对数据做统计的分析计算量和通信传输量,从而提高了对数据做统计分析的性能效率。
[0009]可选地,在本申请实施例中,使用本地统计算子对应的安全多方算子对密文态数
据进行安全多方计算,还包括:根据多个密文态数据的和值以及个数确定多个密文态数据的平均值。
[0010]在上述方案的实现过程中,通过提前完成本地计算过程中需要统计分析的和值部分运算,从而降低了平均值在数据碎片化阶段和密文计算阶段中的数据计算量和通信传输量,从而提高了对数据做统计分析的性能效率。
[0011]可选地,在本申请实施例中,使用本地统计算子对应的安全多方算子对密文态数据进行安全多方计算,还包括:根据多个密文态数据的平均值、和值、个数以及平方和,确定多个密文态数据的方差和/或标准差。
[0012]在上述方案的实现过程中,通过提前完成本地计算过程中需要统计分析的和值、个数以及平方和等部分运算,从而降低了方差和/或标准差在数据碎片化阶段和密文计算阶段中的数据计算量和通信传输量,从而提高了对数据做统计分析的性能效率。
[0013]可选地,在本申请实施例中,还包括:使用多个密文态数据的平均值、和值、个数、平方和、方差和/或标准差,生成多个明文态数据的数据报表。
[0014]在上述方案的实现过程中,通过生成多个明文态数据的数据报表,从而可以在安全多方计算的应用场景中,有效地为目标设备提供数据报表服务。
[0015]可选地,在本申请实施例中,明文态数据包括多个明文投标金额,密文态数据包括多个密文投标金额;使用本地统计算子对本地存储的明文态数据进行计算,包括:使用本地统计算子计算出多个明文投标金额的最大金额或者最小金额;使用本地统计算子对应的安全多方算子对密文态数据进行安全多方计算,包括:使用安全多方算子计算出多个密文投标金额的最大金额或者最小金额,多个密文投标金额的最大金额或者最小金额用于确定中标方。
[0016]在上述方案的实现过程中,通过使用本地统计算子计算出多个明文投标金额的最大金额或者最小金额,并使用安全多方算子计算出多个密文投标金额的最大金额或者最小金额,从而有效地确定最大金额的竞标方为中标方,或者,确定最小金额的竞标方为中标方。
[0017]可选地,在本申请实施例中,密文态结果包括:多个碎片数据;在获得密文态结果之后,还包括:对多个碎片数据进行合并复原,获得最终明文结果。
[0018]本申请实施例还提供了一种安全多方计算装置,包括:明文结果获得模块,用于获取本地统计算子,并使用本地统计算子对本地存储的明文态数据进行计算,获得明文态结果;密文数据获得模块,用于对明文态结果依次进行秘密分享,获得密文态数据;密文结果获得模块,用于使用本地统计算子对应的安全多方算子对密文态数据进行安全多方计算,获得密文态结果。
[0019]可选地,在本申请实施例中,明文态数据包括多个明文态数据,密文态数据包括多个密文态数据;明文结果获得模块,包括:明文态数据计算模块,用于使用本地统计算子计算出多个明文态数据的和值、个数以及平方和;密文结果获得模块,包括:密文态数据计算模块,用于使用本地统计算子对应的安全多方算子计算出多个密文态数据的和值、个数以及平方和。
[0020]可选地,在本申请实施例中,密文结果获得模块,还包括:平均数值确定模块,用于使用安全多方算子根据多个密文态数据的和值以及个数确定多个密文态数据的平均值。
[0021]可选地,在本申请实施例中,密文结果获得模块,还包括:方差标准差确定模块,用于根据多个密文态数据的平均值、和值、个数以及平方和,确定多个密文态数据的方差和/或标准差。
[0022]可选地,在本申请实施例中,安全多方计算装置,还包括:数据报表生成模块,用于使用多个密文态数据的平均值、和值、个数、平方和、方差和/或标准差,生成多个明文态数据的数据报表。
[0023]可选地,在本申请实施例中,明文态数据包括多个明文投标金额,密文态数据包括多个密文投标金额;明文结果获得模块,包括:明文金额计算模块,用于使用本地统计算子计算出多个明文投标金额的最大金额或者最小金额;密文结果获得模块,包括:密文金额计算模块,用于使用安全多方算子计算出多个密文投标金额的最大金额或者最小金额,多个密文投标金额的最大金额或者最小金额用于确定中标方。
[0024]可选地,在本申请实施例中,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种安全多方计算方法,其特征在于,包括:获取本地统计算子,并使用所述本地统计算子对本地存储的明文态数据进行计算,获得明文态结果;对所述明文态结果依次进行秘密分享,获得密文态数据;使用所述本地统计算子对应的安全多方算子对所述密文态数据进行安全多方计算,获得密文态结果。2.根据权利要求1所述的方法,其特征在于,所述明文态数据包括多个明文态数据,所述密文态数据包括多个密文态数据;所述使用所述本地统计算子对本地存储的明文态数据进行计算,包括:使用所述本地统计算子计算出所述多个明文态数据的和值、个数以及平方和;所述使用所述本地统计算子对应的安全多方算子对所述密文态数据进行安全多方计算,包括:使用所述本地统计算子对应的安全多方算子计算出所述多个密文态数据的和值、个数以及平方和。3.根据权利要求2所述的方法,其特征在于,所述使用所述本地统计算子对应的安全多方算子对所述密文态数据进行安全多方计算,还包括:根据所述多个密文态数据的和值以及个数确定所述多个密文态数据的平均值。4.根据权利要求3所述的方法,其特征在于,所述使用所述本地统计算子对应的安全多方算子对所述密文态数据进行安全多方计算,还包括:根据所述多个密文态数据的平均值、和值、个数以及平方和,确定所述多个密文态数据的方差和/或标准差。5.根据权利要求4所述的方法,其特征在于,还包括:使用所述多个密文态数据的平均值、和值、个数、平方和、方差和/或标准差,生成所述多个明文态数据的数据报表。6.根据权利要求1所述的方法,其特征在于...

【专利技术属性】
技术研发人员:赵东卞阳尤志强朱崇炳
申请(专利权)人:上海富数科技有限公司广州分公司
类型:发明
国别省市:

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

1