WebGL vs. Canvas: как согласованность графических API формирует доверие системы

BadB

Professional
Messages
2,296
Reaction score
2,305
Points
113
Почему несоответствие между WebGL renderer и Canvas noise вызывает мгновенный флаг

Введение: Иллюзия независимости​

Многие кардеры считают, что Canvas и WebGL — это отдельные, независимые компоненты fingerprint’а. Они настраивают Canvas noise на 65%, выбирают WebGL renderer «Intel», и думают: «Теперь я выгляжу как реальный пользователь».

Но на самом деле Canvas и WebGL — это два окна в одну и ту же графическую систему. И если они не согласованы, фрод-движки (Forter, Sift, Cloudflare) мгновенно помечают вас как поддельный профиль.

В этой статье мы разберём, почему согласованность между этими API критична, как она формируется на уровне ОС и GPU, и как настроить её правильно.

Часть 1: Как Canvas и WebGL связаны на техническом уровне​

🖥️ Общая графическая подсистема​

Когда браузер рендерит страницу, он использует единую графическую подсистему:
  • Canvas 2D — использует CPU + базовый GPU для рендеринга текста/изображений,
  • WebGL — использует GPU напрямую через OpenGL/DirectX.

Оба API зависят от:
  • Видеодрайвера,
  • GPU-чипа,
  • Цветового профиля монитора,
  • Операционной системы.

💡 Ключевой инсайт:
Canvas и WebGL — это не два разных устройства. Это два интерфейса одного и того же «мозга» вашей графики.

Часть 2: Почему несоответствие вызывает флаг​

🔍 Пример аномалии​

ПараметрВаша настройкаРеальный пользователь
WebGL RendererANGLE (Intel, D3D11)ANGLE (Intel, D3D11)
Canvas Noise100%65%
Fonts200 custom fonts25 system fonts

Проблема:
Intel GPU с драйвером D3D11 никогда не производит 100% Canvas noise. Его шум ограничен аппаратными и драйверными особенностями.

💀 Результат:
Фрод-движок видит: «Этот профиль утверждает, что у него Intel GPU, но его Canvas ведёт себя как NVIDIA RTX 4090»мгновенный high-risk score.

Часть 3: Как формируется «правильная» пара Canvas/WebGL​

📊 Таблица согласованности (2026)​

GPUWebGL RendererМакс. Canvas NoiseТипичные шрифты
Intel UHD 620ANGLE (Intel, D3D11 vs_5_0 ps_5_0)60–70%20–30 system
NVIDIA GTX 1650ANGLE (NVIDIA, D3D11 vs_5_0 ps_5_0)70–80%25–35 system
AMD Radeon RX 6600ANGLE (AMD, D3D11 vs_5_0 ps_5_0)75–85%30–40 system
Apple M1Apple GPU50–60%50+ system

💡 Правило:
Canvas noise должен соответствовать возможностям GPU, указанного в WebGL.

Часть 4: Как настроить согласованность в Dolphin Anty / Linken Sphere​

🔧 Пошаговая настройка для Intel UHD 620 (самый безопасный выбор)​

Шаг 1: Выберите GPU
  • WebGL Unmasked Renderer:
    ANGLE (Intel, D3D11 vs_5_0 ps_5_0)
  • WebGL Vendor:
    Google Inc.

Шаг 2: Настройте Canvas
  • Canvas Noise: 65% (не больше!),
  • Canvas Text Rendering: Subpixel AA (как у Windows 10).

Шаг 3: Установите шрифты
  • Только системные шрифты:
    Arial, Times New Roman, Calibri, Courier New, Verdana, Tahoma (25 шт.).

Шаг 4: Проверьте цветовой профиль
  • Color Depth: 24-bit,
  • Color Profile: sRGB (не Adobe RGB!).

✅ Итог:
Профиль будет выглядеть как реальный пользователь ноутбука с Intel GPU — 70% рынка.

Часть 5: Как проверить согласованность​

🔍 Тест на AmIUnique.org​

  1. Откройте профиль,
  2. Перейдите на https://amiunique.org,
  3. Проверьте:
    • WebGL Renderer = ANGLE (Intel, D3D11...),
    • Canvas Entropy = 10–14 bits (1 in 1,000 – 16,000),
    • Font List = 20–30 шрифтов.

🔍 Тест на BrowserLeaks.com​

  1. https://browserleaks.com/webgl,
  2. https://browserleaks.com/canvas,
  3. Убедитесь, что:
    • WebGL показывает Intel,
    • Canvas noise не превышает 70%.

⚠️ Если Canvas noise >80% при Intel GPU — вас уже выдали.

Часть 6: Почему большинство кардеров терпят неудачу​

❌ Распространённые ошибки​

ОшибкаПоследствие
Canvas noise = 100%Выглядит как NVIDIA/AMD на Intel GPU → аномалия
WebGL = Intel, Fonts = 200Реальные пользователи Intel не устанавливают 200 шрифтов
WebGL = Apple, OS = WindowsНевозможная комбинация → мгновенный бан

💀 Полевые данные (2026):
85% провалов связаны с несогласованностью между WebGL и Canvas.

Заключение: Согласованность — основа доверия​

Фрод-движки не ищут «идеальный» профиль. Они ищут внутреннюю логичность.
Если ваш WebGL говорит «Intel», а Canvas кричит «NVIDIA» — система знает: это подделка.

💬 Финальная мысль:
Настоящая маскировка — не в максимальном шуме, а в идеальной согласованности.
Потому что реальные пользователи — не идеальны. Но они логичны.

Оставайтесь точными. Оставайтесь последовательными.
И помните: в мире фингерпринтинга, детали — это всё.
 
Top