为什么带有特殊字符的密码被认为比长密码更安全?

信息安全 密码 密码策略 密码
2021-08-14 02:03:34

例如,OWASP考虑 10-128 个字符,包括小写、大写、数字和特殊字符(我不明白为什么会有上限)。使用 OWASP 的最低准则并假设有 28 个特殊字符,熵为 3e19。但是只有小写字母的 16 个字符的密码是 4e22。输入大写字母,它是 2e27。计算机可以以相当快的速度进行计算,但无论它是什么,它都会降低熵,这意味着差异不是 22 个零到 19,而是更接近 5 到 2,即差异很大。

如果长度是一个问题,12 个小写 + 大写字符是 3e20。其他大公司仍然强制人们使用最小长度为 8 的特殊字符。当另外两个字符不仅更安全而且更容易记住时,为什么还要强迫人们使用特殊字符 - 以及分机号码?为什么他们对这个如此肛门?

有些人认为长密码不好,因为人们只使用真实的单词,因此极大地限制了熵。为此,我会用较短的密码说同样的话,因此是字典+规则攻击。强制数字和/或特殊字符只会导致密码像[word]1!,或更糟,Password1!有人可以解释为什么特殊字符在安全密码中是必需的,或者为什么尽管有证据反对它却被认为是这种方式。

3个回答

这是用户体验。要求混合字符使用户不太可能使用常用单词或短语,这将使其极易受到字典攻击额外的熵是奖励;正如您所指出的,其他字符也同样有效。

这是因为如果你不强迫人们使用特殊字符,他们可能不会,大写和数字也是如此。如果您强制将这些组合在一起,那么您将始终增加熵,因为您正在增加密码的每个字符中可能包含的字符数。

无论情况如何,具有特殊字符和/或数字要求总是会使密码更难破解。p@$$w0rd 比密码稍微难一些。

如果问题是,是否值得为您的客户付出额外的努力和烦恼,那是另一回事。

仅考虑可能是真的暴力攻击的场景。但是,当我们考虑其他密码猜测技术时,这可能是不正确的。

当允许/强制使用可接受长度的小写密码时(对于高熵),密码应该是随机文本。在现实世界的场景中,普通用户会使用一种语言中的单词或句子,从而减少熵,因为我们知道熵是不可预测的。

$33th1sP@ssw0rd它是或之间的一个问题seethispasswordwhichislongerbutnotsecureenough