这是我老师写的代码(python)。(我使用蛮力发现的素数)。我还有一些带有匹配哈希的密码的测试数据(现在我已经找到了函数中使用的两个素数,这并不重要)。
任何人都可以帮助我找到“扭转”这种情况的方法,或者至少给我一个小费吗?
def prime_number_hash(s , 17299, 209569):
"""
Will hash the string s using the two prime numbers p and n.
"""
h = 0
for k,l in enumerate(s):
v = ord(l)
# k is the index of the letter
h += v * pow(p,k)
return h % n