首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我想用md5加密方法代替现有的bcrypt加密方法作为登录表中的密码字段?

我想用md5加密方法代替现有的bcrypt加密方法作为登录表中的密码字段?
EN

Stack Overflow用户
提问于 2019-10-16 17:32:47
回答 1查看 85关注 0票数 1

我已经使用Auth中间件完成了登录功能,其中使用了一种Bcrypt加密方法。登录功能运行良好。但我们需要处理设置密码功能与旧密码需要验证。但是每次Bcrypt方法都会更改密码字符串,导致以前在表中存储的密码bcrypt字符串与设置密码表单中手动输入的密码不匹配。那么,如果旧密码字段与表中现有保存的密码不匹配,该如何验证。

代码语言:javascript
复制
$credentials = request(['email', 'password']);
$user=Auth::attempt($credentials);
EN

回答 1

Stack Overflow用户

发布于 2019-10-16 18:09:07

您使用的是Laravel,所以您应该使用Hash来处理密码。

以下是您需要了解的所有内容:https://laravel.com/docs/6.x/hashing#basic-usage

简而言之,您可以通过以下方式创建和验证密码:

创建要存储在数据库中的哈希密码:

代码语言:javascript
复制
$hashedPassword = Hash::make($request->password);

根据现有密码进行验证

代码语言:javascript
复制
if (Hash::check('entered-password-by-user', $hashedPassword)) {
    // The passwords match...
}

当然,不要忘记包含哈希外观:use Illuminate\Support\Facades\Hash;

如果你想用它来散列你的密码,md5是一种古老且非常易受攻击的方法。这是非常不受欢迎的!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58410158

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档