改良的MD5密码储存方案

曾逛过一个服务器后台,发现就算看到数据库信息,也无法破解 Admin 用户的密码,因为 MD5 是不可逆的,稍微复杂一点就基本不可能破解。开始一直采用 RSA 存储密码还是存在破解的风险(进入到后台以及源码中的私钥)。

  1. 这里稍作改进,加密算法为:1. MD5[MD5[密码]+username]。2. 截取从第 10 截取 16 位长度
  2. PHP 脚本实现如下:
$username = '////';
$password = '////';
$pswdCode = md5($password);
$mixCode = md5($pswdCode.$username);
$realCode = substr($mixCode, 9, 16);
echo $realCode;

用户量庞大时候,建议最后 截取 16 位 操作舍去,因为有可能出现类似“哈希冲突”的问题

本文链接:https://ariser.cn/index.php/archives/18/
本站文章采用 知识共享署名4.0 国际许可协议进行许可,请在转载时注明出处及本声明!