Меню Рубрики

Установка ввод капчи на сайте

PROG-TIME

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

Первым делом вам нужно зарегистрировать google почту и авторизоваться.

Далее переходим по данной ссылке https://www.google.com/recaptcha/intro/v3.html и нажимаем на кнопку “Admin console”

Если вы впервые создаете капчу то у вас появится окно с создание капчи. Здесь вам нужно заполнить поля.

В первом поле вы указываете название по которому вы будете определять нужную капчу. В это поле можно прописать свое название, так как это не на что не влияет.

Далее вы выбираете тип капчи. Сегодня мы рассматриваем капчу версии 3, поэтому выбирайте её.

После это прописываем доменные имена. Если вы пользуетесь локальным сервером, то прописывайте localhost или название папки, если это OpenServer.

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

После того как вы прописали домены, вы принимаете условия использования reCaptcha и нажимаете на кнопку отправить.

После этого вы попадаете на страницу с ключами. Вам нужно скопировать данные ключи.

Нажав на кнопку “Перейти в google аналитику” вы попадаете на страницу статистики, где показаны все выполнения и блокировки представленной капчи.

На данной странице вы можете посмотреть статистику по каждой капче, добавить новую капчу, изменить старую.

Код для Google reCaptcha

И так правильнее было бы разбить код по файлам, но для наглядности я занесу весь код в один файл.

Давайте начнем разбор с HTML. Здесь я создал простую форму которая состоит из двух полей и кнопки. Каждому полю необходимо прописать значение для атрибута name . Одно из полей мы будем использовать для капчи, поэтому зададим ему специальный идентификатор – g-recaptcha-response .

Данные из формы будут отправляться методом POST , обработку я буду проводить в этом же файле, поэтому в атрибуте action ставлю значение / .

JavaScript

Забегая немного в перед скажу… в самом верху я добавил ключи от капчи в константы, чтобы с ними было проще работать.

Ниже я прописываю JavaScript код. Здесь мы подключаем API от Google и прописываем основной скрипт который подключает капчу. Здесь в качестве параметра нужно передать значение ключа который вы получали при создании капчи. Вы можете передать значение целиком или как я передать значение из константы в которой находится данный ключ.

Раскомментируйте функцию console.log(token) , чтобы увидеть токен в консоли. Данный токен мы будем передавать в качестве значения для поля #g-recaptcha-response .

Теперь рассмотрим PHP. Вначале я занес ключи в константы, чтобы с ними было удобнее работать(одну из них я уже прописывал в js скрипте).

Ниже мы прописываем проверку что массив POST не пустой и данные из формы записываются.

Далее мы создаем функцию которая будет делать запрос на google сервис и возвращать нам данные этого запроса.

После этого мы записываем работу функции в переменную, чтобы с ней было удобнее работать.

В документации написано, что если значение параметра score ниже 0.5 то скорее всего это бот, а если выше то это человек. Исходя из этого мы создаем данное условия и плюсом проверяем что проверка прошла успешно.

источник

Капча как инструмент киберзащиты

6 марта 2018 года. Опубликовано в разделах: Интернет-маркетинг для новичков. 7411

Наверное, каждый пользователь интернета хотя бы раз столкнулся с вводом проверки капчи на форме обратной связи. Но что такое капчи для сайтов? Что стоит за этими затейливыми картинками и значками? Давайте разбираться!

Как известно, слово CAPTCHA пишется большими буквами, ведь это не просто термин, а целая аббревиатура из английских слов. По-русски она звучит как «полностью автоматизированный открытый тест Тьюринга для распознавания компьютеров и людей». Название говорит само за себя: данный инструмент киберзащиты дает возможность отличить человека от компьютера, предупреждая тем самым, многочисленные атаки на интернет-страницы.

Что же представляет собой тест Тьюринга? Обратимся к истории. В 1950 г. английский логик Алан Тьюринг провел интересный опыт, в ходе которого человек (судья) общался с компьютером и другим человеком посредством текстовой переписки. Считалось, что компьютер прошел тест в том случае, если судья не мог определить, кто является его оппонентом в данный момент времени.

Читайте также:  Установка передних динамиков логан 2014

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

Зачем нужна капча

Мир современного интернета жесток и коварен. Множество сайтов регулярно подвергаются вредоносным автоматизированным атакам. Функцией капчи в данной ситуации является обеспечение безопасности ресурса посредством блокировки этих атак.

Помимо своего основного назначения, капча несет и дополнительную полезную функцию, а именно распознавание отсканированных и печатных текстов. При работе с типографским текстом программы-распознаватели (типа Adobe FineReader) лишь частично справляются с этой задачей. Что же касается рукописей, то их распознавание почти нулевое. Так вот, разработчики капчи собрали целую базу нераспознанных символьных конструкций. Эти конструкции стали отображаться в формате картинок капчи, которая предлагала пользователям ввести в текстовое поле увиденные символы. Такой прием позволил наполнить базу нераспознанных слов вариантами их расшифровки.

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

Виды капчи

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

  • Графическая капча. Представляет собой набор символов, которые были искажены и пропущены сквозь шумовые фильтры.
    В частности, так выглядит Яндекс-капча для сайта.

Ее особенность заключается в том, что кодовое слово предлагается на кириллице.

  • Логическая капча. Позволяет определить наличие человеческой логики. К таким задачам относятся:
    • Арифметические операции.
    • Поиск объекта по заданному критерию (например, на изображении лесного пейзажа отметить хвойные деревья).
    • Перестановка символов (например, написать наоборот предложенное слово).
  • Поведенческая капча. В этом случае пользователю предлагается совершить указанное действие:
    • Перемещение бегунка в заданное положение.
    • Поворот картинки на заданный градус.
    • Составление пазла.

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

  • Звуковая капча. Предназначена для слепых или слабовидящих пользователей. Ее особенность в том, что все задания озвучиваются в виде голосовых сообщений.

Встречаются и комбинированные виды капчи. Так работа Гугл-капчи для сайта (reCAPCHA) начинается с поведенческого задания, предлагающего поставить галочку «Я не робот».

В случае успешного результата система дает логическое задание, предлагая отметить на фото заданные элементы.

Как поставить капчу на сайт

Создание капчи для сайта html — дело трудоемкое и требует хороших знаний php и JS. Можно встроить в сайт готовую капчу, однако и это занятие требует некоторых навыков программирования. Среди сервисов, предлагающих готовые решения, наиболее популярны Гугл и «Яндекс».

Подключение Гугл-капчи

Перед тем, как поставить капчу google на сайт, нужно получить два специальных ключа. Первый ключ нужен для размещения виджета в интерфейсе. Второй — для проверки на сервере правильности результата теста. Для их получения необходимо создать учетную запись google. После этого нужно пройти по ссылке https://www.google.com/recaptcha/admin#list и авторизоваться. Если вы все сделаете правильно, вам откроется панель reCAPTCHA с блоком регистрации сайта.

После ввода необходимых данных, вам откроется страница, содержащая ключи.

Помимо ключей, этот сайт содержит необходимый скрипт. Его нужно скопировать и вставить в блок head кода вашего сайта. Затем нужно вставить блок с капчей в любое выбранное место.

Подключение капчи происходит как на серверной, так и на клиентской стороне. Для клиентской части, т.е. html-документа, капча подключается в 2 этапа: добавление кода reCAPCHA в js-страницу и добавление в блок div класса «g-recaptcha». В качестве значения одного из атрибутов класса подставляется полученный ранее публичный ключ.

Итоговый код будет выглядеть примерно так:

(div )(/div)
(!обрабатываем исключительные ситуации —)
(div )(/div)

Что-же касается js-страницы, то в ее код следует внести следующие строки:

//Обратная связь
var mycap = grecaptcha.Response();
// При отправке пустой формы, готовим сообщение об ошибке
if (!mycap.length) <
$(‘#recaptchaError’).text(‘Тест не пройден’);
> else <
$(‘#mycapErr’).text(»);
>
// Если форма валидна, а количество символов капчи не нулевое, то результат посылается на серверную часть.

Читайте также:  Установка вебасто мерседес 210

if ((formaValid) && (mycap.length)) <
DataForm.append(‘g-recaptcha-response’, mycap);
.
>
grecaptcha.reset();
if ($mes) <
$(‘#mycapErr’).caption($mes);
>

Серверная часть, т.е. php-скрипт также подлежит изменениям. Для этого в файл process.php нужно внести следующие правки:

  1. Присвоить новой переменной содержимое секретного ключа.
  2. Подключить клиентскую библиотеку autoload.php.
  3. Проверить массив POST на наличие ключа g-recaptcha-response.
  4. С помощью секретного ключа создать объект класса recaptcha.
  5. В случае получения положительного результата выполнить нужные действия.
  6. В случае ошибки отправить клиенту соответствующее сообщение.

Готовый код будет выглядеть примерно так:

// Если проверка пройдена
//.
> else <
// выводим код ошибки
$myerr = $prn->getErrorCodes();
$data[‘err_prn’]=$prn;
$data[‘mes’]=’Проверка не пройдена’;
$data[‘myres’]=’err_prn’;
>
> else <
//Массив отсутствует
$data[‘my_res’]=’error’;
>

Подключение Яндекс-капчи

Система «Яндекс» также предлагает удобный сервис отслеживания спама. Этот сервис носит название «Яндекс.Чистый Веб» и включает 4 метода: обнаружение бота, получение капчи, проверку введенного ответа и обжалование результатов. Для их реализации необходимо знание PHP-функций API системы «Яндекс.Чистый Веб».

Перед тем, как установить капчу на сайт, нужно создать простой статический php-класс:

class MyYanClass
const c_d_u = ‘http://cXML-a.yand.ru/2.0/ck-s’;
const g_c_u = ‘http://cXML-a.yand.ru/2.0/g-c’;
const c_c_u = ‘http://XML-a.yand.ru/2.0/c-c’;>

Теперь займемся реализацией методов. Программный интерфейс получает запросы GET и POST и выдает ответы XML-формата. Вот так будет выглядеть простая функция передачи запроса:

function Q_XML($u, $par = array(), $p = false)

$Q_param = hp_builder_query($par);
if ($post)
<$hp_op = array( 'http' =>array ( ‘method’ => ‘POST’, ) );
$ct = st_context_create($p_op);
$cs = file_get($u, false, $c);>
else $cs = get($url.’?’.$Q_Param);
if (!$cs) return 0;
$D_XML = XMLElement($cs);
return $D_XML;>

Далее напишем алгоритм проверки на спам. Все проверяемые данные будем передавать единым массивом:

Function Poisk_spam($m_d, $r_f_d = 0)
<$r = set::Query_x(set::c_d_u, $m_d,1);
$s_d = (isset($r->caption[‘metka’]) && $r->caption[‘otmetka’] == ‘da’);
if (!$r_f_d) return $s_d;
return arr( ‘s_l’ => (ins($r->links)) ? $r->links : array() );>

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

$r= Q_x(get_captcha_url, array(‘ss’ => $ss));

И, наконец, проверка капчи осуществляется с помощью функции check_captcha_url. На вход ей передается идентификатор (id) созданной капчи. Вот как это будет выглядеть:

function my_cap($ > <$param = array( 'c' =>$id_cap, ‘v’ => $znach, ‘id’ => $id);
$rez = Q_x(check_captcha_url, $param);
return $r->ok);>

Не работает капча на сайте. Что делать?

Как правило, проблемы с капчей возникают на WordPress-сайтах. Классические тесты на таких страницах могут срабатывать некорректно. Дело в том, что работа большинства плагинов кэширования WordPress основана на серверном кэшировании. Так, для повышения скорости вызова все типовые запросы к БД хранятся на стороне сервера. Плагины WordPress хранят даже структуру блоков страницы. Такая перегруженность лишними деталями искажает работу капчи. Решается проблема просто — достаточно сменить капчу с серверной генерацией заданий на AJAX-капчу. Эта технология позволяет получать с сервера задания без перезагрузки всей страницы. По этому принципу работает новая версия Гугл-капчи — Google reCAPTCHA v2, или noCAPTCHA. Подключается она с помощью специального плагина Google Captcha (reCAPTCHA) by BestWebSoft.

Стандартная форма, созданная с помощью этого плагина будет выглядеть вот так:

источник

Как установить капчу на свой сайт

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

Немного истории

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

Термин CAPTCHA появился в 2000-м году в стенах американского университета имени Карнеги, где был представлен в виде аббревиатуры, в переводе на русский которая выглядит следующим образом: «полностью автоматизированный тест Тьюринга для различения компьютеров и людей». Естественно, что такому длинному названию было не суждено прижиться в ежедневном обиходе, чего нельзя сказать о ласковом звучании аббревиатуры, которая пришлась как нельзя кстати.

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

Читайте также:  Установка автокорректора фар ауди

Основные виды капчи

На сегодня существует огромное количеством самых разных вариаций теста Тьюринга, поскольку опытные веб-мастера, владеющие серверным языком программирования PHP, создают свои собственные самогенерируемые капчи, стараясь добавить тем самым «изюминку» своим проектам. Именно по этой причине мы представим вашему вниманию лишь 5 видов капчей, которые встречаются на подавляющем большинстве веб-ресурсов:

reCAPTCHA

На данный момент является самым распространённым видом капчи, через которую ежедневно проходят 700 миллионов юзеров. Это продукт Google, который включает в себя ещё и дополнительные функции помимо базовой борьбы с ботами: оцифровывает тексты книг, распознаёт локации, предметы и названия улиц для Google.Maps через «руки» пользователей. Благодаря такому негласному «мировому сотрудничеству» гостей интернета, в день гугл умудряется оцифровывать порядка 100 млн слов, что эквивалентно 2,5 млн книг в год.

yaCAPTCHA

Это один из самых первых вариантов теста Тьюринга, который «ворвался» в массы. Данный вид капчи хоть и является «пожилым», но эффективности в своём назначении не утратил. Более 15-ти лет yaCAPTCHA доблестно охраняет страницы регистрации на форумах и сайтах от ботов. Конечно, не всем пользователям удаётся распознать сгенерированные буквы с первого раза, но из наиболее изощрённых вариантов капчи, этот является самым «гуманным». Представляется вниманию юзеров на ненавязчивом фоне с искажёнными буквами, без шумов и прочих тонкостей – ничего лишнего.

Anti-Spam Image

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

CheckBot

Довольно простой вариант капчи для сайта, плагин которой устанавливается всего в один клик и без труда поддаётся настройке. Представляет собой несколько изображений «человечков» в разных позах, из которых нужно выбрать какое-то конкретное. Алгоритм капчи ценит и уважает нервную систему своих пользователей точно также, как и дизайны сайтов, на которых располагается – оформление универсально. Выбрать «человечка» в определённой позе для живого юзера является пустяковой задачей, в то время как бот окажется абсолютно бессильным.

Math Comment Spam Protection

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

Как установить капчу на свой сайт?

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

Для тех веб-мастеров, код сайта и почтовых форм которых прописан в блокноте, прилагаем гайд о том, как добавить капчу от гугла на свой сайт:

1. Нам понадобятся две ссылки: reCAPTCHA в гугле и, непосредственно, сам проект.

2. Для начала нам нужен серийный ключ от Google, ради которого переходим по первой ссылке и регистрируемся, после чего привязываем сайт.

3. Далее влезаем в HTML код, где ищем , перед которым размещаем небольшой java-скрипт:

4. Находим интересующую вас форму и вписываем код следующего содержания:

Очевидно, что на месте нулей должен располагаться серийный ключ, полученный после прохождения регистрации и привязки. В конечном итоге, в форме «комментария» должно получиться нечто подобное:

5. И всё. Поздравляю, вы добавили reCAPTCHA в форму комментария для вашего сайта! Теперь вы можете её протестировать и настроить под себя, покопавшись в коде самостоятельно.

Если же вы хотите добавить капчу на PHP-страницу, то вам необходимо пройти через ещё один пункт.

источник

Добавить комментарий

Adblock
detector