密码加密之前一直使用md5方式,md5加密的密码是可以强行破解的,网上查询发现可以使用bcrypt算法,安全系数高,目前YII框架和wordpress都在使用这个算法。
phpass是一个开源的类库,可以让我们方便的使用bcrpt加密算法
下载地址分别是:
CSDN:http://download.csdn.net/detail/xiao_bai8/9565233
官网:http://www.openwall.com/phpass/
具体实现代码如下:
// 引入类文件
require 'PasswordHash.php';
// 初始化散列器为不可移植,安全性更好。false加密字符串是60位,true加密字符是34位
$hasher = new PasswordHash(8, true);
// 执行加密
$hashedPassword = $hasher->HashPassword('test123');
// 输出加密后的字符和对应的字符串长度
echo $hashedPassword;
echo '<br>';
echo strlen($hashedPassword).'<br>';
// 检查密码是否正确,第一个参数是密码的明文,第二个是加密后的字符串
$hasher->CheckPassword('test123', $hashedPassword); // false
$hasher->CheckPassword('test1234', $hashedPassword); // true