Распознать капчу – API rucaptcha.com. Описание методов для пересылки изображений для распознавания и получение результата расшифровки. OCR API. Решение ReCaptcha

Какую антикапчу выбрать: ruCaptcha, Anti-Captcha, DeathbyCaptcha, DeCaptcher?

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

Для решения проблемы были созданы сервисы автоматического распознавания и ввода капчи. Сегодня в Рунете популярны два сервиса по распознаванию капч. Это ruCaptcha и Anti-Captcha, ими пользуется более 90 процентов всех интернет-пользователей в России и СНГ, но есть еще зарубежные сервисы Deathbycaptcha и De-captcher. Сравним особенности всех сервисов, чтобы помочь вам выбрать наиболее подходящую антикапчу.

Как работают сервисы антикапч?

Работа антикапчи

При работе с Яндекс.Вордстатом, Google Аналитикой, Key Collector, Advego Plagiatus и многими другими сервисами приходится часто вводить капчу. Программам, сотрудничающим с онлайн-сервисами, требуется защита от ботов, и именно с помощью капч они борются с ними.

Но это доставляет огромный дискомфорт вебмастерам, которым нужно проделать парсинг данных или собрать сема

Распознавание кириллической Яндекс капчи / Habr

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

Теперь на очереди кириллическая Яндекс капча, с которой, уверен, многие из нас отлично знакомы.

Итак, мы имеем такую капчу:



Особенности


  • Переменная длина
  • Искажения
  • Шумы (кривая)
  • Кириллические буквы
  • Модный логотип в правом-верхнем углу

Слабые стороны


  • Искажения незначительны, не препятствуют сегментации
  • Шумы лишь незначительно усложняют распознавание
  • Ограниченный словарь позволяет отсеять неверные варианты и скорректировать ответы сети

Решение


Условно разделим распознавание на следующие этапы:
  • Предварительная обработка
  • Поиск расположения и сегментация текста
  • Распознавание
  • Финальная обработка результата

Предварительная обработка


Убираем логотип Яндекса и автокадрируем изображение:

Нормализуем входные данные:


Где x — значения цвета пикселей, [a,b] – интервал допустимых значений входных сигналов. В нашем случае от -1 до 1.

Поиск расположения и сегментация текста


За распознавание длины капчи отвечает сеть с 4-мя нейронами выходного слоя, каждый из которых соответствует значению длины от 4 до 7.

Теперь, зная длину капчи, остается лишь разделить изображение на равные части, для дальнейшего распознавания:

Распознавание


Для распознавания букв используется сеть из двух слоев.
Первый слой обучаемый и состоит из 900 нейронов, выходной состоит из 31 нейрона, каждому из которых соответствует буква на картинке.

Первоначальная обучающая выборка подготовлена благодаря отряду русскоязычных индусов antigate и составила 2,000 капч, после недолгого обучения сети, в роли учителя выступал уже сам Яндекс и подготовленный ранее словарь из 387,143 слов от 4 до 7 символов, сформированный на основе данных из Яндекс словарей.

Потенциально верные ответы сети, присутствующие в словаре, отправлялись на проверку Яндексу, по результатам которой и происходило обучение, что значительно сократило расходы на дальнейшее формирование выборки.

В течение суток получена точность распознавания каждого символа в 70%.

Финальная обработка результата


После получения результата распознавания проверяется наличие оного в словаре.
Если результат распознавания отсутствует в словаре, скорее всего он не верен.
Часто возникают ошибки между схожими символами, к примеру н — и, с — е, ь — ы, п — л.
В таком случае, исходя из ответов сети, выбираем наиболее вероятные буквы и ищем соответствующие слова в словаре.
Если слов не существует, выбираем варианты с аналогичной длиной и минимальным расстоянием Левенштейна.
Такой вариант дает 18% точность распознавания капчи.
Также можно задействовать частоту распределения букв и их сочетаний в русском языке, не говоря уже о готовых решениях для проверки орфографии, в любом случае вариантов множество.
Даже простое прюнинг результатов, отсутствующих в словаре отбрасывает значительную часть неверных вариантов.

Заключение


Как я говорил ранее, при желании и должном числе примеров, любая понятная [и не только] человеку капча поддается распознаванию. Упор нужно делать не на усложнении самого изображения, а на технологиях выявления ботов, пока они сами не начали выявлять и отсеивать людей.

Кириллическая Яндекс капча довольно слабая, однако порядком более дружелюбна для русскоязычных пользователей, нежели, к примеру, kcaptcha или recaptcha (особенно первой версии).

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

Исходники


Если желаете протестировать или разобраться в работе сети — добро пожаловать на GitHub.

P.S. Если у вас есть интересные задачи в этой области — буду рад помочь.

Распознавание CAPTCHA: зачем это нужно?

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

Ввод капчи: зачем он нужен?

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

Далеко не нужно ходить. В качестве примера возьмем популярную социальную сеть «Вконтакте», где за превышение действий за короткий промежуток времени система просит ввести эту самую сaptcha. То есть, вам придется ввести ее, если будете отправлять по 50 сообщений в течение десяти минут. Другими словами капча нужна, чтобы препятствовать работе спамеров. Те, кто занимается спамом, не желая возиться с вводом всевозможных капч, и поэтому оставляют это безнадежное дело.

Стоит заметить, что существуют такие спамеры, которые научились взламывать определенные капчи, подбирая к ним ключи. Ведь есть много рисунков, которые можно распознать, применив отдельные программы. Кроме того, сейчас существует множество сервисов, типа antigate, которая в автоматическом режиме распознает почти любую капчу, правда за деньги.

Кстати, на смену обычным, как text based-Captcha, DeCaptcher, captcha decoding, «Майкрософт» предлагает альтернативную капчу ASIRRA. Прочитать про нее можно этому адресу: http://research.microsoft.com/en-us/um/redmond/projects/asirra/. Для тех, кто не знает английский, вкратце расскажем про сервис Asirra.

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

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

Тем не менее, даже эта капча не является панацеей, сервис de-captcher.com может решать и ее, пусть даже и вручную.

Какое будущее у капчи?

Можно наблюдать за тем, как быстро развивалась сaptcha. Сначала были просто цифры, потом латинские буквы, затем кириллица, далее доводилось угадывать слово.

Вместе с эволюцией капчи, развивались и усовершенствовались биржи по автоматическому распознаванию сaptcha. Таким образом, можно сделать вывод, что сервисы по распознаванию капч будут востребованы еще очень долго.

Как работает индустрия по распознаванию CAPTCHA / Habr

Ни одна CAPTCHA не выстоит в противостоянии с армией низкооплачиваемых юзеров, которые готовы сутками распознавать «каптчи» Google и Myspace за скромное вознаграждение $2 за 1000 картинок. В Индии сформировалась целая индустрия «дата-процессинга», которая специализируется именно на этом, там работают тысячи и тысячи индусов.

Эти люди сидят за дисплеями и решают «каптчи» в реальном режиме времени. Их рабочий интерфейс выглядит примерно так.



Подробности о тонкостях бизнеса таких фирм опубликовал Данчо Данчев в блоге ZDNet Zero Day. Их бизнес процветает. Более того, в последнее время отмечаются признаки консолидации крупнейших игроков на этом рынке. Они начинают совместно разрабатывать новые рабочие инструменты, предпринимают шаги по снижению оплаты труда и даже начинают предоставлять бизнес по франшизе зарубежным партнёрам.

У них уже есть стандартный веб-инструментарий, они начали публиковать API и запустили тысячи прокси-серверов, чтобы вывести своё дело на реально промышленные масштабы.

Например, несколько франшиз в Бангладеше имеют общий штат из 1000 сотрудников (этих «леммингов» ищут через интернет, в том числе в странах СНГ) и гарантируют взлом 250 000 «капчей» в сутки по цене $2 за тысячу. Некоторые фирмы гарантируют заказчикам точность распознавания 90% и максимальную скорость 10 секунд на каждое изображение.

Нижу мы публикуем несколько скриншотов различных веб-интерфейсов, с которыми работают CAPTCHA-взломщики.

Больше скриншотов в лучшем разрешении можно найти здесь.

Почему капчи стали такими сложными / Habr

Доказывать, что ты не робот, становится всё сложнее



В какой-то момент прошлого года постоянные требования от Google доказать, что я человек, начали казаться всё более агрессивными. Всё чаще за простой и немного чересчур милой кнопочкой «Я не робот» начали появляться требования доказать это – выбрав все светофоры, переходы или витрины в сетке изображений. Вскоре светофоры начали прятаться в листве, переходы искажаться и уходить за угол, а вывески магазинов стали размытыми и перешли на корейский язык. Есть что-то весьма разочаровывающее в неудачных попытках найти на изображении пожарный гидрант.

Эти тесты называются CAPTCHA – акроним от «полностью автоматического публичного теста Тьюринга, предназначенного для различения людей и компьютеров», и когда-то они уже доходили до подобной степени неразборчивости. В начале 2000-х простых изображений с текстом было достаточно, чтобы остановить большинство спам-ботов. Прошло десять лет, и после того, как компания Google купила программу у исследователей из Университета Карнеги-Меллона и использовала её для оцифровки в проекте Google Books, тексты приходилось всё сильнее искажать и скрывать, чтобы обгонять улучшающиеся программы оптического распознавания символов – те самые программы, которые помогали улучшать те самые люди, кому приходилось разгадывать все эти капчи.

Поскольку CAPTCHA – элегантный инструмент для тренировок ИИ, то любой придуманный тест может продержаться лишь некоторое время, что признают и его изобретатели. Со всеми этими исследователями, мошенниками, и простыми людьми, решающими миллиарды задачек на грани возможного для ИИ, в какой-то момент машины просто обязаны были нас обогнать. В 2014-м Google стравила между собой свой лучший алгоритм по разгадыванию самых искажённых текстов и людей: компьютер правильно распознал текст в 99,8% случаев, а люди всего в 33%.

После этого Google перешла на NoCaptcha ReCaptcha, наблюдающую за поведением людей и собирающую их данные, что позволяет некоторым из них пройти дальше просто по клику на кнопке «Я не робот», а другим выдаёт задачи на поиск изображений, которые мы сегодня и наблюдаем. Но машины снова настигают нас. Все эти навесы, которые могут быть или не быть витринами магазинов – это заключительная стадия гонки вооружений людей и машин.

Язон Полакис, профессор информатики в Университете Иллинойса в Чикаго лично отвечает за недавнее усложнение капчи. В 2016-м он опубликовал работу, в которой использовал готовые программы распознавания изображений, включая собственный поиск по изображением от Google, чтобы решать капчи с точностью в 70%. Другие исследователи справлялись с распознаванием аудио капчи от Google при помощи программ по распознаванию речи от самой же компании.

Машинное обучение уже не хуже людей справляется с распознаванием простых текстов, изображений и голоса, говорит Полакис. Алгоритмы, возможно, даже делают это уже лучше: «Мы дошли до момента, когда усложнение задач для софта приводит к тому, что задачи становятся чрезмерно сложными для людей. Нам нужна альтернатива, но чёткого плана пока нет».

Литература по капчам переполнена фальстартами и странными попытками найти что-то кроме текста и изображений, с чем хорошо справляются все люди и плохо справляются машины. Исследователи пробовали предлагать пользователям сортировать изображения людей по выражению лиц, полу и этнической принадлежности (можете представить, как это прошло). Были предложения организовать капчи с викторинами, капчи на основе колыбельных, распространённых в тех местах, где, как предполагается, вырос пользователь. Такие капчи с культурной привязкой нацелены не только на роботов, но и на людей из других стран, решающих капчи за копейки. Люди пытались загнать алгоритмы распознавания изображений в тупик, предлагая пользователю опознать, например, свинью, но при этом рисованную и в солнечных очках. Исследователи изучали такие варианты, как предложить пользователям распознать объекты в мешанине калейдоскопа. В одном из интересных вариантов в 2010-м исследователи предложили использовать капчу для сортировки древних петроглифов – компьютеры плохо справляются с распознаванием скетчей или изображений оленей на стенах пещер.

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

Со многими из этих тестов проблема не в том, что роботы слишком умные, а в том, что люди плохо с ними справляются. И дело не в том, что люди тупые; они просто очень сильно различаются по языку, культуре и опыту. Избавившись от всего этого, чтобы сделать тест, который может пройти любой человек без тренировки и долгих размышлений, мы остаёмся с такими грубыми задачами, как распознавание изображений – а это именно то, с чем хорошо справится специально заточенный под это ИИ.

«Тесты ограничены возможностями человека, — говорит Полакис. – Дело не только в физических возможностях – нужно найти что-то межкультурное, межъязыковое. Нужна задача, которая хорошо работает с человеком из Греции, с человеком из Чикаго, с человеком из Южной Африки, Ирана и Австралии одновременно. И она не должна зависеть от культурных нюансов и различий. Нужна задача, с которой хорошо справляется средний человек, она не должно быть ограничено определённой подгруппой людей, и она должна быть трудной для компьютера. Всё это сильно ограничивает выбор вариантов. А ещё это должно быть что-то, с чем люди справляются быстро, и что не сильно раздражает».

Попытки решения этих загадок с размытыми картинками быстро переводят человека на философские рельсы: есть ли какое-то универсальное человеческое качество, которое можно продемонстрировать машине, и которое машина не может имитировать? Что значит – быть человеком?

Может, наша человечность измеряется не тем, как мы выполняем задачи, а тем, как мы ведём себя, продвигаясь сквозь мир – или, в данном случае, сквозь интернет. Игровые капчи, видеокапчи, любые капчи, которые вы сможете придумать, в итоге будут взломаны, говорит Шуман Госмахумдер [Shuman Ghosemajumder], занимавшийся в Google борьбой с автоматизацией кликов, а потом ставший технологическим директором компании по распознаванию роботов Shape Security. Он склоняется в сторону «постоянной авторизации» вместо отдельных тестов – к наблюдению за поведением пользователя и поиску признаков автоматизации. «Реальный человек не очень хорошо контролирует моторику, и не может двигать мышь одинаковым образом много раз во время нескольких взаимодействий, даже если будет пытаться сделать это», — говорит Госмахумдер. Робот будет взаимодействовать со страницей, не двигая мышью, или двигая её очень точно, а в действиях человека будет наблюдаться «энтропия», которую сложно подделать, говорит Госмахумдер.

Собственная команда Google, занимающаяся капчей, работает в сходном направлении. Последняя версия reCaptcha v3, выход которой был объявлен в конце прошлого года, использует «адаптивный анализ рисков» для оценки трафика по подозрительности; владельцы сайтов могут предлагать подозрительным пользователям задачи вроде ввода пароля или двухфакторной авторизации. В Google не сообщают, какие факторы учитываются при оценках, кроме того, что компания оценивает, как выглядит на сайте «хороший трафик», и использует эту информацию для фильтрации «плохого трафика», согласно Сай Кормаи [Cy Khormaee], менеджеру продукта из команды CAPTCHA. Исследователи в области безопасности говорят, что это, вероятно, смесь куков, атрибутов браузера, закономерностей трафика и других факторов. Один недостаток новой модели распознавания роботов состоит в том, что навигация в вебе при попытках минимизации наблюдений за пользователем может стать немного раздражающей, поскольку такие вещи, как VPN и расширения, затрудняющие отслеживание пользователя, могут отметить вас, как подозрительного.

Аарон Маленфант [Aaron Malenfant], ведущий инженер команды CAPTCHA в Google, говорит, что сдвиг в сторону от тестов Тьюринга должен помочь обойти соревнование, которое люди всё время проигрывают. «Чем больше мы будем вкладываться в машинное обучение, тем сложнее эти задачи будут становиться для людей, и, в частности, поэтому мы запустили CAPTCHA V3 – чтобы опередить эту кривую». Маленфант говорит, что через 5-10 лет задачи в капче вообще не будут иметь смысла. Большая часть веба будет зависеть от постоянного скрытого теста Тьюринга, работающего на фоне.

В своей книге «Самый человечный человек» Брайан Кристиан [Brian Christian] принимает участие в тесте Тьюринга в качестве подсадной утки и понимает, что очень сложно доказать свою человечность в беседах. С другой стороны разработчики ботов обнаружили, что эти тесты легко пройти, не притворяясь красноречивым или интеллектуальным собеседником, а отвечая на вопросы при помощи нелогичных шуток, делая опечатки, или, как в случае бота, выигравшего соревнование Тьюринга в 2014-м, заявляя, что ты – 13-летний украинский мальчик, плохо говорящий по-английски. Ведь человеку свойственно ошибаться. Возможно, что такое будущее ждёт и капчу, самый распространённый тест Тьюринга в мире – новая гонка вооружений будет создавать не роботов, превосходящих людей в сортировке изображений и разборе текста, а роботов, делающих ошибки, промахивающихся по кнопкам, отвлекающимся и переключающим вкладки. «Думаю, народ начинает понимать, что есть области применения для симуляции среднего пользователя-человека… или тупых людей», — говорит Госмахумдер.

Капчи могут сохраниться и в этом мире. В 2017-м Amazon зарегистрировала патент на схему, в которой используются оптические иллюзии и логические задачки, с которыми тяжело справляться людям. Этот тест называется «тест Тьюринга через ошибку», и единственный способ пройти его – дать неверный ответ.

Leave a comment