Rumah  >  Artikel  >  rangka kerja php  >  Laravel - Penyulitan

Laravel - Penyulitan

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

Penyulitan ialah proses menukar teks biasa kepada mesej menggunakan beberapa algoritma supaya mana-mana pengguna ketiga tidak dapat membaca maklumat tersebut. Ini berguna untuk menghantar maklumat sensitif kerana terdapat lebih sedikit peluang untuk penceroboh menyasarkan maklumat yang dipindahkan.

Penyulitan dilakukan menggunakan proses yang dipanggil Kriptografi. Teks yang akan disulitkan dipanggil Teks Biasa dan teks atau mesej yang diperoleh selepas penyulitan dipanggil Teks Sifir. Proses menukar teks sifir kepada teks biasa dipanggil Penyahsulitan.

Laravel menggunakan AES-256 dan AES-128 penyulitan, yang menggunakan Open SSL untuk penyulitan. Semua nilai yang disertakan dalam Laravel ditandatangani menggunakan protokol Kod Pengesahan Mesej supaya nilai asas tidak boleh diusik sebaik sahaja ia disulitkan.

Konfigurasi

Arahan yang digunakan untuk menjana kunci dalam Laravel ditunjukkan di bawah −

php artisan key:generate

Sila ambil perhatian bahawa arahan ini menggunakan penjana bait rawak selamat PHP dan anda boleh melihat output seperti yang ditunjukkan dalam tangkapan skrin yang diberikan di bawah −

Artisan Key

Arahan yang diberikan di atas membantu dalam menjana kunci yang boleh digunakan dalam aplikasi web. Perhatikan tangkapan skrin yang ditunjukkan di bawah −

Nota

Nilai untuk penyulitan diselaraskan dengan betul dalam fail config/app.php, yang merangkumi dua parameter untuk penyulitan iaitu kunci dan cipher. Jika nilai yang menggunakan kunci ini tidak diselaraskan dengan betul, semua nilai yang disulitkan dalam Laravel akan menjadi tidak selamat. Nilai ini disulitkan menggunakan sifir OpenSSL dan AES-256. Semua nilai yang disulitkan ditandatangani dengan kod Pengesahan Mesej (MAC) untuk menyemak sebarang pengubahsuaian rentetan yang disulitkan.

Kod yang ditunjukkan di bawah disebut dalam pengawal dan digunakan untuk menyimpan rahsia atau mesej sensitif.

fill([          'rahsia' => enkripsi($request->rahsia)       ])->simpan();    } }

Laravel - PenyulitanProses Penyahsulitan

Penyahsulitan nilai dilakukan dengan

pembantu nyahsulit

. Perhatikan baris kod berikut −

use IlluminateContractsEncryptionDecryptException; // Pengecualian untuk penyahsulitan dilemparkan ke fasad cuba {    $decrypted = decrypted($encryptedValue); } tangkap (DecryptException $e) {    // }

Sila ambil perhatian bahawa jika proses penyahsulitan tidak berjaya kerana MAC tidak sah digunakan, maka pengecualian yang sesuai akan dilemparkan.

Atas ialah kandungan terperinci Laravel - Penyulitan. 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 - Konsol ArtisanArtikel seterusnya:Laravel - Konsol Artisan