在固定长度输入上证明完美的散列函数

时间:2012-05-29 12:29:21

标签: algorithm hash proof

我已经在这里看到了使用gperf的答案,但是,我更愿意根据我为strings域创建的证明来推广我自己的<= 200固定长度~7.9 x 10^374根据我对wolfram的计算,我得到了2048个总排列。因此,我的思路是如果我有一个3.2 x 10^616位哈希函数({{1}})我应该能够处理我需要处理的整个字符串世界。我的问题是,我如何证明我最终生成的哈希实现将是完美的,因为所有字符串的长度为200或更短的宇宙的约束?

1 个答案:

答案 0 :(得分:3)

长度为200个字符的字符串只有200 * 8 = 1600位。如果2048位散列可以满足您的需要,您可以使用字符串位作为完美散列。身份哈希函数是完美的,因为它将每个输入映射到不同的哈希值(显然,因为没有映射)。