密码长度保密对安全是否重要?
是否有人知道你的密码长度为17,这会使密码更容易使用暴力?
发布于 2015-06-23 14:24:51
那么,让我们从数学开始:如果我们假设您的密码由较低的、向上的和数字组成,那么可以选择62个字符(只是为了保持数学上的简单,真正的密码也使用符号)。长度1的密码有62种可能性,长度2的密码有62^2可能性,.长度n的密码有62^n的可能性。
这意味着如果他们知道你的密码只有17个字符,那么他们可以跳过所有长度小于17的密码,而且只有62^17个密码可以尝试。
但是,有多少密码长度小于17,而不是62^17?
那么,如果我们将62^n相加,除以62^17,则得到(从n=1到n=16的之和为62^n )/ 62^17 = 0.016 (链接到计算),所以只检查长度17的密码比检查17长度以下的密码只快1.6%。
如果我们有一个允许所有95个可打印的ASCII字符的密码方案,那么不用尝试小于17的密码所节省的费用会下降到1.06% (链接到计算)。
关于短于n的密码数与长度n的密码数之比的一个有趣的数学怪癖是,它并不真的依赖于n,这是因为我们已经非常接近1/95 = 0.0105的渐近线。因此,不管密码的长度如何,攻击者都可以从这个技巧中获得相同的相对时间或百分比;它总是在1% - 2%之间。当然,每增加一个新字符,它所花费的绝对时间就会增加数量级。
上面的数学假设一个简单的蛮力,它将尝试a,b,c,.,aa,ab,.这是一个正确破解随机计算机生成密码的好(Ish)模型,但对于猜测人工生成的密码却是一个糟糕的模型。
真正的密码破解器是基于字典的,尝试英语词典中的单词(和单词的组合),泄露密码的列表等等,所以这些计算应该是一丁点儿的。
了解你的长度的另一个效果是,他们不需要尝试任何超过17的密码,这对于试图使用字典词组合的强制算法来说,实际上是一个巨大的节省。
正如@SteveSether、@xeon和@CountIblis所提到的,泄露密码的长度(或熵)也会影响攻击者是否试图破解您的密码,阻止他们使用强密码,而将其吸引到弱密码。因此,如果你知道你有一个强大的密码,然后披露!但是,公开系统中所有用户的密码长度(或熵)会使强密码更强,弱密码更弱。
告诉别人你密码的长度并不是你能做的最糟糕的事情,但我仍然不会这么做。
发布于 2015-06-23 15:13:21
除了@Mike详细描述的数学之外,还要考虑密码长度到处都是泄漏:
因此,明智的方法是将密码长度视为公共数据。一些攻击者将无法访问它(只是抓取服务器数据库副本的那种攻击者);其他攻击者将知道这一点。很难知道密码长度“有多少秘密”,而且由于安全性都是量化的,所以最好假设所有攻击者都知道密码长度。相信你可以保守秘密,并根据这个概念来评估安全性,这将是非常危险的。
发布于 2015-06-23 15:40:36
揭示您的密码长度显示了一些关于您的密码的强度。所以你实际上是在给别人一个暗示,这可能是很难猜到的。
因此,如果您的密码很长(示例中有17个字符),那么它基本上是无用的信息。如果密码短(6个字符),它会告诉攻击者您可能值得攻击。攻击者追踪最容易的目标。
https://security.stackexchange.com/questions/92233
复制相似问题