Universidad Nacional Autónoma de México
Dirección General de Servicios de Cómputo Académico
Año 7 Núm. 74, Publicación Mensual, 27 de Noviembre de 2008

ARTÍCULOS

 

Año 3, Número 33, Octubre de 2004

Captcha, guardian de los servicios Web

Carlos Suárez Gutiérrez

 

Es poco probable que los inventores de Internet tuvieran alguna idea del tamaño de la red que estaban desarrollando, del montón de gente que usaría sus servicios y, sobre todo, de las oleadas de pequeños programas (conocidos como bots) que recorrerían las conexiones entre computadoras recolectando información.

Los bots se han vuelto los habitantes de la red, hora tras hora cumplen la función para la que fueron programados, y lo mismo sirven para nutrir los resultados de una maquinaria de búsqueda que para apuntar las direcciones de correo electrónico que encuentran en nuestras páginas y llenar después nuestros buzones con correos basura, algunos otros saturan los servicios Web, como los sitios que ofrecen correos electrónicos gratuitos y pueden llegar a dejar fuera de combate estos servidores.

El ataque de los bots

La tecnología de programación de los bots y su uso para enviar correo no solicitado, han hecho que el problema del spam (la forma ordinaria de nombrar al correo electrónico no solicitado) se multiplique de manera exponencial en los últimos años. Según un estudio de la compañía Basex, el spam costó el año pasado 20 mil millones de dólares y los cálculos preliminares del año en curso indican que este costo se incrementará de manera sustancial.

El problema del spam, además de caro, es molesto y junto con el crecimiento del mismo, se han buscado soluciones para aliviar el enorme tráfico de correos basura.

Los administradores de sistemas y los usuarios sabemos por experiencia, que las herramientas de filtrado siguen siendo rudimentarias y muchas veces detienen mensajes importantes, así que los esfuerzos para reducir el spam se han enfocado a evitar que los bots y sus programadores, se apropien de cientos de cuentas gratuitas que pueden obtener en sitios como Yahoo!® o Hotmail®.

Cerrando las puertas

La empresa Yahoo! fue la primera que tuvo la iniciativa de buscar una manera de evitar que los bots se dieran de alta en su servicio de correo electrónico gratuito, pero que a la vez permitiera a las personas inscribirse sin ningún problema. Buscando soluciones, dieron con Manuel Blum de la Escuela de Ciencias Computacionales de la Universidad de Carnegie Mellon.

Blum y su equipo estaban trabajando en modelos de degradación y distorsión de imágenes con la intención de ser utilizados para probar los avances en inteligencia artificial mediante la conocida prueba de Turing.

Alan Turing fue un genial matemático que a mediados de los cincuenta propuso un método para determinar en qué momento se logra desarrollar una máquina que piensa: la máquina pasará la prueba, cuando las personas que la están interrogando no sepan si las respuestas vienen de una máquina o de una persona. Este examen es conocido como la prueba de Turing.

En el curso de sus investigaciones, Blum conoció el trabajo de Henry Baird, un experto en el campo de la visión artificial que también estaba trabajando con imágenes degradadas y distorsionadas. En el verano del 2000, Henry Baird publicó el resultado de sus investigaciones, un nuevo modelo de degradación de imágenes llamado impresión pésima (pessimal print). Al mismo tiempo Yahoo! y Blum trabajaban en un modelo similar al que llamaron CAPTCHA (Completely Automatic Public Turing Tests to Tell Computers and Humans Apart), estos modelos son una especie de prueba de Turing a la inversa, es decir, un problema que puede ser resuelto por personas, pero no por computadoras y sus bots.

Todos quieren su CAPTCHA

Se utilizaron en primera instancia en Yahoo! para validar a sus usuarios al momento de solicitar una nueva cuenta de correo electrónico; poco a poco se fueron haciendo populares, y ahora se pueden encontrar en otros servidores de correo electrónico gratuito, están al momento de contestar una encuesta en línea o cuando se desea bajar un programa desde algunos sitios.

En el campo de la inteligencia artificial, tratar de romper los CAPTCHA se ha vuelto una especie de deporte mental; los primeros CAPTCHA, tomaban al azar una palabra de un diccionario de aproximadamente 850, la distorsionaban y la presentaban al usuario, y se rompían mediante un ataque de fuerza bruta que probaba palabra tras palabra hasta que alguna coincidía.

Al poco tiempo, Greg Mori y Jitendra Malik del grupo de visión por computadora de la Universidad de California en Berkeley, escribieron un algoritmo que podía leer el 83% de las imágenes presentadas .

Evidentemente, el desarrollo de los CAPTCHA no se ha detenido, diversos grupos escriben nuevos algoritmos y los publican para que sean puestos a prueba por la comunidad de inteligencia artificial, es una especie de carrera que previene la aparición de nuevos bots cada vez más inteligentes, sofisticados y poderosos.

El próximo paso

Los CAPTCHA se han convertido en una tecnología cada vez más importante en los negocios y en los servicios Web, son desarrollados para protegerlos de los ataques de los bots, y para garantizar la estabilidad y continuidad de los servicios.

Dentro de la evolución natural de una tecnología, los sucesores de los CAPTCHA están listos para entrar a escena; uno de los más prometedores es el BaffleText, que evita caer en un ataque de fuerza bruta al presentar palabras que no existen, además de que incorporan patrones en el fondo de la imagen y degradados que han sido el tema de viejos problemas de reconocimiento de visión artificial, los cuales no han sido resueltos hasta la fecha.

Si estas tecnologías continúan con su actual ritmo de adopción, cada vez será más difícil para los bots apropiarse de servicios; es probable que los CAPTCHA no disminuyan de forma dramática el número de correos electrónicos no solicitados que llegan a nuestros buzones, pero si harán que los servicios Web que tanto usamos, sean exclusivos para personas, y no tengamos que competir con programas que viven en Internet.

Para mayor información:

http://www.captcha.net/

http://captchas.net/

http://www2.parc.com/istl/projects/captcha/

Inicio | Contacto |