我已阅读问题“Why should hash functions use a prime number modulus?”并理解答案。
我想知道如果表具有非素数模数,使用加密哈希函数(如SHA2
)的哈希表是否会遇到更多聚类。
答案 0 :(得分:0)
加密散列函数当然应该均匀分布在任何模数,素数或复合中。如果任何模数值存在显着的聚类,那么会降低函数的碰撞阻力。
关于使用素数的“通常建议”并不指望素数为2,或任何其他小数。总的来说,使用复合词的问题并不是因为它具有一个小的素数除数,比如2。