讨论:两段Bin的数据,什么算法可以校验不同(已解决)

2020-02-21 21:26发布

本帖最后由 FSL_TICS_ZJJ 于 2014-9-11 14:44 编辑

我要做一个Boot上位机程序!

因为我们平时编译的时候输出的文件名一般不会改动的,编译完后Bin文件会改变,我想做个Check Code,比如通过什么算法,产生一个Check Value,文件中的数据不一样了,CheckValue就会改变,这样能防止程序下载成不同版本的文件!

用什么算法Check Value相同的机率会最低呢?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
37条回答
sunnyqd
1楼-- · 2020-02-22 03:03
一般的话CRC32就够了,不放心的话MD5
stepby
2楼-- · 2020-02-22 07:46
MD5。      
wangpengcheng
3楼-- · 2020-02-22 13:18
sunnyqd 发表于 2014-8-24 12:50
一般的话CRC32就够了,不放心的话MD5

因为代码是不相同的,怕整出来相同的check value!这样就会出问题!
wangpengcheng
4楼-- · 2020-02-22 15:54
 精彩回答 2  元偷偷看……
sunnyqd
5楼-- · 2020-02-22 16:32
wangpengcheng 发表于 2014-8-24 12:54
MD5相同的机率会很小么?因为没有用过,所以不了解,呵呵

CRC32是2^32分之一,MD5是2^128分之一,理论上,两个有用且功能有效文件的MD5重复的概率非常小,基本不可能
sunnyqd
6楼-- · 2020-02-22 19:40
wangpengcheng 发表于 2014-8-24 12:54
因为代码是不相同的,怕整出来相同的check value!这样就会出问题!

CRC32重复的概率很小很小,我设计的产品有个上电校验环节,用CRC32检查代码的完整性,已经足够了

一周热门 更多>