lunes, 17 de diciembre de 2007

Captchas y la W3C

Última actualización: 23 de enero de 2015 (Ir a "Novedades desde la publicación de este artículo")

Los captchas y la accesibilidad


Sabes lo que es un captcha (Completely Automated Public Turing test to tell Computers and Humans Apart 1), aunque quizás no sepas que se llama así.

Es por ejemplo esa imagen con un texto distorsionado

Imagen con texto distorsionado, caja de texto e icono de accesibilidad


que has de escribir en una caja de texto para poder interactuar con algunas aplicaciones web (insertar un comentario en un blog, darte de alta en un servicio, hacer compras online, etc.)

Captcha es cualquier prueba desafío-respuesta utilizada en computación para determinar cuándo el usuario es o no humano, término que empezó a utilizarse en el 2000.

El objetivo del captcha, de esta verificación visual, es que el sistema sepa distinguir a una máquina de un ser humano, y de este modo impedir que los robots accedan y por ejemplo envíen comentarios automáticos como spam.

El principal problema de accesibilidad que se le achaca a los captchas visuales basados en una imagen con texto en su interior es evidente, estas imágenes no pueden incluir en el "alt" el texto que aparece escrito en ellas, de lo contrario una máquina podría conocer el texto de la misma y realizar la verificación. La consecuencia es que las personas invidentes no tienen manera de interactuar con el sistema, puesto que no pueden saber el texto que incluye la imagen.

La alternativa accesible que se suele proponer es un fichero de sonido que lea el texto de la imagen (en el captcha que he puesto de ejemplo, pulsando en la pequeña imagen situada al lado de la caja de texto Pequeño icono de una persona en silla de ruedas, se oiría dicho texto)

¿Pero es accesible de verdad esta alternativa auditiva? ¿es este el único problema de los captchas?

Como veremos la respuesta es NO. Para responder a estas preguntas el mejor referente es Inaccessibility of CAPTCHA del W3C, que voy a resumir a continuación a modo de preguntas y respuestas.

W3C: "Inaccessibility of CAPTCHA"



¿Los captchas visuales suponen un problema de accesibilidad sólo para las personas invidentes?

No, también es un problema para las personas con baja visión y para las personas con una discapacidad de aprendizaje como la dislexia.

He de añadir que también supone un problema para las personas de edad avanzada, no recuerdo donde leía la anécdota de una persona mayor que preguntaba desesperada dónde se encontraba la "n" ondulada en el teclado, que no la encontraba.

Pero también supone un incordio para la mayoría de nosotros, ¿quién no se ha equivocado varias veces confundiendo unas letras con otras? Resulta exasperante.

¿Son al menos seguros los captchas? ¿evitan de verdad al 100% los ataques?

No, en el artículo se nombran diversas maneras de derrotarlos.

¿Un fichero de audio como alternativa al captcha visual es accesible?

No. Estos ficheros también tienen cierta distorsión con lo cual a menudo son ininteligibles, más aún si tenemos en cuenta que puedes estar en un ambiente ruidoso.

Por otro lado exigen tener instalados determinados plugins o están basados en JavaScript, con lo cual los usuarios con discapacidad visual a menudo tampoco pueden acceder a ellos.

Esta alternativa además ayuda a los robots porque suelen tener mayor éxito con el software de reconocimento de voz que con el reconocimiento óptico de caracteres.


¿Existen otras alternativas a los captchas?

Existen una serie de técnicas que no implican la interacción humana, y por tanto no provocan problemas de usabilidad y accesibilidad. El verdadero problema de los captcha es que se deja en manos de los usuarios un problema que deberían solucionar las máquinas.

Las alternativas son:

  • Uso limitados de cuentas. Proponen crear políticas que limiten la frecuencia de interacción explícita (desactivar una cuenta para el resto del día) o implícita (ralentizar cada vez más los tiempos de respuesta). El principal desafío de esta propuesta es determinar el comportamiento de los usuarios normales y los excepcionales y ver si hay una clara línea divisoria entre ambos.
  • Controles no interactivos que, al no implicar la interacción del usuario, harán el uso de la aplicación más sencillo. Son el filtrado de spam, que bien afinado es tan efectivos como los captchas; y los controles heurísticos, que detectan robots basándose en el volumen de peticiones de datos, las páginas visitadas, las direcciones IP, los métodos de entrada de datos, etc.
  • Sistemas de identidad federados: Single Sign-On, soluciones de infraestructura de clave pública mediante certificados que verifiquen la identidad, o mediante biometría (cuya debilidad es la falta de infraestructura, puesto que el hardware tardará en penetrar en el mercado). Estos sistemas deberán tener en cuenta también la accesibilidad, de nada serviría el escaneo de retina para alguien que no tiene ojos.
  • Otros enfoques: como la verificación mediante SMS, pero esto implica que todo el mundo debe tener un móvil, sin contar con la escasa accesibilidad que presentan los SMS para los usuarios ciegos.


El documento termina con la siguiente conclusión:

Los sitios con recursos atractivos y millones de usuarios tienen la necesidad de un sistema de control de acceso que limite el abuso generalizado, por lo cual parece razonable que usen los captchas visuales y auditivos. Sin embargo, los usuarios se pierden en estos sistemas y perjudican la experiencia de los usuarios con discapacidad, por tanto no se puede promover mecanismos de control inaccesibles cuando existen otros sistemas más accesibles e iguales de eficaces.


Alternativa al captcha visual: derrotar a las máquinas con la lógica humana



Existe un plugin para Wordpress llamado Challenge que incluye otro tipo de captchas: una pregunta que se ha de contestar correctamente para poder incluir un comentario. Esta pregunta puede ser:

Operaciones matemáticas

Por ejemplo en los comentarios de este blog se nos pide el resultado de una operación matemática como "2+2"

Si la operación es sencilla de verdad será mil veces mejor que el captcha visual, aunque siempre puede haber usuarios a los que le represente un problema, por ejemplo a usuarios con alguna discapacidad cognitiva.

Preguntas textuales

En otros se nos hacen preguntas del tipo: "¿Cuál es el buscador más utilizado en España?"

Los problemas de este tipo de preguntas son:

  • al contrario que los captchas visuales o las operaciones matemáticas, estas preguntas sólo podrán ser respondidas por alguien que conozca nuestro idioma.
  • preguntas que a nosotros pueden parecernos obvias, pueden no serlo para otros usuarios, especialmente en otro contexto cultural o tecnológico, ¿puede estar seguro un chileno de cuál es el buscador más usado en España? ¿mi abuela que acaba de hacer un cursillo de Internet sabrá contestar a esta pregunta?
  • puede suscitar problemas a la hora de escribir la respuesta: faltas de ortografía, dudas a la hora de incluir por ejemplo el artículo en la respuesta (El río que pasa por Zaragoza se llama... ¿qué contesto? ¿el Ebro? ¿Ebro?), o el nombre de pila o sólo el apellido (¿Quién es el actual presidente de España? ¿qué contesto? ¿Zapatero? ¿Jose Luis Rodriguez Zapatero?), etc.


Por ello son más inteligentes otro tipo de preguntas como: "¿Cuál es la segunda palabra de la frase 'Olga y Eva se van de compras'".

Y sin embargo también puede llevar a confusión, me encontré con dos personas que contestaron "Eva", la primera filtró la "y" y la segunda exclamó, "ah, pensé que era la segunda palabra de verdad".

Conclusión

En resumen, todo captcha que implique interacción humana acaba suponiendo un problema de usabilidad y/o accesibilidad. El verdadero problema de los captcha es que se deja en manos de los usuarios un problema que deberían solucionar las máquinas, por ello el W3C propone alternativas que no impliquen a los usuarios.

Notas 2015. Novedades desde la publicación de este artículo

Estudio de 2014 sobre eficacia y percepción de facilidad en la resolución de captchas

Os recomiendo el artículo "Experiencia de usuario y captchas, explorando la semiótica visual" de Cabezas Mena; Víctor Sabaté Mojica, Andrea; Vendrell Villafruela, Albert; Marcos, Mari-Carmen (febrero de 2014).

Se trata de un estudio en el que se evalúa la eficacia y la percepción de facilidad en la resolución de estos tipos de captchas:

10 tipos diferentes de captchas. Consulta el artículo orginal para una descripción detallada de cada uno

El nuevo reCAPTCHA de Google de 2014

A finales de 2014, Google presentaba su nuevo reCAPTCHA .

Se basa en algo tan sencillo como pulsar un check:

reCAPTCHA de Google. Check con el texto I'm not a robot

Es accesible por teclado y el check es anunciado a los lectores de pantalla (The accessibility of Google’s No CAPTCHA)

WCAG 2.0

¿Qué dicen las WCAG 2.0 sobre los CAPTCHA?

Puedes consultarlo en Guía para incluir textos alternativos adecuados y accesibles a las imágenes de tu web

Enlaces de interés

Notas

(1) Prueba de Turing pública y automática para diferenciar a máquinas y humanos.

7 comentarios :
Olga Carreras dijo...

Artículo relacionado:Honeypot Captcha

Alternativa a los captcha (se necesita css activas)

Unknown dijo...

hay alguna manera de leer los capcha? soy invidente y hay en ciertas cosas que aún se usan capchas y es un fastidio

Jose Miguel Hernández dijo...

En respuesta a noe, si hay una manera, pero no es leer los captchas sino cambiarlos. Es decir, se está desarrollando un sistema de captchas para personas invidentes.

Puedes visitarlo en: http://www.josemiguelarnaldos.com/captcha/

En esta direccion puedes probarlo.

Saludos

Olga Carreras dijo...

Más sobre captcha y accesibilidad

Anónimo dijo...

en mi empresa me piden un código para hacer el captcha accesible o no me lo harán accesible ;( alguien sabe donde lo puedo encontrar??

aprovecho para felicitarte Olga por tu blog!

saludos

Olga Carreras dijo...

Artículo relacionado: Campo oculto para reemplazar el CAPTCHA de forma más accesible.

Ricardo dijo...

Muy buen post. Estoy tratando de ayudar a una usuaria ciega de la empresa donde trabajo, que debe digitar los caracteres de un captcha que no tiene versión auditiva, pero la solución no es simple. El de Google es ininteligible.

Me pregunto si a 2 años desde que escribiste esto, tendrás mejores noticias para la gente con discapacidades. Saludos desde Chile.

Publicar un comentario