Три слоя защиты, четыре поверхности, ни один бот не победит
Проверка - сердце Caputchin. Ворота работают вместе; поверхности - это то, как ты подключаешь их к своему стеку. Путь по умолчанию: виджет плюс вызов verify из твоего бэкенда. Остальные поверхности здесь на случай, когда умолчание не подходит.
Как идёт проверка.
Посетитель открывает твою страницу. Виджет прогоняет ворота. Подписанный токен переходит к твоему бэкенду. Твой бэкенд просит нас его подтвердить.
- ПосетительОткрывает твою страницу
- Виджет CaputchinЗагружается на твоей странице
- Античит как в играхРаботает в изолированном iframe
- Твой бэкендПолучает обёрнутый токен
- /siteverifyCaputchin подтверждает токен
Каждый слой повышает цену для своей атаки.
Ни один слой в одиночку не должен побеждать каждую атаку. Суть в композиции: к моменту, когда запрос доходит до игры, он уже уплатил пошлину каждых ворот перед собой. Честная карта ниже.
| Шаблон атаки | Proof of work | Инструментирование браузера | Античит как в играх |
|---|---|---|---|
Скрипты на curl и fetchГолые HTTP-скрипты, бьющие прямо в твой эндпоинт. | Отвечает на эту атаку | ||
Безголовые браузерыPuppeteer, Playwright или Selenium, работающие в фоне. | Отвечает на эту атаку | ||
Фермы ботов на настоящих браузерахНастоящие экземпляры Chrome на арендованных серверах, иногда за рулём люди. | Отвечает на эту атаку | Отвечает на эту атаку | |
Решатель как услугаПлатные фермы решений, которые берут испытание и возвращают ответ, нередко дешёвым человеческим трудом. | Отвечает на эту атаку | Отвечает на эту атаку | |
Передовые ИИ-моделиМодели зрения и агентов, что читают сетки изображений, решают OCR-головоломки и проходят старые CAPTCHA за миллисекунды. | Отвечает на эту атаку |
- Скрипты на 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 и инструментирование браузера идут вместе с ним, каждое повышает цену для своего шаблона атаки. Сложенные последовательно, каждый слой, до которого добрался атакующий, уже уплатил пошлину.
Поверхности интеграции
Четыре способа поставить проверку перед посетителем. Выбери тот, что подходит форме твоего кода, стека или команды.
Запусти проверку на одном ключе сайта. Бесплатно.
Зарегистрируйся, выпусти ключ сайта, помести виджет на одну форму. Перейди выше позже, когда понадобится возможность с более высокого тарифа.
Начать бесплатно