> For the complete documentation index, see [llms.txt](https://docs.mobguards.com/ru/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.mobguards.com/ru/master.md).

# Что такое BotProtection?

**BotProtection** - это эффективное решение SDK & Backend для защиты вашей компании от вредоносных атак ботов.

**BotProtection** состоит из двух частей: BotProtection SDK (клиент) и BotProtection machine (сервер). Также присутствует Dashboard для визуализации и статистики.

* BotProtection SDK - это модуль, который включается в платформу
* BotProtection Machine - это сервер, который поднимается в инфраструктуре компании
* BotProtection Dashboard - это веб-страница для мониторинга запросов

BotProtection Machine получает анонимные поведенческие данные с мобильных устройств, а затем анализирует их, чтобы получить результат.

* Если результат меньше 50, то клиент считается человеком.
* Если результат больше 50, то клиент считается ботом.
* Если результат NA, то девайс, с которого собираются данные, неактивен.

При этом коэффициент может варьироваться в зависимости от потребностей компании.

Также BotProtection также при необходимости может регулярно отправлять события в аналитические системы с помощью [отправки метрик](/ru/backend-integration/podklyuchenie-metrik.md).

Для получения дополнительной информации об инфраструктуре — раздел [Архитектура](/ru/backend-integration/architecture.md).

## Взаимодействие с Backend компании

BotProtection работает в двух режимах:

* Активный режим (отсеивание ботов в реальном режиме)
* Пассивный режим (агрегирование статистики и мониторинг)

### Пассивный режим

BotProtection SDK внедряется в платформу и собирает данные о поведении пользователя каждый установленный интервал времени.

### Активный режим

BotProtection SDK внедряется на клиенте и запускается на определенной части вашего приложения. Например, сканирование страницы регистрации.

Когда пользователь или бот входит в защищенную часть приложения, BotProtection SDK запускается и собирает поведенческие данные, отправляя их на BotProtection Machine. Затем, если это злонамеренный пользователь, у компании появляется несколько возможностей блокировки пользователя - синхронный или асинхронный.

#### Синхронный метод проверки

Клиенту отправляется зашифрованное решение BotProtection (бот или не бот), а затем приложение пересылает его на бэкенд-сервер компании в виде JWT-токена.

Чтобы увидеть точную структуру JWT и расшифровать ее, необходимо ознакомится с разделом [Работа с JWT](/ru/backend-integration/jwt-token.md).

#### Асинхронный метод проверки

Если компании не нужны проверки в реальном времени, можно запросить решения BotProtection только для определенных UUID (уникальный идентификатор пользователя).

В этой схеме сервер отправляет POST-запрос на компьютер BotProtection. Дополнительная информация об этом API приведена в разделе [Описание асинхронного API](/ru/backend-integration/api-description.md).
