Moderator
Mar 16, 2023
10:28 PM
- Subscribe to RSS Feed
- Mark as New
- Mark as Read
- Bookmark
- Subscribe
- Printer Friendly Page
- Report Inappropriate Content
Mar 16, 2023
10:28 PM
ModusToolbox™ hex 文件生成Checksum - KBA236086
Community Translation:Checksum-generation-for-ModusToolbox-hex-file-KBA236086
将代码烧写至PSoC™设备前,通常要求定制化编程器先检测hex文件是否被恶意篡改。在这种情况下,编程器程序最好能够计算hex文件的checksum,并将该值与hex文件中0x90300000处的checksum进行比较,如果匹配,则表明该文件没有被篡改。
使用python脚本可以在ModusToolbox™的hex文件中生成checksum ,也可以在0x90300000处加载新的checksum。
具体步骤如下:
- 在hex 文件目录下解压缩并复制‘hexCheckSumScript.py’ 文件,以下步骤中以‘mtb-example.hex’为例计算checksum;
- 打开命令提示符窗口(快捷键“win+R”);
- 输入命令“cd <path to folder >”,输入包含‘hexCheckSumScript.py’ 和‘mtb-example.hex’的文件夹目录;
- 运行以下命令,生成hex文件的checksum:
- python hexCheckSumScript.py <Name of hex file>
脚本运行完成后,会生成一个前缀为 "csout_"的新hex文件,存储于Python脚本和输入的hex文件所在的文件夹中。
例:
Figure1 脚本运行界面和成功生成hex文件显示结果
检查新生成的hex文件的末尾三行,查看是否如Figure 2所示,成功生成checksum.
Figure 2 新Hex文件中checksum的位置
使用定制化编程器软件计算、生成hex文件的checksum,并与原文倒数第二行中的值(示例中该值为0xD07C,如Figure 2所示)进行比较,验证hex文件是否遭到篡改/修改了。
Note: 示例中所用Python版本为 v3.10.4
Labels
Rate this article: