APP下载

二维码在电能表本地费控中的应用研究

2022-01-03梁广明黄水莲

黑龙江电力 2021年4期
关键词:电表充值密钥

梁 捷,梁广明,黄水莲

(1.广西电网有限责任公司计量中心,南宁 530023; 2.南宁百会药业集团有限公司,南宁 530003)

0 引 言

南方电网公司2015年的技术标准给智能电表定义了本地和远程两种费控模式,利用本地模式下电表存储用户的剩余金额和购电次数等信息,可实现本地计费和对电表的费控拉合闸操作[1]。但通过购电卡传输费控信息需要用户到指定电力客服网点写卡,且由于远程费控系统建设滞后等原因,目前使用最多的仍是远程模式智能电表。该模式存在的问题是,用户购电后远程合闸复电经常因为计量自动化系统信道干扰和终端失电掉线等问题导致合闸失败[2]。

为了提升用户购电和复电过程的便捷性和安全性,研究一种既能提供方便快捷服务,又能保证费控系统信息交互安全性的本地费控方案,成为供电公司的工作目标。

随着新标准智能电能表在南方电网的推广使用,结合现有技术标准以及电网公司本地费控业务的实际应用需求,基于“一次一密”的密钥安全机制,设计一种基于二维码虚拟介质的本地费控业务信息传输方案。

1 本地费控信息二维码传输方案

随着网络信息化发展和移动应用的推广使用,用户需求倾向于采用移动支付等手段完成购电充值等业务。为了满足用户足不出户的需求,须提高智能电表本地费控业务办理的便利性。

基于二维码虚拟介质的本地费控业务信息传输方案的特点在于,当计量系统对用户远程购电成功但充值复电指令下发失败或因故延迟时,用户可通过智能手机申请获取自主购电复电虚拟介质,而后只需经过智能交互终端读取识别该介质并完成两者间的安全认证,即可对电表传输充值、复电指令,从而自主实现本地费控业务。

如图1,以基于二维码介质的本地复电业务为例,其信息交互流程为:

图1 基于二维码介质的本地复电过程

1) 用户网上购电付费成功后,费控系统主站调用虚拟介质模块接口发起远程复电业务请求流程,虚拟介质模块接收复电请求,利用该报文内的户号、表号、充值金额、充值时间等购电信息生成复电虚拟介质;

2)通过加密模块接口调用加密机对该介质进行加密并计算交互终端数据认证校验码MAC1,并将该介质的密文和MAC1返回给费控系统;

3)费控系统通过短信服务模块发送包含虚拟介质链接的短信至用户手机;用户接收到短信后,访问短信中的链接,获取加密后的虚拟介质二维码;

4)用户在电表安装现场或电网购电营业厅设置的智能交互终端上以扫码方式识读虚拟介质。交互终端通过其内置的安全模块对虚拟介质二维码进行解密和MAC1验证,生成复电/充值指令,并计算形成电表复电数据认证校验码MAC2,从而组成远程复电指令,并发送给指定电表;

5)电表对复电指令进行解密和认证,从户号、表号是否匹配,剩余金额是否充足等方面判断是否满足复电条件,若满足则对电表进行合闸复电操作。

所述智能交互终端根据南方电网现行费控交互终端技术规范设计,并在其基础上增加虚拟介质识读功能。

2 二维码传输方案的安全机制设计

为保证第1节所述方案中信息传递过程的安全性,设计了一种二维码数据传输的安全加密机制。

加密算法采用国密SM1对称密钥算法,该算法不公开,仅以IP核的形式存在于加密芯片中,使用时通过加密芯片的接口进行调用[3]。二维码的安全加密采用“一次一密”方式,其密钥传输过程如图2所示。该算法要求每次对明文的加密采用不同的过程密钥来完成,过程密钥是密钥传输时在随机数参与下对主密钥进行分散产生的。采用这种加密方式时,除非攻击者知道主密钥信息,否则须经过2n(n为明文长度)次破解尝试才能获得密钥,当明文较长时计算量剧增,难以在有限的时间内完成,故该加密机制理论上具有较高的安全性。

图2 “一次一密”密钥传输过程

2.1 密钥生成

密钥管理系统是生成和管理密钥的专用系统。密钥生成时,计量主站和智能交互终端首先通过密钥管理系统获得共同的传输主密钥和认证密钥。主站端的主密钥保存于专用加密机内,智能交互终端的主密钥保存于终端安全模块(ESAM)内,仅能在芯片内部解密时使用,无法从外部读取破解。

2.2 报文加密

加密时首先生成128位随机数,利用随机数对传输主密钥执行分散操作。分散过程包括左右循环、分组和单向HASH变换[4]等,目的是为了提高数字串的混乱程度,进而优化生成密钥的安全性。

使用经过分散获得的过程密钥,对二维码数据明文进行加密获得密文,同时使用认证密钥对数据明文进行HASH转换获得数据认证验证码A。

2.3 密文发送

将数据密文、随机数和验证码A打包形成传输报文,然后转换为二维码发送给用户。

2.4 报文解密

用户获取二维码后在智能交互终端扫码识别。交互终端将二维码解码后送入ESAM,ESAM利用内部存储的传输主密钥和报文中的随机数进行同样的分散操作获得传输过程密钥,再利用该密钥对数据密文进行解密获得二维码明文。然后,ESAM利用内部存储的认证密钥对数据明文进行HASH转换获得验证码B,比较报文中验证码A与B是否相同即可确定接收报文与传输报文是否一致。

3 智能交互终端硬件设计

智能交互终端硬件设计如图3,主要由RFID模块[5]、虚拟介质识别模块、安全模块、通信模块、主控模块构成。除了传统购电卡的读取功能,智能交互终端还支持二维码等虚拟介质的读取,并与营销主站及手持服务终端等维护设备构成智能化的用户费控业务信息管理系统。

图3 智能交互终端硬件设计框图

南方电网公司本地费控智能电表购电卡使用13.56 MHz的射频IC卡,又称非接触式IC卡,属于高频标签的一种,具有较高的数据传输速率和响应速度[6]。图3中,智能交互终端的RFID模块主要是通过射频天线产生一个能量来供给购电卡工作,使购电卡内芯片完成数据读取、修改和存储,并返回相关信息给RFID模块。主控模块主要根据用户命令调度交互终端中其他功能模块完成购电卡或二维码等虚拟介质中的用户信息采集及其他指定功能。

虚拟介质识别模块主要由摄像头、补光设备、图像识别算法单元组成。其中,虚拟介质识别模块对当前数字或图形信号进行捕获,并将捕获到的信号进行处理,得到虚拟介质承载的二进制原始数据,并发送至相关模块进行下一步处理。

为了用户敏感数据的安全,购电卡和虚拟介质的数据均需进行加密,因此终端内嵌专用安全模块。数据交互过程中的安全认证及加、解密流程均在安全模块内完成。安全模块符合中国南方电网公司《费控电能表信息交换安全认证技术要求》中的安全性和功能性要求,支持SM1国密算法,具有真随机数发生器[7]。

4 案例测试

为了验证所设计的信息传输方案的可行性和智能交互终端的功能,搭建测试平台对二维码复电和充值功能进行模拟测试。

4.1 二维码复电功能测试

二维码复电功能测试平台架构如图4,主要包括ESAM工装、读卡器和上位机。测试时,交互ESAM安装在工装内,将卡片形式封装的电表安全芯片插入读卡器主卡槽,然后分别连接到测试主机的USB口,在测试主机上运行交互终端安全模块测试软件进行二维码复电功能验证。软件界面如图5所示。

图4 二维码复电功能测试平台

图5 虚拟介质交互终端专用安全模块流程测试

在测试软件内选择执行复电指令测试命令,进行智能交互终端安全模块的二维码复电命令测试。测试结果如图6所示,上位机下发模拟复电命令至模拟智能交互ESAM工装后,安全模块能够正常解读。然后转发至电表ESAM芯片,该芯片解密后,从电表芯片中能够读取出复电命令明文(即远程控制命令),解密报文与所下发的一致,则表明测试成功。

图6 复电命令测试

4.2 二维码充值功能测试

二维码充值功能测试平台包括上位机和智能交互终端,上位机用于产生充值复电密文二维码,智能交互终端内置专用ESAM,并具备二维码扫码设备,可以直接扫描识别测试主机产生的密文二维码。

在测试软件内执行二维码充值指令测试命令,上位机生成充值命令二维码,使用智能交互终端扫描读取该二维码。测试结果如图7,可见,交互终端完成了与电表的交互充值,充值命令发送成功。

图7 充值命令测试

若重复扫描二维码,由于“一次一密”的安全机制,可观察到电表内充值金额未重复增加,验证了充值二维码一次性使用的特点。

5 结 语

设计了一种通过二维码等虚拟介质为费控电能表进行充值及复电的信息传输方案,解决了远程费控模式下,智能电表实现充值及复电功能必须依赖计量自动化系统的问题。同时,结合该方案设计了一种智能交互终端,它能够读取识别以二维码形式传输的购电和复电信息,并通过本地通信信道下发给智能电表,使其执行本地费控功能。为了防止该过程可能发生的伪造、篡改、重复攻击等信息安全问题,设计了基于“一次一密”的安全加密机制。

该方案的传输及充值复电过程操作简便,不仅可为电网公司减少业务成本,还可提升用户用电满意度。

猜你喜欢

电表充值密钥
幻中邂逅之金色密钥
幻中邂逅之金色密钥
电表“对”与“错”归类巧掌握
讨厌
密码系统中密钥的状态与保护*
OPPO手机上线未成年人防沉迷系统
“蹦叭”跳动电表数
TPM 2.0密钥迁移协议研究
一元充值的陷阱
停电那点事儿