CN114553407A - 基于秘密分享的数据处理方法及设备 - Google Patents
基于秘密分享的数据处理方法及设备 Download PDFInfo
- Publication number
- CN114553407A CN114553407A CN202210142796.9A CN202210142796A CN114553407A CN 114553407 A CN114553407 A CN 114553407A CN 202210142796 A CN202210142796 A CN 202210142796A CN 114553407 A CN114553407 A CN 114553407A
- Authority
- CN
- China
- Prior art keywords
- data
- result
- replacement
- sharing
- protocol
- 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 36
- 238000012795 verification Methods 0.000 claims abstract description 129
- 238000012545 processing Methods 0.000 claims abstract description 105
- 238000000034 method Methods 0.000 claims abstract description 96
- 230000008569 process Effects 0.000 claims abstract description 80
- 238000004364 calculation method Methods 0.000 claims abstract description 52
- 239000013598 vector Substances 0.000 claims description 27
- 230000001360 synchronised effect Effects 0.000 claims description 24
- 238000010200 validation analysis Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 5
- 238000004891 communication Methods 0.000 abstract description 14
- 238000010586 diagram Methods 0.000 description 10
- 238000004458 analytical method Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000007405 data analysis Methods 0.000 description 2
- 238000013524 data verification Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本申请实施例提供的基于秘密分享的数据处理方法及设备,通过对秘密分享过程中的分享数据的置换过程进行基于承诺数据的协议验证,以保证各计算参与方是按照预设的不经意置换协议对分享数据进行置换处理。同时,由于该方案中的承诺数据是基于乘法运算生成的,这将使得基于承诺数据进行协议验证所需要的通信量较低,不会为各计算参与方带来过大的通信开销。
Description
技术领域
本申请实施例涉及多方安全计算技术领域,尤其涉及一种基于秘密分享的数据处理方法及设备。
背景技术
随着计算机技术的快速发展,基于大数据的数据分析为各领域的发展提供了保障。多方安全计算是一种可实现在不披露任意计算参与方输入数据的条件下,实现多方数据联合运算的计算机制。
在多个计算参与方执行多方安全计算的过程中,各计算参与方均需要按照预设的安全协议来执行相关计算操作。当出现任意计算参与方在执行相关操作,且不按照安全协议所描述的操作进行计算的情况时,多方安全计算过程中的数据安全将无法得到有效保证。
发明内容
本申请实施例提供一种基于秘密分享的数据处理方法及设备。
第一方面,本申请提供了一种基于秘密分享的数据处理方法,该数据处理方法应用于基于秘密分享的数据处理系统,数据处理系统包括多个计算参与方;该数据处理方法,包括:
利用各个计算参与方参与所生成的随机分享参数,对秘密分享过程中的待处理的分享数据进行乘法运算,得到分享数据所对应的承诺数据;基于不经意置换协议,各个计算参与方对分享数据以及承诺数据进行同步置换处理,得到分享数据的置换结果和承诺数据的置换结果;利用承诺数据的置换结果和随机分享参数,对分享数据的置换结果进行协议验证,得到第一验证结果;根据第一验证结果,输出分享数据的置换结果。
可知的是,通过对秘密分享过程中的分享数据的置换处理过程进行协议验证,以保证各计算参与方是按照不经意置换协议对分享数据进行的秘密分享的相关处理。同时,由于该方案中采用基于乘法运算所生成的承诺数据实现的协议验证,其验证所需要的通信量较低,不会为各计算参与方带来过大的通信开销。
可选的,利用各个计算参与方参与所生成的随机分享参数,对秘密分享过程中的待处理的分享数据进行乘法运算,得到分享数据所对应的承诺数据,包括:针对分享数据中的每个分享值,计算每个分享值与随机分享参数的乘积,得到每个分享值对应的承诺值;各承诺值构成承诺数据。
可知的是,通过利用乘法运算的方式,以将分享数据中的每个分享值与随机分享参数的乘积作为承诺数据,从而保证了承诺数据和分享数据之间具有线性对应关系,进而便于后续利用承诺数据对分享数据进行协议验证处理。
可选的,该数据处理方法还包括:各个计算参与方基于第一预设协议,生成置换向量;置换向量用于对分享数据以及承诺数据进行同步置换处理。
可知的是,该数据处理方法具体可应用在秘密分享的对分享数据的不经意处置过程中,而通过利用第一预设协议所产生的置换向量,对分享数据和承诺数据同步进行置换处理,能够保证数据置换的同步性,便于后续对置换后的数据进行协议验证。
可选的,利用承诺数据的置换结果和随机分享参数,对分享数据的置换结果进行协议验证,得到第一验证结果,包括:对随机分享参数与分享数据的置换结果进行乘法运算,得到第一乘法运算数据;对第一乘法运算数据与承诺数据的置换结果进行差值运算,得到第一差值运算数据;基于第二预设协议,对第一差值运算数据进行确零处理,得到第一验证结果。
可知的是,由于承诺数据是利用分享数据与随机分享参数通过乘法运算生成的,基于此,利用各计算参与方在均采用安全协议进行置换运算的情况下,承诺数据对应的置换结果与随机分享参数通过乘法运算所得到的第一乘法运算数据,与分享数据的置换结果之间的第一差值运算数据应为全零数据的结果,对各计算参与方在计算过程中是否采用恶意安全协议进行运算进行验证。
可选的,该数据处理方法,还包括:利用承诺数据和随机分享参数,对分享数据进行协议验证,得到第二验证结果;根据第一验证结果,和/或,第二验证结果,输出分享数据的置换结果。
可选的,利用承诺数据和随机分享参数,对分享数据进行协议验证,得到第二验证结果,包括:对随机分享参数与分享数据进行乘法运算,得到第二乘法运算数据;对第二乘法运算数据与承诺数据进行差值运算,得到第二差值运算数据;基于第二预设协议,对第二差值运算数据进行确零处理,得到第二验证结果。
可知的是,由于整个数据处理过程中涉及多个处理步骤,而每个处理步骤均涉及采用不同的预设协议,基于此,通过对待处理的分享数据所对应的承诺数据也进行协议验证,以保证承诺数据数据是采用安全的协议生成的数据,进一步保证数据安全,防止恶意攻击的产生。
可选的,对分享数据以及承诺数据进行的同步置换处理包括:同步的多次置换运算;该数据处理方法,还包括:在对分享数据以及承诺数据进行的多次置换运算中,选取至少一次置换运算所得到的分享数据的中间结果和承诺数据的中间结果;利用承诺数据的中间结果和随机分享参数,对分享数据的中间结果进行协议验证,得到第三验证结果;根据第一验证结果,和/或,第三验证结果,输出分享数据的置换结果。
可选的,选取至少一次置换运算所得到的分享数据的中间结果和承诺数据的中间结果包括:对分享数据以及承诺数据进行第一次置换运算所得到的分享数据的第一中间结果和承诺数据的第一中间结果。
可选的,利用承诺数据的中间结果和随机分享参数,对分享数据的中间结果进行协议验证,得到第三验证结果,包括:对随机分享参数与分享数据的中间结果进行乘法运算,得到第三乘法运算数据;对第三乘法运算数据与承诺数据的中间结果进行差值运算,得到第三差值运算数据;基于第二预设协议,对第三差值运算数据进行确零处理,得到第三验证结果。
可知的是,在置换处理过程中涉及多次置换运算,由于每次置换运算均调用一次相关协议,为了进一步保证数据安全,可针对置换处理过程中的任一次处理所产生的中间数据进行相应的协议验证,以进一步保证数据安全,防止恶意攻击的产生。
可选的,该确零处理,包括:利用各个计算参与方参与所生成的随机数据中的各随机数,对第一差值运算数据,或,第二差值运算数据,或,第三差值运算数据中的各运算值,进行乘积求和运算,得到乘积求和运算结果;根据乘积求和运算结果确定第一验证结果,或,第二验证结果,或,第三验证结果。
可知的是,实施例还提供了确零处理的具体流程,通过该流程能够有效提升确零处理的处理效率,进一步降低协议验证所需要的通信量。
可选的,秘密分享的数据处理是基于重复分享方案实现的,计算参与方的数量为3。
可知的是,该处理方案能够有效对多方秘密分享过程中的置换处理的处理过程进行协议验证,特别针对于三方秘密分享过程有着更好的验证效果。
第二方面,本申请实施例提供了一种电子设备,包括:
至少一个处理器;以及
存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如第一方面任一项所述方法。
第三方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如第一方面任一项所述方法。
第四方面,本申请实施例提供了一种计算机程序产品,包括计算机指令,该计算机指令被处理器执行时实现如第一方面任一项所述方法。
本申请实施例提供的基于秘密分享的数据处理方法及设备,通过对秘密分享过程中的分享数据的置换过程进行基于承诺数据的协议验证,以保证各计算参与方是按照预设的不经意置换协议对分享数据进行置换处理。同时,由于该方案中的承诺数据是基于乘法运算生成的,这将使得基于承诺数据进行协议验证所需要的通信量较低,不会为各计算参与方带来过大的通信开销。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1为本申请所基于的一种网络架构的示意图;
图2为本申请实施例提供的一种基于秘密分享的数据处理方法的流程示意图;
图3为一种现有的基于(3,2)重复分享方案的数据流示意图;
图4为本申请实施例提供的一种基于(3,2)重复分享方案的数据流示意图;
图5为本申请实施例提供的又一种基于(3,2)重复分享方案的数据流示意图;
图6为本申请提供的一种电子设备的硬件结构示意图。
通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
本申请的技术方案中,所涉及的信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
随着计算机技术的快速发展,基于大数据的数据分析为各领域的发展提供了保障。
在电商领域中,不同的商家、品牌商和平台从不同渠道掌握了不同属性的数据,这些数据可被聚合到一起进行联合分析,以得到更为全面和准确的分析结果。为了保证数据安全,商家、品牌商和平台所持有的数据是不能直接方给其他商家、品牌商和平台的。在这种情况下,利用上述提及的MPC将能够有效解决不同的商家、品牌商和平台之间的数据联合分析的问题。
多方安全计算(secure multiparty computation,简称MPC)是一种可实现在不披露任意计算参与方输入数据的条件下,实现多方数据联合运算的计算机制。
具体来说,各计算参与方约定一个待计算的函数,随后应用MPC协议,将每个人所持有的数据的秘密份额输入协议中,联合计算得到函数的输出,同时不泄漏私有输入。其中,待计算的函数具体用于指联合分析任务所包括的任一计算过程中所使用的函数,如,本申请中所涉及到函数则为置换处理过程所使用的函数。
图1为本申请所基于的一种网络架构的示意图,该图中是以电商领域为例进行的网络架构的说明。参考图1,网络架构具体可包括数据提供方以及计算参与方;其中,数据提供方和计算参与方的数量均为多个。
示例性的,数据提供方的数量为3个,其分别属于不同的厂商A、厂商B和厂商C。各厂商各自持有独占的数据,且各厂商之间不进行数据交互。在MPC下,各厂商将利用协议将各自持有的数据输入协议中,以得到分享数据X。而对于每一个厂商来说,其均不可获知分享数据X的具体内容。
示例性的,计算参与方的数量为3个,其包括有计算参与方P1、计算参与方P2和计算参与方P3。对于每一个计算参与方来说,其均可为用于执行运算任务的节点设备,各节点设备将按照MPC中的预设协议执行相应的协议运算,以完成对分享数据X的联合分析。
其中,对于各计算参与方来说,通过触发MPC的预设协议,其每个计算参与方将获取分享数据X的秘密份额,如计算参与方P1获取到分享数据的秘密份额x1,计算参与方P2获取到分享数据的秘密份额x2,计算参与方P3获取到分享数据的秘密份额x3。各计算参与方将根据预设协议进行基于分享数据的数据运算和数据交互,以最终实现联合分析任务。
可知的是,在各计算参与方均遵守安全协议执行计算操作时,每一个计算参与方仅能够获知其所持有的分享数据的秘密份额,而不可获知完整的分享数据X,这将使得数据安全性得到保证。
但是,在一些情况下,当计算参与方中出现恶意节点时,该计算参与方可能将不按照预定的安全协议来执行计算操作。这将使得上述提及的MPC过程中的私有输入的安全无法得到保证,私有输入容易发生泄漏的问题。
为了克服上述问题,现有技术为MPC提供了一种基于零知识证明的协议验证方案,以保证置换处理过程中的数据安全不被泄露。但是,当利用零知识证明对本次处理的各计算参与方进行协议验证,并得到各计算参与方均诚实执行了协议的验证结果时,其验证结果的置信度仅为二分之一,也就是说,尽管验证通过,但各计算参与方仍有二分之一的可能性为没有诚实执行协议的情况,即验证结果出现错误的概率为二分之一。
基于此,在现有的基于零知识证明对协议进行验证方案中,为了置信度较高的验证结果,往往会采用对协议进行多次零知识证明验证的方式实现。也就是说,可通过对相同的协议进行连续的λ次验证,而当该λ次的验证均通过时,才认定各计算参与方诚实的执行了协议,此时该验证结果的错误率仅为(1/2)的λ次方。
其中,当λ取较大值时,(1/2)的λ次方相对较小,此时验证结果的错误率极低,验证结果的置信度较高。例如,当λ取128时,(1/2)的λ次方的取值接近0,验证结果为假的概率接近0。但是,完成各计算参与方的协议验证所需要的通信量将达到O(mλ),其明显通信量较大。
基于上述问题,本申请将利用乘法运算生成的承诺数据验证来对各个计算参与方进行同步协议验证,从而保证各计算参与方是按照预设的不经意置换协议对分享数据进行的秘密分享的不经意置换处理。与现有技术的基于零知识证明的验证方式不同的是,本申请中为了抵抗恶意节点引入的操作仅包括对承诺数据的同步处理及验证,其每一次验证的验证结果的置信度较高,其验证结果的错误率接近0,即本申请无需向现有技术那样,采用对相同的数据进行连续λ次验证的方式,而是仅对相同的数据采用1次验证的方式即可。这将使得本申请每次验证所需要的通信量仅为O(m),不会为各计算参与方带来过大的通信开销。
下面通过具体的实施例对本申请提供的基于秘密分享的数据处理方法及设备进行详细说明。下面的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
需要说明的是,本实施例中提供的基于秘密分享的数据处理方法的执行主体为前述提及的由多个计算参与方构成的基于秘密分享的数据处理系统。图2为本申请实施例提供的一种基于秘密分享的数据处理方法的流程示意图。如图2所示的,该基于秘密分享的数据处理方法可以包括如下几个步骤:
步骤201、利用各个计算参与方参与所生成的随机分享参数,对秘密分享过程中的待处理的分享数据进行乘法运算,得到分享数据所对应的承诺数据。
步骤202、基于不经意置换协议,各个计算参与方对分享数据以及承诺数据进行同步置换处理,得到分享数据的置换结果和承诺数据的置换结果。
步骤203、利用承诺数据的置换结果和随机分享参数,对分享数据的置换结果进行协议验证,得到第一验证结果。
步骤204、根据第一验证结果,输出分享数据的置换结果。
可以理解的是,本申请实施例提供的基于秘密分享的数据处理方法可应用于多方安全计算的相关系统,即其可应用于如图1所示的网络架构。
分享数据可以是任何类型的数据,可以包括但不限于用户的个人信息的数据,或者商业数据等。在一些示例中,该分享数据还可以为经过加密处理的以密文形式存在的数据。
秘密分享的相关处理可能涉及不同计算类型的数学计算,如四则计算(例如加法计算、减法计算、乘法计算、除法计算)、逻辑计算(例如与计算、或计算、异或计算)等。本申请实施方式是应用在置换处理这一计算类型的数据计算的处理过程中的,对置换处理所涉及的处理过程进行协议验证的方案。
如前所述的,在现有的基于零知识证明对协议进行验证方案中,为了置信度较高的验证结果,往往会采用对协议进行多次零知识证明验证的方式实现。但是,完成各计算参与方的协议验证所需要的通信量将达到O(mλ),其明显通信量较大。
而在本申请实施例中,将不再利用零知识证明进行协议验证,而是采用承诺数据来对协议进行验证。
在具体验证时,本申请实施例将会利用随机分享参数对分享数据进行乘法运算,以生成获得的承诺数据;然后,对分享数据与承诺数据进行完全同步的置换处理,最后,利用置换处理后的承诺数据与置换处理后的分享数据应保持基于随机分享参数的相乘关系来对每个计算参与方所涉及的各处理过程是否按照协议执行进行协议验证。
由于本申请实施方式采用了利用乘法运算生成的承诺数据验证来对各个计算参与方进行同步协议验证,从而保证各计算参与方是按照预设的安全协议对分享数据进行的秘密分享的相关处理。由于该方案为了抵抗恶意节点引入的操作仅包括对承诺数据的同步处理及验证,其所需要的通信量为O(m),其明显通信量较低,不会为各计算参与方带来过大的通信开销。
在秘密分享过程中,本申请对方案涉及的计算参与方的数量将不进行限制。在一些示例中,本方案提供的秘密分享的数据处理时基于重复分享方案(replicated sharing)实现的,其计算参与方的数量为3,即秘密分享的数据处理可应用在(3,2)的重复分享方案中。
为了进一步说明本申请提供的基于秘密分享的数据处理方法,本申请以对(3,2)的重复分享方案中的置换处理进行协议验证为例,对本申请提供的技术方案进行进一步描述。
图3为一种现有的基于(3,2)重复分享方案的数据流示意图。
如图3所示的,在基于(3,2)重复分享方案的对分享数据进行置换处理的过程中,计算参与方的数量为3,其表示为P1、P2和P3。如之前所述的,不同的计算参与方可获得前述各数据提供方所提供的分享数据X中的不同秘密份额。
需要说明的是,在(3,2)重复分享方案中,利用协议分享数据X将随机被分为3份,表示为[X]1、[X]2和[X]3。其中,X=[X]1+[X]2+[X]3。
同时,为了实现重复分享,对于任一计算参与方均可持有3份中的2份,如图所示的P1将持有[X]1、[X]2,P2将持有[X]2、[X]3以及P3将持有[X]1、[X]3。
在进行置换处理时,需要确定本次置换处理所使用的置换向量π。置换向量π是用于表示定义域和值域之间的一一映射的映射关系的向量,其具体可有数组构成,如π=(π1,……,πm)。当该置换向量π作用于数组N=(N1,……,Nm)上时,将得到π·N=N’=(N1’,……,Nm’)。其中,对于任意的i∈{1,……,m}均成立Ni’=Nπ(i)。
与前述的分享数据X类似的是,置换向量π也将被随机分为3份,并由任一计算参与方均可持有3份中的2份,如图所示的P1将持有π1、π2,P2将持有π2、π3以及P3将持有π1、π3。其中,π=π1·π2·π3。
随后,为了实现对(3,2)重复分享方案的置换处理,首先会利用转换协议,将该(3,2)重复分享方案下的分享数据X转换为(2,2)秘密分享方案下的分享数据|X|0,以便后续进行置换处理。
而基于置换处理的不经意置换协议,在进行置换处理时,需要基于不经意置换协议,依次利用π1、π2和π3进行置换运算,得到(2,2)秘密分享下的置换处理后的分享数据|X|3,此时,|X|3=π1·π2·π3·|X|0。
最后,将(2,2)秘密分享的分享数据的秘密份额|x|3转换回为(3,2)秘密分享的分享数据[X]3,[X]3则为对分享数据X进行置换处理后的分享数据,即[X]3=π·X。
至此,当前各计算参与方所得到的[X]3为经过置换向量π的置换处理后的分享数据,该运算结果可后续被联合分析运算中的其他运算操作所使用。
而在图3提供的现有的基于(3,2)重复分享方案的置换处理的基础上,本申请实施方式将添加对于置换处理后的分享数据[X]3的获取过程进行协议验证的相关步骤,以保证得到的置换处理后的分享数据[X]3是由各计算参与方执行预设协议而得到的。
具体来说,图4为本申请实施例提供的一种基于(3,2)重复分享方案的数据流示意图。如图4所示的,在基于(3,2)重复分享方案的对分享数据进行置换处理的过程中,计算参与方的数量为3,其表示为P1、P2和P3。
如之前所述的,不同的计算参与方可获得前述各数据提供方所提供的分享数据X中的不同秘密份额,即各计算参与方将利用协议分享数据X将随机被分为3份,表示为[X]1、[X]2和[X]3。其中,X=[X]1+[X]2+[X]3。同时,为了实现重复分享,对于任一计算参与方均可持有3份中的2份,如图所示的P1将持有[X]1、[X]2,P2将持有[X]2、[X]3以及P3将持有[X]1、[X]3。
当然,图4所示方案中仍然需要由各个计算参与方基于第一预设协议,生成置换向量π;所置换向量π用于对分享数据以及后续得到的承诺数据进行同步置换处理。
其中,置换向量π是用于表示定义域和值域之间的一一映射的映射关系的向量,其具体可有数组构成,如π=(π1,……,πm)。当该置换向量π作用于数组N=(N1,……,Nm)上时,将得到π·N=N’=(N1’,……,Nm’)。其中,对于任意的i∈{1,……,m}均成立Ni’=Nπ(i)。置换向量π也将被随机分为3份,并由任一计算参与方均可持有3份中的2份,如图4所示的P1将持有π1、π2,P2将持有π2、π3以及P3将持有π1、π3。其中,π=π1·π2·π3。
与前述图3示例不同的是,为了对置换后的分享数据进行协议验证,如图4所示的,各计算参与方还将生成承诺数据Y。
具体的,在可选实施方式中,承诺数据Y进可由各计算参与方调用协议算子Fmult来对随机分享参数a进行与分享数据X的乘法运算来实现。而其中的,随机分享参数a则可由各计算参与方先通过调用协议中的算子Frand来生成。
进一步来说,在生成承诺数据Y时,基于协议各计算参与方可针对分享数据X中的每个分享值[xi],如,(x1,…,xm),计算每个分享值与随机分享参数a的乘积,如(ax1,…axm),得到的每个分享值的乘积[axi]将作为各的承诺值[yi],构成承诺数据Y;也就是说,承诺数据Y可表示为(y1,…ym)=(ax1,…axm),即Y=aX。
经过上述处理,此时,P1将持有分享数据的秘密份额[X]1和[X]2、置换向量的秘密份额π1和π2以及承诺数据的秘密份额[Y]1和[Y]2;P2将持有分享数据的秘密份额[X]2和[X]3、置换向量的秘密份额π2和π3以及承诺数据的秘密份额[Y]2和[Y]3;P3将持有分享数据的秘密份额[X]1和[X]3、置换向量的秘密份额π1和π3以及承诺数据的秘密份额[Y]1和[Y]3。
需要说明的是,分享数据X是由m维的数组构成的,即X由([x1],…[xm])构成;而分享数据X的任一秘密份额[X]i中应包括有分享数据中的每个分享值[xi]所对应的部分数据,如,[X]1由([x1]1,…[xm]1)构成,[X]2由([x1]2,…[xm]2)构成,[X]3由([x1]3,…[xm]3)构成,其中,[x1]=[x1]1+[x1]2+[x1]3,相应的,[xi]=[xi]1+[xi]2+[xi]3。
而对于承诺数据Y也是如此,承诺数据Y也是由m维的数组构成的,即Y由([y1],…[ym])构成;而承诺数据Y的任一秘密份额[Y]i中应包括有承诺数据中的每个承诺值[yi]所对应的部分数据,如,[Y]1由([y1]1,…[ym]1)构成,[Y]2由([y1]2,…[ym]2)构成,[Y]3由([y1]3,…[ym]3)构成,其中,[y1]=[y1]1+[y1]2+[y1]3,相应的,[yi]=[yi]1+[yi]2+[yi]3。
基于上述描述可知,分享数据X的各分享值[xi]与承诺数据Y中相应的承诺值[yi]之间具有线性关系,而上述计算参与方Pi所持有的分享数据的秘密份额与承诺数据的秘密份额之间无任何对应关系,如,P1所持有分享数据的秘密份额[X]1和[X]2与其所持有的承诺数据的秘密份额[Y]1和[Y]2之间没有任何关联。而正是利用该特性,可使得承诺数据一方面可保证各计算参与方无法获得完整的分享数据和承诺数据,另一方面可利用线性关系来对分享数据的置换处理进行协议验证。
具体来说,为了实现对(3,2)重复分享方案的置换处理,首先会利用转换协议,将该(3,2)重复分享方案下的分享数据X转换为(2,2)秘密分享方案下的分享数据|X|0,同步的,将将该(3,2)重复分享方案下的承诺数据Y转换为(2,2)秘密分享方案下的承诺数据|Y|0。其中,|X|0中的数组将包括有X,|Y|0中的数组将包括有Y。
如图4所示的,经过将(3,2)重复分享方案转换为(2,2)秘密分享方案(以P1和P3为例)后,P1将持有(2,2)秘密分享方案下的分享数据的秘密份额|x1|0和承诺数据的秘密份额|y1|0;P3将持有(2,2)秘密分享方案下的分享数据的秘密份额|x3|0和承诺数据的秘密份额|y3|0。其中,
|X|0=|x1|0+|x3|0,且|Y|0=|y1|0+|y3|0。
在完成协议转换后,各计算参与方需要基于不经意置换协议,依次利用π1、π2和π3对分享数据X和承诺数据Y进行同步置换运算,得到(2,2)秘密分享下的置换处理后的分享数据|X|3和|Y|3,此时,|X|3=π1·π2·π3·|X|0,且|Y|3=π1·π2·π3·|Y|0。
具体来说,如图4所示的,由于P1和P3中均持有置换向量的秘密份额π1,此时,P1将利用自身所持有的π1对其所持有的|x1|0和|y1|0进行一次同步置换运算,得到|x1|1和|y1|1;同步的,P3将利用自身所持有的π1对其所持有的|x3|0和|y3|0进行一次同步置换运算,得到|x3|1和|y3|1。
此时,|X|1=|x1|1+|x3|1,其中,|x1|1=π1·|x1|0,|x3|1=π1·|x3|0,则|X|1=π1·|X|0;
同时的,|Y|1=|y1|1+|y3|1,其中,|y1|1=π1·|y1|0,|y3|1=π1·|y3|0,则|Y|1=π1·|Y|0。
在完成利用π1的置换运算之后,将继续进行利用π2的置换运算处理。而对于π2的置换运算来说,其需要由持有π2的P1和P2来执行,即P3需要将自己所持有的秘密份额发送给P2。
而为了避免P2能够获知P3所持有的置换向量的秘密份额π1的具体内容,在执行π2的置换运算之前,还将触发一次协议,以对|x1|1和|x3|1进行一次重随机化处理,并且对|y1|1和|y3|1也进行一次同步的重随机化处理,以重新对P1和P3当前所持有的秘密份额进行分配。在本次重随机化处理后,P1将持有|x1|1’和|y1|1’,而P3将持有|x3|1’和|y3|1’。
此时可知,|x1|1’+|x3|1’=|x1|1+|x3|1,且,|y1|1’+|y3|1’=|y1|1+|y3|1;则,|X|1=|x1|1’+|x3|1’=π1·|X|0,且|Y|1=|y1|1’+|y3|1’=π1·|Y|0。
也就是说,经过本次重随机化处理,各计算参与方Pi所得到的秘密份额均将发生变化,当利用重随机化处理后的秘密份额进行交换时,置换向量将不易被反向解出。
也就是说,此时,P3可将其当前持有的|x3|1’和|y3|1’发送至P2时,而P2将无法破解出P3所使用的π1的具体内容。同时,该|x3|1’和|y3|1’将作为P2所持有的|x2|1和|y2|1,以参与后续运算。
依旧参见图4,对于置换向量的秘密份额π2来说,其仅被P1和P2所持有,此时,P1将利用自身所持有的π2对其所持有的|x1|1’和|y1|1’进行一次同步置换运算,得到|x1|2和|y1|2,同步的,P2将利用自身所持有的π2对其所持有的|x2|1和|y2|1进行一次同步置换运算,得到|x2|2和|y2|2。
此时,|X|2=|x1|2+|x2|2,其中,|x1|2=π2·|x1|1’,|x2|1=π2·|x2|1=π2·|x3|1’,则|X|2=π2·|X|1;
同时的,|Y|2=|y1|2+|y2|2,其中,|y1|2=π2·|y1|1’,|y2|1=π2·|y2|1=
π2·|y3|1’,则|Y|2=π2·|Y|1。
在完成利用π2的置换运算之后,将继续进行利用π3的置换运算处理。而对于π3的置换运算来说,其需要由持有π3的P2和P3来执行,即P1需要将自己所持有的秘密份额发送给P3。
而为了避免P3能够获知P1所持有的置换向量的秘密份额π2的具体内容,在执行π3的置换运算之前,还将触发一次协议,以对|x1|2+|x2|2进行一次重随机化处理,同时,对|y1|2和|y2|2也进行一次重随机化处理,以重新对P1和P2当前所持有的秘密份额进行分配。在本次重随机化处理后,P1将持有|x1|2’和|y1|2’,而P2将持有|x2|2’和|y2|2’。
此时可知,|x1|2’+|x2|2’=|x1|2+|x2|2,且,|y1|2’+|y2|2’=|y1|2+|y2|2;则,|X|2=|x1|2’+|x2|2’=π2·|X|1=π2·π1·|X|0,且,|Y|2=|y1|2’+|y2|2’=π2·|Y|1=π2·π1·|Y|0。也就是说,经过本次重随机化处理,各计算参与方Pi所得到的秘密份额均将发生变化,当利用重随机化处理后的秘密份额进行交换时,置换向量将不易被反向解出。
也就是说,此时,P1可将其当前持有的|x1|2’和|y1|2’发送至P3时,而P3将无法破解出P1所使用的π2的具体内容。同时,该|x1|2’和|y1|2’将作为P3所持有的|x3|2和|y3|2,以参与后续运算。
继续参见图4,对于置换向量的秘密份额π3来说,其仅被P2和P3所持有,此时,P2将利用自身所持有的π3对其所持有的|x2|2’和|y2|2’进行一次同步置换运算,得到|x2|3和|y2|3,同步的,P3将利用自身所持有的π3对其所持有的|x3|2和|y3|2进行一次同步置换运算,得到|x3|3和|y3|3。
此时,|X|3=|x2|3+|x3|3,其中,|x2|3=π3·|x2|2’,|x3|3=π3·|x3|2=π3·|x1|2’,则|X|3=π3·|X|2=π3·π2·π1·|X|0;
同时的,|Y|3=|y2|3+|y3|3,其中,|y2|3=π3·|y2|2’,|y3|3=π3·|y3|2=
π3·|y1|2’,则|Y|3=π3·|Y|2=π3·π2·π1·|Y|0。
当完成上述三次置换运算之后,通过触发协议,各计算参与方将(2,2)的秘密分享的数据|X|3和|Y|3重新转换回为(3,2)的秘密分享的数据[X]3和[Y]3。此时,将得到置换处理后的分享数据[X]3,其中,[X]3=π·X;同时得到还将得到置换处理后的承诺数据[Y]3,其中,[Y]3=π·Y。
此时得到的置换处理后的分享数据[X]3是未经过协议验证的。
再后,各计算参与方将利用所述承诺数据的置换结果和所述随机分享参数,对所述分享数据的置换结果进行协议验证,得到第一验证结果,并根据所述第一验证结果,输出所述分享数据的置换结果。
具体来说,当上述运算处理过程中,每个计算参与方均按照协议执行相应运算时,当前得到的[X]3应由m维数组([x1]3,…[xm]3)所构成的数据,同时,针对每个取值[xi]3,均有[xi]3=π·xi的关系。并且,当前得到的[Y]3同样应由m维数组([y1]3,…[ym]3)所构成的数据,同时,针对每个取值[yi]3,均有[yi]3=π·yi的关系。
而由于yi与xi之间具有yi=axi的线性关系,此时应有π·yi=π·axi的线性关系。即可得到a[xi]3-[yi]3=0。
也就是说,当上述运算处理过程中,每个计算参与方均按照协议执行相应运算时,[Y]3与a[X]3之间的差值数据M1,应为由m个0构成的数据。
而利用该特性,则可对上述运算处理过程每个计算参与方是否按照协议执行相应运算进行验证:
通过对随机分享参数a与分享数据的置换结果[X]3进行乘法运算,得到第一乘法运算数据a[X]3,然后,对第一乘法运算数据a[X]3与所述承诺数据的置换结果[Y]3进行差值运算,得到第一差值运算数据M1;基于第二预设协议,各计算参与方将对第一差值运算数据M1进行确零处理,得到第一验证结果。
其中,确零处理是指对第一差值运算数据M1中的每个元素m1i是否均为0进行判断的处理过程。由于第一差值运算数据M1是m维数组,当m取值较大时,为了提升确零处理的处理效率,在可选实施方式中,可采用基于随机数的方式实现确零处理。具体的,利用各个计算参与方参与所生成的随机数据[Z1]中的各随机数,如(z11,…,z1m),对第一差值运算数据M1中的各运算值(m11,…m1m),进行乘积求和运算,得到乘积求和运算结果,如z11m11+z12m12…+z1mm1m=F1;根据乘积求和运算结果F1来确定所述第一验证结果。一般的,当F1为0时,第一差值运算数据M1中的每个元素m1i均为0;当F1不为0时,第一差值运算数据M1中的任一个元素m1i不为0。
换句话说,若确零处理得到的第一验证结果表示第一差值运算数据M1不为由0构成的数据时,则说明协议处理过程中存在某计算参与方不是按照预设的安全协议对分享数据进行处理,那么该协议过程中的数据存在数据泄漏的风险,此时,协议将被终止,置换结果不被输出;
若确零处理得到的第一验证结果表示第一差值运算数据M1为均由0构成的数据时,则说明协议处理过程中的每个计算参与方是按照预设的安全协议对分享数据进行处理,那么该协议过程中的数据不存在数据泄漏的风险,此时,协议将被认证有效,分享数据的置换结果可被用于输出。
通过上述的方式,可利用乘法运算生成的承诺数据验证来对各个计算参与方进行同步协议验证,从而保证各计算参与方是按照预设的安全协议对分享数据进行的秘密分享的相关处理。
可以理解的是,为了保证数据的安全性,对于随机分享参数a来说,其也是通过秘密分享的秘密份额的方式存储于各计算参与方中的。当需要对分享数据的置换结果进行协议验证时,为了便于运算,各计算参与方将触发协议以将随机分享参数a进行公开。此时,各计算参与方将获得完整的随机分享参数a,以便执行后续的协议验证处理,有利于提升处理效率。
图5为本申请实施例提供的又一种基于(3,2)重复分享方案的数据流示意图,在实际场景中,恶意的计算参与方可在不同处理环节对协议发起攻击。示例性的,攻击可发生在承诺数据的生成阶段,即恶意的计算参与方通过对协议算子Fmult增加选定常数,以改变承诺数据Y以及其中的各承诺值。
在可选实施方式中,如图5所示的,可通过对承诺数据进行协议验证的方式,以保证各计算参与方诚实执行协议,数据处理方法还包括:利用承诺数据和随机分享参数,对分享数据进行协议验证,得到第二验证结果;根据第一验证结果,和/或,第二验证结果,输出分享数据的置换结果。
具体来说,在每个计算参与方均按照协议算子Fmult生成随机分享参数a,并利用协议算子Frand生成承诺数据Y时,当前得到承诺数据Y应由m维数组(y1,…ym)所构成,同时,针对每个承诺值yi,均有yi=axi,其中的xi为构成分享数据X的分享值xi。
而由于yi与xi之间具有yi=axi的线性关系,此时,axi-yi=0。
也就是说,当上述处理过程中,每个计算参与方均按照协议执行相应运算时,Y与aX之间的差值数据M2,应为由m个0构成的数据。
而利用该特性,则可对上述运算处理过程每个计算参与方是否按照协议执行相应运算进行验证:
通过对随机分享参数a与分享数据X进行乘法运算,得到第二乘法运算数据aX;对第二乘法运算数据aX与承诺数据Y进行差值运算,得到第二差值运算数据M2;基于第二预设协议,对第二差值运算数据M2进行确零处理,得到第二验证结果。
其中,对第二差值运算数据M2进行确零处理的处理过程与前述对第一差值运算M1的确零处理的处理过程类似。其可表示为对第二差值运算数据M2中的每个元素m2i是否均为0进行判断的处理过程。
由于第二差值运算数据M2是m维数组,当m取值较大时,为了提升确零处理的处理效率,在可选实施方式中,可采用基于随机数的方式实现确零处理。具体的,利用各个计算参与方参与所生成的随机数据[Z2]中的各随机数,如(z21,…,z2m),对第二差值运算数据M2中的各运算值(m21,…m2m),进行乘积求和运算,得到乘积求和运算结果,如z21m21+z22m22…+z2mm2m=F2;根据乘积求和运算结果F2来确定第二验证结果。一般的,当F2为0时,第二差值运算数据M2中的每个元素m2i均为0;当F2不为0时,第二差值运算数据M2中的任一个元素m2i不为0。
换句话说,若确零处理得到的第二验证结果表示第二差值运算数据M2不为由0构成的数据时,则说明协议处理过程中存在某计算参与方不是按照预设的安全协议对分享数据进行处理,那么该协议过程中的数据存在数据泄漏的风险,此时,协议将被终止,置换结果不被输出。
其中可知的是,对于分享数据的置换结果进行协议验证得到第一验证结果,以及对分享数据进行协议验证得到第二验证结果的步骤可为同步或异步进行,当任一验证结果表示出存在某计算参与方不是按照预设的安全协议对分享数据进行处理的情况时,协议均将被终止,置换结果不被输出。
在上述各实现方式的基础上,恶意的计算参与方还可在置换处理阶段。在多方安全计算基于秘密分享的置换处理过程是基于多次置换运算实现的,任意一次置换运算均有被攻击的风险。为了进一步保证数据安全,参见图5,可针对置换处理过程中的任一次置换运算所产生的中间数据进行相应的协议验证,以防止恶意攻击的产生。
也就是说,对分享数据X以及承诺数据Y进行的同步置换处理包括同步的多次置换运算。而在对分享数据X以及承诺数据Y进行的多次置换运算中,选取至少一次置换运算所得到的分享数据的中间结果和承诺数据的中间结果;利用承诺数据的中间结果和随机分享参数,对分享数据的中间结果进行协议验证,得到第三验证结果;根据第一验证结果,和/或,第三验证结果,输出分享数据的置换结果。
在一种可能的实现方式中,可对第一次置换运算所得到的中间结果进行协议验证。即,上述的中间结果可为对分享数据以及承诺数据进行第一次置换运算所得到的分享数据的第一中间结果和承诺数据的第一中间结果。
以前述如图4所示的处理过程为例,对分享数据X以及承诺数据Y进行第一次置换运算所得到的分享数据X的第一中间结果可表示为[X]1和承诺数据Y的第一中间结果[Y]1。
具体来说,在对第一次置换运算之后,将得到分享数据X的第一中间数据|X|1以及承诺数据的第一中间数据|Y|1,通过各计算参与方触发协议,将(2,2)的秘密分享的第一中间数据|X|1和|Y|1重新转换回为(3,2)的秘密分享的第一中间结果[X]1和[Y]1。
此时,当前得到的分享数据的第一中间结果[X]1由m维数组(π1·x1,…π1·xm)构成,当前得到的承诺数据的第一中间结果[Y]1由m维数组(π1·y1,…π1·ym)构成。同时,而由于yi与xi之间具有yi=axi的线性关系。可推导出aπ1·xi-π1·yi=0。即得到[Y]1=a[X]1。
也就是说,当上述处理过程中,每个计算参与方均按照协议执行相应运算时,[Y]1与a[X]1之间的差值数据M3,应为由m个0构成的数据。
而利用该特性,则可对上述运算处理过程每个计算参与方是否按照协议执行相应运算进行验证:
通过对随机分享参数a与分享数据的中间结果[X]1进行乘法运算,得到第三乘法运算数据a[X]1;对第三乘法运算数据a[X]1与承诺数据的中间结果[Y]1进行差值运算,得到第三差值运算数据M3;基于第二预设协议,对第二、三差值运算数据M3进行确零处理,得到第三验证结果。
其中,对第三差值运算数据M3进行确零处理的处理过程与前述对第一差值运算M1或第二差值运算M3的确零处理的处理过程类似。其可表示为对第三差值运算数据M3中的每个元素m3i是否均为0进行判断的处理过程。
由于第三差值运算数据M3是m维数组,当m取值较大时,为了提升确零处理的处理效率,在可选实施方式中,可采用基于随机数的方式实现确零处理。具体的,利用各个计算参与方参与所生成的随机数据[Z3]中的各随机数,如(z31,…,z3m),对第三差值运算数据M3中的各运算值(m31,…m3m),进行乘积求和运算,得到乘积求和运算结果,如z31m31+z32m32…+z3mm3m=F3;根据乘积求和运算结果F3来确定第三验证结果。一般的,当F3为0时,第三差值运算数据M3中的每个元素m3i均为0;当F3不为0时,第三差值运算数据M3中的任一个元素m3i不为0。
换句话说,若确零处理得到的第三验证结果表示第三差值运算数据M2不为由0构成的数据时,则说明协议处理过程中存在某计算参与方不是按照预设的安全协议对分享数据进行处理,那么该协议过程中的数据存在数据泄漏的风险,此时,协议将被终止,置换结果不被输出。
其中可知的是,对于分享数据的置换结果进行协议验证得到第一验证结果,对分享数据进行协议验证得到第二验证结果的步骤,以及对分享数据的中间结果进行协议验证得到第三验证结果的步骤,可为同步或异步进行,当任一验证结果表示出存在某计算参与方不是按照预设的安全协议对分享数据进行处理的情况时,协议均将被终止,置换结果不被输出。
本申请实施例提供的基于秘密分享的数据处理方法,通过对秘密分享过程中的分享数据的置换过程进行基于承诺数据的协议验证,以保证各计算参与方是按照预设的不经意置换协议对分享数据进行置换处理。同时,由于该方案中的承诺数据是基于乘法运算生成的,这将使得基于承诺数据进行协议验证所需要的通信量较低,不会为各计算参与方带来过大的通信开销
图6为本申请提供的一种电子设备的硬件结构示意图,如图6所示的,本申请实施例提供一种电子设备,电子设备的存储器可用于存储至少一个程序指令,处理器用于执行至少一个程序指令,以实现上述方法实施例的技术方案。其实现原理和技术效果与上述方法相关实施例类似,此处不再赘述。
在实际应用场景下,图6所示的电子设备具体可为基于秘密分享的数据处理系统中任一计算参与方的承载设备,其每一电子设备将按照前述所示的数据处理方法执行相应的数据处理,完成基于秘密分享的多方安全计算。
本申请实施例提供一种芯片。芯片包括处理器,处理器用于调用存储器中的计算机程序,以执行上述实施例中的技术方案。其实现原理和技术效果与上述相关实施例类似,此处不再赘述。
本申请实施例提供一种计算机程序产品,当计算机程序产品在电子设备运行时,使得电子设备执行上述实施例中的技术方案。其实现原理和技术效果与上述相关实施例类似,此处不再赘述。
本申请实施例提供一种计算机可读存储介质,其上存储有程序指令,程序指令被电子设备执行时,使得电子设备执行上述实施例的技术方案。其实现原理和技术效果与上述相关实施例类似,此处不再赘述。
以上的具体实施方式,对本申请的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本申请的具体实施方式而已,并不用于限定本申请的保护范围,凡在本申请的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本申请的保护范围之内。
Claims (14)
1.一种基于秘密分享的数据处理方法,其特征在于,所述数据处理方法应用于基于秘密分享的数据处理系统,所述数据处理系统包括多个计算参与方;
所述数据处理方法,包括:
利用各个计算参与方参与所生成的随机分享参数,对秘密分享过程中的待处理的分享数据进行乘法运算,得到所述分享数据所对应的承诺数据;
基于不经意置换协议,所述各个计算参与方对所述分享数据以及所述承诺数据进行同步置换处理,得到所述分享数据的置换结果和所述承诺数据的置换结果;
利用所述承诺数据的置换结果和所述随机分享参数,对所述分享数据的置换结果进行协议验证,得到第一验证结果;
根据所述第一验证结果,输出所述分享数据的置换结果。
2.根据权利要求1所述的数据处理方法,其特征在于,所述利用各个计算参与方参与所生成的随机分享参数,对秘密分享过程中的待处理的分享数据进行乘法运算,得到所述分享数据所对应的承诺数据,包括:
针对所述分享数据中的每个分享值,计算所述每个分享值与所述随机分享参数的乘积,得到所述每个分享值对应的承诺值;
所述各承诺值构成所述承诺数据。
3.根据权利要求1所述的数据处理方法,其特征在于,还包括:
各个计算参与方基于第一预设协议,生成置换向量;所述置换向量用于对所述分享数据以及所述承诺数据进行同步置换处理。
4.根据权利要求1所述的数据处理方法,其特征在于,所述利用所述承诺数据的置换结果和所述随机分享参数,对所述分享数据的置换结果进行协议验证,得到第一验证结果,包括:
对所述随机分享参数与所述分享数据的置换结果进行乘法运算,得到第一乘法运算数据;
对所述第一乘法运算数据与所述承诺数据的置换结果进行差值运算,得到第一差值运算数据;
基于第二预设协议,对所述第一差值运算数据进行确零处理,得到所述第一验证结果。
5.根据权利要求1所述的数据处理方法,其特征在于,还包括:
利用所述承诺数据和所述随机分享参数,对所述分享数据进行协议验证,得到第二验证结果;
根据所述第一验证结果,和/或,所述第二验证结果,输出所述分享数据的置换结果。
6.根据权利要求5所述的数据处理方法,其特征在于,所述利用所述承诺数据和所述随机分享参数,对所述分享数据进行协议验证,得到第二验证结果,包括:
对所述随机分享参数与所述分享数据进行乘法运算,得到第二乘法运算数据;
对所述第二乘法运算数据与所述承诺数据进行差值运算,得到第二差值运算数据;
基于第二预设协议,对所述第二差值运算数据进行确零处理,得到所述第二验证结果。
7.根据权利要求1所述的数据处理方法,其特征在于,对所述分享数据以及所述承诺数据进行的所述同步置换处理包括:同步的多次置换运算;
所述数据处理方法,还包括:
在对所述分享数据以及所述承诺数据进行的多次置换运算中,选取至少一次置换运算所得到的所述分享数据的中间结果和所述承诺数据的中间结果;
利用所述承诺数据的中间结果和所述随机分享参数,对所述分享数据的中间结果进行协议验证,得到第三验证结果;
根据所述第一验证结果,和/或,所述第三验证结果,输出所述分享数据的置换结果。
8.根据权利要求7所述的数据处理方法,其特征在于,所述选取至少一次置换运算所得到的所述分享数据的中间结果和所述承诺数据的中间结果包括:对所述分享数据以及所述承诺数据进行第一次置换运算所得到的所述分享数据的第一中间结果和所述承诺数据的第一中间结果。
9.根据权利要求7所述的数据处理方法,其特征在于,所述利用所述承诺数据的中间结果和所述随机分享参数,对所述分享数据的中间结果进行协议验证,得到第三验证结果,包括:
对所述随机分享参数与所述分享数据的中间结果进行乘法运算,得到第三乘法运算数据;
对所述第三乘法运算数据与所述承诺数据的中间结果进行差值运算,得到第三差值运算数据;
基于第二预设协议,对所述第三差值运算数据进行确零处理,得到所述第三验证结果。
10.根据权利要求4、6或9任一项所述的数据处理方法,其特征在于,所述确零处理,包括:
利用各个计算参与方参与所生成的随机数据中的各随机数,对所述第一差值运算数据,或,所述第二差值运算数据,或,所述第三差值运算数据中的各运算值,进行乘积求和运算,得到乘积求和运算结果;
根据所述乘积求和运算结果确定所述第一验证结果,或,所述第二验证结果,或,所述第三验证结果。
11.根据权利要求1-9任一项所述的数据处理方法,其特征在于,所述秘密分享的数据处理是基于重复分享方案实现的,所述计算参与方的数量为3。
12.一种电子设备,其特征在于,包括:
至少一个处理器;以及
存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如权利要求1-11所述方法。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1-11所述方法。
14.一种计算机程序产品,包括计算机指令,其特征在于,该计算机指令被处理器执行时实现如权利要求1-11所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210142796.9A CN114553407A (zh) | 2022-02-16 | 2022-02-16 | 基于秘密分享的数据处理方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210142796.9A CN114553407A (zh) | 2022-02-16 | 2022-02-16 | 基于秘密分享的数据处理方法及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114553407A true CN114553407A (zh) | 2022-05-27 |
Family
ID=81674948
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210142796.9A Pending CN114553407A (zh) | 2022-02-16 | 2022-02-16 | 基于秘密分享的数据处理方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114553407A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116248266A (zh) * | 2022-12-16 | 2023-06-09 | 北京海泰方圆科技股份有限公司 | 基于秘密分享的安全多方计算方法及系统 |
WO2024146347A1 (zh) * | 2023-01-04 | 2024-07-11 | 声龙(新加坡)私人有限公司 | 数据加密的方法、装置、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101729554A (zh) * | 2008-11-27 | 2010-06-09 | 北京大学 | 一种分布式计算中基于密码学的除法协议构造方法 |
CN110198213A (zh) * | 2019-04-01 | 2019-09-03 | 上海能链众合科技有限公司 | 一种基于秘密共享随机数共识算法的系统 |
CN112464174A (zh) * | 2020-10-27 | 2021-03-09 | 华控清交信息科技(北京)有限公司 | 验证多方安全计算软件的方法、装置和用于验证的装置 |
CN112464155A (zh) * | 2020-12-01 | 2021-03-09 | 华控清交信息科技(北京)有限公司 | 一种数据处理方法、多方安全计算系统和电子设备 |
CN113569294A (zh) * | 2021-09-22 | 2021-10-29 | 浙江大学 | 一种零知识证明方法及装置、电子设备、存储介质 |
CN113645020A (zh) * | 2021-07-06 | 2021-11-12 | 北京理工大学 | 一种基于安全多方计算的联盟链隐私保护方法 |
-
2022
- 2022-02-16 CN CN202210142796.9A patent/CN114553407A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101729554A (zh) * | 2008-11-27 | 2010-06-09 | 北京大学 | 一种分布式计算中基于密码学的除法协议构造方法 |
CN110198213A (zh) * | 2019-04-01 | 2019-09-03 | 上海能链众合科技有限公司 | 一种基于秘密共享随机数共识算法的系统 |
CN112464174A (zh) * | 2020-10-27 | 2021-03-09 | 华控清交信息科技(北京)有限公司 | 验证多方安全计算软件的方法、装置和用于验证的装置 |
CN112464155A (zh) * | 2020-12-01 | 2021-03-09 | 华控清交信息科技(北京)有限公司 | 一种数据处理方法、多方安全计算系统和电子设备 |
CN113645020A (zh) * | 2021-07-06 | 2021-11-12 | 北京理工大学 | 一种基于安全多方计算的联盟链隐私保护方法 |
CN113569294A (zh) * | 2021-09-22 | 2021-10-29 | 浙江大学 | 一种零知识证明方法及装置、电子设备、存储介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116248266A (zh) * | 2022-12-16 | 2023-06-09 | 北京海泰方圆科技股份有限公司 | 基于秘密分享的安全多方计算方法及系统 |
CN116248266B (zh) * | 2022-12-16 | 2023-11-14 | 北京海泰方圆科技股份有限公司 | 基于秘密分享的安全多方计算方法及系统 |
WO2024146347A1 (zh) * | 2023-01-04 | 2024-07-11 | 声龙(新加坡)私人有限公司 | 数据加密的方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Carter et al. | Secure outsourced garbled circuit evaluation for mobile devices | |
Demmler et al. | ABY-A framework for efficient mixed-protocol secure two-party computation. | |
Rathee et al. | Elsa: Secure aggregation for federated learning with malicious actors | |
Halevi et al. | Secure computation on the web: Computing without simultaneous interaction | |
KR102170820B1 (ko) | 일반 연산 검증용 영지식 증명 서킷 기반 가상머신을 구현하기 위한 시스템 | |
CN114553407A (zh) | 基于秘密分享的数据处理方法及设备 | |
EP3871365A1 (en) | Computer implemented system and method for distributing shares of digitally signed data | |
CN113037479B (zh) | 数据验证方法和装置 | |
CN112436938B (zh) | 数字签名的生成方法、装置和服务器 | |
CN114584294A (zh) | 不经意分散排列方法及装置 | |
Gong et al. | Analysis and comparison of the main zero-knowledge proof scheme | |
Tang et al. | Pile: Robust privacy-preserving federated learning via verifiable perturbations | |
Pereira et al. | Some attacks upon authenticated group key agreement protocols | |
Seyhan et al. | A new password-authenticated module learning with rounding-based key exchange protocol: Saber. PAKE | |
Liu et al. | BFL-SA: Blockchain-based federated learning via enhanced secure aggregation | |
CN113849806A (zh) | 多方安全计算中的任务执行方法及装置 | |
CN116170144B (zh) | 智能电网匿名认证方法、电子设备及存储介质 | |
Goldwasser | New directions in cryptography: twenty some years later (or cryptograpy and complexity theory: a match made in heaven) | |
Tang et al. | A flexible and scalable malicious secure aggregation protocol for federated learning | |
Yao et al. | The complete new solutions to the blind millionaires’ problem in d-dimensional quantum system | |
LeGrow et al. | Modeling quantum-safe authenticated key establishment, and an isogeny-based protocol | |
Schoenmakers et al. | Trinocchio: Privacy-friendly outsourcing by distributed verifiable computation | |
CN114546645A (zh) | 基于秘密分享的数据处理方法及设备 | |
Sutradhar et al. | An efficient simulation of quantum secret sharing | |
Zheng et al. | DEKS: A Secure Cloud-Based Searchable Service Can Make Attackers Pay |
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 |