Laravel ialah rangka kerja PHP yang sangat baik Konsep reka bentuknya ringkas dan elegan, sambil menyediakan fungsi yang berkuasa dan antara muka API yang mudah digunakan, yang dialu-alukan secara meluas oleh pembangun. Dalam rangka kerja Laravel, sangat mudah untuk menggunakan Penyulitan Laravel untuk menyulitkan data Artikel ini akan memperkenalkan penggunaan asas Penyulitan Laravel.
Penyulitan Laravel ialah cara menyulitkan data yang disediakan oleh rangka kerja Laravel Ia boleh menyulitkan dan menyahsulit data dengan cepat dan ia sangat sesuai untuk aplikasi dalam pembangunan Laravel.
Apabila kita perlu menyimpan data sensitif, seperti kata laluan, nombor kad kredit, dsb., untuk mengelak daripada menyimpan teks biasa secara langsung, data tersebut perlu disulitkan untuk mengelakkan isu keselamatan yang disebabkan oleh kebocoran data sensitif. Penyulitan Laravel menyediakan algoritma penyulitan AES-256-CBC yang selamat untuk memastikan keselamatan data.
Penyulitan Laravel sangat mudah, cuma ikut langkah di bawah untuk melaksanakan operasi penyulitan dan penyahsulitan.
Dalam Penyulitan Laravel, kunci ($kunci) diperlukan untuk operasi penyulitan dan penyahsulitan. Cara untuk menjana kunci adalah dengan menambah pembolehubah APP_KEY dalam fail .env dan jalankan arahan berikut untuk menjana kunci:
php artisan key:generate
Kunci yang dijana akan disimpan secara automatik dalam pembolehubah APP_KEY bagi fail .env .
Sebelum menggunakan Penyulitan Laravel untuk menyulitkan data, kita perlu memperkenalkan perpustakaan Laravel Crypt ke dalam kod:
use IlluminateSupportFacadesCrypt;
Penyulitan Laravel menyediakan penyulitan( ) kaedah Sulitkan data dengan pantas:
$data = '需要加密的数据'; $encrypted_data = Crypt::encryptString($data);
Penyulitan Laravel menyediakan kaedah nyahsulit() untuk menyahsulit data dengan cepat:
$decrypted_data = Crypt::decryptString($encrypted_data);
Di bawah ini kami mengambil fungsi log masuk mudah sebagai contoh untuk menunjukkan cara menggunakan Penyulitan Laravel untuk menyulitkan data sensitif.
Apabila pengguna mendaftar, kata laluan pengguna perlu disimpan, tetapi untuk mengelakkan kata laluan pengguna daripada bocor, kami perlu menyulitkan kata laluan. Apabila pengguna log masuk, kita perlu membandingkan kata laluan yang dimasukkan oleh pengguna dengan kata laluan dalam pangkalan data Ini memerlukan kata laluan yang dimasukkan oleh pengguna untuk disulitkan dan kemudian dibandingkan.
Apabila pengguna mendaftar, kita perlu menyulitkan kata laluan yang dimasukkan oleh pengguna Kod tersebut adalah seperti berikut:
use IlluminateSupportFacadesCrypt; use AppUser; $user = new User; $user->name = '用户名'; $user->password = Crypt::encryptString('密码'); $user->save();
use IlluminateSupportFacadesCrypt; use IlluminateHttpRequest; use AppUser; public function login(Request $request) { $user = User::where('name', $request->input('name'))->first(); if (!$user || $user->password != Crypt::encryptString($request->input('password'))) { return '用户名或密码错误'; } // 登录成功 }
Atas ialah kandungan terperinci Pembangunan Laravel: Bagaimana untuk menyulitkan data menggunakan Penyulitan Laravel?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!