为什么live.com将密码限制为16个字符?[关闭]


12

我想注册一个@ live.com电子邮件地址,但它说它无法注册一个密码超过16个字符的电子邮件地址。

为什么?这样更容易获得真实密码?(如果密码哈希被盗了……)


1
我在其他网站上也看到了这个最大16个字符的限制。如果密码是散列存储的,那么无论实际密码是什么,密码在数据库中的大小都应相同,那么为什么要限制呢?我希望不是因为它们存储的密码是未加密的,并且数据库字段的大小为16个字符。我真的希望不会。
Rincewind42 2011年

暴力破解16个字符的通行证比暴力破解更大的字符更容易。(您知道,那里有俄罗斯的付费网站,那些专门研究暴力破解的网站)
LanceBaynes 2011年

这很有趣:IBM SQL和XML数据限制 “对数据源的密码访问”行的最大长度为32个字节,该长度与应用MD5哈希后的16个字符的密码相同。
丽贝卡·德森维尔

Rincewind42和Dez提出了真正有趣的观点。这些可能性都不是安全的。
帕特里克·克林格曼

2
@Dez:将MD5应用于17个字符的密码仍为32个字节。更有意思的一点是,Unicode中的16个字符将是32个字节。
musefan 2012年

Answers:


1

实际上是因为当您使用md5密码时,它会计算哈希值。然后,字符串长度超过16个字符,某些“哈希”可能会在它们之间发生冲突。

例如,如果md5("noroof")给出9ce405c98406f2f6d5326ee6b51d19cd,则可能md5("ididntfixedmyroofwhenicould")给出相同的哈希值9ce405c98406f2f6d5326ee6b51d19cd。请记住,哈希是由32个字符组成的“ 0123456789abcdf”(在这种情况下为md5)组成。

也许他们强制使用16个字符,因为计算哈希的算法确保与先前保存的密码在数据库中不会发生冲突。


6
散列总是会产生冲突-正如您所说,一个17个字符以上的密码可能会与一个较短的密码冲突。但是,与短密码不太可能发生冲突一样,碰撞的可能性也很小,而长密码也很难与蛮力猜测的短密码发生冲突。没有理由相信长密码比短密码更容易发生冲突-如果有理由相信散列会被有效地破解。
罗纳德

2
罗纳德是正确的,公认的答案是完全错误的。MD5字符串发生碰撞的可能性不取决于它们的长度。
talkol 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.