Melindungi Kod Anda dengan PDO dan Pencincangan Kata Laluan
Kod yang tidak selamat menimbulkan risiko yang ketara. Walaupun pencincangan MD5 tidak mencukupi, melaksanakan pencincangan kata laluan dengan PDO boleh meningkatkan keselamatan kod anda. Panduan ini menyediakan pendekatan langkah demi langkah untuk memasukkan pencincangan kata laluan ke dalam kod anda.
Langkah 1: Pilih Perpustakaan
Elakkan pencincangan kata laluan DIY. Pilih perpustakaan terkemuka yang mengendalikan penjanaan garam dan kerumitan lain untuk anda. Berikut ialah beberapa pilihan popular:
Langkah 2: Sepadukan ke dalam Pendaftaran
Dalam kod pendaftaran anda, kira kata laluan yang dicincang menggunakan perpustakaan pilihan anda:
$password = password_hash($password, PASSWORD_DEFAULT); $stmt = $dbh->prepare("insert into users set username=?, email=?, password=?"); $stmt->execute([$username, $email, $hash]);
Langkah 3: Tingkatkan Kefungsian Log Masuk
Dalam anda kod log masuk, gunakan fungsi password_verify() untuk membandingkan kata laluan yang dimasukkan dengan cincang yang disimpan:
$sql = "SELECT * FROM users WHERE username = ?"; $stmt = $dbh->prepare($sql); $result = $stmt->execute([$_POST['username']]); $users = $result->fetchAll(); if (isset($users[0])) { if (password_verify($_POST['password'], $users[0]->password)) { // Valid login } else { // Invalid password } } else { // Invalid username }
Dengan mengikuti langkah-langkah ini, anda boleh melaksanakan pencincangan kata laluan dengan PDO dengan mudah, melindungi aplikasi anda daripada serangan brute-force dan pelanggaran data.
Atas ialah kandungan terperinci Bagaimana Saya Boleh Melindungi Kod Saya dengan PDO dan Pencincangan Kata Laluan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!