Глоссарий · Отпечатки пальцев
Отпечатки пальцев
Идентификация устройства по крошечным различиям в том, как оно отображает рисунок холста HTML.
Определение
Отпечатки пальцев на холсте - это метод, при котором страница рисует текст или формы с помощью HTML Canvas API и считывает полученные пиксели. Поскольку рендеринг зависит от графического драйвера, шрифтов и сглаживания, выход может немного отличаться между устройствами, и хэш из него становится одним сигналом отпечатка пальца.
Как работает
- Сценарий создает элемент холста (часто невидимый) и рисует текст, эмодзи, градиенты или формы с контекстом 2D.
- Он считывает результат с помощью таких методов, как toDataURL(), который возвращает изображение в виде URL-адреса данных или getImageData().
- Данные пикселей хешируются. Идентичные установки, как правило, производят идентичные хэши; различные аппаратные средства или стеки шрифтов часто не делают этого.
Почему это важно
- Он не требует оперативного разрешения и работает без файлов cookie, поэтому он широко используется для отслеживания и борьбы с мошенничеством.
- Это один из сигналов, которые браузеры, ориентированные на конфиденциальность, пытаются контролировать, либо делая вывод последовательным, либо добавляя шум.
Ограничения и распространенные заблуждения
- «Один только Канва идентифицирует меня». Это один сигнал; он обычно сочетается с другими, такими как WebGL, шрифты и данные экрана.
- «Добавление случайного шума невидимо». Шум, который изменяется на каждом считывании, можно обнаружить, дважды нарисовав одно и то же изображение и сравнив его.
Пример: Рисунок одного и того же предложения одним и тем же шрифтом на ноутбуке со встроенной графикой и на рабочем столе с дискретным графическим процессором может создавать различия пикселей, невидимые для глаза, но разные при хешировании.
Ни один браузер или прокси-сервер не может гарантировать, что учетные записи не будут ограничены. Следуйте правилам каждой платформы.
Связанные термины:
- Отпечаток браузера - Сочетание характеристик браузера и устройства, которые могут идентифицировать браузер без файлов cookie.
- WebGL отпечатки пальцев - Использование графической информации WebGL и вывод рендеринга для идентификации устройства.
Источник:
- MDN: Canvas API (браузерные документы)
- MDN: HTMLCanvasElement.toDataURL() (браузерные документы)
- W3C: Смягчение отпечатков пальцев браузера в веб-спецификации (стандарт)
Проверено 2026-11-07.