打印
[ModusToolbox™]

ModusToolbox™ hex 文件生成Checksum

[复制链接]
718|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 IFXVison 于 2023-9-27 14:14 编辑

将代码烧写至PSoC™设备前,通常要求定制化编程器先检测hex文件是否被恶意篡改。在这种情况下,编程器程序最好能够计算hex文件的checksum,并将该值与hex文件中0x90300000处的checksum进行比较,如果匹配,则表明该文件没有被篡改
使用python脚本可以在ModusToolbox™hex文件中生成checksum ,也可以在0x90300000处加载新的checksum
具体步骤如下:
1.hex 文件目录下解压缩并复制‘hexCheckSumScript.py’ 文件,以下步骤中以‘mtb-example.hex’为例计算checksum;
2.打开命令提示符窗口(快捷键“win+R”);
3.输入命令“cd <path to folder >”,输入包含‘hexCheckSumScript.py’ 和‘mtb-example.hex’的文件夹目录;
4.运行命令,生成hex文件的checksum
 python   hexCheckSumScript.py   <Name of hex file>

脚本运行完成后,会生成一个前缀为"csout_"的新hex文件,存储于Python脚本和输入的hex文件所在的文件夹中。
例:

Figure1  脚本运行界面和成功生成hex文件显示结果

检查新生成的hex文件的末尾三行,查看是否如Figure 2所示,成功生成checksum.

Figure 2Hex文件中checksum的位置

使用定制化编程器软件计算、生成hex文件的checksum,并与原文倒数第二行中的值(示例中该值为0xD07C,如Figure 2所示)进行比较,验证hex文件是否遭到篡改/修改了。
Note: 示例中所用Python版本为 v3.10.4



hexCheckSumScript.zip

1.64 KB

使用特权

评论回复
沙发
IFX-JimmyHuang| | 2024-1-26 15:38 | 只看该作者
非常实用,学习了

使用特权

评论回复
板凳
LOVEEVER| | 2024-1-28 13:17 | 只看该作者
现在不是都是自家的IDE开发的嘛?有这个篡改的问题

使用特权

评论回复
地板
星辰大海不退缩| | 2024-1-28 15:29 | 只看该作者
以前没有这样搞过,都用自带的IDE

使用特权

评论回复
5
小夏天的大西瓜| | 2024-1-28 16:25 | 只看该作者
自带的IDE应该都这些校验功能

使用特权

评论回复
6
szt1993| | 2024-1-29 22:27 | 只看该作者
其实HEX文件里面有好多基础的寄存器信息

使用特权

评论回复
7
jf101| | 2024-1-29 22:45 | 只看该作者
使用定制化编程器软件计算、生成hex文件的checksum,并与原文倒数第二行中的值(示例中该值为0xD07C,如Figure 2所示)进行比较,验证hex文件是否遭到篡改/修改了。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

认证:英飞凌科技股份公司
简介:关于英飞凌——我们致力于打造一个更加便利、安全和环保的世界,在赢得自身成功发展的同时,积极践行企业社会责任。

64

主题

175

帖子

6

粉丝