Cookie

Эта статья входит в число готовых статей
Эта статья прошла проверку экспертом
Материал из «Знание.Вики»

Cookie — (рус. Ку́ки, букв. — «печенье») — это небольшой фрагмент данных, которыми обмениваются HTTP-сервер и HTTP-клиент. Браузер может сохранить файл cookie и отправить его обратно на тот же сервер с последующими запросами. Обычно HTTP—файл cookie используется для определения того, поступают ли два запроса из одного и того же браузера — например, для подтверждения входа пользователя в систему.[1]

Файлы cookie впервые были использованы в 1994 году. Они состоят из пар ключ-значение, которыми обменивается протокол связи HTTP. Сгенерированный HTTP-сервером файл cookie отправляется HTTP-клиенту для сохранения в течение определенного времени, после чего он возвращается обратно на сервер как есть при каждом подключении. Время сохранения может варьироваться от нескольких минут до нескольких лет.[2]

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

История

Файлы cookie уже использовались в вычислительной технике, когда Лу Монтулли пришла идея использовать их в веб-коммуникациях в июне 1994 года.[3] В то время он работал в Netscape Communications. В этом же году Джон Джаннандреа и Лу Монтулли написали первую спецификацию файлов cookie для Netscape Navigator. Первая спецификация использовалась в бета-версии Mosaic, который был выпущен 13 октября 1994 г. В первый раз было использовано использование файлов cookie (за исключением экспериментов) для определения того, посещали ли посетители веб-сайта Netscape его ранее. Монтулли подала заявку на патентную лицензию на технологию cookie в 1995 году, а патент США 5774670 был выдан в 1998 году.

С момента внедрения в бета-версию Mosaic 0.9 в 1994 году файлы cookie были интегрированы в Internet Explorer 2, который был выпущен осенью 1995 года.[4] Поэтому введение файла cookie было малоизвестно широкой публике. Также, файлы cookie были приняты по умолчанию в настройках браузеров, и пользователи не были уведомлены об их наличии. Технические специалисты знали о существовании файлов cookie в начале 1995 года, но широкая общественность узнала об этом только после публикации статьи Financial Times 12 февраля 1996 года.[5] Также в 1996 году было уделено большое внимание файлам cookie со стороны средств массовой информации из-за возможных вмешательств в частную жизнь.

Использование

В большинстве случаев файлы cookie необходимы для веб-сайтов, которым требуются вход учетную запись пользователя, которые имеют настраиваемые темы и другие расширенные функции. Основные причины, по которым сайты их используют, являются персонализация, отслеживание и управление сеансами.[6]

Управление сеансами

Сеанс — это взаимодействие пользователей с одним веб-сайтом. Это включает в себя такие действия, как вход в систему, добавление товаров в корзины покупок. HTTP-файлы cookie хранят эти данные, чтобы пользователю не приходилось постоянно входить в свою учетную запись или, в случае случайного закрытия страницы, сохранять товары в корзине. Это облегчает пользователям просмотр веб-страниц, поскольку им не приходится тратить свое время на повторяющиеся действия.[7]

Персонализация

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

Отслеживание

Файлы cookie помогают веб-сайту адаптировать контент в соответствии с предпочтительными интересами пользователя. Например, новостные порталы используют HTTP-файлы cookie для классификации контента в соответствии с тем, что интересует пользователей.

Кроме того, существуют так называемые сторонние файлы cookie, которые обычно используются для контекстной рекламы. Согласно истории просмотров за долгое время, эти файлы cookie помогают адаптировать рекламные объявления в соответствии с предпочтениями пользователя.[9]

Преимущества и недостатки файлов cookie

Управление Куками в браузере Mozilla Firefox

Преимущества

Удобство управления

Клиент может выбрать, что ему нужно делать с файлами cookie. Все браузеры имеют настройки для очистки истории, включая файлы cookie. Вручную пользователи могли бы найти текстовые файлы cookies, хранящиеся на жестком диске. Пользователи могут редактировать и удалять их по своему усмотрению.[10]

Доступность

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

Удобство использования

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

Маркетинг

Настройка принятия Куков в браузере Mozilla Firefox

Большинство компаний, особенно сайтов электронной коммерции, как правило, используют файлы cookie для таргетирования продуктов на своих клиентов. Такая информация, как поисковый запрос, ключевые слова и географическое местоположение, собирается для их маркетинговой кампании. Такие сайты как Яндекс и Google используют cookie пользователя для показа релевантных объявлений.

Требования к серверу

Все данные, связанные с файлами cookie, хранятся на жестком диске пользователя без использования ресурсов сервера. Никакая дополнительная нагрузка на сервер не добавляется. Таким образом, на них ложится меньшая нагрузка, что облегчает внедрение файлов cookie.

Недостатки

Риски для безопасности

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

Ограничения по размеру

Для файлов cookie также существуют ограничения по размеру. Они не могут хранить большой объем информации. Большинство файлов cookie способны хранить информацию размером не более 4 кб. Браузеры также устанавливают ограничения, когда речь заходит о количестве файлов cookie. За исключением устаревшего браузера Internet Explorer, все остальные браузеры разрешают хранить до 176 файлов cookie для одного веб-сайта.

Проблемы конфиденциальности

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

Ручное отключение

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

Кодирование информации

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

Примечание