隐私数据的处理方法、装置、电子设备及可读存储介质与流程

未命名 08-13 阅读:87 评论:0


1.本技术中涉及数据处理技术领域,具体涉及一种隐私数据的处理方法、装置、电子设备及可读存储介质。


背景技术:

2.区块链是一种去中心化的分布式数据库技术。在区块链中,数据被存储在一个由多个节点组成的网络中,每个节点都可以参与到数据交换和验证的过程中。通过与密码学技术相结合,例如同态加密、函数加密等一系列隐私计算工具,区块链可以保证数据的安全、公平和不可篡改,使得数据交换可以在不需要信任任何中心化机构的情况下进行,并且真实可信。
3.在基于区块链实现的涉及隐私数据的应用场景中,以竞价拍卖为例,报价方所提供的报价为隐私数据,需要对其进行隐藏。报价方通常利用密码学承诺生成其报价的承诺,并对其报价加密生成密文。然后将承诺上传至区块链进行公开,将密文发送至计算方进行竞价。由于承诺和密文都对真实报价进行了隐藏,从而可以避免报价的泄露,极大的保护了隐私。在报价方对竞价结果具有异议的情况下,利用承诺验证自身报价的正确性,从而可以解决报价与承诺不一致导致的异议。
4.然而,产生异议的原因很多,针对密文问题产生的异议,通过验证承诺是无法得到解决的。


技术实现要素:

5.本技术中多个实施例提供一种隐私数据的处理方法、装置、电子设备及可读存储介质,以实现解决由于隐私数据的密文问题产生的异议的目的。
6.第一方面,本技术的一个实施例提供了一种隐私数据的处理方法,应用于第一电子设备,所述隐私数据的处理方法包括:基于预设密码学承诺算法生成目标隐私数据的隐私承诺,并基于预设同态加密算法生成所述目标隐私数据的隐私密文;基于所述隐私承诺、所述隐私密文以及预设零知识证明算法生成目标零知识证明,其中,所述目标零知识证明用于证明所述隐私承诺和所述隐私密文基于相同的隐私数据生成;将所述隐私承诺和所述目标零知识证明存储至区块链,并将所述隐私密文发送至第二电子设备,以使所述第二电子设备在接收到所述隐私密文的情况下,获取所述第一电子设备存储至所述区块链的所述隐私承诺和所述目标零知识证明;并基于所述隐私承诺和所述隐私密文,验证所述目标零知识证明的正确性。
7.可选地,所述基于所述隐私承诺、所述隐私密文以及预设零知识证明算法生成目标零知识证明之前,所述方法还包括:获取交互式零知识证明算法;
将所述交互式零知识证明算法转换为非交互式零知识证明算法;将所述非交互式零知识证明算法确定为所述预设零知识证明算法。可选地,所述预设密码学承诺算法为pedersen承诺算法,所述预设同态加密算法为pailliar加密算法;
8.所述交互式零知识证明算法,包括:分别随机抽取第一集合、第二集合和第三集合中的一个元素,得到第一随机数、第二随机数和第三随机数,并将所述第一随机数、所述第二随机数和所述第三随机数发送至交互式零知识证明的验证方;所述第一集合为不同隐私数据组成的集合,所述第二集合为所述pailliar加密算法中不同取值的盲因子组成的集合,所述第三集合为所述pedersen承诺算法中不同取值的秘密值组成的集合;基于所述第一随机数、所述第二随机数以及所述pailliar加密算法,生成待验证密文,并基于所述第一随机数、所述第三随机数以及所述pedersen承诺算法,生成待验证承诺;将所述目标隐私数据乘以挑战数的结果加上所述第一随机数得到的和,确定为第一参数,将目标盲因子的所述挑战数次幂的结果乘以所述第二随机数得到的乘积,确定为第二参数,将目标秘密值乘以挑战数的结果加上第三随机数得到的和,确定为第三参数;其中,所述挑战数为所述验证方发送的一非零的随机数,所述目标盲因子为生成所述隐私密文时所述pailliar加密算法中选取的盲因子,所述目标秘密值为生成所述隐私承诺时所述pedersen承诺算法中选取的秘密值;在所述验证方确定第一计算结果等于第二计算结果,且第三计算结果等于第四计算结果的情况下,验证通过;其中,所述第一计算结果等于第一公钥参数的所述第一参数次幂的结果乘以所述第二参数的第二公钥参数次幂的结果得到的乘积;所述第二计算结果等于所述隐私密文的所述挑战数次幂的结果乘以所述待验证密文得到的乘积;所述第三计算结果等于第一公共参数的所述第一参数次幂的结果乘以第二公共参数的所述第三参数次幂的结果得到的乘积;所述第四计算结果等于所述隐私承诺的所述挑战数次幂的结果乘以所述待验证承诺得到的乘积;所述第一公钥参数和所述第二公钥参数为所述pailliar加密算法中选取的公钥参数;所述第一公共参数和所述第二公共参数为所述pedersen承诺算法中选取的公共参数。
9.可选地,所述将所述交互式零知识证明算法转换为非交互式零知识证明算法,包括:对所述交互式零知识证明算法进行fiat-shamir变换,得到所述非交互式零知识证明算法。
10.可选地,所述基于所述隐私承诺、所述隐私密文以及预设零知识证明算法生成目标零知识证明之前,所述方法还包括:获取交互式零知识证明算法;将所述交互式零知识证明算法确定为所述预设零知识证明算法。
11.可选地,所述基于预设同态加密算法生成所述目标隐私数据的隐私密文之后,所述方法还包括:
将目标哈希值存储至所述区块链;其中,所述目标哈希值为所述隐私密文的哈希值;在发起异议请求的情况下,将所述目标隐私数据、所述隐私密文发送至所述区块链,以使目标电子设备从所述区块链获取所述目标隐私数据、所述隐私密文、所述隐私承诺、所述目标零知识证明和所述目标哈希值,基于所述隐私承诺验证所述目标隐私数据的正确性,基于所述目标哈希值验证所述隐私密文的正确性,基于所述隐私承诺和所述隐私密文,验证所述目标零知识证明的正确性。
12.可选地,所述基于预设同态加密算法生成所述目标隐私数据的隐私密文之后,所述方法还包括:将目标哈希值存储至所述区块链,其中,所述目标哈希值为所述隐私密文的哈希值;所述目标哈希值用于所述第二电子设备在接收到所述隐私密文的情况下,获取所述第一电子设备存储至所述区块链的所述目标哈希值,并基于所述目标哈希值验证所述隐私密文的正确性。
13.第二方面,本技术的一个实施例提供了一种隐私数据的处理方法,应用于第二电子设备,所述隐私数据的处理方法包括:在接收到第一电子设备发送的隐私密文的情况下,获取所述第一电子设备存储至区块链的隐私承诺和目标零知识证明;其中,所述隐私密文为所述第一电子设备基于预设同态加密算法生成的目标隐私数据的密文;所述隐私承诺为所述第一电子设备基于预设密码学承诺算法生成的所述目标隐私数据的承诺,所述目标零知识证明为所述第一电子设备基于所述隐私承诺、所述隐私密文以及预设零知识证明算法生成的零知识证明,所述目标零知识证明用于证明所述承诺和所述密文基于相同的隐私数据生成;基于所述隐私承诺和所述隐私密文,验证所述目标零知识证明的正确性。
14.可选地,所述方法还包括:在所述目标零知识证明未通过验证的情况下,将所述隐私密文发送至所述区块链,以使第三电子设备在处理所述第一电子设备的异议请求的情况下,从所述区块链获取所述隐私承诺、所述隐私密文以及所述目标零知识证明,并基于所述隐私承诺和所述隐私密文,验证所述目标零知识证明的正确性。
15.可选地,基于所述隐私承诺和所述隐私密文,验证所述目标零知识证明的正确性之前,所述方法还包括:获取所述第一电子设备存储至区块链的目标哈希值,其中,所述目标哈希值为所述第一电子设备基于所述隐私密文生成的哈希值;基于所述目标哈希值验证所述隐私密文的正确性。
16.第三方面,本技术的一个实施例提供了一种隐私数据的处理装置,应用于第一电子设备,所述隐私数据的处理装置包括:承诺加密模块,用于基于预设密码学承诺算法生成目标隐私数据的隐私承诺,并基于预设同态加密算法生成所述目标隐私数据的隐私密文;零知识证明模块,用于基于所述隐私承诺、所述隐私密文以及预设零知识证明算法生成目标零知识证明,其中,所述目标零知识证明用于证明所述隐私承诺和所述隐私密文基于相同的隐私数据生成;
发送模块,用于将所述隐私承诺和所述目标零知识证明存储至区块链,并将所述隐私密文发送至第二电子设备,以使所述第二电子设备在接收到所述隐私密文的情况下,获取所述第一电子设备存储至所述区块链的所述隐私承诺和所述目标零知识证明;并基于所述隐私承诺和所述隐私密文,验证所述目标零知识证明的正确性。
17.第四方面,本技术的一个实施例提供了一种隐私数据的处理装置,应用于第二电子设备,所述隐私数据的处理装置包括:获取模块,用于在接收到第一电子设备发送的隐私密文的情况下,获取所述第一电子设备存储至区块链的隐私承诺和目标零知识证明;其中,所述隐私密文为所述第一电子设备基于预设同态加密算法生成的目标隐私数据的密文;所述隐私承诺为所述第一电子设备基于预设密码学承诺算法生成的所述目标隐私数据的承诺,所述目标零知识证明为所述第一电子设备基于所述隐私承诺、所述隐私密文以及预设零知识证明算法生成的零知识证明,所述目标零知识证明用于证明所述承诺和所述密文基于相同的隐私数据生成;验证模块,用于基于所述隐私承诺和所述隐私密文,验证所述目标零知识证明的正确性。第五方面,本技术的一个实施例提供了一种隐私数据的处理系统,包括:第一电子设备和第二电子设备;所述第一电子设备用于执行如第一方面所述的隐私数据的处理方法;
18.所述第二电子设备用于执行如第二方面所述的隐私数据的处理方法。第六方面,本技术的一个实施例提供了一种电子设备,包括处理器和存储器;其中,所述存储器与所述处理器连接,所述存储器用于存储计算机程序;
19.所述处理器,用于通过运行所述存储器中存储的计算机程序,实现如第一方面或第二方面所述的隐私数据的处理方法。
20.第七方面,本技术的一个实施例提供了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时,实现如第一方面或第二方面所述的隐私数据的处理方法。
21.第八方面,本技术的一个实施例提供了一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序存储在计算机可读存储介质中;所述计算机设备的处理器从所述计算机可读存储介质读取所述计算机程序,所述处理器执行所述计算机程序时实现如第一方面或第二方面所述的隐私数据的处理方法的步骤。
22.本技术提供的多个实施例,第一电子设备分别利用预设密码学承诺算法和预设同态加密算法,将目标隐私数据同时绑定到隐私承诺和隐私密文。通过隐私承诺和隐私密文对目标隐私数据进行隐藏,提升了数据的隐私性。然后利用预设零知识证明算法生成,用于证明隐私承诺和隐私密文绑定到相同隐私数据的目标零知识证明。在将隐私承诺和目标零知识证明存储至区块链之后,将隐私密文发送至第二电子设备。这样,第二电子设备通过验证目标零知识证明,就可以确定第一电子设备链上公开的隐私承诺和与其发送的隐私密文是否绑定到了相同的隐私数据,实现了隐私数据的一致性的验证。不仅能够识别交易过程中恶意篡改隐私密文的行为,还可以及时发现未经正确加密方式生成隐私密文的情况,进而解决由于隐私数据的密文问题产生的异议。
附图说明
23.图1为本技术的一个实施例提供的一种隐私数据的处理方法的应用环境示意图。
24.图2为本技术的一个实施例提供的一种隐私数据的处理方法的步骤示意图。
25.图3为本技术的一个实施例提供的另一种隐私数据的处理方法的步骤示意图。
26.图4为本技术的一个实施例提供的一种隐私数据的处理装置的结构示意图。
27.图5为本技术的一个实施例提供的另一种隐私数据的处理装置的结构示意图。
28.图6为本技术的一个实施例提供的一种隐私数据的处理系统的结构示意图。
29.图7为本技术的一个实施例提供的一种电子设备的结构示意图。
具体实施方式
30.除非另外定义,本技术实施例使用的技术术语或者科学术语应当为本技术所属领域内具有一般技能的人士所理解的通常意义。本技术实施例使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来避免构成要素的混同而设置的。
31.除非上下文另有要求,否则,在整个说明书中,“多个”表示“至少两个”,“包括”被解释为开放、包含的意思,即为“包含,但不限于”。在说明书的描述中,术语“一个实施例”、“一些实施例”、“示例性实施例”、“示例”、“特定示例”或“一些示例”等旨在表明与该实施例或示例相关的特定特征、结构、材料或特性包括在本技术的至少一个实施例或示例中。上述术语的示意性表示不一定是指同一实施例或示例。
32.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。概述
33.如背景技术中所述,在利用区块链进行交易的场景中,为保护隐私、提升交易的安全性并减少异议。通常需要对隐私数据进行处理,得到可以隐藏隐私数据的承诺和密文,利用承诺和密文实现交易。
34.虽然可以通过验证承诺确保隐私数据的正确性,但仍存在很多可能产生异议的问题无法解决。例如,在竞价拍卖场景下,恶意报价方会事先准备两个不同报价,链上公开高报价的承诺,发送低报价的密文至计算方。若低报价竞拍成功,则可以节省成本。若未竞拍成功,但竞拍成功的报价低于自身的高报价,则可以通过提出异议,使得交易无效。同理,恶意计算方也可以在计算各报价方的密文时,忽略某一报价方的密文。若竞拍成功的报价低于该报价方的密文,恶意计算方也可以抵赖该报价方未正确发送密文。造成这种现象的原因在于,密文和承诺虽然很好的隐藏了报价。但也使得交易双方无法确保密文与承诺绑定到了同一报价。或者说,计算方将接收到的密文存储到本地的私有数据库之后,无法确定私有数据库中的密文与区块链中的报价绑定到了同一报价。
35.所以,在利用密文和承诺隐藏隐私数据的方案中,关于隐私数据的一致性是很难得到验证的。
36.针对上述问题,本技术提供一种隐私数据的处理方法、装置、电子设备及可读存储介质,目的在于在提供隐私密文和隐私承诺的基础上,生成用于证明隐私承诺和隐私密文
绑定到相同隐私数据的目标零知识证明,通过目标零知识证明验证隐私密文和隐私承诺是否绑定到了相同的隐私数据,从而不仅能够识别恶意篡改隐私密文的行为。还可以及时发现未经正确加密方式生成隐私密文的情况,可以解决由于隐私数据的密文问题产生的异议。同时,也实现了隐私数据的一致性的验证。以下通过实施例对具体方案进行详细说明。示例性场景
37.图1示出了本技术实施例所提出的技术方案的一种示例性实施环境,该实施环境包括第一电子设备101、第二电子设备102和区块链103。其中,区块链103为基于区块链技术搭建的区块链平台。第一电子设备101可以是具有网络访问能力的电子设备,其通过网络可以与区块链103和第二电子设备102进行数据交互。具体的,例如,第一电子设备101可以是台式电脑、平板电脑、笔记本电脑、智能手机等。用户可以直接在第一电子设备101上进行操作,触发第一电子设备101执行本技术提供的隐私数据的处理方法。当然,第一电子设备101也可以为具有一定运算处理能力的服务器。该服务器可以具有网络通信模块、处理器和存储器等。该服务器还可以为分布式服务器,可以是具有多个处理器、存储器、网络通信模块等协同运作的系统。或者,该服务器还可以为若干服务器形成的服务器集群。或者,随着科学技术的发展,该服务器还可以是能够实现说明书实施方式相应功能的新的技术手段。例如,可以是基于量子计算实现的新形态的“服务器”。用户可以通过客户端访问该服务器。这样,该服务器可以基于用户在客户端上的操作,触发执行本技术提供的隐私数据的处理方法。同理,第二电子设备102可以是具有网络访问能力的电子设备,其通过网络可以与区块链103和第一电子设备101进行数据交互。第二电子设备102与第一电子设备101类似,这里不再赘述。
38.可以理解的是,在利用区块链进行交易的场景中,可以将交易双方分为出价方或报价方、计算方。其中,报价方提供自己的报价,计算方根据各报价方的报价选择成交的报价方。所以,第一电子设备101相当于报价方,隐私数据为报价。第二设备101相当于计算方。由于报价方的数量通常为多个,因此,该实施环境还可以包括任意数量的其它设备,其它设备作为不同的报价方参与到交易当中。值得注意的是,本技术并不限于将报价作为隐私数据的交易场景,只要是结合区块链,且利用承诺和密文实现目的的场景均可,例如还可以为将身份信息作为隐私数据的身份验证场景、将资产作为隐私数据的资产验证场景以及投票场景等。示例性方法
39.以应用于图1所示的实施环境为例,本技术实施例提供了一种隐私数据的处理方法,应用于第一电子设备101,如图2所示,该隐私数据的处理方法包括:s201:基于预设密码学承诺算法生成目标隐私数据的隐私承诺,并基于预设同态加密算法生成目标隐私数据的隐私密文。
40.本步骤中,目标隐私数据为目标场景中的隐私数据。其中,隐私数据与目标场景相关,在目标场景为交易场景的情况下,隐私数据为报价。具体的,目标隐私数据可以为任一报价方或出价方所提出的报价。在目标场景为身份验证场景的情况下,隐私数据为身份信息,具体的,目标隐私数据为待验证用户的身份信息。其中,该身份信息可以为用户的生物信息,例如该生物信息可以为指纹信息、人脸信息等。在目标场景为资产验证场景的情况下,隐私数据为资产信息,具体的,目标隐私数据为待验证用户的资产信息。例如,该资产信
息可以为用户的资产余额。在目标场景为投票场景的情况下,隐私数据为候选人或候选物品的编号。具体的,目标隐私数据为投票方选择的候选人或候选物品的编号。可以理解的是,本技术的应用场景并不限于上述交易场景、身份验证场景、资产验证场景以及投票场景,只要是结合区块链,且利用承诺和密文实现目的的场景均可。并且,不同应用场景下目标隐私数据不尽相同,这里不再一一列举。
41.预设密码学承诺算法为预先设置的任一密码学承诺算法。例如,预设密码学承诺算法包括:基于哈希函数的承诺算法、基于离散对数的承诺算法、加性承诺算法、pedersen 承诺算法中的任意一种。隐私承诺为目标隐私数据的承诺,具体的,将目标隐私数据代入预设密码学承诺算法进行计算,得到目标隐私数据的承诺。一个实施例中,在预设密码学承诺算法中涉及秘密值或盲因子的情况下,第一电子设备将接收用户输入的目标隐私数据以及秘密值,然后将目标隐私数据以及秘密值代入预设密码学承诺算法进行计算,得到目标隐私数据的承诺。
42.预设同态加密算法为预先设置的任一同态加密算法。例如,预设同态加密算法包括:damgard-jurik cryptosystem(dj密码系统)提供的加密算法、okamoto-uchiyamacryptosystem(ou密码系统)提供的加密算法、pailliar加密算法中的任意一种。隐私密文为目标隐私数据的密文,具体的,将目标隐私数据代入预设同态加密算法进行计算,得到目标隐私数据的密文。一个实施例中,在预设同态加密算法中涉及秘密值或盲因子的情况下,第一电子设备将接收用户输入的目标隐私数据以及盲因子,然后将目标隐私数据以及盲因子代入预设同态加密算法进行计算,得到目标隐私数据的密文。
43.s202:基于隐私承诺、隐私密文以及预设零知识证明算法生成目标零知识证明。
44.本步骤中,预设零知识证明算法为预先设置的任一交互式或非交互式的零知识证明算法。关于零知识证明算法,其具有完整性、合理性以及零知识三个特征,具体的,完整性:如果一个陈述是正确的,那么一个诚实的验证者可以被一个诚实的证明者说服,他们拥有关于正确输入的知识。合理性:如果一个陈述是错误的,那么任何不诚实的证明者都不能单方面说服一个诚实的验证者,他们拥有关于正确输入的知识。零知识:如果状态为真,则验证者从证明者那里学到的东西只是陈述为真。
45.本实施例中,目标零知识证明用于证明隐私承诺和隐私密文基于相同的隐私数据生成。具体的,针对预设密码学承诺算法和预设同态加密算法,预先设置一零知识证明算法,用于证明隐私承诺和隐私密文是基于同一隐私数据生成的承诺和密文。然后将隐私承诺和隐私密文代入零知识证明算法,生成相应的零知识证明。
46.s203:将隐私承诺和目标零知识证明存储至区块链,并将隐私密文发送至第二电子设备,以使第二电子设备在接收到隐私密文的情况下,获取第一电子设备存储至区块链的隐私承诺和目标零知识证明;并基于隐私承诺和隐私密文,验证目标零知识证明的正确性。
47.本步骤中,存储至区块链的隐私承诺和目标零知识证明,在区块链上被公开。一些实施例中,在将隐私承诺和目标零知识证明存储至区块链时,对应存储一标识信息,同样的,第二电子设备在接收到隐私密文之后,对应设置一标识信息。这样,存在多个第一电子设备的情况下,通过标识信息即可区分不同的第一电子设备。一个实施例中,该标识信息可以为第一电子设备的设备唯一标识,也可以为当前登录用户的电子账户。例如,在竞价拍卖
场景中,用户通过第一电子设备上的浏览器或者应用程序输入目标隐私数据,用户在浏览器或者应用程序中登录的账户,可以作为标识信息。
48.第二电子设备为零知识证明的验证方。在接收到隐私密文的情况下,通过验证目标零知识证明的正确性,可以确定其接收到的隐私密文与第一电子设备公开到区块链上的隐私承诺,是否绑定到了相同隐私数据上。若验证通过,说明隐私密文和隐私承诺绑定到了相同隐私数据上,可以进行后续处理。否则,视为隐私密文被篡改。
49.在本实施例中,第一电子设备分别利用预设密码学承诺算法和预设同态加密算法,将目标隐私数据同时绑定到隐私承诺和隐私密文。通过隐私承诺和隐私密文对目标隐私数据进行隐藏,提升了数据的隐私性。然后利用预设零知识证明算法生成,用于证明隐私承诺和隐私密文绑定到相同隐私数据的目标零知识证明。在将隐私承诺和目标零知识证明存储至区块链之后,将隐私密文发送至第二电子设备。这样,第二电子设备通过验证目标零知识证明,就可以确定第一电子设备链上公开的隐私承诺和与其发送的隐私密文是否绑定到了相同的隐私数据,实现了隐私数据的一致性的验证。不仅能够识别交易过程中恶意篡改隐私密文的行为,还可以及时发现未经正确加密方式生成隐私密文的情况,进而解决由于隐私数据的密文问题产生的异议。
50.为保证证明过程的安全性,同时缩短证明过程中的交互时间,在本技术的一个实施例中,基于隐私承诺、隐私密文以及预设零知识证明算法生成目标零知识证明之前,该方法还包括:获取交互式零知识证明算法;将交互式零知识证明算法转换为非交互式零知识证明算法;将非交互式零知识证明算法确定为预设零知识证明算法。
51.其中,该交互式零知识证明算法可以为本领域技术人员经常使用的任一交互式的零知识证明算法。也可以为基于预设密码学承诺算法和预设同态加密算法,预先构建的交互式的零知识证明算法。可以理解的是,对于交互式零知识证明算法,在验证过程中,需要证明方和验证方多次交互,以验证零知识证明的正确性。
52.一些实施例中,第一电子设备可以从其他设备上获取所需使用的交互式零知识证明算法,进而在本地将其转换为非交互式零知识证明算法,并将其作为预设零知识证明算法进行后续使用。当然,也可以借助其它设备进行前述步骤,即相关人员在其它电子设备上构建交互式零知识证明算法,并将其转换为非交互式零知识证明算法。第一电子设备可以直接获取该转换后的非交互式零知识证明算法。
53.在本实施例中,需要将交互式零知识证明算法转换为非交互式零知识证明算法,通过交互式零知识证明算法,可以保证证明过程的安全性。验证过程中使用非交互式零知识证明算法,可以缩短证明过程中的交互时间。在一些实施例中,预设密码学承诺算法为pedersen承诺算法,预设同态加密算法为pailliar加密算法;
54.交互式零知识证明算法,包括:分别随机抽取第一集合、第二集合和第三集合中的一个元素,得到第一随机数、第二随机数和第三随机数,并将第一随机数、第二随机数和第三随机数发送至交互式零知识证明的验证方;第一集合为不同隐私数据组成的集合,第二集合为pailliar加密算法中不
同取值的盲因子组成的集合,第三集合为pedersen承诺算法中不同取值的秘密值组成的集合;基于第一随机数、第二随机数以及pailliar加密算法,生成待验证密文,并基于第一随机数、第三随机数以及pedersen承诺算法,生成待验证承诺;将目标隐私数据乘以挑战数的结果加上第一随机数得到的和,确定为第一参数,将目标盲因子的挑战数次幂的结果乘以第二随机数得到的乘积,确定为第二参数,将目标秘密值乘以挑战数的结果加上第三随机数得到的和,确定为第三参数;其中,挑战数为验证方发送的一非零的随机数,目标盲因子为生成隐私密文时pailliar加密算法中选取的盲因子,目标秘密值为生成隐私承诺时pedersen承诺算法中选取的秘密值;在验证方确定第一计算结果等于第二计算结果,且第三计算结果等于第四计算结果的情况下,验证通过;其中,第一计算结果等于第一公钥参数的第一参数次幂的结果乘以第二参数的第二公钥参数次幂的结果得到的乘积;第二计算结果等于隐私密文的挑战数次幂的结果乘以待验证密文得到的乘积;第三计算结果等于第一公共参数的第一参数次幂的结果乘以第二公共参数的第三参数次幂的结果得到的乘积;第四计算结果等于隐私承诺的挑战数次幂的结果乘以待验证承诺得到的乘积;第一公钥参数和第二公钥参数为pailliar加密算法中选取的公钥参数;第一公共参数和第二公共参数为pedersen承诺算法中选取的公共参数。
55.具体的,以交易场景下的竞价拍卖场景中的报价作为目标隐私数据进行说明。可以设置pedersen承诺算法的公共参数。例如,取定某个充分大的安全参数,选取一个长度的二进制素数,再选取一个阶的椭圆曲线上的循环群;此处要求的选取充分大,使得大于该拍卖商品的可能的任一报价。可以理解的是,选取充分大的安全参数值具有两方面的考量,首先安全参数对循环群的阶数具有下界约束,若拍卖商品潜在地具有较大的报价区间,则阶数的取值也需要充分大,进而安全参数也必须充分大;另一方面安全参数代表着安全系数,因为循环群的阶数越大,则对该算法的攻击时间也会越长。选取循环群的两个生成元和;将作为pedersen承诺的公共参数。
56.设置pailliar加密算法的公共参数。取定某个充分大的安全系数,独立地选取两个素数和,满足二者的二进制长度为。可以理解的是,选取充分大的安全系数具有两方面的考量,首先安全系数对产生的两个素数和具有下界约束,若报价潜在地具有较大的取值范围,则的取值也需要充分大,进而安全系数也必须充分大;另一方面安全系数代表着安全系数,因为pailliar加密算法基于模的次剩余判断,则越大代表着对该算法的攻击时间越长。计算;得到公共参数为:pailliar加密的公私钥对为。其中,公钥=,私钥=。为区分公钥中的和pedersen承诺的公共参数,后续均分别采用和表示。可以理解的,验证方在验证时,具备以下信息:pailliar加密的,pedersen承诺的公共参数,隐私密文和隐私承诺。报价方或证明方具备以下信
息:pailliar加密的,pedersen承诺的公共参数,目标隐私数据或报价,加密时选取的盲因子,承诺时选取的秘密值,隐私密文,隐私承诺
57.因此,在构建交互式零知识证明时,利用不同隐私数据组成第一集合,利用pailliar加密算法中不同取值的盲因子组成第二集合,利用pedersen承诺算法中不同取值的秘密值组成第三集合,然后在中随机抽取第一随机数,在中随机抽取第二随机数,在中随机抽取第三随机数。然后根据公式一计算得到待验证密文和待验证承诺。
58.公式一:;其中,a表示待验证密文,b表示待验证承诺,表示第一随机数,表示第二随机数,表示第三随机数,表示第一公钥参数,表示第二公钥参数,表示第一公共参数,h表示第二公共参数。
59.将待验证密文和待验证承诺发送至验证方,并接收验证方返回的一非零的挑战数。按照公式二、公式三以及公式四,分别计算得到第一参数、第二参数和第三参数。公式二:;公式三:;公式四:。其中,表示第一参数,表示第二参数,表示第三参数,表示第一随机数,表示第二随机数,表示第三随机数,表示挑战数,表示目标隐私数据,表示生成隐私密文时pailliar加密算法中选取的盲因子,表示生成隐私承诺时pedersen承诺算法中选取的秘密值。
60.将第一参数、第二参数和第三参数发送至验证方,当且仅当第一等式和第二等式同时成立时,验证通过。第一等式:;第二等式:;其中,表示第一公钥参数,表示第二公钥参数,表示第一公共参数,h表示第二公共参数,表示第一参数,表示第二参数,表示第三参数,表示挑战数,a表示待验证密文,b表示待验证承诺,表示隐私密文,表示隐私承诺。
61.本实施例中,选择pedersen承诺算法作为预设密码学承诺算法、选择pailliar加密算法作为预设同态加密算法,并基于pedersen承诺算法和pailliar加密算法构建零知识证明算法,可以更加具有针对性,且更加方便调整零知识证明算法。
62.在一些实施例中,将交互式零知识证明算法转换为非交互式零知识证明算法,包括:对交互式零知识证明算法进行fiat-shamir变换,得到非交互式零知识证明算法。
63.其中,fiat-shamir变换(fiat-shamirtransformation),是把零知识证明中的交互式协议转换为非交互式协议的方法。因此,使用fiat-shamir变换可以将交互式的零知识证明算法转换为非交互式的零知识证明算法。一些实施例中,可以采取bulletproofs、plonk及其衍生的证明方案进行fiat-shamir变换。这里,只需保证证明验证的高效性、证明生成的高效性和交互式零知识证明转换的高效性即可。
64.本实施例中,可以利用fiat-shamir变换将交互式零知识证明算法,转换为非交互
式零知识证明算法。
65.为提升证明过程的安全性,在本技术的一个实施例中,基于隐私承诺、隐私密文以及预设零知识证明算法生成目标零知识证明之前,方法还包括:获取交互式零知识证明算法;将交互式零知识证明算法确定为预设零知识证明算法。
66.其中,该交互式零知识证明算法可以为本领域技术人员经常使用的任一交互式的零知识证明算法。也可以为基于预设密码学承诺算法和预设同态加密算法,预先构建的交互式的零知识证明算法。可以理解的是,对于交互式零知识证明算法,在验证过程中,需要证明方和验证方多次交互,以验证零知识证明的正确性。
67.在本实施例中,直接使用交互式零知识证明算法进行目标零知识证明的计算,可以加大攻击者的攻击难度,从而提升证明过程的安全性。
68.为进一步提升隐私密文的可靠性,在本技术的一个实施例中,基于预设同态加密算法生成目标隐私数据的隐私密文之后,该方法还包括:将目标哈希值存储至区块链;其中,目标哈希值为隐私密文的哈希值;在发起异议请求的情况下,将目标隐私数据、隐私密文发送至区块链,以使目标电子设备从区块链获取目标隐私数据、隐私密文、隐私承诺、目标零知识证明和目标哈希值,基于隐私承诺验证目标隐私数据的正确性,基于目标哈希值验证隐私密文的正确性,基于隐私承诺和隐私密文,验证目标零知识证明的正确性。
69.其中,隐私密文的哈希值可以与隐私承诺和目标零知识证明一同发送至区块链。基于哈希函数不可篡改的特性,在第一电子设备发起异议请求的情况下,作为验证方的目标电子设备,将对第一电子设备发送的隐私密文进行哈希计算得到计算结果,将该计算结果与第一电子设备存储至区块链的目标哈希值进行比较,若两者一致,说明第一电子设备所提供的隐私密文并未篡改,否则,视为隐私密文有误或无效。可以理解的是,在进行异议时,同时验证隐私承诺、隐私密文以及目标零知识证明的正确性。
70.在本技术实施例中,通过将隐私密文的哈希值存储至区块链,在进行异议时,基于该哈希值对隐私密文进一步验证,从而可以进一步提升隐私密文的可靠性。
71.为进一步提升隐私密文的可靠性,在本技术的一个实施例中,基于预设同态加密算法生成目标隐私数据的隐私密文之后,该方法还包括:将目标哈希值存储至区块链,其中,目标哈希值为隐私密文的哈希值;目标哈希值用于第二电子设备在接收到隐私密文的情况下,获取第一电子设备存储至区块链的目标哈希值,并基于目标哈希值验证隐私密文的正确性。
72.其中,第二电子设备可以在验证目标零知识证明之前,通过目标哈希值验证其接收到的隐私密文的正确性。具体的,在接收到第一电子设备发送的隐私密文之后,对该隐私密文进行哈希计算,得到哈希计算值。然后从区块链中获取第一电子设备存储的目标哈希值,并比较哈希计算值和目标哈希值是否相同。若相同,则隐私密文正确,其通过了验证。否则,隐私密文错误,其未通过验证。
73.在本技术实施例中,通过将隐私密文的哈希值存储至区块链,便于第二电子设备基于该哈希值对隐私密文进行验证,从而可以进一步提升数据安全性或可靠性。
74.以应用于第二电子设备为例,本说明书实施方式还提供了一种隐私数据的处理方
法,如图3所示,包括:s301:在接收到第一电子设备发送的隐私密文的情况下,获取第一电子设备存储至区块链的隐私承诺和目标零知识证明。其中,隐私密文为第一电子设备基于预设同态加密算法生成的目标隐私数据的密文;隐私承诺为第一电子设备基于预设密码学承诺算法生成的目标隐私数据的承诺,目标零知识证明为第一电子设备基于隐私承诺、隐私密文以及预设零知识证明算法生成的零知识证明,目标零知识证明用于证明承诺和密文基于相同的隐私数据生成;
75.s302:基于隐私承诺和隐私密文,验证目标零知识证明的正确性。
76.关于步骤s301以及步骤s302的可行执行方式以及可能带来的有益效果,可以参考上文中的相关描述,本技术在此不做赘述。另外,关于验证目标零知识证明的正确性,可以采用零知识证明中常规的验证方式进行验证,本技术对此不做限定。
77.为提升验证过程的可靠性,在本技术的一个实施例中,该方法还包括:在目标零知识证明未通过验证的情况下,将隐私密文发送至区块链,以使第三电子设备在处理第一电子设备的异议请求的情况下,从区块链获取隐私承诺、隐私密文以及目标零知识证明,并基于隐私承诺和隐私密文,验证目标零知识证明的正确性。
78.其中,目标零知识证明未通过验证,说明第一电子设备提供的隐私密文和/或隐私承诺存在问题。此时,可以将第一电子设备提供的隐私密文提前公开,以供其它电子设备参与验证。可以理解的是,在第二电子设备将隐私密文发送至区块链之后。由于第三电子设备可以从区块链上获取第一电子设备的隐私承诺和隐私密文。因此,第三电子设备可以采用与第二电子设备相同的验证方法,实现对目标零知识证明进行验证。
79.在本技术实施例中,在目标零知识证明未通过验证的情况下,将第一电子设备提供的隐私密文提前公开,从而可以促使其它电子设备参与验证,提升验证过程的可靠性。
80.为提升隐私密文的可靠性,在本技术的一个实施例中,基于所述隐私承诺和所述隐私密文,验证所述目标零知识证明的正确性之前,该方法还包括:获取所述第一电子设备存储至区块链的目标哈希值,其中,所述目标哈希值为所述第一电子设备基于所述隐私密文生成的哈希值;基于所述目标哈希值验证所述隐私密文的正确性。
81.其中,第二电子设备可以在验证目标零知识证明之前,通过目标哈希值验证其接收到的隐私密文的正确性。具体的,在接收到第一电子设备发送的隐私密文之后,对该隐私密文进行哈希计算,得到哈希计算值。然后从区块链中获取第一电子设备存储的目标哈希值,并比较哈希计算值和目标哈希值是否相同。若相同,则隐私密文正确,其通过了验证。否则,隐私密文错误,其未通过验证。
82.在本技术实施例中,通过将隐私密文的哈希值存储至区块链,便于第二电子设备基于该哈希值对隐私密文进行验证,从而可以进一步提升数据安全性或可靠性。示例性装置
83.本技术的一些实施例还提供了一种隐私数据的处理装置,应用于第一电子设备,如图4所示,该隐私数据的处理装置包括:承诺加密模块401,用于基于预设密码学承诺算法生成目标隐私数据的隐私承诺,并基于预设同态加密算法生成目标隐私数据的隐私密文;
零知识证明模块402,用于基于隐私承诺、隐私密文以及预设零知识证明算法生成目标零知识证明,其中,目标零知识证明用于证明隐私承诺和隐私密文基于相同的隐私数据生成;发送模块403,用于将隐私承诺和目标零知识证明存储至区块链,并将隐私密文发送至第二电子设备,以使第二电子设备在接收到隐私密文的情况下,获取第一电子设备存储至区块链的隐私承诺和目标零知识证明;并基于隐私承诺和隐私密文,验证目标零知识证明的正确性。
84.一些实施例中,该装置还包括:第一获取模块,用于获取交互式零知识证明算法;转换模块,用于将交互式零知识证明算法转换为非交互式零知识证明算法;第一确定模块,用于将非交互式零知识证明算法确定为预设零知识证明算法。一些实施例中,预设密码学承诺算法为pedersen承诺算法,预设同态加密算法为pailliar加密算法;
85.交互式零知识证明算法,包括:分别随机抽取第一集合、第二集合和第三集合中的一个元素,得到第一随机数、第二随机数和第三随机数,并将第一随机数、第二随机数和第三随机数发送至交互式零知识证明的验证方;第一集合为不同隐私数据组成的集合,第二集合为pailliar加密算法中不同取值的盲因子组成的集合,第三集合为pedersen承诺算法中不同取值的秘密值组成的集合;基于第一随机数、第二随机数以及pailliar加密算法,生成待验证密文,并基于第一随机数、第三随机数以及pedersen承诺算法,生成待验证承诺;将目标隐私数据乘以挑战数的结果加上第一随机数得到的和,确定为第一参数,将目标盲因子的挑战数次幂的结果乘以第二随机数得到的乘积,确定为第二参数,将目标秘密值乘以挑战数的结果加上第三随机数得到的和,确定为第三参数;其中,挑战数为验证方发送的一非零的随机数,目标盲因子为生成隐私密文时pailliar加密算法中选取的盲因子,目标秘密值为生成隐私承诺时pedersen承诺算法中选取的秘密值;在验证方确定第一计算结果等于第二计算结果,且第三计算结果等于第四计算结果的情况下,验证通过;其中,第一计算结果等于第一公钥参数的第一参数次幂的结果乘以第二参数的第二公钥参数次幂的结果得到的乘积;第二计算结果等于隐私密文的挑战数次幂的结果乘以待验证密文得到的乘积;第三计算结果等于第一公共参数的第一参数次幂的结果乘以第二公共参数的第三参数次幂的结果得到的乘积;第四计算结果等于隐私承诺的挑战数次幂的结果乘以待验证承诺得到的乘积;第一公钥参数和第二公钥参数为pailliar加密算法中选取的公钥参数;第一公共参数和第二公共参数为pedersen承诺算法中选取的公共参数。
86.一些实施例中,转换模块,具体用于对交互式零知识证明算法进行fiat-shamir变换,得到非交互式零知识证明算法。
87.一些实施例中,该装置还包括:第二获取模块,用于获取交互式零知识证明算法;第二确定模块,用于将交互式零知识证明算法确定为预设零知识证明算法。
88.一些实施例中,发送模块403,还用于:将目标哈希值存储至区块链;其中,目标哈希值为隐私密文的哈希值;在发起异议请求的情况下,将目标隐私数据、隐私密文发送至区块链,以使目标电子设备从区块链获取目标隐私数据、隐私密文、隐私承诺、目标零知识证明和目标哈希值,基于隐私承诺验证目标隐私数据的正确性,基于目标哈希值验证隐私密文的正确性,基于隐私承诺和隐私密文,验证目标零知识证明的正确性。
89.一些实施例中,该装置还包括:哈希模块,用于将目标哈希值存储至区块链,其中,目标哈希值为隐私密文的哈希值;目标哈希值用于第二电子设备在接收到隐私密文的情况下,获取第一电子设备存储至区块链的目标哈希值,并基于目标哈希值验证隐私密文的正确性。
90.本技术的一些实施例还提供了一种隐私数据的处理装置,应用于第二电子设备,如图5所示,该隐私数据的处理装置包括:获取模块501,用于在接收到第一电子设备发送的隐私密文的情况下,获取第一电子设备存储至区块链的隐私承诺和目标零知识证明;其中,隐私密文为第一电子设备基于预设同态加密算法生成的目标隐私数据的密文;隐私承诺为第一电子设备基于预设密码学承诺算法生成的目标隐私数据的承诺,目标零知识证明为第一电子设备基于隐私承诺、隐私密文以及预设零知识证明算法生成的零知识证明,目标零知识证明用于证明承诺和密文基于相同的隐私数据生成;验证模块502,用于基于隐私承诺和隐私密文,验证目标零知识证明的正确性。
91.一些实施例中,该装置还包括:公布模块,用于在目标零知识证明未通过验证的情况下,将隐私密文发送至区块链,以使第三电子设备在处理第一电子设备的异议请求的情况下,从区块链获取隐私承诺、隐私密文以及目标零知识证明,并基于隐私承诺和隐私密文,验证目标零知识证明的正确性。
92.一些实施例中,该装置还包括:哈希验证模块,用于:获取第一电子设备存储至区块链的目标哈希值,其中,目标哈希值为第一电子设备基于隐私密文生成的哈希值;基于目标哈希值验证隐私密文的正确性。
93.本技术实施例提供的隐私数据的处理装置,与本技术上述实施例所提供的隐私数据的处理方法属于同一发明构思。未在本实施例中详尽描述的技术细节,可参见本技术上述实施例提供的隐私数据的处理方法的具体处理内容,此处不再加以赘述。本技术的一些实施例还提供了一种隐私数据的处理系统,如图6所示,该隐私数据的处理系统包括:第一电子设备601和第二电子设备602;
94.其中,第一电子设备601用于执行本技术上述实施例中描述的应用于第一电子设备的隐私数据的处理方法中的步骤;第二电子设备602用于执行本技术上述实施例中描述的应用于第二电子设备的隐私数据的处理方法中的步骤。
95.同样的,本技术实施例提供的隐私数据的处理系统,与本技术上述实施例所提供的隐私数据的处理方法属于同一发明构思。未在本实施例中详尽描述的技术细节,可参见本技术上述实施例提供的隐私数据的处理方法的具体处理内容,此处不再加以赘述。
96.下面以竞价拍卖场景为例,对本实施例提供的隐私数据的处理系统进行详细说明。其中,第一电子设备601作为报价方使用的电子设备,第二电子设备602作为交易中心的计算方使用的电子设备。
97.首先,对承诺模块进行公共参数的设置,通过公共参数的设置,可以得到pedersen承诺的公共参数。同理,对加密模块进行公共参数的设置,可以得到pailliar加密的公私钥对为。两个模块的具体设置过程可以参见上述实施例,这里不再赘述。假设报价方的报价为,然后执行以下计算步骤得到隐私承诺:报价方随机选择一个秘密值,满足;计算得到隐私承诺。同理,随机选取盲因子,满足,计算得到隐私密文。
98.然后,将隐私承诺和隐私密文代入非交互式零知识证明算法得到目标零知识证明。即目标零知识证明。其中,该非交互式零知识证明算法为上述申请实施例中基于预先构建的交互式零知识证明算法转换而来,这里不再赘述。报价方通过第一电子设备在区块链上上传,然后向计算方使用的第二电子设备发送。其中表示隐私密文的哈希值。
99.最后,计算方通过第二电子设备首先验证目标零知识证明的正确性,若不正确则提前公开该报价方的隐私密文并宣布报价无效。交易结果产生后,计算方可以公开胜者报价方的隐私密文,此时区块链上其它节点可以继续检查密文哈希值以及零知识证明的正确性。
100.本技术实施例,通过选择代数性质较好的pailliar加密和pedersen承诺,使得证明密文和承诺一致性的交互式零知识证明方案易于构造和验证。根据bulletproofs自身的特点,它可以将该交互式零知识证明方案转化为算术电路,并进一步生成一个非交互式零知识证明放在链上。在竞价拍卖场景中,避免了竞价计算时公共数据库(区块链)与私有数据库(计算方存储密文的数据库)的不一致性问题,很好地排除了不一致性所带来的交易安全与公平隐患。另外,为链上数据提供了可验证性保障,通过计算方先验验证、链上节点公开后验验证的方式,既规范了计算方验证和计算的行为,保护了报价方权益,又规范了报价方正确计算密文和承诺的行为,保护了其它报价方和计算方的权益。其中,在将身份信息作为隐私数据的身份验证场景、将资产作为隐私数据的资产验证场景以及投票场景下,隐私数据的处理系统对隐私数据的处理过程相同,区别仅在于不同场景下的验证结果具有不同意义。例如在将身份信息作为隐私数据的身份验证场景下,验证通过说明用户的身份没有问题,允许该用户进行后续操作。否则,视为用户的身份存在问题,禁止用户进行后续操作或提示用户再次进行身份验证。在将资产作为隐私数据的资产验证场景下,验证通过说明用户的资产没有问题,允许该用户进行后续操作。否则视为用户的资产存在问题,禁止用户进行后续操作。其中,资产验证场景下的后续操作包括但不限于允许用户申请贷款、购买理财和投资产品、申请信用卡等。为避免重复,这里不再针对每一应用场景说明隐私数据的处理过程。示例性电子设备
101.本技术另一实施例还提出一种电子设备,参见图7所示,本技术的一个示例性实施例还提供了一种电子设备,包括:存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时执行本技术上述实施例中描述的根据本技术各种实施例的隐私数据的处理方法中的步骤。
102.该电子设备的内部结构可以如图7所示,该电子设备包括通过系统总线连接的处理器、存储器、网络接口和输入装置。其中,该电子设备的处理器用于提供计算和控制能力。该电子设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该电子设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以本技术上述实施例中描述的根据本技术各种实施例的隐私数据的处理方法中的步骤。
103.处理器可包括主处理器,还可包括基带芯片、调制解调器等。
104.存储器中保存有执行本发明技术方案的计算机程序,还可以保存有操作系统和其他关键业务。具体地,计算机程序可以包括程序代码,程序代码包括计算机操作指令。更具体的,存储器可以包括只读存储器(read-only memory,rom)、可存储静态信息和指令的其他类型的静态存储设备、随机存取存储器(random access memory,ram)、可存储信息和指令的其他类型的动态存储设备、磁盘存储器、flash等等。
105.处理器可以是通用处理器,例如通用中央处理器(cpu)、微处理器等,也可以是特定应用集成电路(application-specific integrated circuit,asic),或一个或多个用于控制本发明方案程序执行的集成电路。还可以是数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
106.输入设备可包括接收用户输入的数据和信息的装置,例如键盘、鼠标、摄像头、扫描仪、光笔、语音输入装置、触摸屏、计步器或重力感应器等。
107.输出设备可包括允许输出信息给用户的装置,例如显示屏、打印机、扬声器等。
108.通信接口可包括使用任何收发器一类的装置,以便与其他设备或通信网络通信,如以太网,无线接入网(ran),无线局域网(wlan)等。
109.处理器执行存储器中所存放的计算机程序,以及调用其他设备,可用于实现本技术上述实施例所提供的任意一种隐私数据的处理方法的各个步骤。
110.该电子设备还可以包括显示组件和语音组件,该显示组件可以是液晶显示屏或者电子墨水显示屏,该电子设备的输入装置可以是显示组件上覆盖的触摸层,也可以是电子设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
111.本领域技术人员可以理解,图7中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的电子设备的限定,具体的电子设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。示例性计算机程序产品和计算机可读存储介质
112.除了上述方法和设备以外,本技术实施例提供的隐私数据的处理方法还可以是计算机程序产品,其包括计算机程序,所述计算机程序在被处理器运行时使得所述处理器执行本技术上述“示例性方法”部分中描述的根据本技术各种实施例的隐私数据的处理方法
中的步骤。
113.所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本技术实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如java、c++等,还包括常规的过程式程序设计语言,诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
114.此外,本技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行本技术上述“示例性方法”部分中描述的根据本技术各种实施例的隐私数据的处理方法中的步骤。
115.可以理解,本文中的具体的例子只是为了帮助本领域技术人员更好地理解本技术实施例,而非限制本技术的范围。
116.可以理解,在本技术中的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。
117.可以理解,本技术中描述的各种实施例,既可以单独实施,也可以组合实施,本技术实施例对此并不限定。
118.除非另有说明,本技术实施例所使用的所有技术和科学术语与本技术的技术领域的技术人员通常理解的含义相同。本技术中所使用的术语只是为了描述具体的实施例的目的,不是旨在限制本技术的范围。本技术所使用的术语“和/或”包括一个或多个相关的所列项的任意的和所有的组合。在本技术实施例和所附权利要求书中所使用的单数形式的“一种”、“上述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
119.可以理解,本技术实施例的处理器可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(applicationspecific integrated circuit,asic)、现成可编程门阵列(field programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
120.可以理解,本技术实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom)、可编程只读存储器(programmablerom,prom)、可擦除可编程只读存储器(erasableprom,eprom)、电可擦除可编程只读存储器(eeprom)或闪存。易失性存储器可以是随机存取存储器(ram)。应注意,本文描述的系统和方法的存储器旨在包括但不限于这些和任意其它适合
类型的存储器。
121.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
122.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
123.在本技术所提供的几个实施例中,应所述理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
124.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
125.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
126.所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者所述技术方案的部分可以以软件产品的形式体现出来,所述计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom)、随机存取存储器(ram)、磁碟或者光盘等各种可以存储程序代码的介质。
127.以上所述,仅为本技术的具体实施例,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应所述以权利要求的保护范围为准。

技术特征:
1.一种隐私数据的处理方法,其特征在于,应用于第一电子设备,所述隐私数据的处理方法包括:基于预设密码学承诺算法生成目标隐私数据的隐私承诺,并基于预设同态加密算法生成所述目标隐私数据的隐私密文;基于所述隐私承诺、所述隐私密文以及预设零知识证明算法生成目标零知识证明,其中,所述目标零知识证明用于证明所述隐私承诺和所述隐私密文基于相同的隐私数据生成;将所述隐私承诺和所述目标零知识证明存储至区块链,并将所述隐私密文发送至第二电子设备,以使所述第二电子设备在接收到所述隐私密文的情况下,获取所述第一电子设备存储至所述区块链的所述隐私承诺和所述目标零知识证明;并基于所述隐私承诺和所述隐私密文,验证所述目标零知识证明的正确性。2.根据权利要求1所述的方法,其特征在于,所述基于所述隐私承诺、所述隐私密文以及预设零知识证明算法生成目标零知识证明之前,所述方法还包括:获取交互式零知识证明算法;将所述交互式零知识证明算法转换为非交互式零知识证明算法;将所述非交互式零知识证明算法确定为所述预设零知识证明算法。3.根据权利要求2所述的方法,其特征在于,所述预设密码学承诺算法为pedersen承诺算法,所述预设同态加密算法为pailliar加密算法;所述交互式零知识证明算法,包括:分别随机抽取第一集合、第二集合和第三集合中的一个元素,得到第一随机数、第二随机数和第三随机数,并将所述第一随机数、所述第二随机数和所述第三随机数发送至交互式零知识证明的验证方;所述第一集合为不同隐私数据组成的集合,所述第二集合为所述pailliar加密算法中不同取值的盲因子组成的集合,所述第三集合为所述pedersen承诺算法中不同取值的秘密值组成的集合;基于所述第一随机数、所述第二随机数以及所述pailliar加密算法,生成待验证密文,并基于所述第一随机数、所述第三随机数以及所述pedersen承诺算法,生成待验证承诺;将所述目标隐私数据乘以挑战数的结果加上所述第一随机数得到的和,确定为第一参数,将目标盲因子的所述挑战数次幂的结果乘以所述第二随机数得到的乘积,确定为第二参数,将目标秘密值乘以挑战数的结果加上第三随机数得到的和,确定为第三参数;其中,所述挑战数为所述验证方发送的一非零的随机数,所述目标盲因子为生成所述隐私密文时所述pailliar加密算法中选取的盲因子,所述目标秘密值为生成所述隐私承诺时所述pedersen承诺算法中选取的秘密值;在所述验证方确定第一计算结果等于第二计算结果,且第三计算结果等于第四计算结果的情况下,验证通过;其中,所述第一计算结果等于第一公钥参数的所述第一参数次幂的结果乘以所述第二参数的第二公钥参数次幂的结果得到的乘积;所述第二计算结果等于所述隐私密文的所述挑战数次幂的结果乘以所述待验证密文得到的乘积;所述第三计算结果等于第一公共参数的所述第一参数次幂的结果乘以第二公共参数的所述第三参数次幂的结果得到的乘积;所述第四计算结果等于所述隐私承诺的所述挑战数次幂的结果乘以所述待验证承诺得到的
乘积;所述第一公钥参数和所述第二公钥参数为所述pailliar加密算法中选取的公钥参数;所述第一公共参数和所述第二公共参数为所述pedersen承诺算法中选取的公共参数。4.根据权利要求2所述的方法,其特征在于,所述将所述交互式零知识证明算法转换为非交互式零知识证明算法,包括:对所述交互式零知识证明算法进行fiat-shamir变换,得到所述非交互式零知识证明算法。5.根据权利要求1所述的方法,其特征在于,所述基于所述隐私承诺、所述隐私密文以及预设零知识证明算法生成目标零知识证明之前,所述方法还包括:获取交互式零知识证明算法;将所述交互式零知识证明算法确定为所述预设零知识证明算法。6.根据权利要求1所述的方法,其特征在于,所述基于预设同态加密算法生成所述目标隐私数据的隐私密文之后,所述方法还包括:将目标哈希值存储至所述区块链;其中,所述目标哈希值为所述隐私密文的哈希值;在发起异议请求的情况下,将所述目标隐私数据、所述隐私密文发送至所述区块链,以使目标电子设备从所述区块链获取所述目标隐私数据、所述隐私密文、所述隐私承诺、所述目标零知识证明和所述目标哈希值,基于所述隐私承诺验证所述目标隐私数据的正确性,基于所述目标哈希值验证所述隐私密文的正确性,基于所述隐私承诺和所述隐私密文,验证所述目标零知识证明的正确性。7.根据权利要求1所述的方法,其特征在于,所述基于预设同态加密算法生成所述目标隐私数据的隐私密文之后,所述方法还包括:将目标哈希值存储至所述区块链,其中,所述目标哈希值为所述隐私密文的哈希值;所述目标哈希值用于所述第二电子设备在接收到所述隐私密文的情况下,获取所述第一电子设备存储至所述区块链的所述目标哈希值,并基于所述目标哈希值验证所述隐私密文的正确性。8.一种隐私数据的处理方法,其特征在于,应用于第二电子设备,所述隐私数据的处理方法包括:在接收到第一电子设备发送的隐私密文的情况下,获取所述第一电子设备存储至区块链的隐私承诺和目标零知识证明;其中,所述隐私密文为所述第一电子设备基于预设同态加密算法生成的目标隐私数据的密文;所述隐私承诺为所述第一电子设备基于预设密码学承诺算法生成的所述目标隐私数据的承诺,所述目标零知识证明为所述第一电子设备基于所述隐私承诺、所述隐私密文以及预设零知识证明算法生成的零知识证明,所述目标零知识证明用于证明所述承诺和所述密文基于相同的隐私数据生成;基于所述隐私承诺和所述隐私密文,验证所述目标零知识证明的正确性。9.根据权利要求8所述的方法,其特征在于,所述方法还包括:在所述目标零知识证明未通过验证的情况下,将所述隐私密文发送至所述区块链,以使第三电子设备在处理所述第一电子设备的异议请求的情况下,从所述区块链获取所述隐私承诺、所述隐私密文以及所述目标零知识证明,并基于所述隐私承诺和所述隐私密文,验证所述目标零知识证明的正确性。10.根据权利要求8所述的方法,其特征在于,基于所述隐私承诺和所述隐私密文,验证
所述目标零知识证明的正确性之前,所述方法还包括:获取所述第一电子设备存储至区块链的目标哈希值,其中,所述目标哈希值为所述第一电子设备基于所述隐私密文生成的哈希值;基于所述目标哈希值验证所述隐私密文的正确性。11.一种隐私数据的处理装置,其特征在于,应用于第一电子设备,所述隐私数据的处理装置包括:承诺加密模块,用于基于预设密码学承诺算法生成目标隐私数据的隐私承诺,并基于预设同态加密算法生成所述目标隐私数据的隐私密文;零知识证明模块,用于基于所述隐私承诺、所述隐私密文以及预设零知识证明算法生成目标零知识证明,其中,所述目标零知识证明用于证明所述隐私承诺和所述隐私密文基于相同的隐私数据生成;发送模块,用于将所述隐私承诺和所述目标零知识证明存储至区块链,并将所述隐私密文发送至第二电子设备,以使所述第二电子设备在接收到所述隐私密文的情况下,获取所述第一电子设备存储至所述区块链的所述隐私承诺和所述目标零知识证明;并基于所述隐私承诺和所述隐私密文,验证所述目标零知识证明的正确性。12.一种隐私数据的处理装置,其特征在于,应用于第二电子设备,所述隐私数据的处理装置包括:获取模块,用于在接收到第一电子设备发送的隐私密文的情况下,获取所述第一电子设备存储至区块链的隐私承诺和目标零知识证明;其中,所述隐私密文为所述第一电子设备基于预设同态加密算法生成的目标隐私数据的密文;所述隐私承诺为所述第一电子设备基于预设密码学承诺算法生成的所述目标隐私数据的承诺,所述目标零知识证明为所述第一电子设备基于所述隐私承诺、所述隐私密文以及预设零知识证明算法生成的零知识证明,所述目标零知识证明用于证明所述承诺和所述密文基于相同的隐私数据生成;验证模块,用于基于所述隐私承诺和所述隐私密文,验证所述目标零知识证明的正确性。13.一种隐私数据的处理系统,其特征在于,包括:第一电子设备和第二电子设备;所述第一电子设备用于执行如权利要求1至7任一项所述的隐私数据的处理方法;所述第二电子设备用于执行如权利要求8至10任一项所述的隐私数据的处理方法。14.一种电子设备,其特征在于,包括:处理器和存储器;其中,所述存储器与所述处理器连接,所述存储器用于存储计算机程序;所述处理器,用于通过运行所述存储器中存储的计算机程序,实现如权利要求1至10任一项所述的隐私数据的处理方法。15.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时,实现如权利要求1至10任意一项所述的隐私数据的处理方法。

技术总结
本申请实施例提供了一种隐私数据的处理方法、装置、电子设备及可读存储介质,基于预设密码学承诺算法生成目标隐私数据的隐私承诺,并基于预设同态加密算法生成目标隐私数据的隐私密文;基于隐私承诺、隐私密文以及预设零知识证明算法生成目标零知识证明;将隐私承诺和目标零知识证明存储至区块链,并将隐私密文发送至第二电子设备,以使第二电子设备基于隐私承诺和隐私密文,验证目标零知识证明的正确性。第二电子设备通过验证目标零知识证明,实现了隐私数据的一致性的验证。不仅可以识别交易过程中恶意篡改隐私密文的行为,还可以及时发现未经正确加密方式生成隐私密文的情况。发现未经正确加密方式生成隐私密文的情况。发现未经正确加密方式生成隐私密文的情况。


技术研发人员:俞海清 宋英齐
受保护的技术使用者:北京天润基业科技发展股份有限公司
技术研发日:2023.07.07
技术公布日:2023/8/9
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐