Функция password_verify () в новом API паролей PHP проверяет, соответствует ли пароль хэшу. Хэш генерируется password_hash () , который по умолчанию использует случайную соль и cost = 10
.
Я всегда думал (хотя я никогда не изучал его), что вам нужно хранить соль внутри базы данных, а затем, когда вы хотите проверить пароль, хешируйте ее с помощью данной соли, используя ту же стоимость. Как password_verify()
проверяет пароль, не зная соли и стоимость?
Строка, возвращаемая password_hash()
содержит не только хэш, но и алгоритм, стоимость и соль.