CN111339573B - 一种采用混合加密算法实现非易失性存储器数据篡改检测的方法 - Google Patents
一种采用混合加密算法实现非易失性存储器数据篡改检测的方法 Download PDFInfo
- Publication number
- CN111339573B CN111339573B CN202010162335.9A CN202010162335A CN111339573B CN 111339573 B CN111339573 B CN 111339573B CN 202010162335 A CN202010162335 A CN 202010162335A CN 111339573 B CN111339573 B CN 111339573B
- Authority
- CN
- China
- Prior art keywords
- mcu
- nonvolatile memory
- data
- electric energy
- signal
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1469—Backup restoration techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
- G06F21/79—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Quality & Reliability (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供一种采用混合加密算法识别非易失性存储器数据异常的方法,S1、MCU定时对电能计量数据进行双备份,MCU采用唯一识别ID作为加密因子K对明文P进行加密运算生成密钥C,并存储;S2、MCU定时扫描检测电子式电能表内非易失性存储器的I/O端口,判断该非易失性存储器硬件是否异常;S3、MCU定时读取非易失性存储器固定存储地址的密钥C,并进行秘钥比对,判断数据是否被异常篡改;S4、MCU触发监控非易失性存储器的时钟信号,判断异常情况。本发明采用由加密算法基于硬件ID生成的识别信息和嵌入式软件故障识别算法,该方法保证了电子式电能表中数据合法且不丢失,确保了数据存储的可靠性及安全性。
Description
技术领域
本发明属于数据存储与安全技术领域,具体涉及采用混合加密算法识别非易失性存储器数据异常的方法,适用于非易失性存储器数据的篡改及非法复制的防护。
背景技术
电子式电能表被多数国家作为用电收费的计量器具。由于电网存在断电以及停电的需求,故在电子式电能表中必须具有一个或者多个非易失性存储器,用于保护计量数据在掉电情况下不会丢失;
由于非易失性存储器的接口统一,且为开放性管脚,所以导致部分用户通过技术手段,对存储器中的数据进行非法复制、篡改、移除替换等窃电操作,使得电能计量数据的安全性以及可靠性无法得到足够保障。
发明内容
本发明的目的是针对非易失性存储器数据的篡改及非法复制的防护的问题,提出采用混合加密算法识别非易失性存储器数据异常的方法。
本发明的技术方案是:
本发明提供一种采用混合加密算法识别非易失性存储器数据异常的方法,电子式电能表的MCU执行以下步骤:
S1、MCU定时对电能计量数据进行双备份,其中一份存储在非易失性存储器中,另一份存储在MCU内FLASH的固定存储地址;
MCU采用唯一识别ID作为加密因子K对明文P进行加密运算生成密钥C,并存储在非易失性存储器中;
S2、MCU定时扫描检测电子式电能表内非易失性存储器的I/O端口,判断该非易失性存储器硬件是否异常,如硬件异常,则启用MCU内部FLASH中的电能计量数据,并触发本地信道及远程信道报警;否则,继续执行S3;S3、MCU定时读取非易失性存储器固定存储地址的密钥C,并进行密钥比对,判断数据是否被异常篡改,如比对不通过,则数据被异常篡改,启用MCU内部FLASH中的电能计量数据,并触发本地信道及远程信道报警;否则,继续执行S4;
S4、MCU触发监控非易失性存储器的时钟信号,当有中断信号产生时,识别MCU主动操作非易失性存储器频谱以外的频域信号,如异常,则启用MCU内部FLASH中的电能计量数据,并触发本地信道及远程信道报警;否则,非易失性存储器正常,使用非易失性存储器的数据。
进一步地,所述步骤S1中,电能计量数据包括:初始运行参数、客户配置参数、电费、故障及窃电记录。
进一步地,所述S1中,加密运算采用AES-128加密运算,明文P采用电子式电能表MCU当前运行软件的版本号。
进一步地,所述步骤S2中,非易失性存储器异常包括被移除和被非法复制,检测步骤具体为:检测MCU与非易失性存储器之间的TTL电平,当TTL电平为高电平时,非易失性存储器被移除;当TTL电平为低电平时,进一步判断MCU不在主动操作存储器期间是否检测到外部时钟信号,如果检测到外部时钟信号,则非易失性存储器被非法复制,如果未检测到外部时钟信号,则正常,使用非易失性存储器的数据。
进一步地,步骤S3中,进行密钥比对具体为:将MCU的唯一识别ID作为解密因子K'通过对应的解密运算,把从非易失性存储器中读取的密钥C解密成明文P',在MCU的RAM区域比对P'与原始明文P与是否一致,如果一致,则比对通过,如果不一致,则比对不用过;解密运算采用AES-128解密运算。
进一步地,所述的步骤S4中,当时钟信号中有中断信号产生,则MCU进入频谱识别模块,通过FFT算法获取外部信号的频谱,并判断此频谱中的信号是否与MCU正常操作非易失性存储器的频谱吻合,若与MCU正常操作的频谱吻合,则判定为非法篡改;若不符合MCU正常操作的频谱,则判定为干扰信号。
进一步地,本地信道为光电通信口、RS485通信口及电表上的LCD显示屏;远程信道指蜂窝网络,通过智能表的MCU主动推送信息实现。
本发明的有益效果:
本发明采用由加密算法基于硬件ID生成的识别信息和嵌入式软件故障识别算法,该方法保证了电子式电能表中数据合法且不丢失,确保了数据存储的可靠性及安全性。
本发明通过MCU实时检测EEPROM硬件信号,同时配合对EEPROM的时钟频谱进行分析识别实现硬件加密;通过将EEPROM绑定加密MCU硬件ID及软件版本号的方式,确认MCU只能与唯一的EEPROM进行数据存储和通信,实现混合加密识别非易失性存储器的数据异常状况。
本发明中将带有识别非易失性存储器的密钥及关键数据校验后双备份,在非易失性存储器被移除前、数据被篡改前或非法复制的异常前,两份数据可以通过MCU分别对两份数据校验合法性且能通过MCU实现两份数据的相互恢复。
本发明的其它特征和优点将在随后具体实施方式部分予以详细说明。
附图说明
通过结合附图对本发明示例性实施方式进行更详细的描述,本发明的上述以及其它目的、特征和优势将变得更加明显,其中,在本发明示例性实施方式中,相同的参考标号通常代表相同部件。
图1是本发明的流程图。
图2是本发明中密钥生成过程图。
图3是本发明中密钥解密过程图。
图4是本发明中密钥比对过程图。
图5是本发明中数据备份过程图。
图6是本发明中硬件监测示意图。
具体实施方式
下面将参照附图更详细地描述本发明的优选实施方式。虽然附图中显示了本发明的优选实施方式,然而应该理解,可以以各种形式实现本发明而不应被这里阐述的实施方式所限制。
如图1、2所示,本发明提供一种采用混合加密算法识别非易失性存储器数据异常的方法,电子式电能表的MCU执行以下步骤:
S1、MCU定时对电能计量数据进行双备份,其中一份存储在非易失性存储器中,另一份存储在MCU内FLASH的固定存储地址;
MCU采用唯一识别ID作为加密因子K对明文P进行加密运算生成密钥C,并存储在非易失性存储器中;
S2、MCU定时扫描检测电子式电能表内非易失性存储器的I/O端口,判断该非易失性存储器硬件是否异常,如硬件异常,则启用MCU内部FLASH中的电能计量数据,并触发本地信道及远程信道报警;否则,继续执行S3;S3、MCU定时读取非易失性存储器固定存储地址的密钥C,并进行密钥比对,判断数据是否被异常篡改,如比对不通过,则数据被异常篡改,启用MCU内部FLASH中的电能计量数据,并触发本地信道及远程信道报警;否则,继续执行S4;
S4、MCU触发监控非易失性存储器的时钟信号,当有中断信号产生时,识别MCU主动操作非易失性存储器频谱以外的频域信号,如异常,则启用MCU内部FLASH中的电能计量数据,并触发本地信道及远程信道报警;否则,非易失性存储器正常,使用非易失性存储器的数据。
进一步地,所述S1中,加密运算采用AES-128加密运算,明文P采用电子式电能表MCU当前运行软件的版本号。
进一步地,所述步骤S2中,非易失性存储器异常包括被移除和被非法复制,检测步骤具体为:检测MCU与非易失性存储器之间的TTL电平,当TTL电平为高电平时,非易失性存储器被移除;当TTL电平为低电平时,进一步判断MCU不在主动操作存储器期间是否检测到外部时钟信号,如果检测到外部时钟信号,则非易失性存储器被非法复制,如果未检测到外部时钟信号,则正常,使用非易失性存储器的数据。
进一步地,如图3、4所示,步骤S3中,进行密钥比对具体为:将MCU的唯一识别ID作为解密因子K'通过对应的解密运算,把从非易失性存储器中读取的密钥C解密成明文P',在MCU的RAM区域比对P'与原始明文P与是否一致,如果一致,则比对通过,如果不一致,则比对不用过;解密运算采用AES-128解密运算。
进一步地,所述的步骤S4中,当时钟信号中有中断信号产生,则MCU进入频谱识别模块,通过FFT算法获取外部信号的频谱,并判断此频谱中的信号是否与MCU正常操作非易失性存储器的频谱吻合,若与MCU正常操作的频谱吻合,则判定为非法篡改;若不符合MCU正常操作的频谱,则判定为干扰信号。
进一步地,本地信道为光电通信口、RS485通信口及电表上的LCD显示屏;远程信道指蜂窝网络,通过智能表的MCU主动推送信息实现。
如图5所示,在MCU检测到所有异常以前,EEPROM和FLASH中的关键数据都各自带有CRC16校验;MCU定时计算EEPROM的关键数据以及密钥数据的CRC16值:1,如EEPROM中的CRC16数据合法,则保留EEPROM中的数据;2,然后计算FLASH中与EEPROM相同的关键数据的CRC的值,如果合法,则保留FLASH中的数据;3,如FLASH中的数据非法,则使用EERPOM中的数据替换FLASH中的数据;4,如EEPROM中的CRC16数据非法,则计算FLASH中相同数据的CRC16,如果FLASH中的数据合法,则使用FLASH中的数据替换EEPROM数据;如果FLASH中的CRC16数据也是非法,则判断两份数据都无效,则启用程序中固化的默认数据。
进一步地,所述步骤S1中,电能计量数据包括:初始运行参数、客户配置参数、电费、故障及窃电记录。
具体实施时:
使用MCU的ID作为加密因子,经AES-128算法加密后写入非易失性存储器,作为对应MCU的唯一存储器;
如图6所示,MCU监测R1和非易失性存储器的内阻分压信号EE_check,监测此信号以判断器件是否存在;
中断触发并计算EE_SCL信号频率以判断是否存在外部篡改;
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。
Claims (7)
1.一种采用混合加密算法识别非易失性存储器数据异常的方法,其特征在于,电子式电能表的MCU执行以下步骤:
S1、MCU定时对电能计量数据进行双备份,其中一份存储在非易失性存储器中,另一份存储在MCU内FLASH的固定存储地址;
MCU采用唯一识别ID作为加密因子K对明文P进行加密运算生成密钥C,并存储在非易失性存储器中;
S2、MCU定时扫描检测电子式电能表内非易失性存储器的I/O端口,判断该非易失性存储器硬件是否异常,如硬件异常,则启用MCU内部FLASH中的电能计量数据,并触发本地信道及远程信道报警;否则,继续执行S3;
S3、MCU定时读取非易失性存储器固定存储地址的密钥C,并进行密钥比对,判断数据是否被异常篡改,如比对不通过,则数据被异常篡改,启用MCU内部FLASH中的电能计量数据,并触发本地信道及远程信道报警;否则,继续执行S4;
S4、MCU触发监控非易失性存储器的时钟信号,当有中断信号产生时,识别MCU主动操作非易失性存储器频谱以外的频域信号,如异常,则启用MCU内部FLASH中的电能计量数据,并触发本地信道及远程信道报警;否则,非易失性存储器正常,使用非易失性存储器的数据。
2.根据权利要求1所述的采用混合加密算法识别非易失性存储器数据异常的方法,其特征在于:所述步骤S1中,电能计量数据包括:初始运行参数、客户配置参数、电费、故障及窃电记录。
3.根据权利要求1所述的采用混合加密算法识别非易失性存储器数据异常的方法,其特征在于:所述S1中,加密运算采用AES-128加密运算,明文P采用电子式电能表MCU当前运行软件的版本号。
4.根据权利要求1所述的采用混合加密算法识别非易失性存储器数据异常的方法,其特征在于:所述步骤S2中,非易失性存储器异常包括被移除和被非法复制,检测步骤具体为:检测MCU与非易失性存储器之间的TTL电平,当TTL电平为高电平时,非易失性存储器被移除;当TTL电平为低电平时,进一步判断MCU不在主动操作存储器期间是否检测到外部时钟信号,如果检测到外部时钟信号,则非易失性存储器被非法复制,如果未检测到外部时钟信号,则正常,使用非易失性存储器的数据。
5.根据权利要求1所述的采用混合加密算法识别非易失性存储器数据异常的方法,其特征在于,步骤S3中,进行密钥比对具体为:将MCU的唯一识别ID作为解密因子K'通过对应的解密运算,把从非易失性存储器中读取的密钥C解密成明文P',在MCU的RAM区域比对P'与原始明文P与是否一致,如果一致,则比对通过,如果不一致,则比对不用过;解密运算采用AES-128解密运算。
6.根据权利要求1所述的采用混合加密算法识别非易失性存储器数据异常的方法,其特征在于,所述的步骤S4中,当时钟信号中有中断信号产生,则MCU进入频谱识别模块,通过FFT算法获取外部信号的频谱,并判断此频谱中的信号是否与MCU正常操作非易失性存储器的频谱吻合,若与MCU正常操作的频谱吻合,则判定为非法篡改;若不符合MCU正常操作的频谱,则判定为干扰信号。
7.根据权利要求1所述的采用混合加密算法识别非易失性存储器数据异常的方法,其特征在于,本地信道为光电通信口、RS485通信口及电表上的LCD显示屏;远程信道指蜂窝网络,通过智能表的MCU主动推送信息实现。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010162335.9A CN111339573B (zh) | 2020-03-10 | 2020-03-10 | 一种采用混合加密算法实现非易失性存储器数据篡改检测的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010162335.9A CN111339573B (zh) | 2020-03-10 | 2020-03-10 | 一种采用混合加密算法实现非易失性存储器数据篡改检测的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111339573A CN111339573A (zh) | 2020-06-26 |
CN111339573B true CN111339573B (zh) | 2023-04-07 |
Family
ID=71182255
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010162335.9A Active CN111339573B (zh) | 2020-03-10 | 2020-03-10 | 一种采用混合加密算法实现非易失性存储器数据篡改检测的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111339573B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010165206A (ja) * | 2009-01-16 | 2010-07-29 | Panasonic Corp | メモリコントローラおよび不揮発性記憶装置 |
CN102546167A (zh) * | 2010-11-29 | 2012-07-04 | 瑞萨电子株式会社 | 智能计量表和计量表读取系统 |
CN105334383A (zh) * | 2015-10-21 | 2016-02-17 | 宁波三星医疗电气股份有限公司 | 一种电能表的电量数据存储方法 |
CN109086621A (zh) * | 2018-07-23 | 2018-12-25 | 深圳市科陆精密仪器有限公司 | 电能表检定报告数据防篡改方法和系统、存储介质 |
CN109598132A (zh) * | 2018-11-20 | 2019-04-09 | 华立科技股份有限公司 | 电能表及其数据存储方法 |
-
2020
- 2020-03-10 CN CN202010162335.9A patent/CN111339573B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010165206A (ja) * | 2009-01-16 | 2010-07-29 | Panasonic Corp | メモリコントローラおよび不揮発性記憶装置 |
CN102546167A (zh) * | 2010-11-29 | 2012-07-04 | 瑞萨电子株式会社 | 智能计量表和计量表读取系统 |
CN105334383A (zh) * | 2015-10-21 | 2016-02-17 | 宁波三星医疗电气股份有限公司 | 一种电能表的电量数据存储方法 |
CN109086621A (zh) * | 2018-07-23 | 2018-12-25 | 深圳市科陆精密仪器有限公司 | 电能表检定报告数据防篡改方法和系统、存储介质 |
CN109598132A (zh) * | 2018-11-20 | 2019-04-09 | 华立科技股份有限公司 | 电能表及其数据存储方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111339573A (zh) | 2020-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2472408B1 (en) | Bus monitor for improving system safety of system on chip (soc) and realizing method thereof | |
US8533492B2 (en) | Electronic device, key generation program, recording medium, and key generation method | |
US8745752B2 (en) | Detection method for detecting fraud | |
CN107145802A (zh) | 一种bios完整性度量方法、基板管理控制器和系统 | |
CN108629206B (zh) | 一种安全加密方法、加密机及终端设备 | |
CN102799819A (zh) | 一种嵌入式软件安全保护系统 | |
CN111160879A (zh) | 一种硬件钱包及其安全性提升方法和装置 | |
CN106844185A (zh) | 一种日志文件的存储方法及装置 | |
CN107479538B (zh) | 一种电动压缩机故障诊断装置 | |
CN111259463B (zh) | 防盗保护方法和装置、电子设备、计算机可读存储介质 | |
CN111339573B (zh) | 一种采用混合加密算法实现非易失性存储器数据篡改检测的方法 | |
CN107315945A (zh) | 一种电子设备的磁盘解密方法和装置 | |
WO2019239121A1 (en) | Key protection device | |
CN112579393A (zh) | 物联网终端的自检方法、装置、终端及存储介质 | |
CN109635522A (zh) | 一种动态库的防篡改方法及装置 | |
CN110431557B (zh) | 用于执行安全备份和恢复的方法和装置 | |
CN114444083B (zh) | 一种基于bmc的服务器bios全生命周期安全保护系统 | |
CN106029516B (zh) | 用于篡改检测的方法和装置 | |
CN103105783A (zh) | 嵌入式元件与控制方法 | |
CN107315158B (zh) | 费控电能表的数据回抄功能测试方法及系统 | |
CN114095175B (zh) | 一种可灰度校验的数据保密方法、装置及存储介质 | |
CN112306410A (zh) | 一种电能表的数据处理方法、装置、存储介质及电能表 | |
CN113468607A (zh) | 一种加密防篡改文件的生成和使用方法 | |
CN105426266A (zh) | 实时时钟校准方法和系统 | |
Zhai et al. | Research and System Design of Remote Comparison Method for Embedded Device Files |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |