[发明专利]一种Hex文件处理方法及应用有效
申请号: | 201910881899.5 | 申请日: | 2019-09-18 |
公开(公告)号: | CN110727542B | 公开(公告)日: | 2023-02-28 |
发明(设计)人: | 何亚楠;徐旭;毕乾坤;郝海洋 | 申请(专利权)人: | 陕西法士特齿轮有限责任公司 |
主分类号: | G06F11/10 | 分类号: | G06F11/10;G06F21/60;H04L9/06 |
代理公司: | 西安智邦专利商标代理有限公司 61211 | 代理人: | 史晓丽 |
地址: | 710119 陕西省西*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 hex 文件 处理 方法 应用 | ||
本发明属于嵌入式系统文件处理方法,具体涉及一种Hex文件处理方法及应用,包括以下步骤:步骤1,对Hex文件的Block进行分组,每组至少包括一个Block,对每组Block的指定地址段进行CRC校验,得到相应的CRC校验码,将CRC校验码按照Intel格式放入指定地址位置,即CRC放置地址;所述指定地址段不含CRC放置地址;步骤2,对每条Record中的数据域进行加密,在Hex文件预刷写的控制器中设置相应解密程序;步骤3,重新计算每条加密后的Record的校验和;步骤4,向预刷写的控制器中刷写处理后的Hex文件,预刷写的控制器利用解密程序进行解密;步骤5,预刷写的控制器核算CRC校验码。本发明的Hex文件处理方法解决了Hex格式的文件直接用于程序刷写容易被破解或重写的问题。
技术领域
本发明属于嵌入式系统文件处理方法,具体涉及一种Hex文件处理方法及应用。
背景技术
Hex文件是为某特定MCU创建的一种文件格式,该文件中记录了MCU内部PROM运行所需的程序和数据,该格式的文件目前已是嵌入式系统行业普遍采用的一种文件形式。在嵌入式开发环境下开发的代码通过编译、链接等一系列步骤最终会生成Hex文件,通过编译处理生成的Hex文件中以明文的形式记录了控制器PROM中存储的代码和数据等内容,如果直接用于程序刷写很容易造成数据外流,进而导致程序被破解或重写。
发明内容
本发明的主要目的是在于解决现有技术中Hex格式的文件直接用于程序刷写容易由于数据外流导致程序被破解或重写的问题,提供一种Hex文件处理方法及应用。
为实现上述目的,本发明提供如下技术方案:
一种Hex文件处理方法,其特殊之处在于,包括以下步骤:
步骤1,CRC校验:
对Hex文件的Block进行分组,每组至少包括一个Block,对每组Block的指定地址段进行CRC校验,得到相应的CRC校验码,将CRC校验码按照Intel格式放入指定地址位置,即CRC放置地址;所述指定地址段不含CRC放置地址;
步骤2,加密:
对每条Record中的数据域进行加密,数据长度域、地址域、数据类型域以及校验和域不变,并在Hex文件预刷写的控制器中设置相应解密程序;
步骤3,计算校验和:
重新计算每条加密后的Record的校验和;
步骤4,刷写及解密:
向预刷写的控制器中刷写经步骤1至步骤3处理后的Hex文件,预刷写的控制器利用步骤2中所述的解密程序对Hex文件进行解密;
步骤5,核算:
预刷写的控制器核算CRC校验码,若一致,则Hex文件数据准确,进行存储;否则,Hex文件数据错误,丢弃数据。
进一步地,所述步骤1之前还包括,对Hex文件中的每条Record进行字节填充,使得每条Record的格式和长度一致,后续的数据处理更加便捷。
进一步地,步骤1中,所述CRC校验采用CRC32校验。
进一步地,步骤2中,所述对每条Record中的数据域进行加密,具体是对每条Record中的数据域进行AES加密。其他加密方法也同样适用于本发明,AES加密方法对内存的需求较低,破解难度大且运算速度快,更有利于实现数据的快速处理和传输。
进一步地,步骤2中,所述对每条Record中的数据域进行加密,具体是对每条Record中的数据域进行AES128加密。
如上所述Hex文件处理方法在汽车TCU中的应用。
与现有技术相比,本发明的有益效果是:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于陕西法士特齿轮有限责任公司,未经陕西法士特齿轮有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910881899.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种光盘分块存储校验方法及系统
- 下一篇:一种商用非对称密码算法硬件模块