数据处理方法、装置、设备、介质和程序产品.pdf

上传人:C*** 文档编号:14330712 上传时间:2024-02-08 格式:PDF 页数:28 大小:3.28MB
返回 下载 相关 举报
数据处理方法、装置、设备、介质和程序产品.pdf_第1页
第1页 / 共28页
数据处理方法、装置、设备、介质和程序产品.pdf_第2页
第2页 / 共28页
数据处理方法、装置、设备、介质和程序产品.pdf_第3页
第3页 / 共28页
点击查看更多>>
资源描述

《数据处理方法、装置、设备、介质和程序产品.pdf》由会员分享,可在线阅读,更多相关《数据处理方法、装置、设备、介质和程序产品.pdf(28页珍藏版)》请在专利查询网上搜索。

1、(19)国家知识产权局(12)发明专利申请(10)申请公布号 (43)申请公布日 (21)申请号 202310735222.7(22)申请日 2023.06.20(71)申请人 建信金融科技有限责任公司地址 200120 上海市浦东新区中国(上海)自由贸易试验区银城路99号12层、15层(72)发明人 马会来王雪李武璐张大勇何林芳(74)专利代理机构 北京东方亿思知识产权代理有限责任公司 11258专利代理师 杨永恒(51)Int.Cl.G06F 21/60(2013.01)G06F 7/58(2006.01)(54)发明名称数据处理方法、装置、设备、介质和程序产品(57)摘要本申请公开了一种。

2、数据处理方法、装置、设备、介质和程序产品,涉及区块链技术领域。可在进行安全两方计算的过程中,被验证对象在通过持有的第二数据对接收到的密文进行计算,得到加密计算结果后,由被验证对象通过零知识证明协议向验证对象证明该被验证对象进行计算时采用的每个第二数据均是符合预设的目标数据范围的数据。根据本申请实施例,该被验证对象可确定难以基于该安全两方计算的技术结果窃取该验证对象持有的第一数据,提高了安全两方计算的可靠性、安全性。权利要求书3页 说明书21页 附图3页CN 116611095 A2023.08.18CN 116611095 A1.一种数据处理方法,其特征在于,包括:被验证对象接收验证对象发送的。

3、密文,所述密文根据第一数据得到;根据持有的第二数据和所述密文,计算所述第二数据的第一重加密结果;基于加密随机数,对所述第一重加密结果进行加密,得到加密计算结果,其中,所述加密随机数为对随机数进行加密后得到的;基于零知识证明协议,确定承诺数据;根据所述密文、所述加密计算结果、所述承诺数据、第一特定值以及第二特定值,确定验证值;根据所述验证值、所述承诺数据,基于所述零知识证明协议,确定待验证数据;将所述加密计算结果、所述承诺数据以及所述待验证数据返回所述验证对象;接收所述验证对象在确定所述待验证数据满足验证条件,即确定所述被验证对象在计算所述加密计算结果时依据的第二数据满足目标数据范围之后,发送的。

4、解密结果;根据所述随机数,对所述解密结果再次进行解密,得到目标计算结果。2.根据权利要求1所述的方法,其特征在于,基于零知识证明协议,确定承诺数据,具体包括:根据零知识证明协议的要求,确定承诺值、第一承诺序列以及第二承诺序列;将所述承诺值、所述第一承诺序列以及所述第二承诺序列,作为承诺数据。3.根据权利要求2所述的方法,其特征在于,根据零知识证明协议的要求,确定承诺值、第一承诺序列以及第二承诺序列,具体包括:随机确定第一随机值、第二随机值、第三随机值;根据所述第一随机值、所述第二随机值以及所述第三随机值,基于所述零知识证明协议的第一运算式,确定承诺值;随机确定第四随机值、第五随机值、第六随机值。

5、、第七随机值、第八随机值以及第九随机值;根据所述第四随机值、所述第六随机值以及所述第八随机值,基于所述第一运算式,确定第一承诺序列;根据所述第五随机值、所述第七随机值以及所述第九随机值,基于所述第一运算式,确定第二承诺序列。4.根据权利要求2所述的方法,其特征在于,根据所述验证值、所述承诺数据,基于所述零知识证明协议,确定待验证数据,具体包括:根据所述验证值、所述第二数据、所述第一随机值、所述第二随机值以及所述第三随机值,确定第一响应元组;根据所述验证值、所述第二数据、所述第二随机值、所述第四随机值、所述第五随机值、所述第六随机值、所述第七随机值、所述第八随机值、所述第九随机值、第一特定值以及。

6、第二特定值,确定第二响应元组;将所述第一响应元组以及所述第二响应元组,作为待验证数据。5.根据权利要求1所述的方法,其特征在于,所述密文的数量至少为2,所述密文、所述第一数据、所述第二数据、所述随机数、所述加密计算结果、所述承诺数据以及所述待验证数据一一对应。权利要求书1/3 页2CN 116611095 A26.一种数据处理方法,其特征在于,包括:验证对象确定公钥以及私钥,通过公钥对持有的第一数据进行加密,得到密文,并将所述密文发送至被验证对象;接收被验证对象返回的加密计算结果、承诺数据以及待验证数据,其中,所述加密计算结果为所述被验证对象根据所述第一数据、第二数据以及加密随机数计算得到的,。

7、所述承诺数据为根据零知识证明协议得到的,所述待验证数据为根据所述验证值、所述承诺数据以及所述零知识证明协议得到的,所述加密随机数为所述被验证对象对随机数进行加密得到的;根据所述密文、所述加密计算结果、所述承诺数据、第一特定值以及第二特定值,确定验证值;根据所述承诺数据、所述验证值以及所述待验证数据,验证所述加密计算结果;当确定所述加密计算结果满足所述零知识证明协议对应的验证条件,即确定所述被验证对象计算所述加密计算结果时依据的第二数据满足目标数据范围时,通过所述私钥对所述加密计算结果进行解密,确定解密结果;向所述被验证对象发送所述解密结果,使得所述被验证对象可根据所述解密结果以及所述随机数,得。

8、到目标计算结果。7.根据权利要求6所述的方法,其特征在于,根据所述承诺数据、所述验证值以及所述待验证数据,验证所述加密计算结果,具体包括:确定所述待验证数据中的第一响应元组以及第二响应元组以及所述承诺数据中的承诺值、第一承诺序列以及第二承诺序列;验证所述加密计算结果、所述第一响应元组、所述承诺值、所述验证值是否满足所述零知识证明协议的第一验证条件;验证所述验证值、所述加密计算结果、所述第二响应元组、所述第一承诺序列、所述第二承诺序列、第一特定值以及第二特定值是否满足所述零知识证明协议的第二验证条件。8.根据权利要求7所述的方法,其特征在于,所述验证值为第一预设值或第二预设值;验证所述验证值、所。

9、述加密计算结果、所述第二响应元组、所述第一承诺序列、所述第二承诺序列、第一特定值以及第二特定值是否满足所述零知识证明协议的第二验证条件,具体包括:当确定所述验证值为第一预设值时,验证所述第二响应元组、所述第一承诺序列、所述第二承诺序列以及第一特定值是否满足所述零知识证明协议的第二验证条件;当确定所述验证值为第二预设值时,验证所述加密计算结果、所述第二响应元组、所述第一承诺序列、所述第二承诺序列、第一特定值以及第二特定值是否满足所述零知识证明协议的第二验证条件。9.一种数据处理装置,其特征在于,所述装置包括:第一接收单元,用于被验证对象接收验证对象发送的密文,所述密文根据第一数据得到;确定单元,。

10、用于根据持有的第二数据和所述密文,计算所述第二数据的第一重加密结果;所述确定单元,还用于基于加密随机数,对所述第一重加密结果进行加密,得到加密计权利要求书2/3 页3CN 116611095 A3算结果,其中,所述加密随机数为对随机数进行加密后得到的;承诺单元,用于基于零知识证明协议,确定承诺数据;验证值单元,用于根据所述密文、所述加密计算结果、所述承诺数据、第一特定值以及第二特定值,确定验证值;验证单元,用于根据所述验证值、所述承诺数据,基于所述零知识证明协议,确定待验证数据;返回单元,用于将所述加密计算结果、所述承诺数据以及所述待验证数据返回所述验证对象;第二接收单元,用于接收所述验证对象。

11、在确定所述待验证数据满足验证条件,即确定所述被验证对象在计算所述加密计算结果时依据的第二数据满足目标数据范围之后,发送的解密结果;解密单元,用于根据所述随机数,对所述解密结果再次进行解密,得到目标计算结果。10.一种数据处理装置,其特征在于,所述装置包括:加密单元,用于验证对象确定公钥以及私钥,通过公钥对持有的第一数据进行加密,得到密文,并将所述密文发送至被验证对象;接收单元,用于接收被验证对象返回的加密计算结果、承诺数据以及待验证数据,其中,所述加密计算结果为所述被验证对象根据所述第一数据、第二数据以及加密随机数计算得到的,所述承诺数据为根据零知识证明协议得到的,所述待验证数据为根据所述验证。

12、值、所述承诺数据以及所述零知识证明协议得到的,所述加密随机数为所述被验证对象对随机数进行加密得到的;验证值单元,用于根据所述密文、所述加密计算结果、所述承诺数据、第一特定值以及第二特定值,确定验证值;验证单元,用于根据所述承诺数据、所述验证值以及所述待验证数据,验证所述加密计算结果;解密单元,用于当确定所述加密计算结果满足所述零知识证明协议对应的验证条件,即确定所述被验证对象计算所述加密计算结果时依据的第二数据满足目标数据范围时,通过所述私钥对所述加密计算结果进行解密,确定解密结果;发送单元,用于向所述被验证对象发送所述解密结果,使得所述被验证对象可根据所述解密结果以及所述随机数,得到目标计算。

13、结果。11.一种数据处理设备,其特征在于,所述设备包括:处理器以及存储有计算机程序指令的存储器;所述处理器执行所述计算机程序指令时实现如权利要求18任意一项所述的数据处理方法。12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现如权利要求18任意一项所述的数据处理方法。13.一种计算机程序产品,其特征在于,所述计算机程序产品中的指令由电子设备的处理器执行时,使得所述电子设备执行如权利要求18任意一项所述的数据处理方法。权利要求书3/3 页4CN 116611095 A4数据处理方法、装置、设备、介质和程序产品技术领域000。

14、1本申请属于区块链技术领域,尤其涉及一种数据处理方法、装置、设备、介质和程序产品。背景技术0002近年来,隐私问题成为人们越发关注的问题,在安全两方计算场景下,为了保护数据隐私,减小数据被窃取的可能性,通常运用同态加密技术优先对数据进行加密,再对加密后的数据进行计算。0003但是,当能够获取计算结果的一方为恶意计算方时,恶意计算方通常可以通过伪造部分数据的方式,窃取另一方的某些数据。发明内容0004本申请实施例提供一种数据处理方法、装置、设备、介质和程序产品,能够保障两方安全计算中的数据安全,减小泄露、被窃取数据的可能性。0005一方面,本申请实施例提供一种数据处理方法,方法包括:0006被验。

15、证对象接收验证对象发送的密文,所述密文根据第一数据得到;0007根据持有的第二数据和所述密文,计算所述第二数据的第一重加密结果;0008基于加密随机数,对所述第一重加密结果进行加密,得到加密计算结果,其中,所述加密随机数为对随机数进行加密后得到的;0009基于零知识证明协议,确定承诺数据;0010根据所述密文、所述加密计算结果、所述承诺数据、第一特定值以及第二特定值,确定验证值;0011根据所述验证值、所述承诺数据,基于所述零知识证明协议,确定待验证数据;0012将所述加密计算结果、所述承诺数据以及所述待验证数据返回所述验证对象;0013接收所述验证对象在确定所述待验证数据满足验证条件,即确定。

16、所述被验证对象在计算所述加密计算结果时依据的第二数据满足目标数据范围之后,发送的解密结果;0014根据所述随机数,对所述解密结果再次进行解密,得到目标计算结果。0015可选的,基于零知识证明协议,确定承诺数据,具体包括:0016根据零知识证明协议的要求,确定承诺值、第一承诺序列以及第二承诺序列;0017将所述承诺值、所述第一承诺序列以及所述第二承诺序列,作为承诺数据。0018可选的,根据零知识证明协议的要求,确定承诺值、第一承诺序列以及第二承诺序列,具体包括:0019随机确定第一随机值、第二随机值、第三随机值;0020根据所述第一随机值、所述第二随机值以及所述第三随机值,基于所述零知识证明协议。

17、的第一运算式,确定承诺值;0021随机确定第四随机值、第五随机值、第六随机值、第七随机值、第八随机值以及第说明书1/21 页5CN 116611095 A5九随机值;0022根据所述第四随机值、所述第六随机值以及所述第八随机值,基于所述第一运算式,确定第一承诺序列;0023根据所述第五随机值、所述第七随机值以及所述第九随机值,基于所述第一运算式,确定第二承诺序列。0024可选的,根据所述验证值、所述承诺数据,基于所述零知识证明协议,确定待验证数据,具体包括:0025根据所述验证值、所述第二数据、所述第一随机值、所述第二随机值以及所述第三随机值,确定第一响应元组;0026根据所述验证值、所述第二。

18、数据、所述第二随机值、所述第四随机值、所述第五随机值、所述第六随机值、所述第七随机值、所述第八随机值、所述第九随机值、第一特定值以及第二特定值,确定第二响应元组;0027将所述第一响应元组以及所述第二响应元组,作为待验证数据。0028可选的,所述密文的数量至少为2,所述密文、所述第一数据、所述第二数据、所述随机数、所述加密计算结果、所述承诺数据以及所述待验证数据一一对应。0029另一方面,本申请实施例提供一种数据处理方法,方法包括:0030验证对象确定公钥以及私钥,通过公钥对持有的第一数据进行加密,得到密文,并将所述密文发送至被验证对象;0031接收被验证对象返回的加密计算结果、承诺数据以及待。

19、验证数据,其中,所述加密计算结果为所述被验证对象根据所述第一数据、第二数据以及加密随机数计算得到的,所述承诺数据为根据零知识证明协议得到的,所述待验证数据为根据所述验证值、所述承诺数据以及所述零知识证明协议得到的,所述加密随机数为所述被验证对象对随机数进行加密得到的;0032根据所述密文、所述加密计算结果、所述承诺数据、第一特定值以及第二特定值,确定验证值;0033根据所述承诺数据、所述验证值以及所述待验证数据,验证所述加密计算结果;0034当确定所述加密计算结果满足所述零知识证明协议对应的验证条件,即确定所述被验证对象计算所述加密计算结果时依据的第二数据满足目标数据范围时,通过所述私钥对所述。

20、加密计算结果进行解密,确定解密结果;0035向所述被验证对象发送所述解密结果,使得所述被验证对象可根据所述解密结果以及所述随机数,得到目标计算结果。0036可选的,根据所述承诺数据、所述验证值以及所述待验证数据,验证所述加密计算结果,具体包括:0037确定所述待验证数据中的第一响应元组以及第二响应元组以及所述承诺数据中的承诺值、第一承诺序列以及第二承诺序列;0038验证所述加密计算结果、所述第一响应元组、所述承诺值、所述验证值是否满足所述零知识证明协议的第一验证条件;0039验证所述验证值、所述加密计算结果、所述第二响应元组、所述第一承诺序列、所述第二承诺序列、第一特定值以及第二特定值是否满足。

21、所述零知识证明协议的第二验证条说明书2/21 页6CN 116611095 A6件。0040可选的,所述验证值为第一预设值或第二预设值;0041验证所述验证值、所述加密计算结果、所述第二响应元组、所述第一承诺序列、所述第二承诺序列、第一特定值以及第二特定值是否满足所述零知识证明协议的第二验证条件,具体包括:0042当确定所述验证值为第一预设值时,验证所述第二响应元组、所述第一承诺序列、所述第二承诺序列以及第一特定值是否满足所述零知识证明协议的第二验证条件;0043当确定所述验证值为第二预设值时,验证所述加密计算结果、所述第二响应元组、所述第一承诺序列、所述第二承诺序列、第一特定值以及第二特定值。

22、是否满足所述零知识证明协议的第二验证条件。0044另一方面,本申请实施例提供了一种数据处理装置,装置包括:0045第一接收单元,用于被验证对象接收验证对象发送的密文,所述密文根据第一数据得到;0046确定单元,用于根据持有的第二数据和所述密文,计算所述第二数据的第一重加密结果;0047所述确定单元,还用于基于加密随机数,对所述第一重加密结果进行加密,得到加密计算结果;0048承诺单元,用于基于零知识证明协议,确定承诺数据;0049验证值单元,用于根据所述密文、所述加密计算结果、所述承诺数据、第一特定值以及第二特定值,确定验证值;0050验证单元,用于根据所述验证值、所述承诺数据,基于所述零知识。

23、证明协议,确定待验证数据;0051返回单元,用于将所述加密计算结果、所述承诺数据以及所述待验证数据返回所述验证对象;0052第二接收单元,用于接收所述验证对象在确定所述待验证数据满足验证条件,即确定所述被验证对象在计算所述加密计算结果时依据的第二数据满足目标数据范围之后,发送的解密结果;0053解密单元,用于根据所述随机数,对所述解密结果再次进行解密,得到目标计算结果。0054再一方面,本申请实施例提供了一种数据处理装置,装置包括:0055加密单元,用于验证对象确定公钥以及私钥,通过公钥对持有的第一数据进行加密,得到密文,并将所述密文发送至被验证对象;0056接收单元,用于接收被验证对象返回的。

24、加密计算结果、承诺数据以及待验证数据,其中,所述加密计算结果为所述被验证对象根据所述第一数据、第二数据以及加密随机数计算得到的,所述承诺数据为根据零知识证明协议得到的,所述待验证数据为根据所述验证值、所述承诺数据以及所述零知识证明协议得到的,所述加密随机数为所述被验证对象对随机数进行加密得到的;0057验证值单元,用于根据所述密文、所述加密计算结果、所述承诺数据、第一特定值以及第二特定值,确定验证值;说明书3/21 页7CN 116611095 A70058验证单元,用于根据所述承诺数据、所述验证值以及所述待验证数据,验证所述加密计算结果;0059解密单元,用于当确定所述加密计算结果满足所述零。

25、知识证明协议对应的验证条件,即确定所述被验证对象计算所述加密计算结果时依据的第二数据满足目标数据范围时,通过所述私钥对所述加密计算结果进行解密,确定解密结果;0060发送单元,用于向所述被验证对象发送所述解密结果,使得所述被验证对象可根据所述解密结果以及所述随机数,得到目标计算结果。0061再一方面,本申请实施例提供了一种数据处理设备,设备包括:0062处理器以及存储有计算机程序指令的存储器;0063所述处理器执行所述计算机程序指令时实现如上述任一方面所述的数据处理方法。0064再一方面,本申请实施例提供了一种计算机存储介质,0065所述计算机可读存储介质上存储有计算机程序指令,所述计算机程序。

26、指令被处理器执行时实现如上述任一方面所述的数据处理方法。0066再一方面,本申请实施例提供了一种计算机程序产品,所述计算机程序产品中的指令由电子设备的处理器执行时,使得所述电子设备执行如上述任一方面所述的数据处理方法。0067本申请实施例的数据处理方法、装置、设备、介质和程序产品,能够使得被验证对象在通过同态加密技术进行两方联合计算的过程中,基于零知识证明协议,向验证对象证明该被验证对象在计算每个加密计算结果时用到的第二数据满足预设的目标数据范围,确保最终的计算结果是被验证对象通过满足该目标数据范围的第二数据计算得到的,提高了安全两方计算的可靠性、安全性。附图说明0068为了更清楚地说明本申请。

27、实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单的介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。0069图1是本申请一个实施例提供的数据处理方法的流程示意图;0070图2是本申请另一个实施例提供的数据处理方法的流程示意图;0071图3是本申请一个实施例提供的数据处理装置的结构示意图;0072图4是本申请另一个实施例提供的数据处理装置的结构示意图;0073图5是本申请一个实施例提供的数据处理设备的结构示意图。具体实施方式0074下面将详细描述本申请的各个方面的特征和示例性实施例,为了使本申请的目的、技术方案及优点更加清楚明白,以下结。

28、合附图及具体实施例,对本申请进行进一步详细描述。应理解,此处所描述的具体实施例仅意在解释本申请,而不是限定本申请。对于本领域技术人员来说,本申请可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本申请的示例来提供对本申请更好的理解。说明书4/21 页8CN 116611095 A80075需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过。

29、程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。0076安全多方计算(Secure Mutiparty Computation,SMPC)是密码学研究的一个重要方向。具体来说,两个或多个参与方分别拥有各自的私有数据,在不泄漏各自私有数据的情况下,各参与方进行协同计算,计算出关于各参与方私有数据的某一目标函数的结果。整个计算完成时,每个参与方均不能获得其他参与方的私有数据。0077安全两方计算则。

30、是在仅有两个参与方的场景下,在保证每个参与方的私有数据不泄露的前提下,上述两个参与方共同合作完成某个计算任务。0078例如,参与方 持有数据A、B以及C,参与方 持有数据D、E以及F。在参与方 与参与方 均不泄露自身持有的数据的前提下,参与方 可通过两方安全计算得到计算结果YAD+BE+CF。0079通常情况下,安全两方计算的两个参与方可通过同态加密算法实现两方安全计算。0080同态加密(Homomorphic Encryption)是一种特殊的加密方法,允许对密文进行处理得到仍然是加密的结果。即对密文直接进行处理,跟对明文进行处理后再对处理结果加密,得到的结果相同。0081继续引用上例,参与。

31、方 可确定公钥以及私钥,并通过公钥分别对数据D、E以及F进行加密,得到数据D1、E1以及F1。再将数据D1、E1、F1以及公钥发送至参与方 。0082参与方 可通过对随机数G加密,得到加密随机数G1。再基于接收到的数据D1、E1、F1,持有的数据A、B、C以及加密随机数G1,计算得到加密计算结果Y1AD1+BE1+CF1+G1,并将加密计算结果Y1发送至参与方 。0083参与方 可通过私钥对接收到的加密计算结果Y1解密,得到随机计算结果Y2。并将该随机计算结果Y2发送至该参与方 。0084参与方 可根据随机数G以及接收到的随机计算结果Y2,确定计算结果YY2G。0085但是,当其中一个参与方为。

32、恶意参与方时,可能通过伪造数据的方式,窃取另一个参与方的数据。0086继续引用上例,参与方 在接收到数据D1、E1以及F1后,可将数据A以及B伪造为0,计算0087Y1AD1+BE1+CF1+G10D1+0E1+CF1+G1。那么参与方 得到的计算结果Y实际上为YCF,由于参与方 持有数据C,那么参与方 可以计算即参与方 窃取到了参与方 持有的数据F。0088为此,本申请通过对连乘积维尔林(Verlin)协议以及显示区间成员(Showing membership ofaninterval)协议两个零知识证明协议的改进,可使得参与安全两方计算的说明书5/21 页9CN 116611095 A9两。

33、个参与方中,能够获取计算结果的参与方证明该参与方在进行计算时用到的数据是符合预设的数据范围的。0089零知识证明(zeroknowledgeproof)是一方(证明者)向另一方(检验者)证明某命题的方法,特点是在证明过程中证明者除“该命题为真”的信息外,不向检验者暴露任何信息。0090继续引用上例,参与方 与参与方 可约定预设范围为闭区间60,120,那么通过上述零知识证明协议,可使得参与方 向参与方 证明参与方 在计算Y1时,用到的数据A、B以及C均为该闭区间60,120内的数字。0091为了解决现有技术问题,本申请实施例提供了一种数据处理方法、装置、设备、介质和程序产品。下面首先对本申请实。

34、施例所提供的数据处理方法进行介绍。0092图1示出了本申请一个实施例提供的数据处理方法的流程示意图。如图1所示,本申请实施例提供的数据处理方法包括以下步骤:0093S101:被验证对象接收验证对象发送的密文,所述密文根据第一数据得到。0094S102:根据持有的第二数据和所述密文,计算第二数据的第一重加密结果。0095S103、基于加密随机数,对第一重加密结果进行加密,得到加密计算结果。0096S104:基于零知识证明协议,确定承诺数据。0097S105:根据所述密文、所述加密计算结果、所述承诺数据、第一特定值以及第二特定值,确定验证值。0098S106:根据所述验证值、所述承诺数据,基于所述。

35、零知识证明协议,确定待验证数据。0099S107:将所述加密计算结果、所述承诺数据以及所述待验证数据返回所述验证对象。0100S108:接收所述验证对象在确定所述待验证数据满足验证条件,即确定所述被验证对象在计算所述加密计算结果时依据的第二数据满足目标数据范围之后,发送的解密结果。0101S109:根据所述随机数,对所述解密结果再次进行解密,得到目标计算结果。0102上述各步骤的具体实现方式将在下文中进行详细描述。0103根据上述各步骤,能够在通过同态加密技术进行两方联合计算的过程中,基于零知识证明协议,向验证对象证明该被验证对象在计算每个加密计算结果时用到的第二数据满足预设的目标数据范围,确。

36、保最终的计算结果是被验证对象通过满足该目标数据范围的第二数据计算得到的,提高了安全两方计算的可靠性、安全性。0104下面介绍上述各个步骤的具体实现方式。0105在本申请的一个或多个实施例中,步骤S101中,由于该数据处理方法应用于安全两方计算的场景下,因此,该数据处理方法可由被验证对象的电子设备执行。当然,该电子设备可由是计算机、手机、平板电脑、服务器等设备,该电子设备具体为何种设备,本申请不做限制,可根据需要设置。0106具体来说,根据同态加密算法,该被验证对象可接收验证对象发送的密文。该密文是该验证对象通过公钥对该验证对象持有的明文进行加密得到的。在本申请的一个或多个实施例中,该被验证对象。

37、接收到序列c1,c2,c3,,cf,其中,f2,3,4等。f的值为密文说明书6/21 页10CN 116611095 A10的数量,c1、c2等均为密文。0107当然,由于当该被验证对象与该验证对象均仅持有单个数据时,能够获取结果的一方在往往可获取另一方的数据。0108继续引用上例,参与方 持有数据A,参与方 持有数据B,参与方 期望获取YAB。那么参与方 获取Y后,可确定0109因此,在本申请的一个或多个实施例中,该被验证对象接收到的密文至少为两个。0110并且,为了防止该验证对象获取计算结果,该被验证对象的电子设备在对接收到的密文以及持有的第二数据计算时,可加入随机数。但是,由于该验证对象。

38、会通过私钥对该加密计算结果进行解密。若该被验证对象不通过公钥对随机数进行加密,得到加密随机数,那么被验证对象难以获取准确的计算结果。0111继续引用上例,参与方 基于接收到的数据D1、E1、F1,持有的数据A、B、C以及随机数G,计算得到加密计算结果Y1AD1+BE1+CF1+G。并将加密计算结果Y1发送至参与方 。0112参与方 通过私钥对加密计算结果Y1解密,得到随机计算结果Y2,该随机计算结果的值为,Y2AD+BE+CF+G,其中,G为通过私钥对加密随机数解密得到的。并将随机计算结果Y2返回至参与方 。0113参与方 通过随机数G对该随机计算结果Y2解密,得到虚假计算结果Y3,该虚假计算。

39、结果Y3的值为,Y3AD+BE+CF+GG。通常情况下,由于参与方 无法获知G的具体数值,因此参与方 无法根据虚假计算结果Y3,确定计算结果Y。0114于是,在本申请的一个或多个实施例中,该被验证对象的电子设备可接收该验证对象发送的公钥。并通过公钥对随机数加密,得到加密随机数,从而根据加密随机数、第二数据以及密文,确定加密计算结果。0115继续引用上例,参与方 可接收参与方 发送的公钥,并通过该公钥对随机数G加密,得到加密随机数G1。再基于接收到的数据D1、E1、F1,持有的数据A、B、C以及加密随机数G1,计算得到加密计算结果Y1AD1+BE1+CF1+G1。0116参与方 可通过私钥对接收。

40、到的加密计算结果Y1解密,得到随机计算结果Y2。由于该公钥与该私钥为一对密钥,于是,通过私钥对加密随机数G1解密可得到G。于是,随机计算结果Y2的值为,Y2AD+BE+CF+G。参与方 可将该随机计算结果Y2返回至参与方 。0117参与方 便可基于随机数G以及接收到的随机计算结果Y2,确定计算结果Y,Y的值为,YAD+BE+CF。0118采用上述方式,该电子设备可接收验证对象发送的密文,以便对该密文进行处理,从而实现该数据处理方法。0119以上为步骤S101的具体实现方式,下面介绍步骤S102的具体实现方式。0120在本申请的一个或多个实施例中,在步骤S102中,该电子设备在接收到密文后,可基。

41、于同态加密算法,通过持有的第二数据对密文进行运算。0121具体的,首先,该电子设备可根据接收到的公钥,对持有的至少两个随机数分别进行加密,得到至少两个加密随机数。再针对接收到的每个密文,根据预设的计算方式以及预设的对应关系,对该密文以及该密文对应的第二数据进行计算,得到该密文对应的一重加密计算结果。其中,该对应关系为密文与第二数据的对应关系。该计算方式为该被验证对象说明书7/21 页11CN 116611095 A11以及该验证对象确定出的对该第一数据与该第二数据进行计算的计算方式。其中,将该被验证对象持有的第二数据记为x1,x2,x3,xf,其中,f为第二数据的数量,且第二数据与密文、加密随。

42、机数一一对应。0122通常情况下,在进行安全两方计算时,执行计算过程的一方会将得到的计算结果通过随机数加密后,发送至另一方。0123继续沿用上例,参与方 执行计算过程,参与方 基于接收到的数据D1、E1、F1,持有的数据A、B、C执行计算后,得到初始加密计算结果Y3AD1+BE1+CF1。再对随机数G加密,得到加密随机数G1。基于加密随机数G1对初始加密计算结果Y3加密,得到加密计算结果Y1AD1+BE1+CF1+G1。0124但是,在本申请的一个或多个实施例中,由于被验证对象需要向验证对象证明,被验证对象计算在进行计算时用到的每个第二数据均符合预设的数据范围,因此,在步骤S103中,被验证对。

43、象需要将基于每个第二数据以及该第二数据对应的密文得到的数据发送至验证对象。而为了减小该被验证对象持有的第二数据暴露给该验证对象的可能性,该被验证对象可通过加密后的随机数,对每个一重加密结果进行加密。0125于是,该被验证对象可根据接收到的公钥,对多个随机数进行加密,得到多个加密随机数。将加密随机数记为gf,多个加密随机数分别为g1,g2,g3,gf,其中,f为密文的数量,由于密文、第二数据、加密随机数一一对应,因此,加密随机数的数量也为f。再针对每个一重加密计算结果,根据得到的任一加密随机数,对该一重加密计算结果再次进行加密,得到二重加密计算结果。再将确定出的多个二重加密计算结果,作为加密计算。

44、结果。在本申请的一个或多个实施例中,该电子设备可将该加密计算结果记为cx1,cx2,cx3,cxf,其中,f为该加密计算结果中二重加密计算结果的数量,cx1、cx2、cx3等为二重加密计算结果。0126例如,第一参与方在接收到第二参与方发送的密文A、B、C后,可基于持有的数据D、E、F,分别计算一重加密计算结果YAD,HBE,ZCF。再通过公钥对随机数O、P、Q分别加密,得到加密随机数O1、P1、Q1。然后,基于加密随机数O1、P1、Q1对一重加密计算结果Y、H、Z分别加密,得到二重加密计算结果Y1、H1、Z1,其中,Y1AD+O1,H1BE+P1,Z1CF+Q1。最后,将二重加密计算结果Y1。

45、、H1、Z1,作为加密计算结果J,JY1,H1,Z1。0127采用上述方式,该电子设备可基于预设的计算方式以及预设的对应关系,对接收到的密文以及持有的数据进行计算,并通过加密后的随机数对计算结果进行加密,得到包含多个二重加密计算结果的加密计算结果。0128以上为步骤S102和步骤S103的具体实现方式,下面介绍步骤S104的具体实现方式。0129在本申请的一个或多个实施例中,在步骤S104中,该被验证对象在确定加密计算结果后,需要向验证对象证明,该被验证对象在计算该加密计算结果中的每个二重计算结果时,使用的第二数据均符合预设的目标数据范围。0130于是,该被验证对象可基于连乘积维尔林(VERL。

46、IN)协议以及显示区间的成员资格(BCDG)协议进行证明。0131其中,VERLIN协议是一个零知识证明协议,通过该协议,证明者可以向验证者证明第一密文是由第二密文、第三密文以及第一明文计算得到的。该VERLIN协议的具体过程可参考论文 两方设置下的高效密钥生成和阈值(Efficient RSA Key Generation and 说明书8/21 页12CN 116611095 A12Threshold Paillier in the TwoParty Setting)中第3.3.1节的内容。0132BCDG协议是一个零知识证明协议,通过该协议,证明者可以在yf(x)成立,且存在解x,x的值。

47、处于第一区间内时,向证明者证明x的值处于第二区间内,其中,第二区间包含第一区间。该BCDG协议的具体过程可参考论文 逐步和可核查的释放一个秘密(GRADUAL AND VERIFIABLE RELEASE OF A SECRET)中第158页至第160页的内容。0133由于在安全两方计算场景下,两个参与方往往会在数次交互中完成计算。但VERLIN协议或BCDG协议可能需要证明方与验证方之间进行多次交互,于是,在本申请的一个或多个实施例中,为了提高效率,该被验证对象以及该验证对象可对VERLIN协议以及BCDG协议进行改进。0134于是,该被验证对象可基于零知识证明协议,即基于改进后VERLIN。

48、协议以及改进后的BDCG协议,确定承诺数据。0135具体来说,首先,该被验证对象的电子设备可针对每个二重加密计算数据,基于零知识证明协议的要求,即基于改进后的VERLIN协议的要求,从模N剩余类环中随机选择第一随机值以及第二随机值,从整数模N乘法群中随机选择第三随机值。其中,该第一随机值记为af,该第二随机值记为af,该第三随机值记为raf,第一随机值、第二随机值以及第三随机值的数量均为f,每个二重加密计算数据均对应一个第一随机数、一个第二随机数以及一个第三随机数。0136对该第一随机值、该第二随机值以及该第三随机值,基于该计算方式进行计算,得到承诺值。该承诺值为cafcf(af,af,raf。

49、),该承诺值的意义为根据第一随机值af、第二随机值af、第三随机值raf以及密文cf按照该计算方式计算,可以得到caf。0137其次,基于改进后的BCDG协议,根据预设的目标数据范围,确定第一特定值以及第二特定值。如改进后的BCDG协议所述,当该目标数据范围为aB,a+2B时,可确定第一特定值为a,第二特定值为B。并且,该电子设备可基于BCDG协议,确定验证次数为i。0138针对每次验证,该电子设备可从数字0与该第二特定值组成的闭区间中,随机选择第四随机值,即从区间0,B或区间B,0中,随机确定第四随机值,并将该第四随机值记为i为验证次数,f为该二重加密数据的标识。再将该第四随机值与该第二特定。

50、值的差值,作为第五随机值,将第五随机值记为则其中第五随机值为第f个二重加密计算结果对应的第i个。并以50的概率,交换该第四随机值与该第五随机值的数值。0139例如,第四随机值为1,第五随机值为3。则交换完成后,第四随机值仍为1,且第五随机值仍为3的概率为50,第四随机值为3,第五随机值为1的概率为50。0140再从模N剩余类环中随机确定第六随机值以及第七随机值,从模N整数乘法群中随机确定第八随机值以及第九随机值。将该第六随机值记为将该第七随机值记为将该第八随机值记为将该第九随机值记为0141根据该第四随机值、该第六随机值以及该第八随机值,基于该计算方式进行计算,得到第一承诺序列。0142计算第。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1