|
|
1
4
对于存在专门化哈希的所有对象类型密钥,实例化哈希应:
以及(N3092,§20.2.4):
§20.8.15包括散列结果的要求,§20.2.4关于散列本身。不过,正如你所看到的,两者都相当普遍。上面提到的表格基本上涵盖了另外三个要求:
确切的算法肯定是 不 |
|
|
2
0
如果实现使用合理的哈希函数,则哈希值中不应存在与输入有任何特殊关联的位。所以,如果hash函数给你64个“随机”位,但你只需要其中的32个,你可以只取第一个/最后一个/。。。32位,随你怎么说。你取哪一个并不重要,因为每一个位都和下一个位一样随机(这就是一个好的散列函数的原因)。 因此,获得32位散列值的最简单但又完全合理的方法是:
(当然,这会将40亿个值的组压缩为一个,看起来很多,但如果源值是目标值的40亿倍,这是不可避免的。) |