Все возможности
Проверка

Три слоя защиты, четыре поверхности, ни один бот не победит

Проверка - сердце Caputchin. Ворота работают вместе; поверхности - это то, как ты подключаешь их к своему стеку. Путь по умолчанию: виджет плюс вызов verify из твоего бэкенда. Остальные поверхности здесь на случай, когда умолчание не подходит.

Как идёт проверка.

Посетитель открывает твою страницу. Виджет прогоняет ворота. Подписанный токен переходит к твоему бэкенду. Твой бэкенд просит нас его подтвердить.

  1. ПосетительОткрывает твою страницу
  2. Виджет CaputchinЗагружается на твоей странице
  3. Античит как в играхРаботает в изолированном iframe
  4. Твой бэкендПолучает обёрнутый токен
  5. /siteverifyCaputchin подтверждает токен
Одна и та же форма, развернёшь ли ты виджет, вызовешь API напрямую или используешь размещённую проверку. Обёрнутый токен - единственное, что переходит из браузера посетителя на твой бэкенд.
Матрица угроз
Любой тариф

Каждый слой повышает цену для своей атаки.

Ни один слой в одиночку не должен побеждать каждую атаку. Суть в композиции: к моменту, когда запрос доходит до игры, он уже уплатил пошлину каждых ворот перед собой. Честная карта ниже.

  • Скрипты на curl и fetch
    Голые HTTP-скрипты, бьющие прямо в твой эндпоинт.
    Слои, что отвечают на неё
    • Инструментирование браузера
  • Безголовые браузеры
    Puppeteer, Playwright или Selenium, работающие в фоне.
    Слои, что отвечают на неё
    • Инструментирование браузера
  • Фермы ботов на настоящих браузерах
    Настоящие экземпляры Chrome на арендованных серверах, иногда за рулём люди.
    Слои, что отвечают на неё
    • Proof of work
    • Античит как в играх
  • Решатель как услуга
    Платные фермы решений, которые берут испытание и возвращают ответ, нередко дешёвым человеческим трудом.
    Слои, что отвечают на неё
    • Proof of work
    • Античит как в играх
  • Передовые ИИ-модели
    Модели зрения и агентов, что читают сетки изображений, решают OCR-головоломки и проходят старые CAPTCHA за миллисекунды.
    Слои, что отвечают на неё
    • Античит как в играх
Античит как в играх
Любой тариф

Больше, чем игра. Движок проверки.

Крошечная, разнообразная игра, в которую люди играют за секунды и получают удовольствие. Под капотом работает тот же античит-плейбук, которым соревновательные многопользовательские игры ловят читеров: наши серверы готовят каждый раунд до того, как ты сыграешь (авторитет сервера), и пересимулируют его после (детерминированное переигрывание), так что игру нельзя подделать, можно только сыграть. Это слой, которого нет ни у одной другой CAPTCHA, и причина, по которой Caputchin существует.

Прежде чем ты сыграешь

Авторитетная настройка на сервере

  • Подписанный одноразовый билет (окно 30 минут) чеканит раунд. Потрать его раз, и переиграть его уже нельзя.
  • Игра и её случайный сид выбираются на наших серверах, никогда в браузере, так что ничто на стороне клиента не может выбрать цель полегче.
  • Каждый раз другая игра из пула. Решатель никогда не знает, какая ему достанется, поэтому не может натренироваться заранее.

Та же модель, что у соревновательного игрового сервера: клиент шлёт только ввод, никогда вердикт.

После того как ты сыграл

Детерминированное переигрывание

  • Твой точный ввод переигрывается на наших серверах под тем же сидом, внутри запечатанного изолята без сети и с жёстким бюджетом времени.
  • Прошёл или нет пересчитывается этим переигрыванием, никогда не берётся из браузера.
  • Код каждой игры проверяется по хешу перед запуском, так что артефакт нельзя подменить у тебя под носом.

Построено на том же детерминизме, на который опирается синхронный (lockstep) мультиплеер: раунд пересимулируется из сида, чтобы подтвердить, что в него и правда сыграли.

В песочнице на твоей странице

Изолированный iframe без сети и без доступа к твоим cookie, хранилищу или DOM.

Разнообразие игр

Разные сайты получают разные игры, и каталог всё растёт.

Запечатанное переигрывание

Переигрывание идёт без сети и с жёстким бюджетом CPU. Ничто не входит и не выходит.

Код, защищённый от подмены

Каждый игровой артефакт проверяется по хешу прежде, чем отрисуется хоть один кадр.

Без профилирования

Мы не следим за твоей мышью или таймингом. Вместо этого мы переигрываем раунд.

Ещё двое ворот, сложенных рядом

Игровой античит никогда не работает в одиночку. Ворота proof of work и инструментирование браузера идут вместе с ним, каждое повышает цену для своего шаблона атаки. Сложенные последовательно, каждый слой, до которого добрался атакующий, уже уплатил пошлину.

Любой тариф

Proof of work

Каждая попытка проверки заставляет браузер посетителя решить маленькую криптографическую головоломку. Человек ждёт пару сотен миллисекунд и ничего не замечает. Ферма ботов, платящая за вычисления в масштабе, чувствует каждый такт.

Где пригодится

Формы регистрации, по которым бьёт автоматизированное создание аккаунтов. Каждый фейковый аккаунт стоит атакующему измеримых вычислений, и массовое злоупотребление становится слишком дорогим, чтобы его стоило затевать.

Любой тариф

Инструментирование браузера

Виджет читает сигналы окружения, которые выдаёт браузер посетителя. У настоящих браузеров они есть всегда. Безголовые инструменты и скрипты обычно подделывают их плохо или вовсе никак. Переключатель на каждый сайт, блокировка автоматизированных браузеров, наотрез отклоняет всё, что инструментирование помечает как безголовое или управляемое драйвером (Playwright, Selenium, Puppeteer). Это opt-in, так что оставь выключенным, если ждёшь легитимную автоматизацию.

Где пригодится

Формы комментариев и страницы контактов, по которым бьют скрипты Playwright или Selenium. С включённой блокировкой автоматизированных браузеров скрипт отсеивается у двери, а не получает испытание на решение.

Поверхности интеграции

Четыре способа поставить проверку перед посетителем. Выбери тот, что подходит форме твоего кода, стека или команды.

Любой тариф

Готовый веб-компонент

Один HTML-тег монтирует виджет. Он прогоняет ворота и отдаёт тебе токен, когда посетитель проходит. Работает в React, Vue, Svelte, Angular или чистом HTML, потому что веб-компоненты нативны для браузера и не нуждаются в обёртке фреймворка.

Где пригодится

Путь по умолчанию. Добавь защиту от ботов на форму регистрации за минуты, не подбирая новую зависимость.

Любой тариф

Runtime API

У API проверки две части. Вызов verify, который твой бэкенд использует в каждой интеграции, чтобы подтвердить, что токен настоящий. И низкоуровневые эндпоинты испытания, чтобы вести проверку самому, для редких случаев, когда виджет не подходит. Отличается от REST API управления, который твоя команда использует для изменений аккаунта и конфигурации.

Где пригодится

Вызов verify: каждый бэкенд, всегда. Прямой API: чаты, пейволлы, многошаговые формы, вплетённые в твой UI, везде, где элемент виджета не может отрисоваться.

Alpha tier

Размещённая проверка

Направь action своей формы на нас. Мы проверяем посетителя, затем пересылаем отправки в твой почтовый ящик или на твой эндпоинт. На твоей стороне ноль кода бэкенда, вообще.

Где пригодится

Статические сайты и no-code конструкторы, у которых нет бэкенда, чтобы проверять токены самим. Запусти форму контактов с защитой от ботов за время, нужное, чтобы заменить атрибут action.

Любой тариф

Встраивание в мобильный WebView

Специально сделанная страница встраивания для нативных приложений iOS и Android, которые отрисовывают испытание внутри своего WebView. Тот же виджет, меньший след, никакого нативного SDK для установки.

Где пригодится

Мобильные приложения, которым нужна проверка без поставки фреймворк-специфичных SDK и без пересборки потока CAPTCHA нативно под каждую платформу.

Запусти проверку на одном ключе сайта. Бесплатно.

Зарегистрируйся, выпусти ключ сайта, помести виджет на одну форму. Перейди выше позже, когда понадобится возможность с более высокого тарифа.

Начать бесплатно