STM32
直播中

李涛

7年用户 1404经验值
私信 关注
[问答]

求助,请问程序自升级时Bin文件的校验是如何做的?

程序自升级时Bin文件的校验是如何做的?

回帖(3)

欧建杭

2024-4-3 15:01:07
每个人的做法可能不一样,一般用整个文件进行校验,比如MD5或者CRC。
举报

陈莉

2024-4-3 15:01:37
看你的应用需求吧,一般的都是保证完整性,数据不要传错,简单点用checksum 或CRC。
有安全的需要加密,当然烧录时也要解密或者自带一证书,也就是保证文件的完整性和合法性。
举报

吴凡

2024-4-3 15:36:22
在程序自升级时,校验Bin文件的方法通常是使用哈希函数或者CRC校验。哈希函数会将Bin文件转化为特定长度的固定字符串(哈希值),而CRC校验则是通过对Bin文件进行循环冗余校验,生成一个校验码。

具体步骤通常如下:
1. 在升级前,生成哈希值或者CRC校验码保留下来。
2. 下载并保存新的Bin文件。
3. 对新的Bin文件进行哈希值计算或者CRC校验,得到校验结果。
4. 将计算得到的校验结果与保留的哈希值或CRC校验码进行比对。
5. 如果校验结果与保留值相匹配,则说明Bin文件未被篡改,可以进行升级操作;如果不匹配,则表示该Bin文件被改动过,需要进行相应处理(如拒绝升级或重新下载)。

需要注意的是,哈希函数和CRC校验都不是100%保证文件完整性的方法,但可以提供一定程度上的校验和验证。在实际应用中,为了提高安全性,还可以结合使用数字签名等技术来进一步保护Bin文件的完整性。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分