Anda tidak dapat meng-hash input dan kemudian menanyakannya di database, karena hash akan menggunakan garam acak yang berbeda setiap kali. Jadi Anda bisa meng-hash kata sandi yang sama ribuan kali dan mendapatkan 1000 hasil yang berbeda.
Anda hanya perlu menanyakan DB untuk catatan yang terkait dengan nama pengguna, lalu membandingkan hash kata sandi yang dikembalikan dari DB dengan kata sandi input menggunakan password_verify()
.
Juga, ketika awalnya menulis hash ke DB pada pembuatan kata sandi (menggunakan password_hash()
) tidak perlu keluar dari hash. password_hash()
tidak digunakan sama sekali dalam proses verifikasi kata sandi.