智能电表校验方法、装置、智能电表及存储介质制造方法及图纸

技术编号:27310859 阅读:41 留言:0更新日期:2021-02-10 09:33
本发明专利技术公开了一种智能电表校验方法,根据智能电表的当前程序通过完整性检查模块ICM程序计算得到的第一校验码;获取当前所述智能电表预先存储的第二校验码,所述第二校验码是根据ICM程序计算得到的;根据所述第一校验码与所述第二校验码以对所述智能电表进行校验。本发明专利技术还公开了一种智能电表校验装置、智能电表及存储介质。本发明专利技术旨在提升智能电表的校验有效性及校验效率。效性及校验效率。效性及校验效率。

【技术实现步骤摘要】
智能电表校验方法、装置、智能电表及存储介质


[0001]本专利技术涉及智能电表领域,尤其涉及一种智能电表校验方法、装置、智能电表及存储介质。

技术介绍

[0002]随着电表的智能化,目前使用的智能电表均采用代码控制,而在现场运行过程中智能电表中的程序代码存在被篡改的风险,其中,如果修改计量部分代码,此时电能表还能正常运行,但同时会给用户或国家造成不可估量的经济损失,因此需要对智能电表进行校验。目前,一般采用循环冗余校验(Cyclic Redundancy Check,CRC),并将校验码保存在带电可擦可编程只读存储器(Electrically Erasable Programmable read only memory,EEPROM)里面,但由于智能电表的程序代码是保存在外部闪速存储器(flash)里面,而每次智能电表升级都会擦除掉内部flash,并将外部flash拷贝到内部flash,因此通过现有采用的智能电表的校验方式,根本无法获取智能电表被纂改的记录,从而也检测不到智能电表被篡改的信息。

技术实现思路

[0003]本专利技术的主要目的在于提供一种智能电表校验方法、装置、智能电表及存储介质,旨在解决如何防止智能电表被篡改的技术问题。
[0004]为实现上述目的,本专利技术提供一种智能电表校验方法,所述方法包括以下步骤:
[0005]根据智能电表的当前程序通过完整性检查模块ICM程序计算得到第一校验码;
[0006]获取当前所述智能电表预先存储的第二校验码,所述第二校验码是根据ICM程序计算得到的;
[0007]根据所述第一校验码与所述第二校验码以对所述智能电表进行校验。
[0008]可选地,所述根据所述第一校验码与所述第二校验码以对所述智能电表进行校验的步骤,包括:
[0009]判断所述第一校验码与所述第二校验码是否相同;
[0010]若是所述第一校验码与所述第二校验码相同,则判定所述智能电表校验成功;
[0011]否则,则判定所述智能电表校验失败。
[0012]可选地,所述根据智能电表的当前程序通过完整性检查模块ICM程序计算得到第一校验码的步骤之前,包括:
[0013]若是接收到用户发起的升级请求,则控制智能电表进行升级;
[0014]根据所述智能电表升级后的程序通过ICM程序计算得到所述智能电表升级后的第二校验码。
[0015]可选地,所述控制智能电表进行升级的步骤,包括:
[0016]下载升级程序包;
[0017]校验所述升级程序包;
[0018]校验后置上标识flag;
[0019]根据启动程序判断所述标识flag是否存在;
[0020]若存在,则启动智能电表程序升级。
[0021]可选地,所述根据所述智能电表升级后的程序通过ICM程序计算得到所述智能电表升级后的第二校验码的步骤,包括:
[0022]将外部闪速存储器flash中的程序写入微控制单元MCU内部flash中;
[0023]根据所述MCU内部flash中升级后的程序通过所述ICM程序计算得到所述智能电表升级后的第二校验码。
[0024]可选地,所述根据所述智能电表升级后的程序通过ICM程序计算得到所述智能电表升级后的第二校验码的步骤之后,包括:
[0025]将所述智能电表升级后的第二校验码保存在带电可擦可编程只读存储器EEPROM中。
[0026]可选地,所述根据所述智能电表升级后的程序通过ICM程序计算得到所述智能电表升级后的第二校验码的步骤还包括:
[0027]通过采用SHA1、SHA224和SHA256三种中一种的加密算法计算获取所述第二校验码。
[0028]此外,为实现上述目的,本专利技术还提供一种智能电表校验装置,所述智能电表校验装置包括:存储器、处理器及存储在存储器上并可在所述处理器上运行的智能电表校验程序,所述智能电表校验程序被所述处理器执行时实现如上述任一项所述的智能电表校验方法的步骤。
[0029]此外,为实现上述目的,本专利技术还提供一种智能电表,所述智能电表包括如上述所述的智能电表校验装置。
[0030]此外,为实现上述目的,本专利技术还提供一种存储介质,所述存储介质上存储有智能电表校验程序,所述智能电表校验程序被处理器执行时实现如上述所述的智能电表校验方法的步骤。
[0031]本专利技术实施例提出的一种智能电表校验方法,通过根据智能电表的当前程序通过完整性检查模块ICM程序计算得到的第一校验码;获取当前所述智能电表预先存储的第二校验码,所述第二校验码是根据ICM程序计算得到的;根据所述第一校验码与所述第二校验码以对所述智能电表进行校验,实现了在智能电表每次上电后都能实时有效的对智能电表进行校验,获取智能电表内部的完整性情况,从而避免了智能电表程序被篡改的风险,提升了智能电表校验有效性及校验效率。
附图说明
[0032]图1是本专利技术实施例方案涉及的硬件运行环境的终端\装置结构示意图;
[0033]图2为本专利技术智能电表校验方法第一实施例的流程示意图;
[0034]图3为图2中根据所述第一校验码与所述第二校验码以对所述智能电表进行校验的步骤的细化流程示意图;
[0035]图4为本专利技术智能电表校验方法第二实施例的流程示意图。
[0036]本专利技术目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
[0037]应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。
[0038]本专利技术实施例的主要解决方案是:
[0039]由于现有技术一般采用循环冗余校验(Cyclic Redundancy Check,CRC),并将校验码保存在带电可擦可编程只读存储器(Electrically Erasable Programmable read only memory,EEPROM)里面,但由于电能表的程序代码是保存在外部闪速存储器(flash)里面,而每次电能表升级都会擦除掉内部flash,并将外部flash拷贝到内部flash,因此通过电能表的校验,根本无法获取先前电能表被纂改的记录,从而也检测不到电能表被篡改的信息。
[0040]本专利技术提供一种解决方案,使通过根据智能电表的当前程序通过完整性检查模块ICM程序计算得到的第一校验码;获取当前所述智能电表预先存储的第二校验码,所述第二校验码是根据ICM程序计算得到的;根据所述第一校验码与所述第二校验码以对所述智能电表进行校验,实现了在智能电表每次上电后都能实时有效的对智能电表进行校验,获取智能电表内部的完整性情况,从而避免了智能电表程序被篡改的风险,提升了智能电表校验有效性及校验效率。
[0041]如图1所示,图1是本专利技术实施例方案涉及的硬件运行环境的终端结构示意图。
[0042]本专利技术实施例终端为智能电表,所述智能电表包括智能电表检测装置,如图1所示,该智能电表可以包括:本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种智能电表校验方法,其特征在于,所述方法包括以下步骤:根据智能电表的当前程序通过完整性检查模块ICM程序计算得到第一校验码;获取当前所述智能电表预先存储的第二校验码,所述第二校验码是根据ICM程序计算得到的;根据所述第一校验码与所述第二校验码以对所述智能电表进行校验。2.如权利要求1所述的智能电表校验方法,其特征在于,所述根据所述第一校验码与所述第二校验码以对所述智能电表进行校验的步骤,包括:判断所述第一校验码与所述第二校验码是否相同;若是所述第一校验码与所述第二校验码相同,则判定所述智能电表校验成功;否则,则判定所述智能电表校验失败。3.如权利要求1所述的智能电表校验方法,其特征在于,所述根据智能电表的当前程序通过完整性检查模块ICM程序计算得到第一校验码的步骤之前,包括:若是接收到用户发起的升级请求,则控制智能电表进行升级;根据所述智能电表升级后的程序通过ICM程序计算得到所述智能电表升级后的第二校验码。4.如权利要求3所述的智能电表校验方法,其特征在于,所述控制智能电表进行升级的步骤,包括:下载升级程序包;校验所述升级程序包;校验后置上标识flag;根据启动程序判断所述标识flag是否存在;若存在,则启动智能电表程序升级。5.如权利要求3所述的智能电表校验方法,其特征在于,所述根据所述智能电表升级后的程序通过ICM程序计算得到所述智能电表升级后的...

【专利技术属性】
技术研发人员:杨勇张宇宋慧娜李军石理宁李强李斌
申请(专利权)人:威胜集团有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1