PHP / 14. Шифрование и безопасность

Если бы мир был совершенным, то и шифровать ничего не пришлось бы. Любопытство людей не выходило бы за рамки их собственных данных, а номера кредитных карт, плавающие в море Интернета, не привлекали бы особого внимания. Однако наш мир не совершенен со всех точек зрения, поэтому без шифрования нам не обойтись. Любое шифрование перестраивает данные. Данные, перестроенные определенным образом, не могут быть восстановлены без огромных дополнительных затрат. Такой способ называется односторонним шифрованием. Другие способы шифрования работают в обоих направлениях: сначала информация кодируется, затем она может быть декодирована.
Статьи раздела '14. Шифрование и безопасность':
Не храните пароли на своем сайте
Задача Пароль может быть необходим, например для соединения с базой данных. А хранить пароль в используемых для этого файлах PHP вы не хотите, ведь злоумышленник может получить к ним доступ. Решение Сохраните пароль в перемен...
Обнаружение SSL-соединения
Задача Необходимо узнать, использует ли прибывший запрос SSL. Решение Проверьте значение переменной $_SERVER['HTTPS']: if ('on' == $_SERVER['HTTPS']) { print "The secret ingredient in Coca-Cola is Soylent Green."; } else...
Проверка данных с помощью хеширования
Задача Необходимо не дать возможности пользователям изменять данные, посланные им в cookie или в элементе формы. Решение Вместе с данными пошлите хеш этих данных с секретным словом, полученный в соответствии с алгоритмом MD5....
Проверка надежности пароля
Задача Необходимо обеспечить, чтобы пользователи выбирали пароли, трудные для угадывания перебором. Решение Проверьте выбранный пользователем пароль с помощью функции pc_passwordcheck(), показанной далее в примере 14.1. Напри...
Работа с потерянными паролями
Задача Необходимо предоставить пароль пользователю, заявившему о его утрате. Решение Сгенерируйте новый пароль и пошлите его по адресу электронной почты пользователя (предварительно сохраненному вами в файле): // генерируе...
Совместное использование зашифрованных данных с другим веб-сайтом
Задача Необходимо организовать безопасный обмен данными с другим веб-сайтом. Решение Если другой веб-сайт получает информацию с вашего веб-сайта, то поместите эти данные на страницу, защищенную паролем. Можно также предоставл...
Сокрытие данных при помощи кодирования
Задача Необходимо предотвратить просмотр данных как простого текста. Например, вы не хотите, чтобы кто-нибудь увидел секретную информацию формы, просмотрев исходный код страницы. Решение Закодируйте данные с помощью функции b...
Хранение зашифрованных данных в файле или базе данных
Задача Требуется сохранить зашифрованные данные, которые в дальнейшем будут затребованы и расшифрованы вашим веб-сервером. Решение Вместе с зашифрованными данными сохраните дополнительную информацию, необходимую для расшифров...
Хранение паролей
Задача Необходимо сохранять пароли пользователей, чтобы они могли заходить на ваш веб-сайт. Решение Когда пользователь регистрируется, зашифруйте выбранный им пароль с помощью функции crypt() и сохраните зашифрованный пароль ...
Шифрование и дешифрование данных
Задача Необходимо зашифровать и расшифровать информацию с помощью одного из множества популярных алгоритмов. Решение Используйте расширение PHP mcrypt: $key = 'That golden key that opens the palace of eternity.'; $data = ...
Шифрование сообщений электронной почты с помощью GPG
Задача Необходимо послать зашифрованное сообщение по электронной почте. Например, на вашем веб-сервере принимаются заказы, и надо отсылать письмо на фабрику с описанием заявки на обработку. Шифрование почтового сообщения предотвр...

Страницы: 1