密码加密一般在处理登录、注册、修改密码的时候使用。正常来说密码加密使用加密算法之后,还需要使用加盐,相对来说会安全一点。
密码加密最直接的方法是使用MD5加密:
$pw = '123456';
$password =md5($pw);
存和取都是加md5()这个函数;
取的话,拿密码进行md5()加密后,再和数据库密码字段值对比
下面是一个实现登录的一个方法
publicfunctionlogin()
{
$data=[
"user_phone"=>input('phone'),
"user_pw"=>md5(input('pw')),
];
$res=Db::name('user')->where($data)->find();
if($res==null){
return $this->error('账号密码错误');
}else{
Session::set("user_id",$res["user_id"]);
$this->success('登录成功','home/index');
}
}
使用password_hash来加密的话,想对来说,比较安全,password_hash是php提供的加密函数。
存:
password_hash('密码',PASSWORD_DEFAULT)
取:
password_verify( '密码', '存的密码')
做个课堂项目,简单的毕设,密码这样加密就差不多啦,生产环境不要这样子使用啦,得想想怎么使用~