Generación de CAPTCHA en perl usando Auten:: Captcha
Ya he dado el algoritmo y el código existente para generar la imagen de verificación (SAPTCHA) de perl, implementado con la ayuda de la Biblioteca de imágenes:: Magick (proporciona una interfaz entre Perl y la mayoría de imagemagick). Ahora quiero hablar sobre el trabajo con la biblioteca Authen:: Captcha, ya que la interacción con el más fácil, aunque la pérdida de flexibilidad en la fijación de la imagen generada. Por cierto, hay flexibilidad en la librería GD:: SecurityImage, pero otstutstvuet mecanismo simple para la evaluación de la entrada del usuario (esta deficiencia debe ser privado de GD:: SecurityImage:: AC - "fusión" Auten:: Captcha y GD:: SecurityImage, que También sin duda prueba y le informará sobre los resultados).
Código Perl para generar la imagen CAPTCHA
! # / Usr / bin / perl uso Auten:: Captcha, el uso Digest:: MD5 qw (md5_hex); my $ cap_data_folder 'tmp / código de la imagen'; # Habrá un archivo de texto con el CAPTCHA códigos my $ cap_out_folder tmp = '/ outputcaptcha '; # Aquí están el CAPTCHA de verificación de la imagen de mi cap_length $ = 4 # ¿Cuántos personajes se Captcha my $ captcha = Auten:: Captcha-> new (data_folder => $ cap_data_folder, output_folder => $ cap_out_folder,); my $ md5sum = $ captcha-> generate_code ($ cap_length); Este código va a crear un conjunto de caracteres genera una imagen basada en ella y volver hash md5 para él. Nuestra próxima tarea - para verificar que el usuario introduce el código sootvtetstvie sgenerirovannomuyu.
Código Perl para comprobar el valor introducido CAPTCHA
Para comprobar el valor introducido por el usuario para calcular el hash md5 código de la imagen (que se utiliza para este Compendio de la biblioteca:: MD5).
mi = $ md5sum md5_hex ($ cap_input_value); # Vychslyaem hash MD5 de la entrada del usuario my $ result = $ captcha-> check_code ($ cap_input_value, $ md5sum); # Nos devuelve un hash para comprobar
Los resultados del análisis se presentan en la documentación de Auten:: Captcha, yo los he duplicado a continuación:
1: Aprobada
0: El código no marcado (error de archivo)
-1: Error: código expirado
-2: Error: no válido de código (no en la base de datos)
-3: Error: el código no válido (código no coincide con la cripta)
Por lo tanto, es suficiente para que las condiciones de operación, en función de los resultados. Más fácil que
Más sobre temas similares:
Filed under: Internet , Codificación |
Tags: código de la imagen , procedimientos para , perl , programación |
10 comentarios 

No se puede encontrar Authen / Captcha.pm en @ INC (@ INC contiene ....
Módulos instalados pero el problema persiste
Ese conjunto - que era bueno. Pero si el problema persiste - sugiere que el lugar de instalación no se indica en @ INC
Necesidad de comprobar que la unidad (sobre todo si se ha instalado no es nativo de la herramienta de configuración del sistema o de la cpan Rutaceae) y añadir la ruta a @ INC
Puesto en marcha por el camino de Nix, un sistema nativo de Perl
Y lo que es el punto en estas capturas, si cualquier tipo de servicio OCR puede pasar. Usted puede incluso comprobar su CAPTCHAs - no se pueden descargar de prueba gratuita
Hay, a mi entender, reconocer a las personas. Un CAPTCHA - contra los robots.
Bueno, después de todo contra los robots de enviar el código de la imagen en el reconocimiento de la gente! Y el barco está protegida.
Por cierto, no puede probar la Imagen de seguridad en su estabilidad. Hagruzhaete allí y ver cómo la gente la reconoce.
Eso es correcto. Quiero decir, ¿qué código de la imagen de los sentidos humanos, pero una vez que la gente reconoce estos servicios - Captcha hacer algo estúpido hablar de esta manera. Las personas y debe reconocerla.
La siguiente pregunta de la viabilidad económica, pues la gente no reconoce libre. Así Imagen de seguridad en sitios como mi totalmente justificado -, se quita los bots, y el reconocimiento de un hombre que casi nadie pagaría.
Usted sabe, yo podría pagar 30 rublos para mí reconocer en 1000 las capturas. Es 1000 mensajes, o para registrar una cuenta o jabones para una cantidad ridícula.
Lo que esto prueba o refuta la luz de lo anterior? Si encuentra aceptables los dividendos esperados a partir de dichas inversiones - ¿por qué no?