Куки всегда были лишь лёгким путём
Кука — это записка, которую сайт просит браузер сохранить. В следующий визит браузер отдаёт её обратно, и сайт узнаёт, кто вы.
Это работает, это просто и у этого есть очевидная слабость: записку можно выбросить. Это поняли все, браузеры упростили процедуру, а регуляторы обязали сайты сначала спрашивать разрешение.
Поэтому отрасль перешла к тому, что выбросить нельзя, — к описанию, которое ваш компьютер даёт сам себе. Технически это называется браузерным фингерпринтингом. Идея проще, чем звучит название.
Что ваш браузер автоматически сообщает каждому сайту
Чтобы показать страницу как надо, браузер вынужден сообщить кое-что о машине, на которой работает. Сайт может прочитать всё это, и чтение занимает тысячные доли секунды.
- Размер экрана и то, какую его часть занимает окно браузера
- Какой у вас операционной системой и примерно какой версии
- Какие шрифты установлены — что заодно выдаёт, какая у вас ОС и какой офисный пакет
- Ваш часовой пояс и языковые настройки
- Сколько ядер у процессора и примерно сколько памяти
- Какая внутри видеокарта — по названию
- Есть ли у вас сенсорный экран
Ничто из этого не секрет и ничто не требовало вашего разрешения. Это обычные сведения, нужные странице для вёрстки. Но собранные вместе они описывают вполне конкретный компьютер.
Хитрая часть: нарисовать что-то невидимое
Два измерения идут дальше приведённого списка, и именно они удивляют людей.
Рисование. Сайт просит браузер нарисовать что-нибудь — строку текста, фигуру, градиент — на холсте, которого вы никогда не видите. Затем считывает пиксели. Поскольку каждое сочетание видеокарты, драйвера и операционной системы сглаживает края чуть по-своему, результат у разных машин не совсем одинаков. Два компьютера одной модели обычно совпадают; Mac и ноутбук с Windows — никогда.
Звук. Тот же приём со звуком. Браузер просят сгенерировать тон и обработать его, ни разу не воспроизведя вслух. Вычисления идут в плавающей точке, и крошечные различия в округлении дают слегка разный результат.
Ни то, ни другое не использует вашу камеру или микрофон. Ничего не записывается. Сайт измеряет, как ваша машина выполняет вычисление, и этого достаточно.
Насколько это делает вас уникальным?
Уникальнее, чем ожидает большинство, и причина здесь арифметическая, а не зловещая.
Каждая деталь по отдельности встречается часто. У множества людей экран 1920×1080. Множество живёт в вашем часовом поясе. Множество пользуется Chrome под Windows 11. Но вероятности перемножаются. Когда вы соберёте пятнадцать-двадцать таких деталей, комбинация нередко уникальна среди миллионов.
Исследования, восходящие к проекту Panopticlick от Electronic Frontier Foundation, показали, что один только список установленных шрифтов сужает браузер примерно до одного из пятнадцати тысяч. Добавьте видеокарту и тест с рисованием — и обычно остаётся один.
Свой отпечаток можно посмотреть. amiunique.org и coveryourtracks.eff.org показывают, что читает сайт и насколько редка ваша комбинация. Это занимает секунд тридцать и убеждает лучше, чем эта статья.
Почему это важно, если у вас больше одного аккаунта
Для большинства людей фингерпринтинг — это история про рекламу и защиту от мошенничества. Так за вами по интернету ходят одни и те же ботинки, и так же банк замечает вход с машины, которой раньше не видел.
Практической проблемой это становится в тот момент, когда у вас появляются два аккаунта на одной площадке.
Откройте второй на том же ноутбуке — и каждое измерение из списка выше будет таким же, как у первого. Тот же экран, те же шрифты, та же видеокарта, тот же результат отрисовки. Площадке не нужно гадать, связаны ли аккаунты. С её точки зрения они на одной машине, и это ровно тот шаблон, ради поиска которого её правила и писались.
Так попадаются многие, кто не делал ничего необычного: фрилансер, ведущий страницу клиента рядом со своей; человек с личным и деловым аккаунтом; продавец с двумя магазинами. Намерения тут ни при чём. Машина совпала.
Что действительно помогает, а что нет
По порядку, насколько сильно каждое средство меняет дело.
Не помогает: режим инкогнито. Он удаляет куки при закрытии окна. Все перечисленные выше измерения остаются прежними. Подробнее здесь.
Помогает едва заметно: VPN. Меняет ваш адрес, а не браузер. Полезен по другим причинам, но не по этой.
Помогает немного: браузер с защитой от фингерпринтинга. Brave и Firefox вносят небольшие искажения в тест с рисованием и ограничивают часть измерений. Это усложняет слежку за вами между сайтами. Но двух личностей на одной машине это не даёт: оба ваших аккаунта получают одну и ту же защиту и потому по-прежнему совпадают друг с другом.
Помогает именно с проблемой аккаунтов: отдельный профиль на каждый аккаунт. Каждый профиль сообщает свой экран, свои шрифты, свою видеокарту и свой результат отрисовки. Два аккаунта выглядят как два компьютера, потому что так говорит всё измеримое.
Помогает больше всего и ничего не стоит: вообще не создавать связку. Разная почта, разный номер телефона, разный способ оплаты у каждого аккаунта. Именно этому площадки придают наибольший вес, и никакая программа этого не заменит.
Разумный вывод
Фингерпринтинг никуда не денется. Он слишком полезен тем, кто его применяет, а большинство из них борется с мошенничеством по картам, а не следит за вами.
Если у вас по одному аккаунту на сервис, это неудобство для приватности, и хороший блокировщик рекламы снимает большую часть дискомфорта.
Если вы ведёте несколько аккаунтов на одной площадке — для работы, для клиентов, для дела, которое держите отдельно от своего имени, — то именно этот механизм их и свяжет, и разобраться в нём стоит заранее. Решение не в том, чтобы прятаться, а в том, чтобы перестать выглядеть одной машиной.