El término CAPTCHA (test de Turing público y automático para distinguir a los ordenadores de los humanos, del inglés “Completely Automated Public Turing test to tell Computers and Humans Apart”) se utiliza para definir un sistema de seguridad de tipo pregunta-respuesta que demuestra que la persona que está interactuando con la web es un humano, excluyendo con ello cualquier interactuación en la web por parte de robots o scripts automatizados.
Las principales funcionalidades de los CAPTCHA son las siguientes:
- Prevenir la publicidad (SPAM) en los blogs.
- Evitar la creación masiva de usuarios falsos en el registro de la web.
- Prevenir que bots puedan ver la dirección de correo electrónico del contacto de tu web.
- Proteger encuestas en línea.
- Prevención de ataques por fuerza bruta.
- Prohibir el acceso a motores de búsqueda.
¿Que tipos de CAPTCHA existen?
Existen múltiples tipos de CAPTCHA. Decantarse por utilizar uno u otro dependerá de la persona que administre la web, teniendo en cuenta el tipo de usuarios que frecuentan la página y la facilidad de implementación del mismo.
A continuación describimos algunos tipos de CAPTCHA más comunes:
reCAPTCHA
Este sistema ha sido creado por Google, y está funcionando desde el año 2014. Este sistema determina si un usuario es robot o humano presentando una simple tarea. Normalmente se indica al usuario que haga click en una casilla que indica “No soy un robot”. Este CAPTCHA rastrea el movimiento del ratón, el click, cookies del usuario además de otros parámetros y determina si el usuario es un robot o no. Incluso, si este sistema no fuese capaz de determinar si se trata de un humano, mostrará una segunda prueba que consiste en escribir una serie de números y letras o seleccionar unas imágenes en concreto.
Este sistema está ampliamente aceptado y muchas webs confían en este sistema para mantener a los robots alejados.
ReCAPTCHA invisible
Este sistema es una mejora del sistema ReCAPTCHA anterior. La ventaja de este sistema es que la experiencia del usuario no se ve afectada y no precisa que el usuario tenga que hacer click en el botón “No soy un robot”, ya que simplemente monitorea los patrones de navegación, y con ello consigue diferenciar a un humano de un bot sin que el usuario tenga que interactuar.
Sweet CAPTCHA
Este sistema solicita al usuario realizar algún tipo de tarea sencilla que solo un humano sería capaz de realizar, como por ejemplo, mover una barra de desplazamiento hasta un punto en concreto, o arrastrar un elemento de la pantalla hasta un destino concreto. Se basa en que la prueba no pueda ser ejecutada con precisión por un robot.
Este sistema ha demostrado ser muy efectivo, pero puede resultar frustrante para los usuarios menos hábiles.
CAPTCHA basado en tiempo
Este sistema registra el tiempo que le lleva a un usuario completar el formulario. Normalmente, completar el formulario a un usuario puede llevarle del orden de 2-3 minutos mientras que un robot lo completaría de forma casi instantánea.
Es un buen sistema para implementar por ejemplo en un WordPress.
Honeypot
Este sistema consiste en añadir múltiples campos ocultos en pantalla. El objetivo de este CAPTCHA no es engañar al humano, sino al robot. Los bots pueden ver estos campos e intentar rellenarlos, confirmando con ello que quien está accediendo a la web no es un humano, y por tanto se deniega o bloquea su acceso.
El mayor beneficio de este sistema es que la experiencia del usuario en la web no se ve afectada en ningún momento.
Iniciar sesión en redes sociales
Una manera sencilla de verificar que el usuario no sea un robot es hacer que inicie sesión con su cuenta de Google, Facebook, Instagram u otras cuentas de redes sociales, de este modo, el usuario no necesitará introducir ninguna información adicional.
La ventaja de este sistema es que el usuario no precisa crear nuevos usuarios o perfiles en la web. La contraparte de este sistema, es que existen usuarios que son reacios a vincular su información personal al sitio web.
CAPTCHA matemático
Una forma popular de CAPTCHA es añadir un sencillo problema matemático. Por ejemplo, un usuario debe resolver e ingresar el resultado de un problema matemático como puede ser “2+2”.
Este sistema, no es tan sofisticado como otros sistemas de CAPTCHA, no obstante, es sencillo de implementar puede ser perfecto para una web personal en WordPress o HTML.
CAPTCHA de palabras
Similar al caso anterior este CAPTCHA consiste en una sencilla prueba de palabras que el usuario debe descifrar. Por ejemplo, se puede solicitar al usuario que escriba una palabra concreta en mayúsculas, escribir la última palabra de una frase, o responder a una sencilla pregunta.
Este sistema puede resultar excelente para usuarios con discapacidad visual o que tengan dificultades para resolver problemas más visuales.
