Web in Learning!
Веб-технологии и веб-сервисы в обучении. Обучение «в облаке»
Тот, кто придумал «капчу»?
Сколько раз Вам приходилось заполнять какую-нибудь веб-форму, где требовалось прочитать искаженный ряд символов? Этот защитный механизм называется CAPTCHA. Многих он раздражает. Но CAPTCHA служит не только средством защиты формы от роботов. Сейчас это reCAPTCHA — механизм, который помогает усилиями огромного количества пользователей Интернета оцифровывать книги.
Тот, кто придумал этот механизм, сейчас разрабатывает новый грандиозный и не менее полезный проект — Duolingo, который поможет миллионам людей бесплатно изучать иностранные языки.
Луис фон Ан на TEDxCMU рассказывает, как его новый амбициозный проект Duolingo поможет миллионам людей выучить новый язык, быстро и точно переводя Интернет — и всё это бесплатно.
Скольким из вас приходилось заполнять какую-нибудь веб-форму, где требовалось прочитать искаженный ряд символов, такой как этот? Скольким из вас это показалось очень, очень раздражающим? Хорошо, многим. Я это придумал. (Смех) Ну или я один из тех, кто это сделал.
Эта штука называется капча (CAPTCHA). Она нужна, чтобы убедиться, что форма заполняется человеком, а не программой, предназначенной для отправки формы миллионы раз. Она работает, потому что люди, как минимум люди с нормальным зрением, легко могут прочитать эти искажённые символы, а программы пока не справляются с этим так же хорошо. Например, в случае сайта Ticketmaster, вам нужно печатать эти искажённые символы, чтобы спекулянты не могли написать программу, покупающую миллионы билетов, по паре за раз.
Капча используются повсюду в интернете. И поскольку она так часто используются, нередко конкретная последовательность случайных символов, показываемая пользователю, оказывается не очень удачной. Это пример со страницы регистрации Yahoo. Случайные символы, которые видел пользователь, оказались W, A, I, T [подожди], и сложились в слово. Однако самое интересное — сообщение в службу поддержки Yahoo 20 минут спустя. Текст: «Помогите! Я ждал больше 20 минут, но ничего не происходит». (Смех) Этот человек подумал, надо подождать. Конечно, это не так плохо, как у этого бедняги.
(Смех) [текст: перезагрузитесь]
Мы сделали проект CAPTCHA здесь, в университете Карнеги-Меллон больше 10 лет назад, и он используется повсеместно. Сейчас я расскажу о проекте, который мы сделали несколько лет спустя, он является следующим этапом эволюции CAPTCHA. Этот проект мы назвали reCAPTCHA, и начали его здесь в университете Карнеги-Меллон, а затем превратили в молодую компанию. Примерно полтора года спустя, Google купил эту компанию.
Позвольте рассказать о начале проекта. Этот проект начался со следующего озарения. Оказывается, примерно 200 миллионов капчей вводится каждый день людьми в мире. Когда я первый раз это услышал, я был очень горд собой. Я подумал о влиянии своих исследований. Но затем начались угрызения совести. Каждый раз при вводе капчи, вы теряете 10 секунд вашего времени. Если умножить это на 200 миллионов, оказывается, человечество теряет 500 000 часов каждый день, вводя надоедливые капчи. После этого совесть меня загрызла.
И я начал думать, ладно, мы не можем избавиться от капчей, потому что от них зависит безопасность интернета. Я начал думать, можно ли использовать эти усилия с пользой для человечества? Итак, вот в чём дело. Пока вы вводите капчу, в эти 10 секунд, ваш мозг делает удивительные вещи. Ваш мозг делает то, что компьютеры пока не умеют. Можем ли мы использовать эти 10 секунд для полезной работы? Другими словами, есть ли некая гигантская проблема, которую компьютеры решить не могут, но которую можно поделить на мелкие 10-секундные кусочки так, что каждый раз, когда кто-то решает капчу, он решает маленький кусочек этой проблемы? Ответ — «да», и именно это мы сейчас делаем.
Вы можете не знать, но сегодня при вводе капчи, вы не только подтверждаете, что вы человек, но вдобавок вы помогаете нам оцифровывать книги. Позвольте объяснить, как это работает. Есть много проектов по оцифровке книг. У Google, у The Internet Archive. Amazon, теперь с Kindle, пытается оцифровывать книги. Это выглядит примерно так: сначала есть старая книга. Видели эти штуки, верно? Ну. книги. (Смех) У нас есть книга, и мы её сканируем.
Сканирование книги, это как фотографирование каждой страницы. Мы получаем изображение каждой страницы книги. Это изображение с текстом каждой страницы книги. Следующий шаг в этом процессе — компьютеру нужно расшифровать все слова в этом изображении. При этом используется технология OCR, оптическое распознавание символов, которая берёт изображение текста и пытается понять, что там за текст. Проблема в том, что OCR не идеальна. Особенно в старых книгах, где чернила выцвели и страницы пожелтели, OCR не может распознать многие слова. Например, в книгах, написанных более 50 лет назад, компьютер не может распознать примерно 30% слов. Поэтому сейчас мы выбираем все нераспознанные слова, и даём их на чтение людям, когда они вводят капчу в интернете.
При следующем вводе капчи, знайте, что вы вводите слова, взятые из оцифровываемых книг, которые компьютер не смог распознать. Мы используем два слова вместо одного, потому что одно из слов система взяла из книги, оно неизвестно и показывается вам. Однако поскольку ответ неизвестен, то оценить точность невозможно. Поэтому мы даём другое слово, ответ для которого известен. Мы не говорим, какое из них какое, и просим ввести оба. При вводе правильного слова, того, для которого ответ известен, система считает вас человеком, а также получает уверенность в правильности ввода другого слова. Повторив это с 10-ю разными людьми, все из которых согласны с вводом нового слова, мы получим ещё одно точно оцифрованное слово.
Вот так работает система. После выпуска системы три или четыре года назад, многие сайты стали переключаться со старых капч, тративших время впустую, на новые капчи, где люди помогают оцифровывать книги. Например, Ticketmaster. Каждый раз при покупке билетов на Ticketmaster, вы помогаете оцифровать книгу. Facebook: При каждом добавлении друга, вы помогаете оцифровывать книгу. Twitter и примерно 350 000 других сайтов используют reCAPTCHA. На самом деле, сайтов, использующих reCAPTCHA, так много, что мы оцифровываем очень, очень много слов в день. Примерно 100 миллионов в день, эквивалент примерно 2,5 миллиона книг в год. И всё это делается по слову за раз, просто людьми, вводящими капчи в интернете.
Конечно, при таком количестве слов в день случаются смешные истории. Особенно потому что теперь мы даём людям два случайных английских слова рядом. Итак, случаются любопытные истории. Например, мы показываем это слово. Это слово «Христиане», вполне нормальное слово. Но если показать его с другим случайным словом, страшные вещи могут случиться. Получаем вот это (Текст: Плохие христиане) Хуже того, сайт, на котором мы это показали, назывался «Посольство Царства Божия». (Смех) Оп-па. (Смех) А вот ещё один прокол. JohnEdwards.com (Текст: Чёртов либерал) (Смех) Мы продолжаем оскорблять людей направо и налево каждый день.
Конечно, мы не просто оскорбляем людей. Мы показываем два случайных слова, поэтому могут случиться интересные вещи. Это породило очень большой интернет-мем, в котором приняли участие тысячи людей, называемый искусство капчей. Я уверен, кто-то из вас о нём слышал. Вот как это работает. Представьте, вы в интернете и видите капчу, которая вам кажется необычной, например, как эта. (Текст: невидимый тостер) Вы делаете снимок экрана. Конечно, затем вы вводите капчу, чтобы помочь нам оцифровать книгу. Но сначала вы снимаете экран, а потом рисуете что-то связанное с этим. (Смех) Вот как это выглядит. Таких рисунков десятки тысяч. Некоторые очень прикольные. (Текст: схватил) (Смех) Некоторые ещё смешнее. (Текст: обкуренные основатели) (Смех) И некоторые из них, например, палеонтологическая фигня, содержат рэпера Snoop Dogg.
Это моё любимое число в reCAPTCHA. Это та самая вещь, которая мне нравится в проекте. Это количество отдельных людей, которые помогли нам оцифровать как минимум одно слово из книги в reCAPTCHA: 750 миллионов, чуть более 10% населения Земли, помогли нам оцифровать знания человечества. Вот такие цифры движут планом моих исследований. Вот вопрос, мотивирующий мои исследования: если посмотреть на историю крупных достижений человечества, те значительные вещи, которые люди собрались и сделали, например, постройка пирамид в Египте, или Панамский канал, или отправка человека на Луну, интересная особенность их в том, что все они были сделаны примерно одинаковым количеством людей. Странно. Все они сделаны примерно со 100 000 участников. Причина этого в том, что до интернета, координировать более 100 000 человек, не говоря об оплате, было практически невозможно. Но сейчас, с интернетом, я только что показал вам проект, где мы с помощью 750 миллионов людей оцифровываем человеческие знания. Вопрос, двигающий план моих исследований: если мы смогли запустить человека на Луну со 100 000 участников, что мы сможем сделать со 100 миллионами?
Пытаясь ответить на этот вопрос, мы работали над множеством проектов. Позвольте рассказать об одном, который мне больше всего нравится. Мы негласно работали над ним последние полтора года. Он ещё не запущен. Он называется Duolingo. Поскольку он ещё не запущен, ш-ш-ш! (Смех) Да, вам можно в этом доверять. Вот и проект. Вот как он начался. Он начался, когда я задал вопрос своему студенту, Северину Хакеру. Ладно, вот Северин Хакер. Я задал вопрос своему студенту. Между прочим, вы правильно услышали, его фамилия Хакер. Итак, я задал ему вопрос: «Как можно заставить 100 миллионов людей переводить интернет на все основные языки бесплатно?»
Ладно, по этому вопросу можно многое сказать. Во-первых, перевод интернета. Сейчас интернет разбит на множество языков. Большая часть его на английском. Если вы не знаете английского, она вам недоступна. Но есть большие части на других языках, и если вы не знаете этих языков, вам они недоступны. Я хотел бы перевести весь интернет, или хотя бы большую его часть, на каждый из крупных языков. Я хочу это сделать.
Кто-то спросит, а почему не перевести с помощью компьютера? Почему бы не использовать машинный перевод? Машинный перевод начинает использоваться для перевода предложений тут и там. Почему бы не использовать его для перевода всего интернета? Проблема в том, что он ещё не так хорош, и, вероятно, не улучшится в ближайшие 15-20 лет. Он делает много ошибок. Поскольку он делает много ошибок, то даже когда он точен, доверия к нему нет.
Позвольте показать вам пример машинного перевода. Это была запись в форуме. Кто-то пытался задать вопрос о JavaScript. Он был переведён с японского на английский. Читайте. Этот человек начинает с извинений за машинный перевод. Следующее предложение — преамбула вопроса. Он просто что-то объясняет. Помните, вопрос о JavaScript. (Текст: В часто, козло-время ставит ошибкой рвоту.) (Смех) Затем идёт первая часть вопроса. (Текст: Как часто любят ветер, шест и дракона?) (Смех) Затем — моя любимая часть вопроса. (Текст: Это оскорбляет камни предков?) (Смех) Затем это завершается моей самой любимой частью. (Текст: Извинитесь за свою глупость. Есть много спасибо.) (Смех) Итак, машинный перевод не очень хорош. Назад к вопросу.
Нам нужно, чтобы люди перевели весь интернет. Следующим вопросом может быть, а почему бы не заплатить людям за это? Можно заплатить профессиональным переводчикам за перевод интернета. Это можно сделать. К сожалению, это будет очень дорого. Например, перевести очень, очень малую часть интернета, Википедию, на один язык, испанский. Википедия есть на испанском, но она очень мала по сравнению с английской. Примерно 20% от размера английской. Если мы захотим перевести остальные 80% на испанский, это обойдётся в 50 миллионов долларов, даже по ценам самой эксплуатируемой страны в мире. Это будет очень дорого. Поэтому мы хотим найти 100 миллионов человек, которые будут переводить интернет на все крупные языки бесплатно.
Если хочешь это сделать, довольно быстро понимаешь, что впереди два больших препятствия, две большие препоны. Первая — недостаток двуязычных людей. Я даже не знаю, есть ли в интернете 100 миллионов людей, которые достаточно владеют двумя языками, чтобы помочь нам с переводом. Это большая проблема. Другая проблема, с которой сталкиваешься, это отсутствие мотивации. Как мотивировать людей бесплатно переводить интернет? Обычно за это платят. Как мотивировать делать это бесплатно? Когда мы начинали об это думать, нас тормозили эти две вещи. Но затем мы поняли, что есть способ решить их обе сразу. Есть способ поймать двух зайцев сразу. Т.е. превратить перевод в нечто, что миллионы людей захотят делать, и что поможет решить проблему недостатка двуязычных людей — и это изучение языков.
Сейчас более 1,2 миллиарда человек учат иностранные языки. Люди очень сильно хотят выучить иностранный язык. И не потому что их заставляют в школе. Например, только в США, свыше 5 миллионов людей заплатили свыше 500 долларов за программу для изучения нового языка. Люди действительно хотят изучить новый язык. Последние полтора года мы работали над новым вебсайтом: Duolingo. Главная идея: люди учат новый язык бесплатно, параллельно переводя интернет. В принципе, они учатся на практике.
Это работает так: когда вы новичок, мы даём очень, очень простые предложения. Конечно, в интернете много простых предложений. Мы даёт вам очень, очень простые предложения вместе со значением каждого слова. По мере перевода и наблюдения за переводами других, вы начинаете изучать язык. По мере продвижения, мы даём всё более сложные предложения на перевод. Однако вы всегда учитесь на практике.
Самое невообразимое в этом методе — то, что он действительно работает. Главное, люди действительно учат язык. Мы практически закончили с разработкой и теперь тестируем. Люди действительно могут изучить язык с его помощью. Практически так же хорошо, как с помощью ведущих компьютерных программ. Итак, люди действительно изучают язык. И не только они его хорошо учат, но это намного более интересно. Потому что с Duolingo люди учатся на настоящих текстах. В противовес обучению на придуманных предложениях, люди учатся на настоящих текстах, которые сами по себе интересны. Люди действительно изучают язык.
Ещё более неожиданно, переводы пользователей сайта, даже новичков, также точны, как и профессиональные, что очень неожиданно. Позвольте показать один пример. Это предложение было переведено с немецкого на английский. Сверху немецкий. В середине английский профессиональный перевод, за который заплачено по 20 центов за слово. Снизу перевод пользователями Duolingo, ни один из которых не знал немецкого перед использованием сайта. Обратите внимание, он практически безупречен. Конечно, мы схитрили, чтобы сделать перевод столь же хорошим, как и профессиональный. Мы соединили переводы многих новичков, чтобы получить качество одного профессионального переводчика.
Но даже с комбинацией переводов, сайт может переводить очень быстро. Позвольте показать, это наши оценки скорости перевода Википедии с английского на испанский. Помните, это стоит около 50 миллионов долларов. Если мы хотим перевести Википедию на испанский, мы сможем это сделать за 5 недель со 100 000 активных пользователей. Или за 80 часов с миллионом активных пользователей. Все проекты, над которыми работала моя группа, обладали миллионными аудиториями, мы надеемся, что мы сможем переводить очень быстро с помощью этого проекта.
Меня больше всего потрясает в Duolingo то, что я считаю, он предоставляет честную бизнес-модель для языкового образования. Вот в чём дело: Текущая бизнес-модель для языкового образования в том, что студент платит, и в частности, студент платит Rosetta Stone 500 долларов. (Смех) Это текущая бизнес-модель. Проблема с ней в том, что у 95% населения мира нет 500 долларов. Поэтому это крайне ущемляет бедных. Это однозначно ориентировано на богатых. Теперь смотрите, с Duolingo, потому что в то время, когда вы учитесь, вы создаёте нечто ценное, вы что-то переводите, а мы можем брать плату с кого-то за эти переводы. Вот так мы можем на этом зарабатывать. Поскольку люди создают нечто ценное, пока они учатся, они могут платить не деньгами, а временем. Волшебство в том, что они платят временем, тем временем, которое все равно было бы потрачено на изучение языка. Замечательный факт о Duolingo — честная бизнес-модель, которая не ущемляет бедных людей.
Вот сайт. Спасибо. (Аплодисменты) Вот сайт. Мы ещё не запустились, но если вы туда зайдёте, то сможете подписаться на закрытое тестирование, начинающееся примерно через три или четыре недели. Этот Duolingo ещё не запущен.
Кстати, я выступаю в одиночку, но Duolingo — результат работы потрясающей команды, некоторых членов можно видеть тут. Спасибо.
Перевод: Aliaksandr Autayeu
Суперфиналист «Лидеров России» создал новую капчу для распознавания пользователей с помощью графических изображений
Суперфиналист четвертого сезона конкурса управленцев «Лидеры России» – флагманского проекта президентской платформы «Россия – страна возможностей» – Андрей Анисимов разработал новый способ защиты интернет-сайтов от ботов «Я не робот», основанный на повторении графического изображения. Осенью 2022 года автор подал заявку на регистрацию патента на изобретение и стал резидентом фонда «Сколково», где продолжит научное развитие проекта и займется выводом ИТ-продукта на международный рынок.
Российские разработчики нашли новый способ персонализированной проверки «Я не робот», основанный на повторении графического изображения. Такая капча решается быстрее, чем выбор предложенных картинок или введение текста, что повышает лояльность пользователей к сервису, а в бизнесе способствует увеличению продаж. Об этом сообщил автор проекта sCaptcha – победитель трека «Информационные технологии» и суперфиналист четвертого сезона конкурса управленцев «Лидеры России» Андрей Анисимов из Москвы.
«Для защиты сайтов от ботов и автоматических систем мы предлагаем другой подход: чтобы доказать, что ты не робот, надо на сенсорном экране или с помощью компьютерной мыши повторить простую геометрическую фигуру. Затем искусственная нейронная сеть сравнит координатно-временные характеристики картинки с исходными данными и выдаст решение: это нарисовал робот или человек. Пределы доверительного диапазона для каждого шаблона определены методом машинного обучения на основе тестовых изображений», – отметил он.
Осенью 2022 года разработчики подали заявку в Федеральную службу по интеллектуальной собственности на получение патента на изобретение и практически одновременно стали резидентами фонда «Сколково», где собираются продолжать научное развитие проекта и заниматься маркетинговым продвижением ИТ-продукта. «Такого подхода, как у нас, с графической проверкой капчи на мировом рынке не существует, поэтому мы решили запатентовать свою идею в России и уже вместе со «Сколково» заняться получением международного патента, в первую очередь, для работы в странах ЕАЭС. Вывод sCaptcha на российский рынок запланирован в 2023 году», – сообщил Андрей Анисимов.
Он пояснил, что в России в основном используются капчи Google: они установлены более чем на 300 тысячах сайтов, а это 95 % всего рынка. Отечественные решения «Я не робот» разрабатываются для внутреннего использования на сайтах крупных сервисов, таких как «Госуслуги» и «Ростелеком». По словам Андрея Анисимова, единственная российская капча, которая предусмотрена для встраивания на другие сайты, создается компанией «Яндекс», но она связана с повторением текста.
«Мы позиционируем себя как качественный импортозамещающий ИТ-продукт для России, спрос на который диктует геополитическая обстановка. Сейчас в стране нет решений, которые позволят быстро справиться с проблемой в случае отключения иностранных сервисов. Да и без того наблюдается значительный рост числа кибератак на органы власти, бизнеса, промышленные объекты России, что поднимает требования информационной безопасности на очень высокий уровень», – считает Андрей Анисимов.
Сферы применения sCaptcha могут быть самыми различными, включая электронную коммерцию, финансовые технологии, индустрию туризма, стриминговые сервисы и онлайн-игры. Еще одним конкурентным преимуществом нового ИТ-продукта в бизнесе может стать использование в качестве рекламы. «Сами фигуры, которые пользователю необходимо повторить, могут быть связаны с какими-либо брендами и отражать начертание логотипа или аббревиатуру. Например, потребуется нарисовать буквы ЛР при входе в личный кабинет «Лидеров России». Поэтому в перспективе мы рассматриваем использование нашей капчи в рекламных целях. Такого сейчас тоже нет», – подчеркнул разработчик.
Идея создания графической капчи возникла у Андрея Анисимова в 2020 году. Вместе с ним над проектом работает профессиональная команда, в том числе бэкенд-разработчики, фронтенд-разработчики, бизнес-девелопер. В 2021 году был получен грант на проведение научных исследований от Фонда содействия развитию малых форм предприятий в научно-технической сфере. Сейчас завершена основная разработка капчи и проведены тестирования.
«Я представил проект sCaptcha вице-президенту «Лаборатории Касперского» Вячеславу Закоржевскому, который также был победителем трека «Информационные технологии» четвертого сезона конкурса «Лидеры России», и мы нашли потенциальные точки сотрудничества», – рассказал Андрей Анисимов.
В четвертом сезоне конкурса управленцев «Лидеры России» (2021-2022 годы) на участие в треке «Информационные технологии» было подано 16 тысяч заявок со всей страны: 37 человек стали победителями трека, 18 из них вошли в число победителей конкурса.
«Я не робот!»: капча становится сложнее год от года, злит живых людей, и от неё все хотят избавиться
Разработчики самой ненавистной системы защиты в интернете делают её настолько запутанной, что капчу уже не могут распознать ни боты, ни живые люди.
Введение капчи — самый распространённый в интернете метод борьбы против спам-ботов. Пользователь ресурса должен вписать визуально искажённое слово (выдается алгоритмом случайно) в специальное поле или выбрать изображения какого-либо предмета из ряда картинок, чтобы доказать, что он — не робот, а живой человек. Считается, что этот механизм уже более 20 лет противостоит мошенникам.
Хакеры и создатели капч годами играют в «кошки-мышки». Хакеры взламывают простые капчи, после чего разработчики делают их сложнее. При этом они стараются сохранить изначальный принцип «любой человек вне зависимости от возраста, образования, языка должен иметь возможность пройти капчу», но специалисты по кибербезопасности заявляют, что всё зашло слишком далеко и капчи пора отменять — роботы взламывают любые новые версии, а вот для живых людей формы стали слишком сложными.
Слова против спамеров
В середине 1990-х интернет-сервис Altavista стал самой популярной в мире поисковой системой. Он был одним из первых ресурсов для поиска информации в интернете. Вместе с обычными пользователями сервисом полюбили и злоумышленники, размещавшие при помощи ботов вредоносные ссылки через Altavista. Специалисты долго бились над решением проблемы, но решение пришло только в сентябре 2000 года.
Команда инженеров из американского университета Карнеги-Меллона под руководством Луиса фон Ана (позже прославившегося, как создатель платформы для изучения языков Duolingo) искала способ, как при регистрации новых аккаунтов на сайтах отфильтровать аккаунты, создаваемые спам-ботами и автоматическими программами. Так появилась CAPTCHA, что расшифровывается как Completely Automatic Public Turing Test to tell Computers Humans Apart (полностью автоматизированный публичный тест Тьюринга, призванный различить компьютер и человека).
Алан Тьюринг Фото Getty Imagrs
Система названа в честь британского математика середины 20 века Алана Тьюринга, отца-основателя искусственного интеллекта. В русский язык пришло лишь фонетическое название термина — капча, и оно никак не расшифровывается.
Концепция капчи Алана Тьюринга сама по себе гениальна; но по мере того, как возможности роботов становятся всё более изощренными, системы капчи становятся всё более сложными, что приводит к очень инвазивному [не органичному, не комфортному] взаимодействию с пользователем.
Мэтт Блисс
Капча представляла собой картинку со специальным визуально искажённым текстом, который не могли распознать программные алгоритмы того времени, но легко мог прочитать живой человек. Слово нужно было ввести в специальное поле, и только тогда пользователь мог продолжить работу с сайтом, подтвердив, что он — не робот. Способ оказался столь простым и эффективным, что вскоре распространился по всему миру.
Первыми капчу стали использовать в Yahoo (которая вскоре приобрела и Altavista), чтобы не дать роботам создавать бесплатные учётные записи электронной почты, с которых потом рассылался бы спам. Позже систему стали внедрять и другие ресурсы.
Спамеры быстро придумали, как обойти капчу — они стали платить живым людям за её ввод. Такой вид заработка стал особенно популярным в бедных странах. Но даже это не повлияло на популярность капчи. Более того, её создатели однажды подумали, что простой перевод изображения в текст хотя и позволяет отсеивать спам-ботов, но не приносит никакой практической пользы.
reCAPTCHA: как Google расшифровал старые книги, борясь с ботами
В 2008 году фон Ан оптимизировал капчу, создав новое приложение reCAPTCHA. Как и ранее, здесь так же нужно было вводить текст с картинки в специальное поле, но на сей раз это уже были не случайные буквы, а слова из настоящих архивных документов. К тому времени компьютерные программы уже могли точно распознавать печатный текст, но в старых бумагах чернила часто расплывались и выцветали, мешая компьютеру определить какое-либо слово. Живой человек легко справлялся с этой задачей.
Приложение изначально распознавало слова из архивных номеров газеты The New York Times. В 2009 году сервис выкупил Google, и пользователи стали вводить в поле слова из реальных старых книг, помогая их оцифровывать.
Изображение капчи в reCAPTCHA
Проверка стала включать в себя два внешне искажённых слова. Одно из них уже было распознано, и именно от него зависел результат проверки. Второе же брали с отсканированной страницы книги, не обработанной системой распознавания текста. Компьютер изначально не знал, как правильно расшифровывается второе слово, и показывал его нескольким тысячам пользователей. Затем система отслеживала, как пользователи чаще всего расшифровывают слово, и определяла этот вариант как верный. Для проверки можно было ввести лишь одно, тестовое слово, а не оба — но об этом нигде не упоминалось.
Похожие эксперименты проводили и по распознаванию изображений из Google Street View и Google Maps. Вскоре оказалось, что роботы могут взломать даже сложнейшие изображения, и потому сотрудникам Google пришлось искать новые выходы.
Как и в случае с оригинальной капчей, спамеры вновь начали предлагать живым людям заработать на вводе рекапчи. Не остался в стороне и искусственный интеллект. В апреле 2014 года Google сообщил, что, по его исследованиям, новые спам-роботы уже успешно распознают капчу с точностью до 99,8%, что говорит о бессмысленности её дальнейшего использования.
В декабре 2014 года Google оптимизировал капчу, запустив новую систему NO CAPTCHA reCAPTCHA. Её суть в том, что контакты пользователя и системы сведены до минимума. Даже сверхсовременные спам-боты всё же не могут полностью копировать поведение живого человека на сайте, а механизмы Google умеют отличать людей от роботов.
Как только посетитель зашёл на сайт, тут же запускается скрипт, сканирующий его поведение, и стало необязательным использовать трудночитаемые куски старых текстов. По сути, пребывание пользователя на сайте — это и есть тест на спамера.
Настоящий человек не очень хорошо контролирует свои двигательные функции, поэтому он не может двигать мышью одним и тем же способом более одного раза при нескольких взаимодействиях, даже если он очень сильно старается. Бот же будет взаимодействовать со страницей, не перемещая мышь.
Шуман Гхосемаджумдер
Если у системы возникают подозрения в том, что пользователь — бот, то ему предлагают нажать на кнопку «Я не робот». Иногда у системы и после этого остаются сомнения, и тогда пользователю предлагают дополнительные проверки — например, выбрать из нескольких картинок все, на которых изображены светофоры или пожарные гидранты.
Разработчики NO CAPTCHA reCAPTCHA не распространяются насчёт особенностей работы механизма, чтобы этими знаниями не воспользовались взломщики. Система постоянно дорабатывается, в мае 2018 года на конференции Google I/O 2018 представили последнюю на сегодняшний день её версию — reCAPTCHA 3.
NO CAPTCHA reCAPTCHA
IT-специалист Григорий Бакунов считает, что современная reCAPTCHA, как и другие системы, в первую очередь защищает сайты от ботов с помощью аналитики, а не картинок. Сейчас при нажатии на кнопку «пройти капчу» пользователя часто пропускает без необходимости «прокликивания» изображений. Это потому, что когда-то раньше он уже делал это упражнение, браузер и «куки» не поменялись, и судя по поведению курсора, он ведёт себя как настоящий, «мясной» пользователь — нет смысла мучать его всякой ерундой.
Сложнее с каждым годом: капча стала проблемой для живых людей
Не только Google работает над тем, как улучшить систему капчи. Специалисты пакистанского Института информационных технологий КОМСАТС хотели предложить пользователям классифицировать фото человеческих лиц по их выражению, полу или расе.
Были также предложения делать капчу на основе детских стишков, популярных в той стране, где вырос пользователь — планировалось, что это защитит ресурс не только от ботов, но и от живых людей из других стран, вводящих капчу за деньги.
В поиске лучшего варианта капчи предлагалось найти изображения свиней, изображённых в карикатурной форме с солнечными очками. В 2010 году специалисты предлагали использовать на капчах древние наскальные рисунки, так как компьютеры в то время ещё не умели их распознавать. Проблема всех этих альтернатив — они сложны не только для ботов, но и для обычных людей.
Дело не только в наших физических возможностях, нам нужно что-то межкультурное, межязыковое. Нам нужно то, что подходит для кого-то из Греции, кого-то из Чикаго, кого-то из Южной Африки, Ирана и Австралии одновременно. И оно должно быть независимым от культурных сложностей и различий. Нам нужно что-то, что легко для обычного человека, это не должно быть привязано к определенной подгруппе людей, и в то же время это должно быть сложно для компьютеров. Это очень ограничивает то, что вы на самом деле можете сделать. И это должно быть что-то, что человек может делать быстро и без раздражения.
Джейсон Полакис
В мае 2021 года специалисты из компании Cloudflare, специализирующейся на работе с DNS, предложили вовсе отказаться от капчи, используя вместо неё USB-ключи безопасности. Они уже разработали такой механизм защиты и предлагают протестировать его у себя на сайте.
В Яндексе также занимаются вопросами упрощения капчи. За последний год они сильно упростили картинки и сделали режим, где не нужно выполнять никаких заданий.
В разговоре с TJ руководитель сервиса Капчи в «Яндексе» Алексей Тощаков рассказал, что капча — это один из инструментов защиты сервисов и он помогает остановить существенный поток роботов. А комфорт людей можно увеличивать, если развивать алгоритмы, которые принимают решение о показе капчи. Например, в этом году «Яндекс» внедрил улучшение, которое позволило показывать капчу в десять раз реже в очень непростом срезе — режим инкогнито.
Специалисты заявляют, что благодаря капче спама в интернете с каждым годом становится всё меньше. Однако и спамеры постоянно совершенствуют свои навыки.
В 2018 году специалисты из Ланкастерского университета, Северо-Западного университета и Пекинского университета применили концепцию генеративно-состязательной сети, чтобы создать механизм для быстрого и точного ввода капчи.
Есть множество онлайн-сервисов и библиотек для решения капчи, как-то GRIS, Clarifai, Alchemy или NeuralTalk. Они используют технологии на базе глубокого обучения и, по мнению, специалистов, весьма эффективны.
Пример эффективного сервиса решения капчи, доступного через API — DeCaptcher. Работая на базе системы оптического распознавания символов, сервис решает капчу и предоставляет пользователю файл для загрузки, где указано время, изображение капчи и текст, применённый для её решения. Популярны и инструменты с открытым исходным кодом, как-то UnCaptcha и Buster. Они решают звуковые капчи, предназначенные для пользователей с проблемами со зрением.
Обычно системы искусственного интеллекта способны справляться лучше, чем люди, потому что, например, они не страдают от раздражения. Они бесконечно терпеливы, им плевать на трату времени.
Мауро Мильярди
До сих популярны сервисы, где капчу за деньги вводят живые люди. Такие ресурсы экономически выгодны для спамеров. Самые популярные из них — 2captcha и anti-captcha — предлагают решить 1000 капч всего за 50 центов. По статистике на сайте anti-captcha, больше всего работников по вводу капчи за деньги живёт в Венесуэле, Индонезии, Вьетнаме и Индии.
По словам Григория Бакунова, для борьбы с капчей чаще всего используются «фермы», т.е. собранные вместе группы людей, которые «проходят» капчу вместо ботов, выполняя эту рутинную операцию тысячи и десятки тысяч раз в день. Чаще всего это пользователи из Пакистана, Филиппин, Индии — стран, где русский язык слабо распространён. Поэтому всё чаще в рунете встречается капча с русскими буквами — их ввод осложнён, поэтому фермы, умеющие в русский язык, существенно невыгоднее для спамеров.
Из-за этого разработчики капчи вынуждены постоянно усложнять своё детище. Хакеры быстро учатся обходить любой новый элемент защиты, делая его неактуальным и бесполезным. Специалисты вынуждены исправлять проблему, делая капчу ещё более запутанной. Но вскоре спамеры вновь находят способ взломать механизм, и всё повторяется снова.
Капча в виде шахмат, где пользователю нужно сделать ход, чтобы доказать , что он не робот
Мем, посвящённый сложности капчи
По мере усложнения капчи появилась ещё одна проблема — сложная система защиты стала злить обычных «живых» пользователей и мешать им. Люди часто негативно относятся к сайтам, использующим капчу, и порой игнорируют их.
Если капча сделана плохо, он может быть провалена несколько раз. Например, если есть требование «выбрать все изображения с пожарным гидрантом», и всё это один большой пожарный гидрант с кончиком части на несколько пикселей на одном изображении, следует ли нажимать на него или нет? Это может сильно расстраивать пользователей, что влияет на их вовлеченность и конверсию.
Ричард Кан
Капча не подходит для слепоглухих людей. В силу физической ограниченности они не могут разгадать ни визуальную, ни звуковую капчу. Обычные же люди хуже воспринимают звуковую капчу, так как на её прослушивание уходит больше времени.
Создание удобной для пользователя капчи — не всегда простая задача, и обычно приходится искать компромисс между безопасностью и удобством использования.
Не все схемы капчи имеют одинаковый уровень удобства использования. Для некоторых из них требуется выполнение простой задачи, такой как установка флажка или наклон устройства, для других — менее удобные для пользователя способы, такие как решение сложной когнитивной задачи, перетаскивание картинок, решение загадок. Всё это вызывает недовольство рядовых пользователей.
Образец капчи при создании аккаунта на GitHub