邝柱祥
(广东电网有限责任公司东莞供电局,东莞 528000)
随着先进信息技术深入融入电力计量领域,智能电表正在逐步取代传统的人工抄表流程,并广泛应用于服务于地理位置分散的用户的计量系统中。智能电表的广泛使用,可以高效采集准确、实时的用电数据,有利于控制中心及时调整供需动态,提高向消费者提供的电力服务质量[1]。
智能电表安装在客户端,分散在各个地点,并以高数据收集频率运行。因此,智能电表系统会生成大量实时分布式测量数据。这些分布式数据是智能电网的基础设施,实现电力供应商和消费者之间的数据交互,对于保障智能电网的稳定和安全运行发挥着关键作用,这对电力计量系统数据的可靠性提出了更高的要求[2]。
由于用户数据分布广泛、体量庞大,用电数据采集过程中存在信息泄露的风险,给用户体验带来不利影响。为了更好地保护用户用电隐私、保障电能计量系统的信息安全,针对海量分布式数据开发高可靠的数据采集方法已成为重要的研究热点。
本文考虑电力计量系统终端设备智能电表的运行环节,针对信息安全漏洞,提出一种基于区块链技术的电力计量系统分布式数据高可靠采集方法。通过研究电力计量系统的整体架构,分析分布式数据传输和聚合的需求,针对智能电表采集的分布式数据,提出了一种基于区块链技术的高可靠性聚合方法。此外,本文还介绍了区块链的共识算法,并通过实际应用探讨了其可靠性和有效性。
智能电表对用电数据收集模型如图1 所示,智能电表作为靠近用户的终端,地理分布于广域的千家万户,并通过电力数据可信采集终端进行用电数据的汇总和传输;位于远端的电力数据可信计量系统通过安全的通信方式,接收来自于电力数据可信采集终端的用户数据。
图1 用电数据收集模型
图1 中左侧的一列是代表安装在各个家庭中的智能电表(Smart Meter,SM)实体,中间的设备为电力数据可信采集终端。实时电表可以实时测量用户的用电量,并将数据传输到电力数据可信计量系统进行聚合和处理。智能电表的安装不仅显著提高了用电信息的采集效率,还可以为电力企业提供更准确的用电数据,优化电网规划和管理,同时也能促进用户节约能源,为实现绿色低碳发展做出贡献。
电力数据可信采集终端是智能电网的关键组件之一。它负责收集来自多个智能电表的用电数据,并汇总成有用的信息,供上层系统分析和决策。鉴于电力数据可信采集终端需要处理大量的数据流量,其性能和稳定性至关重要。此外,由于数据流量大,电力数据可信采集终端也是电网安全的一个薄弱环节,因此必须实施有效的安全措施来保护数据的机密性和完整性。
图1 中最右侧的设备是电力数据可信计量系统,是智能电网的最高级别的调度和监控中心。它负责收集并分析来自电力数据可信采集终端的用电数据,并根据实际情况进行负荷预测和生产计划调整。此外,通过对用电数据的分析,电力数据可信计量系统还可以监控电网的运行状态,及时发现和处理故障和异常情况,可见电力数据可信计量系统是智能电网运行的关键设备,其重要性不言而喻。因此必须采取严格的安全措施,确保其运行安全和可靠性。
除了以上三个主要组成部分,智能电网还涉及到许多其他的关键技术和组件,例如智能传感器、数据存储、通信协议、远程监控和控制系统等等。这些技术和组件的运作和协作,对于实现智能电网的安全稳定运行至关重要。
用电数据收集过程基于智能电网中的安全需求以及硬件条件,因而要求制定好收集模型的模型目标:
1)分布式计算任务:鉴于智能电表硬件设备的受限运算能力,应在用电数据收集模型设计中实施任务分配策略,以将一部分计算任务委派给更为强大的计算节点上。这可以通过边缘计算技术的应用来实现,将特定计算任务分配到智能电网内其他节点或者云端服务器进行处理,从而减轻智能电表的计算负担。
2)隐私保护与去标识化:用电数据的收集涉及电力供应商对特定地区所有用户的电力消费数据进行分析,但不得泄露用户身份或用电细节等敏感信息。因此,需要采用去标识化技术来保护用户隐私。去标识化技术可以对数据进行匿名化处理,以确保数据的有效性并维护用户隐私。
3)差分隐私技术:智能电表需要获取单用户非细粒度的用电信息,以用于用电账单的结算。在实现这一目标时,需要注意保护用户的隐私。可以采用差分隐私技术,对用户的用电数据进行噪音添加或者扰动,从而实现用电数据的隐私保护。
4)采集终端的安全保障:采集终端网关中存储着大量的用户用电信息,因此容易成为攻击者的目标,可能导致数据泄露或篡改。为了确保数据的安全性和完整性,可以采用密码学技术,包括数字签名、加密算法和哈希函数等来保护用电数据。此外,还可以采用多方安全计算技术,将数据分散地存储在多个节点上,并使用可靠的共识算法来确保数据的一致性,从而提高系统的安全性和可靠性。
区块链是一种由一系列区块组成的连续链条结构。每个区块中储存了特定的信息,它们按照生成的时间顺序依次连接,形成一个链条。这个链条的副本被保存在所有的服务器节点中,因此只要有一台服务器节点正常运作,整个区块链系统就能保持安全运行。这些服务器节点在区块链系统中通常被称为节点,它们为整个区块链系统提供了存储空间和计算能力支持。如果要修改区块链中的信息,必须经过半数以上节点的共识同意,并且需要修改所有节点中的信息。考虑到这些节点通常由不同的实体或主体掌控,因此篡改区块链中的信息不具备现实技术的可操作性[3,4]。
与传统网络相比,区块链具有一些独特特性,如去中心化、可追溯性、匿名性和不可篡改性等。这些特性使得区块链所记录的信息更加真实可信。通过应用区块链技术来收集用户用电信息,可以更好地保障用户的信息安全,从而提高智能电网的安全性和可靠性,赢得用户的信任。
考虑到区块链在具有分布式结构的电力计量系统中的特点,本研究采用了区块链结构来实现用电数据的可靠收集。电力消费数据是通过用户端智能电表终端上的传感器进行测量和记录的。随后,这些数据通过所在区域内的电力数据可信采集终端进行聚合,总结用户的用电量,并将其存储在可信电力数据链(Trustworthy Power Data Blockchain,TPDB)中。TPDB 链具有良好的开放性,包括电力用户、电力交易商、电力供应商等诸多电能相关主体,在获得授权的情况下可以方便地查阅对应的用户信息。这种结构充分利用了区块链的特性,确保了电力消费数据的安全、可靠和透明。
TPDB 链的用电信息采集采用逐层汇总的模型,如图2 所示,各个用户的用电情况经电力数据可信采集终端收集后,形成的用电数据采用加密方法后,形成密文形式的用电报文,经电力通信逐级上报至上一层的电力汇集设备进行聚合汇总,最后上链到TPDB 链进行用电信息的存储。
图2 TPDB 用电信息采集模型
为了方便密钥的安全维护,TPDB 上链过程使用“公钥-私钥”相匹配的非对称加密方法。智能电表、电力数据可信采集终端对用电数据的签名与加密算法分别由(G_sig,S_sig,V_sig)(生成、签名、验证)与(G_enc,E_enc,D_enc)(生成、加密、解密)表示。
参与到TPDB 链的各个电力交易主体,首先需要进行主体自身基本信息的登记和密钥的交互。智能电表、电力数据可信采集终端分别根据密钥生成算法G_enc 与G_sig,生成并派发密钥,用户端智能电表群体组成的集合{u_1,u_2,…"□",u_m}分别从电力数据可信计量系统处获取加密密钥对(sku_m^enc,pku_m^enc)与签名密钥对(〖sku〗_m^sig,pku_m^sig),而由区域电力数据可信采集终端群体组成的集合{a_1,a_2,…"□",a_n}则分别从电力数据可信计量系统处获取加密密钥对(skd_n^enc,pkd_n^enc)与签名密钥对(skd_n^sig,pkd_n^sig),每个智能电表、电力数据可信采集终端都有着一个唯一的ID 标识,电力数据可信计量系统需要分析该标识与智能电表、电力数据可信采集终端的对应关系,不仅能够确保该数据来源于真实的发送方,还能进一步验证电力数据的真实性。
智能电表不间断采集用户电量,并以固定的频率,经电力数据可信采集终端汇总后,逐级将采集到的电压、电流、有功、无功等多维电量信息上传到可信计量系统。
多维电量信息上传过程中,为了保障信息的安全性,避免被恶意第三方窃取导致用户信息泄露,或是电量信息被恶意篡改导致经济损失,电量信息采用加密、数字签名等多重密码技术方案,首先对电量数据进行Paillier 加密,所得到的密文在不掌握密钥情况下将无法破解明文内容,避免信息的泄露。为了防止密文信息被篡改,对密文信息进行数字签名,数字签名过程中,还进一步加入时间戳Timestamp,一方面报文具有时间的同步性,另一方面还可以有效防止Dos 攻击,进一步提高了电量报文的安全性。电量数据密文、时间戳Timestamp 采用数字签名后,连同验证值一起逐级发送给电力数据可信采集终端,最后汇总的所有用到数据,经共识算法确认后写入到区块链中存储,供区块链各个参与主体查阅。
对于需要细化分类的电量数据,电力数据可信采集终端从所管辖的区域内所有的智能电表中获取到对应时间内的用电数据集合{M_1,M_2,…"□",M_m}后,首先分析数据的可用性,在保证数据可用基础上,则根据数据属性拆分成对应的数据集 ([M_1^1,…"□",M_1^υ],[M_2^□,…"□",M_2^υ],…"□",[M_m^(_1),…"□",M_m^υ]),然后采用Paillier 加密算法以及数字签名算法,进行电力数据集的信息安全操作,并提交给TPDB 存储链节点,节点的选择通常根据便利原则,选择与电力数据可信采集终端就近且处理能力较强的节点,由该节点将对应的用电数据写入区块链。
共识算法是电力计量系统区块链应用的关键技术[5],随着电量计量系统规模不断扩大,接入TPDB 链的节点也日趋增多,由区块链各方共同参与的共识算法的实现难度随着区块链节点数的增加而更加复杂。为了提高共识算法效率,本文结合电力计量系统结构特点,采用由电力数据可信计量系统协调主节点的电力计量系统共识算法。
主节点承担整个区块链共识算法的协调者和引导者,对于整个区块链的上链过程,主节点率先进行区块链任务的安排,协调区块链其他节点更高效率进行共识算法的决策。需要注意的是,主节点自身在共识算法协商过程中不具备更优的投票权,只是作为组织者的角色。
由于区块链上链过程比较耗时,为了避免影响用电数据上链的实时性,采用由主节点进行用电数据同步上链的方式。具体来说,主节点与多个电力数据可信采集终端逐一进行通信后,获得进行过信息安全处理的电量报文,对该报文采用非对称密钥进行解密成明文后,进行发送方身份确认、报文完整性验证得到正确的电量数据后,进行电量数据的汇总并同步上链,具体操作流程如图3 所示。
图3 Raft 共识机制
共识机制包括一个Raft 集群包含领导者、追随者和候选者三种状态的节点。领导者负责日志的同步管理,处理来自客户端的请求,与追随者保持心跳的联系;追随者响应领导者的日志同步请求,响应候选者的邀票请求,以及把客户端请求到Follower 的事务转发(重定向)给领导者;候选者负责选举投票,集群刚启动或者领导者宕机时,状态为追随者的节点将转为候选者并发起选举,选举胜出(获得超过半数节点的投票)后,从Candidate 转为Leader 状态。
本文所研发的基于区块链的电力计量系统分布式数据可信收集方法已示范应用,如图4 所示。通过数据可信管理模块,可以直观地观察接入电力计量可信系统的设备状态,所有数据均通过区块链上链接口进行存储。对于存在窃电、数据不一致等异常情况,该系统能有效展现并提醒现场工作人员及时处理,提高了电力数据采集系统的可靠性和数据可追溯性。
图4 系统功能平台
智能电表的广泛应用导致了用户的用电数据的激增,引发了电力计量系统中用户隐私保护问题的新挑战。为了保障分布式数据的安全和智能电表收集用电数据的可靠性,本论文提出了一种创新的分布式数据收集方法以及区块链共识算法。通过充分利用区块链技术去中心化、信息可溯源、匿名性和不可篡改等特点,解决了用电数据收集与存储过程中的保密问题,能够有效保护用户的用电隐私以及电力采集系统的数据安全,初步运行结果验证了本文方法的有效性。