如果我没弄错的话,MD5就是一个32字符长的哈希。如果MD5只有32个字符长并且我们可以创建一个无限长的字符串,那么每个哈希值如何不同? MD5的上限是多少以及它究竟是如何完全不可预测的?
答案 0 :(得分:1)
MD5实际上是16个8位字节,128位。由于输出短(128位)和一些内部问题,MD5不再适用于大多数用途,通常SHA-256是一个很好的替代品。
答案 1 :(得分:1)
你可能会发生碰撞。
这两种:
d131dd02c5e6eec4693d9a0698aff95c 2fcab58712467eab4004583eb8fb7f89 55ad340609f4b30283e488832571415a 085125e8f7cdc99fd91dbdf280373c5b d8823e3156348f5bae6dacd436c919c6 dd53e2b487da03fd02396306d248cda0 e99f33420f577ee8ce54b67080a80d1e c69821bcb6a8839396f9652b6ff72a70
d131dd02c5e6eec4693d9a0698aff95c 2fcab50712467eab4004583eb8fb7f89
55ad340609f4b30283e4888325f1415a 085125e8f7cdc99fd91dbd7280373c5b
d8823e3156348f5bae6dacd436c919c6 dd53e23487da03fd02396306d248cda0
e99f33420f577ee8ce54b67080280d1e c69821bcb6a8839396f965ab6ff72a70
给出相同的哈希:
79054025255fb1a26e4bc422aef54eb4
每个哈希都可能发生冲突。这就是发生这种情况的可能性是什么?
32-bit hashes have an even higher chance of colliding:
cataract
与periti
roquette
与skivie
shawl
与stormbound
dowlases
与tramontane
cricketings
与twanger
longans
与whigs
答案 2 :(得分:0)
你错了,MD5是一种确定性的哈希算法,在MD5中没有任何随机或随机的。
当然,如果将MD5应用于数据,可能会有其他数据生成相同的MD5值。这是已知的als碰撞。