Что такое WebGL-отпечаток? Как данные видеокарты становятся частью отпечатка браузера
Сайты получают данные видеокарты двумя путями: один спрашивает параметры, другой смотрит на изображение. Открыв страницу проверки отпечатков, многие впервые видят в строке WebGL Renderer модель своей видеокарты, и первая реакция: откуда сайт знает, какая у меня карта? Читает он не серийный номер железа, а характеристики графической среды, которые выдает браузер. Часть таких характеристик составляют параметры, которые интерфейс сообщает напрямую, а другую часть составляют результаты, считанные после того, как карта что-то нарисовала. По отдельности каждый пункт личность не определяет, но вместе они складываются в узнаваемый пазл.
WebGL представляет собой графический интерфейс, предоставляемый браузером. Трехмерные модели, карты и графики на веб-страницах обращаются через него к видеокарте за рендерингом. Тот же интерфейс отдает наружу и часть графической среды. MostMate представляет собой антидетект-браузер, который готовит отдельную браузерную среду для каждого аккаунта. Данные видеокарты и графические параметры входят в число сигналов среды, которыми он управляет.
Два типа информации: запрашиваемые параметры и нарисованные изображения
Информация для WebGL-отпечатка делится на два типа, и способы ее сбора совершенно разные. Первый тип запрашивают: страница обращается к интерфейсу и получает ответы: производителя GPU, модель рендерера, поддерживаемые версии. Второй тип рисуют: страница просит видеокарту отрендерить фиксированное содержимое, а затем считывает результат. У разных устройств вывод слегка различается. Вместе эти два типа складываются в портрет графической среды глазами сайта.

Начнём с запрашиваемой части. Поля на странице проверки такие:
| Поле | Содержимое | Типичное значение |
|---|---|---|
| Vendor | Производитель GPU | Google Inc. (NVIDIA) |
| Renderer | Модель рендерера | ANGLE (NVIDIA, GeForce RTX 3060) |
| WebGL Version | Версия интерфейса | WebGL 2.0 |
| Extensions | Список расширений | набор имен расширений |
В списке есть детали, на которые стоит обратить внимание. В поле Vendor многие браузеры единообразно показывают Google Inc., а реальный производитель спрятан в скобках. Значение Renderer зависит от реализации конкретного браузера: у двух машин с видеокартой NVIDIA строки могут прийти в разном формате. Различия в списке расширений заметнее. Какие расширения поддерживаются и в каком порядке идут, тоже дают дополнительную информацию.
Точка входа для чтения этих параметров называется расширением WEBGL_debug_renderer_info. Оно открывает две константы: немаскированную строку производителя и строку рендерера. В документации MDN указано, что это расширение изначально предназначалось для отладки и меняется в зависимости от настроек приватности браузера. Firefox при включенном переключателе resistFingerprinting просто его отключает. Иными словами, одна и та же видеокарта в разных браузерах и при разных настройках приватности может сообщать разное. При проверке учитывайте эту переменную.
Почему видеокарта становится характеристикой среды
Различительная сила параметров рождается в комбинации, а не в отдельном поле. Рынок видеокарт сильно сконцентрирован. NVIDIA, AMD, Apple и Intel вместе покрывают подавляющее большинство устройств, и одно поле Renderer никого не идентифицирует. Но в сочетании с другими сигналами различительная сила может вырасти. Например, у устройства на Windows с браузером Chrome графическая среда, которую раскрывает WebGL, обычно соответствует конфигурации системы и браузера; если данные браузера указывают на Windows, а графическая среда выглядит как у устройств с macOS, это повод присмотреться внимательнее. Если и другие параметры, скажем часовой пояс, не совпадают с ожидаемой средой, во всей конфигурации могут появиться противоречащие друг другу сигналы.

Суть не в том, чтобы менять каждый параметр на случайный, а в том, чтобы проверять, согласованы ли сигналы среды между собой. Хаотичное изменение отдельного параметра не обязательно делает среду более правдоподобной. О проблемах, к которым может привести рандомизация отпечатков, можно почитать в статье почему рандомизация отпечатков небезопасна.
Теперь о рисуемой части. Идея в том, чтобы заставить карту отрендерить фиксированное изображение и считать вывод; этот подход родственен Canvas-отпечатку, а механизм различий 2D-отрисовки разобран в статье про Canvas-отпечаток. WebGL идет по 3D-конвейеру, и рендеринг проходит через драйвер видеокарты и низкоуровневые графические библиотеки. Другая GPU, другая версия драйвера, другая реализация браузера могут изменить вывод на несколько пикселей. Глазу эти различия не видны, а скрипт считывает их точно.
Два уточнения. Во-первых, различительная сила различий картинки не так велика, как о ней говорят. Между устройствами с одинаковой видеокартой и одинаковой версией драйвера разницы может не быть вовсе. Во-вторых, изображение и параметры собираются двумя разными способами, и результаты проверок нужно читать по отдельности.
Чем отличаются WebGL, Canvas и WebGPU
Три названия ходят рядом, но смотрят на разное. Сведём в таблицу:
| Параметр | Объект наблюдения | Способ сбора |
|---|---|---|
| Canvas | Результат 2D-отрисовки | рисует и читает отличия |
| WebGL | Параметры графики и 3D-картинка | спрашивает параметры и рисует |
| WebGPU | Сигналы нового графического интерфейса | спрашивает параметры и пробует вычисления |
| AudioContext | Выход аудиообработки | обрабатывает алгоритмом и читает результат |
Отношения WebGPU и WebGL объясняются одной фразой. WebGPU представляет собой графический интерфейс следующего поколения, который браузеры сейчас активно продвигают: возможностей больше, набор параметров шире; в статье про WebGPU-отпечаток разобрано, какие признаки устройства он раскрывает. WebGL же остается действующим интерфейсом с самым широким охватом: его поддерживают практически все браузеры. Оба интерфейса долго сосуществуют, на страницах проверки появляются рядом, и при разборе нужно смотреть на оба.
Как проверить свой WebGL-отпечаток
Суть проверки в записи и сравнении, а не в беглом взгляде. Три шага:
- Откройте страницу проверки IP через среду или инструмент вроде BrowserLeaks и найдите блок WebGL. Запишите четыре пункта: Vendor, Renderer, WebGL Version и число расширений.
- Через некоторое время повторите замер в той же среде и сравните два результата. Если параметры сменились с реальной видеокарты на программный рендеринг вроде SwiftShader или число расширений заметно поменялось, значит, среда изменилась.
- Проверьте результат WebGL в контексте всей конфигурации среды. Если WebGL сообщает Windows и NVIDIA, то UA и операционная система тоже должны быть Windows, а часовой пояс, язык и регион выхода должны соответствовать друг другу. Среда, где каждый пункт по отдельности в норме, но комбинация противоречива, все равно бросается в глаза.
Одна подсказка заслуживает отдельного упоминания. Если страница проверки показывает SwiftShader, ANGLE (Google) и подобные признаки программного рендеринга, возможно, у самой среды нет видеокарты. Возможно и то, что браузер перешел на программный рендеринг. На реальных устройствах такие значения встречаются редко; в среде с долгосрочной работой это сигнал, который нужно разбирать.
Как пользоваться параметром WebGL image в MostMate
В «Настройках отпечатков» MostMate параметр WebGL image можно настраивать отдельно. На странице настроек он стоит рядом с графическими параметрами вроде Canvas. При создании или редактировании среды у поля WebGL image два варианта: Real и Noise. Real сохраняет реальные значения; при переключении на Noise вывод переходит в режим шума.
Затем взгляните на соответствующую строку в панели предпросмотра отпечатка справа: значение примет вид с шестизначным кодом. Этот код не совмещается с другими параметрами: он помечает конфигурацию шума, а реально раскрываемый хэш нужно смотреть на странице проверки, открытой через среду.

Какой режим выбрать, зависит от того, кого среда должна изображать. Для сред с долгосрочным ведением аккаунтов советуем Real: параметры настоящей видеокарты и поведение драйвера подделать труднее всего, а стабильной среде менять их не нужно. Когда для однотипных задач нужно несколько сред, Noise дает различающиеся варианты изображения, чтобы среды не показывали одно лицо в графическом измерении. Выбор Noise не означает сброс всех параметров: в панели предпросмотра отпечатка значение каждого пункта лежит на виду, и конфигурацию видно с первого взгляда.
Границы тоже нужно обозначить. Управление параметрами снижает риск смешения и противоречий между средами. Помимо WebGL, сигналы вроде разрешения экрана и шрифтов независимы; чек-лист по выравниванию каждого пункта есть в статье про согласованность для защиты от связывания. Как бы аккуратно ни была собрана среда, как ее оценит платформа, решает сама платформа, и эта статья не дает никаких обещаний в духе «настроил и не найдешь».
Частые вопросы о WebGL-отпечатке
Видят ли сайты реальную модель моей видеокарты?
Видят строку модели в поле Renderer, если браузер не ограничил расширение WEBGL_debug_renderer_info. Но это описательная информация о графической среде, которую выдает браузер, а не чтение личности железа. В Firefox и других браузерах при включенной защите приватности такие данные скрываются или обобщаются.
Можно ли избежать распознавания отпечатка, отключив WebGL?
Не рекомендуется. Современные страницы сильно зависят от WebGL при рендеринге, и его отключение ломает функциональность. К тому же все массовые браузеры поддерживают WebGL, поэтому браузер без этой поддержки сам по себе аномальный сигнал, и его скорее выделят в отдельную категорию.
WebGL-отпечаток и Canvas-отпечаток: это одно и то же?
Нет. Оба используют различия рендеринга, но Canvas работает с 2D-отрисовкой, а WebGL идет по 3D-конвейеру и добавляет слой параметров возможностей. На странице проверки это два отдельных блока, и значения одного не представляют другой.
Может ли антидетект-браузер превратить WebGL в любую видеокарту?
Зависит от реализации продукта. MostMate предлагает два режима, реальный и шумовой, где шумовой режим дает различающийся вывод изображения. Главное всегда в том, чтобы параметры всей среды были согласованы между собой, а не в том, чтобы выставить отдельному полю произвольное значение.
Заключение
Суть WebGL-отпечатка в том, что браузер отдает сайту параметры и поведение рендеринга графической среды: параметры отвечают на вопрос «какая у тебя карта», изображение отвечает на вопрос «как выглядит то, что ты рисуешь». Мультиаккаунтинг никогда не сводится к задаче спрятать видеокарту. Ключ в том, чтобы графические параметры каждой среды рассказывали ту же историю, что UA, часовой пояс и регион выхода.
MostMate собирает параметры вроде WebGL image в единую конфигурацию среды, так что проверки и выравнивание проходят проще. Создание среды является лишь началом; привычка регулярно перепроверять и есть долгосрочная переменная. О способах работы с остальными графическими параметрами полный набор входов есть на главной странице; чтобы собрать для нескольких аккаунтов набор сред с четкими границами, скачайте MostMate и начните с первой среды.
MOSTMATE
Безопасное управление аккаунтами — это просто
Начните с первого аккаунта и выстройте с MostMate более безопасную, умную и эффективную работу с несколькими аккаунтами.
- Независимые профили. Согласованные цифровые идентичности.
- ИИ-автоматизация · Состояние аккаунтов · Командная работа



