Я не видел много на этом даже при поиске Google, Google Video & этот сайт. Было интересно, почему это, если я поставил. Попытался сделать некоторые тесты по этому вопросу, хотя. В основном это password_verify, что я вижу даже на видео. не имеет значения, что я использую, если переменная hash () или crypt () в ней не будет работать вообще.
$hash_user_pwd2 = crypt('312132', '$2a$07$usesomesillystringforsalt$');
var_dump(hash_equals($row['password1'], '$hash_user_pwd2'));
Кажется, ошибка только с переменной, но когда я получаю конкретную переменную и устанавливаю переменную в «214234243j32k4jj234», то работает нормально, т.е.
var_dump(hash_equals($row['password1'], '214234243j32k4jj234'));
Проход в полном объеме crypt()
как второй параметр hash_equals
<?php
$hashed_password = crypt('topsecret', '$2a$07$usesomesillystringforsalt$');
if (hash_equals($hashed_password, crypt('topsecret', $hashed_password))) {
echo "Password verified!";
}
?>
Других решений пока нет …