双向哈希算法?

时间:2011-08-22 17:17:42

标签: hash

是否有一种算法可以为两个数字产生相同的哈希值,无论它们处于什么顺序?

例如,散列32682642应该产生与散列26423268相同的结果。

这可能吗?

3 个答案:

答案 0 :(得分:5)

当然,XOR就是这么做的。

 3268^2642 == 2642^3268

还有更多(加法,乘法,基本上任何可交换操作),但是XOR通常用于散列(因为它很容易“unhash”)。

答案 1 :(得分:3)

分别对两个数字进行哈希处理(使用您选择的整数到整数哈希),然后添加或xor结果。

答案 2 :(得分:2)

您可以在对两个数字进行散列之前添加或异或。