Материал предоставлен https://it.rfei.ru

Сохранение имен пользователей и паролей

Безусловно, самым естественным способом сохранения имен пользователей и паролей будет использование MySQL. Но опять-таки, хранить пароли в виде простого текста не хочется, поскольку, если база данных будет взломана, наш веб-сайт подвергнется опасности. Вместо этого будет использован тонкий прием с использованием так называемой односторонней функции.

Функции этого типа просты в использовании и способны превращать строку текста в строку, напоминающую набор произвольных символов. Односторонние функции практически невозможно использовать в обратном направлении, поэтому производимая ими выходная информация может безопасно храниться в базе данных, и ее похититель ничего не узнает об используемых паролях.

Применяемая нами функция называется md5. Ей передается строка для хэширования, а она возвращает 32-символьное шестнадцатеричное число. Код, в котором она используется, имеет следующий вид:

$token = md5('мой_пароль');

При запуске этого кода переменная $token может получить следующее значение:

34819d7beeabb9260a5c854bc85b3e44

Можно также воспользоваться схожей функцией sha1, которая считается более безопасной, имеет более удачный алгоритм и возвращает 40-символьное шестнадцатеричное число.

НТТР-аутентификацияДобавление произвольных данных