CN114640468A - 一种基于在线离线属性加密的区块链隐私保护方法 - Google Patents
一种基于在线离线属性加密的区块链隐私保护方法 Download PDFInfo
- Publication number
- CN114640468A CN114640468A CN202210255503.8A CN202210255503A CN114640468A CN 114640468 A CN114640468 A CN 114640468A CN 202210255503 A CN202210255503 A CN 202210255503A CN 114640468 A CN114640468 A CN 114640468A
- Authority
- CN
- China
- Prior art keywords
- user
- ciphertext
- chain
- data
- offline
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 230000008569 process Effects 0.000 claims abstract description 10
- 238000013500 data storage Methods 0.000 claims abstract description 5
- 230000007246 mechanism Effects 0.000 claims description 38
- 238000012795 verification Methods 0.000 claims description 35
- 238000004422 calculation algorithm Methods 0.000 claims description 19
- 238000013507 mapping Methods 0.000 claims description 11
- 239000011159 matrix material Substances 0.000 claims description 10
- 239000012634 fragment Substances 0.000 claims description 9
- 238000006243 chemical reaction Methods 0.000 claims description 8
- 102100040468 Guanylate kinase Human genes 0.000 claims description 6
- 101100453821 Homo sapiens GUK1 gene Proteins 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 6
- 230000002457 bidirectional effect Effects 0.000 claims description 5
- 125000004122 cyclic group Chemical group 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 description 5
- 238000003745 diagnosis Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000013475 authorization Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000012946 outsourcing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/002—Countermeasures against attacks on cryptographic mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3236—Cryptographic 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 cryptographic hash functions
- H04L9/3239—Cryptographic 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 cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种基于在线离线属性加密的区块链隐私保护方法,所述保护方法涉及区块链系统和多个实体模块,所述实体模块包括有数据拥有者DO、数据使用者DU、群管理员GM、离线加密机构OEA、离线解密机构ODE、联盟链AC和共享链EST;所述区块链系统用于为实体模块提供分布式可信的数据存储云服务器系统,其实现方式包括以下过程,系统初始化阶段,用户注册阶段,加密阶段,群签名认证阶段,数据使用者解密阶段和追责阶段。采用本发明所述的保护方法,实现了对数据拥有者和验证者的双向追溯,增加了数控的安全性。
Description
技术领域
本发明涉及的是区块链技术领域,具体地说是一种基于在线离线属性加密的区块链隐私保护方法。
背景技术
区块链是基于P2P网络和密码学技术实现的一种可信的分布式数据存储技术,区块链作为一种去中心化的分布式记账系统,基于其不可抵赖性、共识性和透明性,以及不可篡改等特性,越来越受到人们的青睐,并被广泛应用在各种场景中。但是,传统的区块链在实现数据的透明化、可追踪化的同时,户的隐私安全受到了一定的威胁。如何在实现区块链透明可追踪的优点的同时保护用户隐私安全成为了一个研究热点。
针对区块链数据可追溯与用户隐私泄漏问题,为了保护用户隐私安全,经检索,参考文献1(“自适应安全的带关键字搜索的外包属性基加密方案”,郭丽峰,王倩丽,计算机应用,2021,41(11):3266-3273)和参考文献2(“支持离线/在线加密及可验证外包解密的CP-WABE方案”,李航,冯朝胜,刘帅南,刘彬,赵开强,电子学报,2020,48(11):2146-2153),都是通过在线/离线的方式,将部分加密计算和部分解密计算外包给离线机构,虽然减少了数据拥有者和数据使用者的计算开销,但是都不能很好的适用于区块链中。参考文献3(“基于群签名与属性加密的区块链可监管隐私保护方案”,李莉,杜慧娜,李涛,计算机工程:1-9[2022-01-04].DOI:10.19678/j.issn.1000-3428.0062464)提出了一种双链结构的区块链隐私保护方案,通过群签名技术和属性加密技术,有效的保护了用户的隐私信息。但该方案的只有一个验证者,不能有效防止验证者和用户的共谋,不能有效的保证信息的真实和透明,且不能很好的适用于计算资源有限的设备。参考文献4(“基于SM9算法可证明安全的区块链隐私保护方案”,杨亚涛,蔡居良,张筱薇,袁征,软件学报,2019,30(06):1692-1704.DOI:10.13328/j.cnki.jos.005745)提出了一种主要应用于联盟链的隐私保护方案,通过验证者群体(即联盟链)的设置,有效的保护了用户的隐私信息。但该方案主要应用于联盟链中,并不能很好的应用到双链结构中,且不能很好的适用于计算资源有限的设备。
结合参考文献1至4的特点,为了适用于计算资源有限的设备,在实现细粒度的用户隐私保护的同时,还可同时对数据的拥有者和签名者进行追责,提高数据的安全性,从而提出了一种基于在线离线属性的保护方案。
发明内容
本发明所要解决的技术问题是针对背景技术中存在的问题,为了保护用户隐私安全,从而提出一种隐私保护方法,通过在线离线属性加密算法,在减小用户计算开销的同时,实现细粒度的用户访问控制,通过双链设计及群签名验证,实现对用户和验证者的双向追溯,从而提高数据的安全性,具体地说是一种基于在线离线属性加密的区块链隐私保护方法。
为解决上述技术问题,本发明所采用的技术方案为:一种基于在线离线属性加密的区块链隐私保护方法,所述保护方法涉及区块链系统和多个实体模块,所述实体模块包括有数据拥有者DO、数据使用者DU、群管理员GM、离线加密机构OEA、离线解密机构ODE、联盟链AC和共享链EST;所述区块链系统用于为实体模块提供分布式可信的数据存储云服务器系统,其实现方式包括以下过程,系统初始化阶段,用户注册阶段,加密阶段,群签名认证阶段,数据使用者解密阶段和追责阶段。
进一步地,本发明所述的一种基于在线离线属性加密的区块链隐私保护方法,其中所述保护方法通过在线离线属性加密算法,利用区块链结合离线加密机构及离线解密机构,在减小用户的计算开销的同时,实现细粒度的用户访问控制,并通过共享链和联盟链的双链控制,防止了单点故障问题,防止用户和验证者之间出现共谋,同时,通过群签名验证,实现了对数据拥有者和验证者的双向追溯,增加了数控的安全性;其具体实现方式包括以下过程,数据拥有者DO将访问结构发送给离线加密机构ODE,离线加密机构基于时间周期树和访问结构计算中间密文并返回给数据拥有者DO,数据拥有者DO利用中间密文对数据进行加密,并将密文发送到区块链系统中的云服务器系统;数据使用者通过云服务器系统搜索关键字并得到相匹配的密文;而数据使用者DU将密文发送到离线解密机构ODE,离线解密机构ODE基于数据使用者DO的属性和密钥对密文进行部分解密,得到转换密文,并将转换密文返回给数据使用者DO;数据使用者DO利用转换密钥对转换密文进行解密,即得到数据。
进一步地,本发明所述的一种基于在线离线属性加密的区块链隐私保护方法,其中所述系统初始化阶段的具体实现方式为:
其中,G1,G2为素数p阶循环群,g为G1的生成元;e为双线性映射:G1×G1→G2;随机数α,a,β∈Zp;j表示属性个数;选择j个随机数hj∈G1;哈希函数H0:{0,1}→G1,H1:{0,1}→G2,H2:{0,1}→G2;
(2)群管理员GM初始化:群管理员运行系统建立算法GMSetup(PK)→(GMKey,GMPK,GMSK),输入公钥PK,系统生成每个群管理员GM的密钥GMKey,群公钥GMPK和群追踪密钥GMSK;
其中,i表示群管理员个数;γi表示i个随机数;g1为G1的生成元;随机数δ1,δ2∈Zp;u,v∈G1;
(3)联盟链AC初始化:ACSetup(PK,id)→(SignMK,SignPK),输入公钥PK,系统生成联盟链签名主密钥SignMK和各节点签名私钥SignPK;在联盟链中,分为主要节点和次要节点,主要节点负责区块链的维护工作并为新加入的区块分发id和签名私钥;
T=H1(id||hid,N)+ks;
其中,k表示联盟链中密钥生成中心AAk的个数;ks,kek为密钥生成中心的随机数,且ks,kek∈[1,N-1],kek被k个密钥生成中心分别持有,N为有限域;P2为G2的生成元,P1为G1的生成元;id为联盟链中各个次要节点的唯一标识,为主要节点颁发的一串随机数;hid表示隐藏。
进一步地,本发明所述的一种基于在线离线属性加密的区块链隐私保护方法,其中所述用户注册阶段的具体实现方式为:
(1)用户获取用户私钥片段UKeyi:GMKeyGen(PK)→UKeyi;用户向群管理员GM提出注册申请Apply,若群管理员GM同意后,i个群管理员将为用户分别生成相应的用户私钥片段UKeyi,并将用户私钥片段UKeyi发送给用户;而在区块链中,用户可细分为数据拥有者DO和数据使用者DU;
其中,随机数x∈Zp;
(2)用户计算:GMKeyGen(PK,S,UKeyi)→(UKey,IDU,CPA_SK);用户通过算法计算自己的用户私钥UKey、用户标识IDU,并向群管理员提交用户属性集AS={a1,a2,...,aj},获得属性加密密钥CPA_SK,离线验证密钥VK;
其中,vj为用户属性集AS中各属性的权重值;TK为属性加密的密文转换密钥;d,z,为随机数,且d,z,μ∈Zp。
进一步地,本发明所述的一种基于在线离线属性加密的区块链隐私保护方法,其中所述加密阶段的具体实现方式为:
(1)离线加密机构OEA进行离线加密:OEA_Enc(PK)→IC,数据拥有者DO选择一个秘密值s传给离线加密机构;离线加密机构通过秘密值s计算得到中间密文IC,并将中间密文IC发送给数据拥有者DO;
其中,秘密值s∈Zp;随机数ε,y∈Zp;
(2)数据拥有者DO进行加密:DO_Enc(PK,IC,VK,Message)→CT。数据拥有者DO通过访问结构AC和中间密文IC对明文Message进行最终加密,得到属性加密密文CT;
进一步地,本发明所述的一种基于在线离线属性加密的区块链隐私保护方法,其中所述群签名认证阶段的具体实现方式为:
(1)联盟链AC次节点A对密文CT进行签名:AC_Sign(CT,SignMK,SignPK)→(SignCT,DO_Verify)。联盟链次节点A对密文CT进行签名,令联盟链中的次节点A通过签名主密钥SignMK和次节点A的签名私钥SignPK进行签名运算,得到联盟链中该次节点对密文CT的群签名SignCT和来源验证值DO_Verify。
其中,随机数r1,r2∈[1,N-1];idA表示次节点A的id标识;τ,χ为随机数,且τ,χ∈Zp;选择随机的盲化因子b1,b2,b3,b4,b5∈Zp。
(2)联盟链AC验证阶段:AC_Verify(SignCT)→1/0。联盟链收到密文CT和相应的群签名SignCT,通过算法对群签名进行验证。若证明了该签名由联盟链中的某个节点产生的,则输出1,并;反之,则输出0,并丢弃密文CT;
计算:U1=e(SS·SignAG),U2=e(SS·SignPKA);
验证U1=U2,若相等,则进行下一步验证;若不相等,则丢弃密文CT;
根据收到的SignCT计算:
(3)上链阶段:采用UTXO的形式上链,次节点A将上次交易的编号Number和上次交易的哈希值HLast,和本次交易的群签名SignCT发送到联盟链主节点V中,主节点V生成新生区块New_block,并对区块中的信息进行验证,若验证通过,则并入共享链中,反之,丢弃区块;
在联盟链AC验证阶段,联盟链中各节点寻找共享链中与此新生区块关联的上一次交易信息,并对比新生区块的输入和上一次交易的输出值是否相同,若经过联盟链中大多数节点的同意后,主节点将该新生区块并入共享链中,反之,丢弃该新生区块。
进一步地,本发明所述的一种基于在线离线属性加密的区块链隐私保护方法,其中所述数据使用者解密阶段的具体实现方式为:
(1)离线解密机构ODA进行部分解密:ODA_Dec(AC,CT,TK)→PC,数据使用者DU将密文CT和密文转换密钥TK传给离线解密机构ODA;离线加密机构ODA首先检查数据使用者的属性集AS是否满足访问结构AC的要求,若满足,则对密文CT进行部分解密并将部分解密密文PC发送给数据使用者DU;反之,则输出0;
PC=(AC,MM,R·e(g,g)αs,gs,e(g,g)daθ/z,C1);
(2)数据使用者DU进行解密:DU_Dec(PC,CPA_SK)→R;数据使用者DU通过属性加密密钥CPA_SK对部分解密密文PC解密,得到随机密文参数R;
R=R·e(g,g)αs/(e(gs,gαhd)/e(g,g)das);
进一步地,本发明所述的一种基于在线离线属性加密的区块链隐私保护方法,其中所述追责阶段的具体实现方式为:
(1)追责数据拥有者DO:DO_Accountability(DO_Verify,GMSK)→idDO。若群管理员投票通过要求追责数据拥有者后,则可通过来源验证值DO_Verify和群追踪密钥GMSK计算并获取数据拥有者的id;
(2)追责签名者A:A_Accountability(SignCT,SignPK)→idA;在上链过程中,通过采用群签名验证的方法和UTXO的上链方式,若群管理员投票通过要求追责数据拥有者后,主节点可通过对本次交易进行逐链溯源的方式,找到首发地址进行追责;通过群签名SignCT和签名私钥SignP,提取出签名者A的idA哈希值HID,主节点逐一对比各个子节点的id对应的HID值即可找到签名者的idA。
采用本发明所述的一种基于在线离线属性加密的区块链隐私保护方法,与现有技术相比,其有益效果在于:通过在线离线属性加密算法,利用区块链结合离线加密机构及离线解密机构,在减小用户的计算开销的同时,实现细粒度的用户访问控制,适用于计算资源有限的设备,并通过共享链和联盟链的双链控制,防止了单点故障问题,防止用户和验证者之间出现共谋,同时,通过群签名验证,实现了对数据拥有者和验证者的双向追溯,增加了数控的安全性。
附图说明
下面结合附图对本发明作进一步详细说明。
图1为本发明所述访问结构控制树和LSSS矩阵对应结构示意图;
图2为本发明所述实体模块的结构模型示意图;
图3为本发明所述保护方法的流程示意框图。
具体实施方式
为进一步说明本发明的构思,下面结合附图和实施例对本发明的实施方式作进一步详细描述。以下实施例的详细描述和附图用于示例性地说明本发明的原理,但不能用来限制本发明的范围,即本发明不限于所描述的实施例。
本发明所述的一种基于在线离线属性加密的区块链隐私保护方法,首先需要设计一个应用场景,假设存在一个基于云服务平台医患交流平台,用户B是一名网上注册的患者,想在云服务平台上咨询医生并获取治疗建议,但用户B希望能在获取诊疗单的同时,不泄露自己的诊疗信息,能有一个承诺保证该诊疗单来自于正规的注册医生,能在后期发生医疗事故时追责到诊疗的医生和验证者。采用传统的方案并不能很好的应用于以上场景,为了解决以上问题,从而提出一种基于在线离线属性加密的区块链隐私保护方案,该方案适用于计算资源有限的设备,在实现了细粒度的用户隐私保护的同时,可同时对数据的拥有者和签名者进行追责。同时,为便于理解本发明技术方案,会涉及到访问结构及双线性映射的相关知识,下面对访问结构及双线性映射的作相关说明:
访问结构:假设存在一个非空的用户属性集A,A={A1,A2,...,An};存在一个非空的访问控制集S,S={S1,S2,...,Sk};若A和S满足则称集合A为访问控制S下的授权集合;反之,则称集合A为访问控制S下的未授权集合。在CP-ABE中,若A为授权集合,存在一个矩阵AA,存在一个函数ρ(x),使得矩阵AA中的每一行都能与S中的属性一一映射,则矩阵AA称为LSSS矩阵,且LSSS矩阵的行数等于访问控制树上的叶子节点个数,即属性的个数。如图1所示的访问结构控制树和LSSS矩阵对应图。
双线性映射:设G1,G2,G3为素数p阶循环群;存在一个映射关系e:G1×G2→G3,若e为双线性对,则满足:
B、非退化性:存在一个G1,G2,使得e(G1,G2)≠1;
C、可计算性:存在一个有效的算法计算e(G1,G2)。
针对上述应用场景,在实现细粒度的用户隐私保护的同时,还可同时对数据的拥有者和签名者进行追责,实现对用户和验证者进行双向追溯,提高数据的安全性,从而提出一种基于在线离线属性加密的区块链隐私保护方法,该保护方法的详细设计方案为:
一种基于在线离线属性加密的区块链隐私保护方法,所述保护方法涉及区块链系统和多个实体模块,其结构模型如图2所示,所述实体模块包括有数据拥有者DO、数据使用者DU、群管理员GM、离线加密机构OEA、离线解密机构ODE、联盟链AC和共享链EST;所述区块链系统用于为实体模块提供分布式可信的数据存储云服务器系统,其实现方式包括以下过程,系统初始化阶段,用户注册阶段,加密阶段,群签名认证阶段,数据使用者解密阶段和追责阶段;具体的操作流程如图3所示,具体包括以下过程,数据拥有者DO将访问结构发送给离线加密机构ODE,离线加密机构基于时间周期树和访问结构计算中间密文并返回给数据拥有者DO,数据拥有者DO利用中间密文对数据进行加密,并将密文发送到区块链系统中的云服务器系统;数据使用者通过云服务器系统搜索关键字并得到相匹配的密文;而数据使用者DU将密文发送到离线解密机构ODE,离线解密机构ODE基于数据使用者DO的属性和密钥对密文进行部分解密,得到转换密文,并将转换密文返回给数据使用者DO;数据使用者DO利用转换密钥对转换密文进行解密,即得到数据。
1、系统初始化阶段:
其中,G1,G2为素数p阶循环群,g为G1的生成元;e为双线性映射:G1×G1→G2;随机数α,a,β∈Zp;j表示属性个数;选择j个随机数hj∈G1;哈希函数H0:{0,1}→G1,H1:{0,1}→G2,H2:{0,1}→G2;
(2)其次是对群管理员GM初始化:群管理员运行系统建立算法GMSetup(PK)→(GMKey,GMPK,GMSK),输入公钥PK,系统生成每个群管理员GM的密钥GMKey,群公钥GMPK和群追踪密钥GMSK;
其中,i表示群管理员个数;γi表示i个随机数;g1为G1的生成元;随机数δ1,δ2∈Zp;u,v∈G1;
(3)最后是对联盟链AC初始化:ACSetup(PK,id)→(SignMK,SignPK),输入公钥PK,系统生成联盟链签名主密钥SignMK和各节点签名私钥SignPK;在联盟链中,分为主要节点和次要节点,主要节点负责区块链的维护工作并为新加入的区块分发id和签名私钥;
T=H1(id||hid,N)+ks;
其中,k表示联盟链中密钥生成中心AAk的个数;ks,kek为密钥生成中心的随机数,且ks,kek∈[1,N-1],kek被k个密钥生成中心分别持有,N为有限域;P2为G2的生成元,P1为G1的生成元;id为联盟链中各个次要节点的唯一标识,为主要节点颁发的一串随机数;hid表示隐藏。
2、用户注册阶段:
(1)用户获取用户私钥片段UKeyi:GMKeyGen(PK)→UKeyi;用户向群管理员GM提出注册申请Apply,若群管理员GM同意后,i个群管理员将为用户分别生成相应的用户私钥片段UKeyi,并将用户私钥片段UKeyi发送给用户;而在区块链中,用户可细分为数据拥有者DO和数据使用者DU;
其中,随机数x∈Zp;
(2)用户计算:GMKeyGen(PK,S,UKeyi)→(UKey,IDU,CPA_SK);用户通过算法计算自己的用户私钥UKey、用户标识IDU,并向群管理员提交用户属性集AS={a1,a2,...,aj},获得属性加密密钥CPA_SK,离线验证密钥VK;
其中,vj为用户属性集AS中各属性的权重值;TK为属性加密的密文转换密钥;d,z,为随机数,且d,z,μ∈Zp。
3、加密阶段:
(1)离线加密机构OEA进行离线加密:OEA_Enc(PK)→IC,数据拥有者DO选择一个秘密值s传给离线加密机构;离线加密机构通过秘密值s计算得到中间密文IC,并将中间密文IC发送给数据拥有者DO;
其中,秘密值s∈Zp;随机数ε,y∈Zp;
(2)数据拥有者DO进行加密:DO_Enc(PK,IC,VK,Message)→CT。数据拥有者DO通过访问结构AC和中间密文IC对明文Message进行最终加密,得到属性加密密文CT;
C1=gμ/(β+μ),gβ·gμ,H1(e(g,g)μ,R·H1(Message),MM=H1(Message)⊕H1(R);
4、群签名认证阶段:
(1)联盟链AC次节点A对密文CT进行签名:AC_Sign(CT,SignMK,SignPK)→(SignCT,DO_Verify)。联盟链次节点A对密文CT进行签名,令联盟链中的次节点A通过签名主密钥SignMK和次节点A的签名私钥SignPK进行签名运算,得到联盟链中该次节点对密文CT的群签名SignCT和来源验证值DO_Verify。
其中,随机数r1,r2∈[1,N-1];idA表示次节点A的id标识;τ,χ为随机数,且τ,χ∈Zp;选择随机的盲化因子b1,b2,b3,b4,b5∈Zp。
(2)联盟链AC验证阶段:AC_Verify(SignCT)→1/0。联盟链收到密文CT和相应的群签名SignCT,通过算法对群签名进行验证。若证明了该签名由联盟链中的某个节点产生的,则输出1,并;反之,则输出0,并丢弃密文CT;
计算:U1=e(SS·SignAG),U2=e(SS·SignPKA);
验证U1=U2,若相等,则进行下一步验证;若不相等,则丢弃密文CT;
根据收到的SignCT计算:
(3)上链阶段:采用UTXO的形式上链,次节点A将上次交易的编号Number和上次交易的哈希值HLast,和本次交易的群签名SignCT发送到联盟链主节点V中,主节点V生成新生区块New_block,并对区块中的信息进行验证,若验证通过,则并入共享链中,反之,丢弃区块;
在联盟链AC验证阶段,联盟链中各节点寻找共享链中与此新生区块关联的上一次交易信息,并对比新生区块的输入和上一次交易的输出值是否相同,若经过联盟链中大多数节点的同意后,主节点将该新生区块并入共享链中,反之,丢弃该新生区块。
5、数据使用者解密阶段:
(1)离线解密机构ODA进行部分解密:ODA_Dec(AC,CT,TK)→PC,数据使用者DU将密文CT和密文转换密钥TK传给离线解密机构ODA;离线加密机构ODA首先检查数据使用者的属性集AS是否满足访问结构AC的要求,若满足,则对密文CT进行部分解密并将部分解密密文PC发送给数据使用者DU;反之,则输出0;
PC=(AC,MM,R·e(g,g)αs,gs,e(g,g)daθ/z,C1);
(2)数据使用者DU进行解密:DU_Dec(PC,CPA_SK)→R;数据使用者DU通过属性加密密钥CPA_SK对部分解密密文PC解密,得到随机密文参数R;
R=R·e(g,g)αs/(e(gs,gαhd)/e(g,g)das);
6、追责阶段:
(1)追责数据拥有者DO:DO_Accountability(DO_Verify,GMSK)→idDO。若群管理员投票通过要求追责数据拥有者后,则可通过来源验证值DO_Verify和群追踪密钥GMSK计算并获取数据拥有者的id;
(2)追责签名者A:A_Accountability(SignCT,SignPK)→idA;在上链过程中,通过采用群签名验证的方法和UTXO的上链方式,若群管理员投票通过要求追责数据拥有者后,主节点可通过对本次交易进行逐链溯源的方式,找到首发地址进行追责;通过群签名SignCT和签名私钥SignP,提取出签名者A的idA哈希值HID,主节点逐一对比各个子节点的id对应的HID值即可找到签名者的idA。
采用本发明所述的区块链隐私保护方法,通过在线离线属性加密算法,利用区块链结合离线加密机构及离线解密机构,在减小用户的计算开销的同时,实现细粒度的用户访问控制,适用于计算资源有限的设备,并通过共享链和联盟链的双链控制,防止了单点故障问题,防止用户和验证者之间出现共谋,同时,通过群签名验证,实现了对数据拥有者和验证者的双向追溯,增加了数控的安全性。
以上所述仅为本发明的优选实施方式,并不用以限制本发明,对于本领域的技术人员来说,可以有各种更改和变化,凡利用本发明所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种基于在线离线属性加密的区块链隐私保护方法,其特征在于:所述保护方法涉及区块链系统和多个实体模块,所述实体模块包括有数据拥有者DO、数据使用者DU、群管理员GM、离线加密机构OEA、离线解密机构ODE、联盟链AC和共享链EST;所述区块链系统用于为实体模块提供分布式可信的数据存储云服务器系统,其实现方式包括以下过程,系统初始化阶段,用户注册阶段,加密阶段,群签名认证阶段,数据使用者解密阶段和追责阶段。
2.根据权利要求1所述的一种基于在线离线属性加密的区块链隐私保护方法,其特征在于:所述保护方法通过在线离线属性加密算法,利用区块链结合离线加密机构及离线解密机构,在减小用户的计算开销的同时,实现细粒度的用户访问控制,并通过共享链和联盟链的双链控制,防止了单点故障问题,防止用户和验证者之间出现共谋,同时,通过群签名验证,实现了对数据拥有者和验证者的双向追溯,增加了数控的安全性;其具体实现方式包括以下过程,数据拥有者DO将访问结构发送给离线加密机构ODE,离线加密机构基于时间周期树和访问结构计算中间密文并返回给数据拥有者DO,数据拥有者DO利用中间密文对数据进行加密,并将密文发送到区块链系统中的云服务器系统;数据使用者通过云服务器系统搜索关键字并得到相匹配的密文;而数据使用者DU将密文发送到离线解密机构ODE,离线解密机构ODE基于数据使用者DO的属性和密钥对密文进行部分解密,得到转换密文,并将转换密文返回给数据使用者DO;数据使用者DO利用转换密钥对转换密文进行解密,即得到数据。
3.根据权利要求1所述的一种基于在线离线属性加密的区块链隐私保护方法,其特征在于,所述系统初始化阶段的具体实现方式为:
其中,G1,G2为素数p阶循环群,g为G1的生成元;e为双线性映射:G1×G1→G2;随机数α,a,β∈Zp;j表示属性个数;选择j个随机数hj∈G1;哈希函数H0:{0,1}→G1,H1:{0,1}→G2,H2:{0,1}→G2;
(2)群管理员GM初始化:群管理员运行系统建立算法GMSetup(PK)→(GMKey,GMPK,GMSK),输入公钥PK,系统生成每个群管理员GM的密钥GMKey,群公钥GMPK和群追踪密钥GMSK;
其中,i表示群管理员个数;γi表示i个随机数;g1为G1的生成元;随机数δ1,δ2∈Zp;u,v∈G1;
(3)联盟链AC初始化:ACSetup(PK,id)→(SignMK,SignPK),输入公钥PK,系统生成联盟链签名主密钥SignMK和各节点签名私钥SignPK;在联盟链中,分为主要节点和次要节点,主要节点负责区块链的维护工作并为新加入的区块分发id和签名私钥;
其中,k表示联盟链中密钥生成中心AAk的个数;ks,kek为密钥生成中心的随机数,且ks,kek∈[1,N-1],kek被k个密钥生成中心分别持有,N为有限域;P2为G2的生成元,P1为G1的生成元;id为联盟链中各个次要节点的唯一标识,为主要节点颁发的一串随机数;hid表示隐藏。
4.根据权利要求1所述的一种基于在线离线属性加密的区块链隐私保护方法,其特征在于,所述用户注册阶段的具体实现方式为:
(1)用户获取用户私钥片段UKeyi:GMKeyGen(PK)→UKeyi;用户向群管理员GM提出注册申请Apply,若群管理员GM同意后,i个群管理员将为用户分别生成相应的用户私钥片段UKeyi,并将用户私钥片段UKeyi发送给用户;而在区块链中,用户可细分为数据拥有者DO和数据使用者DU;
其中,随机数x∈Zp;
(2)用户计算:GMKeyGen(PK,S,UKeyi)→(UKey,IDU,CPA_SK);用户通过算法计算自己的用户私钥UKey、用户标识IDU,并向群管理员提交用户属性集AS={a1,a2,...,aj},获得属性加密密钥CPA_SK,离线验证密钥VK;
VK=(g1/(β+μ),μ);
其中,vj为用户属性集AS中各属性的权重值;TK为属性加密的密文转换密钥;d,z,为随机数,且d,z,μ∈Zp。
5.根据权利要求1所述的一种基于在线离线属性加密的区块链隐私保护方法,其特征在于,所述加密阶段的具体实现方式为:
(1)离线加密机构OEA进行离线加密:OEA_Enc(PK)→IC,数据拥有者DO选择一个秘密值s传给离线加密机构;离线加密机构通过秘密值s计算得到中间密文IC,并将中间密文IC发送给数据拥有者DO;
其中,秘密值s∈Zp;随机数ε,y∈Zp;
(2)数据拥有者DO进行加密:DO_Enc(PK,IC,VK,Message)→CT;
数据拥有者DO通过访问结构AC和中间密文IC对明文Message进行最终加密,得到属性加密密文CT;
6.根据权利要求1所述的一种基于在线离线属性加密的区块链隐私保护方法,其特征在于,所述群签名认证阶段的具体实现方式为:
(1)联盟链AC次节点A对密文CT进行签名:AC_Sign(CT,SignMK,SignPK)→(SignCT,DO_Verify);
联盟链次节点A对密文CT进行签名,令联盟链中的次节点A通过签名主密钥SignMK和次节点A的签名私钥SignPK进行签名运算,得到联盟链中该次节点对密文CT的群签名SignCT和来源验证值DO_Verify;
其中,随机数r1,r2∈[1,N-1];idA表示次节点A的id标识;τ,χ为随机数,且τ,χ∈Zp;
选择随机的盲化因子b1,b2,b3,b4,b5∈Zp;
(2)联盟链AC验证阶段:AC_Verify(SignCT)→1/0;
联盟链收到密文CT和相应的群签名SignCT,通过算法对群签名进行验证;
若证明了该签名由联盟链中的某个节点产生的,则输出1,并;反之,则输出0,并丢弃密文CT;
计算:U1=e(SS·SignAG),U2=e(SS·SignPKA);
验证U1=U2,若相等,则进行下一步验证;若不相等,则丢弃密文CT;
根据收到的SignCT计算:
(3)上链阶段:采用UTXO的形式上链,次节点A将上次交易的编号Number和上次交易的哈希值HLast,和本次交易的群签名SignCT发送到联盟链主节点V中,主节点V生成新生区块New_block,并对区块中的信息进行验证,若验证通过,则并入共享链中,反之,丢弃区块;
在联盟链AC验证阶段,联盟链中各节点寻找共享链中与此新生区块关联的上一次交易信息,并对比新生区块的输入和上一次交易的输出值是否相同,若经过联盟链中大多数节点的同意后,主节点将该新生区块并入共享链中,反之,丢弃该新生区块。
7.根据权利要求1所述的一种基于在线离线属性加密的区块链隐私保护方法,其特征在于,所述数据使用者解密阶段的具体实现方式为:
(1)离线解密机构ODA进行部分解密:ODA_Dec(AC,CT,TK)→PC,数据使用者DU将密文CT和密文转换密钥TK传给离线解密机构ODA;离线加密机构ODA首先检查数据使用者的属性集AS是否满足访问结构AC的要求,若满足,则对密文CT进行部分解密并将部分解密密文PC发送给数据使用者DU;反之,则输出0;
PC=(AC,MM,R·e(g,g)αs,gs,e(g,g)daθ/z,C1);
(2)数据使用者DU进行解密:DU_Dec(PC,CPA_SK)→R;数据使用者DU通过属性加密密钥CPA_SK对部分解密密文PC解密,得到随机密文参数R;
R=R·e(g,g)αs/(e(gs,gαhd)/e(g,g)das);
8.根据权利要求1所述的一种基于在线离线属性加密的区块链隐私保护方法,其特征在于,所述追责阶段的具体实现方式为:
(1)追责数据拥有者DO:DO_Accountability(DO_Verify,GMSK)→idDO;
若群管理员投票通过要求追责数据拥有者后,则可通过来源验证值DO_Verify和群追踪密钥GMSK计算并获取数据拥有者的id;
(2)追责签名者A:A_Accountability(SignCT,SignPK)→idA;在上链过程中,通过采用群签名验证的方法和UTXO的上链方式,若群管理员投票通过要求追责数据拥有者后,主节点可通过对本次交易进行逐链溯源的方式,找到首发地址进行追责;通过群签名SignCT和签名私钥SignP,提取出签名者A的idA哈希值HID,主节点逐一对比各个子节点的id对应的HID值即可找到签名者的idA。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202210255503.8A CN114640468B (zh) | 2022-03-16 | 2022-03-16 | 一种基于在线离线属性加密的区块链隐私保护方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202210255503.8A CN114640468B (zh) | 2022-03-16 | 2022-03-16 | 一种基于在线离线属性加密的区块链隐私保护方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN114640468A true CN114640468A (zh) | 2022-06-17 |
| CN114640468B CN114640468B (zh) | 2024-01-26 |
Family
ID=81948850
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202210255503.8A Active CN114640468B (zh) | 2022-03-16 | 2022-03-16 | 一种基于在线离线属性加密的区块链隐私保护方法 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN114640468B (zh) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115242398A (zh) * | 2022-06-24 | 2022-10-25 | 蚂蚁区块链科技(上海)有限公司 | 基于区块链的知识问答的系统、方法和装置 |
| CN119728172A (zh) * | 2024-12-02 | 2025-03-28 | 西北师范大学 | 加密方法、解密方法及系统 |
| CN119892452A (zh) * | 2025-01-10 | 2025-04-25 | 天津科技大学 | 一种基于密文策略属性基加密的电力数据隐私安全保护系统、方法和应用 |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN106503994A (zh) * | 2016-11-02 | 2017-03-15 | 西安电子科技大学 | 基于属性加密的区块链隐私数据访问控制方法 |
| US20200244634A1 (en) * | 2019-01-29 | 2020-07-30 | Mastercard International Incorporated | Method and system for general data protection compliance via blockchain |
| CN113489733A (zh) * | 2021-07-13 | 2021-10-08 | 郑州轻工业大学 | 基于区块链的内容中心网络隐私保护方法 |
| CN113595971A (zh) * | 2021-06-02 | 2021-11-02 | 云南财经大学 | 一种基于区块链的分布式数据安全共享方法、系统和计算机可读介质 |
| CN113836222A (zh) * | 2021-08-24 | 2021-12-24 | 北京理工大学 | 一种基于区块链的可隐藏策略和属性的访问控制方法 |
| CN114065265A (zh) * | 2021-11-29 | 2022-02-18 | 重庆邮电大学 | 基于区块链技术的细粒度云存储访问控制方法、系统及设备 |
-
2022
- 2022-03-16 CN CN202210255503.8A patent/CN114640468B/zh active Active
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN106503994A (zh) * | 2016-11-02 | 2017-03-15 | 西安电子科技大学 | 基于属性加密的区块链隐私数据访问控制方法 |
| US20200244634A1 (en) * | 2019-01-29 | 2020-07-30 | Mastercard International Incorporated | Method and system for general data protection compliance via blockchain |
| CN113595971A (zh) * | 2021-06-02 | 2021-11-02 | 云南财经大学 | 一种基于区块链的分布式数据安全共享方法、系统和计算机可读介质 |
| CN113489733A (zh) * | 2021-07-13 | 2021-10-08 | 郑州轻工业大学 | 基于区块链的内容中心网络隐私保护方法 |
| CN113836222A (zh) * | 2021-08-24 | 2021-12-24 | 北京理工大学 | 一种基于区块链的可隐藏策略和属性的访问控制方法 |
| CN114065265A (zh) * | 2021-11-29 | 2022-02-18 | 重庆邮电大学 | 基于区块链技术的细粒度云存储访问控制方法、系统及设备 |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115242398A (zh) * | 2022-06-24 | 2022-10-25 | 蚂蚁区块链科技(上海)有限公司 | 基于区块链的知识问答的系统、方法和装置 |
| CN115242398B (zh) * | 2022-06-24 | 2025-02-25 | 蚂蚁区块链科技(上海)有限公司 | 基于区块链的知识问答的系统、方法和装置 |
| CN119728172A (zh) * | 2024-12-02 | 2025-03-28 | 西北师范大学 | 加密方法、解密方法及系统 |
| CN119892452A (zh) * | 2025-01-10 | 2025-04-25 | 天津科技大学 | 一种基于密文策略属性基加密的电力数据隐私安全保护系统、方法和应用 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN114640468B (zh) | 2024-01-26 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN110493347B (zh) | 基于区块链的大规模云存储中数据访问控制方法及系统 | |
| Zhu et al. | TBAC: Transaction-based access control on blockchain for resource sharing with cryptographically decentralized authorization | |
| CN114650137B (zh) | 一种基于区块链的支持策略隐藏的解密外包方法及系统 | |
| CN114036539B (zh) | 基于区块链的安全可审计物联网数据共享系统及方法 | |
| CN106487506B (zh) | 一种支持预加密和外包解密的多机构kp-abe方法 | |
| CN113434875B (zh) | 一种基于区块链的轻量化访问方法及系统 | |
| CN104601605A (zh) | 云存储中基于变色龙哈希函数的高效隐私保护审计方案 | |
| JPH1041932A (ja) | 暗号キー回復方法及び装置 | |
| CN114640468B (zh) | 一种基于在线离线属性加密的区块链隐私保护方法 | |
| CN116418560A (zh) | 一种基于区块链智能合约的线上快速身份认证系统及方法 | |
| EP4144040A1 (en) | Generating shared private keys | |
| CN111274594B (zh) | 一种基于区块链的安全大数据隐私保护共享方法 | |
| US12567975B2 (en) | Dynamically traceable privacy-preserving distributed threshold signature system and method | |
| WO2023016729A1 (en) | Generating digital signature shares | |
| CN119316156B (zh) | 具有隐私保护和访问控制的分布式数字身份认证方法及系统 | |
| CN118133311A (zh) | 一种基于改进群签名的联邦学习隐私保护方法 | |
| CN110519040B (zh) | 基于身份的抗量子计算数字签名方法和系统 | |
| CN113868450B (zh) | 一种基于区块链的遥感影像安全检索方法 | |
| CN119519987B (zh) | 一种具有前后向安全性的可搜索加密方法及系统 | |
| CN114629640A (zh) | 一种解决密钥托管问题的白盒可追责属性基加密系统及其方法 | |
| Lin et al. | Leveraging dual‐blockchain collaboration for logistics supply chain supervision | |
| Liu et al. | Distributed Digital Identity Parking Authentication System Based on Blockchain | |
| CN118659877A (zh) | 一种面向边缘控制器的属性基加密方法和系统 | |
| Akshay et al. | Dynamic list based data integrity verification in cloud environment | |
| Wu et al. | Verified CSAC-based CP-ABE access control of cloud storage in SWIM |
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 |






























































