laravel怎么样快速验证密码并实现加密插入数据库

一般我们在数据库中的密码都是使用密文储存的,
这样子做是比较安全,那么,如果用户在需要修改密码的时候,怎么样可以做到快速验证呢?
比如,某用户输入了123456(想要修改的密码)
而数据库中的密码是密文存储的,如果正常对比肯定是不正确的。
那么,有两种方法,第一次,使用与之对应的密文加密后再与之对比。
第二种,laravel提供了一个快速验证的方法password_verify()

password_verify('用户输入的密码','数据库的密码')

这样就可以快速对比了
例如,我项目中的

//获取用户输入的旧密码
        $old_password = $request->input('old_password');
        //获取数据库的旧密码
        $user = auth('api')->user()->password;
        //验证用户输入的旧密码与数据库的旧密码对比是否正确
        if (password_verify($old_password, $user)) {
            return $this->response->errorBadRequest('旧密码不正确');
        }
posted @ 2022-11-20 01:49  小信吖  阅读(263)  评论(0)    收藏  举报