- Человеческое поведение статистически не uniform. Живые юзеры — логнормаль, боты — uniform. Это основное различие для anti-spam.
- Три измерения: session entropy (длительности сессий), swipe patterns (траектория прокрутки), pause entropy (задержки между действиями).
- Плюс rotating fingerprint — стабильный per-account, разный между аккаунтами. Моделирует реальную популяцию Telegram users.
- Математика: log-normal для durations, bezier curves + micro-jitter для траекторий, Poisson для discrete events.
- Реализация требует осторожности: одна ошибка (uniform где должно быть log-normal) — и вся модель видна.
Большинство anti-detection решений для Telegram-рассылок останавливаются на «добавь random delays». В 2022 этого было достаточно. Сегодня SpamBot видит распределение задержек и отличает `random.uniform(30, 60)` от живого пользователя за 20-30 попыток.
Чтобы пройти behavioral detection в 2026, нужно не просто «рандомизировать», а корректно моделировать человеческое поведение по распределениям, наблюдаемым в реальной популяции.
Измерение 1: длительности сессий
Сколько минут живой юзер сидит в Telegram за один вход? Зависит от типа действия:
- Короткий чек: 30-90 секунд (проверить, есть ли сообщения)
- Средняя сессия: 5-15 минут (ответить, полистать ленту)
- Длинная сессия: 30-120 минут (активный чат, голосовой)
Распределение не нормальное (как думают многие). Оно логнормальное — симметричное в log-пространстве, но смещённое в линейном:
Ключевое: нельзя использовать нормальное распределение — у живых юзеров есть длинный хвост длинных сессий. Нельзя и uniform — у живых нет чёткой верхней границы.
Проверка: если твои «сессии» все от 2 до 20 минут без редких 2-часовых — это не человек, это скрипт с random.uniform(120, 1200).
Измерение 2: траектория прокрутки
Когда юзер скроллит чат-лист, его палец (или курсор) движется не по прямой. У пальца есть:
- Ускорение в начале (overcome inertia)
- Замедление в конце (precision landing)
- Micro-jitter по X (латеральные случайные движения)
- Easing curve — S-образная, не линейная
Математически — bezier curve с двумя контрольными точками плюс случайный jitter:
В контексте Telegram Desktop / Mobile — это относится к скорости прокрутки чат-листа, к задержкам между ответами в беседе, к «заходит/возвращается» навигации.
Измерение 3: задержки между действиями
Между тем, как юзер открыл диалог и отправил сообщение, обычно проходит 5-30 секунд: прочитать → подумать → напечатать → отправить. Бот: 100-500ms (просто фаза исполнения скрипта).
Распределение этих задержек — ключевой сигнал. Ключевое: паузы зависят от контекста:
| Контекст | Медиана паузы (живой) | Типичный бот |
|---|---|---|
| Response на входящее сообщение | 20-60s | <1s |
| Между своими сообщениями (в одном диалоге) | 30-120s | fixed delay |
| Между разными target'ами в рассылке | 60-600s (логнормаль) | uniform |
| Typing indicator → message sent | 1-4s | 0 или отсутствует |
Критичное наблюдение: между разными контекстами паузы не коррелируют у живых, коррелируют у ботов (один и тот же scheduler).
Измерение 4: разнообразие устройств
Четвёртое измерение — не «temporal», а «categorical». Каждая сессия Telegram имеет метаданные: device_model, app_version, system_version, lang_code.
В реальной популяции 950M+ Telegram users эти значения распределены: ~50% на iPhone, ~40% на Android, ~10% desktop. Внутри iPhone — разные модели (13, 14, 15, SE), разные версии iOS. Такая же диверсификация у Android.
Схема «один и тот же Samsung Galaxy S24 для всех 50 аккаунтов» — явный сигнал фермы. Правильная схема — sampling из реалистичного распределения:
Важно: fingerprint стабилен для аккаунта. Юзер не меняет телефон каждый день. Рандомизация между сессиями — сигнал фермы.
Всё вместе
Behavioral Rotator комбинирует все 4 измерения в единой модели:
- Session entropy — log-normal распределение для длительностей
- Swipe patterns — bezier curves с micro-jitter для траекторий
- Pause entropy — context-aware delays с разными распределениями
- Rotating fingerprint — sampling из реалистичной популяции, стабильное per-account
Все эти модели работают параллельно. Session длится столько-то → сэмпл из log-normal. Внутри сессии действия с такими-то паузами → context-aware. Прокрутка рендерится с bezier-easing. Fingerprint стабильный.
Результат: статистически, поведение аккаунта неотличимо от живого пользователя Telegram на уровне агрегированных сигналов. SpamBot не видит паттерна — не потому что «мы его спрятали», а потому что его нет.
TG:ON для macOS · Windows · Linux
Desktop-приложение, 160 MB. Работает локально, твои ключи остаются у тебя. 3 дня триала без карты.
Скачать бесплатноВсё это уже в TG:ON.
Без кодинга.
Behavioral Rotator — не открытая технология и не «API», а встроенный движок TG:ON. 3 дня триала — прогоняешь на своих аккаунтах и видишь 0 банов.
Начать триал