内容修改后是否可以保持文件的相同 md5 校验和?
Is it possible to keep same md5 checksum of a file after content modification?
许多网站为可下载文件设置了 md5 校验和,以便用户可以根据下载文件的 md5 验证字符串。有人可以修改原始文件的内容但仍保留原始 md5 校验和吗?
是的,可以在不更改 MD5 校验和的情况下修改文件。这就是为什么转向更安全的散列算法(如 SHA-256)很重要。出于安全目的,MD5 和 SHA-1 几乎被认为已弃用。
维基百科有一段介绍 MD5 的安全问题:
这取决于您所谈论的上下文。如果您询问对文件的随机更改是否会导致文件具有相同的 MD5,那么答案是肯定的,这在理论上是可能的,但可能性极小。另一方面,如果您谈论的是有主动攻击者的情况,那么是的,这种可能性要大得多。 MD5 为 no longer considered cryptographically secure。
md5 校验和的思想是原始文件上的每一位都保持不变。尽管该算法可能会发生冲突,但 md5 保持不变的可能性很小。因此,您还应该为检查它的工具更新 md5 文件或完全删除它,这样检查它的工具就会失败。
如果您更新原始版本并保留旧的 md5,那么您将禁用关心校验和的工具。
通常更改文件中的单个位将更改哈希中大约 50% 的位。
即使使用 MD5
也不太可能进行更改并具有相同的哈希值
请注意,发现与已知散列的冲突比仅发现任何冲突更难。 MD5 平均需要 2^127 次尝试,文件越长,每次尝试花费的时间越多。
应该使用 SHA256 或更好的算法。 SHA256 只需要大约 MD5 两倍的时间。
许多网站为可下载文件设置了 md5 校验和,以便用户可以根据下载文件的 md5 验证字符串。有人可以修改原始文件的内容但仍保留原始 md5 校验和吗?
是的,可以在不更改 MD5 校验和的情况下修改文件。这就是为什么转向更安全的散列算法(如 SHA-256)很重要。出于安全目的,MD5 和 SHA-1 几乎被认为已弃用。
维基百科有一段介绍 MD5 的安全问题:
这取决于您所谈论的上下文。如果您询问对文件的随机更改是否会导致文件具有相同的 MD5,那么答案是肯定的,这在理论上是可能的,但可能性极小。另一方面,如果您谈论的是有主动攻击者的情况,那么是的,这种可能性要大得多。 MD5 为 no longer considered cryptographically secure。
md5 校验和的思想是原始文件上的每一位都保持不变。尽管该算法可能会发生冲突,但 md5 保持不变的可能性很小。因此,您还应该为检查它的工具更新 md5 文件或完全删除它,这样检查它的工具就会失败。
如果您更新原始版本并保留旧的 md5,那么您将禁用关心校验和的工具。
通常更改文件中的单个位将更改哈希中大约 50% 的位。
即使使用 MD5
也不太可能进行更改并具有相同的哈希值请注意,发现与已知散列的冲突比仅发现任何冲突更难。 MD5 平均需要 2^127 次尝试,文件越长,每次尝试花费的时间越多。
应该使用 SHA256 或更好的算法。 SHA256 只需要大约 MD5 两倍的时间。