Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Mengesahkan Kata Laluan Masin dengan Betul untuk Log Masuk Ahli?

Bagaimana untuk Mengesahkan Kata Laluan Masin dengan Betul untuk Log Masuk Ahli?

Barbara Streisand
Lepaskan: 2024-12-06 15:46:16
asal
588 orang telah melayarinya

How to Correctly Verify Salted Passwords for Member Login?

Cara Mengesahkan Kata Laluan Masin untuk Log Masuk Ahli

Dalam tapak ahli selamat, kata laluan disimpan sebagai cincang masin dalam pangkalan data, menambah lapisan perlindungan tambahan. Walau bagaimanapun, ini boleh menjadikan pengesahan log masuk mencabar bagi pembangun.

Untuk mengesahkan kata laluan masin untuk log masuk ahli, beberapa langkah terlibat:

  1. Mengambil semula Garam:

    • Gunakan pertanyaan PILIH untuk mendapatkan semula garam yang dikaitkan dengan nama pengguna.
  2. Mengasinkan Kata Laluan Input Pengguna:

    • Sambungkan garam dengan kata laluan input pengguna.
  3. Mencincang Masin Kata laluan:

    • Cincang kata laluan masin menggunakan algoritma pencincangan yang sama digunakan untuk menyimpan kata laluan dalam pangkalan data.
  4. Menyemak Terhadap Hash Tersimpan:

    • Laksanakan pertanyaan SELECT lain untuk dapatkan semula cincang yang disimpan untuk pengguna dan bandingkannya dengan cincang yang dikira daripada kata laluan input.

Kod Dilaraskan untuk Log Masuk Ahli:

Dalam kod yang disediakan, isu utama melibatkan semakan yang salah untuk $result === false. Pendekatan yang betul adalah untuk menyemak sama ada $result sebenarnya set hasil kosong, kerana set hasil kosong masih akan dinilai kepada benar dalam PHP.

// ... existing code

$result = mysqli_query($connect, $saltQuery);
if (mysqli_num_rows($result) === 0){
    die(mysqli_error());
}
$row = mysqli_fetch_assoc($result);
$salt = $row['salt'];

// ... remaining code
Salin selepas log masuk

Kod terlaras ini akan menyemak kewujudan ahli dengan betul dengan nama pengguna dan kata laluan yang sepadan sambil memastikan pengesahan kata laluan yang betul.

Atas ialah kandungan terperinci Bagaimana untuk Mengesahkan Kata Laluan Masin dengan Betul untuk Log Masuk Ahli?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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 terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan