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