# Этап 3a. ALTCHA Статус: не начат. ## 1. Цель Защита запроса кода входа и форм от ботов без сторонних сервисов ([D-013](../decisions/D-013-captcha.md)). ## 2. Входит 1. ALTCHA ([08-integrations.md](../08-integrations.md), раздел 2): эндпоинт `/svc/altcha/challenge`, ключ подписи в `.env`, одноразовые решения; провайдер изолирован в `core/`. 2. Без видимого виджета: задача решается в фоне, пока человек заполняет форму. Скрипт грузится только на страницах с формами. 3. Запрос кода входа; формы — вместе с их отправкой (3d, 3e). 4. Root: `limit_req` в nginx на вход и формы ([09-infrastructure.md](../09-infrastructure.md), раздел 4). ## 3. Перед стартом Фаза 2 готова. ## 4. Готово, когда Запрос кода без решения или с уже использованным решением отклоняется; в браузере вход работает без видимой капчи.