Капча

Это статья о дизайн-паттерне. Недописана.

[кáпча] — дизайн-паттерн, который позволяет выполнять проверку, находится ли сессия под управлением человека или бота.

Проблема

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

 

Решение

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

 

Недостатки паттерна

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

Пользователи не могут распознать цифры с капчи

У них может не быть нужной клавиатурной раскладки.

Не все пользователи умеют печатать редкие символы вроде №, %, *, поэтому их использование в капче нежелательно.

 

Капча доставляет пользователям значительные неудобства.

Пост об исследовании Института Бэймарда:
Как капча влияет на показатель отказов