Spambots, captchas y accesibilidad
Phentermine, Viagra, Casinos, Sex, Levitra… Para cualquier persona que tenga presencia en la web, uno de los mayores incordios es el constante ataque de spambots, o scripts destinados a identificar formularios y enviar mensajes con en fin de conseguir enlaces, accesos a sistemas, generar más spam. Esto es normal el plataformas de publicación distribuidas como Wordpress o sitios con muchas visitas a estos les añadimos los trolls y demás fauna de la red con comentarios improcedentes o fuera de tono, hace que ser webmaster tenga dos enfoques: ser una cruz o una “divertida” partida contra “los malos”. Personalmente, me lo tomo por el segundo enfoque.
Una de las soluciones diseñadas para limitar los ataques de robots son los Captchas. CAPTCHA es el acrónimo de “Completely Automated Public Turing Tests to Tell Computers and Humans Apart”, traducido sería “Test de Turing Para Diferenciar Máquinas y Humanos” El concepto fue desarrolado en la universidad Carnegie Mellon y denominado así por IBM en el año 2000. Según la Wikipedia, se trata de hacer que el humano pruebe su condición.
Aquí vemos un captcha tradicional como el de barrapunto.com

Como curiosidad, Alan Turing, es uno de los padres de las ciencias de la computación moderna y la ingeligencia artificial y además, un gran corredor de fondo, para quien diga que los científicos suelen ser sedentarios.
En alzado, recibimos cientos de mensajes de spambots diarios con enlaces de todo tipo. Tantos, que hemos tenido que cerrar el sistema de comentarios en abierto por un tiempo. Cada iniciativa destinada a limitar su actividad, es superada en poco tiempo. Son listos los malditos… afortunadamente, alzado no es un banco online, y para mí es una vía de aprendizaje contínuo, por lo que la situación me la tomo como un reto divertido más que como una preocupación (de momento).
Tras conversaciones con Eduardo, he querido hacer un experimento, inspirado en este post de mildiez y los comentarios de John Udell.
Mi idea, evitar a toda costa el tradicional CAPTCHA y dotarlo de principios más humanos. Estoy seguro de que no tardarán en saltárselo, pero al menos, durante un tiempo estaremos libres de basura. Una de las ventajas de alzado, es que su gestión de contenidos ha sido desarrollada 100% artesanal, por lo que nos evitamos ataques masificados como los que se puedan lanzar contra sistemas de populares como MSN, Yahoo o contra plataformas de weblogs como esta (Wordpress). Otros agujeros tendrá, si les interesa, que se tomen la molestia.
Los objetivos: mantener el carácter anónimo de los comentarios de los usuarios con un método sencillo, mínimamente accesible y no basado en esas combinaciones de caracteres que incluso yo mismo fallo al identificar. Por último, evitar los debates teóricos y meternos de lleno en la práctica con el fin de compartir lo aprendido.
La solución ha sido crear un sistema similar a un Trivial: el lector que quiera enviar un comentario, se encontrará con un tipo diferente de pregunta que deberá responder para que su mensaje aparezca publicado. El ejemplo en alzado, en la pantalla de debajo.

Características:
- El sistema es artesano, desarrollado en PHP, y es conceptualmente un prototipo integrado en el gestor de contenidos de alzado
- Evita inicialmente la validación manual de comentarios por parte del editor de contenidos
- Se basa en un sistema de preguntas de características diferentes, editables manualmente, y escalable en tamaño
- Las preguntas se realizan en el mismo momento de postear el comentario por el usuario, como un captcha tradicional
- Estas preguntas son obvias, sencillas resultando fáciles de responder para cualquier persona con una formación normal
- Las preguntas se basan en HTML estándar, por lo que pueden aplicarse ciertos principios de accesibilidad
- Y lo más importante de todo, son cambiantes, es decir, se presentan diferentes tipologías de preguntas aleatoriamente. Un spambot que quiera atacar el sistema debería tener varias estrategias: coordenadas, identificar imágenes en fotos, responder a preguntas sencillas, realizar cálculos simples… o incluso remitir al usuario a otra sección del web para buscar las respuestas
- Dándole vueltas de manera creativa, podemos conseguir que las personas que comenten a artículos sean conocedores de la materia, si se implementa un sistema de cuestionario relacionado con la temática del sitio o de artículos, elevando así la calidad de los comentarios y por tanto del sitio
Algunos ejemplos de preguntas:

Pregunta, tipo Trivial, tema, “Geografía”. La imagen, lleva su correspondiente texto ALT para dar una pista a los lectores de voz.

Otra pregunta de “Geografía”. Otro tipo de preguntas, con algo de riesgo, podrían ser estas 10 cosas que todo el que tenga un graduado escolar debería saber

Una obviedad, como por ejemplo, “la nieve es de color…”, “el cielo es de color…”

Tabla de coordenadas por palabras. Otros usos, con números, realizar cálculos sencillos…

Cálculo sencillo.
Insisto, alzado no es un banco y la plataforma es artesanal por lo que desconozco si esta técnica combinada con otras, sería inicialmente aplicable a otros entornos.
Claramente, y sea como sea, este tipo de acciones rompen el flujo de conversación de un weblog. Es una lástima que las personas tengan que acreditar su condición para no ser dominadas por las máquinas y hacerles pasar por esto. Por otro lado espero dos tipos de efectos: uno, de alta probabilidad. Que haya usuarios que usan el sistema para jugar con él y probarlo. Otro, con muy baja probabilidad, que el tener que responder a la pregunta haga que aquellos que participen sean verdaderamente interesados en el debate.
El experimento lleva dos días en pruebas, abierto a debates, seguiremos informando…
7 Comments