JA4 — современный сетевой фингерпринт, который идентифицирует ПО за соединением, независимо от User-Agent, который любой может подделать. Это основа надёжной детекции ботов и AI-агентов. Вот что это такое и почему работает.
Семейство JA4+
- JA4 — фингерпринт TLS ClientHello (наборы шифров, расширения, ALPN, версия).
- JA4H — фингерпринт HTTP-заголовков (порядок, регистр, значения).
- JA4T — фингерпринт TCP (размер окна, опции, MSS).
- JA4L — подсказка о задержке/дистанции по времени кругового обхода.
- QUIC JA4 — та же идея для соединений HTTP/3.
Почему он лучше User-Agent
User-Agent — самозаявленная строка, подделать тривиально. JA4 вычисляется из того, как клиент реально строит рукопожатие TLS/HTTP/TCP, что определяется его настоящим программным стеком. Запрос может утверждать, что он Chrome, тогда как его JA4 говорит «Go HTTP client» — противоречие, которое трудно подделать, потому что оно живёт ниже прикладного уровня.
JA4 против JA3
JA3 хешировал упорядоченный список полей в один непрозрачный MD5, что делало его хрупким (GREASE и порядок вызывали шум). JA4 человекочитаем, учитывает GREASE, сортирует нестабильные поля и разбивается на осмысленные части — стабильнее и информативнее. См. глубокий разбор JA4.
Использование JA4 для детекции
- Сопоставляйте JA4 с известными стеками браузеров против автоматизации.
- Перекрёстно проверяйте JA4 против заявленного User-Agent/Client Hints на противоречия.
- Коррелируйте стабильный JA4 по множеству IP, чтобы ловить ротацию прокси.
- Репутация: оценивайте по исторической доле бот-трафика каждого JA4.
detectip.ai вычисляет весь набор JA4+ и сводит его в объяснимый вердикт — см. живое демо.
FAQ
Можно ли подделать JA4? Гораздо труднее, чем User-Agent; подделка точного стека браузера по TLS/HTTP/TCP нетривиальна и сама по себе обнаружима.
Достаточно ли одного JA4? Он силён, но лучше всего в сочетании с IP- и поведенческими сигналами. Начните бесплатно с ключом.