特定数量值的合理 SHA1 哈希长度
Reasonable SHA1 hash length for a specific number of values
我有一份大约的清单。 2500 张图像。我为每张图片创建一个 SHA1 哈希值,我可以用它来引用每张图片。我还使用哈希在列表中查找重复的图像。
默认情况下,SHA1 哈希的长度为 40 个字符。目前我将哈希值减少到前 7 个字符。
这是一个合理的长度还是碰撞概率太高?
可接受的概率是多少?
注意:SHA1 哈希是 20 个字节,您是说 40 个十六进制字符吗?
7 个十六进制字符为 7*4 = 28 位。
根据 table,查看 32 位和 2900 个元素,碰撞的概率为 .01%,IMO 不够好。
为什么不使用完整的哈希和 20 字节而不是十六进制?
我有一份大约的清单。 2500 张图像。我为每张图片创建一个 SHA1 哈希值,我可以用它来引用每张图片。我还使用哈希在列表中查找重复的图像。
默认情况下,SHA1 哈希的长度为 40 个字符。目前我将哈希值减少到前 7 个字符。 这是一个合理的长度还是碰撞概率太高?
可接受的概率是多少?
注意:SHA1 哈希是 20 个字节,您是说 40 个十六进制字符吗?
7 个十六进制字符为 7*4 = 28 位。
根据 table,查看 32 位和 2900 个元素,碰撞的概率为 .01%,IMO 不够好。
为什么不使用完整的哈希和 20 字节而不是十六进制?