计算用户密码的熵时,使用的标准方法是什么?似乎每个人对使用什么都有自己的看法。一些人提到了xkcd,另一些人提到了NITH和Shannon。
假设我想要计算Rockyou泄漏中前10个密码的熵,我应该使用什么。大多数Rockyou密码不是随机生成的。
如果我想计算随机生成的密码的熵,比如那些在网站上重置密码时生成的密码,通常是4-6个字符,只有a-z,A-Z字符。
有没有为这些场景推荐的推荐方法的Python实现?
发布于 2014-03-10 21:11:12
根据您对理论和实践的兴趣程度,您可以简单地连接到xkcd或NITH并获得结果。
关于香农熵和密码:此链接http://www.alertboot.com/blog/blogs/endpoint_security/archive/2011/11/29/password-strength-entropy-how-those-password-strength-checkers-work.aspx很好地描述了在讨论密码强度时如何使用香农熵。在某种程度上,它是香农原始定理的改编,该定理处理在噪声信道上稳健地传输离散数据。虽然我很欣赏它的改编,但我觉得它在很多方面都不够好,但这不是这里的重点。
你有没有看过这样的帖子:What is the best way to check the strength of a password?、Password strength checking library、Checking the strength of a password (how to check conditions)或Python password strength
我不知道是否有一种确定的方法来计算密码熵。这是那些看起来极其简单的问题之一,但仔细研究后发现,如果没有一些限制性的假设,它就会出人意料地困难。如果您想简单地检查密码是否包含来自各种字符类别的4个字符类别中的3个,这是微不足道的。从这个意义上说,如果一个密码有来自更多字符类别的更多字符,那么它将具有更高的熵。但这仍然有很多缺点,因为如何决定如果ab!!比aA#3更强,前者有4个字符,但只有2个字符类,后者有3个字符类。如果你想要考虑字典中的单词,倒排字典中的单词,短语就会困难得多……
https://stackoverflow.com/questions/22277493
复制相似问题