Rumah  >  Artikel  >  rangka kerja php  >  Laravel - Hashing

Laravel - Hashing

PHPz
PHPzasal
2024-08-27 10:51:191103semak imbas

Pencincangan ialah proses menukar rentetan aksara kepada nilai tetap yang lebih pendek atau kunci yang mewakili rentetan asal. Laravel menggunakan fasad Hash yang menyediakan cara selamat untuk menyimpan kata laluan dalam cara yang dicincang.

Penggunaan Asas

Tangkapan skrin berikut menunjukkan cara membuat pengawal bernama passwordController yang digunakan untuk menyimpan dan mengemas kini kata laluan −

Laravel - Hashing

Barisan kod berikut menerangkan fungsi dan penggunaan 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([
         &#39;password&#39; => Hash::make($request->newLaravel - Hashing) // Hashing passwords
      ])->save();
   }
}

Kata laluan yang dicincang disimpan menggunakan kaedah make. Kaedah ini membolehkan mengurus faktor kerja algoritma pencincangan bcrypt, yang popular digunakan dalam Laravel.

Pengesahan Kata Laluan terhadap Hash

Anda harus mengesahkan kata laluan terhadap cincang untuk menyemak rentetan yang digunakan untuk penukaran. Untuk ini anda boleh menggunakan kaedah check. Ini ditunjukkan dalam kod yang diberikan di bawah −

if (Hash::check(&#39;plain-text&#39;, $hashedLaravel - Hashing)) {
   // The passwords match...
}

Perhatikan bahawa kaedah check membandingkan teks biasa dengan pembolehubah hashedLaravel - Hashing dan jika hasilnya benar, ia mengembalikan nilai sebenar.

Atas ialah kandungan terperinci Laravel - Hashing. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Laravel - PenyulitanArtikel seterusnya:Laravel - Penyulitan