2009-06-09 21 views
23

¿Qué es un buen captcha invisible? Mi sitio requiere JavaScript, por lo que cualquier cosa que lo requiera está bien.¿Qué es un buen captcha invisible?

+3

No contaría con JavaScript para algo así. –

+0

leer más captcha en PHP http://php999.blogspot.in/2014/04/implementation-of-captcha-in-javascript.html – Smoke

Respuesta

4

He utilizado la técnica de un cuadro de texto Mostrar: Ninguno, y rechazo cualquier presentación que lo rellene y tuve bastante suerte con eso.

+0

El método "honeypot". No funcionará en un sitio de alto perfil como YouTube, Twitter, etc., pero me ha funcionado muy bien. –

12

Here's a simple math captcha por Phil Haack. Incluso funciona con JavaScript desactivado.

En sus propias palabras:

La forma en que funciona es que se hace algunos javascript para realizar un cálculo muy simple y escribir la respuesta en un campo de texto oculto utilizando Javascript. Cuando el usuario envía el formulario , tomamos el valor presentado de el campo de formulario oculto, lo combinamos con un valor de sal secreta, y luego picamos el conjunto . Luego comparamos este valor con el hash de la respuesta esperada , que se almacena en un campo de formulario oculto codificado base64. Si javascript está deshabilitado, entonces mostramos como texto junto con un campo de texto visible , dando así a los usuarios leyendo su sitio a través de navegadores que no son de javascript la oportunidad de comentar.

+0

Casi me quejé de que las matemáticas no son lo suficientemente invisibles pero esa solución es inteligente: D –

+3

el único problema es si el bot TIENE js de lo que sería inútil. – My1

1

Leer la respuesta aquí:

http://stackoverflow.com/questions/450835/how-do-you-stop-scripters-from-slamming-your-website-hundreds-of-times -a-second

Y esta pregunta no está relacionada con el administrador del sistema. El mejor lugar para preguntar sería stackoverflow.com

45

Agregue un nuevo campo de entrada, etiquételo "Por favor, déjelo en blanco", escóndalo usando CSS e ignore la publicación si ese campo está completo. Algo como esto:

<style type='text/css'> 
#other_email_label, #other_email { 
    display: none; 
} 
</style> 
... 
<form action='mail'> 
<label id='other_email_label' for='other_email'>Please leave blank:</label> 
<input type='text' name='other_email' id='other_email'> 
... 
</form> 

Así que un ser humano no verá ese campo (a menos que tengan CSS desactivado, en cuyo caso van a ver la etiqueta y dejarla en blanco), pero un robot de spam llenarlo. Cualquier post con ese campo poblado debe ser de un robot de spam.

+1

¡Agradable, nunca hubiera pensado en hacer esto! – jjxtra

+4

+1, he usado esta técnica con éxito –

+11

Esto parece agradable, pero no funcionará si su sitio está específicamente orientado, es decir, manualmente, alguien quiere inspeccionar su formulario para llenarlo con basura. Al observar su código HTML, se darán cuenta de que necesitan dejar ese campo en blanco, por lo que cuando crean el robot lo toman en cuenta y lo hacen. Esto solo funciona con arañas automáticas 100%, buscando sitios de spam con enlaces a otros, pero no si su sitio es el objetivo específico para un ataque. – Seb

-1

Si se refiere a - use captcha que un humano no puede ver como una prueba de validación humana - creo que es imposible.

De esta manera un robot ignorando el captcha pasará por una persona real! Parece una trampa para un robot de spam ingenuo.

Si desea que su sitio protegido con captcha funcione con clientes que no tienen javascript, entonces debe codificarlo en html.

Además, si puede identificar de forma fiable a los usuarios de confianza (ya sea mediante una decisión o detectando algún patrón de uso), puede dejar que se publiquen en su sitio sin captcha.

+0

Una aplicación práctica de la técnica de honeypot muestra que ha sido altamente efectiva durante [casi una década] (http://www.kodewerx.org/forum/ viewtopic.php? p = 73950 # p73950). Y hace unos años, combiné el honeypot con un [Q-A-rellenar-los-espacios en blanco] (http://www.kodewerx.org/forum/viewtopic.php?p=80205#p80205) desafío que es difícil para AI . p.ej. Google no puede responder estas preguntas, pero la mayoría de los estudiantes de kinder pueden hacerlo. –

Cuestiones relacionadas