Пожалуй, максимально точную трактовку термина «cookie» никто не может дать и по сегодняшний день. Известно точно, что после появления операционных систем семейства Unix появился также и термин Magic Cookies, который обозначал пакеты, с помощью которых различные программы обмениваются данными.
Что такое cookie?
Cookie (cookies, куки) — конфиденциальная текстовая информация, которая передается сервером браузеру пользователя и записывается в файл на его компьютере или другом устройстве. При повтором посещении сайта записанная ранее информация с компьютера отравляется обратно серверу вместе с определенными пользовательскими данными. Время хранения сookie на компьютере пользователя устанавливается на определенный период или единоразово, до закрытия браузера, после чего они автоматически удаляются.
Зачем нужны cookie?
С появлением cookie в HTTP-протоколе частично решилась проблема, которая заключалась в том, что при соединении через HTTP-протокол соединение было непостоянным. Другими словами, для передачи каких-либо данных, файла или же документа, для каждого из них посылается отдельный запрос. Использование cookie дало возможность завершать какое-то действие после того, как браузер отослал запрос, а сервер, в свою очередь, отослал ответ на него. Сразу после этого сервер воспринимает этот же источник запроса как новый.
Ранее использование сессий по HTTP-протоколу было невозможным. Теперь же, с помощью cookie, ее можно эмулировать. При первом запросе к серверу создается значение cookie. После этого, при необходимости, это значение считывается и может изменяться.
Cookie используются практически на всех интернет-сервисах. Например, открыв какой-нибудь сайт, есть возможность идентифицироваться на нем под своим именем, которое было использовано ранее. Дело в том, что после ввода имени в формы и отправки запроса, на локальный компьютер записываются эти самые cookie. После последующей отправки запроса сервер будет проверять есть ли уже записанные на компьютере cookie, и после этого обработать их. В результате при повторном входе на эту же страницу сайта, вам будет отображаться некоторая сохраненная о вас информация. Пример сохраненных данных в cookie в браузере Google Chrome:
Cookie и безопасность
Поскольку некоторые сookie содержат конфиденциальную информацию, например, доступ к электронной почте, хакеры могут использовать их для последующего взлома сервиса, использующего эти данные. Самый распространенный способ кражи — это анализ трафика или, другими словами, взлом сессии. Для защиты от кражи сookie советуется использовать зашифрованное соединение между локальным компьютером и сервером, которое, к сожалению, используется далеко не всеми web-серверами. Кроме этого, можно в настройках содержания страницы запретить сохранение своих данных или удалять их по закрытию браузера:
Отметим, что пользователь может почистить cookie на компьютере самостоятельно. Как правило, во всех браузерах есть в настройках возможность очистки не только истории посещений и загрузок, но и удаления файлов cookie, логинов и паролей, информации для формы автозаполнений и так далее. Изображение ниже показывает, где и как почистить cookie в Google Chrome:
Настройки -> Показать дополнительные настройки -> Очистить историю
Также подобную функцию предлагают специальные приложения и утилиты (например, CCleaner).