一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于零知识证明的联盟链订单隐私数据验证方法与流程

2022-03-14 01:22:56 来源:中国专利 TAG:


1.本发明属于区块链隐私保护技术领域,涉及一种基于零知识证明的联盟链订单隐私数据验证方法。


背景技术:

2.现如今,互联网行业的蓬勃发展在不断的改变着人们的工作和生活方式,而互联网经济模式自身的特殊性,产品一旦完善后,后期的维护成本很小,使得强者愈强,行业进入巨头垄断时代,形成权利和信用中心。为了缓解这一问题,具有去中心化和去信任化特点的区块链被提了出来,其是一种能够实现数据的一致存储、多方访问、去中心化,并以密码学方式保证的不可篡改和不可伪造的分布式账本。
3.区块链按照网络中心化程度可分为公有链、私有链与联盟链三种,而为了平衡公有链整体较低的性能、目前过高的共识机制成本以及私有链过于中心化等问题,以参与者之间确实存在信任关系的治理模式运行的联盟链逐渐受到企业们的追捧。联盟链上可插拔的共识协议,相比公有链的工作量证明等固定的共识机制,不仅共识效率高,资源消耗也相当少,这使得联盟链具有交易性能高效、交易成本低廉等特点。
4.随着业务需求的不断增长,逐步诞生了人们对区块链中交易信息进行隐私保护的诉求,国内外近年来针对区块链交易中的隐私保护技术的研究主要有混币、群签名、加密机制以及零知识证明等,其中零知识证明技术越来越受到研究人员的重视,其能够在不泄漏任何秘密信息的前提下完成对此秘密信息的验证,十分契合区块链中隐私保护的需求。
5.不仅局限在对交易隐私数据的保护上,针对联盟链上隐私的交易信息,依然存在着第三方对部分加密交易信息内容进行可验证的需求,使得在保证交易数据隐私的前提下(即原始数据被加密,验证者无法查看敏感数据信息),实现第三方验证者可对部分敏感保护数据的一致性进行验证的目标。目前针对区块链交易中的隐私保护及加密信息可验证的研究绝大都专注于在公有链上,几乎未存在着基于联盟链进行的研究,因而如何利用好具有性能高效、交易成本低廉特性的联盟链,实现对敏感数据的隐私保护,仍亟待着相关人员的研究,在中国发明cn112685776中提出“一种基于区块链及隐私安全计算的隐私数据可信验证方法,并针对联盟链中加密状态下交易的隐私数据进行不解密验证方法,通过创新式的组合使用区块链及隐私安全计算技术,实现了安全、可信的隐私数据可信度验证

将使各类商业活动中的隐私数据可信度验证场景,均能基于本发明而做出真实、可信、高效的业务判断,杜绝通过资料造假骗取购房资格的可能性”,但该方法不具备防篡改特征,且对验证者的隐私数据保护不完善。


技术实现要素:

6.(一)解决的技术问题
7.本发明的目的在于提供一种基于零知识证明的联盟链订单隐私数据验证方法,能够对联盟链中加密状态下订单的隐私数据进行不解密验证,实现验证者可对加密数据的关
系进行验证的目标,有效的保护了订单中敏感数据的隐私。
8.(二)技术方案
9.为实现上述目的,本发明提供如下技术方案:一种基于零知识证明的联盟链订单隐私数据验证方法,其特征在于,包括如下步骤:
10.s1:构建联盟链分布式账本平台,初始化生成各种参数;
11.s2:证明方将交易订单中的敏感数据加密,构造出零知识证明凭证,并一同置入联盟
12.链上;
13.s3:验证方从链上获取订单信息与零知识证明凭证,并对凭证进行验证;
14.s4:根据验证结果确定订单数据之间关系的正确性。
15.优选的,所述构建联盟链分布式账本平台的技术包括有提交交易提案、提案背书、共识、排序服务、写入区块等步骤。
16.优选的,所述初始化生成各种参数包括以下步骤:
17.s1:根据应用场景需求,确定交易订单数据信息包含的内容;
18.s2:确定订单数据相互之间的关系,并根据相互关系构建相应的零知识证明约束关系式;;
19.s3:借助搭建非交互式零知识证明电路的预处理系统,将构建的零知识证明约束关系式拼接转换为可证明数学运算电路;
20.s4:借助运行非交互式零知识证明的系统,对确定的可证明数学运算电路进行预处理并生成各种系统参数。
21.优选的,对确定的可证明数学运算电路进行预处理并生成各种系统参数包括两组参数:一组参数提供给证明方用于生成零知识证明凭证,一组参数提供给验证方用于验证零知识证明凭证。
22.优选的,所述证明方指的是对交易订单敏感信息的利益相关方,有对敏感信息进行保密的需要,且同时想让另一方在不知晓敏感信息,保护隐私的情况下相信订单中的隐私数据确实符合既定规则者。
23.优选的,所述验证方指的是与证明方相对,在不知晓订单敏感信息的情况下,仍有需要对订单中的隐私数据是否符合既定规则的确认者。
24.优选的,所述构造的零知识证明凭证是指证明方利用提供给证明方的参数及对外公开的数据和自身秘密的原始数据,利用非交互式零知识证明系统构造而来,用来证明交易订单中数据之间的确满足一定的关系。
25.优选的,所述对凭证进行验证是指验证方利用提供给验证方的参数及对外公开的数据,利用非交互式零知识证明系统对零知识证明凭证进行验证。
26.与现有技术相比,本发明的有益效果是:
27.1、该基于零知识证明的联盟链订单隐私数据验证方法,能够对联盟链中加密状态下订单的隐私数据进行不解密验证,实现验证者可对加密数据的关系进行验证的目标,同时还有效保护了订单中敏感数据的隐私;
28.2、该基于零知识证明的联盟链订单隐私数据验证方法,结合了联盟链技术,与公有链相比,不仅具有公有链的去中心化、防篡改等特性,还具有交易性能高效、交易成本低
廉以及拥有用户身份与权限管理机制等特点;
29.3、该基于零知识证明的联盟链订单隐私数据验证方法,所选择的零知识证明电路预处理的库jsnark提供了对数据加密的电路,使得具有订单数据解密密钥的相关方都可以对链上加密的订单信息进行解密,让联盟链上的订单信息可以达到交易加密的效果,而不只是具有可验证的作用。
附图说明
30.图1为本发明所述的基于零知识证明的联盟链订单隐私数据验证方法流程图;
31.图2为本发明所述的非交互式证明体系的结构图;
32.图3为本发明实施例二所述的订单隐私数据验证过程示意图;
33.图4为本发明实施例二所述的约束关系式生成的电路图。
具体实施方式
34.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
35.实施例一
36.如图1所示,一种基于零知识证明的联盟链订单隐私数据验证方法,所述的一种基于零知识证明的联盟链订单隐私数据验证方法包括以下步骤:
37.s1:构建联盟链分布式账本平台,初始化生成各种参数;
38.s2:证明方将交易订单中的敏感数据加密,构造出零知识证明凭证,并一同置入联盟
39.链上;
40.s3:验证方从链上获取订单信息与零知识证明凭证,并对凭证进行验证;
41.s4:根据验证结果确定订单数据之间关系的正确性。
42.构建用于订单隐私数据验证的联盟链分布式账本平台,具体包括有提交交易提案、提案背书、进行共识、排序服务、写入区块等步骤,初始化生成各种参数的具体步骤包括:首先根据应用场景需求,确定交易订单数据信息包含的内容,随后确定订单数据相互之间的关系,并根据相互关系构建相应的零知识证明约束关系式,随后借助搭建非交互式零知识证明电路的预处理系统,将构建的零知识证明约束关系式拼接转换为可证明数学运算电路,最后借助运行非交互式零知识证明的系统,对确定的可证明数学运算电路进行预处理并生成各种系统参数;非交互式证明体系的结构图如图2所示;
43.证明方指的是对交易订单敏感信息的利益相关方,有对敏感信息进行保密的需要,且同时想让另一方在不知晓敏感信息,保护隐私的情况下相信订单中的隐私数据确实符合既定规则者,验证方指的是与证明方相对,在不知晓订单敏感信息的情况下,仍有需要对订单中的隐私数据是否符合既定规则的确认者构造的零知识证明凭证是指证明方利用提供给证明方的参数及对外公开的数据和自身秘密的原始数据,利用非交互式零知识证明系统构造而来,用来证明交易订单中数据之间的确满足一定的关系;
44.对凭证进行验证是指验证方利用提供给验证方的参数及对外公开的数据,利用非交互式零知识证明系统对零知识证明凭证进行验证。
45.实施例二
46.为了更清楚地阐述本发明,一个具体实例是采购订单融资计划。该方案的交易方发起了一笔采购订单,采购信息包含采购货物的总价、单价与数量等敏感信息,交易方既计划向融资平台申请融资却又不愿意平台知晓交易订单中具体的总价数据,因此,交易方(即证明方)可以将敏感信息加密,并构造出一个零知识证明凭证一并上链,让融资平台(即验证方)进行验证,使得融资平台相信订单中原始数据真实存在,订单中总价满足其值等于单价*数量的关系,且总价处在所声明的范围里,以便使得后续融资平台的放心拨款。
47.订单隐私数据验证过程如图3所示,以下通过该具体实例进行阐述:
48.(1)构建联盟链分布式账本平台,初始化生成各种参数。
49.构建联盟链分布式账本平台,具体采用的可以是但不局限于hyperledgerfabric等联盟链账本平台。
50.根据应用场景需求,首先确定交易订单数据信息包含的内容,部分内容信息如下表1所示:
51.表1订单数据信息包含的部分内容
52.交易序号tx_id总价total_price单价univalence数量amount总价下限min总价上限max加密总价ekp加密单价eku加密数量eka加密密钥k哈希值h
53.其中total_price表示总价,univalence表示单价,amount表示数量,min与max表示声明的总价所处范围的上下限,ekp、eku、eka则分别表示利用加密密钥k对总价、单价、数量原始数据加密后的加密结果,h表示对交易序号tx_id与加密密钥k的哈希值。订单信息中自身秘密的原始数据为总价tatal_price,单价univalence,数量amount以及加密密钥k,其余为可对外公开的数据,注意敏感原始数据将不会上链。
54.确定订单数据相互之间的关系,并根据相互关系构建相应的零知识证明约束关系式,在本实施例中,所设计的约束关系式如下表2所示,根据约束关系式生成的电路图如图4所示(图中e(



)表示的是对称密钥加密的过程):
55.表2一种设计的约束关系式
56.total_price=univalence
×
amount
57.total_price>min
58.total_price<max
59.ekp=e(total_price,k)
60.eku=e(univalence,k)
61.eka=e(amount,k)
62.h=hash(tx_id,k)
63.将构建的零知识证明约束关系式拼接转换为可证明数学运算电路,具体采用的可以是但不局限于jsnark等构建非交互式零知识证明电路的预处理系统;对确定的可证明数学运算电路进行预处理并生成各种系统参数,具体采用的是但不局限于libsnark等可运行非交互式零知识证明的系统。生成的系统参数包括vk、pk两组参数(0x92fb45

,0xd4ff05

):一组参数pk提供给交易方(证明方)用于生成零知识证明凭证proof,一组参数vk提供给融资平台(验证方)用于验证零知识证明凭证proof。
64.将生成的vk、pk参数上链,在未来的证明中,这些参数只需获取一次保存在本地。
65.(2)证明方将交易订单中的敏感数据加密,构造出零知识证明凭证,并一同置入联盟链上。
66.交易方(证明方)确定好原始数据:交易序号tx_id={0x161948

}、总价total_price={280000}、单价univalence={280}、数量amount={1000}、总价下限值min={200000}、总价上限值max={300000},使用加密密钥k={0x2b7e15

}将交易订单中的敏感数据加密,分别得到对总价、单价、数量原始数据加密后的结果ekp={0x528240

}、eku={0xf5c4f4

}、eka={0xba9bc6

},计算得到哈希值h={0xc3cc9c

},并通过获取利用提供给证明方的参数pk(0x92fb45

)及对外公开的数据(交易序号tx_id、总价上下限min与max、加密单价eku、加密数量eka、加密总价ekp、哈希值h)和自身秘密的原始数据(总价total_price,单价univalence,数量amount以及加密密钥k),具体采用的是但不局限于libsnark等可运行非交互式零知识证明的系统构造零知识证明凭证proof={miuheoqj

},用来证明交易订单中总价满足其值等于单价*数量的关系(280000=280*1000),且总价处在所声明min与max的范围里(280000》200000,280000《300000)。
67.交易方(证明方)利用联盟链系统接口相关函数将构造出的零知识证明凭证proof与对外公开的数据一同置于联盟链上。
68.(3)验证方从链上获取订单信息与零知识证明凭证,并对凭证进行验证。
69.当交易方(证明方)进行融资申请时,融资平台(验证方)获取联盟链上订单对外公开的数据(交易序号tx_id={0x161948

}、总价上下限min={200000}与max={300000}、加密单价eku={0xf5c4f4

}、加密数量eka={0xba9bc6

}、加密总价ekp={0x528240

}、哈希值h={0xc3cc9c

})及零知识证明凭证proof={miuheoqj

},获取利用提供给验证方的参数vk={0xd4ff05

},具体采用的是但不局限于libsnark等可运行非交互式零知识证明的系统对零知识证明凭证进行验证,以确定数据之间关系的正确性。
70.(4)根据验证结果确定订单数据之间关系的正确性。
71.若凭证proof验证通过,则使得融资平台(验证方)相信订单中的原始敏感数据真实存在,订单中总价满足其值等于单价*数量的关系(280000=280*1000),且总价处在所声明的最小值与最大值范围里(280000》200000,280000《300000)的论证,确定数据之间关系的正确性,最终可根据订单中所陈述的总价所在范围进行一定的资金发放。
72.以上所述仅为本技术的优选实施例而已,并不用于限制本技术,对于本领域的技
术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献