CN113515759A - 一种基于区块链的电力终端数据访问控制方法及系统 - Google Patents

一种基于区块链的电力终端数据访问控制方法及系统 Download PDF

Info

Publication number
CN113515759A
CN113515759A CN202110578129.0A CN202110578129A CN113515759A CN 113515759 A CN113515759 A CN 113515759A CN 202110578129 A CN202110578129 A CN 202110578129A CN 113515759 A CN113515759 A CN 113515759A
Authority
CN
China
Prior art keywords
access control
power
data
key
control strategy
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
CN202110578129.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.)
State Grid Anhui Electric Power Co Ltd
Global Energy Interconnection Research Institute
Information and Telecommunication Branch of State Grid Zhejiang Electric Power Co Ltd
Original Assignee
State Grid Anhui Electric Power Co Ltd
Global Energy Interconnection Research Institute
Information and Telecommunication Branch of State Grid Zhejiang Electric Power Co Ltd
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 State Grid Anhui Electric Power Co Ltd, Global Energy Interconnection Research Institute, Information and Telecommunication Branch of State Grid Zhejiang Electric Power Co Ltd filed Critical State Grid Anhui Electric Power Co Ltd
Priority to CN202110578129.0A priority Critical patent/CN113515759A/zh
Publication of CN113515759A publication Critical patent/CN113515759A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
    • 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
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/06Electricity, gas or water supply
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Economics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Bioethics (AREA)
  • Software Systems (AREA)
  • Public Health (AREA)
  • Databases & Information Systems (AREA)
  • Water Supply & Treatment (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Storage Device Security (AREA)

Abstract

一种基于区块链的电力终端数据访问控制方法及系统,包括:电力终端加密数据明文并将加密后的数据上传至存储服务器并获得对应存储地址;电力终端利用自身拟定访问控制策略结合系统公共参数对加密数据的密钥加密得到访问控制策略密文,并将访问控制策略密文和存储地址上链;电力用户向区块链请求访问电力数据,获取访问控制策略密文、存储地址以及不同属性管理节点下发的密钥集,并利用获得的密钥集对访问控制策略密文进行解密验证;电力用户根据存储地址从存储服务器中获取加密数据解密得到电力数据明文。电力终端自行制定访问策略,便于数据管理,数据全程未经过任何明文传输,确保数据安全,多属性中心适用更加丰富的属性要求和业务场景。

Description

一种基于区块链的电力终端数据访问控制方法及系统
技术领域
本发明涉及电力终端数据访问控制领域,具体涉及一种基于区块链的电力终端数据访问控制方法及系统。
背景技术
访问控制是数据共享过程中最重要的问题之一。电力物联网由于广泛涉及到用户的用电行为,隐私极度敏感。同时,电力服务十分广泛,需要多系统之间进行数据共享。在传统的数据共享架构中,电力终端将数据上传到平台,电力终端向平台索取数据。在这种情况下,数据的所有权从终端用户转移到平台,难以保障用户的权益。此外,单一的中心无法同时获取多方信任,严重限制了数据共享的范畴。
区块链作为一种去中心化技术,可以在无中心场景下实现数据共享支撑。此外,作为一种分布式账本技术,其不可篡改的特性使它保管的数据具备不可篡改特性,为数据共享的流程提供了可追溯性和可信性。因此,借助区块链构建平台,实现数据的跨系统安全共享,成为研究热点。
为了解现有技术的发展状况,对已有的论文和专利进行了检索、比较和分析,筛选出如下与本发明相关度比较高的技术信息:
技术方案1:专利号为CN 110224814 A的《一种区块链数据共享方法及装置》专利,涉及一种数据共享方法,分以下两步进行:第一步,数据来源结合数据哈希值和使用者公钥,对数据进行加密后发送到智能合约;第二步,数据用户使用私钥,对数据进行解密。
技术方案2:专利号为CN 111385301 A的《一种区块链数据共享加密和解密方法、设备及存储介质》专利,设计一种数据共享方法,分以下几步进行:第一步:数据来源产生公钥A1,私钥A,对明文进行加密得到a1,上传到区块链;第二步:区块链为数据来源生成密钥C1;第三步:数据来源使用密钥C1对A进行加密得到reA,上传到区块链;第四步:智能合约利用reA对密文a1进行加密,得到a2;第五步:数据使用方利用a2进行同态运算,使用C1对结果进行解密,可以在不知道明文的情况下获得计算结果。
技术方案3:专利号为CN 111444264 A的《一种基于区块链的数据安全共享方法》,涉及一种数据共享方法,分以下几步进行:第一步,数据来源对数据进行脱敏及清洗后,上传至数据共享平台;第二步,平台对数据进行加密处理后,获取数据哈希后,写入区块链;第三步,平台将数据权限及访问规则写入智能合约部署到区块链;第四步,用户用自己的权限向平台查询数据。
技术方案1在区块链上传递加密后数据,链下的数据安全通道传递数据密钥。此类方法要求数据共享双方已经在链下具备安全通信的条件,这种情况下完全可以直接在链下传递加密数据;技术方案2实现的是多方安全计算,电力用户并未能获得数据明文,并不能算是完全的数据共享;技术方案3的数据加密及权限管理,完全属于平台所有,数据来源本身无法对自己的数据进行管理。
发明内容
为了解决现有技术中所存在的上述问题,本发明提供一种基于区块链的电力终端数据访问控制方法,包括:
电力终端采用对称加密技术加密电力数据明文,将加密后的电力数据明文上传至存储服务器中并获得对应的存储地址;
电力终端利用自身拟定的访问控制策略结合从区块链获取的公共参数对加密后的电力数据明文的密钥加密得到访问控制策略密文,并将访问控制策略密文和存储地址上传至区块链中;
电力用户向区块链请求访问电力数据,获取由区块链下发的对应的访问控制策略密文、存储地址以及区块链不同属性管理节点下发的密钥集和公共参数;
电力用户利用获得的来自区块链不同属性管理节点的密钥集和公共参数,对所述访问控制策略密文进行解密验证,若解密验证成功,则获取加密电力数据明文的密钥,否则结束操作;
电力用户根据存储地址从存储服务器中获取访问控制策略对应的加密后的电力数据明文,并利用所述密钥解密加密后的电力数据明文得到电力数据明文。
优选的,所述电力终端利用自身拟定的访问控制策略结合从区块链获取的公共参数对加密后的电力数据明文的密钥加密得到访问控制策略密文包括:
利用所述加密后的电力数据的密钥z通过生成随机数ν2,...,vn构建向量ν=(z,ν2,...,vn)T,并生成随机数y2,...,yn1,..,βn对向量进行混淆得到带有密钥的向量
Figure BDA0003085207070000039
电力终端利用自身拟定的访问控制策略根据线性秘密共享体制构造权限访问控制策略矩阵(A,δ(i));
计算属性结构矩阵A与带有密钥的向量
Figure BDA0003085207070000031
的乘积得到向量
Figure BDA0003085207070000032
并计算
Figure BDA0003085207070000033
Figure BDA0003085207070000034
Figure BDA0003085207070000035
Figure BDA0003085207070000036
得到访问控制策略密文CT2={C1,i,C2,i,C3,i,C4,i};
其中,g为双线性群的生成元,e(g,g)生成元为g的双线性运算,δ(i)为属性结构矩阵A第i行对应的属性;ρ(i)为属性结构矩阵A第i行对应的节点;
Figure BDA0003085207070000037
为管理节点ρ(i)对应的公钥,
Figure BDA0003085207070000038
为管理节点ρ(i)对应的公钥;yρ(i)为管理节点ρ(i)对应的私钥;αρ(i)为管理节点ρ(i)对应的私钥;F(δ(i))为属性结构矩阵A第i行对应的属性δ(i)对应的哈希值;Ji为属性结构矩阵A第i行所有1的集合,ti为随机数;i为1,2,3,…,l;j为1,2,3,…,n;l为属性矩阵A的行数,n为属性矩阵A的列数,λ'i为属性矩阵和带有密钥的向量的乘积得到的向量的第i列;C1,i为加密密文的第一个字段,C2,i为加密密文的第二个字段,C3,i为加密密文的第三个字段,C4,i为加密密文的第四个字段。
优选的,所述电力用户利用获得的来自区块链不同属性管理节点的密钥集和公共参数,对所述访问控制策略密文进行解密验证包括:
步骤1:电力用户生成随机数ω2,..,ωn构成随机列向量(0,ω2,..,ωn)T后与访问控制策略相乘得到
Figure BDA0003085207070000041
后,结合来自不同属性管理节点的密钥集结合对访问控制策略密文的每一行计算:
Figure BDA0003085207070000042
其中,K1uid,δ(x),K2uid,δ(x)为电力用户获得的来自不同属性管理节点的密钥;H(uid)为电力用户编号uid对应的哈希值;ωx为随机数;wx为属性矩阵和随机列向量的乘积;x为1,2,3,…,n;λx为属性矩阵和带有密钥的向量的乘积得到的向量的第x列;e(K1uid,δ(x),C2,x)为K1uid,δ(x)和C2,x的双线性运算;
Figure BDA0003085207070000043
为H(uid)和
Figure BDA0003085207070000044
的双线性运算;e(K2uid,δ(x),C4,x)为K2uid,δ(x)和C4,x的双线性运算;e(H(uid),g)为H(uid)和g的双线性运算;
步骤2:计算使得∑xcxAx=(1,0,...,0)成立的矩阵cx
其中,Ax为属性矩阵的第x列;
步骤3:基于
Figure BDA0003085207070000045
和矩阵cx计算
Figure BDA0003085207070000046
判断计算结果是否为e(g,g)z,若是解密验证成功,否则解密验证失败。
优选的,还包括:
电力用户基于自身的运算能力判断是否将访问控制密文外包解密;
当用户自身可以实现解密运算时,由电力用户基于自身拥有的属性密钥集对访问控制策略密文进行解密验证,获取电力加密数据的密钥;
否则,电力用户制作授权密钥并将授权密钥发送给解密服务器进行外包解密验证得到解密中间结果,并将所述中间结果发送给电力用户。
优选的,还包括,电力终端可以通过外包加密的方式对访问控制策略加密。
基于同一种发明构思,本发明提供了一种基于区块链的电力终端数据访问控制系统,包括:
数据加密模块、控制策略加密模块、请求数据模块、验证模块和解密模块;
所述数据加密模块,电力终端采用对称加密技术加密电力数据明文,将加密后的电力数据明文上传至存储服务器中并获得对应的存储地址;
所述控制策略加密模块,电力终端利用自身拟定的访问控制策略结合从区块链获取的公共参数对加密后的电力数据明文的密钥加密得到访问控制策略密文,并将访问控制策略密文和存储地址上传至区块链中;
所述请求数据模块,电力用户向区块链请求访问电力数据,获取由区块链下发的对应的访问控制策略密文、存储地址以及区块链不同属性管理节点下发的密钥集和公共参数;
所述验证模块,电力用户利用获得的来自区块链不同属性管理节点的密钥集和公共参数,对所述访问控制策略密文进行解密验证,若解密验证成功,则获取加密电力数据明文的密钥,否则结束操作;
所述解密模块,电力用户根据存储地址从存储服务器中获取访问控制策略对应的加密后的电力数据明文,并利用所述密钥解密加密后的电力数据明文得到电力数据明文。
与现有技术相比,本发明的有益效果为:
一种基于区块链的电力终端数据访问控制方法,包括:电力终端采用对称加密技术加密电力数据明文,将加密后的电力数据明文上传至存储服务器中并获得对应的存储地址;电力终端利用自身拟定的访问控制策略结合从区块链获取的公共参数对加密后的电力数据明文的密钥加密得到访问控制策略密文,并将访问控制策略密文和存储地址上传至区块链中;电力用户向区块链请求访问电力数据,获取由区块链下发的对应的访问控制策略密文、存储地址以及区块链不同属性管理节点下发的密钥集和公共参数;电力用户利用获得的来自区块链不同属性管理节点的密钥集和公共参数,对所述访问控制策略密文进行解密验证,若解密验证成功,则获取加密电力数据明文的密钥,否则结束操作;电力用户根据存储地址从存储服务器中获取访问控制策略对应的加密后的电力数据明文,并利用所述密钥解密加密后的电力数据明文得到电力数据明文。电力终端自行制定数据的访问策略,便于数据来源终端对数据的管理,数据本身获得了绝对的安全,数据全程未经过任何明文传输,确保了数据的不可泄漏,允许更加复杂的访问策略,适用更加丰富的属性要求和业务场景。
附图说明
图1为本发明的区块链的电力终端数据访问控制方法步骤流程图;
图2为本发明的系统框架图;
图3为终端侧加密时延对比图;
图4为解密时延对比图。
具体实施方式
为了更好地理解本发明,下面结合说明书附图和实例对本发明的内容做进一步的说明。
实施例1:
一种基于区块链的电力终端数据访问控制方法,通过区块链构建电力物联网场景下的电力终端数据访问控制机制,保证数据源对数据的可控。同时设计跨系统的属性基加密机制,实现基于属性的多中心数据权限管控。此外,针对终端计算资源有限的问题,设计了加解密外包机制。电力终端可自行决定权限管控策略,满足权限的用户就可从区块链上获得数据并解密。如图1所示,包括:
步骤1:电力终端采用对称加密技术加密电力数据明文,将加密后的电力数据明文上传至存储服务器中并获得对应的存储地址;
步骤2:电力终端利用自身拟定的访问控制策略结合从区块链获取的公共参数对加密后的电力数据明文的密钥加密得到访问控制策略密文,并将访问控制策略密文和存储地址上传至区块链中;
步骤3:电力用户向区块链请求访问电力数据,获取由区块链下发的对应的访问控制策略密文、存储地址以及区块链不同属性管理节点下发的密钥集和公共参数;
步骤4:电力用户利用获得的来自区块链不同属性管理节点的密钥集和公共参数,对所述访问控制策略密文进行解密验证,若解密验证成功,则获取加密电力数据明文的密钥,否则结束操作;
步骤5:电力用户根据存储地址从存储服务器中获取访问控制策略对应的加密后的电力数据明文,并利用所述密钥解密加密后的电力数据明文得到电力数据明文。
区块链初始化公共参数和各节点自身参数,区块链的各个节点(由传统物联网系统的属性管理中心组成)之间进行协商,生成公共参数。
首先生成双线性群G,阶数为p,生成元为g,并制定哈希函数如下:
H(user_id)→G
F(access_policy)→G
其中H函数用于将用户id映射到G,F函数用于将控制策略映射到G。
生成双线性映射G×G→GT,定义双线性运算e(g,g)。
公开到区块链的参数包括g,e(g,g),G,p等。
各系统的管理端生成自身参数,区块链节点θ生成自身的公私钥对:
私钥:αθ,yθ∈Zp
公钥对:
Figure BDA0003085207070000071
完成以上操作之后,将各系统的参数和数据共享平台的公共参数上传到区块链。
其中步骤1具体包括,电力终端针对数据进行加密。假定加密的数据明文为M。用密钥z对数据M加密得到C0=Me(g,g)z,即加密后的数据。而后,将加密后的数据C0上传至存储服务器中。
步骤2具体包括,电力终端对加密的密钥z进行保护。生成随机数ν2,...,vn构建向量ν=(z,ν2,...,vn)T。生成随机数y2,...,yn1,..,βn,对向量进行混淆。得到向量
Figure BDA0003085207070000072
而后,生成可表达的访问控制策略如A@a AND B@b,声明要求a系统签发的A属性和b系统签发的B属性同时存在时,具备数据访问权限(例如,假定某处有一个电表终端,可以访问该电表数据的用户,同时具有物业系统颁发的住户属性和电力营销系统颁发的电表业主属性,才可以读取该数据)。
电力终端可自身对访问控制策略加密处理,也可以根据自身计算资源外包处理。首先对访问策略进行处理,得到访问控制矩阵。矩阵构造方法如下:
令U作为属性空间,属性结构A即U中一系列元素的集合。假定电力终端制定的权限访问策略为(A,δ),其中矩阵A为l×n的布尔矩阵。每行表示一个属性。δ(x)为映射函数,指第x行对应的属性。ρ(x)为映射函数:第x行对应的节点θ。
而后针对矩阵A中为1的部分,计算Ji={Mij=1},中间变量
Figure BDA0003085207070000081
其中,A是一个0和1构成的矩阵,Ji是第i行所有1的集合;
生成加密密文:确保只有符合访问控制策略的用户可以解密获得密钥z。
Figure BDA0003085207070000082
Figure BDA0003085207070000083
Figure BDA0003085207070000084
Figure BDA0003085207070000085
Figure BDA0003085207070000086
而后,得到CT2={C1,i,C2,i,C3,i,C4,i}作为访问控制密文;
其中,δ(i)为属性结构矩阵A第i行对应的属性;ρ(i)为属性结构矩阵A第i行对应的节点;
Figure BDA0003085207070000087
为管理节点ρ(i)对应的公钥,
Figure BDA0003085207070000088
为管理节点ρ(i)对应的公钥;yρ(i)为管理节点ρ(i)对应的私钥;αρ(i)为管理节点ρ(i)对应的私钥;F(δ(i))为属性结构矩阵A第i行对应的属性δ(i)对应的哈希值;Ji为属性结构矩阵A第i行所有1的集合,ti为随机数;i为1,2,3,…,l;j为1,2,3,…,n;l为属性矩阵A的行数,n为属性矩阵A的列数,λ'i为属性矩阵和带有密钥的向量的乘积得到的向量的第i列;C1,i为加密密文的第一个字段,C2,i为加密密文的第二个字段,C3,i为加密密文的第三个字段,C4,i为加密密文的第四个字段。
将数据C0上传至存储服务器中。该部分可以与电力数据加密同时进行。而后,将访问控制策略A,数据密文,数据的访问地址,与访问控制密文一起上传至区块链。
步骤3具体包括,用户向区块链各属性节点管理各系统申请密钥,系统依据属性,为其生成密钥并发回。
对于每一个属性u,对应的系统为其签发私钥:
生成随机数t,生成密钥K1,K2
Figure BDA0003085207070000091
K2uid,u=gt
用户从区块链检索数据信息,获得密文。
步骤4具体包括,生成随机数
Figure BDA0003085207070000092
而后结合自身属性,对每一行进行计算:
Figure BDA0003085207070000093
而后计算cx使得∑xcxAx=(1,0,...,0),而后
Figure BDA0003085207070000094
此时M=C0/e(g,g)z,完成解密。
如用户难以完成解密运算,可制作授权密钥对对解密进行外包:
K'GID,u=(KGID,u)1/τ
L'GID,u=(LGID,u)1/τ
解密服务器用授权密钥对执行相同运算,可得到中间结果e(g,g)z/τ,用户对其简单运算之后可完成解密。
步骤5具体包括,用户从访问地址中获得数据。对数据进行解密,获得明文M。
本发明构建了一种基于区块链的跨系统访问控制框架。在该框架中,区块链用于为电力终端和电力用户之间提供可信的数据共享平台。各系统通过区块链发布公共参数,电力终端利用公共参数实现基于属性的加密,并将密文上链,电力用户通过区块链获取数据。
针对电力终端数据面向多系统共享过程的安全问题,设计多中心的属性加密的机制:密钥本身仅仅能由具有对应属性的用户解开,属性可来自不同的分发机构。由于属性来自不同的密钥管理中心,不同用户在不同属性产生的密钥无法合并,因此可以对抗合谋攻击;明文未经过任何公开传输,属性密钥也由用户自身在本地进行合并,避免了数据泄露的风险。
本发明将.数据的所有权、管控权回到终端手中,而非平台。电力终端自行制定数据的访问策略,平台仅作为数据分享的渠道。
数据本身获得了绝对的安全,一方面,已经上链的数据无法再更改,确保了数据的可信;另一方面,数据全程未经过任何明文传输,确保了数据的不可泄漏。
数据共享的范畴变广。传统的单一物联网系统情况下,访问策略的表达能力有限。在本专利的设计下,允许更加复杂的访问策略,也就允许了更加丰富的属性要求和业务场景。
实施例2:
基于同一种发明构思,本发明还提供了一种基于区块链的电力终端数据访问控制系统,包括:
数据加密模块、控制策略加密模块、请求数据模块、验证模块和解密模块;
所述数据加密模块,电力终端采用对称加密技术加密电力数据明文,将加密后的电力数据明文上传至存储服务器中并获得对应的存储地址;
所述控制策略加密模块,电力终端利用自身拟定的访问控制策略结合从区块链获取的公共参数对加密后的电力数据明文的密钥加密得到访问控制策略密文,并将访问控制策略密文和存储地址上传至区块链中;
所述请求数据模块,电力用户向区块链请求访问电力数据,获取由区块链下发的对应的访问控制策略密文、存储地址以及区块链不同属性管理节点下发的密钥集和公共参数;
所述验证模块,电力用户利用获得的来自区块链不同属性管理节点的密钥集和公共参数,对所述访问控制策略密文进行解密验证,若解密验证成功,则获取加密电力数据明文的密钥,否则结束操作;
所述解密模块,电力用户根据存储地址从存储服务器中获取访问控制策略对应的加密后的电力数据明文,并利用所述密钥解密加密后的电力数据明文得到电力数据明文。
实施例3:
首先,本发明建立了基于区块链的多中心数据共享平台,而后,构造了基于属性的跨系统数据访问控制框架。电力终端在发布数据时提供可表达的策略如A@a AND B@b,即可实现当用户同时具有由a颁发的A权限和b颁发的B权限时,才可获得数据明文。平台由a、b等物联网系统维护。由于部分电力终端难以承担大量的运算,访问控制可安全的外包到网关执行。具体如图2所示。
区块链实验环境为部署于腾讯上的1核2G服务器,Ubuntu 18.04系统。区块链架构采用Hyperledger Fabric 2.2.0,并利用docker容器部署联盟链节点,智能合约采用JavaScript进行编写。采用50次运行平均值,得写入链上步骤用时2060ms,共识用时75ms,查询用时14ms。初始化并未严重影响系统的时延。
各属性中心的初始化、电力终端的加密环节与用户的解密环节均在链下进行,拟基于charm,采用Python3.6.12环境进行编写。与传统的多中心访问控制及外包访问控制方案进行对比。为方便表述,Yannis Rouselakis1和Brent Waters在2015提出的多中心访问控制记做RW15,Go Ohtake在2017提出的外包访问控制记作GO19.与我们的方案展开时间延迟对比如下:
初始化阶段如图3所示,结果显示本文的方案显著降低了加密所需的时延;
解密侧的效果如图4所示,本方案表现显著优于RW15。GO17虽然表现较好,但该方案不适用于多中心场景。相比RW方案,本方案已大幅度的为终端减轻了解密计算的负担。
显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上仅为本发明的实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均包含在申请待批的本发明的权利要求范围之内。

Claims (6)

1.一种基于区块链的电力终端数据访问控制方法,其特征在于,包括:
电力终端采用对称加密技术加密电力数据明文,将加密后的电力数据明文上传至存储服务器中并获得对应的存储地址;
电力终端利用自身拟定的访问控制策略结合从区块链获取的公共参数对加密后的电力数据明文的密钥加密得到访问控制策略密文,并将访问控制策略密文和存储地址上传至区块链中;
电力用户向区块链请求访问电力数据,获取由区块链下发的对应的访问控制策略密文、存储地址以及区块链不同属性管理节点下发的密钥集和公共参数;
电力用户利用获得的来自区块链不同属性管理节点的密钥集和公共参数,对所述访问控制策略密文进行解密验证,若解密验证成功,则获取加密电力数据明文的密钥,否则结束操作;
电力用户根据存储地址从存储服务器中获取访问控制策略对应的加密后的电力数据明文,并利用所述密钥解密加密后的电力数据明文得到电力数据明文。
2.如权利要求1所述的访问控制方法,其特征在于,所述电力终端利用自身拟定的访问控制策略结合从区块链获取的公共参数对加密后的电力数据明文的密钥加密得到访问控制策略密文包括:
利用所述加密后的电力数据的密钥z通过生成随机数ν2,...,vn构建向量ν=(z,ν2,...,vn)T,并生成随机数y2,...,yn1,..,βn对向量进行混淆得到带有密钥的向量
Figure FDA0003085207060000013
电力终端利用自身拟定的访问控制策略根据线性秘密共享体制构造权限访问控制策略矩阵(A,δ(i));
计算属性结构矩阵A与带有密钥的向量
Figure FDA0003085207060000014
的乘积得到向量
Figure FDA0003085207060000015
并计算
Figure FDA0003085207060000011
Figure FDA0003085207060000016
Figure FDA0003085207060000012
Figure FDA0003085207060000024
得到访问控制策略密文CT2={C1,i,C2,i,C3,i,C4,i};
其中,g为双线性群的生成元,e(g,g)生成元为g的双线性运算,δ(i)为属性结构矩阵A第i行对应的属性;ρ(i)为属性结构矩阵A第i行对应的节点;
Figure FDA0003085207060000025
为管理节点ρ(i)对应的公钥,
Figure FDA0003085207060000021
为管理节点ρ(i)对应的公钥;yρ(i)为管理节点ρ(i)对应的私钥;αρ(i)为管理节点ρ(i)对应的私钥;F(δ(i))为属性结构矩阵A第i行对应的属性δ(i)对应的哈希值;Ji为属性结构矩阵A第i行所有1的集合,ti为随机数;i为1,2,3,…,l;j为1,2,3,…,n;l为属性矩阵A的行数,n为属性矩阵A的列数,λ'i为属性矩阵和带有密钥的向量的乘积得到的向量的第i列;C1,i为加密密文的第一个字段,C2,i为加密密文的第二个字段,C3,i为加密密文的第三个字段,C4,i为加密密文的第四个字段。
3.如权利要求2所述的访问控制方法,其特征在于,所述电力用户利用获得的来自区块链不同属性管理节点的密钥集和公共参数,对所述访问控制策略密文进行解密验证包括:
步骤1:电力用户生成随机数ω2,..,ωn构成随机列向量(0,ω2,..,ωn)T后与访问控制策略相乘得到
Figure FDA0003085207060000022
后,结合来自不同属性管理节点的密钥集结合对访问控制策略密文的每一行计算:
Figure FDA0003085207060000023
其中,K1uid,δ(x),K2uid,δ(x)为电力用户获得的来自不同属性管理节点的密钥;H(uid)为电力用户编号uid对应的哈希值;ωx为随机数;wx为属性矩阵和随机列向量的乘积;x为1,2,3,…,n;λx为属性矩阵和带有密钥的向量的乘积得到的向量的第x列;e(K1uid,δ(x),C2,x)为K1uid,δ(x)和C2,x的双线性运算;
Figure FDA0003085207060000032
为H(uid)和
Figure FDA0003085207060000033
的双线性运算;e(K2uid,δ(x),C4,x)为K2uid,δ(x)和C4,x的双线性运算;e(H(uid),g)为H(uid)和g的双线性运算;
步骤2:计算使得
Figure FDA0003085207060000031
成立的矩阵cx
其中,Ax为属性矩阵的第x列;
步骤3:基于
Figure FDA0003085207060000034
和矩阵cx计算
Figure FDA0003085207060000035
判断计算结果是否为e(g,g)z,若是解密验证成功,否则解密验证失败。
4.如权利要求3所述的访问控制方法,其特征在于,还包括:
电力用户基于自身的运算能力判断是否将访问控制密文外包解密;
当用户自身可以实现解密运算时,由电力用户基于自身拥有的属性密钥集对访问控制策略密文进行解密验证,获取电力加密数据的密钥;
否则,电力用户制作授权密钥并将授权密钥发送给解密服务器进行外包解密验证得到解密中间结果,并将所述中间结果发送给电力用户。
5.如权利要求2所述的访问控制方法,其特征在于,还包括,电力终端可以通过外包加密的方式对访问控制策略加密。
6.一种基于区块链的电力终端数据访问控制系统,其特征在于,包括:
数据加密模块、控制策略加密模块、请求数据模块、验证模块和解密模块;
所述数据加密模块,电力终端采用对称加密技术加密电力数据明文,将加密后的电力数据明文上传至存储服务器中并获得对应的存储地址;
所述控制策略加密模块,电力终端利用自身拟定的访问控制策略结合从区块链获取的公共参数对加密后的电力数据明文的密钥加密得到访问控制策略密文,并将访问控制策略密文和存储地址上传至区块链中;
所述请求数据模块,电力用户向区块链请求访问电力数据,获取由区块链下发的对应的访问控制策略密文、存储地址以及区块链不同属性管理节点下发的密钥集和公共参数;
所述验证模块,电力用户利用获得的来自区块链不同属性管理节点的密钥集和公共参数,对所述访问控制策略密文进行解密验证,若解密验证成功,则获取加密电力数据明文的密钥,否则结束操作;
所述解密模块,电力用户根据存储地址从存储服务器中获取访问控制策略对应的加密后的电力数据明文,并利用所述密钥解密加密后的电力数据明文得到电力数据明文。
CN202110578129.0A 2021-05-26 2021-05-26 一种基于区块链的电力终端数据访问控制方法及系统 Pending CN113515759A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110578129.0A CN113515759A (zh) 2021-05-26 2021-05-26 一种基于区块链的电力终端数据访问控制方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110578129.0A CN113515759A (zh) 2021-05-26 2021-05-26 一种基于区块链的电力终端数据访问控制方法及系统

Publications (1)

Publication Number Publication Date
CN113515759A true CN113515759A (zh) 2021-10-19

Family

ID=78065115

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110578129.0A Pending CN113515759A (zh) 2021-05-26 2021-05-26 一种基于区块链的电力终端数据访问控制方法及系统

Country Status (1)

Country Link
CN (1) CN113515759A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113918982A (zh) * 2021-12-15 2022-01-11 国网区块链科技(北京)有限公司 一种基于标识信息的数据处理方法及系统
CN114666034A (zh) * 2022-03-14 2022-06-24 北京交通大学 一种物联网场景下基于区块链的用户行为隐私保护方法
CN115150200A (zh) * 2022-09-02 2022-10-04 国网山东省电力公司五莲县供电公司 一种基于区块链的电力数据共享系统及设备
CN115277052A (zh) * 2022-06-07 2022-11-01 国网北京市电力公司 基于区块链的数据加密方法、装置以及电子设备
CN116723002A (zh) * 2023-05-06 2023-09-08 国网浙江省电力有限公司 基于态势感知的电力报告智能加密方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113918982A (zh) * 2021-12-15 2022-01-11 国网区块链科技(北京)有限公司 一种基于标识信息的数据处理方法及系统
CN114666034A (zh) * 2022-03-14 2022-06-24 北京交通大学 一种物联网场景下基于区块链的用户行为隐私保护方法
CN114666034B (zh) * 2022-03-14 2023-01-17 北京交通大学 一种物联网场景下基于区块链的用户行为隐私保护方法
CN115277052A (zh) * 2022-06-07 2022-11-01 国网北京市电力公司 基于区块链的数据加密方法、装置以及电子设备
CN115150200A (zh) * 2022-09-02 2022-10-04 国网山东省电力公司五莲县供电公司 一种基于区块链的电力数据共享系统及设备
CN116723002A (zh) * 2023-05-06 2023-09-08 国网浙江省电力有限公司 基于态势感知的电力报告智能加密方法
CN116723002B (zh) * 2023-05-06 2023-12-15 国网浙江省电力有限公司 基于态势感知的电力报告智能加密方法

Similar Documents

Publication Publication Date Title
CN110474893B (zh) 一种异构跨信任域密态数据安全分享方法及系统
CN109690551B (zh) 区块链数据保护方法、装置、系统及计算机可读存储介质
Liang et al. PDPChain: A consortium blockchain-based privacy protection scheme for personal data
CN108418681B (zh) 一种支持代理重加密的基于属性的密文检索系统及方法
CN110099043B (zh) 支持策略隐藏的多授权中心访问控制方法、云存储系统
Li et al. Full verifiability for outsourced decryption in attribute based encryption
Hong et al. TAFC: Time and attribute factors combined access control for time-sensitive data in public cloud
CN113515759A (zh) 一种基于区块链的电力终端数据访问控制方法及系统
Khan et al. Towards secure mobile cloud computing: A survey
Han et al. A data sharing protocol to minimize security and privacy risks of cloud storage in big data era
Bakas et al. Modern family: A revocable hybrid encryption scheme based on attribute-based encryption, symmetric searchable encryption and SGX
CN108768951B (zh) 一种云环境下保护文件隐私的数据加密和检索方法
Shen et al. Multi-security-level cloud storage system based on improved proxy re-encryption
He et al. Lightweight attribute based encryption scheme for mobile cloud assisted cyber-physical systems
Rana et al. Efficient and secure attribute based access control architecture for smart healthcare
CN114239046A (zh) 数据共享方法
CN115314321B (zh) 基于区块链无需安全通道的可搜索加密方法
Tu et al. A secure, efficient and verifiable multimedia data sharing scheme in fog networking system
Esther et al. Trustworthy cloud storage data protection based on blockchain technology
Ra et al. A federated framework for fine-grained cloud access control for intelligent big data analytic by service providers
AboDoma et al. Adaptive time-bound access control for internet of things in fog computing architecture
Mosteiro-Sanchez et al. End to end secure data exchange in value chains with dynamic policy updates
Jaatun et al. A farewell to trust: An approach to confidentiality control in the cloud
CN116800398A (zh) 一种基于sse和区块链的供应链信息密文可搜索系统
Jiang et al. A novel privacy preserving keyword search scheme over encrypted cloud data

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