Bạn không thể băm đầu vào và sau đó truy vấn nó trong cơ sở dữ liệu, vì mỗi lần băm sẽ sử dụng một muối ngẫu nhiên khác nhau. Vì vậy, bạn có thể băm cùng một mật khẩu hàng nghìn lần và nhận được 1000 kết quả khác nhau.
Bạn chỉ cần truy vấn DB về bản ghi liên quan đến tên người dùng, sau đó so sánh mật khẩu băm được trả về từ DB với mật khẩu đầu vào bằng cách sử dụng password_verify()
.
Ngoài ra, khi ban đầu ghi hàm băm vào DB khi tạo mật khẩu (sử dụng password_hash()
) không cần thiết phải thoát khỏi hàm băm. password_hash()
hoàn toàn không được sử dụng trong quá trình xác minh mật khẩu.