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