Carder
Professional
- Messages
- 2,619
- Reaction score
- 1,869
- Points
- 113

Служба Google Gmail требует, чтобы новые пользователи вводили CAPTCHA перед созданием учетной записи.
Вы используете свой компьютер, чтобы купить билеты на концерт в местном концертном зале. Прежде чем вы сможете купить билеты, вам сначала нужно пройти тест. Это не тяжелое испытание - собственно, в том-то и дело. Для вас тест должен быть простым и понятным. Но для компьютера этот тест практически невозможно решить.
Этот вид теста представляет собой CAPTCHA, аббревиатуру, которая означает полностью автоматизированный общедоступный тест Тьюринга для различения компьютеров и людей. Они также известны как тип доказательства взаимодействия с человеком (HIP). Вы, наверное, видели тесты CAPTCHA на многих веб-сайтах. Самая распространенная форма капчи - изображение нескольких искаженных букв. Ваша задача - ввести в форму правильную последовательность букв. Если ваши буквы совпадают с буквами на искаженном изображении, вы пройдете тест.
Зачем кому-то нужно создавать тест, который может отличить людей от компьютеров? Это из-за того, что люди пытаются обмануть систему - они хотят использовать слабые места в компьютерах, на которых работает сайт. Хотя эти люди, вероятно, составляют меньшинство всех людей в Интернете, их действия могут повлиять на миллионы пользователей и веб-сайты. Например, бесплатная служба электронной почты может оказаться засыпанной запросами на учетную запись от автоматизированной программы. Эта автоматизированная программа может быть частью более крупной попытки рассылки спама миллионам людей. Тест CAPTCHA помогает определить, какие пользователи являются настоящими людьми, а какие - компьютерными программами.
Одна интересная особенность тестов CAPTCHA заключается в том, что люди, разрабатывающие тесты, не всегда расстраиваются, когда их тесты терпят неудачу. Это потому, что для того, чтобы тест CAPTCHA не прошел, кто-то должен найти способ научить компьютер, как выполнять тест. Другими словами, каждая ошибка CAPTCHA - это действительно прогресс в искусственном интеллекте.
Давайте подробнее рассмотрим, что такое CAPTCHA, в следующем разделе.
Привет, Программа!
Один из парадоксов программы CAPTCHA заключается в том, что приложение CAPTCHA может генерировать тест, который даже оно не может решить, не зная ответа.
СОДЕРЖАНИЕ
- CAPTCHA и тест Тьюринга
- Кто использует капчу
- Создание CAPTCHA
- Нарушение CAPTCHA
- CAPTCHA и искусственный интеллект
CAPTCHA и тест Тьюринга

Не все CAPTCHA требуют ввода текста. В этой версии пользователям предлагается использовать мышь для отслеживания определенных форм на фотографиях.
Технология CAPTCHA основана на эксперименте, называемом тестом Тьюринга. Алан Тьюринг, которого иногда называют отцом современных вычислений, предложил тест как способ проверить, могут ли машины думать - или казаться думающими - как люди. Классический тест - это игра в имитацию. В этой игре следователь задает двум участникам серию вопросов. Один из участников - машина, другой - человек. Допрашивающий не может видеть или слышать участников и не может узнать, что есть что. Если дознаватель не может определить, какой участник является машиной, на основе ответов, машина проходит тест Тьюринга.
Конечно, с помощью CAPTCHA цель состоит в том, чтобы создать тест, который люди могут легко пройти, а машины - нет. Также важно, чтобы приложение CAPTCHA могло предоставлять разные CAPTCHA разным пользователям. Если бы визуальная CAPTCHA представляла статическое изображение, одинаковое для всех пользователей, спамер быстро обнаружил форму, расшифровал буквы и запрограммировал приложение на автоматический ввод правильного ответа.
Большинство, но не все, CAPTCHA полагаются на визуальный тест. Компьютерам не хватает изощренности, присущей людям, когда дело доходит до обработки визуальных данных. Мы можем смотреть на изображение и выделять узоры легче, чем компьютер. Человеческий разум иногда воспринимает закономерности, даже если их не существует, причуда, которую мы называем парейдолией . Вы когда-нибудь видели фигуру в облаках или лицо на луне? Это ваш мозг пытается связать случайную информацию с узорами и формами.
Но не все CAPTCHA полагаются на визуальные шаблоны. На самом деле, важно иметь альтернативу визуальной CAPTCHA. В противном случае администратор веб-сайта рискует лишить избирательных прав любого веб-пользователя с нарушением зрения. Альтернативой визуальному тесту является звуковой. Аудио CAPTCHA обычно представляет пользователю серию произносимых букв или цифр. Программа нередко искажает голос говорящего, и программа также часто включает фоновый шум в запись. Это помогает блокировать программы распознавания голоса.
Другой вариант - создать CAPTCHA, который просит читателя интерпретировать короткий отрывок текста. Контекстная CAPTCHA проверяет читателя и его навыки понимания. Хотя компьютерные программы могут выделять ключевые слова в отрывках текста, они не очень хорошо понимают, что эти слова на самом деле означают.
В следующем разделе мы более подробно рассмотрим типы сайтов, которые используют CAPTCHA, чтобы проверить, есть ли у вас пульс.
Извините, я прочту это снова
Время от времени CAPTCHA представляет изображение или звук, которые настолько искажены, что даже люди не могут их расшифровать. Вот почему многие приложения CAPTCHA предоставляют пользователям возможность создать новую CAPTCHA и повторить попытку. Надеюсь, второй раз будет не так запутан, как первый.
Кто использует капчу

Yahoo использует буквенно-цифровые строки, а не слова в качестве CAPTCHA, когда вы подписываетесь на Yahoo! учетная запись.
Одно из распространенных приложений CAPTCHA - проверка онлайн-опросов. Фактически, предыдущий опрос Slashdot служит примером того, что может пойти не так, если социологи не применяют фильтры в своих опросах. В 1999 году Slashdot опубликовал опрос, в котором посетителей просили выбрать аспирантуру с лучшей программой по информатике. Студенты двух университетов - Карнеги-Меллона и Массачусетского технологического института - создали автоматизированные программы, называемые ботами, для многократного голосования за свои учебные заведения. В то время как эти две школы получили тысячи голосов, в других школах было всего по несколько сотен голосов. Если можно создать программу которая может голосовать в опросе, как мы вообще можем доверять результатам онлайн-опроса? Форма CAPTCHA может помочь предотвратить использование программистами системы опроса.
Регистрационные формы на веб-сайтах часто используют CAPTCHA. Например, бесплатные веб-службы электронной почты, такие как Hotmail, Yahoo! Почта или Gmail позволяют людям бесплатно создавать учетные записи электронной почты. Обычно пользователи должны предоставить некоторую личную информацию при создании учетной записи, но службы обычно не проверяют эту информацию. Они используют CAPTCHA, чтобы помешать спамерам использовать ботов для создания сотен почтовых аккаунтов для спама.
Брокеры по продаже билетов, такие как TicketMaster, также используют приложения CAPTCHA. Эти приложения помогают предотвратить бомбардировку службы спекулянтами билетов массовыми покупками билетов на крупные мероприятия. Без какого-либо фильтра скальпер может использовать бота для размещения сотен или тысяч заказов на билеты за считанные секунды. Законные клиенты становятся жертвами, когда билеты на мероприятия распродаются через несколько минут после того, как билеты стали доступны. Затем скальперы пытаются продать билеты выше номинала. Хотя приложения CAPTCHA не предотвращают скальпирование, они действительно затрудняют скальпирование билетов в больших масштабах.
На некоторых веб-страницах есть доски объявлений или контактные формы, которые позволяют посетителям либо публиковать сообщения на сайте, либо отправлять их напрямую веб-администраторам. Чтобы предотвратить лавину спама, на многих из этих сайтов есть программа CAPTCHA для фильтрации шума. CAPTCHA не остановит того, кто намерен опубликовать грубое сообщение или оскорбить администратора, но поможет предотвратить автоматическую отправку сообщений ботами.
Наиболее распространенная форма CAPTCHA требует, чтобы посетители вводили слово или серию букв и цифр, которые приложение каким-то образом исказило. Некоторые создатели CAPTCHA придумали способ повысить ценность такого приложения: оцифровка книг. Приложение под названием reCAPTCHA использует ответы пользователей в полях CAPTCHA для проверки содержимого отсканированного листа бумаги. Поскольку компьютеры не всегда могут идентифицировать слова по цифровому сканированию, люди должны проверять, что написано на печатной странице. Тогда поисковые системы смогут искать и индексировать содержимое отсканированного документа.
Вот как это работает. Сначала администратор программы reCAPTCHA сканирует книгу в цифровом виде. Затем программа reCAPTCHA выбирает два слова из оцифрованного изображения. Приложение уже распознает одно из слов. Если посетитель вводит это слово в поле правильно, приложение считает, что второе слово, которое вводит пользователь, также является правильным. Это второе слово входит в набор слов, которые приложение будет представлять другим пользователям. Когда каждый пользователь вводит слово, приложение сравнивает слово с исходным ответом. В конце концов, приложение получает достаточно ответов, чтобы проверить слово с высокой степенью уверенности. Затем это слово может попасть в проверенный пул.
Это кажется трудоемким, но помните, что в этом случае CAPTCHA выполняет двойную функцию. Он не только проверяет содержание оцифрованной книги, но также подтверждает, что люди, заполняющие форму, на самом деле являются людьми. В свою очередь, эти люди получают доступ к услуге, которую они хотят использовать.
Далее мы рассмотрим процесс создания CAPTCHA.
Создание CAPTCHA
Первым шагом к созданию CAPTCHA является изучение различных способов обработки информации людьми и машинами. Машины следуют наборам инструкций. Если что-то выходит за рамки этих инструкций, машина не может компенсировать это. Дизайнер CAPTCHA должен учитывать это при создании теста. Например, легко создать программу, которая просматривает метаданные - информацию в Интернете, которая невидима для людей, но может читать машины. Если вы создаете визуальную CAPTCHA и метаданные изображения включают решение, ваша CAPTCHA будет сломана в кратчайшие сроки.Точно так же неразумно создавать капчу, которая каким-либо образом не искажает буквы и цифры. Неискаженный ряд символов не очень безопасен. Многие компьютерные программы могут сканировать изображение и распознавать простые формы, такие как буквы и цифры.
Один из способов создания CAPTCHA - это предварительно определить изображения и решения, которые он будет использовать. Для этого подхода требуется база данных, включающая все решения CAPTCHA, что может снизить надежность теста. По мнению экспертов Microsoft Research Кумара Челлапиллы и Патриса Симарда, у людей должна быть 80-процентная вероятность успеха при решении любой конкретной CAPTCHA, но машины должны иметь только 0,01 шанс успеха. Если спамеру удалось найти список всех решений CAPTCHA, он или она может создать приложение, которое бомбардирует CAPTCHA всеми возможными ответами при атаке методом грубой силы . Базе данных потребуется более 10 000 возможных CAPTCHA, чтобы соответствовать требованиям хорошей CAPTCHA.
Другие приложения CAPTCHA создают случайные строки букв и цифр. Вы вряд ли когда-нибудь получите одну и ту же серию дважды. Использование рандомизации исключает возможность атаки методом грубой силы - вероятность того, что бот введет правильную серию случайных букв, очень низка. Чем длиннее строка символов, тем меньше вероятность того, что боту повезет.
CAPTCHA используют разные подходы к искажению слов. Некоторые странным образом растягивают и изгибают буквы, как будто вы смотрите на слово сквозь расплавленное стекло. Другие помещают слово за штриховкой из полос, чтобы разбить форму букв. Некоторые используют разные цвета или поля из точек для достижения того же эффекта. В конце концов, цель та же самая: сделать так, чтобы компьютеру было действительно сложно понять, что находится в CAPTCHA.
Дизайнеры также могут создавать головоломки или задачи, которые легко решить людям. Некоторые CAPTCHA полагаются на распознавание образов и экстраполяцию. Например, CAPTCHA может включать в себя серию фигур и спрашивать пользователя, какая из нескольких вариантов логически будет следующей. Проблема с этим подходом заключается в том, что не все люди умеют справляться с подобными проблемами, и вероятность успеха человека-пользователя может упасть ниже 80 процентов.
Далее мы рассмотрим, как компьютеры могут взламывать CAPTCHA.
Ты слышишь меня сейчас?
Во многом звуковые CAPTCHA похожи на визуальные. В подходе к базе данных создатель CAPTCHA должен предварительно записать человека или компьютер, говорящего каждую серию символов, а затем сопоставить их с правильным решением. При рандомизированном подходе создатель предварительно записывает каждый символ индивидуально, а приложение объединяет символы в случайную цепочку для создания CAPTCHA.
Нарушение CAPTCHA

Gimpy CAPTCHA отображает 10 слов, но вам нужно правильно ввести только три, чтобы пройти тест.
Сложность взлома CAPTCHA заключается не в том, чтобы понять, что говорится в сообщении - в конце концов, у людей должно быть не менее 80 процентов успеха. Действительно сложная задача - научить компьютер обрабатывать информацию аналогично тому, как думают люди. Во многих случаях люди, взламывающие CAPTCHA, сосредотачиваются не на том, чтобы сделать компьютеры умнее, а на упрощении проблемы, создаваемой CAPTCHA.
Предположим, вы защитили онлайн-форму с помощью CAPTCHA, отображающего английские слова. Приложение слегка искажает шрифт, непредсказуемо растягивая и изгибая буквы. Кроме того, CAPTCHA включает случайно сгенерированный фон за словом.
Программист, желающий взломать эту CAPTCHA, может подойти к проблеме поэтапно. Ему или ей нужно будет написать алгоритм - набор инструкций, которые заставят машину выполнить определенную серию шагов. В этом сценарии одним из шагов может быть преобразование изображения в оттенки серого. Это означает, что приложение удаляет весь цвет из изображения, убирая один из уровней запутывания, используемых CAPTCHA.
Затем алгоритм может приказать компьютеру обнаружить закономерности на черно-белом изображении. Программа сравнивает каждый образец с обычной буквой в поисках совпадений. Если программа может сопоставить только несколько букв, она может перекрестно ссылаться на эти буквы с базой данных английских слов. Затем он вставлял вероятных кандидатов в поле отправки. Такой подход может быть удивительно эффективным. Он может не работать в 100% случаев, но может работать достаточно часто, чтобы приносить пользу спамерам.
А как насчет более сложных CAPTCHA? Gimpy CAPTCHA , отображает 10 английских слов с Warped шрифтов через нерегулярную фоне. CAPTCHA объединяет слова в пары, и слова каждой пары перекрывают друг друга. Пользователи должны ввести три правильных слова, чтобы двигаться дальше. Насколько надежен такой подход?
Как оказалось, с правильным алгоритмом взлома CAPTCHA это не очень надежно. Грег Мори и Джитендра Малик опубликовали статью, в которой подробно описывают свой подход к взлому версии CAPTCHA для Gimpy. Одна вещь, которая им помогла, заключалась в том, что подход Gimpy использует реальные слова, а не случайные строки букв и цифр. Помня об этом, Мори и Малик разработали алгоритм, который пытался идентифицировать слова, исследуя начало и конец строки букв. Они также использовали словарь Gimpy на 500 слов.
Мори и Малик провели серию тестов, используя свой алгоритм. Они обнаружили, что их алгоритм может правильно определять слова в Gimpy CAPTCHA в 33% случаев . Хотя это далеко не идеально, но также важно. Спамеры могут позволить себе только одну треть своих попыток, если они настроят ботов для взлома CAPTCHA несколько сотен раз в минуту.
Вы могли подумать, что изобретатели CAPTCHA будут расстроены тем, что их тяжелый труд разрывается хакерами, но ошиблись. Узнайте, почему, в следующем разделе.
Электронные уши
Аудио CAPTCHA также не является надежным. Весной 2008 года появились сообщения о том, что хакеры придумали способ обойти звуковую систему CAPTCHA Google. Чтобы взломать звуковую CAPTCHA, вы должны создать библиотеку звуков, представляющих каждый символ в базе данных CAPTCHA. Имейте в виду, что в зависимости от искажения для одного и того же персонажа может быть несколько звуков. После классификации каждого звука спамер использует разновидность программного обеспечения для распознавания голоса, чтобы интерпретировать звуковой CAPTCHA.
CAPTCHA и искусственный интеллект

Хакеры нашли способы научить компьютеры распознавать текст в EZ-Gimpy CAPTCHA.
Луис фон Ан из Университета Карнеги-Меллона - один из изобретателей CAPTCHA. В лекции 2006 года фон Ан рассказал о взаимосвязи между такими вещами, как CAPTCHA, и областью искусственного интеллекта (AI). Поскольку CAPTCHA - это барьер между спамерами или хакерами и их целью, эти люди посвятили время и силы взлому CAPTCHA. Их успех означает, что машины становятся все более совершенными. Каждый раз, когда кто-то выясняет, как научить машину побеждать CAPTCHA, мы на шаг приближаемся к искусственному интеллекту.
По мере того, как люди находят новые способы обойти CAPTCHA, компьютерные ученые, такие как фон Ан, разрабатывают CAPTCHA, которые решают другие проблемы в области ИИ. Шаг назад для CAPTCHA - это еще шаг вперед для ИИ - каждое поражение - это тоже победа.
Но как насчет веб-администраторов? Возможно, они не сочтут философию фон Ана столь же привлекательной. С их точки зрения, им все еще предстоит иметь дело с серьезной проблемой - спамерами и хакерами. Люди, которые поддерживают веб-сайты или создают онлайн-опросы, должны знать, что некоторые системы CAPTCHA больше не работают. Важно провести небольшое исследование, чтобы выяснить, какие приложения CAPTCHA по-прежнему надежны. И не менее важно быть в курсе событий по этому поводу. Если одна из систем CAPTCHA выйдет из строя, администратору может потребоваться удалить код со своего сайта и заменить его другой версией.
Что касается дизайнеров CAPTCHA, они должны идти по тонкой грани. По мере того, как компьютеры становятся все более сложными, методы тестирования также должны развиваться. Но если тест дойдет до такой степени, что люди больше не смогут решать CAPTCHA с приличным успехом, система в целом выйдет из строя. Ответ может не включать искажение или искажение текста - пользователям может потребоваться решить математическое уравнение или ответить на вопросы о небольшом рассказе. По мере усложнения этих тестов возникает риск потери интереса пользователей. Сколько людей по-прежнему захотят отправить ответ на доску сообщений, если им сначала нужно решить квадратное уравнение?
В 2014 году Google (которая приобрела reCAPTCHA в 2009 году) начала отказываться от классической службы. Вместо этого он попросил вас установить флажок со словами «Я не робот». Это называлось No CAPTCHA. В 2017 году Google объявил, что избавляется от CAPTCHA. Вместо этого служба будет полагаться на такие методы, как наблюдение за перемещением указателя на экране или анализ ваших привычек просмотра, чтобы определить, являетесь ли вы человеком или роботом. Это называется невидимой reCAPTCHA. Если вы покажетесь подозрительным (возможно, вы на самом деле робот), вы увидите одну из старых задач reCAPTCHA, которую необходимо решить в качестве дополнительной проверки.