CRC产生的速度有多快?

Oli*_*ver 2 c# crc

我需要为网络上的图像文件生成etags.我想到的一个可能的解决方案是计算图像文件的CRC,然后将它们用作etag.

这将要求每次有人在服务器上请求图像时计算CRC,因此非常重要的是可以快速完成.

那么,生成CRC的算法有多快?或者这是一个愚蠢的想法?

Ali*_*tad 5

相反,使用更强大的散列算法,例如SHA1.

速度取决于图像的大小.大部分时间都花在从磁盘加载数据上,而不是在CPU处理中.您可以缓存生成的哈希值.

但我也建议根据文件的上次更新日期创建etag ,这样更快,不需要加载整个文件.

请记住,etag必须仅对特定资源是唯一的,因此如果两个不同的图像具有相同的上次更新时间,则可以.

  • 我不是倒下的人,但我猜这是因为如果有人担心CRC计算的速度,那么建议SHA-1会适得其反,因为它会比除了最脆弱的CRC之外的所有人都慢implementaiton. (2认同)