Сторонний cookie наконец по-настоящему умирает. Safari прикончил его годы назад, Firefox последовал за ним, а Chrome его поэтапно отключил. Бо́льшая часть публикаций подала это как победу приватности — и это так. Но заодно это тихо сломало массу легитимной механики, которая работала на cookie, хотя никто над этим особо не задумывался: обнаружение фрода, фильтрацию ботов, непрерывность сессии, базовую аналитику вида «тот же ли это посетитель».

Первым порывом отрасли было найти новую штуку, которую можно хранить на устройстве пользователя, и назвать её заменой. Это неверный урок. Проблема cookie никогда не была в механизме хранения; она была в самой посылке, что человека опознают, поставив на него метку и считав её позже. Tracio исходит из совершенно иной посылки: можно понимать, кто пользуется продуктом, вообще ничего не храня на его устройстве.

Что cookie на самом деле делали

Чтобы что-то заменить, нужно честно признать, что оно делало. Cookie тихо несли как минимум четыре разные роли:

  • Обнаружение фрода и злоупотреблений — тот ли это актор, что только что пробовал пять краденых карт?
  • Фильтрация ботов — есть ли здесь вообще человек, или это headless-браузер, гоняющий скрипт?
  • Непрерывность сессии — тот ли это человек, что добавил товар в корзину два клика назад?
  • Аналитика — сколько уникальных посетителей, вернувшихся против новых?

Когда cookie исчезли, все четыре сломались разом, а большинство «безкуковых» решений закрывают лишь аналитику. Сложные задачи — фрод и боты — как раз те, что важнее всего, потому что на другой стороне есть противник, активно пытающийся вас переиграть.

Идентичность из поведения, а не из хранилища

Tracio строит свой сигнал из того, как ведёт себя сессия и на каком устройстве она работает, а не из чего-либо, что она оставляет после себя. Его питают два больших класса сигналов.

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

Второй — характеристики устройства и окружения: конфигурация, которую раскрывает браузер, собранная в профиль. Сама по себе она слаба и общая для многих пользователей, но в сочетании с поведением заметно обостряется.

Критическое проектное решение — в том, чего Tracio намеренно *не* делает. Он не строит профиль, следующий за человеком с сайта на сайт. Нет межсайтового графа идентичности, нет общего ID, продаваемого рекламным сетям. Сигнал живёт внутри контекста одного конкретного бизнеса и отвечает на его собственные вопросы — рискованна ли эта сессия, бот ли это, тот ли это вернувшийся пользователь, за которого себя выдаёт, — и не более того. Именно это делает продукт уважающим приватность по своей конструкции, а не по пресс-релизу. Он соответствует GDPR и CCPA из коробки именно потому, что нет никакого межсайтового отслеживания, которое пришлось бы согласовывать.

Боты — вот настоящее испытание

Аналитика прощает ошибки; фрод — нет. Место, где безкуковый подход обязан себя доказать, — это противостояние с противником, и самая острая версия этого противника — изощрённый бот: headless-браузер или фреймворк автоматизации, построенный специально так, чтобы выглядеть человеком.

Вот где поведение бьёт фингерпринтинг. Бот может подделать user agent, сымитировать разрешение экрана и хоть весь день менять IP-адреса. Что ему тяжело подделать — так это текстуру человеческого взаимодействия: слегка неровные интервалы, несовершенные траектории мыши, заминку перед кликом. Системы на правилах смотрят на то, чем сессия себя *называет*, и их легко обмануть. Tracio же оценивает, что сессия реально *делает*, а эти признаки подделать куда труднее. Именно это поведенческое преимущество доводит точность обнаружения ботов до 99,2% на трафике, спроектированном так, чтобы сойти за настоящий.

Обнаружение фрода работает так же, только слоем выше. Вместо бинарного «пропустить/заблокировать» каждая сессия получает оценку риска, построенную на поведенческих аномалиях: паттерн взаимодействия, не совпадающий с вернувшимся пользователем, за которого он себя выдаёт; ритм, выглядящий сценарным; несоответствие между устройством и поведением. Эта оценка и есть сигнал, по которому действует команда по борьбе с фродом, и она ловит аккаунты, проходящие любую проверку на правилах, — потому что на бумаге с ними всё в порядке.

Как выглядит интеграция

При всей механике под капотом поверхность для разработчика намеренно мала. Tracio поставляет SDK для JavaScript, Python, Node.js и Go, и типичный случай — единственный вызов, возвращающий вместе разрешение идентичности, вердикт по боту и оценку риска.

import { Tracio } from "@tracio/node";

const tracio = new Tracio(process.env.TRACIO_KEY);

const result = await tracio.evaluate({ sessionId, signals });
// {
//   returningUser: true,
//   isBot: false,
//   riskScore: 0.08   // 0 = trusted, 1 = hostile
// }

if (result.isBot || result.riskScore > 0.8) {
  return challenge();
}

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

Строим для мира, который уже наступил

Веб после cookie — уже не прогноз; это среда, в которую вы выкатываетесь сегодня. Команды, воспринимающие это как исключительно историю про приватность, будут удивлены, когда их уровень фрода поползёт вверх, а ботовый трафик станет невидимым. На сигналы, которые несли cookie, по-прежнему нужно отвечать — просто отвечать на них, храня что-то на пользователе, больше нельзя.

Ставка Tracio в том, что поведение — лучший фундамент, чем когда-либо было хранилище: труднее подделать, невозможно украсть с устройства, которое ничего не хранит, и честно в отношении приватности, потому что за пользователем по-настоящему ничего не ходит следом. Это не обходной путь на случай смерти cookie. Это то, что с самого начала и должно было быть ответом.