Что такое капча

Настройка 2Captcha

2Captcha требует API ключ, который выдается при регистрации. Вам также потребуется какое-то количество средств, потому что, не всё в жизни бесплатно. И просто ради смеха, конечно же, вам понадобиться пройти КАПЧУ.


2Captcha’s API работает через двухступенчатый процесс, где вы отправляете данные КАПЧИ и получаете результат после возврата ID запроса. Поскольку мы имеем дело с reCaptcha v2, нам нужно будет отправить публичный ключ Reddit, о котором говорилось ранее. Нам также нужно убедиться, что мы выбрали метод userrecaptcha и отправляем URL страницы, на которой расположена реКАПЧА.

После того как вы сделали этот запрос и получили обратно идентификатор запроса, вам нужно запросить URL «res.php», используя ваши ключ API и идентификатор запроса, чтобы получить ответ.

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

Для reCaptcha V2 время нахождения решения может различаться – минимум 15 секунд, максимум – 45. Ниже показан пример механизма опроса, но в этот раз простого запроса по URL, который может быть интегрирован в ваше приложение так, как вам будет удобно.

Как только у вас есть данные ответа, вам нужно вставить результат в скрытое текстовое поле g-recaptcha-response в форме регистрации Reddit. Это не так просто, как использование метода .type() библиотеки Puppeteer, так как элемент невидим и не может получить фокус ввода. Можно сделать его видимым и затем использовать .type(), или же использовать JavaScript, чтобы внедрить значение на страницу. Для добавления JavaScript на страницу, при использовании Puppeteer, у нас есть метод .evaluate(), который принимает либо функцию, либо строку (при передаче функции она просто преобразуется в строку с помощью метода .toString()), и запускает ее в контексте страницы.

После внедрения этого значения у нас все готово для завершения регистрации. Это действительно так просто.

Полный скрипт доступен ниже, если вам захочется поэкспериментировать с Puppeteer и/или 2Captcha.

Виды капчи

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

  1. Буквенная или цифровая – это сложная капча, поскольку символы написаны в нечитабельном виде: буквы/цифры наложены друг на друга или же написаны так криво, что их практически не разобрать.
  2. Картинки – здесь пользователю следует, к примеру, из девяти изображений выбрать те, на которых изображены рекламные щиты, машины, дорожные знаки. Это простой тест на определение «человечности» пользователя, ведь нужно всего-навсего кликнуть на нужные картинки. Иногда картинку следует правильно расположить, чтобы она смотрелась гармонично (например, дерево следует располагать вертикально, а не горизонтально).
  3. Capcha с примерами – необходимо провести вычитание, сложение, умножение. Как правило уравнение крайне простое на уровне 2 + 2, но на закрытых сайтах бывают и примеры посложнее.
  4. Самый простой вид верификации – поставить галочку в поле «я не робот».

Quick Start

After you’ve signed up for your API keys, below are basic instructions for installing reCAPTCHA on your site. A full reference guide to the PHP plugin can be found below.

Client Side (How to make the CAPTCHA image show up)

If you want to use the PHP library to display the reCAPTCHA widget, you’ll need to insert this snippet of code inside the <form> element where the reCAPTCHA widget will be placed:

  require_once('recaptchalib.php');
  $publickey = "your_public_key"; // you got this from the signup page
  echo recaptcha_get_html($publickey);

With the code, your form might look something like this:

  <html>
    <body> <!-- the body tag is required or the CAPTCHA may not show on some browsers -->
      <!-- your HTML content -->

      <form method="post" action="verify.php">
        <?php
          require_once('recaptchalib.php');
          $publickey = "your_public_key"; // you got this from the signup page
          echo recaptcha_get_html($publickey);
        ?>
        <input type="submit" />
      </form>

      <!-- more of your HTML content -->
    </body>
  </html>

Don’t forget to set $publickey by replacing with your API public key.

Note that the value of the «action» attribute is «verify.php». Now, verify.php is the destination file in which the values of this form are submitted to. So you will need a file verify.php in the same location as the client html.

The require_once function in the example above expects recaptchalib.php to be in the same directory as your form file. If it is in another directory, you must link it appropriately. For example if your recaptchalib.php is in the directory called «captcha» that is on the same level as your form file, the function will look like this: .

Server Side (How to test if the user entered the right answer)

The following code should be placed at the top of the verify.php file:

  <?php
  require_once('recaptchalib.php');
  $privatekey = "";
  $resp = recaptcha_check_answer ($privatekey,
                                $_SERVER,
                                $_POST,
                                $_POST);

  if (!$resp->is_valid) {
    // What happens when the CAPTCHA was entered incorrectly
    die ("The reCAPTCHA wasn't entered correctly. Go back and try it again." .
         "(reCAPTCHA said: " . $resp->error . ")");
  } else {
    // Your code here to handle a successful verification
  }
  ?>

In the code above:

returns an object that represents whether the user successfully completed the challenge. If is true then the captcha challenge was correctly completed and you should continue with form processing. If is false then the user failed to provide the correct captcha text and you should redisplay the form to allow them another attempt. In this case will be an error code that can be provided to . Passing the error code makes the reCAPTCHA control display a message explaining that the user entered the text incorrectly and should try again.

Notice that this code is asking for the private key, which should not be confused with the public key. You get that from the same page as the public key.

Also make sure your form is set to get the form variables using $_POST, instead of $_REQUEST, and that the form itself is using the POST method.

That’s it! reCAPTCHA should now be working on your site.

Customizing Look and Feel Tips and Guidelines Troubleshooting

About reCAPTCHA

  1. What is reCAPTCHA?

    reCAPTCHA is a free service from Google that helps protect websites from spam and abuse. A “CAPTCHA” is a turing test to tell human and bots apart. It is easy for humans to solve, but hard for “bots” and other malicious software to figure out. By adding reCAPTCHA to a site, you can block automated software while helping your welcome users to enter with ease. Try it out at https://www.google.com/recaptcha/api2/demo.

    To learn more about reCAPTCHA, visit our official websiteor our technical documentation site.

  2. How can I distinguish between different versions of reCAPTCHA?

    There currently exist two versions of reCAPTCHA, V1 and V2.

  3. Helping everyone, everywhere, one CAPTCHA at a time


    CAPTCHAs play an important role in keeping the internet spam-free and making everyone’s experience a little bit better.

    reCAPTCHA also makes positive use of the human effort spent in solving CAPTCHAs by using the solutions to digitize text, annotate images, and build machine-learning datasets. This in turn helps preserve books, improve maps, and solve hard AI problems.

Проблемы с капчей.

К сожалению, технология CAPTCHA сталкивается с некоторыми проблемами. Человек с плохим зрением не всегда сможет ответить правильно без посторонней помощи. Существует также проблема неустанных спамеров и хакеров, которые постоянно дорабатывают свои программы по преодолению капчи. Несмотря на то, что технология CAPTCHA обновляется регулярно, проблемы могут все еще существовать, особенно когда изображения должны все больше искажаться, чтобы обмануть ботов. При таких усложнениях, бывают случаи, что даже человеку сложно распознать изображение на картинке, что в свою очередь отталкивает от сайта.

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

Description

reCaptcha plugin is an effective security solution that protects your WordPress website forms from spam entries while letting real people pass through with ease. It can be used for login, registration, password recovery, comments, popular contact forms, and other. reCAPTCHA Version 3, Version 2, Invisible are included.

Users are required to confirm that they are not a robot before the form can be submitted. It’s easy for people and hard for bots.

Free Features

  • Add reCaptcha to:
    • Registration form
    • Login form
    • Reset password form
    • Comments form
    • Contact Form
    • Testimonials
    • Custom form
  • Hide reCaptcha for the whitelisted IP addresses
  • Disable the submit button
  • Validity check of keys in admin panel
  • Available reCaptcha themes for:
    • Version 1
      • Red (default)
      • White
      • Blackglass
      • Clean
    • Version 2
      • Light (default)
      • Dark
  • Compatible with Limit Attempts
  • Hide reCaptcha in your forms for certain user roles
  • Hide reCaptcha Badge (Invisible and V3)
  • Supports reCaptcha:
    • Version 2
    • Version 3
    • Invisible reCAPTCHA
  • Add custom code via plugin settings page
  • Compatible with latest WordPress version
  • Incredibly simple settings for fast setup without modifying code
  • Detailed step-by-step documentation and videos
  • Multilingual and RTL ready

If you have a feature suggestion or idea you’d like to see in the plugin, we’d love to hear about it! Suggest a Feature

Documentation & Videos

  • Installation
  • Purchase
  • User Guide
  • Installation Instruction
  • Purchase, Installation & Configuration

Help & Support

Visit our Help Center if you have any questions, our friendly Support Team is happy to help – https://support.bestwebsoft.com/

Translation

  • Czech (cs_CZ) (thanks to Michal Kučera, www.n0lim.it, PaMaDeSSoft, www.pamadessoft.cz)
  • Romanian (ro_RO)
  • Russian (ru_RU)
  • Spanish (es_ES)
  • Ukrainian (uk)

Some of these translations are not complete. We are constantly adding new features which should be translated. If you would like to create your own language pack or update the existing one, you can send the text of PO and MO files to BestWebSoft and we’ll add it to the plugin. You can download the latest version of the program for work with PO and MO files Poedit.

Recommended Plugins

  • Updater – Automatically check and update WordPress website core with all installed plugins and themes to the latest versions.
  • Contact Form – Simple contact form plugin any WordPress website must have.
  • Subscriber – Add email newsletter sign up form to WordPress posts, pages and widgets. Collect data and subscribe your users.
  • Multilanguage – Translate WordPress website content to other languages manually. Create multilingual pages, posts, widgets, menus, etc.

Using reCAPTCHA V2

  1. How do I use reCAPTCHA?

    Just click the checkbox:

    If you see a green checkmark, congratulations! You’ve passed our robot test (yes, it’s that easy). You can carry on with what you were doing.

    Sometimes we need some extra info from you to make sure you’re human and not a robot, so we ask you to solve a challenge:


    Simply follow the on-screen instructions to solve the puzzle and then carry on with your task.

  2. Accessibility

    reCAPTCHA works with major screen readers such as ChromeVox (Chrome OS), JAWS (IE/Edge/Chrome on Windows), NVDA (IE/Edge/Chrome on Windows) and VoiceOver (Safari/Chrome on Mac OS). reCAPTCHA will alert screen readers of status changes, such as when the reCAPTCHA verification challenge is complete. The status can also be found by looking for the heading titled “recaptcha status” in the “recaptcha widget” section of the page. See for more information.

    Please use the following steps to solve an audio challenge:

    1. If you are presented with a visual challenge, locate and click on the button.

    2. You will be presented with one of two versions of the audio challenge depending on whether you’re using a mobile device.

    3. Press PLAY and enter the numbers you hear in the text input box located after the PLAY button or audio control. If your focus isn’t automatically set on the text input box after pressing the PLAY button, tab to proceed to it. When you’re done entering the numbers from the audio, press ENTER or click on the “Verify” button to submit your answer.

    4. If your answer is incorrect, you will be presented with another audio challenge.

    5. If your answer is correct, the audio challenge will close and the reCAPTCHA checkbox will become checked. ReCAPTCHA will also notify the screen reader of the successful verification.

      Please note that the verification will expire after some time and you will need to start over if this occurs. You will be notified if the verification expires.​

    ​Tips

    • If the audio doesn’t play, try downloading the audio by locating and clicking on the link.

    • While in the text input box, you can press the “R” button to replay the audio from the beginning

    • To get a different audio challenge, locate and press the button.

    • The reCAPTCHA verification expires after a certain amount of time so it is best to complete the reCAPTCHA verification last on a website you are accessing.

    • Some screen readers may have difficulties getting into forms mode, if this happens, please use your screen reader’s functionality to force forms mode.

    reCAPTCHA ARIA Status Messages

    Status message


    Detailed description

    Recaptcha requires verification

    The initial state, reCAPTCHA verification is required to proceed on this website. Click the checkbox to get a verification challenge.

    Opening verification challenge

    The checkbox has been clicked and a challenge is loading. You are instantly verified if the status changes to “You are verified”. Otherwise, you are required to complete a verification challenge.

    Verification challenge expired, check the checkbox again for a new challenge

    The verification challenge expired due to timeout or inactivity. Click the checkbox again for a new challenge.

    You are verified

    You have been verified. You can now proceed on the website.

    Verification expired, check the checkbox again for a new challenge

    The verification expired due to timeout or inactivity. Click the checkbox again for a new challenge.

  3. Don’t worry. Some CAPTCHAs are hard. Just click the reload button next to the image to get another one.
  4. Our unusual traffic help page describes what to do if you see this message:

    «We’re sorry, but your computer or network may be sending automated queries. To protect our users, we can’t process your request right now.»

Interpreting the score

reCAPTCHA v3 returns a score (1.0 is very likely a good interaction, 0.0 is very likely a bot). Based on the score, you can take variable action in the context of your site. Every site is different, but below are some examples of how sites use the score. As in the examples below, take action behind the scenes instead of blocking traffic to better protect your site.

Use case Recommendation
homepage See a cohesive view of your traffic on the admin console while filtering scrapers.
login With low scores, require 2-factor-authentication or email verification to prevent credential stuffing attacks.
social Limit unanswered friend requests from abusive users and send risky comments to moderation.
e-commerce Put your real sales ahead of bots and identify risky transactions.

reCAPTCHA learns by seeing real traffic on your site. For this reason, scores in a staging environment or soon after implementing may differ from production. As reCAPTCHA v3 doesn’t ever interrupt the user flow, you can first run reCAPTCHA without taking action and then decide on thresholds by looking at your traffic in the admin console. By default, you can use a threshold of 0.5.

Дополнительно

Тема

Сменить цвет reCAPTCHA можно с помощью атрибута data-theme, который может принимать значение dark и light (по умолчанию):

<div class="g-recaptcha" data-sitekey="6LeKaREUAAAAALB6Sgjp5XqHq0Kb_aLEn_KORz6u" data-theme="dark"></div>
<div class="g-recaptcha" data-sitekey="6LeKaREUAAAAALB6Sgjp5XqHq0Kb_aLEn_KORz6u" data-theme="light"></div>

Язык

По умолчанию язык в reCAPTCHA определяется по языку браузера, но можно указать язык явно, например, украинский:

<script src='https://www.google.com/recaptcha/api.js?hl=uk'></script>

задать русский язык

<script src='https://www.google.com/recaptcha/api.js?hl=ru'></script>

Дополнительные настройки:

Актуальный взгляд на пользу программы

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

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


С этим читают