Extracto del articulo publicado en
http://erwin.ried.cl Erwin Ried
¿Usted es realmente un humano?
Frecuentemente en la red se pone en duda nuestra existencia biológica. No me refiero al trasfondo filosófico del tema, sino a esa típica prueba en que debemos rellenar un recuadro escribiendo los números y letras de una imagen intentando evitar abusos del sistema. ¿Es realmente confiable esta prueba?, veamos como podemos romper esta ilusión de seguridad programando una pequeña aplicación ?
La idea de este artículo es poder implementar una pequeña aplicación que logre reconocer un CAPTCHA.
Un CAPTCHA es un tipo de prueba que intenta distinguir humanos de robots, evitando así abusos de los servicios. Actualmente la mayoría de los servicios de la red cuentan con implementaciones de este test, aquí hay algunos ejemplos que probablemente son familiares:
1. Consideraciones previas
Primero que todo hay que tener en consideración de que no existe y probablemente no existirá nunca un procedimiento que permita abordar a todos los infinitos tipos de verificadores.
Intenté encontrar proyectos similares en la red, pero lo único que encontré fue la documentación de los mismos, sin aplicaciones prácticas ni código fuente. Mi idea es intentar mostrar la forma más primitiva de poder realizar un pequeño análisis de imágenes que podría servir como base para cualquier proyecto relacionado.
Personalmente creo que la protección mediante un CAPTCHA es bastante completa para evitar el abuso de los servicios, siempre y cuando se conserve la premisa de que la imagen debe ser de fácil reconocimiento para un humano (algunos servicios olvidan esta simple regla y a veces generan imágenes con un código que es tan distorsionado que provoca que debamos ingresar dos o más veces el mismo debido a que erramos en alguno de los símbolos porque simplemente no podíamos distinguirlo correctamente).
Poder reconocer los valores de un tipo en particular ya es un reto considerable, aunque su dificultad depende exclusívamente de la complejidad y calidad del CAPTCHA.
En la pagina del articulo original pueden encontrar el enlace para descargar el codigo fuente y el articulo completo en pdf.
El articulo publicado por Erwin Ried es bastante intersante y detallado.
Por si el enlace de descarga del archivo en la pagina original falle! aqui les traigo otro enlace de descarga.