为什么 MD5 仍然被大量使用?

Dav*_*ota 17 encryption hashing

MD5 似乎有充分记录的漏洞,但它的使用仍然很普遍。当其他替代方案(例如 SHA-2)似乎更强大时,是否有人有任何理由让它仍然是一个可行的选择?

Ric*_*haw 17

它的生成速度很快,而且理论上可能发生碰撞这一事实通常并不是一个大问题。即检查缓存文件是否已更改以避免下载新副本。

1996 年完成快速基准测试显示以下内容:

            Digest Performance in MegaBytes per Second

      Pentium P5     Power Mac    SPARC 4     DEC Alpha
          90 MHz        80 MHz      110 MHz      200 MHz

MD5         13.1          3.1         5.1          8.5
SHA1         2.5          1.2         2.0          3.3
Run Code Online (Sandbox Code Playgroud)

对于现代用途 - 在嵌入式芯片上,对于相同的信息,MD5 的生成速度可以比 SHA1 快 2-3 倍。


ele*_*n81 10

对于大多数琐碎的任务,MD5 哈希值“足够好”。回想一下,在相同数量的字节中产生有意义的冲突仍然非常困难。

例如,假设您下周从受信任的镜像下载新的 Ubuntu 9.10。您想验证文件是否已正确且完整地下载。只需启动 MD5 并散列 ISO。将散列与发布的散列进行比较。如果散列匹配,您可以确定 ISO 已正确且完整地复制。