目前我的项目仍然使用 MD5 散列来加密密码。是的,我知道。
我计划更新密码系统以使用 PHP 中较新的password_hash
功能password_verify
,这将提高用户密码的安全性。
但是,我的版主团队提出了一个担忧:由于我们的核心规则之一禁止用户拥有多个帐户,因此他们需要判断两个帐户是否属于同一个人的方法。他们使用的一种方法是检查两个可疑帐户的 MD5 哈希值是否相同 - 如果是,则这些帐户具有相同的密码并且怀疑会加剧。但是对于提议的新系统,这将不再可能,因为两个账户会产生不同的哈希值。
为了找到妥协,有没有办法使用更好的安全性password_hash
,同时仍然为主持人团队提供一种方法来检测两个帐户何时共享相同的密码?
我目前的想法涉及以其他方式对密码进行哈希处理,这将为相同的密码产生相同的哈希值,但我担心这会重新引入我们试图通过远离 MD5 来逃避的相同漏洞. 这里是否有任何选择,或者我是否必须使用行政决策权来否决问题?