【发布时间】:2017-06-29 20:00:24
【问题描述】:
我需要使用md5() 而不是bcrypt() 来存储密码。但是当我这样做时:
protected function create(array $data)
{
return Account::create([
'username' => $data['username'],
'email' => $data['email'],
'password' => md5($data['password']),
'datetoday' => Carbon::now(),
'lastip' => request()->ip(),
'confirmation' => bcrypt($data['password']),
]);
}
当我尝试登录时,它说凭据错误。
【问题讨论】:
-
虽然使用 MD5 对密码进行哈希处理是一个可怕的、可怕的想法,但您需要使用相同的方法来解密和加密密码(您仍然有 bcrypt 在确认中)。
-
为什么需要? md5() 不太安全。
-
投反对票的原因是什么?我别无选择,只能使用 md5 使其工作。
-
更安全的方法是使用 bcrypt 进行自己的登录,并在用户登录时将密码的 MD5 哈希值临时保存在内存中。这样您仍然可以在需要时使用 MD5,但可以安全地存储密码。
-
@SinanSamet 这真的值得牺牲用户的安全吗?