© 2021 - Все права защищены
Как мы доказываем роботам, что мы не роботы?
Часто на многих сайтах во время регистрации нам нужно пройти проверку - ввести буквы с картинки или найти все пальмы. Это называется капча - технология, которую придумали, чтобы отличать людей от роботов.
Разберемся, как это работает и что с этой технологией не так.
Капча - расшифровывается с английского CAPTCHA как Completely Automated Public Turing test to tell Computers and Humans Apart и переводится как Полностью Автоматизированный Публичный Тест Тьюринга для Различения Компьютеров и Людей.
Тестом Тьюринга называют испытание, которое может пройти только умеющее мыслить существо, - его придумал английский математик Алан Тьюринг. Подробнее о тесте расскажем ниже.
Зачем нужна капча?
Капча нужна, чтобы определить, кто пытается совершить операцию - человек или робот. Без ее прохождения нельзя выполнить то или иное действие: войти на сайт, авторизоваться, оставить комментарий. Задание обычно довольно простое для человека и практически невыполнимое для робота.
Зачем вообще отсеивать ботов? Есть несколько причин:
злоумышленники. Боты могут использоваться для разных видов атак на сайты. В первую очередь это DDoS-атаки - автоматизированные массовые запросы, которые перегружают сервер. Еще есть брутфорс - подбор логина и пароля с помощью робота, пробующего разные варианты практически бесконечно;
спам. Частый вариант использования бота - отправка «мусорных» рекламных сообщений, которые мешают полезному контенту;
махинации. Например, интернет-магазины иногда проводят ограниченные по времени акции вида «Успей купить», и роботы могут мониторить такие предложения, скупая весь акционный товар за несколько секунд.
Как выглядит капча?
Самый простой пример капчи - разобрать слова на картинке и ввести их в форму.
Ещё популярная тема - найти пешеходные переходы, светофоры или автобусы.
Кроме этого, бывают:
простые вопросы, на которые может однозначно ответить человек, например, «Как звали Пушкина?»;
математические примеры, которые нужно решить и ввести результат;
мини-игры вида «Кликните на красную кнопку» или «Соберите пазл»;
выбор правильных вариантов из списка - обычно это задания вида «Укажите все картинки со светофорами».
Идея капчи: тест Тьюринга
Разгадывание капчи — это задача, которую легко выполнить человеку и невозможно решить примитивному роботу. Идея возникла несколько десятков лет назад как реализация теста Тьюринга.
Алан Тьюринг придумал эмпирический тест, задача которого - определить, может ли существо мыслить. Классический тест устроен так: у человека есть два невидимых собеседника - машина и другой человек. Если тот не может правильно определить, который из них робот, значит, машина способна к мышлению.
До последнего времени тест Тьюринга не могла пройти ни одна машина. Недавно это удалось искусственному интеллекту LaMDA от Google. Это не значит, что ИИ может мыслить: уже доказано, что прохождение теста говорит не о наличии мышления, а об умении его имитировать.
Как технически устроена капча?
Самая первая капча была устроена очень просто: алгоритм переводил текст в картинку, а человек должен был прочитать это и ввести ответ. Сервер сравнивал ответ пользователя с тем, что записано у него в базе, и если он совпадал - разрешал что-то дальше делать на сервере.
С развитием нейросетей капча поменялась: теперь алгоритмы используют человека как бесплатный инструмент распознавания сложного текста. Так появился проект reCaptcha компании Google - алгоритм знает, как распознаётся первое слово, а второе берёт из оцифрованных старых книг и газет. Человек его, получается, размечает и помогает «Гуглу» дообучиться.
Алгоритм показывал одну и ту же капчу разным пользователям, и если большинство из них указывали одни и те же данные, то это принималось за правильный ответ. Проект оказался настолько успешным, что за несколько дней работы такой капчи получалось оцифровывать годовой выпуск старых газет и неистово натренировать нейросети «Гугла».
Сейчас нейросети шагнули дальше и предлагают просто поставить галочку «Я не робот».
За то время, пока пользователь ставит галочку, нейросеть анализирует действия человека на странице: как он двигает мышкой, как быстро находит галочку, как быстро нажимает, что делает потом и так далее. Если нейросеть посчитает, что перед ней человек, — пропустит его дальше, а если нет — покажет те самые картинки с гидрантами или автобусами.
Самое интересное, что здесь она тоже будет оценивать не только правильность, но и скорость выбора нужных объектов и поведение на странице. А выбор нужных объектов, в свою очередь, помогает дообучать модели компьютерного зрения того же «Гугла».
У современной капчи есть два больших минуса:
- Есть нейросети, которые легко обходят почти любую капчу.
- Капча становится настолько сложной, что человек не всегда может её пройти.
г. Магнитогорск, пр-т Ленина, д. 38, корп. 3, этаж 3.
Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript.