这是一个两部分的问题:
第1部分
首先,处理在 PHP 中计算密码的熵。我一直找不到任何在经验上合理的代码示例,并且真的希望在找到计算最终数字的“正确”方法方面得到一些帮助。网上很多人都有自己自制的加权算法,但我真的在寻找方程的科学答案。
我将使用密码熵作为更大安全系统的一部分,并作为一种分析我们整体数据安全性的方法,该方法基于用户密码被泄露时可访问的信息以及密码被暴力破解的难易程度。
第2部分
这个问题的第二部分是:这个数字到底有多大用处?我的最终目标是为系统中的每个密码生成一个“分数”,我们可以用它来监控我们作为一个动态实体的整体系统安全性。对于字典攻击、l33t 替换密码等,我可能不得不使用另一种或两种算法——但我确实认为熵将在这样的“整体”系统评级中发挥重要作用。不过,我确实欢迎对其他方法提出建议。
我知道的
我已经看到一些提到对数方程来计算所述熵,但我还没有看到一个实际上不是写成数学方程的好例子。我真的可以使用一个代码示例(即使不是严格使用 PHP)来让我继续前进。
扩大
在发表评论时,我意识到我可以更好地解释这个计算的有用性。当我在用户密码极弱的遗留系统上工作时,我必须有一些具体的证据证明该弱点,然后才能提出强制所有用户将密码更改为新(强制)强密码的理由。通过为系统中的每个用户帐户存储密码强度分数,我可以建立几个不同的指标来显示整个系统的弱点并为更强的密码提供理由。
TIA