Menyimpan Kata Laluan Dengan Selamat
Soalan: Sejauh mana selamat menyimpan kata laluan menggunakan MD5 dengan garam berbanding biasa MD5?
Jawapan:
Memastikan storan kata laluan yang selamat adalah penting untuk keselamatan data. Walaupun MD5 masin lebih selamat daripada MD5 biasa, ia tidak mencapai amalan terbaik yang disyorkan. Melaksanakan perpustakaan standard untuk penyimpanan kata laluan ialah penyelesaian yang paling berkesan.
Menaik taraf kepada API Kata Laluan PHP
PHP 5.5.0 memperkenalkan API pencincangan kata laluan yang dipermudahkan yang memudahkan kata laluan selamat storan:
$hash = password_hash($_POST['password'], PASSWORD_DEFAULT, ['cost' => 12]); $checked = password_verify($_POST['password'], $hash);
Meningkatkan Keselamatan dengan Lada
Untuk keselamatan tambahan, menambah "lada" pada cincang kata laluan masin (secara automatik) disyorkan:
use Netsilik/Lib/PepperedPasswords; $pepper = hex2bin('012345679ABCDEF012345679ABCDEF012345679ABCDEF012345679ABCDEF'); $hasher = new PepperedPasswords($pepper); $hash = $hasher->hash($_POST['password']); $checked = $hasher->verify($_POST['password'], $hash);
Perpustakaan Standard Warisan: phpass
Untuk versi PHP sebelum 5.5.0, gunakan phpass:
require('PasswordHash.php'); $pwdHasher = new PasswordHash(8, FALSE); $hash = $pwdHasher->HashPassword($password); $checked = $pwdHasher->CheckPassword($password, $hash);
Pertimbangan Tambahan:
Atas ialah kandungan terperinci Betapa Selamatnya Salted MD5 Berbanding dengan Kaedah Hashing Kata Laluan Lain?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!