El nacimiento de CAPTCHA - demuestra que eres humano

CAPTCHA (Completely Automated Public Turing test to tell Computers and Humans Apart) fue nombrado en el año 2000 por Luis von Ahn y otros investigadores de la Universidad Carnegie Mellon. Como indica su nombre, es una versión invertida del "test de Turing" propuesto por Alan Turing en 1950. Mientras el test de Turing pregunta "¿puede una máquina comportarse como un humano?", CAPTCHA pregunta "demuéstrale a una máquina que eres humano".

Este artículo recorre los 25 años de evolución de CAPTCHA, desde la decodificación de texto distorsionado hasta el reconocimiento de imágenes y la autenticación donde "no tienes que hacer nada", así como la interminable batalla con los bots que siguen intentando superarlo.

Primera generación: lee el texto distorsionado (principios de los 2000)

Los primeros CAPTCHAs mostraban una imagen con una cadena de caracteres aleatorios distorsionados y con ruido añadido, pidiendo al usuario que introdujera esa cadena. Se basaban en la premisa de que la capacidad de reconocimiento visual humano puede leer texto distorsionado, pero la tecnología OCR (reconocimiento óptico de caracteres) de la época no podía.

¿Por qué texto distorsionado?

A principios de los 2000, los servicios web sufrían la creación masiva de cuentas por bots, publicación de spam y acaparamiento de entradas. Yahoo! fue una de las primeras empresas en implementar CAPTCHA para prevenir la creación automática de cuentas de correo gratuito.

El CAPTCHA de texto distorsionado obstaculizaba el OCR mediante las siguientes técnicas:

  • Rotación, escalado y deformación ondulada de caracteres
  • Adición de líneas de ruido y puntos al fondo
  • Superposición de caracteres (dificultando la segmentación)
  • Aleatorización de fuentes

Historia de las rupturas

Sin embargo, el avance de la tecnología OCR superó las expectativas de los diseñadores de CAPTCHA. En 2003, se demostró que ataques basados en aprendizaje automático podían superar algunos CAPTCHAs con más del 90% de precisión. Si se aumentaba la distorsión del CAPTCHA, las máquinas no podían leerlo, pero tampoco los humanos: surgió un dilema.

reCAPTCHA v1 - el CAPTCHA que contribuyó a la digitalización de libros

En 2007, el inventor de CAPTCHA, Luis von Ahn, tuvo la idea de aprovechar el esfuerzo humano invertido en resolver CAPTCHAs. Así nació reCAPTCHA.

reCAPTCHA v1 mostraba dos palabras. Una era una palabra de "verificación" cuya respuesta era conocida, y la otra era una palabra "desconocida" extraída de imágenes escaneadas de libros que el OCR no pudo leer. Si el usuario introducía correctamente la palabra de verificación, se le consideraba humano, y simultáneamente su respuesta a la palabra desconocida se utilizaba para la digitalización de libros.

Mediante este mecanismo, reCAPTCHA redirigió aproximadamente 200 millones de resoluciones diarias de CAPTCHA a la digitalización de libros. Se dice que contribuyó al archivo de 130 años del New York Times y al proyecto Google Books. En 2009, Google adquirió reCAPTCHA y también lo aplicó a la lectura de direcciones en Google Street View.

reCAPTCHA v2 - lo que hay detrás de "No soy un robot"

reCAPTCHA v2, lanzado en 2014, introdujo el "No CAPTCHA reCAPTCHA", donde basta con hacer clic en una casilla de verificación. Esa experiencia de hacer clic en la casilla "No soy un robot" y completar la autenticación.

Qué ocurre detrás de la casilla

El clic en la casilla es solo la entrada a la autenticación. Google analiza una enorme cantidad de datos de comportamiento recopilados hasta el momento del clic para determinar si es humano o bot:

  • Movimiento del ratón: el cursor humano se mueve con ligeras oscilaciones. Los bots tienden a moverse en línea recta a velocidad constante
  • Coordenadas y timing del clic: en qué posición de la casilla se hizo clic, tiempo desde la carga de la página hasta el clic
  • Entorno del navegador: huella digital del navegador, plugins, resolución de pantalla, zona horaria
  • Cookies e historial de navegación: si está conectado a una cuenta de Google, historial de resoluciones anteriores de reCAPTCHA
  • Reputación de la dirección IP: si la reputación IP es baja, se solicita verificación adicional

Si la evaluación integral de estas señales arroja una puntuación de riesgo baja, se pasa solo con la casilla. Si la puntuación de riesgo es alta, aparece un desafío de selección de imágenes ("selecciona todas las imágenes que contengan semáforos").

El doble propósito del desafío de selección de imágenes

Los desafíos de selección de imágenes también tienen un doble propósito, al igual que reCAPTCHA v1. Las respuestas de los usuarios se utilizan como datos de entrenamiento para los modelos de reconocimiento de imágenes de Google (como el reconocimiento de objetos para coches autónomos). Los desafíos de "selecciona los pasos de peatones" o "selecciona los autobuses" son precisamente datos de entrenamiento necesarios para la conducción autónoma.

reCAPTCHA v3 - el CAPTCHA invisible

reCAPTCHA v3, lanzado en 2018, no requiere ninguna interacción del usuario. Funciona en segundo plano de la página, analizando continuamente el comportamiento del usuario y devolviendo una puntuación de 0,0 (alta probabilidad de bot) a 1,0 (alta probabilidad de humano).

Los operadores del sitio pueden configurar acciones personalizadas basadas en esta puntuación. Por ejemplo, si la puntuación es inferior a 0,5, solicitar autenticación adicional; si es inferior a 0,3, bloquear el acceso.

Preocupaciones de privacidad

reCAPTCHA v3 ha sido criticado desde el punto de vista de la privacidad por rastrear ampliamente el comportamiento del usuario:

  • Todas las operaciones de ratón, entradas de teclado y comportamiento de desplazamiento en la página se envían a Google
  • Las cookies de la cuenta de Google se utilizan en la evaluación, favoreciendo a los usuarios conectados a Google
  • Los usuarios más conscientes de la privacidad que usan VPN o Tor son más propensos a ser clasificados como bots

En respuesta a este problema, Cloudflare anunció en 2021 "Turnstile", un servicio CAPTCHA alternativo que ofrece autenticación respetuosa con la privacidad.

El negocio de superar CAPTCHAs

Frente a la evolución de CAPTCHA, los servicios para superarlo también se han industrializado.

Granjas de resolución de CAPTCHAs

Existen servicios donde trabajadores de bajos salarios en países en desarrollo resuelven CAPTCHAs en tiempo real. Servicios como 2Captcha y Anti-Captcha reciben imágenes de CAPTCHA vía API y devuelven respuestas humanas en segundos. El precio es de unos pocos dólares por cada 1.000 resoluciones.

Ruptura mediante aprendizaje automático

Con los avances del aprendizaje profundo, la precisión para superar CAPTCHAs de reconocimiento de imágenes ha mejorado drásticamente. En una investigación de 2019, se reportó un modelo de aprendizaje automático capaz de superar los desafíos de imágenes de reCAPTCHA v2 con más del 85% de precisión. Irónicamente, también existen métodos que utilizan la propia API de reconocimiento de imágenes de Google para superar el CAPTCHA de Google.

El futuro de CAPTCHA - demostrar que eres humano será cada vez más difícil

Con el rápido avance de la IA generativa, la distinción entre máquinas y humanos se vuelve cada vez más difícil en texto, imágenes y audio. La premisa fundamental de CAPTCHA - "una tarea que los humanos pueden hacer pero las máquinas no" - está dejando de ser válida.

Se espera que la autenticación futura evolucione hacia un enfoque multicapa que combine el análisis continuo de patrones de comportamiento, la evaluación de la confiabilidad del dispositivo y pruebas criptográficas como las passkeys, en lugar de un único desafío.

La próxima vez que hagas clic en la casilla "No soy un robot", recuerda la batalla entre humanos y bots que se libra detrás de ella.

Términos del glosario relacionados

CAPTCHA Test automático para distinguir humanos de bots. Los métodos han evolucionado generación tras generación: introducción de texto distorsionado, selección de imágenes, análisis de comportamiento. Bot Programa automatizado que imita operaciones humanas para ejecutar tareas. Sus usos van desde rastreadores de motores de búsqueda hasta bots de spam maliciosos. Huella digital del navegador Tecnología que identifica de forma única a los usuarios combinando atributos como la configuración del navegador, plugins, fuentes y resolución de pantalla. Cookie Pequeño dato que un sitio web almacena en el navegador del usuario. Se utiliza para la gestión de sesiones y el recuerdo de configuraciones del usuario. Dirección IP Dirección numérica que identifica dispositivos en internet. La reputación IP también se consulta en la evaluación de CAPTCHA.