CN113630411B - 一种对联盟区块链上多方隐私保护数据审计的方法及装置 - Google Patents

一种对联盟区块链上多方隐私保护数据审计的方法及装置 Download PDF

Info

Publication number
CN113630411B
CN113630411B CN202110898272.8A CN202110898272A CN113630411B CN 113630411 B CN113630411 B CN 113630411B CN 202110898272 A CN202110898272 A CN 202110898272A CN 113630411 B CN113630411 B CN 113630411B
Authority
CN
China
Prior art keywords
range
block chain
alliance
private data
node
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
CN202110898272.8A
Other languages
English (en)
Other versions
CN113630411A (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.)
Wuhan Donghu Big Data Technology Co ltd
Huazhong Agricultural University
Original Assignee
Wuhan Donghu Big Data Trading Center Co ltd
Huazhong Agricultural University
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 Wuhan Donghu Big Data Trading Center Co ltd, Huazhong Agricultural University filed Critical Wuhan Donghu Big Data Trading Center Co ltd
Priority to CN202110898272.8A priority Critical patent/CN113630411B/zh
Publication of CN113630411A publication Critical patent/CN113630411A/zh
Application granted granted Critical
Publication of CN113630411B publication Critical patent/CN113630411B/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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0407Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • 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/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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
    • H04L9/3026Public 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 details relating to polynomials generation, e.g. generation of irreducible polynomials
    • 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
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Abstract

本发明公开了一种对联盟区块链上多方隐私保护数据审计的方法及装置,将非交互式零知识范围证明技术与联盟区块链相结合,可用于跨组织监督和管理下的隐私保护数据审核场景。主要基于链码,几乎不依赖于联盟区块链的底层。实现了多个证明方生成一个联合标准范围和任意范围的零知识范围证明,然后发送给一个验证方去验证,还提供了链码、相关接口和客户端代码。在联盟区块链成员身份公开的情况下,保护其上传数据的完整性和隐私性,本方法及装置提供了线性证明和验证时间,以及对数证明大小,有效提高了吞吐量,节省了区块链上的存储空间。

Description

一种对联盟区块链上多方隐私保护数据审计的方法及装置
技术领域
本发明涉及计算机信息安全技术领域,尤其涉及一种对联盟区块链上多方隐私保护数据审计的方法及装置。
背景技术
区块链作为一种新型的分布式计算技术,由于具有更好的安全性(尤其是数据完整性)、更高的透明度和更强的可跟踪性而备受关注。与公链不同,例如比特币、以太坊等,联盟区块链由一些组织管理,只允许系统中的组织成员访问区块链。得益于这一特点,联盟区块链被广泛用作跨公司和跨组织的主要解决方案。然而由于透明度和可追溯性的内在特征,在部署和运行区块链系统时,联盟区块链上数据的机密性和隐私性很容易受到侵犯。此外,联盟区块链上的许多应用要求对其上传的数据进行审核,而又不暴露数据本身。在跨组织监督和管理的场景下,联盟区块链的需求异常强烈。例如,在食品安全监管系统中,涉及的公司需要上传其食品生产数据,并根据其身份对任意范围的安全性进行检查,这些身份是公开的,但由于商业机密,将数据发给其他公司或监管部门时要保密。一个更复杂的情况是多个公司对同一种食品进行安全认证,这些公司组成了食品质量联盟,每一个公司不会与联盟中的其他公司分享自己的产品数据。
因此,需要一种能够对来自多方的盲数据进行联合以及任意范围的审计的方法。
发明内容
本发明通过提供一种对联盟区块链上多方隐私保护数据审计的方法及装置,能够在联盟区块链成员身份公开的情况下,对来自多方的盲数据进行联合以及任意范围进行审计。
本发明提供了一种对联盟区块链上多方隐私保护数据审计的方法,包括:
联盟区块链上的证明节点获取各自的私有数据,根据所述私有数据生成各自的承诺和盲向量多项式;
所述联盟区块链上的交易节点获取所述生成的承诺,对所述承诺进行同态相加得到聚合后的承诺,同时还生成挑战因子;
所述联盟区块链上的交易节点获取所述生成的盲向量多项式,对所述盲向量多项式进行同态相加得到相加后的盲向量多项式;将所述相加后的盲向量多项式通过内积证明转化为验证参量;
将所述聚合后的承诺、所述挑战因子、所述相加后的盲向量多项式和所述验证参量生成待验证的证明;
所述联盟区块链上的验证节点获取所述待验证的证明,基于指定范围利用承诺的性质和内积证明,验证所述私有数据中的范围是否成立。
进一步地,所述根据所述私有数据生成各自的承诺和盲向量多项式,包括:
判断所述私有数据中的数据范围是标准范围还是任意范围;
若所述私有数据中的数据范围是标准范围vi∈[0,2n)(i=1,2,...,m),每个证明节点基于各自的私有数据vi生成五个承诺,分别是Vi=Com(vi),Ai=Com(aLi,aRi),Si=Com(sLi,sRi),T1i=Com(aLi,aRi,sLi,sRi),T2i=Com(Ai,Si,sLi,sRi);其中,sLi,sRi是盲化因子,aLi是vi的n位二进制向量,aRi=aLi-1;还生成五个盲向量多项式,将所述五个盲向量多项式统一表示为otherSharei
若所述私有数据中的数据范围是任意范围vi∈[a,b)(i=1,2,...,m),将vi∈[a,b)转换为vai=vi-a∈[0,2n)和vbi=vi-b+2n∈[0,2n);按照所述标准范围的方法将vai,vbi生成五个承诺和五个盲向量多项式。
进一步地,所述生成挑战因子,包括:
对所述承诺调用哈希函数生成所述挑战因子。
进一步地,在所述联盟区块链上的验证节点获取所述待验证的证明之前,还包括:
所述联盟区块链上的验证节点检查所有的链码、主键ID、范围是否被修改过;
若所述链码、主键ID、范围均没有被修改,所述联盟区块链上的验证节点获取所述待验证的证明。
进一步地,所述基于指定范围利用承诺的性质和内积证明,验证所述私有数据中的范围是否成立,包括:
若z2(V1+V2+…+Vm)+y+xT1+x2T2等于otherSharei且IPP+otherShare等于A+xS,说明多个证明节点的标准范围vi∈[0,2n)或者任意范围vi∈[a,b)成立,验证通过。
本发明还提供了一种对联盟区块链上多方隐私保护数据审计的装置,包括:
数据生成模块,用于联盟区块链上的证明节点获取各自的私有数据,根据所述私有数据生成各自的承诺和盲向量多项式;
聚合模块,用于所述联盟区块链上的交易节点获取所述生成的承诺,对所述承诺进行同态相加得到聚合后的承诺,同时还生成挑战因子;
运算模块,用于所述联盟区块链上的交易节点获取所述生成的盲向量多项式,对所述盲向量多项式进行同态相加得到相加后的盲向量多项式;将所述相加后的盲向量多项式通过内积证明转化为验证参量;
证明生成模块,用于将所述聚合后的承诺、所述挑战因子、所述相加后的盲向量多项式和所述验证参量生成待验证的证明;
审计模块,用于所述联盟区块链上的验证节点获取所述待验证的证明,基于指定范围利用承诺的性质和内积证明,验证所述私有数据中的范围是否成立。
进一步地,所述数据生成模块,包括:
私有数据获取单元,用于联盟区块链上的证明节点获取各自的私有数据;
范围判断单元,用于判断所述私有数据中的数据范围是标准范围还是任意范围;
第一数据生成单元,用于若所述私有数据中的数据范围是标准范围vi∈[0,2n)(i=1,2,...,m),每个证明节点基于各自的私有数据vi生成五个承诺,分别是Vi=Com(vi),Ai=Com(aLi,aRi),Si=Com(sLi,sRi),T1i=Com(aLi,aRi,sLi,sRi),T2i=Com(Ai,Si,sLi,sRi);其中,sLi,sRi是盲化因子,aLi是vi的n位二进制向量,aRi=aLi-1;还生成五个盲向量多项式,将所述五个盲向量多项式统一表示为otherSharei
第二数据生成单元,用于若所述私有数据中的数据范围是任意范围vi∈[a,b)(i=1,2,...,m),将vi∈[a,b)转换为vai=vi-a∈[0,2n)和vbi=vi-b+2n∈[0,2n);按照所述标准范围的方法将vai,vbi生成五个承诺和五个盲向量多项式。
进一步地,所述聚合模块,包括:
聚合执行单元,用于所述联盟区块链上的交易节点获取所述生成的承诺,对所述承诺进行同态相加得到聚合后的承诺;
挑战因子生成单元,用于对所述承诺调用哈希函数生成所述挑战因子。
进一步地,还包括:
检查模块,用于所述联盟区块链上的验证节点检查所有的链码、主键ID、范围是否被修改过;
所述审计模块,具体用于若所述链码、主键ID、范围均没有被修改,所述联盟区块链上的验证节点获取所述待验证的证明,基于指定范围利用承诺的性质和内积证明,验证所述私有数据中的范围是否成立。
进一步地,所述审计模块,包括:
证明获取单元,用于若所述链码、主键ID、范围均没有被修改,所述联盟区块链上的验证节点获取所述待验证的证明;
审计执行单元,用于若z2(V1+V2+…+Vm)+y+xT1+x2T2等于otherSharei且IPP+otherShare等于A+xS,说明多个证明节点的标准范围vi∈[0,2n)或者任意范围vi∈[a,b)成立,验证通过。
本发明中提供的一个或多个技术方案,至少具有如下技术效果或优点:
本发明提出了一种基于零知识范围证明的联盟区块链上多方隐私保护数据审计实现方法及装置,将非交互式零知识范围证明技术与联盟区块链相结合,可用于跨组织监督和管理下的隐私保护数据审核场景。主要基于智能合约(又链码),几乎不依赖于联盟区块链的底层。实现了多个证明方生成一个联合标准范围和任意范围的零知识范围证明,然后发送给一个验证方去验证,还提供了链码、相关接口和客户端代码。在联盟区块链成员身份公开的情况下,保护其上传数据的完整性和隐私性,本方法及装置提供了线性证明和验证时间,以及对数证明大小,有效提高了吞吐量,节省了区块链上的存储空间。
附图说明
图1为本发明实施例提供的对联盟区块链上多方隐私保护数据审计的方法的流程图;
图2为本发明实施例提供的对联盟区块链上多方隐私保护数据审计的装置的模块图。
具体实施方式
本发明实施例通过提供一种对联盟区块链上多方隐私保护数据审计的方法及装置,能够在联盟区块链成员身份公开的情况下,对来自多方的盲数据进行联合以及任意范围进行审计。
本发明实施例中的技术方案为实现上述技术效果,总体思路如下:
以弱耦合的方式将非交互式零知识范围证明技术与联盟区块链相结合,本发明主要基于链码,几乎不依赖于联盟区块链的底层实现。首先将多个证明方的标准范围或者任意范围的数据生成一个联合范围证明,然后发送给一个验证方去验证,并提供客户端代码、链码和相关的接口。验证节点可以进行隐私保护数据审计和验证多个证明节点为其私有数据生成的一个联合零知识范围证明,其中在证明期间需要一个交易节点(可以由证明节点充当)聚合证明节点发送过来的内容生成挑战因子,最终聚合成一个证明。除了保护证明节点的私人数据的隐私,还确保证明节点和交易节点不会通过修改或伪造链码或范围值来作弊。
为了实现上述技术方案,首先需要建立区块链网络,网络由多个证明节点、一个交易节点和一个验证节点组成,在所有节点上实例化证明者链码、交易者链码和验证者链码。验证节点调用验证者链码来指定范围、Key IDs(主键ID)等初始化信息并上传至区块链。其次证明节点对其私有数据进行预处理,调用证明者链码生成证明所需的承诺和盲向量多项式并上传至区块链。接着交易节点生成证明所需的挑战因子、聚合证明并上传至区块链。最后验证节点检查所有的链码、Key IDs、范围等内容是否从未被修改过。若从未修改,则从区块链上下载证明并进行验证。
为了更好地理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。
参见图1,本发明实施例提供的对联盟区块链上多方隐私保护数据审计的方法,包括:
步骤S110:联盟区块链上的证明节点获取各自的私有数据,根据私有数据生成各自的承诺和盲向量多项式;
对本步骤进行具体说明,根据私有数据生成各自的承诺和盲向量多项式,包括:
判断私有数据中的数据范围是标准范围还是任意范围;
若私有数据的取值范围是vi∈[0,2n)(i=1,2,...,m),则表示私有数据的范围是标准范围。每个证明节点基于各自的私有数据vi生成五个承诺,分别是Vi=Com(vi),Ai=Com(aLi,aRi),Si=Com(sLi,sRi),T1i=Com(aLi,aRi,sLi,sRi),T2i=Com(Ai,Si,sLi,sRi);其中,sLi,sRi是盲化因子,aLi是vi的n位二进制向量,aRi=aLi-1;还生成五个盲向量多项式,将五个盲向量多项式统一表示为otherSharei
若私有数据的取值范围是vi∈[a,b)(i=1,2,...,m),则表示私有数据的范围是任意范围。将vi∈[a,b)转换为vai=vi-a∈[0,2n)和vbi=vi-b+2n∈[0,2n);按照标准范围的方法将vai,vbi生成五个承诺和五个盲向量多项式。
步骤S120:联盟区块链上的交易节点获取生成的承诺,对承诺进行同态相加得到聚合后的承诺,同时还生成挑战因子;
其中,生成挑战因子,包括:
对承诺调用哈希函数生成挑战因子。
步骤S130:联盟区块链上的交易节点获取生成的盲向量多项式,对盲向量多项式进行同态相加得到相加后的盲向量多项式;将相加后的盲向量多项式通过内积证明转化为验证参量;
步骤S140:将聚合后的承诺、挑战因子、相加后的盲向量多项式和验证参量生成待验证的证明;
步骤S150:联盟区块链上的验证节点获取待验证的证明,基于指定范围利用承诺的性质和内积证明,验证私有数据中的范围是否成立。
为了保证没有恶意节点篡改联盟区块链上的内容,从而保证数据审计结果的准确性,在联盟区块链上的验证节点获取待验证的证明之前,还包括:
联盟区块链上的验证节点检查所有的链码、主键ID、范围是否被修改过;
具体地,将链码、主键ID、范围与预设的链码、主键ID、范围进行比较;
若链码的版本、主键ID、范围的上下限均与预设的链码、主键ID、范围匹配,则说明联盟区块链上的链码、主键ID、范围均没有被修改,则联盟区块链上的验证节点获取待验证的证明。
若链码的版本、主键ID、范围的上下限中至少有一个与预设的链码、主键ID、范围不匹配,则说明联盟区块链上的内容被修改,则停止查询返回验证失败。
进一步地,基于指定范围利用承诺的性质和内积证明,验证私有数据中的范围是否成立,包括:
若z2(V1+V2+…+Vm)+y+xT1+x2T2等于otherSharei且IPP+otherShare等于A+xS,说明多个证明节点的标准范围vi∈[0,2n)或者任意范围vi∈[a,b)成立,验证通过。
若z2(V1+V2+…+Vm)+y+xT1+x2T2不等于otherSharei和/或IPP+otherShare不等于A+xS,说明多个证明节点的标准范围vi∈[0,2n)或者任意范围vi∈[a,b)不成立,验证不通过。
对本发明实施例提供的对联盟区块链上多方隐私保护数据审计的方法的具体实现过程进行具体说明:
步骤1:初始化。
在该步骤中,具体实施过程如下:
1)建立区块链网络,在所有节点上实例化3种主要的链码:证明者链码、交易者链码和验证者链码。
2)区块链上的数据是通过Key IDs(主键ID)访问的,在多个证明节点和一个验证节点会话下,需要多个证明者主键ID(Prover Key IDs),一个交易者主键ID(Dealer KeyID)和一个设置主键ID(Setup Key ID),它们像成员变量分别绑定到证明者链码、交易者链码和验证者链码中。
3)验证节点通过链下的方法确定和告知证明节点、交易节点指定的范围以及生成的证明存储在公共账本的位置。验证节点调用验证者链码将范围的上限和下限、ProverKey IDs和Dealer Key ID等初始化信息通过Setup Key ID上传至区块链。
步骤2:证明节点准备私有数据。
在该步骤中,具体实施过程如下:
在证明过程中,总共有m个证明节点,每个证明节点从其链下私有数据库中读取各自的私有数据vi(i=1,2,...,m)。其中,vi有两种范围:一种是标准范围vi∈[0,2n);另一种是任意范围vi∈[a,b)(a是范围的下限,b是范围的上限),然后对其读到的数据进行类型转换,将数据转换为大整数类型,然后将类型转换后任意范围的数据转换为标准范围的数据,以便于按照标准范围的方法生成承诺和盲向量多项式。
步骤3:证明节点生成证明所需的Pedersen承诺和盲向量多项式并上传至区块链。
在该步骤中,具体实施过程如下:
1)由于私有数据的范围不一样,因此证明者生成证明的具体方式可分为以下两种:
(1)证明标准范围vi∈[0,2n)(i=1,2,...,m):每个证明节点基于各自的私有数据vi生成五个Pedersen承诺,分别是Vi=Com(vi),Ai=Com(aLi,aRi),Si=Com(sLi,sRi),T1i=Com(aLi,aRi,sLi,sRi),T2i=Com(Ai,Si,sLi,sRi)。其中,Com是Pedersen承诺,sLi,sRi是盲化因子,aLi是vi的n位二进制向量,aRi=aLi-1。除此之外,还生成五个盲向量多项式(统一表示为otherSharei)。
(2)证明任意范围vi∈[a,b)(i=1,2,...,m):将vi∈[a,b)转换为vai=vi-a∈[0,2n)和vbi=vi-b+2n∈[0,2n),然后按照标准范围的方法将vai,vbi生成五个承诺和五个盲向量多项式。
2)每个证明节点通过各自的Prover Key ID(在被绑定的验证者链码Setup KeyID中指定)将以上内容上传至区块链。除了Pedersen承诺和盲向量多项式外,在通信期间,每个证明节点还会生成私有中间变量(例如向量多项式和随机数),这些私有中间变量被存储在链下,只允许各自访问。
步骤4:交易节点生成证明所需的挑战因子,聚合证明并上传至区块链。在该步骤中,具体实施过程如下:
1)交易节点调用交易者链码来响应每个证明节点/链码。交易节点对来自每个证明节点的Pedersen承诺(Vi,Ai,Si,T1i,T2i)进行同态相加得到聚合的V,A,S,T1,T2,再对A调用哈希函数生成挑战因子y,对S调用哈希函数生成挑战因子z,对T1,T2调用哈希函数生成挑战因子x,并通过Dealer Key ID(在被绑定的验证者链码Setup Key ID中指定)上传至区块链。
2)交易节点对来自每个证明节点的otherSharei进行同态相加,得到相加后的otherShare,然后将otherShare通过内积证明转化为2log2(nm)点和2个标量(验证参量),并再次通过Dealer Key ID上传至区块链。
3)最终的证明由V1,V2,...,Vi,A,S,T1,T2,otherShare,验证参量以及x,y,z组成,交易节点通过Dealer Key ID将最终的证明上传至区块链。
步骤5:验证节点从区块链下载证明并进行验证。
在该步骤中,具体实施过程如下:
1)验证节点通过查询历史记录,检查所有的链码、Key IDs、范围等内容是否被修改过。如果从未被修改过,继续执行第2)步,否则验证失败。
2)检查通过,验证节点调用验证者链码通过Dealer Key ID下载最终的证明,然后基于指定范围利用Pedersen承诺的性质和内积证明,分别验证z2(V1+V2+…+Vm)+y+xT1+x2T2是否等于otherShare,IPP+otherShare是否等于A+xS。如果两个等式均成立,则说明多个证明节点的标准范围数据vi∈[0,2n)成立或者任意范围数据vi∈[a,b)成立,即验证通过,则表示零知识范围证明过程是成功的,否则失败退出。
参见图2,本发明实施例提供的对联盟区块链上多方隐私保护数据审计的装置,包括:
数据生成模块100,用于联盟区块链上的证明节点获取各自的私有数据,根据私有数据生成各自的承诺和盲向量多项式;
具体地,数据生成模块100,包括:
私有数据获取单元,用于联盟区块链上的证明节点获取各自的私有数据;
范围判断单元,用于判断私有数据中的数据范围是标准范围还是任意范围;
第一数据生成单元,用于若私有数据的取值范围是vi∈[0,2n)(i=1,2,...,m),则表示私有数据的范围是标准范围。每个证明节点基于各自的私有数据vi生成五个承诺,分别是Vi=Com(vi),Ai=Com(aLi,aRi),Si=Com(sLi,sRi),T1i=Com(aLi,aRi,sLi,sRi),T2i=Com(Ai,Si,sLi,sRi);其中,sLi,sRi是盲化因子,aLi是vi的n位二进制向量,aRi=aLi-1;还生成五个盲向量多项式,将五个盲向量多项式统一表示为otherSharei
第二数据生成单元,用于若私有数据的取值范围是vi∈[a,b)(i=1,2,...,m),则表示私有数据的范围是任意范围。将vi∈[a,b)转换为vai=vi-a∈[0,2n)和vbi=vi-b+2n∈[0,2n);按照标准范围的方法将vai,vbi生成五个承诺和五个盲向量多项式。
聚合模块200,用于联盟区块链上的交易节点获取生成的承诺,对承诺进行同态相加得到聚合后的承诺,同时还生成挑战因子;
具体地,聚合模块200,包括:
聚合执行单元,用于联盟区块链上的交易节点获取生成的承诺,对承诺进行同态相加得到聚合后的承诺;
挑战因子生成单元,用于对承诺调用哈希函数生成挑战因子。
运算模块300,用于联盟区块链上的交易节点获取生成的盲向量多项式,对盲向量多项式进行同态相加得到相加后的盲向量多项式;将相加后的盲向量多项式通过内积证明转化为验证参量;
证明生成模块400,用于将聚合后的承诺、挑战因子、相加后的盲向量多项式和验证参量生成待验证的证明;
审计模块500,用于联盟区块链上的验证节点获取待验证的证明,基于指定范围利用承诺的性质和内积证明,验证私有数据中的范围是否成立。
为了保证没有恶意节点篡改联盟区块链上的内容,从而保证数据审计结果的准确性,还包括:
检查模块,用于联盟区块链上的验证节点检查所有的链码、主键ID、范围是否被修改过;
在这种情况下,审计模块500,具体用于若链码的版本、主键ID、范围的上下限均与预设的链码、主键ID、范围匹配,则说明联盟区块链上的链码、主键ID、范围均没有被修改,则联盟区块链上的验证节点获取待验证的证明,基于指定范围利用承诺的性质和内积证明,验证私有数据中的范围是否成立。
具体地,审计模块500,包括:
证明获取单元,用于若链码、主键ID、范围均没有被修改,联盟区块链上的验证节点获取待验证的证明;
审计执行单元,用于若z2(V1+V2+…+Vm)+y+xT1+x2T2等于otherSharei且IPP+otherShare等于A+xS,说明多个证明节点的标准范围vi∈[0,2n)或者任意范围vi∈[a,b)成立,验证通过;若z2(V1+V2+…+Vm)+y+xT1+x2T2不等于otherSharei和/或IPP+otherShare不等于A+xS,说明多个证明节点的标准范围vi∈[0,2n)或者任意范围vi∈[a,b)不成立,验证不通过。
技术效果
本发明实施例提出了一种基于零知识范围证明的联盟区块链上多方隐私保护数据审计实现方法及装置,将非交互式零知识范围证明技术与联盟区块链相结合,可用于跨组织监督和管理下的隐私保护数据审核场景。主要基于智能合约(又链码),几乎不依赖于联盟区块链的底层。实现了多个证明方生成一个联合标准范围和任意范围的零知识范围证明,然后发送给一个验证方去验证,还提供了链码、相关接口和客户端代码。在联盟区块链成员身份公开的情况下,保护其上传数据的完整性和隐私性,本方法及装置提供了线性证明和验证时间,以及对数证明大小,有效提高了吞吐量,节省了区块链上的存储空间。链码、相关接口和客户端代码的提供使应用程序开发人员可以创建自己的隐私保护数据审核应用程序。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (10)

1.一种对联盟区块链上多方隐私保护数据审计的方法,其特征在于,包括:
联盟区块链上的证明节点获取各自的私有数据,根据所述私有数据生成各自的承诺和盲向量多项式;
所述联盟区块链上的交易节点获取所述生成的承诺,对所述生成的承诺进行同态相加得到聚合后的承诺,同时还生成挑战因子;
所述联盟区块链上的交易节点获取所述生成的盲向量多项式,对所述盲向量多项式进行同态相加得到相加后的盲向量多项式;将所述相加后的盲向量多项式通过内积证明转化为验证参量;
将所述聚合后的承诺、所述挑战因子、所述相加后的盲向量多项式和所述验证参量生成待验证的证明;
所述联盟区块链上的验证节点获取所述待验证的证明,基于指定范围利用承诺的性质和内积证明,验证所述私有数据中的范围是否成立。
2.如权利要求1所述的方法,其特征在于,所述根据所述私有数据生成各自的承诺和盲向量多项式,包括:
判断所述私有数据中的数据范围是标准范围还是任意范围;
若所述私有数据中的数据范围是标准范围vi∈[0,2n), i=1,2,...,m,每个证明节点基于各自的私有数据vi生成五个承诺,分别是Vi=Com(vi),Ai=Com(aLi,aRi),Si=Com(sLi,sRi),T1i=Com(aLi,aRi,sLi,sRi),T2i=Com(Ai,Si,sLi,sRi);其中,sLi,sRi是盲化因子,aLi是vi的n位二进制向量,aRi=aLi-1;还生成五个盲向量多项式,将所述五个盲向量多项式统一表示为otherSharei
若所述私有数据中的数据范围是任意范围vi∈[a,b), i=1,2,...,m,将vi∈[a,b)转换为vai=(vi-a)∈[0,2n)和vbi=(vi-b+2n)∈[0,2n);按照所述标准范围的方法将vai,vbi生成五个承诺和五个盲向量多项式;其中,n是范围在二进制表示时的位长,m是证明节点的总数,Com是Pedersen承诺,a是范围的下限,b是范围的上限。
3.如权利要求1所述的方法,其特征在于,所述生成挑战因子,包括:
对所述聚合后的承诺调用哈希函数生成所述挑战因子。
4.如权利要求2所述的方法,其特征在于,在所述联盟区块链上的验证节点获取所述待验证的证明之前,还包括:
所述联盟区块链上的验证节点检查所有的链码、主键ID、范围是否被修改过;
若所述链码、主键ID、范围均没有被修改,所述联盟区块链上的验证节点获取所述待验证的证明。
5.如权利要求4所述的方法,其特征在于,所述基于指定范围利用承诺的性质和内积证明,验证所述私有数据中的范围是否成立,包括:
若z2(V1+V2+…+Vm)+y+xT1+x2T2等于otherSharei且IPP+otherShare等于A+xS,说明多个证明节点的标准范围vi∈[0,2n)或者任意范围vi∈[a,b)成立,验证通过;其中,A,S,T1,T2是对来自每个证明节点的Pedersen承诺(Ai,Si,T1i,T2i)进行同态相加得到聚合的承诺,x是对T1,T2调用哈希函数生成的挑战因子,y是对A调用哈希函数生成的挑战因子,z是对s调用哈希函数生成的挑战因子,V1是第一个证明节点从其链下私有数据库中读取的私有数据的Pedersen承诺,V2是第二个证明节点从其链下私有数据库中读取的私有数据的Pedersen承诺,Vm是第m个证明节点从其链下私有数据库中读取的私有数据的Pedersen承诺,IPP是内积证明转换后的2log2(nm)点和2个标量,otherShare是对来自每个证明节点的otherSharei进行同态相加得到的结果。
6.一种对联盟区块链上多方隐私保护数据审计的装置,其特征在于,包括:
数据生成模块,用于联盟区块链上的证明节点获取各自的私有数据,根据所述私有数据生成各自的承诺和盲向量多项式;
聚合模块,用于所述联盟区块链上的交易节点获取所述生成的承诺,对所述承诺进行同态相加得到聚合后的承诺,同时还生成挑战因子;
运算模块,用于所述联盟区块链上的交易节点获取所述生成的盲向量多项式,对所述盲向量多项式进行同态相加得到相加后的盲向量多项式;将所述相加后的盲向量多项式通过内积证明转化为验证参量;
证明生成模块,用于将所述聚合后的承诺、所述挑战因子、所述相加后的盲向量多项式和所述验证参量生成待验证的证明;
审计模块,用于所述联盟区块链上的验证节点获取所述待验证的证明,基于指定范围利用承诺的性质和内积证明,验证所述私有数据中的范围是否成立。
7.如权利要求6所述的装置,其特征在于,所述数据生成模块,包括:
私有数据获取单元,用于联盟区块链上的证明节点获取各自的私有数据;
范围判断单元,用于判断所述私有数据中的数据范围是标准范围还是任意范围;
第一数据生成单元,用于若所述私有数据中的数据范围是标准范围vi∈[0,2n), i=1,2,...,m,每个证明节点基于各自的私有数据vi生成五个承诺,分别是Vi=Com(vi),Ai=Com(aLi,aRi),Si=Com(sLi,sRi),T1i=Com(aLi,aRi,sLi,sRi),T2i=Com(Ai,Si,sLi,sRi);其中,sLi,sRi是盲化因子,aLi是vi的n位二进制向量,aRi=aLi-1;还生成五个盲向量多项式,将所述五个盲向量多项式统一表示为otherSharei
第二数据生成单元,用于若所述私有数据中的数据范围是任意范围vi∈[a,b), i=1,2,...,m,将vi∈[a,b)转换为vai=(vi-a)∈[0,2n)和vbi=(vi-b+2n)∈[0,2n);按照所述标准范围的方法将vai,vbi生成五个承诺和五个盲向量多项式;其中,n是范围在二进制表示时的位长,m是证明节点的总数,Com是Pedersen承诺,a是范围的下限,b是范围的上限。
8.如权利要求6所述的装置,其特征在于,所述聚合模块,包括:
聚合执行单元,用于所述联盟区块链上的交易节点获取所述生成的承诺,对所述生成的承诺进行同态相加得到聚合后的承诺;
挑战因子生成单元,用于对所述聚合后的承诺调用哈希函数生成所述挑战因子。
9.如权利要求7所述的装置,其特征在于,还包括:
检查模块,用于所述联盟区块链上的验证节点检查所有的链码、主键ID、范围是否被修改过;
所述审计模块,具体用于若所述链码、主键ID、范围均没有被修改,所述联盟区块链上的验证节点获取所述待验证的证明,基于指定范围利用承诺的性质和内积证明,验证所述私有数据中的范围是否成立。
10.如权利要求9所述的装置,其特征在于,所述审计模块,包括:
证明获取单元,用于若所述链码、主键ID、范围均没有被修改,所述联盟区块链上的验证节点获取所述待验证的证明;
审计执行单元,用于若z2(V1+V2+…+Vm)+y+xT1+x2T2等于otherSharei且IPP+otherShare等于A+xS,说明多个证明节点的标准范围vi∈[0,2n)或者任意范围vi∈[a,b)成立,验证通过;其中,A,S,T1,T2是对来自每个证明节点的Pedersen承诺(Ai,Si,T1i,T2i)进行同态相加得到聚合的承诺,x是对T1,T2调用哈希函数生成的挑战因子,y是对A调用哈希函数生成的挑战因子,z是对s调用哈希函数生成的挑战因子,V1是第一个证明节点从其链下私有数据库中读取的私有数据的Pedersen承诺,V2是第二个证明节点从其链下私有数据库中读取的私有数据的Pedersen承诺,Vm是第m个证明节点从其链下私有数据库中读取的私有数据的Pedersen承诺,IPP是内积证明转换后的2log2(nm)点和2个标量,otherShare是对来自每个证明节点的otherSharei进行同态相加得到的结果。
CN202110898272.8A 2021-08-05 2021-08-05 一种对联盟区块链上多方隐私保护数据审计的方法及装置 Active CN113630411B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110898272.8A CN113630411B (zh) 2021-08-05 2021-08-05 一种对联盟区块链上多方隐私保护数据审计的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110898272.8A CN113630411B (zh) 2021-08-05 2021-08-05 一种对联盟区块链上多方隐私保护数据审计的方法及装置

Publications (2)

Publication Number Publication Date
CN113630411A CN113630411A (zh) 2021-11-09
CN113630411B true CN113630411B (zh) 2022-04-05

Family

ID=78383141

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110898272.8A Active CN113630411B (zh) 2021-08-05 2021-08-05 一种对联盟区块链上多方隐私保护数据审计的方法及装置

Country Status (1)

Country Link
CN (1) CN113630411B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115296859B (zh) * 2022-07-08 2024-02-23 蓝象智联(杭州)科技有限公司 隐私计算通信内容安全检测方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108021821A (zh) * 2017-11-28 2018-05-11 北京航空航天大学 多中心区块链交易隐私保护系统及方法
CN112329051A (zh) * 2020-10-23 2021-02-05 中国科学院数据与通信保护研究教育中心 一种安全高效的共识机制实现方法及系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102215773B1 (ko) * 2018-11-07 2021-02-17 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. 영-지식 증명을 갖는 계정 노트 모델에 기초한 블록체인 데이터 보호
CN112241434B (zh) * 2020-09-24 2021-06-22 华中农业大学 一种面向数据隐私保护的联盟区块链系统
CN112256800A (zh) * 2020-12-21 2021-01-22 支付宝(杭州)信息技术有限公司 一种基于向量承诺的联盟链数据处理方法、装置以及设备
US11489819B2 (en) * 2021-04-09 2022-11-01 Polymath Inc. Method and system for private identity verification
CN113094633A (zh) * 2021-04-21 2021-07-09 大连理工大学 一种基于标量等式内积的高效范围证明方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108021821A (zh) * 2017-11-28 2018-05-11 北京航空航天大学 多中心区块链交易隐私保护系统及方法
CN112329051A (zh) * 2020-10-23 2021-02-05 中国科学院数据与通信保护研究教育中心 一种安全高效的共识机制实现方法及系统

Also Published As

Publication number Publication date
CN113630411A (zh) 2021-11-09

Similar Documents

Publication Publication Date Title
Lindell et al. An efficient protocol for secure two-party computation in the presence of malicious adversaries
Androulaki et al. Privacy-preserving auditable token payments in a permissioned blockchain system
CN112241434B (zh) 一种面向数据隐私保护的联盟区块链系统
CN111563261A (zh) 一种基于可信执行环境的隐私保护多方计算方法和系统
CN111159753B (zh) 区块链智能合约管理方法及系统、存储介质及终端
Baum et al. Efficient secure multiparty computation with identifiable abort
CN111737715A (zh) 一种去中心化的电子合同在线签署的方法及系统
Lee et al. Blockchain-based RBAC for user authentication with anonymity
CN112437049A (zh) 一种基于bft的区块链共识方法及装置
CN110048836A (zh) 一种可追踪用户身份的云共享数据完整性审计方法
CN115208628B (zh) 基于区块链的数据完整性验证方法
CN114760071B (zh) 基于零知识证明的跨域数字证书管理方法、系统和介质
CN113630411B (zh) 一种对联盟区块链上多方隐私保护数据审计的方法及装置
CN109447630A (zh) 一种支持多行业多应用的区块链构建方法及系统
CN113438237A (zh) 数据安全协同计算方法及系统
Xu et al. DIV: Resolving the dynamic issues of zero-knowledge set membership proof in the blockchain
CN112184245A (zh) 一种跨区块链的交易身份确认方法及装置
Konkin et al. Zero knowledge proof and ZK-SNARK for private blockchains
CN116051269A (zh) 一种基于区块链和零知识证明的质押融资业务数据处理方法以及装置
CN114936853A (zh) 基于可信执行环境的链下交易协议与交易认证方法
CN115150178A (zh) 一种基于区块链的跨平台统一登录认证方法和装置
CN112765668B (zh) 一种零知识证明隐私保护方法、系统、存储介质、设备
CN113326527A (zh) 一种基于区块链的可信数字签名系统及方法
Tschirner et al. Moving Smart Contracts--A Privacy Preserving Method for Off-Chain Data Trust
Anisimov et al. Verifiable Arithmetic Computations Using Additively Homomorphic Tags

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
CP03 Change of name, title or address

Address after: 430070 No. 1 Lion Rock street, Hongshan District, Hubei, Wuhan

Patentee after: HUAZHONG AGRICULTURAL University

Country or region after: China

Patentee after: Wuhan Donghu Big Data Technology Co.,Ltd.

Address before: 430070 Huazhong Agricultural University, No.1 Shizishan, Hongshan District, Wuhan City, Hubei Province

Patentee before: HUAZHONG AGRICULTURAL University

Country or region before: China

Patentee before: WUHAN DONGHU BIG DATA TRADING CENTER Co.,Ltd.