数据索引的最佳哈希算法(即 crc)



基本上,我正在跟踪文件修改,如下所示:

array (
    'crc-of-file' => 'latest-file-contents'
)

这是因为我在运行时同时处理不同文件的文件内容。

所以,问题是,我应该对文件内容使用什么哈希算法(作为字符串,因为文件无论如何都在加载)?

防碰撞和性能都至关重要。到目前为止,我没有看到任何安全隐患。

编辑:我可以使用另一件事来代替散列内容是文件修改时间戳,但我不确定它的可靠性。另一方面,我认为监控所述邮票比每次对文件进行哈希处理要快。

CRC 它不是一种哈希算法,一种校验和算法,因此您的碰撞机会会很高。

md5非常快,并且对于您的应用程序/体积而言,碰撞风险相当小。如果要缓冲文件,可能还需要查看使用 hash 扩展名的增量哈希。

稍微复杂一点,但也值得一看(如果有的话)是Inotify扩展。

最新更新