Laravel 无法更改默认加密方式?

我想把默认的bcrypt(password)替换成md5(password+salt),在不更改vendor文件的情况下,只能自己添加一个ServiceProvider替换原来的,于是我自己写了一个AddSaltHasher,但是却发现在make方法中无法获取$salt,有什么办法可以获取这个值吗?
namespace App\Services;

use RuntimeException;
use Illuminate\Contracts\Hashing\Hasher as HasherContract;

class AddSaltHasher implements HasherContract
{

public function make($value, array $options = [])
{

$hash = md5($value.$salt);//无法获取数据库中存放的salt

if ($hash === false) {
    throw new RuntimeException('addsalt hashing not supported.');
}

return $hash;
}

public function check($value, $hashedValue, array $options = [])
{
if (strlen($hashedValue) === 0) {
    return false;
}
$value = self::make($value);
if($value!=$hashedValue){
    return false;
}
return true;
}

public function needsRehash($hashedValue, array $options = [])
{
return false;
}

}
已邀请:

ctrlming

赞同来自:

楼主解决了吗?同样遇到这个问题 这在想解决方案

要回复问题请先登录注册