(PHP 5 >= 5.5.0, PHP 7, PHP 8)
password_verify — Проверяет, соответствует ли пароль хешу
$password
, string $hash
): boolПроверяет, соответствует ли пароль хешу. Функция password_verify() совместима с crypt(). Следовательно, хеши паролей, созданные crypt(), могут быть использованы в password_verify().
Обратите внимание, что password_hash() возвращает алгоритм, стоимость и соль как части хеша. Таким образом, вся необходимая для проверки информация включена в него. Это позволяет производить проверку без необходимости хранить все эти данные раздельно.
Эта функция безопасна для атак по времени.
password
Пользовательский пароль.
hash
Хеш, созданный функцией password_hash().
Возвращает true
или false
, в зависимости от результатов проверки.
Пример #1 Пример использования password_verify()
Это упрощённый пример; при необходимости рекомендуется пересоздать правильный пароль; смотрите пример в описании функции password_needs_rehash().
<?php
// Смотрите пример использования password_hash(), для понимания откуда это взялось.
$hash = '$2y$10$.vGA1O9wmRjrwAVXD98HNOgsNpDczlqm3Jq7KnEd1rVAGv3Fykk1a';
if (password_verify('rasmuslerdorf', $hash)) {
echo 'Пароль правильный!';
} else {
echo 'Пароль неправильный.';
}
?>
Результат выполнения данного примера:
Пароль правильный!