可审计追溯的区块链隐私保护系统及方法技术方案

技术编号:37138453 阅读:18 留言:0更新日期:2023-04-06 21:40
本发明专利技术属于区块链技术领域,公开了一种可审计追溯的区块链隐私保护系统及方法。本发明专利技术的系统包括:包括有向图结构账本、客户端以及智能合约模块:有向图结构账本,有向图结构账本通过前向交易标识和对交易数据生成NIZK证明以保护隐私和实现可追溯,审计员通过审计令牌实现可审计;客户端负责生成交易数据以及对交易数据加密,通过有向图结构账本生成可验证的承诺和NIZK证明;智能合约模块,接收所述客户端的请求,执行对应链码函数。本发明专利技术能够对区块链账本中的隐私数据进行保护,并在此基础上可以对账本进行审计追溯。上可以对账本进行审计追溯。上可以对账本进行审计追溯。

【技术实现步骤摘要】
可审计追溯的区块链隐私保护系统及方法


[0001]本专利技术属于区块链
,具体涉及一种可审计追溯的区块链隐私保护系统及方法。

技术介绍

[0002]区块链网络因其去中心化以及不可篡改的属性使得交易变得透明、可信。然而,因为网络中各组织共享一份账本会导致敏感数据暴露,隐私数据加密导致无法审计追溯以及越来越复杂的产品供应链迫切需要可追溯性,如何做到在共享账本的同时有效的保护隐私数据以及审计追溯成为了区块链发展的核心问题。目前,一般多采用对原数据进行加密再上链,但仍会遭到破坏。目前针对此类问题也提出了很多种解决方案,但其功能都不完善。如Solius通过引入可公开验证的遗忘RAM机(PVORM)的概念隐藏交易价值和交易图,但是审计时需要提供全部的密钥,这不但会加大开销,而且也存在恶意泄露的问题;《FabZK: Supporting Privacy

Preserving, Auditable Smart Contracts in Hyperledger Fabric》提出的FabZK是通过支持可验证的 Pedersen 承诺和构建零知识证明来实现隐私数据的可审计性,但是却不支持追溯;《zkLedger: Privacy

Preserving Auditing for Distributed Ledgers》提出的zkLedger使用Pedersen承诺生成的非交互式零知识证明来进行审计,与FabZK相同,zkLedger的账本是柱状账本结构,不支持追溯;《DECOUPLES: a decentralized, unlinkable and privacy

preserving traceability system for the supply chain》提出的DECOUPLES系统支持对供应链的追溯,该系统通过环签名、Schnorr签名等加密方案对数据进行隐私保护,但是其不支持完整的审计。

技术实现思路

[0003]本专利技术目的是:针对现有技术的不足,提供一种可审计追溯的区块链隐私保护系统及方法,用于对区块链账本中的隐私数据进行保护,并在此基础上可以对账本进行审计追溯。
[0004]具体地说,本专利技术是采用以下技术方案实现的。
[0005]一方面,本专利技术提供一种可审计追溯的区块链隐私保护系统,包括有向图结构账本、客户端以及智能合约模块:所述有向图结构账本,记录交易数据,并为每个交易提供前向交易标识,有向图结构账本内交易数据进行加密处理;并记录有为交易数据生成的NIZK证明,所述NIZK证明包括平衡证明ZKa、资产证明ZKb、追溯证明ZKc、一致性证明ZKd;所述客户端,作为交易发起者时,创建明文交易,生成交易数据以及基于Pedersen承诺的NIZK证明,客户端对交易数据进行加密后发送给区块链网络,经过orderer节点排序、committer节点验证后交易上链,形成密文交易,通过区块链广播以及共识机制验证后更新公共账本,客户端更新所维护的区块链账本副本,所述验证通过调用所述智能合约模块中智能合约实现;作为审计者时,调用所述智能合约模块中用于审计和追溯的智能合约,
对区块链网络中有向图结构账本进行审计和追溯;所述智能合约模块,接收所述客户端的请求,执行对应链码函数,包括溯源函数、判断平衡函数、计算资产函数以及证明验证函数;所述溯源函数用于对某一交易进行溯源,读取所述有向图结构账本中前向交易标识所对应的交易,并验证该交易中交易接收者所对应的追溯证明ZKc;所述判断平衡函数用于判断交易总体资产量是否平衡,以验证平衡证明ZKa;所述计算资产函数用于计算某一组织在所有交易中的资产总和是否大于零,以验证资产证明ZKb;所述证明验证函数用于验证交易中所有的NIZK证明的正确性。
[0006]进一步的,所述有向图结构账本,维护一个二维表,行代表交易,列代表某个组织的所有事务,通过设置前向交易标识属性在逻辑上实现有向图结构,有向图中每个节点有一行数据记录此次交易的所有信息。
[0007]进一步的,通过审计令牌Token实现可审计,所述审计令牌Token生成公式参见公式(1);所述平衡证明ZKa用于验证每个交易中的每个组织总体资产量是否平衡,即是否满足公式(2);所述平衡证明ZKa利用了Pedersen承诺的同态加法的属性,参见公式(3),证明者,通过选择一组随机数r1,r2,

,r
n
,使得该组随机数满足公式(4),结合r1,r2,

,r
n
,审计员通过计算来判断账本是否已达平衡,参见公式(5);公式(1)中,pk为组织的公钥,r为随机数,h为设定的椭圆曲线上一点,sk为组织的私钥;公式(2)中,u
i
为第i个组织的交易金额,N为有向图结构账本维护的二维表的列数;公式(3)、公式(4)、公式(5)中,Com
j
为生成的对价值u
i
的pedersen承诺,(g,h)为设定的椭圆曲线上的点,r
i
为第i个组织生成的随机数,N为有向图结构账本维护的二维表的列数。
[0008]进一步的,所述资产证明ZKb通过计算有向图结构账本中各组织所对应的列的总和来验证是否有资产进行转移,并引入辅助承诺com

,对com

进行一次范围证明验证,用于对ZKb的验证;所述辅助承诺com

有两种策略选择:策略1)对价值u的承诺;
策略2)对该组织对应的列中的各个交易价值的承诺的总和;若客户端为交易发起者,com

为对价值u的承诺;且如果满足公式(6),说明有资产可以交易;若客户端是其他组织,com

为以上两种策略选择中任意一种;公式(6)中,Com
i

为交易发起者采用辅助承诺生成策略1生成的第i个承诺,M为帐本中的交易个数。
[0009]进一步的,所述追溯证明ZKc由交易发起者为各组织生成一个承诺、一个范围证明以及一个标识符s,如果该组织为交易接收者则标识符s=1,s=

1表示为非交易组织或者交易发起者;对标识符s生成承诺comb,再对comb生成追溯证明,用以判断comb中的标识符s是否大于零;设当前交易的发起者为m,当审计员通过有向图结构账本得知当前交易的前向交易标识为n后,为了验证其正确性,通过验证交易n中m所对应的元组的追溯证明,判断该组织是否为交易接收者。
[0010]进一步的,所述一致性证明ZKd表示如下:对于任意组织k,1)断言用以形成Com和Token的随机数是相同的;2)断言用以形成Com

和Token

的随机数是一致的,Token

为审计Com

而生成的审计令牌。
[0011]另一方面,本专利技术还提供可审计追溯的区块链隐私保护方法,采用上述可审计追溯的区块链本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种可审计追溯的区块链隐私保护系统,其特征在于,包括有向图结构账本、客户端以及智能合约模块:所述有向图结构账本,记录交易数据,并为每个交易提供前向交易标识,有向图结构账本内交易数据进行加密处理;并记录有为交易数据生成的NIZK证明,所述NIZK证明包括平衡证明ZKa、资产证明ZKb、追溯证明ZKc、一致性证明ZKd;所述客户端,作为交易发起者时,创建明文交易,生成交易数据以及基于Pedersen承诺的NIZK证明,客户端对交易数据进行加密后发送给区块链网络,经过orderer节点排序、committer节点验证后交易上链,形成密文交易,通过区块链广播以及共识机制验证后更新公共账本,客户端更新所维护的区块链账本副本,所述验证通过调用所述智能合约模块中智能合约实现;作为审计者时,调用所述智能合约模块中用于审计和追溯的智能合约,对区块链网络中有向图结构账本进行审计和追溯;所述智能合约模块,接收所述客户端的请求,执行对应链码函数,包括溯源函数、判断平衡函数、计算资产函数以及证明验证函数;所述溯源函数用于对某一交易进行溯源,读取所述有向图结构账本中前向交易标识所对应的交易,并验证该交易中交易接收者所对应的追溯证明ZKc;所述判断平衡函数用于判断交易总体资产量是否平衡,以验证平衡证明ZKa;所述计算资产函数用于计算某一组织在所有交易中的资产总和是否大于零,以验证资产证明ZKb;所述证明验证函数用于验证交易中所有的NIZK证明的正确性。2.根据权利要求1所述的可审计追溯的区块链隐私保护系统,其特征在于,所述有向图结构账本,维护一个二维表,行代表交易,列代表某个组织的所有事务,通过设置前向交易标识属性在逻辑上实现有向图结构,有向图中每个节点有一行数据记录此次交易的所有信息。3.根据权利要求2所述的可审计追溯的区块链隐私保护系统,其特征在于,通过审计令牌Token实现可审计,所述审计令牌Token生成公式参见公式(1);所述平衡证明ZKa用于验证每个交易中的每个组织总体资产量是否平衡,即是否满足公式(2);所述平衡证明ZKa利用了Pedersen承诺的同态加法的属性,参见公式(3),证明者,通过选择一组随机数r1,r2,

,r
n
,使得该组随机数满足公式(4),结合r1,r2,

,r
n
,审计员通过计算来判断账本是否已达平衡,参见公式(5);
公式(1)中,pk为组织的公钥,r为随机数,h为设定的椭圆曲线上一点,sk为组织的私钥;公式(2)中,u
i
为第i个组织的交易金额,N为有向图结构账本维护的二维表的列数;公式(3)、公式(4)、公式(5)中,Com
j
为生成的对价值u
i
的pedersen承诺,(g,h)为设定的椭圆曲线上的点,r
i
为第i个组织生成的随机数,N为有向图结构账本维护的二维表的列数。4.根据权利要求1所述的可审计追溯的区块链隐私保护系统,其特征在于,所述资产证明ZKb通过计算有向图结构账本中各组织所对应的列的总和来验证是否有资产进行转移,并引入辅助承诺com

,对com

进行一次范围证明验证,用于对ZKb的验证;所述辅助承诺com

有两种策略选择:策略1)对...

【专利技术属性】
技术研发人员:戚湧吴勐
申请(专利权)人:南京理工大学
类型:发明
国别省市:

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

1