Mengapa Password_Verify Mengembalikan Palsu?
Apabila menggunakan fungsi password_verify() PHP 5.5 untuk mengesahkan cincang kata laluan, pembangun mungkin menghadapi pulangan palsu yang boleh dikaitkan dengan pelbagai faktor. Satu punca biasa, terutamanya jika PHP 5.5 digunakan, adalah berkaitan dengan panjang maksimum lajur cincang kata laluan dalam pangkalan data.
Pertimbangan Panjang Lajur Pangkalan Data
Menurut manual PHP, cincang kata laluan yang disimpan dalam lajur pangkalan data harus mempunyai panjang lebih daripada 60 aksara untuk keselamatan optimum. Ini kerana password_verify() melaksanakan algoritma pencincangan yang selamat dan perlahan (bcrypt) yang mengeluarkan cincangan dengan panjang yang berbeza-beza berdasarkan faktor seperti garam dan lelaran.
Jika lajur cincang kata laluan dalam pangkalan data anda mempunyai had panjang sebanyak 60 aksara, ia mungkin memotong cincang yang disimpan dan menyebabkan password_verify() gagal. Oleh itu, memastikan panjang lajur ditetapkan kepada 255 aksara atau lebih adalah disyorkan untuk menyelesaikan isu ini.
Atas ialah kandungan terperinci Mengapakah `password_verify()` Mengembalikan Palsu dalam PHP 5.5?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!