一种基于零知识证明的支持监管的联盟链隐私保护方法技术

技术编号:35659952 阅读:16 留言:0更新日期:2022-11-19 16:57
本发明专利技术涉及一种基于零知识证明的支持监管的联盟链隐私保护方法,属于网络信息安全技术领域。在每笔交易被记录到账本过程中,每个客户端生成对应各种合规性验证的零知识证明,并发送给其他参与组织的背书节点。背书节点对交易包含的零知识证明模拟验证后,对通过验证的交易进行签名。当提交节点对交易进行记账时,验证所有背书节点的签名,并将通过验证的交易记入账本。本方法解除了交易合规性验证对于监管者的依赖,在不暴露交易隐私的同时对于交易合规性的自动验证,防止不合规交易被附加到公共账本中,监管者在基础的合规性检验之上使用不同的零知识证明设置不同的合规性要求,这些要求都将在记账前被自动验证。这些要求都将在记账前被自动验证。这些要求都将在记账前被自动验证。

【技术实现步骤摘要】
一种基于零知识证明的支持监管的联盟链隐私保护方法


[0001]本专利技术涉及一种联盟链隐私保护方法,具体涉及一种基于零知识证明的支持监管的联盟链隐私保护方法,属于网络信息安全


技术介绍

[0002]区块链是一种分布式账本,由许多不受信任的对等点维护,通常用于记录交易信息。与传统分类帐系统相比,区块链增强了不变性、可验证性和可追溯性,已经引起了各个领域的广泛关注。
[0003]作为区块链的主要应用程序,然而,由于区块链系统固有的透明度和可追溯性,区块链系统很难在重视数据隐私和机密性的情况下使用,如银行交易、跨企业交易和证券市场。
[0004]联盟链作为区块链技术的一种,对所有参与放提出准入许可的需求,只有特定的通过审核的组织才能够进入联盟链。这种联盟链技术通常被应用于多个大型企业机构或银行之间的合作交易场景内,所有被登记的参与者通过共识机制达成交易的一致性。
[0005]零知识证明作为一种基于不信任的参与双方之间的验证问题,持有一些私有数据的证明者能够在不暴露数据隐私的情况下向验证者证明私有数据确实具有一些特定属性。因此,作为分布式账本的联盟链和零知识证明的信任关系是大致吻合的,零知识证明可以用于解决联盟链在保护隐私的情况下的审计问题。
[0006]但是,现有的基于零知识证明的隐私保护协议,都是在修改账本后再由审计者对交易的内容进行验证,并不能阻止不合规的交易进入账本。此外,对于联盟链的隐私进行审计的方法,只能审计有限的问题,并不能满足更加复杂多样的审计需求。
专利技术内容
[0007]本专利技术的目的是针对现有的基于零知识证明的联盟链隐私保护技术存在的缺陷,为了满足兼顾联盟链参与者的数据隐私以及监管需求,创造性地提出一种基于零知识证明的支持监管的联盟链隐私保护方法,能够不依赖监管者而对交易的基础合规性进行自动验证,并支持后续复杂审计。
[0008]本专利技术的创新点在于:在每一笔交易被记录到账本的过程中,每个客户端首先生成对应各种合规性验证的零知识证明,并发送给其他参与组织的背书节点。背书节点对交易包含的零知识证明进行模拟验证后,对通过验证的交易进行签名。当提交节点对交易进行记账时,验证所有背书节点的签名,并将通过验证的交易记入账本。
[0009]本专利技术通过以下技术方案实现。
[0010]一种基于零知识证明的支持监管的联盟链隐私保护方法。联盟链场景包括客户端、背书节点、排序节点、提交节点和监管者。如图1所示。
[0011]客户端:每个组织至少有一个客户端,通过向背书节点提交交易提案来读取/写入分布式账本。当从背书节点获得足够的签名后,客户端将交易发送到排序节点。客户端知道
所属组织的资产的状态,并且客户端能够代表其组织支出/接收资产。
[0012]背书节点:每个组织都需要从其所有节点中选择至少一个节点作为背书节点。背书节点模拟客户提交的交易提案,对合规性进行验证,创建一个包含模拟结果和背书节点签名的背书,并将背书发回客户端,作为对提案的批准。只有在验证了所有合规性证明后,背书人节点会在结果上签名。
[0013]排序节点:排序节点接收来自不同客户端的交易,并根据共识算法建立这些交易的顺序。被排序的交易被分批分成区块,然后分发给所有的提交节点。
[0014]提交节点:每个组织都需要从其所有节点中至少选择一个节点作为提交节点。提交节点从排序接收一个区块,验证块中的每个交易提案,并将该区块块附加到区块链中。
[0015]监管者:监管者是一个值得信赖的第三方,拥有最高的权力。监管机构负责初始化系统,管理联盟链中的组织,并为交易指定合规性政策。监管机构有权通过要求一个组织披露有关其所参与的交易的部分信息,来审计该组织的资产状况。在承诺、零知识证明和审计令牌的帮助下,监管者能够验证所披露的信息是否与分布式账本相符。
[0016]方法包括以下步骤:步骤1:初始化设置。
[0017]在联盟链中,监管者生成全局模型,根据参与组织的初始资金初始化账本,由每个参与组织计算各自的Schnorr秘钥对,并将公钥发送给其他组织。
[0018]步骤2:准备交易提案。
[0019]支出组织与接收组织协商好交易内容后,由支出客户端为交易生成提案。其中,提案包括每个组织交易内容的Pedersen承诺、审计令牌和合规性证明,合规性证明包括重新承诺证明、范围证明和一致性证明。
[0020]当生成提案后,客户端将提案发送给背书节点进行背书。
[0021]步骤3:执行阶段。
[0022]背书节点收到客户端的提案后,验证交易的平衡性以及所有合规性证明。
[0023]当所有的验证都被通过后,生成交易对于账本的读集和写集并签名。签名之后,将背书结果发送回支出组织客户端。客户端收到足够的背书后,将交易发送到排序节点进行排序。
[0024]步骤4:排序阶段。
[0025]排序节点收到由监管者指定的数量交易后,根据共识算法建立这些交易的顺序,并将所接受的交易打包成一个区块。之后,排序节点将区块发送给提交节点。
[0026]步骤5:校验阶段。
[0027]提交节点在收到来自排序节点的区块后,对区块中每个交易进行检查,并删除没有通过检查的交易。
[0028]然后,提交节点将区块附加到区块链中并修改公共账本。同时,提交节点将区块和检查修改结果发送给所有节点。
[0029]步骤6:更新阶段。
[0030]支出组织客户端在收到区块和检查结果后,如果发起的交易通过检查,则修改私有账本,然后通知接收组织确认交易已经被提交并修改私有账本。否则,判定所发起的交易没有通过检查,并根据区块中其他交易修改本地的公共账本副本。
[0031]有益效果本专利技术,对比现有技术,具有以下优点:1.本专利技术,首次解除了交易合规性验证对于监管者的依赖,实现了在不暴露交易隐私的同时对于交易合规性的自动验证,可以防止不合规的交易被附加到公共账本中,并且避免监管者工作效率对于账本记账效率的影响。
[0032]2.本专利技术中,监管者可以在基础的合规性检验之上使用不同的零知识证明设置不同的合规性要求,这些要求都将在记账前被自动验证,即,本专利技术支持“个性化”的合规性需求。
附图说明
[0033]图1是本专利技术方法的系统模型及实施步骤时序图。
[0034]图2是本专利技术中proposal的结构图。
具体实施方式
[0035]为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图对本专利技术做进一步详细说明。
[0036]如图1所示,一种基于零知识证明的支持监管的联盟链隐私保护方法,能够兼顾数据隐私与监管,包括以下步骤:步骤1:初始化设置。
[0037]监管者生成全局变量并初始化公共账本,将初始全局变量发送给各节点。由每个参与组织计算各自的Schnorr秘钥对并将公钥发送给其他组织。
[0038]具体地,步骤1可以包括以下步骤:步骤1.1:监管者生成初始本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于零知识证明的支持监管的联盟链隐私保护方法,联盟链场景包括客户端、背书节点、排序节点、提交节点和监管者,其中:客户端:每个组织至少有一个客户端,通过向背书节点提交交易提案来读取/写入分布式账本;当从背书节点获得足够的签名后,客户端将交易发送到排序节点;客户端知道所属组织的资产的状态,并且客户端能够代表其组织支出/接收资产;背书节点:每个组织都需要从其所有节点中选择至少一个节点作为背书节点;背书节点模拟客户提交的交易提案,对合规性进行验证,创建一个包含模拟结果和背书节点签名的背书,并将背书发回客户端,作为对提案的批准;只有在验证了所有合规性证明后,背书人节点会在结果上签名;排序节点:排序节点接收来自不同客户端的交易,并根据共识算法建立这些交易的顺序;被排序的交易被分批分成区块,然后分发给所有的提交节点;提交节点:每个组织都需要从其所有节点中至少选择一个节点作为提交节点;提交节点从排序接收一个区块,验证块中的每个交易提案,并将该区块块附加到区块链中;监管者:监管者是一个值得信赖的第三方,拥有最高的权力;监管机构负责初始化系统,管理联盟链中的组织,并为交易指定合规性政策;监管机构有权通过要求一个组织披露有关其所参与的交易的部分信息,来审计该组织的资产状况;在承诺、零知识证明和审计令牌的帮助下,监管者能够验证所披露的信息是否与分布式账本相符;其特征在于,包括以下步骤:步骤1:初始化设置;在联盟链中,监管者生成全局模型,根据参与组织的初始资金初始化账本,由每个参与组织计算各自的Schnorr秘钥对,并将公钥发送给其他组织;步骤2:准备交易提案;支出组织与接收组织协商好交易内容后,由支出客户端为交易生成提案;其中,提案包括每个组织交易内容的Pedersen承诺、审计令牌和合规性证明,合规性证明包括重新承诺证明、范围证明和一致性证明;当生成提案后,客户端将提案发送给背书节点进行背书;步骤3:执行阶段;背书节点收到客户端的提案后,验证交易的平衡性以及所有合规性证明;当所有的验证都被通过后,生成交易对于账本的读集和写集并签名;签名之后,将背书结果发送回支出组织客户端;客户端收到足够的背书后,将交易发送到排序节点进行排序;步骤4:排序阶段;排序节点收到由监管者指定的数量交易后,根据共识算法建立这些交易的顺序,并将所接受的交易打包成一个区块;之后,排序节点将区块发送给提交节点;步骤5:校验阶段;提交节点在收到来自排序节点的区块后,对区块中每个交易进行检查,并删除没有通过检查的交易;然后,提交节点将区块附加到区块链中并修改公共账本;同时,提交节点将区块和检查修改结果发送给所有节点;
步骤6:更新阶段;支出组织客户端在收到区块和检查结果后,如果发起的交易通过检查,则修改私有账本,然后通知接收组织确认交易已经被提交并修改私有账本;否则,判定所发起的交易没有通过检查,并根据区块中其他交易修改本地的公共账本副本。2.如权利要求1所述的一种基于零知识证明的支持监管的联盟链隐私保护方法,其特征在于,步骤1包括以下步骤:步骤1.1:监管者生成初始全局变量、h;定义是一个素数p的循环群,表示模p的整数环,令表示和的n维向量空间,、h 为循环群中的两个随机数;步骤1.2:监管者将初始化全局模型参数、h发送给N个参与组织,表示第N个参与组织;步骤 1.3 :各组织生成密钥对,并将 公开;其中,为组织i的私钥, 为组织i的公钥,且,表示参数h的次方;步骤1.4:监管者初始化...

【专利技术属性】
技术研发人员:徐蕾侯吉鹏盖珂珂祝烈煌
申请(专利权)人:北京理工大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1