lunes, 1 de agosto de 2011

Para qué sirve reCaptcha

reCaptcha (y quizás otros sistemas de captcha) sirven más que para su cometido.
Y es que el cometido obvio, por así decirlo, de los sistemas de captcha es el de generar un desafío (challenge en inglés) para que ante un formulario el sistema web pueda asegurarse de que el que realizó la acción fue un ser humano y no un script o bot programado. Es entendible entonces como los sistemas de captcha evolucionan y van poniendo las letras cada vez mas complejas, tachadas o incompletas, ya que hecha la ley, hecha la trampa, y muchos hackers programan sistemas OCR para que rellenen automáticamente estos desafíos y completen automáticamente cualquier formulario o lo que sea.
Pero, al menos en reCaptcha, también hay otro objetivo (que no conocía… gracias a Pablo que me lo explicó) y es genial como lo implementan.
Este sistema, comprado por Google hace unos años, utiliza la “inteligencia colectiva” para que los humanos que rellenan formularios (o sea, nosotros) ayudemos a digitalizar textos. Los que han usado esto sabrán que cuando nos enfrentamos a un reCaptcha vemos 2 palabas: Una es la de control y la otra es el desafío (para el sistema). La de control el sistema la conoce, y la otra es la que el sistema está ingresando… ¿Pero a qué y para qué?
reCaptcha
El tema es así, supongamos que somos Google y queremos digitalizar ediciones muy viejas de el New York Times. Primero le pagamos a gente para que ponga las hojas en un scanner (o sean escaneados por sistemas automáticos, da igual). La cuestión es que por más bueno que sea el software OCR, los diarios antiguos, por la mala calidad de impresión sumado al tiempo, tienen palabras irreconocibles…
reCaptchaEl software OCR toma las palabras irreconocibles, las remarca, y se las manda a la API de reCaptcha para que los humanos que llenan formularios escriban “lo que les parece que dice”.
reCaptcha
Obviamente si el sistema pone mil veces la siguiente palabra…
reCaptcha
Mediante el algoritmo va a ir tomando los ingresos de los humanos que llenan formularios y determinará que esa palabra es DOUGLAS, (con coma) y a partir de que miles y miles escriban lo mismo, dará la palabra por sentado y además lo tendrá ingresado en la API como un desafío confiable.
Una vez que el sistema envía y recibe el feedback oculto de la comunidad (todo esto sin que casi nadie se entere que trabaja digitalizando texto) puede entregar el texto digitalizado con un 99,5% de efectividad ¿Groso? Miren el resultado final.
reCaptchaAhora, ¿qué pasa si tenemos la “suerte” de que somos el primero o el segundo en recibir una nueva palabra? En ese caso es probable que si escribimos cualquier cosa el sistema nos deje pasar de todos modos, ya que la base de datos de esa palabra no existe.
fuente Guillermo

No hay comentarios:

Publicar un comentario