CN115361145B - 一种基于零知识证明的支持监管的联盟链隐私保护方法 - Google Patents

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

Info

Publication number
CN115361145B
CN115361145B CN202211276496.6A CN202211276496A CN115361145B CN 115361145 B CN115361145 B CN 115361145B CN 202211276496 A CN202211276496 A CN 202211276496A CN 115361145 B CN115361145 B CN 115361145B
Authority
CN
China
Prior art keywords
transaction
organization
node
client
endorsement
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202211276496.6A
Other languages
English (en)
Other versions
CN115361145A (zh
Inventor
徐蕾
侯吉鹏
盖珂珂
祝烈煌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Institute of Technology BIT
Original Assignee
Beijing Institute of Technology BIT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Institute of Technology BIT filed Critical Beijing Institute of Technology BIT
Priority to CN202211276496.6A priority Critical patent/CN115361145B/zh
Publication of CN115361145A publication Critical patent/CN115361145A/zh
Application granted granted Critical
Publication of CN115361145B publication Critical patent/CN115361145B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3825Use of electronic signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/389Keeping log of transactions for guaranteeing non-repudiation of a transaction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3218Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
    • H04L9/3221Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs interactive zero-knowledge proofs

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

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

Description

一种基于零知识证明的支持监管的联盟链隐私保护方法
技术领域
本发明涉及一种联盟链隐私保护方法,具体涉及一种基于零知识证明的支持监管的联盟链隐私保护方法,属于网络信息安全技术领域。
背景技术
区块链是一种分布式账本,由许多不受信任的对等点维护,通常用于记录交易信息。与传统分类帐系统相比,区块链增强了不变性、可验证性和可追溯性,已经引起了各个领域的广泛关注。
作为区块链的主要应用程序,然而,由于区块链系统固有的透明度和可追溯性,区块链系统很难在重视数据隐私和机密性的情况下使用,如银行交易、跨企业交易和证券市场。
联盟链作为区块链技术的一种,对所有参与放提出准入许可的需求,只有特定的通过审核的组织才能够进入联盟链。这种联盟链技术通常被应用于多个大型企业机构或银行之间的合作交易场景内,所有被登记的参与者通过共识机制达成交易的一致性。
零知识证明作为一种基于不信任的参与双方之间的验证问题,持有一些私有数据的证明者能够在不暴露数据隐私的情况下向验证者证明私有数据确实具有一些特定属性。因此,作为分布式账本的联盟链和零知识证明的信任关系是大致吻合的,零知识证明可以用于解决联盟链在保护隐私的情况下的审计问题。
但是,现有的基于零知识证明的隐私保护协议,都是在修改账本后再由审计者对交易的内容进行验证,并不能阻止不合规的交易进入账本。此外,对于联盟链的隐私进行审计的方法,只能审计有限的问题,并不能满足更加复杂多样的审计需求。
发明内容
本发明的目的是针对现有的基于零知识证明的联盟链隐私保护技术存在的缺陷,为了满足兼顾联盟链参与者的数据隐私以及监管需求,创造性地提出一种基于零知识证明的支持监管的联盟链隐私保护方法,能够不依赖监管者而对交易的基础合规性进行自动验证,并支持后续复杂审计。
本发明的创新点在于:在每一笔交易被记录到账本的过程中,每个客户端首先生成对应各种合规性验证的零知识证明,并发送给其他参与组织的背书节点。背书节点对交易包含的零知识证明进行模拟验证后,对通过验证的交易进行签名。当提交节点对交易进行记账时,验证所有背书节点的签名,并将通过验证的交易记入账本。
本发明通过以下技术方案实现。
一种基于零知识证明的支持监管的联盟链隐私保护方法。联盟链场景包括客户端、背书节点、排序节点、提交节点和监管者。如图1所示。
客户端:每个组织至少有一个客户端,通过向背书节点提交交易提案来读取/写入分布式账本。当从背书节点获得足够的签名后,客户端将交易发送到排序节点。客户端知道所属组织的资产的状态,并且客户端能够代表其组织支出/接收资产。
背书节点:每个组织都需要从其所有节点中选择至少一个节点作为背书节点。背书节点模拟客户提交的交易提案,对合规性进行验证,创建一个包含模拟结果和背书节点签名的背书,并将背书发回客户端,作为对提案的批准。只有在验证了所有合规性证明后,背书人节点会在结果上签名。
排序节点:排序节点接收来自不同客户端的交易,并根据共识算法建立这些交易的顺序。被排序的交易被分批分成区块,然后分发给所有的提交节点。
提交节点:每个组织都需要从其所有节点中至少选择一个节点作为提交节点。提交节点从排序接收一个区块,验证块中的每个交易提案,并将该区块块附加到区块链中。
监管者:监管者是一个值得信赖的第三方,拥有最高的权力。监管机构负责初始化系统,管理联盟链中的组织,并为交易指定合规性政策。监管机构有权通过要求一个组织披露有关其所参与的交易的部分信息,来审计该组织的资产状况。在承诺、零知识证明和审计令牌的帮助下,监管者能够验证所披露的信息是否与分布式账本相符。
方法包括以下步骤:
步骤1:初始化设置。
在联盟链中,监管者生成全局模型,根据参与组织的初始资金初始化账本,由每个参与组织计算各自的Schnorr秘钥对,并将公钥发送给其他组织。
步骤2:准备交易提案。
支出组织与接收组织协商好交易内容后,由支出客户端为交易生成提案。其中,提案包括每个组织交易内容的Pedersen承诺、审计令牌和合规性证明,合规性证明包括重新承诺证明
Figure DEST_PATH_IMAGE002AA
、范围证明
Figure DEST_PATH_IMAGE004AA
和一致性证明
Figure DEST_PATH_IMAGE006AA
当生成提案后,客户端将提案发送给背书节点进行背书。
步骤3:执行阶段。
背书节点收到客户端的提案后,验证交易的平衡性以及所有合规性证明。
当所有的验证都被通过后,生成交易对于账本的读集和写集并签名。签名之后,将背书结果发送回支出组织客户端。客户端收到足够的背书后,将交易发送到排序节点进行排序。
步骤4:排序阶段。
排序节点收到由监管者指定的数量交易后,根据共识算法建立这些交易的顺序,并将所接受的交易打包成一个区块。之后,排序节点将区块发送给提交节点。
步骤5:校验阶段。
提交节点在收到来自排序节点的区块后,对区块中每个交易进行检查,并删除没有通过检查的交易。
然后,提交节点将区块附加到区块链中并修改公共账本。同时,提交节点将区块和检查修改结果发送给所有节点。
步骤6:更新阶段。
支出组织客户端在收到区块和检查结果后,如果发起的交易通过检查,则修改私有账本,然后通知接收组织确认交易已经被提交并修改私有账本。否则,判定所发起的交易没有通过检查,并根据区块中其他交易修改本地的公共账本副本。
有益效果
本发明,对比现有技术,具有以下优点:
1.本发明,首次解除了交易合规性验证对于监管者的依赖,实现了在不暴露交易隐私的同时对于交易合规性的自动验证,可以防止不合规的交易被附加到公共账本中,并且避免监管者工作效率对于账本记账效率的影响。
2.本发明中,监管者可以在基础的合规性检验之上使用不同的零知识证明设置不同的合规性要求,这些要求都将在记账前被自动验证,即,本发明支持“个性化”的合规性需求。
附图说明
图1是本发明方法的系统模型及实施步骤时序图。
图2是本发明中proposal的结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图对本发明做进一步详细说明。
如图1所示,一种基于零知识证明的支持监管的联盟链隐私保护方法,能够兼顾数据隐私与监管,包括以下步骤:
步骤1:初始化设置。
监管者生成全局变量并初始化公共账本,将初始全局变量发送给各节点。由每个参与组织计算各自的Schnorr秘钥对并将公钥发送给其他组织。
具体地,步骤1可以包括以下步骤:
步骤1.1:监管者生成初始全局变量
Figure 438152DEST_PATH_IMAGE007
定义
Figure 152031DEST_PATH_IMAGE008
是一个素数p的循环群,
Figure 964391DEST_PATH_IMAGE009
表示模p的整数环,令
Figure 625180DEST_PATH_IMAGE010
表示
Figure 970710DEST_PATH_IMAGE008
Figure 324331DEST_PATH_IMAGE009
n 维向量空间,
Figure 388102DEST_PATH_IMAGE011
h 为循环群
Figure 852582DEST_PATH_IMAGE008
中的两个随机数;
步骤1.2:监管者将初始化全局模型参数
Figure 318198DEST_PATH_IMAGE011
h发送给N个参与组织
Figure 842720DEST_PATH_IMAGE012
Figure 331470DEST_PATH_IMAGE013
表示第N个参与组织;
步骤 1.3 :各组织生成密钥对
Figure 98176DEST_PATH_IMAGE014
,并将
Figure 152719DEST_PATH_IMAGE015
公开;其中,
Figure 910460DEST_PATH_IMAGE016
为 组织i的私钥,
Figure 417665DEST_PATH_IMAGE017
为组织i的公钥,且
Figure 20684DEST_PATH_IMAGE018
Figure 929734DEST_PATH_IMAGE019
表示参数h
Figure 563103DEST_PATH_IMAGE016
次方;
步骤1.4:监管者初始化公共账本。
具体地,公共账本是一个二维表,表的第一列为交易ID,第二列为交易日期,第3到N+2列为对应组织交易值的Pedersen承诺和审计令牌。
设各组织的初始资产
Figure 823183DEST_PATH_IMAGE020
Figure 433156DEST_PATH_IMAGE021
Figure 462292DEST_PATH_IMAGE022
表示第N个组织的初始资产。监 管者在区块链中附加初始交易,交易的行序号为
Figure 765097DEST_PATH_IMAGE023
,交易日期为初始化日期。各组织对应的 Pedersen承诺为
Figure DEST_PATH_IMAGE025A
Figure 309211DEST_PATH_IMAGE026
Figure 221410DEST_PATH_IMAGE027
表示参数
Figure 839473DEST_PATH_IMAGE028
Figure DEST_PATH_IMAGE030A
次方,
Figure DEST_PATH_IMAGE032A
表示参数h
Figure DEST_PATH_IMAGE034A
次方,审计令牌为
Figure 63913DEST_PATH_IMAGE035
,其中,
Figure DEST_PATH_IMAGE034AA
为用于进行承诺的随机数,交 易ID为交易的Hash值。
步骤2:准备交易提案。
支出客户端为交易生成提案。其中,提案包括每个组织交易内容的Pedersen承诺、审计令牌和合规性证明。
具体地,步骤2可以包括以下步骤:
步骤2.1:客户端生成每个组织交易内容的承诺cm i 和审计令牌Token i
设每个组织的交易内容为
Figure DEST_PATH_IMAGE037AA
Figure DEST_PATH_IMAGE039AA
表示第N个组织的交 易内容,其中,
Figure DEST_PATH_IMAGE041AA
Figure DEST_PATH_IMAGE043AA
,即:组织1为支出组织,组 织2和组织3位接收组织,承诺
Figure DEST_PATH_IMAGE045AA
Figure DEST_PATH_IMAGE047AA
表示参数
Figure 797120DEST_PATH_IMAGE048
Figure DEST_PATH_IMAGE050A
次方,
Figure DEST_PATH_IMAGE052A
表示参 数
Figure 637644DEST_PATH_IMAGE053
Figure DEST_PATH_IMAGE055AA
次方,
Figure DEST_PATH_IMAGE057AA
Figure DEST_PATH_IMAGE055AAA
为随机数,且
Figure DEST_PATH_IMAGE059AA
Figure DEST_PATH_IMAGE061AA
为组织i的公 钥。
步骤2.2:客户端对支出组织交易后的剩余资产A 1和其余组织的交易内容
Figure DEST_PATH_IMAGE050AA
i=2,3,…,N重新承诺,并生成重新承诺证明。
具体地,设账本中已经记录m条交易,则组织1剩余资产为
Figure DEST_PATH_IMAGE063A
,其中,
Figure DEST_PATH_IMAGE065A
为第
Figure 225661DEST_PATH_IMAGE066
行交易支出组织对应的交易内容。
客户端首先将账本中支出组织m条交易对应的承诺
Figure DEST_PATH_IMAGE068A
与本次交易的承诺cm 1相乘,得到对于A 1的承诺
Figure DEST_PATH_IMAGE070A
,其中
Figure DEST_PATH_IMAGE072A
;然后对A 1使用新的随机数
Figure DEST_PATH_IMAGE074A
重新承诺,得到新的承诺
Figure DEST_PATH_IMAGE076A
;重新承诺证明用于向背书节点证明
Figure DEST_PATH_IMAGE076AA
也是对于剩余资产A 1的承诺。
步骤2.3:客户端对所有重新承诺的值生成范围证明,用于向背书节点证明被承诺 的值属于范围
Figure 40908DEST_PATH_IMAGE077
步骤2.4:客户端为每个组织对应的承诺和审计令牌生成一致性证明,用于向背书节点证明计算承诺和令牌所用的随机数
Figure DEST_PATH_IMAGE055AAAA
相等。
步骤2.5:客户端将每个组织对应的承诺、令牌和零知识证明作为input组成proposal,将proposal发送给至少N/2个组织的背书节点。
步骤3:执行阶段。
背书节点验证交易的合规性后生成签名。
具体地,步骤3可以包括以下步骤:
步骤3.1:验证交易的平衡性。
平衡性指交易没有复制、销毁任何资产,所有组织交易内容
Figure 762877DEST_PATH_IMAGE078
的总和应该为零; 背书节点将所有组织对应的承诺相乘,由于
Figure DEST_PATH_IMAGE080A
,如果
Figure DEST_PATH_IMAGE082A
,则平衡性验证通过。
步骤3.2:验证所有组织对应的重新承诺证明、范围证明以及一致性证明。
步骤3.3:生成交易对于账本的读集和写集并签名。
交易对于账本的读集为账本中的
Figure 941179DEST_PATH_IMAGE083
行交易。写集为各组织对应的承诺和令牌、验 证的结果和交易的ID。
步骤4:排序阶段。
排序节点将所有收集到的交易进行排序,将排序后的交易组成区块,发送给提交节点。
步骤5:提交阶段。
提交节点检查区块中所有交易是否存在读写集冲突,并检查背书节点对于每个交易的验证结果和签名,没有通过检查的交易将会被删除。
在检查完所有交易后,提交节点将区块附加到区块链上,并将检查结果和区块发送给所有组织的节点。
步骤6:更新阶段。
所有组织在收到新的区块后,统一修改本地的公共账本副本。
支出组织客户端在收到区块和检查结果后,如果发起的交易通过检查,则修改私有账本以及区块链和公共账本的本地副本。
同时,通过安全信道向组织2和组织3发送交易ID以及对应计算承诺所用的随机数
Figure DEST_PATH_IMAGE085A
。组织2和组织3在确认交易后修改私有账本。

Claims (1)

1.一种基于零知识证明的支持监管的联盟链隐私保护方法,联盟链场景包括客户端、背书节点、排序节点、提交节点和监管者,其中:
客户端:每个组织至少有一个客户端,通过向背书节点提交交易提案来读取/写入分布式账本;当从背书节点获得足够的签名后,客户端将交易发送到排序节点;客户端知道所属组织的资产的状态,并且客户端能够代表其组织支出/接收资产;
背书节点:每个组织都需要从其所有节点中选择至少一个节点作为背书节点;背书节点模拟客户提交的交易提案,对合规性进行验证,创建一个包含模拟结果和背书节点签名的背书,并将背书发回客户端,作为对提案的批准;只有在验证了所有合规性证明后,背书人节点会在结果上签名;
排序节点:排序节点接收来自不同客户端的交易,并根据共识算法建立这些交易的顺序;被排序的交易被分批分成区块,然后分发给所有的提交节点;
提交节点:每个组织都需要从其所有节点中至少选择一个节点作为提交节点;提交节点从排序接收一个区块,验证块中的每个交易提案,并将该区块块附加到区块链中;
监管者:监管者是一个值得信赖的第三方,拥有最高的权力;监管机构负责初始化系统,管理联盟链中的组织,并为交易指定合规性政策;监管机构有权通过要求一个组织披露有关其所参与的交易的部分信息,来审计该组织的资产状况;在承诺、零知识证明和审计令牌的帮助下,监管者能够验证所披露的信息是否与分布式账本相符;
其特征在于,包括以下步骤:
步骤1:初始化设置;
在联盟链中,监管者生成全局模型,根据参与组织的初始资金初始化账本,由每个参与组织计算各自的Schnorr秘钥对,并将公钥发送给其他组织;
步骤1.1:监管者生成初始全局变量
Figure DEST_PATH_IMAGE001
定义
Figure 85698DEST_PATH_IMAGE002
是一个素数p的循环群,
Figure DEST_PATH_IMAGE003
表示模p的整数环,令
Figure 990200DEST_PATH_IMAGE004
Figure DEST_PATH_IMAGE005
表示
Figure 512580DEST_PATH_IMAGE006
Figure DEST_PATH_IMAGE007
维向量空间,
Figure 338584DEST_PATH_IMAGE001
Figure 158773DEST_PATH_IMAGE008
中的两个随机数;
步骤1.2:监管者将初始化全局模型参数
Figure 714519DEST_PATH_IMAGE001
发送给N个参与组织
Figure DEST_PATH_IMAGE009
Figure 798013DEST_PATH_IMAGE010
表示第N个参与组织;
步骤 1.3 :各组织生成密钥对(
Figure DEST_PATH_IMAGE011
),并将
Figure 111314DEST_PATH_IMAGE012
公开;其中,
Figure DEST_PATH_IMAGE013
为组织的私钥,
Figure 813822DEST_PATH_IMAGE012
为组织的公钥,且
Figure 224074DEST_PATH_IMAGE014
Figure DEST_PATH_IMAGE015
表示参数
Figure 478469DEST_PATH_IMAGE016
Figure 341383DEST_PATH_IMAGE013
次方;
步骤1.4:监管者初始化公共账本;
公共账本是一个二维表,表的第一列为交易ID,第二列为交易日期,第3到
Figure DEST_PATH_IMAGE017
列为对应组织交易值的Pedersen承诺和审计令牌;
设各组织的初始资产
Figure 972216DEST_PATH_IMAGE018
Figure DEST_PATH_IMAGE019
Figure 909079DEST_PATH_IMAGE020
表示第N个组织的初始资产;监管者在区块链中附加初始交易,交易的行序号为
Figure DEST_PATH_IMAGE021
,交易日期为初始化日期;各组织对应的Pedersen承诺为
Figure 209741DEST_PATH_IMAGE022
Figure DEST_PATH_IMAGE023
Figure 28793DEST_PATH_IMAGE024
表示参数
Figure DEST_PATH_IMAGE025
Figure 197737DEST_PATH_IMAGE026
次方,
Figure DEST_PATH_IMAGE027
表示参数
Figure 395631DEST_PATH_IMAGE016
Figure 522987DEST_PATH_IMAGE028
次方,审计令牌为
Figure DEST_PATH_IMAGE029
Figure 298176DEST_PATH_IMAGE030
,其中,
Figure 67549DEST_PATH_IMAGE028
为用于进行承诺的随机数,交易ID为交易的
Figure DEST_PATH_IMAGE031
值;
步骤2:准备交易提案;
支出组织与接收组织协商好交易内容后,由支出客户端为交易生成提案;其中,提案包括每个组织交易内容的Pedersen承诺、审计令牌和合规性证明,合规性证明包括重新承诺证明
Figure 510163DEST_PATH_IMAGE032
、范围证明
Figure DEST_PATH_IMAGE033
和一致性证明;
当生成提案后,客户端将提案发送给背书节点进行背书;
步骤2.1:客户端生成每个组织交易内容的承诺
Figure 746103DEST_PATH_IMAGE034
和审计令牌
Figure DEST_PATH_IMAGE035
设每个组织的交易内容为
Figure 415113DEST_PATH_IMAGE036
Figure DEST_PATH_IMAGE037
表示第N个组织的交易内容
Figure 925860DEST_PATH_IMAGE038
Figure DEST_PATH_IMAGE039
,即:组织1为支出组织,组织2和组织3位接收组织,承诺
Figure 957401DEST_PATH_IMAGE040
Figure DEST_PATH_IMAGE041
表示参数
Figure 895401DEST_PATH_IMAGE025
Figure 441920DEST_PATH_IMAGE042
次方,
Figure DEST_PATH_IMAGE043
表示参数
Figure 608287DEST_PATH_IMAGE016
Figure 556651DEST_PATH_IMAGE044
次方,
Figure DEST_PATH_IMAGE045
Figure 665553DEST_PATH_IMAGE044
为随机数,且
Figure 964947DEST_PATH_IMAGE046
为组织的公钥;
步骤2.2:客户端对支出组织交易后的剩余资产
Figure DEST_PATH_IMAGE047
和其余组织的交易内容
Figure 551917DEST_PATH_IMAGE042
重新承诺,并生成重新承诺证明;
设账本中已经记录
Figure 354788DEST_PATH_IMAGE048
条交易,则
Figure DEST_PATH_IMAGE049
,其中,
Figure 634591DEST_PATH_IMAGE050
为第
Figure DEST_PATH_IMAGE051
行交易支出组织对应的交易内容;
客户端首先将账本中支出组织
Figure 93385DEST_PATH_IMAGE048
条交易对应的承诺
Figure 421730DEST_PATH_IMAGE052
与本次交易的承诺
Figure DEST_PATH_IMAGE053
相乘,得到对于
Figure 813528DEST_PATH_IMAGE054
的承诺
Figure DEST_PATH_IMAGE055
,其中
Figure 998653DEST_PATH_IMAGE056
=
Figure DEST_PATH_IMAGE057
,其中,
Figure 944743DEST_PATH_IMAGE058
为第
Figure 342357DEST_PATH_IMAGE051
行交易用于对
Figure 119821DEST_PATH_IMAGE050
进行承诺的随机数;然后,对
Figure 538164DEST_PATH_IMAGE054
使用新的随机数
Figure DEST_PATH_IMAGE059
重新承诺,得到新的承诺
Figure 971550DEST_PATH_IMAGE060
;重新承诺证明用于向背书节点证明
Figure DEST_PATH_IMAGE061
也是对于剩余资产
Figure 969593DEST_PATH_IMAGE054
的承诺;
对于其他组织,交易内容的承诺为
Figure 867142DEST_PATH_IMAGE062
,客户端使用新的随机数
Figure DEST_PATH_IMAGE063
对交易内容
Figure 394069DEST_PATH_IMAGE042
计算重新承诺
Figure 518014DEST_PATH_IMAGE064
;重新承诺证明用于向背书节点证明
Figure DEST_PATH_IMAGE065
也是对于交易内容
Figure 788590DEST_PATH_IMAGE042
的承诺;
步骤2.3:客户端对所有重新承诺的值生成范围证明,用于向背书节点证明被承诺的值属于范围
Figure 540645DEST_PATH_IMAGE066
步骤2.4:客户端为每个组织对应的承诺和审计令牌生成一致性证明,用于向背书节点证明计算承诺和令牌所用的随机数
Figure 300791DEST_PATH_IMAGE044
相等;
步骤2.5:客户端将每个组织对应的承诺、令牌和零知识证明作为input组成proposal,将proposal发送给至少
Figure DEST_PATH_IMAGE067
个组织的背书节点;
步骤3:执行阶段;
背书节点收到客户端的提案后,验证交易的平衡性以及所有合规性证明;
当所有的验证都被通过后,生成交易对于账本的读集和写集并签名;签名之后,将背书结果发送回支出组织客户端;客户端收到足够的背书后,将交易发送到排序节点进行排序;
步骤3.1:验证交易的平衡性;
平衡性指交易没有复制、销毁任何资产,所有组织交易内容
Figure 708769DEST_PATH_IMAGE068
的总和应该为零;背书节点将所有组织对应的承诺相乘,由于
Figure DEST_PATH_IMAGE069
,如果
Figure 48615DEST_PATH_IMAGE070
,则平衡性验证通过;
步骤3.2:验证所有组织对应的重新承诺证明、范围证明以及一致性证明;
步骤3.3:生成交易对于账本的读集和写集并签名;
交易对于账本的读集为账本中的
Figure 389598DEST_PATH_IMAGE048
行交易;写集为各组织对应的承诺和令牌、验证的结果和交易的ID;
步骤4:排序阶段;
排序节点收到由监管者指定的数量交易后,根据共识算法建立这些交易的顺序,并将所接受的交易打包成一个区块;之后,排序节点将区块发送给提交节点;
步骤5:校验阶段;
提交节点在收到来自排序节点的区块后,对区块中每个交易进行检查,检查区块中所有交易是否存在读写集冲突,并检查背书节点对于每个交易的验证结果和签名,删除没有通过检查的交易;
然后,提交节点将区块附加到区块链中并修改公共账本;同时,提交节点将区块和检查修改结果发送给所有节点;
步骤6:更新阶段;
所有组织在收到新的区块后,统一修改本地的公共账本副本;
支出组织客户端在收到区块和检查结果后,如果发起的交易通过检查,则修改私有账本以及区块链和公共账本的本地副本;
同时,通过安全信道向组织2和组织3发送交易ID以及对应计算承诺所用的随机数
Figure DEST_PATH_IMAGE071
;组织2和组织3在确认交易后修改私有账本。
CN202211276496.6A 2022-10-19 2022-10-19 一种基于零知识证明的支持监管的联盟链隐私保护方法 Active CN115361145B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211276496.6A CN115361145B (zh) 2022-10-19 2022-10-19 一种基于零知识证明的支持监管的联盟链隐私保护方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211276496.6A CN115361145B (zh) 2022-10-19 2022-10-19 一种基于零知识证明的支持监管的联盟链隐私保护方法

Publications (2)

Publication Number Publication Date
CN115361145A CN115361145A (zh) 2022-11-18
CN115361145B true CN115361145B (zh) 2023-01-13

Family

ID=84007591

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211276496.6A Active CN115361145B (zh) 2022-10-19 2022-10-19 一种基于零知识证明的支持监管的联盟链隐私保护方法

Country Status (1)

Country Link
CN (1) CN115361145B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115622812A (zh) * 2022-12-16 2023-01-17 金网络(北京)电子商务有限公司 基于区块链智能合约的数字身份验证方法及系统
CN115906183B (zh) * 2023-01-06 2023-05-26 南京理工大学 可审计追溯的区块链隐私保护系统及方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102180991B1 (ko) * 2018-11-07 2020-12-17 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. 블록 체인 기밀 거래의 규제
CN109636599A (zh) * 2018-11-07 2019-04-16 广西师范大学 基于群签名的许可区块链隐私保护和监管方法
CN111200589A (zh) * 2019-12-05 2020-05-26 北京数字认证股份有限公司 一种联盟链的数据保护方法及系统
CN114338717A (zh) * 2021-12-17 2022-04-12 复旦大学 基于区块链和属性密码学的数字档案管理系统

Also Published As

Publication number Publication date
CN115361145A (zh) 2022-11-18

Similar Documents

Publication Publication Date Title
JP7292365B2 (ja) ブロックチェーンからのデータのセキュアな抽出のための暗号方法及びシステム
CN115361145B (zh) 一种基于零知识证明的支持监管的联盟链隐私保护方法
CN108418689B (zh) 一种适合区块链隐私保护的零知识证明方法和介质
US20200126075A1 (en) Confidential transaction auditing using an authenticated data structure
US20200334675A1 (en) System and method of generating and validating encapsulated cryptographic tokens based on multiple digital signatures
Wang et al. A flexible payment scheme and its role-based access control
KR20180115764A (ko) 블록체인에서 교환을 구현하기 위한 토큰화 방법 및 시스템
US11562451B1 (en) Apparatus for proportional calculation regarding non-fungible tokens
EP3912118A1 (en) Identity management, smart contract generator, and blockchain mediating system, and related methods
CN110520881A (zh) 使用区块链的安全数据记录分发的方法和系统
JP2020071617A (ja) 取引方法、プログラム、検証装置及び生成方法
US20130318619A1 (en) Encapsulated security tokens for electronic transactions
CN112950220A (zh) 一种基于区块链的企业数字身份管理系统及方法
US20200058020A1 (en) Time-bounded activity chains with multiple authenticated agent participation bound by distributed single-source-of-truth networks that can enforce automated value transfer
US11250423B2 (en) Encapsulated security tokens for electronic transactions
US20220253813A1 (en) Cryptographicaly secured hybrid (on and off blockchain) cryptocurrency system
Xiong et al. Anonymous auction protocol based on time-released encryption atop consortium blockchain
CN114945931A (zh) 用于减轻票据融资欺诈的方法和设备
CN111523892B (zh) 一种区块链的跨链交易方法及装置
Senthilkumar Data confidentiality, integrity, and authentication
Dogan et al. KAIME: Central bank digital currency with realistic and modular privacy
CN113673893A (zh) 退役动力电池管理方法及系统
CN114930372A (zh) 促进拆分票据融资的方法和设备
CN112990928A (zh) 一种可监管的匿名法定数字货币发行与流通方法
CN114846765A (zh) 提供去中心化身份验证的方法和设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant