CN103685212B - 一种用于电能表无线抄表模块的固件保护方法 - Google Patents
一种用于电能表无线抄表模块的固件保护方法 Download PDFInfo
- Publication number
- CN103685212B CN103685212B CN201210363890.3A CN201210363890A CN103685212B CN 103685212 B CN103685212 B CN 103685212B CN 201210363890 A CN201210363890 A CN 201210363890A CN 103685212 B CN103685212 B CN 103685212B
- Authority
- CN
- China
- Prior art keywords
- firmware
- meter
- code
- key
- reading module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 238000004364 calculation method Methods 0.000 abstract 3
- 238000004891 communication Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000001186 cumulative effect Effects 0.000 description 2
- 230000005611 electricity Effects 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000004899 motility Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000001681 protective effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Landscapes
- Selective Calling Equipment (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及一种用于电能表无线抄表模块的固件保护方法。计算关键代码段的CRC校验和,与预设的校验和比较如果计算所得的结果和程序中预设的不一致,则终止运行;如果计算所得的结果和预设的一致,则读取无线抄表模块的硬件特征信息;使用预定的计算方法计算特征信息,产生特征密钥;如果固件中预置的密钥写入方法没有被删除,则使用所述密钥写入方法将所述特征密钥写入固件中,将该写入方法删除;如果固件中的密钥写入方法已经被删除,则将产生的特征密钥与固件中的特征密钥比较,密钥一致则继续运行,否则终止运行。本发明方法简单易行,在利用硬件特征数据保证程序唯一性的同时,也保护了程序的完整性和合法性,使固件不易被破解。
Description
技术领域
本发明属于无线传感器网络通信领域,具体是一种用于电能表无线抄表模块的固件保护方法。
背景技术
随着经济体制改革的深入,电能计量、电费核算及收缴的及时性和准确性已成为用电企业的重要课题。目前我国的电能计量方式采取的是一户一表制,这就决定了抄表***主要具有如下两个特点:1.抄表***数据采集点多,成千上万,数据量大;2.采集点具有分散性,使得抄表***是一个覆盖面很广的通信网络。这就给抄表工作带了很大的困难。
自动抄表***的研制与应用是解决上述问题的有效途径。电能表自动抄表简称ARM(Automatic Reading Meter),是供电部门将安装在用户处的电能表所记录的用电量等数据通过遥测、传输,再由计算机***汇总到营业部门,代替人工抄表及后续工作。目前的自动抄表***,从数据传输角度划分,可分为有线、无线两大类,这两大类抄表***各有其适用的应用领域,但就抄表***的投资、建设、维护等几方面而言,无线抄表***显然具有更大优势。特别是随着智能电网概念的提出,对需求侧通信网络的可靠性、实时性、灵活性以及大数据量传输提出了更高的要求。
低功耗无线传感器网络技术是近年来获得迅猛发展的通信技术。低功耗无线传感器网络技术主要用于近距离无线连接,目标市场是工业,家庭以及医疗等需要低功耗低成本以及大面积使用无线监控设备的领域。低功耗无线传感器网络技术在自动抄表***中具有无可比拟的优势:抄表终端具有超低功耗,低成本,能够满足大数据量的通信需求,同时,具有较强的抗干扰能力,通信实时性较高。无线抄表***是远程抄表***的一大发展方向,作为其主要组成部分的无线抄表模块的产量必将越来越多,为其固件提供保护措施将变的尤为重要。
发明内容
本发明的目的是为电能表无线抄表模块提供一种固件保护的方法,可以有效保护固件的完整性和合法性。
本发明为实现上述目的所采用的技术方案是:一种用于电能表无线抄表模块的固件保护方法,包括以下步骤:
计算电能表无线抄表模块的固件代码中关键代码段的CRC校验和,与固件代码中预设的CRC校验和作比较;
如果计算的CRC校验和与预设的CRC校验和不一致,则判定固件代码内容被篡改,无线抄表模块停止工作;
如果计算的CRC校验和与预设的CRC校验和一致,则读取无线抄表模块的硬件特征信息,通过计算产生特征密钥;
如果固件代码中预置的密钥写入方法没有被删除,则密钥写入方法将产生的特征密钥写入固件代码中,覆盖固件代码中已有的特征密钥,然后将该密钥写入方法删除,进入无线抄表模块的抄表程序;
如果固件代码中预置的密钥写入方法已经被删除,则将计算产生的特征密钥与固件代码中已有的特征密钥比较,密钥一致则进入无线抄表模块的抄表程序,否则无线抄表模块停止工作。
所述关键代码段为固件代码开始的2K字节代码,包含本固件保护方法中涉及程序流程跳转的代码。
所述硬件特征信息包括无线抄表模块所使用的控制器芯片所具有的序列码。
所述密钥写入方法为固件中具有对自身固件代码读写操作功能的一段代码,可以被单独删除,而不影响其他固件代码功能。
所述固件代码中已有的特征密钥为N字节的数据,分散在固件代码的不同地址空间。
本发明具有以下优点:
1.本发明方法简单易行。
2.本固件保护方法在利用硬件特征数据保证程序唯一性的同时,也保护了程序的完整性和合法性,使固件不易被破解。
附图说明
图1是本发明方法流程图。
具体实施方式
下面结合附图及实施例对本发明做进一步的详细说明。
如图1所示,一种用于电能表无线抄表模块的固件保护方法,包括以下步骤:
计算电能表无线抄表模块的固件代码中关键代码段的CRC校验和,与固件代码中预设的CRC校验和作比较;预设的CRC校验和表征了CRC校验和在固件代码内容没有被篡改情况下的CRC校验和的值。本实施例中所述关键代码段为固件代码开始的2K字节代码,包含本固件保护方法中涉及程序流程跳转的代码。
如果计算的CRC校验和与预设的CRC校验和不一致,则判定固件代码内容被篡改,程序终止运行,无线抄表模块停止工作;
如果计算的CRC校验和与预先计算的CRC校验和一致,则读取无线抄表模块的硬件特征信息,通过计算产生特征密钥;本实施例中无线抄表模块的控制器采用的是STM32F103C8T6,该单片机的每个芯片都具有一个唯一的96位序列号,这个序列号是在出厂时设定且不可改变。读取这个序列号后,先将它们分成12个字节,然后计算这12个字节数据的CRC校验和,CRC校验和为2个字节,另外将这12个字节作累加和得到2个字节。这样2字节的CRC校验和、2字节的累加和组成了4个字节的特征密钥。所述固件代码中已有的特征密钥为N字节的数据,分散在固件代码的不同地址空间。本实施例的特征密钥即为4个字节,分散存储在固件代码中。
如果固件代码中预置的密钥写入方法没有被删除,则密钥写入方法将产生的特征密钥写入固件代码中,覆盖固件代码中已有的特征密钥,然后将该密钥写入方法删除,进入无线抄表模块的抄表程序;所述密钥写入方法为固件中具有对自身固件代码读写操作功能的一段代码,可以被单独删除,而不影响其他固件代码功能。
如果固件代码中预置的密钥写入方法已经被删除,则将计算产生的特征密钥与固件代码中已有的特征密钥比较,密钥一致则进入无线抄表模块的抄表程序,否则程序终止运行,无线抄表模块停止工作。
Claims (4)
1.一种用于电能表无线抄表模块的固件保护方法,其特征在于,包括以下步骤:
计算电能表无线抄表模块的固件代码中关键代码段的CRC校验和,与固件代码中预设的CRC校验和作比较;
如果计算的CRC校验和与预设的CRC校验和不一致,则判定固件代码内容被篡改,无线抄表模块停止工作;
如果计算的CRC校验和与预设的CRC校验和一致,则读取无线抄表模块的硬件特征信息,通过计算产生特征密钥;
如果固件代码中预置的密钥写入方法没有被删除,则密钥写入方法将产生的特征密钥写入固件代码中,覆盖固件代码中已有的特征密钥,然后将该密钥写入方法删除,进入无线抄表模块的抄表程序;
如果固件代码中预置的密钥写入方法已经被删除,则将计算产生的特征密钥与固件代码中已有的特征密钥比较,密钥一致则进入无线抄表模块的抄表程序,否则无线抄表模块停止工作;
所述关键代码段为固件代码开始的2K字节代码,包含本固件保护方法中涉及程序流程跳转的代码。
2.根据权利要求1所述的一种用于电能表无线抄表模块的固件保护方法,其特征在于,所述硬件特征信息包括无线抄表模块所使用的控制器芯片所具有的序列码。
3.根据权利要求1所述的一种用于电能表无线抄表模块的固件保护方法,其特征在于,所述密钥写入方法为固件中具有对自身固件代码读写操作功能的一段代码,可以被单独删除,而不影响其他固件代码功能。
4.根据权利要求1所述的一种用于电能表无线抄表模块的固件保护方法,其特征在于,所述固件代码中已有的特征密钥为N字节的数据,其中,N为1~4的整数,分散在固件代码的不同地址空间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210363890.3A CN103685212B (zh) | 2012-09-26 | 2012-09-26 | 一种用于电能表无线抄表模块的固件保护方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210363890.3A CN103685212B (zh) | 2012-09-26 | 2012-09-26 | 一种用于电能表无线抄表模块的固件保护方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103685212A CN103685212A (zh) | 2014-03-26 |
CN103685212B true CN103685212B (zh) | 2017-04-12 |
Family
ID=50321538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210363890.3A Active CN103685212B (zh) | 2012-09-26 | 2012-09-26 | 一种用于电能表无线抄表模块的固件保护方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103685212B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108491289A (zh) * | 2018-03-22 | 2018-09-04 | 北京顶象技术有限公司 | 固件保护方法及装置 |
CN109657425A (zh) * | 2018-12-10 | 2019-04-19 | 积成电子股份有限公司 | 一种电能表程序的现场保护方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101000649A (zh) * | 2006-12-22 | 2007-07-18 | 重庆广惠科技有限公司 | 分离式计算机软件保护器及应用软件保护方法 |
CN101425219A (zh) * | 2007-10-29 | 2009-05-06 | 吉林市曼博科技有限公司 | 一种基于无线传感器网络的智能远传电表 |
CN102236765A (zh) * | 2010-04-30 | 2011-11-09 | 深圳市合信自动化技术有限公司 | 一种可编程逻辑控制器安全保护的方法及装置 |
-
2012
- 2012-09-26 CN CN201210363890.3A patent/CN103685212B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101000649A (zh) * | 2006-12-22 | 2007-07-18 | 重庆广惠科技有限公司 | 分离式计算机软件保护器及应用软件保护方法 |
CN101425219A (zh) * | 2007-10-29 | 2009-05-06 | 吉林市曼博科技有限公司 | 一种基于无线传感器网络的智能远传电表 |
CN102236765A (zh) * | 2010-04-30 | 2011-11-09 | 深圳市合信自动化技术有限公司 | 一种可编程逻辑控制器安全保护的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103685212A (zh) | 2014-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102831756B (zh) | 移动终端定位电业抄表方法及抄表*** | |
CN106154030B (zh) | 一种智能电表及其数据加密传输方法 | |
CN204514991U (zh) | 一种智能电表 | |
CN103675621B (zh) | 一种变压器套管绝缘寿命预测装置及方法 | |
CN101907647A (zh) | 配变监测计量终端 | |
CN103685212B (zh) | 一种用于电能表无线抄表模块的固件保护方法 | |
CN203165194U (zh) | 一种准实时超低功耗无线自组网摄像直读燃气表抄表*** | |
CN206300696U (zh) | 一种基于LoRa扩频通信技术的光电直读燃气表控制器 | |
CN206178407U (zh) | 一种基于扩频通信技术的无线ic卡燃气表控制器 | |
CN201583594U (zh) | 单相载波电能表 | |
CN104655926A (zh) | 一种能监测用电信息和电费数据的嵌入式终端及其监测方法 | |
CN205066845U (zh) | 基于wifi无线传输网络的水表 | |
CN204405784U (zh) | 基于广域测量信息的配网故障检测定位装置 | |
CN202564991U (zh) | 具有读卡功能的移动电源装置 | |
CN205722183U (zh) | 一种移动抄表收费*** | |
CN210327154U (zh) | 一种智能楼宇电能监控*** | |
Li et al. | Remote Monitoring and Management System of CNG Flow based on Modbus RTU Protocol. | |
CN105206018A (zh) | 基于gsm网络的自动抄表*** | |
CN202434032U (zh) | 一种家庭无线抄水表*** | |
CN205537762U (zh) | 一种预装式变电站的温湿度测量电路 | |
CN205247610U (zh) | 一种分布式远程抄表装置 | |
CN204556723U (zh) | 一种能监测用电信息和电费数据的嵌入式终端 | |
CN203733278U (zh) | 一种电能数据采集器 | |
CN202039835U (zh) | 一种应用于阵列感应测井仪器的便携式测试刻度设备 | |
CN201508623U (zh) | 一种远程抄录*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |