本技术实施例涉及隐私计算,尤其涉及一种安全多方计算的模型运算方法、装置、电子设备及计算机可读存储介质。
背景技术:
1、安全多方计算(secure multi-party computation,mpc)是一种能够使各个参与方在不相互暴露自身的隐私数据的情况下,通过自身持有的隐私数据,共同安全地计算一个模型算法的方法。
2、相关技术中,为了使各参与方能够进行安全多方计算,需要预先建立模型算法,并将模型算法以明文形式发送至各参与方,各参与方根据解析明文形式的模型算法的运算逻辑,在本地部署模型算法,从而在安全多方计算过程中使用模型算法进行运算。
3、但是,目前的安全多方计算中,各参与方能够得知明文形式的模型算法,明确知晓模型算法的具体内容,虽然保护了各参与方隐私数据的安全性,但无法保证模型算法的安全性。
技术实现思路
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、可选地,所述目标模型算法包括:
52、专家规则评分卡模型算法、逻辑回归模型算法、权重分析模型算法和自定义模型算法中的至少一项。
53、第三方面,本技术实施例还提供了一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现所述的安全多方计算的模型运算方法。
54、第四方面,本技术实施例还提供了一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行所述的安全多方计算的模型运算方法。
55、在本技术实施例中,包括:向各参与方分发基于目标模型算法生成的目标二进制文件;其中,所述目标二进制文件用于在运行后实现所述目标模型算法;从各参与方持有的样本数据中确定各参与方的交集样本数据;各参与方通过运行所述目标二进制文件加载目标模型算法;各参与方向自身加载的目标模型算法传递自身持有的交集样本数据,得到所述目标模型算法输出的运算值秘密碎片;对各参与方的运算值秘密碎片进行秘密恢复,得到交集样本对应的模型运算结果。相比于相关技术中直接将明文形式的目标模型算法分发至各参与方,各参与方根据明文形式的目标模型算法进行安全多方计算的方式,在本技术实施例中,先根据目标模型算法生成目标二进制文件,该目标二进制文件可以在运行后实现对应目标模型算法的功能,通过将目标二进制文件分发至各参与方并运行,能够避免直接向各参与方暴露目标模型算法的实际内容,从而提高安全多方计算过程中模型算法的安全性。
56、上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,而可依照说明书的内容予以实施,并且为了让本技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本技术的具体实施方式。