CN115913677A - 一种基于区块链的协作边缘存储数据隐私保护系统及方法 - Google Patents

一种基于区块链的协作边缘存储数据隐私保护系统及方法 Download PDF

Info

Publication number
CN115913677A
CN115913677A CN202211377086.0A CN202211377086A CN115913677A CN 115913677 A CN115913677 A CN 115913677A CN 202211377086 A CN202211377086 A CN 202211377086A CN 115913677 A CN115913677 A CN 115913677A
Authority
CN
China
Prior art keywords
data
edge
storage
ciphertext
server
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.)
Pending
Application number
CN202211377086.0A
Other languages
English (en)
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.)
Southeast University
Original Assignee
Southeast 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 Southeast University filed Critical Southeast University
Priority to CN202211377086.0A priority Critical patent/CN115913677A/zh
Publication of CN115913677A publication Critical patent/CN115913677A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明公开基于区块链的协作边缘存储数据隐私保护系统及方法,其中包括协作边缘存储系统初始化、数据加密存储、数据解密获取及其存储与获取过程的区块链存证,本发明可保证存储在协作边缘服务器上数据的机密性并提供所涉及过程的可信存证。所设计的基于代理服务器的密文策略加密算法,能保证存储在边缘服务器上数据的机密性,且提供对数据访问的灵活控制;所设计的区块链方法,可以初步认证边缘服务器的身份,并将数据存储和获取等过程记录到区块链账本中,实现对于协作边缘存储中事件和责任的可信追溯。

Description

一种基于区块链的协作边缘存储数据隐私保护系统及方法
技术领域
本发明涉及数据加密和区块链技术,具体涉及一种基于区块链的协作边缘存储数据隐私保护系统及方法。
背景技术
作为近年来信息领域迅速发展的新型技术之一,云计算将众多的计算机资源协调在一起,使用户通过网络可以获取到大量的资源从而被广泛应用于各个行业。同时,云计算也促进了物联网设备及其应用的快速发展,物联网设备可以卸载复杂的数据和计算任务到具有充足资源的云服务器来解决物联网设备自身处理能力受限的难题。但是,由于物联网设备和远端云服务器交互的延迟具有不确定性,使得云计算模式对于迟延敏感型物联网应用的低时延需求无法满足。
为解决云计算所带来的时延挑战,边缘计算模式被提出。边缘计算作为在网络边缘执行计算的一种新型计算方式,通过在靠近用户的网络边缘侧搭建边缘服务器进行数据计算和存储,从而减少大量对云服务器的请求,同时还可以就近为用户提供更为便捷的服务。区别于云计算的概念,边缘计算将计算和存储资源下放,为终端用户提供更快捷的服务,同时大幅减少由于大量物联网数据传递到云所带来的网络带宽、服务器计算和存储压力。但每个单独的边缘计算服务器物理尺寸受限,其处理能力和存储空间有限。随着物联网节点卸载数据和计算任务的增加,边缘计算服务器已无法高效地单独完成其服务用户所卸载的任务。为解决以上问题,有学者提出云计算和边缘计算之间的协同方案,实现在云服务器和边缘服务器间任务的最佳拆分和资源的最优分配,同时还有学者研究如何实现多个边缘服务器之间的高效协作,协作边缘计算和存储的概念应运而生。协作边缘计算和存储可以通过将端设备卸载的任务和数据按照特定的策略拆分,并按照当前网络中边缘服务器所拥有资源进行合理分配,从而有效地缩短任务完成时间,达到对边缘服务器资源的高效利用。
在协同边缘计算和存储为物联网应用带来许多优势的同时,也面临着很多安全挑战。首先,攻击者可能利用恶意的边缘设备和边缘服务器伪装成合法的节点接入网络,然后对在边缘网络中传输的信息进行秘密存储、非法篡改甚至是更加严重的攻击。其次,在相互协作的边缘服务器上执行的计算任务和存储的数据会涉及到数据隐私,如果不施加数据保护措施,即使接入网络的端设备和服务器是合法的,但它们也可能因为获取私利或者其他原因对存储的隐私数据进行非法读取。同时在不同位置分散部署的边缘服务器在协助端设备存储数据或者响应其他端设备的访问请求时,需要将相关信息以可信任、不可篡改的方式记录,否则无法实现在安全事件发生后的证据提供和责任追溯。
发明内容
发明目的:本发明的目的在于解决现有技术中存在的不足,提供一种基于区块链的协作边缘存储数据隐私保护系统及方法。
技术方案:本发明提供了一种基于区块链的协作边缘存储数据隐私保护系统,包括可信权威、数据所有者、数据请求者、协作边缘卸载者、协作边缘存储者、加密代理服务器、解密代理服务器及边缘服务器所构成的区块链网络;所述可信权威负责处理用户注册,生成系统参数及每个系统用户对应的私钥SKR;所述数据所有者DO是生成数据的端设备,提供数据并制定对该数据的访问控制策略;所述数据请求者DR是需要访问数据的端设备;所述协作边缘卸载者ES1是指单个边缘服务器,其由于自身存储能力不足,对于用户卸载的数据无法及时处理,通过对等卸载方法将数据拆分后卸载到其他边缘服务器上;所述协作边缘存储者是指在边缘协作存储过程中,利用自身存储资源参与存储的所有边缘服务器;所述加密代理服务器PSenc是帮助执行属性基加密过程中复杂运算部分的代理云服务器;所述解密代理服务器PSdec帮助执行属性基解密过程中复杂运算部分的代理云服务器;所述区块链网络由所有参与协作边缘存储的边缘服务器{ES1,ES2,...,ESk}所构成。
具体基于区块链的协作边缘存储隐私保护方法包括以下步骤:
步骤S1、系统初始化与私钥生成
可信权威执行密文策略属性基加密密钥生成算法,以全体属性构成的集合为输入,选择合适参数的双线性群和元素,生成系统公钥PK和主密钥MK,并将系统公钥PK发送给数据所有者DO;数据请求者DR在加入系统后向可信权威提供自身所具有的属性并注册,可信权威执行私钥生成算法,以数据请求者DR所具有的属性集合为输入,生成数据请求者的私钥SKR返回给数据请求者。步骤S2、数据协作存储与存证
数据所有者DO对数据M执行对称加密,与加密代理服务器PSenc一起对对称加密密钥ck执行密文策略属性加密生成密文,并将密文的哈希签名与密文一起发送给邻近的边缘服务器,边缘服务器根据自身与其他边缘服务器的存储能力执行对等卸载策略判断是否需要进行协作存储,同时在区块链中记录数据存储情况。
步骤S3、数据访问存证与获取
数据请求者DR向边缘服务器构成的区块链网络请求数据,区块链记录数据请求者的访问记录并返回数据密文CT,数据请求者在获取到密文CT后与解密代理服务器共同完成对密文的验证与解密操作,最终获取到数据明文M。
进一步地,所述步骤S1中系统初始化的具体步骤:
S1.1、系统初始化:以系统全体属性集U={Attr1,Attr2,...,Attrn}作为输入,可信权威根据密钥生成算法生成对应的系统公钥PK和主密钥MK;其中系统公钥PK为公共参数,主密钥MK由可信权威秘密存储;
S1.2、私钥生成:数据请求者DR向可信权威注册时提供自身所具有的属性集S={RAttr1,RAttr2,...,RAttrm},其中
Figure BDA0003927137180000031
可信权威以S为输入,根据密文策略属性加密中的私钥生成算法生成满足该属性集S的私钥SKR并返回给数据请求者DR;
进一步地,所述步骤S2的详细过程为:
S2.1、数据所有者对其数据M使用对称密钥ck执行对称加密生成数据密文C=Enc(ck,M);
S2.2、数据所有者制定访问数据M的访问控制策略T=[T1,T2,....,Tt],其中T中的每个值Ti都为U取值的子集,以系统公钥PK、T、对称密钥ck及数据密文C为输入,加密代理服务器PSenc和数据所有者DO使用密文策略属性基加密技术对对称密钥ck执行属性加密操作生成最终的密文数据CT=CP_ABE_Enc(PK,T,ck,C);
S2.3、计算出密文数据CT后,数据所有者计算密文数据与相关信息的哈希值Hash(CT||DO.Identity||AddressDO||t0)并使用自身私钥签名后得到SigDO(Hash(CT||DO.Identity||AddressDO||t0)),其中DO.Identity是数据所有者的身份标识,AddressDO表示数据所有者DO的地址,t0表示计算密文数据哈希的时间,然后数据所有者将{CT,DO.Identity,AddressDO,t0,SigDO(Hash(CT||DO.Identity||AddressDO||t0))}发送给邻近的边缘服务器ES1存储;
S2.4、边缘服务器ES1执行存储资源分配算法,以密文数据大小和各个边缘计算服务器的存储能力为输入判断是否需要执行对等卸载让多个边缘服务器协作完成数据的存储以达到最优的资源分配
Figure BDA0003927137180000041
其中SizeCT表示密文数据大小,{SCES1,SCES2,...,SCESr}表示构成区块链网络的协作边缘存储服务器各自的存储能力参数,如果结果为true,则该数据需要被分割为多个分片分别存储在多个边缘服务器上,并将密文数据CT相关的卸载和存储信息(IDCT,'storage',DO.Identity,AddressDO,t0,SigDO(Hash(CT||DO.Identity||AddressDO||t0)),'offload',s)记录到区块链帐本中,其中s表示分片的数量;如果结果为false,则该数据将直接存储在边缘服务器ES1,并将密文数据CT相关存储信息(IDCT,'storage',DO.Identity,AddressDO,t0,SigDO(Hash(CT||DO.Identity||AddressDO||t0)),'no-offload',1)记录到区块链。
S2.5、需要边缘服务器ES1执行对等卸载策略进行协作存储时,系统将执行对等卸载策略生成s个密文分片{CTshard1,CTshard2,...,CTshards}及获得存储各个分片的边缘服务器
Figure BDA0003927137180000042
其中
Figure BDA0003927137180000043
表示分片i对应存储的边缘服务器,其对应服务器地址记为
Figure BDA0003927137180000044
然后边缘服务器ES1计算每个分片
Figure BDA0003927137180000045
对应的哈希值并生成签名
Figure BDA0003927137180000046
其中t1i表示ES1计算哈希签名的时间,将s个分片及其对应的哈希签名
Figure BDA0003927137180000051
分别卸载到对应协作边缘存储者
Figure BDA0003927137180000052
进行存储,同时将分片i的存储信息
Figure BDA0003927137180000053
在存储过程完成后记录到区块链账本;
进一步地,所述步骤S3的详细过程如下:
S3.1、数据请求者DR向边缘服务器构成的区块链网络请求数据Request(IDCT),其邻近的边缘服务器ESl接收到请求之后在区块链记录接收到的访问请求
Figure BDA0003927137180000054
其中DR.Identity表示数据请求者DR的身份标识;然后ESl查询区块链记录获得存储数据的各边缘服务器地址
Figure BDA0003927137180000055
与分片标识
Figure BDA0003927137180000056
并向各对应边缘服务器
Figure BDA0003927137180000057
发送请求
Figure BDA0003927137180000058
S3.2、边缘服务器
Figure BDA00039271371800000515
接收到数据请求后将请求访问分片的信息
Figure BDA0003927137180000059
记录到区块链;然后
Figure BDA00039271371800000510
取出数据密文分片及其签名哈希
Figure BDA00039271371800000511
返回给边缘服务器ESl,并将该分片的访问信息
Figure BDA00039271371800000512
记录到区块链账本,t2i表示边缘服务器
Figure BDA00039271371800000513
返回数据分片给ESl的时间。
S3.3、边缘服务器ESl在获取到s个分片及其哈希签名
Figure BDA00039271371800000514
后,验证s个分片的哈希签名是否正确,如果验证通过,则执行对等卸载的逆向算法合成各分片获得完整的密文数据CT并查询区块链记录获取其对应的哈希签名SigDO(Hash(CT||DO.Identity||AddressDO||t0)),然后、边缘服务器ESl将{IDCT,CT,SigDO(Hash(CT||DO.Identity||AddressDO||t0))}返回给数据请求者DR,同时将响应信息
Figure BDA0003927137180000061
记录到区块链上,其中t3表示返回响应信息的时间。
S3.4、数据请求者DR在获取到请求的密文数据信息{IDCT,CT,SigDO(Hash(CT||DO.Identity||AddressDO||t0))}后验证其哈希签名是否有效,若哈希签名验证通过,表示返回的密文数据CT正确,进行下一步解密操作;若哈希签名验证失败则重新向区块链网络请求数据;
S3.5、数据请求者DR从其私钥SKR中提取子私钥
Figure BDA0003927137180000062
然后将SKR'、系统公钥PK和密文数据CT发送给解密代理服务器PSdec,解密代理服务器PSdec执行密文策略属性解密半解密操作得到中间值T=CP_ABE_DecPS(SKR',PK,CT),解密代理服务器PSdec计算哈希签名
Figure BDA0003927137180000063
并将中间值T连同其哈希签名传递给数据请求者DR,其中
Figure BDA0003927137180000064
表示解密代理服务器的地址,t4表示解密代理服务器计算哈希的时间;
S3.6、数据请求者DR验证中间值T与其哈希签名是否
Figure BDA0003927137180000065
对应,若验证不通过则重新请求解密代理服务器执行半解密操作;若验证通过,则以中间值T和自身私钥SKR为输入执行剩余的密文策略属性剩余的解密步骤CP_ABE_DecDR(SKR',PK,CT),当数据所有者DO制定的访问控制策略T=[T1,T2,....,Tt]中Ti=*或者数据请求者DR具有的属性集的某个子集Si与Ti相等时,表示数据请求DR的属性集满足数据所有者制定的访问控制策略T,便可以解密获得对称密钥的明文ck,否则数据所有者属性集不满足访问控制策略无法解密获取到ck;
S3.7、数据请求者DR以解密得到的对称密钥ck、密文CT中包含的数据密文C为输入执行对称解密操作得到最终的数据明文M=Dec(ck,C)。
有益效果:与现有技术相比,本发明具有以下优点:
(1)、本发明中使用基于代理服务器的密文策略属性加密技术,该方案可以实现在协作边缘计算场景下对于存储在边缘服务器上数据的隐私保护,同时该方案将加解密运算中运算量大的操作转移到代理服务器执行,让运算能力比较有限的端设备只需要执行少量加解密运算操作,可以有效提升加密效率,缩短加解密数据时间。
(2)、本发明中使用密文策略属性加密技术,数据所有者可以在加密数据时设立满足自身条件的访问控制策略,如果有访问者想要访问存储到边缘服务器上的数据,那其必须满足访问控制策略中指定的属性时才可以解密该数据。通过设立不同的属性可以实现对于存储在边缘服务器上数据的细粒度访问控制。
(3)、本发明中各个协作的边缘服务器构成基于联盟链的区块链网络,可以为边缘计算网络提供分布式的可信环境。在保证边缘服务器得到初步身份认证的同时,将数据协作存储、卸载及其访问等信息记录在不可篡改的区块链帐本中,为后期审计及责任溯源提供可信证据。
附图说明
图1为本发明的整体系统框架图。
图2是实施例数据存储阶段交互示意图。
图3是实施例数据获取阶段交互示意图。
图4是本发明的的整体协作边缘存储流程图。
具体实施方式
下面对本发明技术方案进行详细说明,但是本发明的保护范围不局限于所述实施例。
如图1所示,可信权威、数据所有者、数据请求者、协作边缘卸载者、协作边缘存储者、加密代理服务器、解密代理服务器及边缘服务器所构成的区块链网络;所述可信权威负责处理用户注册,生成系统参数及每个系统用户对应的私钥SKR;所述数据所有者DO是生成数据的端设备,提供数据并制定对该数据的访问控制策略;所述数据请求者DR是需要访问数据的端设备;所述协作边缘卸载者ES1是指单个边缘服务器,其由于自身存储能力不足,对于用户卸载的数据无法及时处理,通过对等卸载方法将数据拆分后卸载到其他边缘服务器上;所述协作边缘存储者是指在边缘协作存储过程中,利用自身存储资源参与存储的所有边缘服务器;所述加密代理服务器PSenc是帮助执行属性基加密过程中复杂运算部分的代理云服务器;所述解密代理服务器PSdec帮助执行属性基解密过程中复杂运算部分的代理云服务器;所述区块链网络由所有参与协作边缘存储的边缘服务器{ES1,ES2,...,ESk}所构成。
本实施例的基于区块链的协作边缘存储数据隐私保护方法,具体包括以下步骤:
环节1(系统初始化与私钥生成):
1.1、系统初始化:以系统全体属性集U={Attr1,Attr2,...,Attrn}作为输入,可信权威根据密钥生成算法生成对应的系统公钥PK和主密钥MK;其中系统公钥PK为公共参数,主密钥MK由可信权威秘密存储;
1.2、私钥生成:数据请求者DR向可信权威注册时提供自身所具有的属性集S={RAttr1,RAttr2,...,RAttrm},其中
Figure BDA0003927137180000081
可信权威以S为输入,根据密文策略属性加密中的私钥生成算法生成满足该属性集S的私钥SKR并返回给数据请求者DR;
环节2(数据访问存证与获取)
2.1、数据所有者对其数据M使用对称密钥ck执行对称加密生成数据密文C=Enc(ck,M);
2.2、数据所有者制定访问数据M的访问控制策略T=[T1,T2,....,Tt],其中T中的每个值Ti都为U取值的子集,以系统公钥PK、T、对称密钥ck及数据密文C为输入,加密代理服务器PSenc和数据所有者DO使用密文策略属性基加密技术对对称密钥ck执行属性加密操作生成最终的密文数据CT=CP_ABE_Enc(PK,T,ck,C);
2.3、计算出密文数据CT后,数据所有者计算密文数据与相关信息的哈希值Hash(CT||DO.Identity||AddressDO||t0)并使用自身私钥签名后得到SigDO(Hash(CT||DO.Identity||AddressDO||t0)),其中DO.Identity是数据所有者的身份标识,AddressDO表示数据所有者DO的地址,t0表示计算密文数据哈希的时间,然后数据所有者将{CT,DO.Identity,AddressDO,t0,SigDO(Hash(CT||DO.Identity||AddressDO||t0))}发送给邻近的边缘服务器ES1存储;
2.4、边缘服务器ES1执行存储资源分配算法,以密文数据大小和各个边缘计算服务器的存储能力为输入判断是否需要执行对等卸载让多个边缘服务器协作完成数据的存储以达到最优的资源分配
Figure BDA0003927137180000091
其中SizeCT表示密文数据大小,{SCES1,SCES2,...,SCESr}表示构成区块链网络的协作边缘存储服务器各自的存储能力参数,如果结果为true,则该数据需要被分割为多个分片分别存储在多个边缘服务器上,并将密文数据CT相关的卸载和存储信息(IDCT,'storage',DO.Identity,AddressDO,t0,SigDO(Hash(CT||DO.Identity||AddressDO||t0)),'offload',s)记录到区块链帐本中,其中s表示分片的数量;如果结果为false,则该数据将直接存储在边缘服务器ES1,并将密文数据CT相关存储信息(IDCT,'storage',DO.Identity,AddressDO,t0,SigDO(Hash(CT||DO.Identity||AddressDO||t0)),'no-offload',1)记录到区块链。
2.5、需要边缘服务器ES1执行对等卸载策略进行协作存储时,系统将执行对等卸载策略生成s个密文分片{CTshard1,CTshard2,...,CTshards}及获得存储各个分片的边缘服务器
Figure BDA0003927137180000092
其中
Figure BDA0003927137180000093
表示分片i对应存储的边缘服务器,其对应服务器地址记为
Figure BDA0003927137180000094
然后边缘服务器ES1计算每个分片
Figure BDA0003927137180000095
对应的哈希值并生成签名
Figure BDA0003927137180000096
其中t1i表示ES1计算哈希签名的时间,将s个分片及其对应的哈希签名
Figure BDA0003927137180000097
分别卸载到对应协作边缘存储者
Figure BDA0003927137180000098
进行存储,同时将分片i的存储信息
Figure BDA0003927137180000099
在存储过程完成后记录到区块链账本。
如图2所示。
环节3(数据协作存储与存证)
3.1、数据请求者DR向边缘服务器构成的区块链网络请求数据Request(IDCT),其邻近的边缘服务器ESl接收到请求之后在区块链记录接收到的访问请求
Figure BDA0003927137180000101
其中DR.Identity表示数据请求者DR的身份标识;然后ESl查询区块链记录获得存储数据的各边缘服务器地址
Figure BDA0003927137180000102
与分片标识
Figure BDA0003927137180000103
并向各对应边缘服务器
Figure BDA0003927137180000104
发送请求
Figure BDA0003927137180000105
3.2、边缘服务器
Figure BDA0003927137180000106
接收到数据请求后将请求访问分片的信息
Figure BDA0003927137180000107
记录到区块链;然后
Figure BDA0003927137180000108
取出数据密文分片及其签名哈希
Figure BDA0003927137180000109
返回给边缘服务器ESl,并将该分片的访问信息
Figure BDA00039271371800001010
记录到区块链账本,t2i表示边缘服务器
Figure BDA00039271371800001011
返回数据分片给ESl的时间。
3.3、边缘服务器ESl在获取到s个分片及其哈希签名
Figure BDA00039271371800001012
后,验证s个分片的哈希签名是否正确,如果验证通过,则执行对等卸载的逆向算法合成各分片获得完整的密文数据CT并查询区块链记录获取其对应的哈希签名SigDO(Hash(CT||DO.Identity||AddressDO||t0)),然后、边缘服务器ESl将{IDCT,CT,SigDO(Hash(CT||DO.Identity||AddressDO||t0))}返回给数据请求者DR,同时将响应信息
Figure BDA00039271371800001013
记录到区块链上,其中t3表示返回响应信息的时间。
3.4、数据请求者DR在获取到请求的密文数据信息{IDCT,CT,SigDO(Hash(CT||DO.Identity||AddressDO||t0))}后验证其哈希签名是否有效,若哈希签名验证通过,表示返回的密文数据CT正确,进行下一步解密操作;若哈希签名验证失败则重新向区块链网络请求数据;
3.5、数据请求者DR从其私钥SKR中提取子私钥
Figure BDA0003927137180000111
然后将SKR'、系统公钥PK和密文数据CT发送给解密代理服务器PSdec,解密代理服务器PSdec执行密文策略属性解密半解密操作得到中间值T=CP_ABE_DecPS(SKR',PK,CT),解密代理服务器PSdec计算哈希签名
Figure BDA0003927137180000112
并将中间值T连同其哈希签名传递给数据请求者DR,其中
Figure BDA0003927137180000113
表示解密代理服务器的地址,t4表示解密代理服务器计算哈希的时间;
3.6、数据请求者DR验证中间值T与其哈希签名是否
Figure BDA0003927137180000114
对应,若验证不通过则重新请求解密代理服务器执行半解密操作;若验证通过,则以中间值T和自身私钥SKR为输入执行剩余的密文策略属性剩余的解密步骤CP_ABE_DecDR(SKR',PK,CT),当数据所有者DO制定的访问控制策略T=[T1,T2,....,Tt]中Ti=*或者数据请求者DR具有的属性集的某个子集Si与Ti相等时,表示数据请求DR的属性集满足数据所有者制定的访问控制策略T,便可以解密获得对称密钥的明文ck,否则数据所有者属性集不满足访问控制策略无法解密获取到ck;
3.7、数据请求者DR以解密得到的对称密钥ck、密文CT中包含的数据密文C为输入执行对称解密操作得到最终的数据明文M=Dec(ck,C)。
如图3所示。
通过上述实施例可以看出,本发明通过使用基于代理服务器的密文策略属性加密技术加密存储在边缘服务器上的数据,可以保证数据的机密性,使存储资源的边缘服务器无法对资源进行非授权访问,同时对于存储在边缘服务器上的资源可以实现细粒度的访问控制,保证数据只有被数据所有方授权的使用方才可以访问,还可以有效提升加解密效率。同时,本发明设计基于区块链的协作边缘存储架构,由参与协作边缘存储的边缘服务器构成区块链网络,为协作边缘存储提供了分布式可信环境,不仅可以通过联盟链的身份认证技术对接入的边缘服务器做初步的身份认证和授权,同时还可以将数据的存储、协作和访问记录到区块链,为事件和责任追溯提供可信的证据。

Claims (5)

1.一种基于区块链的协作边缘存储数据隐私保护系统,其特征在于:包括可信权威、数据所有者、数据请求者、协作边缘卸载者、协作边缘存储者、加密代理服务器、解密代理服务器及边缘服务器所构成的区块链网络;所述可信权威负责处理用户注册,生成系统参数及每个系统用户对应的私钥SKR;所述数据所有者DO是生成数据的端设备,提供数据并制定对该数据的访问控制策略;所述数据请求者DR是需要访问数据的端设备;所述协作边缘卸载者ES1是指单个边缘服务器,其由于自身存储能力不足,对于用户卸载的数据无法及时处理,通过对等卸载方法将数据拆分后卸载到其他边缘服务器上;所述协作边缘存储者是指在边缘协作存储过程中,利用自身存储资源参与存储的所有边缘服务器;所述加密代理服务器PSenc是帮助执行属性基加密过程中复杂运算部分的代理云服务器;所述解密代理服务器PSdec帮助执行属性基解密过程中复杂运算部分的代理云服务器;所述区块链网络由所有参与协作边缘存储的边缘服务器{ES1,ES2,...,ESk}所构成。
2.一种基于区块链的协作边缘存储数据隐私保护方法,其特征在于,包括以下步骤:
步骤S1、系统初始化与私钥生成
可信权威执行密文策略属性基加密密钥生成算法,以全体属性构成的集合为输入,选择合适参数的双线性群和元素,生成系统公钥PK和主密钥MK,并将系统公钥PK发送给数据所有者DO;数据请求者DR在加入系统后向可信权威提供自身所具有的属性并注册,可信权威执行私钥生成算法,以数据请求者DR所具有的属性集合为输入,生成数据请求者的私钥SKR返回给数据请求者;
步骤S2、数据协作存储与存证
数据所有者DO对数据M执行对称加密,与加密代理服务器PSenc一起对对称加密密钥ck执行密文策略属性加密生成密文,并将密文的哈希签名与密文一起发送给邻近的边缘服务器,边缘服务器根据自身与其他边缘服务器的存储能力执行对等卸载策略判断是否需要进行协作存储,同时在区块链中记录数据存储情况;
步骤S3、数据访问存证与获取
数据请求者DR向边缘服务器构成的区块链网络请求数据,区块链记录数据请求者的访问记录并返回数据密文CT,数据请求者在获取到密文CT后与解密代理服务器共同完成对密文的验证与解密操作,最终获取到数据明文M。
3.根据权利要求2所述的基于区块链的协作边缘存储数据隐私保护方法,其特征在于:所述步骤S1中系统初始化的具体步骤:
S1.1、系统初始化:以系统全体属性集U={Attr1,Attr2,...,Attrn}作为输入,可信权威根据密钥生成算法生成对应的系统公钥PK和主密钥MK;其中系统公钥PK为公共参数,主密钥MK由可信权威秘密存储;
S1.2、私钥生成:数据请求者DR向可信权威注册时提供自身所具有的属性集S={RAttr1,RAttr2,...,RAttrm},其中
Figure FDA0003927137170000021
可信权威以S为输入,根据密文策略属性加密中的私钥生成算法生成满足该属性集S的私钥SKR并返回给数据请求者DR。
4.根据权利要求2所述的基于区块链的协作边缘存储数据隐私保护方法,其特征在于:所述步骤S2的详细过程为:
S2.1、数据所有者对其数据M使用对称密钥ck执行对称加密生成数据密文C=Enc(ck,M);
S2.2、数据所有者制定访问数据M的访问控制策略T=[T1,T2,....,Tt],其中T中的每个值Ti都为U取值的子集,以系统公钥PK、T、对称密钥ck及数据密文C为输入,加密代理服务器PSenc和数据所有者DO使用密文策略属性基加密技术对对称密钥ck执行属性加密操作生成最终的密文数据CT=CP_ABE_Enc(PK,T,ck,C);
S2.3、计算出密文数据CT后,数据所有者计算密文数据与相关信息的哈希值Hash(CT||DO.Identity||AddressDO||t0)并使用自身私钥签名后得到SigDO(Hash(CT||DO.Identity||AddressDO||t0)),其中DO.Identity是数据所有者的身份标识,AddressDO表示数据所有者DO的地址,t0表示计算密文数据哈希的时间,然后数据所有者将{CT,DO.Identity,AddressDO,t0,SigDO(Hash(CT||DO.Identity||AddressDO||t0))}发送给邻近的边缘服务器ES1存储;
S2.4、边缘服务器ES1执行存储资源分配算法,以密文数据大小和各个边缘计算服务器的存储能力为输入判断是否需要执行对等卸载让多个边缘服务器协作完成数据的存储以达到最优的资源分配
Figure FDA0003927137170000031
其中SizeCT表示密文数据大小,
Figure FDA0003927137170000032
表示构成区块链网络的协作边缘存储服务器各自的存储能力参数,如果结果为true,则该数据需要被分割为多个分片分别存储在多个边缘服务器上,并将密文数据CT相关的卸载和存储信息(IDCT,'storage',DO.Identity,AddressDO,t0,SigDO(Hash(CT||DO.Identity||AddressDO||t0)),'offload',s)记录到区块链帐本中,其中s表示分片的数量;如果结果为false,则该数据将直接存储在边缘服务器ES1,并将密文数据CT相关存储信息(IDCT,'storage',DO.Identity,AddressDO,t0,SigDO(Hash(CT||DO.Identity||AddressDO||t0)),'no-offload',1)记录到区块链;
S2.5、需要边缘服务器ES1执行对等卸载策略进行协作存储时,系统将执行对等卸载策略生成s个密文分片
Figure FDA0003927137170000033
及获得存储各个分片的边缘服务器
Figure FDA0003927137170000034
其中
Figure FDA0003927137170000035
表示分片i对应存储的边缘服务器,其对应服务器地址记为
Figure FDA0003927137170000036
然后边缘服务器ES1计算每个分片
Figure FDA0003927137170000037
对应的哈希值并生成签名
Figure FDA0003927137170000038
其中t1i表示ES1计算哈希签名的时间,将s个分片及其对应的哈希签名
Figure FDA0003927137170000039
分别卸载到对应协作边缘存储者
Figure FDA00039271371700000310
进行存储,同时将分片i的存储信息
Figure FDA00039271371700000311
在存储过程完成后记录到区块链账本。
5.根据权利要求2所述的基于区块链的协作边缘存储数据隐私保护方法,其特征在于:所述步骤S3的详细过程如下:
S3.1、数据请求者DR向边缘服务器构成的区块链网络请求数据Request(IDCT),其邻近的边缘服务器ESl接收到请求之后在区块链记录接收到的访问请求
Figure FDA0003927137170000041
其中DR.Identity表示数据请求者DR的身份标识;然后ESl查询区块链记录获得存储数据的各边缘服务器地址
Figure FDA0003927137170000042
与分片标识
Figure FDA0003927137170000043
并向各对应边缘服务器
Figure FDA0003927137170000044
发送请求
Figure FDA0003927137170000045
S3.2、边缘服务器
Figure FDA0003927137170000046
接收到数据请求后将请求访问分片的信息
Figure FDA0003927137170000047
记录到区块链;然后
Figure FDA0003927137170000048
取出数据密文分片及其签名哈希
Figure FDA0003927137170000049
返回给边缘服务器ESl,并将该分片的访问信息
Figure FDA00039271371700000410
记录到区块链账本,t2i表示边缘服务器
Figure FDA00039271371700000411
返回数据分片给ESl的时间;
S3.3、边缘服务器ESl在获取到s个分片及其哈希签名
Figure FDA00039271371700000412
后,验证s个分片的哈希签名是否正确,如果验证通过,则执行对等卸载的逆向算法合成各分片获得完整的密文数据CT并查询区块链记录获取其对应的哈希签名SigDO(Hash(CT||DO.Identity||AddressDO||t0)),然后边缘服务器ESl将{IDCT,CT,SigDO(Hash(CT||DO.Identity||AddressDO||t0))}返回给数据请求者DR,同时将响应信息
Figure FDA00039271371700000413
记录到区块链上,其中t3表示返回响应信息的时间;
S3.4、数据请求者DR在获取到请求的密文数据信息{IDCT,CT,SigDO(Hash(CT||DO.Identity||AddressDO||t0))}后验证其哈希签名是否有效,若哈希签名验证通过,表示返回的密文数据CT正确,进行下一步解密操作;若哈希签名验证失败则重新向区块链网络请求数据;
S3.5、数据请求者DR从其私钥SKR中提取子私钥
Figure FDA0003927137170000051
然后将SKR'、系统公钥PK和密文数据CT发送给解密代理服务器PSdec,解密代理服务器PSdec执行密文策略属性解密半解密操作得到中间值T=CP_ABE_DecPS(SKR',PK,CT),解密代理服务器PSdec计算哈希签名
Figure FDA0003927137170000052
并将中间值T连同其哈希签名传递给数据请求者DR,其中
Figure FDA0003927137170000053
表示解密代理服务器的地址,t4表示解密代理服务器计算哈希的时间;
S3.6、数据请求者DR验证中间值T与其哈希签名是否
Figure FDA0003927137170000054
对应,若验证不通过则重新请求解密代理服务器执行半解密操作;若验证通过,则以中间值T和自身私钥SKR为输入执行剩余的密文策略属性剩余的解密步骤CP_ABE_DecDR(SKR',PK,CT),当数据所有者DO制定的访问控制策略T=[T1,T2,....,Tt]中Ti=*或者数据请求者DR具有的属性集的某个子集Si与Ti相等时,表示数据请求DR的属性集满足数据所有者制定的访问控制策略T,便可以解密获得对称密钥的明文ck,否则数据所有者属性集不满足访问控制策略无法解密获取到ck;
S3.7、数据请求者DR以解密得到的对称密钥ck、密文CT中包含的数据密文C为输入执行对称解密操作得到最终的数据明文M=Dec(ck,C)。
CN202211377086.0A 2022-11-04 2022-11-04 一种基于区块链的协作边缘存储数据隐私保护系统及方法 Pending CN115913677A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211377086.0A CN115913677A (zh) 2022-11-04 2022-11-04 一种基于区块链的协作边缘存储数据隐私保护系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211377086.0A CN115913677A (zh) 2022-11-04 2022-11-04 一种基于区块链的协作边缘存储数据隐私保护系统及方法

Publications (1)

Publication Number Publication Date
CN115913677A true CN115913677A (zh) 2023-04-04

Family

ID=86491711

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211377086.0A Pending CN115913677A (zh) 2022-11-04 2022-11-04 一种基于区块链的协作边缘存储数据隐私保护系统及方法

Country Status (1)

Country Link
CN (1) CN115913677A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117251878A (zh) * 2023-09-20 2023-12-19 上海财安金融服务集团股份有限公司 基于区块链的催收数据隐私保护及可信存证方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117251878A (zh) * 2023-09-20 2023-12-19 上海财安金融服务集团股份有限公司 基于区块链的催收数据隐私保护及可信存证方法
CN117251878B (zh) * 2023-09-20 2024-04-05 上海财安金融服务集团股份有限公司 基于区块链的催收数据隐私保护及可信存证方法

Similar Documents

Publication Publication Date Title
EP3761588B1 (en) Data access rights control method and device
CN107528688B (zh) 一种基于加密委托技术的区块链密钥保管及恢复方法、装置
JP6547079B1 (ja) 登録・認可方法、装置及びシステム
CN111585749B (zh) 数据传输方法、装置、系统及设备
CN109614818B (zh) 可授权的基于身份的带关键词搜索加密方法
CN110750803B (zh) 数据提供和融合的方法及装置
WO2022199290A1 (zh) 多方安全计算
US20210006548A1 (en) Method for authorizing access and apparatus using the method
CN113691502B (zh) 通信方法、装置、网关服务器、客户端及存储介质
CN112651037A (zh) 区块链系统的链外数据访问方法和系统
CN113987554B (zh) 获取数据授权的方法、装置及系统
CN111274599A (zh) 一种基于区块链的数据共享方法及相关装置
CN112311537A (zh) 基于区块链的设备接入认证系统及方法
CN107634946A (zh) 一种微服务节点合法性验证方法和装置
CN112351037A (zh) 用于安全通信的信息处理方法及装置
KR20170019308A (ko) 신뢰된 권한 정보 제공 방법, 신뢰된 권한 정보를 포함하는 사용자 크리덴셜 발급 방법 및 사용자 크리덴셜 획득 방법
JP2010231404A (ja) 秘密情報管理システム、秘密情報管理方法、および秘密情報管理プログラム
Deng et al. Policy-based broadcast access authorization for flexible data sharing in clouds
Bao et al. An auditable and secure model for permissioned blockchain
CN115913677A (zh) 一种基于区块链的协作边缘存储数据隐私保护系统及方法
Arun et al. Mutual authentication and authorized data access between fog and user based on blockchain technology
Liou et al. T-auth: A novel authentication mechanism for the IoT based on smart contracts and PUFs
US11240661B2 (en) Secure simultaneous authentication of equals anti-clogging mechanism
CN113872986B (zh) 配电终端认证方法、装置和计算机设备
CN115766119A (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