Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

В запрос mysql правильное добавление хеширование паролей

Амай Амаев Ученик (10), открыт 4 дня назад
Как в таком запросе добавить хеширование паролей
$sql = "INSERT INTO `users`(`name`, `familiya`, `age`, `login`, `pass`, `email`, `strana`, `gorod`, `pol`, `object`) VALUES ('$imy', '$familiya', '$age', '$username', '$pass', '$email', '$strana', '$gorod', '$pol', '$object') ";

это поле pass куда именно функцию прописать и как правильно прописать?
2 ответа
Марина Дунилина Ученик (128) 4 дня назад
Чтобы добавить хеширование паролей в ваш SQL-запрос, используйте функцию `password_hash()`, которая безопасно хеширует пароли. Перед выполнением запроса замените переменную `$pass` на хешированный пароль. Пример:

```php
$hashedPass = password_hash($pass, PASSWORD_DEFAULT);
$sql = "INSERT INTO `users`(`name`, `familiya`, `age`, `login`, `pass`, `email`, `strana`, `gorod`, `pol`, `object`) VALUES ('$imy', '$familiya', '$age', '$username', '$hashedPass', '$email', '$strana', '$gorod', '$pol', '$object')";
```

Таким образом, вы обеспечите безопасность паролей в вашей базе данных.
Амай АмаевУченик (10) 4 дня назад
А расшифровать как потом?
Амай Амаев, расшифровывать его не надо, его функцией password_verify проверять
S.H.I. Оракул (73136) 4 дня назад
 $hashed_password = password_hash($pass, PASSWORD_DEFAULT); 

$sql = "INSERT INTO `users`(`name`, `familiya`, `age`, `login`, `pass`, `email`, `strana`, `gorod`, `pol`, `object`) VALUES ('$imy', '$familiya', '$age', '$username', '$hashed_password', '$email', '$strana', '$gorod', '$pol', '$object') ";
Амай АмаевУченик (10) 4 дня назад
А как потом расшифровать этот пароль?
S.H.I. Оракул (73136) Амай Амаев, хешированный пароль невозможно преобразовать обратно в исходный текст — это односторонний процесс. При авторизации система берёт введённый пользователем пароль, создаёт из него новый хеш и сравнивает с сохранённым в базе значением. Если результаты идентичны, доступ предоставляется. Именно поэтому при восстановлении доступа вам генерируют новый пароль вместо старого — даже администраторы сайта не имеют технической возможности узнать ваш оригинальный пароль.
Похожие вопросы