«Печенье» для web-браузера, или что такое cookie?

Cookie (куки)

Пожалуй, максимально точную трактовку термина «cookie» никто не может дать и по сегодняшний день. Известно точно, что после появления операционных систем семейства Unix появился также и термин Magic Cookies, который обозначал пакеты, с помощью которых различные программы обмениваются данными.

Что такое cookie?

Cookie (cookies, куки) — конфиденциальная текстовая информация, которая передается сервером браузеру пользователя и записывается в файл на его компьютере или другом устройстве. При повтором посещении сайта записанная ранее информация с компьютера отравляется обратно серверу вместе с определенными пользовательскими данными. Время хранения сookie на компьютере пользователя устанавливается на определенный период или единоразово, до закрытия браузера, после чего они автоматически удаляются.

Зачем нужны cookie?

С появлением cookie в HTTP-протоколе частично решилась проблема, которая заключалась в том, что при соединении через HTTP-протокол соединение было непостоянным. Другими словами, для передачи каких-либо данных, файла или же документа, для каждого из них посылается отдельный запрос. Использование cookie дало возможность завершать какое-то действие после того, как браузер отослал запрос, а сервер, в свою очередь, отослал ответ на него. Сразу после этого сервер воспринимает этот же источник запроса как новый.

Файл cookies

Ранее использование сессий по HTTP-протоколу было невозможным. Теперь же, с помощью cookie, ее можно эмулировать. При первом запросе к серверу создается значение cookie. После этого, при необходимости, это значение считывается и может изменяться.

Cookie используются практически на всех интернет-сервисах. Например, открыв какой-нибудь сайт, есть возможность идентифицироваться на нем под своим именем, которое было использовано ранее. Дело в том, что после ввода имени в формы и отправки запроса, на локальный компьютер записываются эти самые cookie. После последующей отправки запроса сервер будет проверять есть ли уже записанные на компьютере cookie, и после этого обработать их. В результате при повторном входе на эту же страницу сайта, вам будет отображаться некоторая сохраненная о вас информация. Пример сохраненных данных в cookie в браузере Google Chrome:

Пример сохраненных данных в сookie


Cookie и безопасность

Поскольку некоторые сookie содержат конфиденциальную информацию, например, доступ к электронной почте, хакеры могут использовать их для последующего взлома сервиса, использующего эти данные. Самый распространенный способ кражи — это анализ трафика или, другими словами, взлом сессии. Для защиты от кражи сookie советуется использовать зашифрованное соединение между локальным компьютером и сервером, которое, к сожалению, используется далеко не всеми web-серверами. Кроме этого, можно в настройках содержания страницы запретить сохранение своих данных или удалять их по закрытию браузера:

Cookie в браузере Chrome

Отметим, что пользователь может почистить cookie на компьютере самостоятельно. Как правило, во всех браузерах есть в настройках возможность очистки не только истории посещений и загрузок, но и удаления файлов cookie, логинов и паролей, информации для формы автозаполнений и так далее. Изображение ниже показывает, где и как почистить cookie в Google Chrome:

Настройки -> Показать дополнительные настройки -> Очистить историю

Очистить cookie

Также подобную функцию предлагают специальные приложения и утилиты (например, CCleaner).