Фингерпринт экрана считывает разрешение дисплея, плотность пикселей и глубину цвета через встроенные API браузера для создания стабильного идентификатора, сохраняющегося между сессиями, в приватных окнах и при использовании VPN. Посмотрите, что именно раскрывает ваш экран прямо сейчас на whatsmy.fyi.
TL;DR
Фингерпринт экрана сочетает значения из window.screen и window.devicePixelRatio — разрешение дисплея, доступная область просмотра, глубина цвета и соотношение плотности пикселей — для создания постоянного идентификатора устройства. Сам по себе вносит 3–5 бит энтропии; в сочетании с другими сигналами становится надёжным межсессионным трекером.
Что такое фингерпринт экрана?
Фингерпринт экрана — пассивная техника отслеживания в браузере, собирающая характеристики дисплея, раскрываемые через Screen API и свойство window.devicePixelRatio. В отличие от canvas или WebGL fingerprinting, фингерпринт экрана не требует рендеринга — значения доступны синхронно, без каких-либо вычислений, в момент загрузки страницы. Это делает его одним из наиболее доступных и наименее затратных векторов fingerprinting.
Фингерпринт экрана — ключевой сигнал в более широком семействе техник отпечатков браузера. Он обычно сочетается с данными GPU из WebGL fingerprinting и различиями рендеринга из canvas fingerprinting.
Как работает фингерпринт экрана?
Каждый браузер раскрывает набор свойств только для чтения, описывающих физический дисплей и соотношение между CSS-пикселями и физическими пикселями.
Ключевые свойства
screen.width / screen.height — Полные пиксельные размеры физического дисплея в CSS-пикселях. Монитор 1920×1080 при 100% масштабировании сообщает 1920 × 1080. Тот же монитор при 125% масштабировании Windows сообщает 1536 × 864, немедленно раскрывая настройку масштаба ОС.
window.devicePixelRatio — Соотношение физических пикселей дисплея к CSS-пикселям. Стандартный монитор 1080p имеет соотношение 1. Дисплей Retina MacBook Pro — 2. Современный флагманский Android при 3× масштабировании — 3. Это единственное значение надёжно отличает HiDPI-устройства от стандартных дисплеев.
screen.colorDepth / screen.pixelDepth — Количество бит для представления цвета каждого пикселя. На практике это 24практически на каждом современном устройстве, но старые системы и некоторые конфигурации удалённого рабочего стола возвращают 16 или 8.
// Фингерпринт экрана — все значения синхронные, без рендеринга
function getScreenFingerprint() {
const dpr = window.devicePixelRatio;
return {
screenWidth: window.screen.width,
screenHeight: window.screen.height,
availWidth: window.screen.availWidth,
availHeight: window.screen.availHeight,
devicePixelRatio: dpr,
physicalWidth: Math.round(window.screen.width * dpr),
physicalHeight: Math.round(window.screen.height * dpr),
colorDepth: window.screen.colorDepth,
pixelDepth: window.screen.pixelDepth,
innerWidth: window.innerWidth,
innerHeight: window.innerHeight,
orientation: screen.orientation?.type ?? 'unknown',
};
}Насколько уникален фингерпринт экрана?
| Сигнал / Находка | Значение | Источник |
|---|---|---|
| Энтропия только от разрешения экрана | ~3,3 бит | EFF Cover Your Tracks |
| Энтропия с добавлением devicePixelRatio | ~4,8 бит | BrowserLeaks |
| Наиболее распространённое разрешение (1920×1080) | ~24% пользователей | Statcounter GlobalStats, 2025 |
| Пользователи с уникальным профилем экрана | ~18% | Исследование Fingerprint.com |
| Точность комбинированного fingerprint (экран + canvas + WebGL) | >95% | Fingerprint.com Pro |
Кто использует фингерпринт экрана?
Реклама и межсайтовое отслеживание
Данные экрана — стандартный ввод в каждой коммерческой платформе fingerprinting. Поскольку это не требует рендеринга и доступно мгновенно при загрузке страницы, это один из первых собираемых сигналов. Рекламные сети объединяют его с IP-адресом, часовым поясом, языком и платформой.
Обнаружение мошенничества
Платформы безопасности используют фингерпринт экрана для обнаружения входа с нового устройства. Внезапное изменение devicePixelRatio — например, переход с Retina Mac (dpr: 2) на стандартный ПК 1080p (dpr: 1) — является сильным сигналом риска.
Как защититься?
- Tor Browser (наиболее сильная защита): Tor нормализует все значения экрана — сообщает стандартное разрешение независимо от реального дисплея и фиксирует
devicePixelRatioна1. - Firefox с
privacy.resistFingerprinting: Firefox округляет размеры экрана до стандартного значения и ограничиваетdevicePixelRatioзначением1. - Brave Browser (рекомендуется для ежедневного использования): Brave применяет технику Farbling к данным экрана — вводит небольшое уникальное для сессии шумовое значение.
- VPN — полезен, но недостаточен: VPN маскирует IP-адрес, но не влияет на свойства экрана. Проверьте реальный IP на whatsmy.fyi.
Часто задаваемые вопросы
Работает ли фингерпринт экрана в режиме инкогнито?
Да. Режим инкогнито не меняет ваш физический дисплей. screen.width, screen.height и devicePixelRatio идентичны в режиме инкогнито и в обычном окне.
Чем devicePixelRatio отличается на Retina и стандартных дисплеях?
Стандартный монитор 1080p отображает devicePixelRatio равным 1. Дисплеи Apple Retina сообщают 2. Современные флагманские Android — обычно 2,75 или 3. Это единственное значение — один из наиболее надёжных сигналов для различения ноутбуков Apple Silicon от стандартных Windows-ПК.
Связанные статьи
- Что такое отпечаток браузера? Как сайты отслеживают вас без cookies — полное руководство по всем сигналам отпечатков
- Что такое Canvas Fingerprinting? Как сайты отслеживают без cookies — как скрытый рендеринг canvas раскрывает GPU и шрифтовой стек
- Что такое WebGL fingerprinting? Как ваш GPU идентифицирует браузер — как 3D graphics API напрямую раскрывает производителя и модель GPU



