如何计算密码强度?

Puf*_*ffi 2 passwords math password-protection

我使用某种电子货币,他们使用密码作为密码.基本上每个密码长度为12个英文单词.我如何计算这是多么安全?我对这些事情知之甚少,但是对于字典攻击来说,12个单词似乎相当可行(至少在我看来).

当然,我担心这是多么安全,而不仅仅是问它是不是,我想知道自己计算它的方法(当然,你可以破坏答案).

欢迎任何建议,链接,文献建议等!

PS:普通计算机需要多长时间才能获得一个有效的密码短语,并附上我上面提供的详细信息?我需要知道,如果真的不需要那么多努力,我是否必须定期开设新账户以转移资金.我也很感激有关如何计算的信息,但这不是主要问题.再次感谢!

Cim*_*ali 6

这都是的问题.有多少个不同的符号可供测试?

传统上,密码是一串字符.符号就是字符.如果使用小写字母,则只有az是26个可能字母的范围.使用大写和数字,您将获得62个符号.对于ASCII集中的所有特殊符号(因此没有花哨的编码),您已经获得了90多个可能的符号.在您的情况下,符号是一个单词.

从这里http://www.oxforddictionaries.com/words/how-many-words-are-there-in-the-english-language,我会收集你可以预期的115000个单词(没有过时和衍生物).

然后,对于给定位置的每个可能的角色,您可以选择其他位置的每个可能角色.因此,如果您的密码以$开头,则您仍然可以为其他职位设置任何角色.这意味着我们必须将每个符号位置的可能符号数相乘.因此,如果2个字符具有可能的符号,则有s*s可能.通常,您可以获得密码的c字符sc可能性.

请注意,这意味着在字典单词的情况下,您可以放置​​随机单词而不是制作句子!

但在你的情况下,这可能是115000 12,约为5.3*10 60.所以非常多.

然后,通过t测试密码所需的时间来给出强制密码的时间,基本上就是在你的情况下.(t*5.3*1060)/2


作为旁注,如果您尝试使用完全随机密码而不是逐个枚举所有可能性,则平均尝试次数会增加一倍.如果我们模拟尝试使用伯努利分布的密码,这是随机变量的概率分布,其取值为1,成功概率为p,值为0,失败概率为q = 1-p,则p = 1 /(5.3*10 ^ 60)和伯努利试验是一次尝试(输入随机密码).

然后我们可以使用几何分布,它模拟了获得一次成功所需的独立和相同的伯努利试验的数量.它的预期值为1/p,因此我们可以在获得密码之前平均尝试5.3*10 ^ 60次.

  • 里面有一些研究、组合学和统计数据的精彩解释,以供证明。 (2认同)