CAPTCHA (ПОЛНОСТЬЮ АВТОМАТИЗИРОВАННЫЙ ПУБЛИЧНЫЙ ТЕСТ)

We use cookies. Read the Privacy and Cookie Policy

Проблема

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

Решение

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

Рис. 3.13. Тест CAPTCHA на странице регистрации Yahoo!

Распознавание искаженного изображения выступает в качестве подтверждения того, что пользователь – это человек, а не машина, поскольку автоматически распознать искаженное изображение компьютерной программе довольно сложно. Этот метод называется тест CAPTCHA (от англ. Completely Automated Public Turing test to tell Computers and Humans Apart – Полностью автоматизированный публичный тест Тьюринга для различения компьютеров и людей (von Ahn, Blum, and Langford, 2004)[6].

Зачем

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

Как

Изображения CAPTCHA обычно состоят из четырех-пяти искаженных буквенно-цифровых символов; буквы на изображении могут быть как заглавными, так и строчными. Кроме того, на изображении могут присутствовать линии, несколько искаженных слов, отвлекающий фон и т. д. (рис. 3.14). Пользователей перед отправкой формы просят распознать изображение и ввести символы в правильном порядке (регистр может учитываться, а может и не учитываться). При отправке формы ответ проверяется, и пользователи либо переходят к следующему этапу, либо получают сообщение об ошибке.

Рис. 3.14. Примеры изображений CAPTCHA

Относительно недавно некоторые сайты стали использовать в тесте CAPTCHA простые математические задачи, такие как 2+4 или 4x2, которые пользователи должны решить (рис. 3.15).

Рис. 3.15. Два примера использования математических задач в качестве теста CAPTCHA

Позволяйте пользователям менять изображение CAPTCHA

Некоторые изображения CAPTCHA могут показаться пользователям слишком искаженными, чтобы можно было распознать определенные символы (например, цифру 1 можно перепутать со строчной буквой l, а цифру 9 – со строчной g). По этой причине у пользователей должна быть возможность изменить изображение CAPTCHA, щелкнув мышью по ссылке «обновить» или «изменить» (рис. 3.16).

Рис. 3.16. Сервис Nabble предоставляет пользователям возможность изменить изображение CAPTCHA

Предлагайте возможность пройти звуковой тест CAPTCHA

Поскольку тест CAPTCHA основывается на расшифровке изображения, он предоставляет очевидную сложность для слепых пользователей и для пользователей с нарушенным зрением. У них должна быть возможность пройти звуковой тест CAPTCHA – аудиоверсию стандартного теста CAPTCHA, которая позволит им осуществлять взаимодействие с приложением (рис. 3.17).

Рис. 3.17. На сервисе Gmail пользователям предлагается и визуальный, и звуковой тест CAPTCHA

Связанные шаблоны проектирования

Тесты CAPTCHA часто применяются во время регистрации, поскольку большинство приложений пытаются избежать регистрации, произведенной программами-пауками (REGISTRATION). Также этот тест часто применяется в форумах и блогах, где пользователи могут оставлять комментарии или участвовать в жизни сообщества (см шаблон GROUPS/SPECIAL INTEREST COMMUNITY в главе 9).

Данный текст является ознакомительным фрагментом.