Bcrypt là một thuật toán băm một chiều, bạn không thể giải mã các hàm băm. Sử dụng password_verify để kiểm tra xem mật khẩu có khớp với hàm băm được lưu trữ hay không:
<?php
// See the password_hash() example to see where this came from.
$hash = '$2y$07$BCryptRequires22Chrcte/VlQH0piJtjXl.0t1XkA8pw9dMXTpOq';
if (password_verify('rasmuslerdorf', $hash)) {
echo 'Password is valid!';
} else {
echo 'Invalid password.';
}
Trong trường hợp của bạn, hãy chạy truy vấn SQL chỉ sử dụng tên người dùng:
$sql_script = 'SELECT * FROM USERS WHERE username=?';
Và thực hiện xác thực mật khẩu trong PHP bằng cách sử dụng mã tương tự như ví dụ trên.
Cách bạn đang xây dựng truy vấn là rất nguy hiểm. Nếu bạn không tham số hóa đầu vào đúng cách, mã sẽ dễ bị tấn công SQL injection. Xem câu trả lời về Stack Overflow này về cách ngăn chặn việc đưa vào SQL.