CN116974519A - 布尔分享转算术分享的数据处理方法、系统及相关设备 - Google Patents
布尔分享转算术分享的数据处理方法、系统及相关设备 Download PDFInfo
- Publication number
- CN116974519A CN116974519A CN202310896724.8A CN202310896724A CN116974519A CN 116974519 A CN116974519 A CN 116974519A CN 202310896724 A CN202310896724 A CN 202310896724A CN 116974519 A CN116974519 A CN 116974519A
- Authority
- CN
- China
- Prior art keywords
- comparison result
- result data
- local node
- random number
- representing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 18
- 238000000034 method Methods 0.000 claims abstract description 26
- 238000004590 computer program Methods 0.000 claims description 13
- 238000004364 calculation method Methods 0.000 description 21
- 238000004891 communication Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/588—Random number generators, i.e. based on natural stochastic processes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/46—Secure multiparty computation, e.g. millionaire problem
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Computational Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例公开了一种布尔分享转算术分享的数据处理方法、系统及相关设备,应用于三方计算系统,其包括第一计算节点、第二计算节点和第三计算节点;第一本地节点、第二本地节点拥有第一比较结果数据,第三本地节点拥有第二比较结果数据;第一比较结果数据与第二比较结果数据的异或运算结果为预设值,方法包括:第三本地节点获取随机数,根据随机数和第二比较结果数据确定第三比较结果数据;第一本地节点根据第一比较结果数据、随机数确定第一运算结果;第二本地节点根据第一比较结果数据、第三比较结果数据确定第二运算结果;第一运算结果与第二运算结果的总和为预设值。采用本申请实施例可以将布尔分享转化为算术分享。
Description
技术领域
本申请涉及隐私计算技术领域以及计算机技术领域,具体涉及一种布尔分享转算术分享的数据处理方法、系统及相关设备。
背景技术
安全多方计算中布尔分享(异或分享)与算术分享(加性分享)的互相转化是常用的数据处理过程,现有技术中,往往关注在如何将算术分享转为布尔分享,随后继续进行比较运算。但是,在某些特殊场景中,例如评分卡计算或者带判断条件的计算中,需要将比较运算的结果继续进行乘法运算,这就需要一种将布尔分享转为算术分享的数据处理方法,因此,如何将布尔分享转化为算术分享的问题亟待解决。
发明内容
本申请实施例提供了一种布尔分享转算术分享的数据处理方法、系统及相关设备方法、系统及相关设备,可以将布尔分享转化为算术分享。
第一方面,本申请实施例提供一种布尔分享转算术分享的数据处理方法,应用于三方计算系统,所述三方计算系统包括第一计算节点、第二计算节点和第三计算节点;所述第一本地节点、所述第二本地节点拥有第一比较结果数据,所述第三本地节点拥有第二比较结果数据;所述第一比较结果数据与所述第二比较结果数据之间的异或运算结果为预设值;所述方法包括:
通过所述第三本地节点获取随机数,根据所述随机数和所述第二比较结果数据确定第三比较结果数据;将所述随机数发送给所述第一本地节点;将所述第三比较结果数据发送给所述第二本地节点;
通过所述第一本地节点根据所述第一比较结果数据、所述随机数确定第一运算结果;
通过所述第二本地节点根据所述第一比较结果数据、所述第三比较结果数据确定第二运算结果;所述第一运算结果与所述第二运算结果的总和等于所述预设值。
第二方面,本申请实施例提供了一种三方计算系统,所述三方计算系统包括第一计算节点、第二计算节点和第三计算节点;所述第一本地节点、所述第二本地节点拥有第一比较结果数据,所述第三本地节点拥有第二比较结果数据;所述第一比较结果数据与所述第二比较结果数据之间的异或运算结果为预设值;其中,
所述第三本地节点,用于获取随机数,根据所述随机数和所述第二比较结果数据确定第三比较结果数据;将所述随机数发送给所述第一本地节点;将所述第三比较结果数据发送给所述第二本地节点;
所述第一本地节点,用于根据所述第一比较结果数据、所述随机数确定第一运算结果;
所述第二本地节点,用于根据所述第一比较结果数据、所述第三比较结果数据确定第二运算结果;所述第一运算结果与所述第二运算结果的总和等于所述预设值。
第三方面,本申请实施例提供一种电子设备,包括处理器、存储器、通信接口以及一个或多个程序,其中,上述一个或多个程序被存储在上述存储器中,并且被配置由上述处理器执行,上述程序包括用于执行本申请实施例第一方面中的步骤的指令。
第四方面,本申请实施例提供了一种计算机可读存储介质,其中,上述计算机可读存储介质存储用于电子数据交换的计算机程序,其中,上述计算机程序使得计算机执行如本申请实施例第一方面中所描述的部分或全部步骤。
第五方面,本申请实施例提供了一种计算机程序产品,其中,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如本申请实施例第一方面中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
实施本申请实施例,具备如下有益效果:
可以看出,本申请实施例中所描述的布尔分享转算术分享的数据处理方法、系统及相关设备,应用于三方计算系统,三方计算系统包括第一计算节点、第二计算节点和第三计算节点;第一本地节点、第二本地节点拥有第一比较结果数据,第三本地节点拥有第二比较结果数据,第一比较结果数据与第二比较结果数据之间的异或运算结果为预设值,通过第三本地节点获取随机数,根据随机数和第二比较结果数据确定第三比较结果数据;将随机数发送给第一本地节点;将第三比较结果数据发送给第二本地节点,通过第一本地节点根据第一比较结果数据、随机数确定第一运算结果,通过第二本地节点根据第一比较结果数据、第三比较结果数据确定第二运算结果;第一运算结果与第二运算结果的总和等于预设值,如此,计算过程通信量低,本地也只需简单的运算,不仅可以将布尔分享转化为算术分享,而且转化后的比较运算结果可以直接再进行算术运算,包括乘法、除法等,从而,满足了评分卡等模型的计算要求或者带判断条件的计算要求。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种用于实现布尔分享转算术分享的数据处理方法的三方计算系统的结构示意图;
图2是本申请实施例提供的一种布尔分享转算术分享的数据处理方法的流程示意图;
图3是本申请实施例提供的另一种布尔分享转算术分享的数据处理方法的流程示意图;
图4是本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本申请实施例所描述计算节点可以为电子设备,电子设备可以包括智能手机(如Android手机、iOS手机、Windows Phone手机等)、平板电脑、掌上电脑、行车记录仪、服务器、笔记本电脑、移动互联网设备(MID,Mobile Internet Devices)或穿戴式设备(如智能手表、蓝牙耳机)等,上述仅是举例,而非穷举,包含但不限于上述电子设备,该电子设备也可以为云服务器,或者,该电子设备也可以为计算机集群。本申请实施例中,第一本地节点、第二本地节点均可以为上述电子设备。
下面对本申请实施例进行详细介绍。
请参阅图1,图1是本申请实施例提供的一种用于实现布尔分享转算术分享的数据处理方法的三方计算系统的架构示意图,如图所示,本三方计算系统可以包括第一计算节点、第二计算节点和第三计算节点;所述第一本地节点、所述第二本地节点拥有第一比较结果数据,所述第三本地节点拥有第二比较结果数据;所述第一比较结果数据与所述第二比较结果数据之间的异或运算结果为预设值;基于该三方计算系统可以实现如下功能:
所述第三本地节点,用于获取随机数,根据所述随机数和所述第二比较结果数据确定第三比较结果数据;将所述随机数发送给所述第一本地节点;将所述第三比较结果数据发送给所述第二本地节点;
所述第一本地节点,用于根据所述第一比较结果数据、所述随机数确定第一运算结果;
所述第二本地节点,用于根据所述第一比较结果数据、所述第三比较结果数据确定第二运算结果;所述第一运算结果与所述第二运算结果的总和等于所述预设值。
可选的,在所述根据所述第一比较结果数据、所述随机数确定第一运算结果方面,所述第一本地节点具体用于:
通过所述第一本地节点按照如下公式确定所述第一运算结果:
k0=2c0×t0+c0-t0
其中,k0表示所述第一运算结果;c0表示所述第一比较结果数据;t0表示所述随机数。
可选的,在所述根据所述第一比较结果数据、所述第三比较结果数据确定第二运算结果方面,所述第二本地节点具体用于:
通过所述第二本地节点按照如下公式确定所述第二运算结果:
k1=t1-2c0×t1
其中,k1表示所述第一运算结果;c0表示所述第一比较结果数据;t1表示所述第三比较结果数据。
可选的,在所述根据所述随机数和所述第二比较结果数据确定第三比较结果数据方面,所述第三本地节点具体用于:
按照如下公式确定所述第三比较结果数据:
t1=c1+t0
其中,t1表示所述第三比较结果数据;c1表示所述第二比较结果数据;t0表示所述随机数。
可以看出,本申请实施例中所描述的三方计算系统,该三方计算系统包括第一计算节点、第二计算节点和第三计算节点;第一本地节点、第二本地节点拥有第一比较结果数据,第三本地节点拥有第二比较结果数据,第一比较结果数据与第二比较结果数据之间的异或运算结果为预设值,通过第三本地节点获取随机数,根据随机数和第二比较结果数据确定第三比较结果数据;将随机数发送给第一本地节点;将第三比较结果数据发送给第二本地节点,通过第一本地节点根据第一比较结果数据、随机数确定第一运算结果,通过第二本地节点根据第一比较结果数据、第三比较结果数据确定第二运算结果;第一运算结果与第二运算结果的总和等于预设值,如此,计算过程通信量低,本地也只需简单的运算,不仅可以将布尔分享转化为算术分享,而且转化后的比较运算结果可以直接再进行算术运算,包括乘法、除法等,从而,满足了评分卡等模型的计算要求或者带判断条件的计算要求。
本申请实施例中,利用secureNN特殊的比较结果格式,将比较运算后的布尔分享转化为算术分享,并且会将算术分享的格式转化为符合secureNN乘法运算的格式,另外,仅需一轮通信,通信量低,本地计算也仅需一步,运行效率高。
请参阅图2,图2是本申请实施例提供的一种布尔分享转算术分享的数据处理方法的流程示意图,应用于图1所示的三方计算系统,所述三方计算系统包括第一计算节点、第二计算节点和第三计算节点;所述第一本地节点、所述第二本地节点拥有第一比较结果数据,所述第三本地节点拥有第二比较结果数据;所述第一比较结果数据与所述第二比较结果数据之间的异或运算结果为预设值;如图所示,本布尔分享转算术分享的数据处理方法包括:
201、通过所述第三本地节点获取随机数,根据所述随机数和所述第二比较结果数据确定第三比较结果数据;将所述随机数发送给所述第一本地节点;将所述第三比较结果数据发送给所述第二本地节点。
本申请实施例,用于神经网络训练的三方安全计算(secure computation forneural network,secureNN)。具体实现中,三方计算系统包括第一计算节点、第二计算节点和第三计算节点。第一本地节点、第二本地节点拥有第一比较结果数据,第三本地节点拥有第二比较结果数据,第一比较结果数据与第二比较结果数据进行异或运算,得到的异或运算结果为预设值。
本申请实施例中,预设值可以预先设置或者系统默认,或者,预设值可以为一个计算结果。
本申请实施例中,第三本地节点可以通过随机算法获取随机数,再根据随机数和第二比较结果数据确定第三比较结果数据,将随机数发送给第一本地节点,将第三比较结果数据发送给第二本地节点。
其中,比较结果数据可以是由其他算法提供的,是一种能够用于实现布尔分享的数据,本申请实施例中,主要考虑拥有比较结果数据之后应该如何将其转为算术分享。
举例说明下,例如,想要计算如下函数:(x>y)*5,其是非线性函数,表示当x>y时函数计算结果为5,其他情况为0。x>y的比较计算结果由其他算法生成,本申请实施例中的前置条件就是拿到了比较的布尔分享结果,但是,此结果没有办法直接运行乘5运算,因此,需要将布尔分享转为算术分享再继续运算。
例如,想要利用隐私计算进行评分卡计算,评分卡是一种常用的信用评估工具,用于根据个人或企业的信用信息来计算得分,进而衡量其信用风险。评分卡常用在联邦信用评估、联邦金融服务、联邦广告推荐等场景,在评分卡计算中,就需要一步将布尔分享转为算术分享的处理,采用本申请实施例,不仅可以将布尔分享转化为算术分享,而且转化后的比较运算结果可以直接再进行算术运算,包括乘法、除法等,从而,满足了评分卡等模型的计算要求或者带判断条件的计算要求。
可选的,上述步骤201,根据所述随机数和所述第二比较结果数据确定第三比较结果数据,可以按照如下方式实施:
按照如下公式确定所述第三比较结果数据:
t1=c1+t0
其中,t1表示所述第三比较结果数据;c1表示所述第二比较结果数据;t0表示所述随机数。
本申请实施例中,可以将随机数和第二比较结果数据进行求和运算,得到第三比较结果数据。具体实现中,按照如下公式确定所述第三比较结果数据:
t1=c1+t0
其中,t1表示第三比较结果数据;c1表示第二比较结果数据;t0表示随机数。
202、通过所述第一本地节点根据所述第一比较结果数据、所述随机数确定第一运算结果。
本申请实施例中,第一本地节点可以根据第一比较结果数据、随机数确定第一运算结果,进行实现布尔分享转算术分享。
可选的,上述步骤202,通过所述第一本地节点根据所述第一比较结果数据、所述随机数确定第一运算结果,可以按照如下方式实施:
通过所述第一本地节点按照如下公式确定所述第一运算结果:
k0=2c0×t0+c0-t0
其中,k0表示所述第一运算结果;c0表示所述第一比较结果数据;t0表示所述随机数。本申请实施例中,第一本地节点可以按照如下公式确定第一运算结果:
k0=2c0×t0+c0-t0
其中,k0表示第一运算结果;c0表示第一比较结果数据;t0表示随机数。进而,实现布尔分享转算术分享。
203、通过所述第二本地节点根据所述第一比较结果数据、所述第三比较结果数据确定第二运算结果;所述第一运算结果与所述第二运算结果的总和等于所述预设值。
本申请实施例中,第二本地节点可以根据第一比较结果数据、第三比较结果数据确定第二运算结果,第一运算结果与第二运算结果的总和等于预设值,进而,实现布尔分享转算术分享。
可选的,上述步骤203,通过所述第二本地节点根据所述第一比较结果数据、所述第三比较结果数据确定第二运算结果,可以按照如下方式实施:
通过所述第二本地节点按照如下公式确定所述第二运算结果:
k1=t1-2c0×t1
其中,k1表示所述第一运算结果;c0表示所述第一比较结果数据;t1表示所述第三比较结果数据。
本申请实施例中,第二本地节点可以按照如下公式确定第二运算结果:
k1=t1-2c0×t1
其中,k1表示第一运算结果;c0表示第一比较结果数据;t1表示第三比较结果数据,进而,实现布尔分享转算术分享。
举例说明下,如图3所示,参与方可以包括3个安全多方的计算节点,3个计算节点分别为:p0、p1和p2,具体实现中,三方拥有比较结果数据,其中p0,p1拥有数据c0,p2拥有数据c1,满足c0⊕c1=c。p2获取随机数t0,计算t1=c1+t0,将t0发送给p0,t1发送给p1。P0计算k0=2c0×t0+c0-t0,p1计算k1=t1-2c0×t1。此时,满足k0+k1=c,完成了将布尔分享转化为算术分享,通过此转化过程,比较运算结果可以直接再进行算术运算,包括乘法、除法等,满足了评分卡等模型的计算要求,另外,本数据处理方法只需要一轮通信,通信量低,本地也只需简单的运算,相比于其他的布尔转算术方法运行效率高。
本申请实施例中,通过利用secureNN特殊的比较结果拥有方式,利用p1拥有c0这一特点,设计了一种特殊的,专用于secureNN的布尔分享转算术分享数据处理方法,具体实现中,只需要一轮通信以及少量本地计算即可完成转化,效率高。
可以看出,本申请实施例中所描述的布尔分享转算术分享的数据处理方法,应用于三方计算系统,三方计算系统包括第一计算节点、第二计算节点和第三计算节点;第一本地节点、第二本地节点拥有第一比较结果数据,第三本地节点拥有第二比较结果数据,第一比较结果数据与第二比较结果数据之间的异或运算结果为预设值,通过第三本地节点获取随机数,根据随机数和第二比较结果数据确定第三比较结果数据;将随机数发送给第一本地节点;将第三比较结果数据发送给第二本地节点,通过第一本地节点根据第一比较结果数据、随机数确定第一运算结果,通过第二本地节点根据第一比较结果数据、第三比较结果数据确定第二运算结果;第一运算结果与第二运算结果的总和等于预设值,如此,计算过程通信量低,本地也只需简单的运算,不仅可以将布尔分享转化为算术分享,而且转化后的比较运算结果可以直接再进行算术运算,包括乘法、除法等,从而,满足了评分卡等模型的计算要求或者带判断条件的计算要求。
与上述实施例一致地,请参阅图4,图4是本申请实施例提供的一种电子设备的结构示意图,如图所示,该电子设备包括处理器、存储器、通信接口以及一个或多个程序,应用于三方计算系统,所述三方计算系统包括第一计算节点、第二计算节点和第三计算节点;所述第一本地节点、所述第二本地节点拥有第一比较结果数据,所述第三本地节点拥有第二比较结果数据;所述第一比较结果数据与所述第二比较结果数据之间的异或运算结果为预设值;上述一个或多个程序被存储在上述存储器中,并且被配置由上述处理器执行,本申请实施例中,上述程序包括用于执行以下步骤的指令:
通过所述第三本地节点获取随机数,根据所述随机数和所述第二比较结果数据确定第三比较结果数据;将所述随机数发送给所述第一本地节点;将所述第三比较结果数据发送给所述第二本地节点;
通过所述第一本地节点根据所述第一比较结果数据、所述随机数确定第一运算结果;
通过所述第二本地节点根据所述第一比较结果数据、所述第三比较结果数据确定第二运算结果;所述第一运算结果与所述第二运算结果的总和等于所述预设值。
可选的,在所述通过所述第一本地节点根据所述第一比较结果数据、所述随机数确定第一运算结果方面,上述程序包括用于执行以下步骤的指令:
通过所述第一本地节点按照如下公式确定所述第一运算结果:
k0=2c0×t0+c0-t0
其中,k0表示所述第一运算结果;c0表示所述第一比较结果数据;t0表示所述随机数。
可选的,在所述通过所述第二本地节点根据所述第一比较结果数据、所述第三比较结果数据确定第二运算结果方面,上述程序包括用于执行以下步骤的指令:
通过所述第二本地节点按照如下公式确定所述第二运算结果:
k1=t1-2c0×t1
其中,k1表示所述第一运算结果;c0表示所述第一比较结果数据;t1表示所述第三比较结果数据。
可选的,在所述根据所述随机数和所述第二比较结果数据确定第三比较结果数据方面,上述程序包括用于执行以下步骤的指令:
按照如下公式确定所述第三比较结果数据:
t1=c1+t0
其中,t1表示所述第三比较结果数据;c1表示所述第二比较结果数据;t0表示所述随机数。
可以看出,本申请实施例中所描述的电子设备,应用于三方计算系统,三方计算系统包括第一计算节点、第二计算节点和第三计算节点;第一本地节点、第二本地节点拥有第一比较结果数据,第三本地节点拥有第二比较结果数据,第一比较结果数据与第二比较结果数据之间的异或运算结果为预设值,通过第三本地节点获取随机数,根据随机数和第二比较结果数据确定第三比较结果数据;将随机数发送给第一本地节点;将第三比较结果数据发送给第二本地节点,通过第一本地节点根据第一比较结果数据、随机数确定第一运算结果,通过第二本地节点根据第一比较结果数据、第三比较结果数据确定第二运算结果;第一运算结果与第二运算结果的总和等于预设值,如此,计算过程通信量低,本地也只需简单的运算,不仅可以将布尔分享转化为算术分享,而且转化后的比较运算结果可以直接再进行算术运算,包括乘法、除法等,从而,满足了评分卡等模型的计算要求或者带判断条件的计算要求。
本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤,上述计算机包括电子设备。
本申请实施例还提供一种计算机程序产品,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。该计算机程序产品可以为一个软件安装包,上述计算机包括电子设备。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例上述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取器(英文:Random Access Memory,简称:RAM)、磁盘或光盘等。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种布尔分享转算术分享的数据处理方法,其特征在于,应用于三方计算系统,所述三方计算系统包括第一计算节点、第二计算节点和第三计算节点;所述第一本地节点、所述第二本地节点拥有第一比较结果数据,所述第三本地节点拥有第二比较结果数据;所述第一比较结果数据与所述第二比较结果数据之间的异或运算结果为预设值;所述方法包括:
通过所述第三本地节点获取随机数,根据所述随机数和所述第二比较结果数据确定第三比较结果数据;将所述随机数发送给所述第一本地节点;将所述第三比较结果数据发送给所述第二本地节点;
通过所述第一本地节点根据所述第一比较结果数据、所述随机数确定第一运算结果;
通过所述第二本地节点根据所述第一比较结果数据、所述第三比较结果数据确定第二运算结果;所述第一运算结果与所述第二运算结果的总和等于所述预设值。
2.根据权利要求1所述的方法,其特征在于,所述通过所述第一本地节点根据所述第一比较结果数据、所述随机数确定第一运算结果,包括:
通过所述第一本地节点按照如下公式确定所述第一运算结果:
k0=2c0×t0+c0-t0
其中,k0表示所述第一运算结果;c0表示所述第一比较结果数据;t0表示所述随机数。
3.根据权利要求2所述的方法,其特征在于,所述通过所述第二本地节点根据所述第一比较结果数据、所述第三比较结果数据确定第二运算结果,包括:
通过所述第二本地节点按照如下公式确定所述第二运算结果:
k1=t1-2c0×t1
其中,k1表示所述第一运算结果;c0表示所述第一比较结果数据;t1表示所述第三比较结果数据。
4.根据权利要求3所述的方法,其特征在于,所述根据所述随机数和所述第二比较结果数据确定第三比较结果数据,包括:
按照如下公式确定所述第三比较结果数据:
t1=c1+t0
其中,t1表示所述第三比较结果数据;c1表示所述第二比较结果数据;t0表示所述随机数。
5.一种三方计算系统,其特征在于,所述三方计算系统包括第一计算节点、第二计算节点和第三计算节点;所述第一本地节点、所述第二本地节点拥有第一比较结果数据,所述第三本地节点拥有第二比较结果数据;所述第一比较结果数据与所述第二比较结果数据之间的异或运算结果为预设值;其中,
所述第三本地节点,用于获取随机数,根据所述随机数和所述第二比较结果数据确定第三比较结果数据;将所述随机数发送给所述第一本地节点;将所述第三比较结果数据发送给所述第二本地节点;
所述第一本地节点,用于根据所述第一比较结果数据、所述随机数确定第一运算结果;
所述第二本地节点,用于根据所述第一比较结果数据、所述第三比较结果数据确定第二运算结果;所述第一运算结果与所述第二运算结果的总和等于所述预设值。
6.根据权利要求5所述的系统,其特征在于,在所述根据所述第一比较结果数据、所述随机数确定第一运算结果方面,所述第一本地节点具体用于:
通过所述第一本地节点按照如下公式确定所述第一运算结果:
k0=2c0×t0+c0-t0
其中,k0表示所述第一运算结果;c0表示所述第一比较结果数据;t0表示所述随机数。
7.根据权利要求6所述的系统,其特征在于,在所述根据所述第一比较结果数据、所述第三比较结果数据确定第二运算结果方面,所述第二本地节点具体用于:
通过所述第二本地节点按照如下公式确定所述第二运算结果:
k1=t1-2c0×t1
其中,k1表示所述第一运算结果;c0表示所述第一比较结果数据;t1表示所述第三比较结果数据。
8.根据权利要求7所述的系统,其特征在于,在所述根据所述随机数和所述第二比较结果数据确定第三比较结果数据方面,所述第三本地节点具体用于:
按照如下公式确定所述第三比较结果数据:
t1=c1+t0
其中,t1表示所述第三比较结果数据;c1表示所述第二比较结果数据;t0表示所述随机数。
9.一种电子设备,其特征在于,包括处理器、存储器,所述存储器用于存储一个或多个程序,并且被配置由所述处理器执行,所述程序包括用于执行如权利要求1-4任一项所述的方法中的步骤的指令。
10.一种计算机可读存储介质,其特征在于,存储用于电子数据交换的计算机程序,其中,所述计算机程序使得计算机执行如权利要求1-4任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310896724.8A CN116974519A (zh) | 2023-07-20 | 2023-07-20 | 布尔分享转算术分享的数据处理方法、系统及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310896724.8A CN116974519A (zh) | 2023-07-20 | 2023-07-20 | 布尔分享转算术分享的数据处理方法、系统及相关设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116974519A true CN116974519A (zh) | 2023-10-31 |
Family
ID=88472368
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310896724.8A Pending CN116974519A (zh) | 2023-07-20 | 2023-07-20 | 布尔分享转算术分享的数据处理方法、系统及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116974519A (zh) |
-
2023
- 2023-07-20 CN CN202310896724.8A patent/CN116974519A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111046433B (zh) | 一种基于联邦学习的模型训练方法 | |
WO2020199693A1 (zh) | 一种大姿态下的人脸识别方法、装置及设备 | |
CN113221183B (zh) | 实现隐私保护的多方协同更新模型的方法、装置及系统 | |
CN113542228B (zh) | 基于联邦学习的数据传输方法、装置以及可读存储介质 | |
CN111612167A (zh) | 机器学习模型的联合训练方法、装置、设备及存储介质 | |
CN110826420A (zh) | 人脸识别模型的训练方法及装置 | |
CN111563267A (zh) | 用于联邦特征工程数据处理的方法和装置 | |
CN110889759A (zh) | 信用数据的确定方法、装置及存储介质 | |
CN113377797A (zh) | 联合更新模型的方法、装置及系统 | |
CN113033717B (zh) | 一种模型生成方法、装置以及用于模型生成的装置 | |
CN112765481B (zh) | 一种数据处理方法、装置、计算机及可读存储介质 | |
CN111737921B (zh) | 基于循环神经网络的数据处理方法、设备及介质 | |
CN110705635B (zh) | 用于生成隔离森林的方法和装置 | |
CN110059097B (zh) | 数据处理方法和装置 | |
CN111915689A (zh) | 用于生成目标函数的方法、装置、电子设备和计算机可读介质 | |
CN116974519A (zh) | 布尔分享转算术分享的数据处理方法、系统及相关设备 | |
CN114584285B (zh) | 安全多方处理方法及相关设备 | |
CN115564447A (zh) | 一种信用卡交易风险检测方法及装置 | |
CN114493850A (zh) | 基于人工智能的在线公证方法、系统及存储介质 | |
CN110414984A (zh) | 基于区块链的身份验证方法及相关产品 | |
CN113094745B (zh) | 基于隐私保护的数据变换方法、装置和服务器 | |
CN117010018A (zh) | 本地模型的联邦预测方法、系统及相关设备 | |
CN115829729B (zh) | 一种基于三链架构的供应链金融信用评价系统及方法 | |
CN117411622A (zh) | 安全三方高精度数据处理方法、系统及相关设备 | |
CN115048676B (zh) | 隐私计算应用中的安全智能校验方法及相关装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |