MD5和CRC生成"不可预测"哈希值?

时间:2015-02-18 18:31:13

标签: hash md5 checksum crc32 data-integrity

关于文件的完整性检查,我不确定CRC32或MD5校验和是否生成“不可预测的”哈希值:

检查文件是否相同时,通常使用CRC32或MD5校验和。这意味着从开头到结尾读取可能与另一个文件重复的每个文件,并且将基于计算唯一编号 其独特的二进制内容。作为指纹,存储该数字并用于将文件的内容与其他文件进行比较,以确定它们是否真正相同。这意味着文件中的微小变化会导致相当大的变化 生成的哈希值中的“不可预测的”更改。

1 个答案:

答案 0 :(得分:0)

这不是“不可预测”一词的正确用法。算法是 deterministic ,这意味着在给定相同输入的情况下它们将始终产生相同的输出。因此,它们完全可以预测。

是的,因为输入的微小变化都会导致输出中的“相当大的变化”,大约是输出的一半位。

这些检查不能用于确定两个文件是否“完全相同”。它们只能表明两个文件相同的可能性非常高。您需要直接比较这两个文件,以确定它们是否完全相同。

另一方面,如果检查不同,那么您肯定知道文件不同。