Учебники

Laravel — Хэширование

Хеширование — это процесс преобразования строки символов в более короткое фиксированное значение или ключ, представляющий исходную строку. Laravel использует фасад Hash, который обеспечивает безопасный способ хэширования паролей.

Основное использование

На следующем снимке экрана показано, как создать контроллер с именем passwordController, который используется для хранения и обновления паролей.

пароль

Следующие строки кода объясняют функциональность и использование passwordController

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Hash;
use App\Http\Controllers\Controller

class passwordController extends Controller{
   /**
      * Updating the password for the user.
      *
      * @param Request $request
      * @return Response
   */
   
   public function update(Request $request) {
      // Validate the new password length...
      $request->user()->fill([
         'password' => Hash::make($request->newPassword) // Hashing passwords
      ])->save();
   }
}

Хешированные пароли хранятся с использованием метода make . Этот метод позволяет управлять рабочим фактором алгоритма хеширования bcrypt , который широко используется в Laravel.

Проверка пароля против хэша

Вы должны проверить пароль по хешу, чтобы проверить строку, которая использовалась для преобразования. Для этого вы можете использовать метод проверки . Это показано в приведенном ниже коде —

if (Hash::check('plain-text', $hashedPassword)) {
   // The passwords match...
}

Обратите внимание, что метод check сравнивает простой текст с переменной hashedPassword и, если результат равен true, возвращает значение true.