2

我想知道是否可以使用skein而不是 MD5 或 SHA1 进行文件完整性检查?

这真的比 SHA1 和 MD5 更好或更快吗?

更新:

关于你的回复。实际上,我想为 OSSEC 之类的主机 IDS 使用更快的算法(例如每 10 分钟执行一次文件完整性检查),以降低主机负载并占用更少的资源。

所以我有两个选择:

  1. 新算法
  2. 改进 SHA1 或 MD5。

您能解释一下哪种方式可以实施并且更好吗?

4

2 回答 2

1

Skein 的提交者声称,假设使用 64 位汇编实现并使用 Skein-512,每个处理字节的最大性能为 6.1 个时钟周期。这在 2.4 GHz 内核上略低于 400 MB/s,这非常好。然而我自己的 MD5 的 C 代码在同一台机器上达到了 400 MB/s 以上:Skein 并不比 MD5 快。但也不慢。

然而,Skein足够快:您并不需要哈希函数比硬盘快得多,尽管更快的代码可能会释放一些 CPU 供其他线程运行(但是,2.4 GHz 的 PC 通常有多个内核)。

就个人而言,我建议使用既定标准(SHA-256 或 SHA-512,如果你想保守一点——但对于某些任务,MD5 甚至 MD4 都足够好,而且 MD4真的很快,而且它的紧凑代码使用非常小 L1 缓存)。当正式选择“the”SHA-3 时,就该使用它并将其部署到生产环境中了。

于 2010-01-27T22:58:26.297 回答
1

回答您最后一个问题:作为SHA-3竞赛的参赛者,它应该比SHA-2好得多,更不用说SHA-1了。

(甚至没有提到 MD5:它已经坏了,你不应该在任何新代码中使用它。)

于 2010-01-27T18:04:50.770 回答