ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Установка области видимости cookieПоскольку, по умолчанию, доступ к cookie происходит из корневого каталога, это может создать "дыры" в системе защиты, так как cookies становятся доступными в любом подкаталоге этого каталога. Ограничить доступ к cookies для всех страниц, кроме расположенных в конкретном каталоге, к примеру, /web, можно следующим образом: setcookie ( "name", $value, "/web/" );Однако и в этом случае, к примеру, каталоги /web/index.php, /web1/page.html и т. д. будут удовлетворять этому ограничению. Если такое положение также является нежелательным, можно ограничить область видимости cookies до конкретной страницы: setcookie ( "name", $value, "/web/index.php" );Однако и такой способ в полной мере не решает проблему, так как в этом случае доступ к информации, содержащейся в cookie, может получить, к примеру, скрипт /web/index.php-script/anti_cookie.php. Поэтому появляется необходимость в шифровании. Шифрование Применить шифрование к cookies можно разными способами, рассмотрим один из них: <? // создаем вектор начального состояния для шифрования $vector = mcrypt_create_iv ( mcrypt_get_iv_size ( MCRYPT_CAST_256, MCRYPT_MODE_CFB ), MCRYPT_RAND ); $key = "qwe233jk312jx813893xk312"; // ключ для расшифрования $cook_name = "maks"; $cipher = mcrypt_encrypt ( MCRYPT_CAST_256, $key, $cook_name, MCRYPT_MODE_CFB, $vector ); setcookie ( "username", $cipher, "/decrypt.php" );?>Как видно из листинга 10.13, расшифровка cookie проводится при помощи скрипта decrypt.php, код которого приведен ниже: <? // вектор начального состояния остается неизменным $vector = mcrypt_create_iv ( mcrypt_get_iv_size ( MCRYPT_CAST_256, MCRYPT_MODE_CFB ), MCRYPT_RAND ); $key = "qwe233jk312jx813893xk312"; $decrypt_name = mcrypt_ decrypt ( MCRYPT_CAST_256, $key, $username, MCRYPT_MODE_CFB, $vector ); echo( " $decrypt_name, мы рады видеть вас на нашей страничке!" );?>Не нашли, что искали? Воспользуйтесь поиском:
|