基于区块链的电力营销数据存储方法分析
2021-01-07王杰峰
龙 娜,王杰峰,王 策
(贵州电网公司信息中心,贵州 贵阳 550000)
人们在日常生活中使用电气设备会产生电力数据,电力营销数据包括用户的家庭住址、用电量、电费等,这些数据作为客户个人隐私,电力企业收集这些数据信息的同时,需要对数据进行分析。应用区块链技术进行电力数据存储工作中,有效的与传统存储工作拉开差距,并且可以有效保障数据安全性,保障电力信息储存的安全问题,满足现阶段电力营销数据对于数据存储的各项需求。
1 相关背景知识
区块链数据结构以分布式进行展现,这种结构可以有效的进行数据传递。区块链是基于新时期分布式计算和存储研发出来的新型数据存储技术。在传递数据的过程中,其行为是受到相关机制保护的,具有绝对的安全性。即便遭遇网络攻击,或者信号影响,都不会影响区块链对数据进行传递和分享。
区块链技术所拥有的技术优势使得信息达成共识状态,对于区块链可以将其看成一个完整的信息体,经过其处理的数据按照处理时间进行保存,成为区块。通过哈希值,将各个区块有效的链接在其一起,形成了区块链,如图1所示。
图1 区块的链式结构图
在区块链的网络中,任何节点都可以访问,不受到限制,诸多的节点形成一个对等网络,并进行交互,交互流程如下。
1)节点之间进行交互,可以通过钥匙与进行交互。钥匙分为私钥和公钥,私钥负责自己的交易,使用公钥可以在网络上寻找地址。区块链中的加密技术可以在存储信息的过程中,对信息的情况加以认证,并将完整的信息传递到网路当中。
2)区块链网络中的节点在数据存储的过程中,需要对当前进行的行为验证,这样能有效保证存储行为真实有效。通过节点验证后,将验证信息散发至全网数据中,实现信息同步。
3)约定的时间间隔内,网络通过上述流程收集各项事务,通过整合排序,形成时间戳,等待候选的过程。
4)节点验证的交易时面对信息需要具备完整性,并且在当前的散列上使用前一个区块的值,在实际使用的时候如果不是这样,则需要丢弃候选区块。
区块链应用程序为了满足各种设备需求,提供了应用程序接口,通过API进行交互,底层技术问题就无需担心了。通常情况下,区块链网络中任何节点都可以发布事务,存储的数据经过节点验证后,会进入到新区块中。系统节点会根据验证的结果对节点进行检查,确保节点可以进入其他网络。每个节点都可以在验证后拓展出新区块并发展到区块链中。
2 区块链数据存储技术
区块链的每个区块中都由区块和区块头两部分组成,而区块链则是由这些区块头组合而成,大量的区块头使得区块链更加完整。目标区块也是前一个区块的哈希值和随机数组合生成的。根哈希验证交易的真实性,经过验证不会出现伪造交易。区块体分别对每一次的交易数据进行存储,交易数据的结构根据区块链系统具备的功能决定。
区块链是在信息交易形成存在的基础下得以诞生的系统,因此,其系统中包含大量关于交易的数据信息。庞大的数据以Merkle树的形式展现,并以树状结构对数据加以存储。
其中Merkle树的数据结构可以是二叉或者演变成N叉,如图2所示,比特币中使用的就是这种二叉树的结构。Merkle树本身需要大数据,将其压缩成字符,证明其保留的数据真实性,也无需显示原始数据。Merkle树是从下至上进行数据结构构建的。Merkle树结构中会根据实际需求为其命名,而用户可以根据这一点对内容进行识别,无需解压文件。区块链在系统方面也会有所不同,因此在数据存储结构上要区别开来,具体可以参照图2和表1,进行充分的观察。
图2 Merkle树图
表1 典型区块链存储结构对比表
3 区块链数据储存方式
3.1 区块链的电力营销数据存储架构
基于区块链技术,面向电力营销数据存储提出一种存储模型,为区块链提供存储服务,区块链的存在能更好地为分布式存储方式提供安全性的支撑保障,其构架如图3所示。
基于区块链电力数据存储包含电力营销分布式存储以及多级加密。电力数据分布式流程需要智能电网设备或者用户端向存储系统发出请求,经由系统分布式节点为其提供服务,经过存储之后的数据会在区块链上留下记录,使用者可以针对本次的服务对区块链存储服务进行评价[1]。
首先,智能电网设备或者用户端需要向区块链存储服务系统发送存储电力数据的请求。并在分布式存储的众多节点中选择一个节点提供服务,并向区块链存储系统发送请求,在请求发送后的一分钟之内,是不能再次向其他节点发送请求的。而正常情况下,另一边的存储节点会收到请求,经过确认后开始进行数据传输。
然后,在线节点会收到另一边的存储请求,并为其提供存储服务,系统会按照请求的时间顺序逐一进行回复。请求服务方在收到节点回复的消息后,开始向节点传输电力数据。
最后,当请求服务完成后,将另一边传送过来的数据进行记录传输至区块链上。请求端对本次的服务进行评价,评价信息可以作为存储节点的信用分,根据信用分的累积情况对其储存性能进行判断[2]。
图3 数据分布储存架构图
3.2 电力营销数据保密性研究
基于区块链存储技术,为了保障数据的安全,提出一种多级加密机制,通过这种加密机制实现数据安全性传输。并且该机制与分布式存储在一起使用可以解决数据不集中的问题,加密机制采用多种逐级加密和验证,具体流程如图4。
图4 多级加密机制图
多级加密机制主要是由身份认证、数据加密、哈希提取等多种加密工序组合而成[3]。在进行身份认证时,RSA算法可以生成公钥、私钥,保护电力数据,具体的算法如下。
首先需要基于算法生成密钥,通过X和Y两个质数计算乘积N=X·Y;得出N的欧拉函数φ(N),也就是(X-1)*(Y-1)的乘积;再随机选择一个整数e;整数e需要满足1 数据加密采用了非对称加密算法AES完成加密,实现数据存储的安全性。 针对于传统数据存储与区块链数据存储的机制进行实践,通过实践结果对比两方的性能。实验主要针对传输过程中的延迟、吞吐量以及系统响应速度作为评估的具体指标。使用四台计算机搭建分布式存储系统,每一台计算机的配置都是相同的,智能电力设备由笔记本电脑模拟,笔记本电脑是区块链技术构成的实验节点。经过实验比较可以很明显的看出本文提出的区块链存储机制延迟情况、和吞吐量情况均优于传统模式,响应速度更快,满足电力大数据的存储效率需求[4]。 针对于数据安全防护技术,可以使用加密或者脱敏法对原始数据进行加密,加密法以密文的形式进行存储,数据脱敏通过计算原始数据得到使用数据,通过AES、RSA对数据进行加密,数据将以密文的形式进行传输和存储,加强电力营销数据的安全性。实验结果明确表明了区块链电力营销数据存储机制的高效性能,更加适合进行数据存储,保障数据的安全性。但是该系统中采用的分布式数据库,对于不完整的数据无法正常进行存储工作。因为数据需要根据被服务方的实际需求进行存储,并保障文件的安全性。用户在使用的时候才不会出现数据存在问题或者被泄露等情况。通过采样抽取对两种方法的数据完整性进行分析,根据Setup和Challenge两个阶段可以轻易得出信息的完整性,最后的等式成立则说明该种方式具有数据的完整性证明;如果不成立,则说明数据文件可能已经损坏[5]。 综上所述,针对传统电力营销数据存储出现延迟、扩展性等问题,提出区块链技术存数架构。有效对电力营销数据进行存储的同时,还拥有数据追溯、审计、存储稳定性高等多种优势。基于数据安全性设置加密机制,有效保障数据传输过程的安全性。与传统集中式电力数据存储技术相比较,区块链电力数据存储技术更加优异,可以解决数据存储过程中的延迟等现象,更好的保障电力营销数据存储的稳定性。3.3 实验仿真
3.4 数据安全性分析
4 结 语