Pull to refresh

Интерактивная каптча

Reading time1 min
Views1.2K
Поскольку сегодня 15 января — международный CAPTHA-day, то и я предложу свой вариант.
Моя идея в интерактивном взаимодействии с пользователем, чтобы понять что это не робот. Для начала нужно задать пользователю какую-то несложную задачу. Символы, введённые с клавиатуры немедленно отправлять на сервер с помощью AJAX и таким образом определять — человек это или нет. Если слово введено за одну миллисекунду — значит это робот. Опять-же можно интерактивно менять задачу и следить за реакцией пользователя. Как это могло бы быть в несколько утрированном виде можно увидеть на картинке McBernar, в каждой шутке лишь доля шутки ;-)

image
Издеваться над пользователем при этом конечно не нужно, но зато на одну и ту-же картинку, которая всё-таки может быть распознана получается большое количество вариантов ответов, а не просто набор всего подряд текста с неё или тыкание в нужную область.
Комбинирование двух (или более) задач резко повышает «секретность замка», а контроль за скоростью ввода пользователя — лишает возможности открыть его брутфорсом.

Реализация интерактивности возможна также через взаимодействие мышью с объектами (в этом случае нужно контролировать перемещение мыши и скорость кликов, аналогично контролю за вводом).
Ну и на ресурсах, где широко используется flash можно сделать каптчу на нём (там всё равно без поддержки flash делать нечего), это позволит минимизировать непонятность, но на opera mini увы работать не будет.

Прошу строго не судить, я постарался придумать инструмент, который хотя-бы свою задачу защиты от ботов выполняет не хуже чем существующие.
Tags:
Hubs:
+13
Comments80

Articles