Lithe Crypt ialah utiliti penyulitan dan penyahsulitan mudah dalam PHP, direka bentuk untuk berfungsi dengan rangka kerja Lithe. Ia menggunakan algoritma AES-256-CBC untuk pengendalian data yang selamat.
Untuk memasang pakej Lithe Crypt, anda boleh menggunakan Composer. Jika anda belum memasangnya, pastikan Komposer tersedia pada sistem anda. Kemudian jalankan arahan berikut dalam direktori projek anda:
composer require lithemod/crypt
Sebelum menggunakan kelas Crypt, anda perlu memuatkan pembolehubah persekitaran anda. Gunakan kod berikut untuk memuatkan fail .env anda:
use Lithe\Support\Env; // Carregar variáveis de ambiente Env::load(__DIR__); // Ajuste o caminho conforme necessário
Pastikan pembolehubah persekitaran APP_KEY ditetapkan. Kunci ini mestilah rentetan berkod base64 32 bait. Anda boleh mengkonfigurasinya dalam fail .env anda atau terus dalam persekitaran pelayan.
Contoh kunci base64 yang sah:
YXNkZmFnc2Rhc2RmYWdlcyBhc2RmYWdlcyBhYXNkZmFnc2Q=
Untuk menyulitkan data, gunakan kaedah penyulitan kelas Crypt. Anda juga boleh menentukan sama ada anda mahu menggunakan IV tetap (vektor permulaan) untuk penyulitan:
use Lithe\Support\Security\Crypt; $data = "dados sensíveis"; // Criptografar sem IV fixo $encrypted = Crypt::encrypt($data); echo "Dados Criptografados: " . $encrypted; // Criptografar com IV fixo (útil para valores únicos como e-mails) $encryptedWithSameIV = Crypt::encrypt($data, true); echo "Dados Criptografados com IV Fixo: " . $encryptedWithSameIV;
Untuk menyahsulit data yang disulitkan sebelum ini, gunakan kaedah nyahsulit. Anda mesti menyatakan parameter yang sama yang digunakan semasa penyulitan untuk memastikan penyahsulitan yang betul:
use Lithe\Support\Security\Crypt; // Descriptografar sem IV fixo $decrypted = Crypt::decrypt($encrypted); echo "Dados Descriptografados: " . $decrypted; // Descriptografar com IV fixo $decryptedWithSameIV = Crypt::decrypt($encryptedWithSameIV, true, $data); echo "Dados Descriptografados com IV Fixo: " . $decryptedWithSameIV;
Jika APP_KEY tidak ditakrifkan atau tidak sah, kelas Crypt akan membuang CryptException. Adalah penting untuk mengendalikan pengecualian ini dalam kod anda untuk mengelakkan ralat yang tidak dijangka:
use Lithe\Exceptions\Encryption\CryptException; try { $encrypted = Crypt::encrypt($data); // Descriptografar sem IV fixo $decrypted = Crypt::decrypt($encrypted); } catch (CryptException $e) { echo "Erro de Criptografia: " . $e->getMessage(); }
Lithe Crypt menawarkan cara yang praktikal dan selamat untuk mengendalikan penyulitan dan penyahsulitan data dalam aplikasi PHP anda. Dengan pelaksanaan algoritma AES-256-CBC dan kemudahan penyepaduan dengan rangka kerja Lithe, anda boleh melindungi data anda dengan berkesan. Cuba dan lihat bagaimana ia boleh meningkatkan keselamatan aplikasi anda!
Jika anda mempunyai sebarang soalan atau cadangan, sila komen di bawah!
Atas ialah kandungan terperinci Lithe Crypt: Memudahkan Kriptografi dalam Aplikasi PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!