Я пытаюсь подтвердить зашифрованный пароль, но по какой-то причине он всегда недействителен.
Что я делаю не так?
Например, мой пароль будет «test», поэтому я делаю это:
$hash = '$2y$10$4Ed6XtU2E6qjzSOSUOA0xuBEA0sokTJMrDBH5ttgJzMVXSh0muoX.';
$password = 'test';
if (password_verify($password, $hash)) {
echo 'Password is valid!';
} else {
echo 'Invalid password.';
}
Но пароль 'geheim123' работает с этим хешем:
$hash = '$2y$10$LY0l0pOc8vLCzI.VvxK3gOTlXoVwnP2dlAzicj9uE62Q39XfeTY/6';
$password = 'geheim123';
if (password_verify($password, $hash)) {
echo 'Password is valid!';
} else {
echo 'Invalid password.';
}
В чем может быть причина того, что второй работает, а другой нет?
Здесь я шифрую свои пароли:
$pass = password_hash($_POST['password'], PASSWORD_DEFAULT)."\n";