@charles.orn
Перевод Laravel проекта с bcrypt на md5 шифрование может быть достаточно сложной и небезопасной операцией, так как md5 считается устаревшим алгоритмом хеширования и имеет ряд уязвимостей. Однако, если вы все же решите перейти на md5, вам потребуется выполнить следующие шаги:
- Измените настройки аутентификации Laravel в файле configauth.php. Найдите и замените значение bcrypt на md5 в следующих параметрах: 'driver' (расположен в разделе providers) и 'hash' (расположен в разделе passwords).
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
'providers' => [
'users' => [
'driver' => 'md5',
'model' => AppUser::class,
],
],
'passwords' => [
'users' => [
'provider' => 'users',
'table' => 'password_resets',
'expire' => 60,
'throttle' => 60,
'hash' => 'md5',
],
],
|
- Обновите модель пользователя (AppUser) для использования md5 хеширования для паролей. Добавьте следующую функцию hashPassword() в модель:
1
2
3
4
|
public function hashPassword($password)
{
return md5($password);
}
|
- Измените логику подписки пользователя (signup) или сброса пароля (reset) для использования функции hashPassword():
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
public function signup(Request $request)
{
$user = new User();
$user->email = $request->email;
$user->password = $user->hashPassword($request->password);
// ... остальная логика сохранения пользователя
}
public function resetPassword(Request $request)
{
$user = User::where('email', $request->email)->first();
$user->password = $user->hashPassword($request->password);
// ... остальная логика обновления пароля
}
|