Как правильно написать капчу?
Для того чтобы в системе интернет было меньше мошенников и различного рода недобросовестных пользователей, существуют разные системы защиты, одной из которых является запрос – расшифровать искаженный код и написать его в пустой строке, то есть, вам необходимо ввести, так называемую, капчу.
Ничего сложного и затруднительного в данном процессе нет, написание такого кода у вас займет не более нескольких секунд, поэтому слишком много времени на данного рода проверке, вы не потеряете.
Нужно также отметить, что такая система защиты является достаточно надежной, но все же имеются варианты ее взлома, то есть, можно сделать так, чтобы капча вводилась автоматически, то есть, распознавал ее робот, в данном случае программа, а пользователь продолжал производить различные процессы без отвлекания на распознавание и написание капч.
Если вы типичный пользователь и не замышляете ничего запрещенного, тогда вам не часто будут попадаться такие капчи, а значит, вам не потребуется программа для взлома данной системы защиты.
Вам же не сложно будет уделить раз в день, к примеру, несколько секунд, для распознавания такого кода?
Такие программы пользуются популярностью среди тех, кто, к примеру, зарабатывает на установлении большого количества лайков в социальных сетях или же, к примеру, в процессе набора большого количества людей в группу. Получается, что написать код вас система просит в том случае, если сомневается в том, что данный процесс производится пользователем, а не автоматической программой. Когда вы вводите капчу, вы подтверждаете, что вы простой пользователь, а не робот.
Заработок онлайн на вводе капчиВсё, что вам нужно — это правильно ввести текст с картинки (с капчи).
Вы получаете деньги за каждый ввод капчи.
Как писать обычную и сложную капчу
Итак, обычная капча – это окно, в котором вверху находится искаженное изображение, чаще всего символы: набор букв и цифр, а внизу пустая строка, куда вы должны будете вписать расшифрованный код. Как видите, ничего сложного в данном процессе нет.
Пользователь должен знать, что существуют капчи разных видов:
Рассмотрим три последних варианта, они являются сложнее, чем другие вышеперечисленные капчи. Написать код в случае с капчей-картинкой не получится, потому, как здесь не нужно капчу писать, ее нужно поворачивать, чтобы картинка выглядела логично, то есть, была правильно поставленная. Если вам высветилась капча с примером, то ее просто нужно решить, то есть, в пустую строку, вы должны вбить правильный ответ, а не переписывать сам пример в графу.
Что касается сложной капчи, то здесь вам необходимо будет выполнить задание. Обычно написать в строку, необходимо какой-то ответ. Вам может быть дана ссылка, по которой вы должны будете перейти и найти, к примеру, телефон какой-то компании. Находите и вписываете его в строку, капчу. Это займет не больше минуты, к тому же, такие капчи попадаются очень редко, чаще всего они есть на серьезных коммерческих сайтах, куда просто так не зайдешь.
Смотрите видео – Как можно писать сложную японскую капчу
Автоматические программы для обхода капч
Сегодня практически на каждом сайте есть рассматриваемая система защиты. Забавно то, что создатели сайтов считают, что сегодня можно иметь такую защиту, и устанавливают ее именно по этой причине, но не по причине наличия желания обезопасить созданный ими ресурс. Обычный пользователь все чаще начинает сталкиваться с запросами в виде капч, и в последствие, это становится раздражительным действием. Именно поэтому многие пользователи ищут способы не попадать на капчи, чтобы автоматическая программа распознавала их.
Существуют программы, которые могут избавить вас от этих надоедливых кодов. Самыми востребованными считаются бесплатные программы, скачать и установить которые может каждый, но самыми эффективными являются новейшие программы распознавания капч, за установку которых пользователю придется заплатить.
Как создать пассивный доход за 4 дня ?
Марафон на котором ? вы создадите пассивный доход в прямом эфире с нуля и узнаете конкретные стратегии инвестирования в квартиры, дома, гаражи, автомобили и даже доходные сайты
Разработка CAPTCHA своими руками
Сегодня, благодаря господам спам-ботам и иже с ними, в сети практически невозможно что-либо сделать без ввода символов со сгенерированного изображения — CAPTCHA (далее — капча). Фактически, это предотвращает выполнение какого-либо скрипта без участия человека, и в этом топике я расскажу, как такую капчу создать средствами PHP, а так же упомяну очень полезный топик другого хабраюзера, который пригодится при разработке изображения-капчи.
Сразу же предупреждаю, что топик может быть интересен только начинающим разработчикам, так как по сути я изобретаю велосипед, но зато своими руками.
Основные правила
При разработке капчи нужно обязательно соблюдать несколько основных правил:
1. Капча создана для людей
Она должна сходу читаться, но не в ущерб стойкости к распознаванию. Очень наглядный пример капчи, не соблюдающей это правило — изображение справа.
2. Генератор капчи должен быть четко ограничен в используемых символах
Наглядный пример — изображение в начале топика. Конечно, reCAPTCHA — чудесное изобретение, но порой она предлагает ввести символы, которые и в charmap найти сложно. Кстати, когда речь идет о капче с использованием кириллических символов — ни в коем случае генератор не должен использовать букву «ё». Лично я знаю много людей, у которых на
(тильда / ё) повешено какое-то действие в системе.
3. Капча должна быть стойкой к распознаванию
… но не в ущерб читаемости. Вообще, этот пункт — самый сложный во всей разработке. Необходимо найти золотую середину — капча сходу читается людьми и вообще (насколько возможно) не читается ботами. Так же необходимо учитывать специфику ресурса, на котором планируется использовать капчу, и его контингента. Если речь идет о, допустим, форуме читающих домохозяек за сорок, то на стойкость капчи можно плюнуть с высокой башни — никому он не упрется. Если речь идет о, например, имейджборде, то тут нужна капча а-ля вырвиглаз.
Проектирование
В качестве теоретического объекта, для которого мы будем делать капчу, выступит сферический форум в вакууме, с умеренно агрессивными, умеренно умными и вообще умеренными пользователями. В разработке такой капчи нам поможет очень полезный топик от хабраюзера Pastafarianist. А именно я обращу внимание на перечисленные недостатки и достоинства взятых им капчей.
Итак, по порядку перечислим, что же мы можем использовать:
1. В изображении должно использоваться хотя бы несколько цветов. Желательно всегда разные
Изображение выше — пример того, как это выглядит в действии. На самом деле, это не очень надежный вариант, так как текст с фоном очень контрастирует. Разберемся с цветами позже.
2. Должен присутствовать шум
Прописная истина. Практически в любой капче можно встретить шум, который чаще всего выражается во множестве линий, пересекающих текст, разной длины и под разным углом.
3. Буквы должны находиться на небольшом расстоянии друг от друга
Тут главное не перестараться. Чрезмерное сближение символов приведет к сильному ухудшению читаемости человеком. На примере выше можно заметить, что буквы слипаются, это создает препятствие для бота при сегментации изображения.
4. Размеры символов должны быть разными
Если применять этот трюк, то надо помнить, что препятствие фактически выражается в том, что для сегментации капчи бот не сможет использовать постоянную матрицу. Поэтому если и делать размер символов разным, то обязательно для каждого символа размер должен быть случайным, динамическим.
5. Отвратительный шрифт
Очень полезный способ. Засечки, курсив, стилизация — отличные подводные камни для бота. Так же в сочетании с шумом в виде линий очень хорошо будет смотреться тонкий шрифт. Если абстрагироваться от первого правила генерации капчи, то можно использовать множество шрифтов сразу, к примеру свой шрифт для каждого символа.
6. Символы под случайным углом
Весьма действенный способ оградиться от ботов. Опять же, сегментация будет усложнена, хоть и не значительно. Лучше всего выбрать небольшой диапазон угла, иначе же читаемость сильно испортится (буквы будут наплывать друг на друга).
7. Динамические искажения
Ничего ужаснее человечество еще не придумало. Искажения в капче зачастую очень сильно снижают читаемость человеком. Разумеется, это достаточно эффективно против ботов, но это так же эффективно и против людей. Главное — не перестараться, искажения должны быть незначительными.
Итак, что же мы сделаем:
— Контрастный фон, с шумом
— Линии за текстом, линии на тексте
— Текст в случайном положении
— Количество символов будет случайным, от 4 до 7
— Размер каждого символа будет случайным
— Цвет текста каждый раз будет случайным
— Символы будут слегка прикасаться
— Каждый символ будет под случайным небольшим углом
Разработка
Определимся с целью:
— Генерация шума
— Генерация текста
— Форма с возможностью обновления капчи
— Обработчик введенных данных
По мере написания статьи понял, что искажения в данном случае абсолютно неуместны. Для тех, кому они все же нужны — в конце топика ссылка на урок по созданию искажений.
Пишем форму
Тут все предельно ясно, но на всякий случай я откомментировал некоторые строчки. Кстати, обратите внимание, я не установил параметр maxlenght у поля ввода. В большинстве случаев, разработчики устанавливают этот параметр, указывая размер капчи. Во-первых это нехилая такая подсказка для бота, во-вторых у нас количество символов будет динамическим. Все, интерфейс мы написали, пора приступать к созданию скрипта генерации
Пишем генератор кода капчи (random.php)
Тут все ограничивается только вашим воображением. Как-то я видел иной способ — выбиралась текущая минута, час, месяц, все это перемножалось, из этого выбирались 10 случайных символов, дважды извлекался MD5-хеш, из него извлекались 6 случайных символов и затем все это еще и перемешивалось. Кстати, обратите внимание на выбранные мною символы — я исключил такие как i, l, 1 и 0, o, c, из-за того, что они слишком похожи друг на друга, в некоторых ситуациях пользователь может ошибиться. Генератор я назвал random.php (далее он будет запрашиваться в других скриптах).
Пишем генератор изображения (captcha.php)
Весь код максимально закомментирован. Для проверки введенной капчи обработчиков вносим ее хэш в куки. Для выбора шрифта и фона я сделал массивы, что бы можно было засунуть туда десяток шрифтов и десяток фонов, каждый раз выбираться будут случайные. Шрифт выбрал Droid Sans, он тонкий и среди шума плохо заметен. Кстати, в данном случае я выбрал ужасный, отвратительный и контрастный фон, демонстрация будет в конце топика. К моему удивлению, на читаемость человеком это не повлияло, шрифт достаточно хорошо выделяется, не смотря на то, что цвет шрифта выбирается из случайного пикселя на фоне.
Пишем обработчик (go.php)
Тут все предельно ясно. Берем куки, записанную ранее в captcha.php, берем введенный код, точнее его хэш и сравниваем. Внимание! Если планируете пользоваться этим кодом, не забудьте изменить алгоритм проверки.
Результат
Результат получился весьма неплохим, полностью оправдав мои ожидания (прошу, пожалуйста, заметить, что я не ставил себе цель сделать непробиваемую капчу). Протестировать на стойкость его можно вот тут (надеюсь, мой сервак не упадет под хабраэффектом).
На самом деле, мой код — это лишь шаблон, над которым вы можете издеваться как угодно. А еще на самом деле это не нужно — есть reCaptcha, но лично мне доставило удовольствие делать этот скрипт, пока делал прочитал гору документации, надеюсь, что кто-нибудь подчерпнет знания из моего топика 🙂
Footer
Как и обещал, вот очень полезный код для искажения текста, если кому пригодится.
Не кидайтесь помидорами, пожалуйста 🙂 Это мой первый технический топик на хабре.
И да, я не имею понятия, каким образом работают современные капчи, я просто и не искал никакой информации на эту тему. Если мои методы кажутся вам индийскими — прошу немедленно написать об этом в ЛС / комментарии, я с удовольствием почитаю 🙂 Из недостатков моего метода я вижу только то, что если в браузере не включены куки, то через эту капчу не пройти.
Капча: что это такое простыми словами
Несомненно, что все пользователи Глобальной сети сталкивались с такой насущной проблемой, но не каждый знает о том, что это и есть так называемая капча. Так же не многим известно, что на английском CAPTCHA – это аббревиатура, которая в переводе на русский язык значит: полностью автоматизированный и общедоступный тест Тьюринга, чтобы отличить компьютер от человека.
Что такое капча
Из расшифрованной выше аббревиатуры уже можно понять, что такое капча, простыми словами –она определяет, является ли пользователь реальным или спам-роботом. Так, возможно, на некоторых сайтах, чтобы узнать цену СЕО-продвижения придётся для начала ввести проверочный код. Капча генерирует сочетания из различных букв, цифр и знаков, полагаясь на способность человека определять, какими на самом деле символами они являются.
Чтобы подтвердить цифровую транзакцию, используя систему капчи, пользователю предоставляется искаженное слово, обычно помещаемое поверх искаженного фона. Пользователь должен ввести слово в поле, чтобы завершить процесс. Компьютерам трудно декодировать искаженные слова, в то время как люди могут легко расшифровать текст.
Некоторые капчи теперь используют картинки вместо слов, где пользователю предоставляют серию картинок и спрашивают, что является общим элементом среди всех картинок. Вводя этот общий элемент, пользователь проверяет транзакцию, и компьютер знает, что имеет дело с человеком, а не с ботом.
Что такое капча при регистрации
Многие задаются вопросом, что такое капча при регистрации и зачем она нужна. Да, зачастую, мы можем встретить капчу при заполнении регистрационных форм. Например, Вы думаете о том, как найти человека по почте, для этого нужно зарегистрироваться. Это вполне нормально и безобидно. В таких случаях капча направлена на борьбу с ботами, которые создают множество учётных записей для рассылки спама.
На веб-сайтах по продаже билетов, также используется капча, чтобы не допустить чрезмерного приобретения билетов на большие мероприятия скальперами (сторонниками скоростной торговли/спекуляции). Это позволяет законопослушным клиентам покупать билеты справедливо и не дает скальперам размещать тысячи заказов.
Наконец, веб-страницы или блоги, содержащие доски объявлений, например, о стоимости разработки сайта-визитки, или контактные формы, используют капчу для предотвращения спам-сообщений или комментариев. То есть помогает избежать автоматическую публикацию сообщений ботами.
Неверная капча: что это такое
Рассмотрим, что такое неверная капча и чем она грозит. Неверная капча означает то, что при регистрации или при совершении любой другой операции Вы неправильно ввели предложенные Вам символы с картинки.
Если Вы допустили ошибку, придётся сделать это заново, но, конечно же, символы будут уже совсем другие. С такой проблемой пользователи сталкиваются очень часто, так как разобрать трудночитаемые искажённые символы достаточно затруднительно.
К сожалению, поскольку технологии и хакеры становятся более продвинутыми, их мошенническая тактика тоже. Чтобы полностью разобраться в теме и огородить себя от нежелательных последствий изучите, что такое спам в Интернете и чем он грозит. В то время, как сама система капчи безопасна, киберпреступники начали включать её в свои ложные или мошеннические веб-сайты, чтобы совершать свои действия более правдоподобно.
С помощью интригующих сообщений в ленте злоумышленники могут обмануть пользователей, например: «Вся страна в шоке, предсказания о конце света оказались..». После того, как Вы нажмете на эту запись, нужно будет ввести поддельный проверочный код и перейти на целевую страницу. В это время вирус захватит Ваш аккаунт.
Сегодня мы разобрались в том, что такое капча и для чего она нужна. Узнать, как от неё избавиться можно на примере нашего рассказа о том, как убрать капчу в Яндекс Вордстат и будет ли это эффективно. Будьте внимательны и не попадайтесь на уловки интернет-мошенников.
CAPTCHA (капча) — что это такое и для чего используется
Здравствуйте, уважаемые читатели блога KtoNaNovenkogo.ru. Многие из вас только начиная свое знакомство с интернетом, кроме составляющих учетной записи (ник и логин\пароль), при регистрации также сталкиваются еще и с такой вещью, как капча.
Например, вас могли попросить ввести в поле те символы, что вы видите на расположенной выше картинке, или выполнить простейшее арифметическое действие. Иногда просят указать те картинки, где изображено что-то определенное. Все эти ребусы называют одним общим словом — CAPTCHA.
Но что это такое и зачем нужно? Слово капча образовано от английского исходника, который представляет из себя довольно сложную аббревиатуру. Приводить ее расшифровку я, думаю не стоит. Просто скажу в двух словах, что CAPTCHA — это специальный тест, призванный отличить действия человека от действий компьютера (программы, скрита). Другими словами, эта штука проводит верификацию пользователя на предмет его человечности.
Зачем это может понадобиться? Какие виды капч бывают? Исчезнут ли они когда-нибудь, чтобы не усложнять жизнь пользователям интернета? На эти вопросы я как раз и постараюсь ответить в этой заметке.
Капча — это защита от автоматического спама
В интернете существует очень много способов заработать себе на хлеб насущный. Многие из них являются легальными, а многие нет. Как раз к последним относятся взломы сайтов, рассылка спам-сообщений по блогам и форумам, массовая регистрация аккаунтов на различных сервисах и т.п.
Все эти способы заработка на первый взгляд кажутся малоэффективными (копеечными), но не торопитесь с выводами. Если рассылать спам, ломать сайты и регистрироваться где ни попадя будет не реальный человек, а программа, которая никогда не устанет, то это в корне меняет расклад. А если представить, что запускается она на тысячах чужих взломанных компьютерах (ресурсов которых не жалко), то заработать можно таким образом очень большие деньги.
Но от всего этого автоматического спама (когда грязную работу выполняет безустанная программа) уже довольно давно придумали защиту. Это капча! Разработали эту концепцию уже давно, как вариант реализации теста Тьюринга, способного достоверно определить кто именно проходит данный тест — человек или машина.
В идеале ребус заданный CAPTCHA с легкостью должен разгадывать практически любой человек, а вот компьютер на этом тесте должен забуксовать или вообще спасовать перед неразрешимой задачей. Так ли это на самом деле? Давайте посмотрим. Например, довольно сложно будет программе решить показанную на рисунке задачку, не правда ли? А человеку это будет совсем не сложно.
Однако, чаще всего используют буквенную или цифровую капчу, на которой надписи изображены не четко, а также присутствую различные помехи, которые как бы человеку особо задачу не усложняют (на самом деле все же усложняют, а иногда и до нервного срыва доводят), а вот автоматические системы распознавания текстов (есть целое направление софта, которое ориентировано на эти задачи, к примеру программы, помогающие оцифровывать книги в библиотеках) могут на этих помехах «споткнуться».
Однако и человеку доставляет мало радости разбираться где закорючка добавлена специально, а где она к букве относится. Иногда глядя на CAPTCHA, которую просят разгадать, вообще начинаешь думать — а надо ли мне здесь регистрироваться (оставлять комментарий) или ну его на фиг!
С другой стороны, «редиски» зарабатывающие описанным выше способом тоже не лыком шиты и у них на вооружении есть ряд инструментов, которые позволяют таки обойти капчу, поэтому ее и усложняют повышая тем самым ее непробиваемость.
В некоторых случаях кому-то бывает выгодно использовать человеческое распознавание капч на потоке. Этой цели например служит биржа Рукапча и сервис для заработка КолотиБабло, где все желающие могут заработать на вводе CAPTCHA, а заказы поступают от тех, кому такие распознавания нужны в больших количествах (например, с сервиса Anti Captcha).
Но несомненно, что наличие этой защиты все равно существенно снижает эффективность атак и отсекает большую часть потоков спама, льющегося в интернете нескончаемым потоком. Хотелось бы, конечно, обойтись без этих ребусов, на которых теряется часть посетителей, но не получается пока.
Можно ли упростить прохождение CAPTCHA? Оказывается да!
Хотя, безусловно, шаги в нужном направлении уже совершаются. Один из лидеров онлайн-бизнеса (вряд ли вам известная компания Google ? ) примерно год назад существенно упростила свою капчу (они ее называют reCAPTCHA), сделав ее прохождение наверное самым простым из возможных вариантов. Судите сами. Так выглядела CAPTCHA от Гугла раньше:
А так она выглядит сейчас:
Насколько проще поставить одну единственную галочку, а не разгадывать буквенный ребус и не искать в темноте нужные клавиши на клавиатуре (капчи ведь чаще всего именно английскими буквами вводятся).
В общем сделан шаг в нужном направлении, и по мере распространения именно этого вида защиты будет упрощаться жизнь пользователей интернета (лично я именно reCAPTCHA использую для защиты своих комментариев — можете сами ее опробовать прокрутив эту страниц вниз до конца).
Удачи вам! До скорых встреч на страницах блога KtoNaNovenkogo.ru
Эта статья относится к рубрикам:
Комментарии и отзывы (14)
Здравствуйте. все пишут, пишут, все одно и то же. А я замучилась с этой рекапчёй((( видно везде кроме формы регистрации, как на joomla 3.4 так и на joomla 1.0, ну ни в какую в форме авторизации не появляется.Я и Рекапчу ставила, и Кей Капчу. Результат один и тот же. Последнюю joomla 3 вообще не видит. Везде настроено, ключи вписаны. Может что то упускаю? Подскажите плиз.
У меня вообще такая каптча вышла «два=18» не пойму (((
Здрасти просто хотела пройти качу вот и написала ). Но статья конечно интересная ))
здравствуйте при регистрации на фри биткоин. мой емайл начинается с буквы-а-но сервис не согласен регистрировать и указал что первоначальная буква-а должна быть удалена.так и пришлось регистрироваться с budnev-вместо-abudnev.,будет ли действительно?
Чисто чтоб посмотреть капчу
Спасибо за материал!
А в чем проблема для компьютерной программы поставить галочку? Хотя такой вид капчи мне нравится куда больше, чем кривые серые буквы на сером же фоне. Хорошо бы и Яндексу упростить свои капчи, а то тратить время на их разгадывание, при поиске информации, совсем не хочется.
Одно время я даже зарабатывала деньги на вводе каптч. Состояние не сколотишь, но на карманные расходы или пополняшку вполне хватало. Бывают оплаты как в долларах, так и рублях).
Алексей: это Вы видите галочку, потому что Вас не заподозрили в нечеловечности (Ваш ip не в черном списке, нет признаков бота). А вот бот будет вынужден решать шарады со светофорами, переходами, гидрантами и т.п. вещами. Для него это будет нереально сложная задача.