在不知不觉中,我实现了一个使用 md5 作为哈希算法的登录系统。现在我确实知道得更多,我想转向使用 PHPass。我的问题是系统已经在生产中,要求所有用户更改密码将是所有麻烦的根源。
我想出了一个足够简单的解决方案,但鉴于我之前的错误,我想确保我不会因为无知而犯下同样严重的错误。
我的解决方案如下:
改变
md5($_POST['pass'])
- 根据数据库值检查 md5 哈希密码
至
md5($_POST['pass'])
- 将 md5 哈希密码传递给
$hasher->HashPassword()
- 用于
$hasher->CheckPassword()
根据数据库中的值检查重新散列的密码
只是为了清楚起见,我只是重新散列 md5 版本,因为那是我已经在数据库中拥有的。它不打算作为一种附加的安全措施(尽管如果是的话,那就太好了!)。