Laravel - Hashing

Le hachage est le processus de transformation d'une chaîne de caractères en une valeur fixe plus courte ou en une clé qui représente la chaîne d'origine. Laravel utilise leHash façade qui fournit un moyen sécurisé pour stocker les mots de passe de manière hachée.

Utilisation de base

La capture d'écran suivante montre comment créer un contrôleur nommé passwordController qui est utilisé pour stocker et mettre à jour les mots de passe -

Les lignes de code suivantes expliquent la fonctionnalité et l'utilisation du 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();
   }
}

Les mots de passe hachés sont stockés en utilisant makeméthode. Cette méthode permet de gérer le facteur de travail dubcrypt algorithme de hachage, couramment utilisé dans Laravel.

Vérification du mot de passe contre le hachage

Vous devez vérifier le mot de passe par rapport au hachage pour vérifier la chaîne qui a été utilisée pour la conversion. Pour cela, vous pouvez utiliser lecheckméthode. Ceci est indiqué dans le code ci-dessous -

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

Notez que le check compare le texte brut avec le hashedPassword variable et si le résultat est vrai, il renvoie une valeur vraie.