Воспроизводимость seed шума: детерминированные отпечатки с BotBrowser
Как флаг --bot-noise-seed в BotBrowser создает согласованные, воспроизводимые отпечатки Canvas, WebGL и Audio между сессиями.
Проблема случайного шума
Инструменты конфиденциальности, добавляющие случайный шум к выходным данным Canvas, WebGL и Audio, создают новый отпечаток каждую сессию. Это нарушает согласованность сессий, так как меняющийся отпечаток может выглядеть подозрительнее стабильного.
Детерминированный шум с --bot-noise-seed
BotBrowser решает это флагом --bot-noise-seed. Он использует фиксированный seed для детерминированного генератора случайных чисел. Один и тот же seed всегда дает одинаковый отпечаток.
chrome --bot-profile="/path/to/profile.enc" \
--bot-noise-seed=98765 \
--user-data-dir="$(mktemp -d)"
С этой конфигурацией:
- Canvas рендеринг возвращает одни и те же пиксельные данные каждую сессию
- Выход WebGL остается идентичным между перезапусками
- Обработка Audio производит одинаковую форму волны каждый раз
- Хеш отпечатка остается стабильным день за днем
Сочетание с профилями
Seed шума работает вместе с --bot-profile. Профиль определяет аппаратные характеристики, а seed контролирует вариации рендеринга.
# Сессия 1: Понедельник
chrome --bot-profile="/profiles/windows-chrome-122.enc" \
--bot-noise-seed=42 \
--user-data-dir="/data/session-a"
# Сессия 2: Среда (та же идентичность)
chrome --bot-profile="/profiles/windows-chrome-122.enc" \
--bot-noise-seed=42 \
--user-data-dir="/data/session-a"
Обе сессии дают идентичные отпечатки.
Контроль шума Canvas
Переключайте шум Canvas независимо с --bot-config-noise-canvas:
chrome --bot-profile="/path/to/profile.enc" \
--bot-noise-seed=42 \
--bot-config-noise-canvas=true
Мультиаккаунтное использование
Назначайте разные seed для каждого аккаунта для уникальных, стабильных идентичностей:
# Аккаунт A
chrome --bot-profile="/profiles/profile-a.enc" \
--bot-noise-seed=1001 \
--user-data-dir="/data/account-a"
# Аккаунт B
chrome --bot-profile="/profiles/profile-b.enc" \
--bot-noise-seed=2002 \
--user-data-dir="/data/account-b"
Проверка
- Запустите BotBrowser с профилем и seed шума
- Посетите CreepJS и запишите хеши Canvas, WebGL и Audio
- Закройте и перезапустите с тем же профилем и seed
- Убедитесь, что хеши совпадают точно
Начало работы
- Скачайте BotBrowser с GitHub
- Выберите профиль из репозитория профилей
- Добавьте
--bot-noise-seedс фиксированным целочисленным значением - Проверьте согласованность между сессиями инструментами тестирования