Использование password_hash
- рекомендуемый способ хранения паролей. Не разделяйте их на БД и файлы.
Допустим, у нас есть следующий ввод:
$password = $_POST['password'];
Я не проверяю ввод только ради понимания концепции .
Сначала вы вводите пароль:
$hashed_password = password_hash($password, PASSWORD_DEFAULT);
Затем см. вывод:
var_dump($hashed_password);
Как вы видите, это хешировано. (Я предполагаю, что вы сделали эти шаги).
Теперь вы храните этот hashed_password в своей базе данных, а затем скажем, когда пользователь просит их войти в систему. Вы проверяете ввод пароля с этим значением хэша в базе данных , сделав это:
// Query the database for username and password
// ...
if(password_verify($password, $hashed_password)) {
// If the password inputs matched the hashed password in the database
// Do something, you know... log them in.
}
// Else, Redirect them back to the login page.