CI提供了简单的密码加密方式,password_hash
示例:
public function index()
{
/*$a = config_item("time");
return $a;
if(is_php('5.3')) {
$str = quoted_printable_decode($str);
return $str;
}*/
$pwd = "jiangliqin123";
$last = password_hash($pwd, PASSWORD_DEFAULT); //创建密文
$lasts = password_verify($pwd, $last); //验证密码
echo $lasts;
}
password_hash()
该函数有两个参数,密码和加密方式
加密方式可以有两种:
- PASSWORD_DEFAULT :使用 bcrypt 算法 (PHP 5.5.0 默认)。 注意,该常量会随着 PHP 加入更新更高强度的算法而改变。 所以,使用此常量生成结果的长度将在未来有变化。 因此,数据库里储存结果的列可超过60个字符(最好是255个字符)。
- 使用 CRYPT_BLOWFISH 算法创建散列。 这会产生兼容使用 “ 2 y 2y 2y” 的 crypt()。 结果将会是 60 个字符的字符串, 或者在失败时返回 FALSE。
password_verify()
该函数包含两个参数,接收到的密码明文和已经生成的hash串。这样就可以实现用户密码的校验,成功返回1否则为0.