Открыть сервисСервис

Файлы cookie — технология хранения данных в браузере

Файлы cookie (куки, от англ. cookie — «печенье») — небольшие фрагменты данных, которые веб-сайты сохраняют в браузере пользователя для последующего считывания. Технология была предложена в 1994 году программистом Мэком Калманом (Lou Montulli) из компании Netscape и с тех пор стала стандартным механизмом хранения состояния веб-приложений. Cookie используются для аутентификации, сохранения пользовательских настроек, ведения сессий и сбора статистики о поведении посетителей.

Принцип работы

HTTP — протокол без состояния: каждый запрос от браузера к серверу обрабатывается независимо, сервер не помнит предыдущие действия пользователя. Cookie решают эту проблему. Механизм работает следующим образом:

  1. Пользователь запрашивает страницу сайта.
  2. Сервер в ответном HTTP-заголовке передаёт команду Set-Cookie с данными (обычно в формате «ключ=значение»).
  3. Браузер сохраняет эти данные в специальном хранилище и при каждом последующем обращении к сайту автоматически добавляет их в заголовок Cookie.
  4. Сервер считывает cookie и определяет, что запрос приходит от того же пользователя.

Объём одного файла cookie, как правило, не превышает 4 КБ. Хранилище cookie доступно только домену, который их создал, — это правило называется same-origin policy.

Cookie классифицируются по нескольким признакам.

По сроку хранения

  • Сессионные — удаляются автоматически после закрытия браузера. Обычно хранят идентификатор сессии.
  • Постоянные — имеют заданный срок жизни (от нескольких минут до нескольких лет) и сохраняются на диске до истечения этого срока.

По происхождению

  • Собственные (first-party) — создаются доменом, который посещает пользователь.
  • Сторонние (third-party) — создаются доменами, отличными от посещаемого. Чаще всего устанавливаются рекламными и аналитическими системами, встроенными в страницу (баннеры, счётчики). Именно сторонние cookie считаются основным инструментом отслеживания пользователей между сайтами.

По назначению

  • Технические (строго необходимые) — обеспечивают работу сайта: авторизацию, корзину покупок, защиту от подделки запросов (CSRF).
  • Функциональные — сохраняют настройки: язык интерфейса, регион, тему оформления.
  • Аналитические — собирают статистику посещений: просмотренные страницы, время на сайте, источник перехода.
  • Рекламные (таргетинговые) — формируют профиль интересов пользователя и показывают персонализированную рекламу.

Правовое регулирование

В России порядок работы с cookie регулируется Федеральным законом «О персональных данных» № 152-ФЗ. С 1 июля 2021 года вступили в силу поправки, обязывающие операторов получать согласие пользователя на сбор сведений о его местоположении, а также на использование технологий, определяющих местоположение. На практике это привело к массовому появлению на сайтах уведомлений о согласии на использование cookie.

В Евросоюзе деятельность сайтов в отношении cookie регулируется общеевропейским регламентом GDPR и Директивой о электронной конфиденциальности (ePrivacy Directive), которые требуют информированного согласия пользователя на нестрого необходимые cookie. Аналогичные правила действуют в Калифорнии (CCPA) и других юрисдикциях.

Ограничения и альтернативы

С ростом критики в адрес таргетинговых cookie крупные технологические компании начали их поэтапный отказ. Apple в браузере Safari ещё в 2017 году включила режим Intelligent Tracking Prevention, блокирующий сторонние cookie. Google объявил о планах отказа от сторонних cookie в Chrome, однако сроки неоднократно переносились; в 2024 году компания объявила, что полностью отказалась от этой затеи в пользу подхода «Privacy Sandbox».

В качестве альтернатив разрабатываются:

  • LocalStorage и sessionStorage — хранилища в браузере, не передаваемые на сервер автоматически (объём до 5–10 МБ).
  • HTTP-заголовок Authorization — для аутентификации API.
  • Токены JWT — самодостаточные подписанные объекты для передачи данных пользователя.

Безопасность

Cookie могут быть уязвимы. Если сайт не использует флаг Secure, данные передаются по незащищённому HTTP и могут быть перехвачены. Флаг HttpOnly запрещает доступ к cookie через JavaScript, что защищает от кражи сессии при XSS-атаках. Флаг SameSite ограничивает отправку cookie при межсайтовых запросах, снижая риск CSRF.

Применение

Несмотря на критику, cookie остаются основой веб-разработки. Они используются в интернет-магазинах (корзина, оформление заказа), системах электронной почты (поддержание входа), платёжных сервисах (подтверждение операций), локализации сайтов (выбор языка и региона), а также в корпоративных приложениях для управления сессиями.

Источники:

  • RFC 6265 — HTTP State Management Mechanism
  • Федеральный закон № 152-ФЗ «О персональных данных»
  • Montulli L. Http State Management Mechanism. — Netscape Communications, 1994
  • Документация W3C по браузерному хранению данных
Заметили ошибку или не согласны с информацией в статье? Напишите нам support@bfometr.ru