Шифрование важных данных
Сегодня мы разберем, как шифровать важные данные на примере авторизации.
Будем использовать технологии PHP и MD5.
В качестве важных данных будет пароль для доступа к защищенной странице.
Саму авторизацию мы разрабатывать не будет, начнем с этапа когда пользователь уже имеет логин и пароль. Для примера введем случайные данные, которые не используем.
$login = "design-lessons.com.ua"; $password = "123456789";
Теперь нам нужно зашифровать пароль и вставить регистрационные данные (логин и зашифрованный пароль) в таблицу.
$hash = md5($password); mysql_query ("INSERT INTO table (login, password) VALUES ('$login', '$hash')");
Внимание! Предварительно нужно создать таблицу, создать поля login и password.
Если вы все сделали правильно, то регистрационные данные успешно добавлены в базу.
Это была так называемая регистрация, в что делать когда пользователь захочет авторизироваться? Все просто, создаем с помощью MD5 хеш введенного пароля, и если он совпадает с хешем пароля которые находиться в базе, то разрешить доступ к защищенной странице.
Давайте по порядку, сначала получаем данные (логин и пароль):
$login = $_POST["login"]; $password = $_POST["password"];
Запрашиваем по указанному логину данные:
$query = mysql_query ("SELECT * FROM table WHERE login='$login'"); $row = mysql_fetch_array ($query);
Выполняем проверку, сходятся ли пароли (пароль введенный пользователем на ходу генерируем в хеш MD5):
if ($row["password"] == md5($password)) { echo "Вход успешно выполнен"; }
Вот и все, теперь вы знаете как шифровать важные данные.
Вы зададите вопрос: Зачем это нужно, лишний геморой?
Представьте себе ситуацию, злоумышленник получил доступ к вашей базе данных, он захочет посмотреть пароли пользователей, захочет войти в аккаунт одного из пользователей и собственно войдет и сделает все что ему нужно.
А теперь представьте себе ту же ситуацию, только пароли у вас в базе защищены. Злоумышленник захочет посмотреть пароли, смотрит, а там не пароли, а какой-то непонятный набор символов. Соответственно вы защитили свою базу данных.
Умеешь собирать компьютеры? Работа сборщик ПК специально для тебя.
