A) ВЫБЕРИТЕ идентификатор, имя пользователя от пользователей ГДЕ имя пользователя =? И password_hash =?
B) hash_equals($password_hash_real, $password_hash_user)
Очевидно, я вижу, выбрана ли строка для проверки правильности пароля.
Что безопаснее?
Проверка соответствия паролей не является задачей базы данных. Кроме того, вы, вероятно, хотите знать, существует ли пользователь, хотя хеш-код не является хорошим. Так что я бы сделал это в сценарии PHP.
hash_equals()
не предназначен для проверки пароля с помощью хэша. использование password_hash()
а также password_verify()
так как они добавляют соль и все для вас.
Других решений пока нет …