Turing nella vita quotidiana: i CAPTCHA

August 12, 2019

Cosa significa Captcha? Captcha è un nome impronunciabile che indica box di caratteri (spesso) indecifrabili. Di fatto, un test di Turing che compiamo tutti i giorni il cui significato è però enormemente cambiato. Utilizziamo questi giorni vicini alla pausa di Ferragosto per ricostruire la storia del Captcha mettendo in luce alcuni interessanti elementi nel panorama delle AI.

Per chi ancora se lo stesse chiedendo Captcha non è il nome di una tribù di indiani d’America e, no, a un “Captcha” non si risponde “Salute!”. Captcha è un acronimo che sta per "completely automated public Turing test to tell computers and humans apart", vale a dire, traducendolo, “Test di Turing pubblico e completamente automatico per distinguere computer e umani”. Il Captcha è quindi uno strumento informatico che consiste in un test di una o più domande utili alla macchina - il server - per capire se l'utente è un umano o non un computer. Perché? Perché qualcuno potrebbe aver realizzato un bot, cioè un software che navigando in automatico su internet raccoglie dati, compila form o compie altri tipi di interazioni destinate agli umani permettendo al suo programmatore di eseguire attività di spam o altre forme di raccolta dati.

 

Tornando alle curiosità dobbiamo notare che non a caso infatti la pronuncia fonetica dell'acronimo scelto suona simile all'espressione inglese "Caught you!" che significa “Beccato!”.

 

 

Captcha è di fatto un sistema di sicurezza che perlopiù serve per proteggere gli utenti da robot spam e da altri sistemi automatici per trovare le password procedendo per tentativi. Insomma, se ancora non fosse chiaro di che si tratta, capirete ora che in realtà vi è capitato spessissimo di dover rispondere a un Captcha. Eccone un esempio:


 

 

 

Cosa è un Captcha e a cosa serve?
Molti servizi web usano i Captcha, Google incluso, per proteggere gli account da eventuali violazioni (attacchi di brute forcing per le password o SPAM). Pensate a tutte le volte che si deve fare un pagamento online o che accedete al vostro conto corrente da internet o a quando compilate il form di richiesta informazioni su un sito.

 

Ebbene il Captcha è generalmente quel box contenete una sequenza di lettere e numeri, spesso di difficile lettura perché distorta o offuscata che vi viene chiesto di decifrare (talvolta non senza dover ripetere più volte l’azione) prima di concludere la vostra operazione. 

 

 

Sono Captcha anche indovinelli semplici (tipo "quanti sono i nani di Biancaneve?") o le operazioni matematiche elementari che vi vengono sottoposte nelle medesime circostanze. In ogni caso si tratta di un test che serve al sistema per capire se chi vi sta accedendo è una persona (benvenuta) o un bot (da cacciare perché come detto tenterà di sottrarre informazioni e dati sensibili).

 

Captcha, una storia di odio e amore
I captcha hanno da poco superato la maggiore età. Vengono infatti sviluppati per la prima volta nel 1997 dal settore ricerca e sviluppo di AltaVista (uno dei primi motori di ricerca veloci in rete) per impedire l’aggiunta fraudolenta di Url a questo motore di ricerca (indirizzi di siti messi apposta da alcuni utenti per fare spam).

 

Il termine viene però coniato nel 2000 da Luis von Ahn, Manuel Blum e Nicholas J. Hopper della Università Carnegie Mellon e da John Langford della IBM, denotando così un qualunque tipo di programma in grado di distinguere tra persone e computer.

 

In questo primo stadio il test di Turing serve solo per selezionare l'umano. Alzando il task cognitivo oltre la soglie della macchina si distingue tra il bot e l'umano. Ben presto però qualcuno ebbe un'idea diversa.

 

Una prima evoluzione reCAPTCHA, il Captcha di Google
reCAPTCHA è il plugin gratuito messo a disposizione da Google. Si tratta del frutto di un progetto sviluppato da alcuni ricercatori della Carnegie Mellon University di Pittsburgh, in Pennsylvania, e acquistato nel 2009 da Google.

La sua particolarità risiede nel fatto che le interpretazioni date dagli utenti a parole difficili da leggere contribuiscono alla digitalizzazione di testi.

 

Ci spieghiamo meglio: invece di richiedere all'utente di decifrare stringhe alfanumeriche “non sense”, questo sistema sottopone parole che i sistemi di riconoscimento ottico dei caratteri, utilizzati per convertire in formato digitale i testi stampati, non riescono a riconoscere.

 

Questo significa che, ogni volta che un Captcha viene risolto allo stesso modo da un numero minimo di utenti, la parola viene riconosciuta come valida, quindi il programma la acquisisce e la inserisce nella versione digitale del libro da cui è stata tratta, associandola al testo che faticava a riconoscere.

 

 

 

Il testo acquisito viene sottoposto ad analisi mediante due diversi riconoscimenti ottici dei caratteri. I loro rispettivi output vengono quindi allineati tra loro mediante algoritmi standard di corrispondenza delle stringhe e confrontati tra loro e con un dizionario inglese. Qualsiasi parola decifrata in modo diverso da entrambi i programmi OCR o che non si trova nel dizionario inglese è contrassegnata come "sospetta" e convertita in Captcha.

 

La parola sospetta viene visualizzata, fuori dal contesto, a volte insieme a una parola di controllo già nota. Se l'umano digita correttamente la parola di controllo, la risposta alla parola discutibile viene accettata come probabilmente valida. Se un numero sufficiente di utenti dovesse digitare correttamente la parola di controllo, ma digitare in modo errato la seconda parola che OCR non aveva riconosciuto, la versione digitale dei documenti potrebbe finire per contenere la parola errata. L'identificazione eseguita da ciascun programma OCR ha un valore di 0,5 punti, e ogni interpretazione di un essere umano ha un punto pieno.

 

Una volta che una determinata identificazione raggiunge 2,5 punti, la parola è considerata valida. Quelle parole a cui viene costantemente attribuita un'unica identità dai giudici umani vengono successivamente riciclate come parole di controllo. Se le prime tre ipotesi coincidono ma non corrispondono a nessuno degli OCR, vengono considerate una risposta corretta e la parola diventa una parola di controllo. Quando sei utenti rifiutano una parola prima di scegliere qualsiasi ortografia corretta, la parola viene scartata come illeggibile.

 

 

 

reCAPTCHA ha digitalizzato completamente gli archivi del New York Times e i libri di Google Libri , a partire dal 2011. Lo slogan di reCAPTCHA era "Stop Spam. Leggi libri". A un certo punto Google ha utilizzato reCaptcha per digitalizzare i numeri civici delle vie di Google maps passando dalla digitalizzazione della cultura ad aggiungere valore commerciale alle sue mappe.

 

L'idea di per sé è geniale. Il cervello umano è l'elaboratore più potente che conosciamo. Nel chiedere di risolvere un Captcha si ha a disposizione per 20 secondi questa enorme potenza di calcolo. Perché non usarla a proprio vantaggio? In questa evoluzione il test di Turing serve a riconoscere l'uomo per poter sfruttare la sua unicità cognitiva chiedendogli di pagare un piccolo prezzo cognitivo per accedere in sicurezza ai servizi che cerca su di un sito web.

 

Le lamentele di alcuni utenti e alcune critiche hanno portato a una ulteriore evoluzione.

 

Evoluzioni: da reCAPTCHA a “No CAPTCHA reCAPTCHA”
Quante volte vi è capitato di infastidirvi in presenza di codici alfanumerici indecifrabili? Probabilmente ai più è toccato anche ripetere il test più volte a fronte di interpretazioni errate. Insomma, i Captcha, in genere, non stanno troppo simpatici agli internauti.

 

Così, a fine 2014 Google ha annunciato “No CAPTCHA reCAPTCHA”, un nuovo tipo di test che riconosce i bot in modo più semplice per gli utenti. Un’evoluzione dei vecchi Captcha per stare al passo con una tecnologia contemporanea che stava consentendo ai bot di bypassare anche i Captcha più complessi.

 

Per gli utenti si tratta di una semplificazione: da qualche tempo, spesso, basta infatti mettere una spunta su una casella con scritto “Non sono un robot”.

 

 

 

Con questo semplice gesto, il programma è in grado di acquisire una serie di informazioni - indirizzo IP, cookie, ma anche movimento del mouse e tempo impiegato per rispondere – sufficienti per riconoscere la maggior parte degli utenti.

 

In casi di difficile disambiguazione persona-bot, il Captcha però ripropone un secondo test, come ai vecchi tempi.

Per rendere questo secondo test più facile anche da mobile, Google ha sostituito il codice alfanumerico da decifrare con un’alternativa: scegliere quali tra alcune fotografie proposte assomigliano di più a un’immagine data.

Anche in questo caso i dati osservabili vengono estrapolati e impiegati per implementare altre conoscenze: le informazioni dedotte con questo test servono infatti a migliorare la ricerca di immagini su Google.

 

Questo passaggio è notevole per almeno due ragioni. Una prima questione riguarda la sofisticazione sempre crescente di bot che riusciamo a realizzare; la seconda è la perdita di interesse per la digitalizzazione. Per quanto riguarda la digitalizzazione, l'enorme produzione di contenuti digitali ha reso meno appetibili i vecchi contenuti analogici. Di contro se è vero che i bot si sono evoluti, anche le AI hanno iniziato a diffondersi e questo ha sia reso meno necessaria la capacità cognitiva umana sia fatto fare un salto al test d Turing quotidiano.

 

Ora la macchina non si basa sulla difficoltà del task cognitivo (un bot può emulare l'umano) ma su una profilazione dell'incertezza umana. Infatti sono le indecisioni e il vagare del mouse di chi cerca di capire gli elementi che dicono al server che davanti a sé non ha una macchina. No Captcha segna una macchina che scopre l'umano dai suoi limiti.

 

Ma se allora la macchina può battere l'umano, Captcha può ancora cambiare.

 

hCaptcha: l'umano addestra la macchina

Arriviamo così ad hCaptcha: un sistema che vuole rimpiazzare reCaptcha promettendo ai proprietari dei siti web dei soldi per il suo utilizzo. Seguiamone la presentazione che ne fa l'azienda.

 

hCaptcha è un modo per ogni sito web nel mondo di creare un nuovo flusso di entrate dal lavoro già svolto dai visitatori . In parole povere, quando gli utenti del sito web dimostrano la loro umanità tramite un captcha (per evitare bot e spam), i proprietari di siti web vengono pagati.

 

Le aziende di machine learning pongono semplici domande alle quali gli umani devono rispondere. Questo crea dati etichettati per migliorare i loro modelli. I siti web mostrano ai loro visitatori la domanda e controllano la loro risposta per vedere se sono umani.


Tutti ne traggono vantaggio: i siti web ottengono un nuovo flusso di entrate, i visitatori possono utilizzare i siti web con meno traffico di spam e bot, e le aziende di ML ottengono etichette più veloci ed economiche.


Perché hCaptcha?
Oltre l'equivalente di 100 anni di lavoro sono dedicati a risolvere Captcha ogni giorno.
Un Captcha richiede in genere 3-5 secondi per essere risolto. Più di un miliardo di Captcha al giorno ricevono risposta in tutto il mondo e gran parte di questo sforzo è del tutto improduttivo.

 

 


Le opzioni oggi sono di sprecare quei milioni di ore umane o concederle gratuitamente agli sforzi di apprendimento automatico di Google tramite reCAPTCHA. Sapevi che quelle immagini "clicca sull'auto" sono tutti fotogrammi video delle auto a guida autonoma Waymo?


hCaptcha democratizza questa capacità di porre domande in un mercato a cui qualsiasi società di apprendimento automatico e sito web possono aderire.


Da dove viene?
Perché abbiamo creato hCaptcha? Semplice: ne avevamo bisogno per il nostro uso personale. In IM, applichiamo l'apprendimento automatico su vasta scala: migliaia di nodi che elaborano dati per miliardi di video.


Le nostre condutture sono state progettate per mescolare macchina e intelligenza umana con rapporti adeguati nel tempo man mano che i modelli migliorano. Ciò significa che nelle prime fasi di implementazione di una nuova pipeline preferiamo consumare milioni di etichette umane se disponibili a costi e volumi ragionevoli.


hCaptcha è una soluzione a un problema che noi e molti altri abbiamo, e siamo lieti di condividerlo con tutti coloro che vogliono migliorare il mondo migliorando l'intelligenza artificiale.


Chi ha creato hCaptcha?
Puoi leggere di più sulla nostra pagina Informazioni , ma in breve:


Siamo tutti veterani scienziati e ingegneri. Abbiamo costruito e venduto aziende, lavorato in aziende come Dropbox, Facebook, VMWare e Cloudera e studiato in istituzioni come Stanford e MIT. Abbiamo trascorso decenni lavorando in machine learning, sistemi distribuiti, sicurezza delle informazioni e ridimensionamento di alcuni dei siti più grandi del mondo.


Siamo una società privata impegnata nella ricerca fondamentale, nell'open source e nel continuo investimento nella missione più ampia. Il nostro team ha dei privilegi su dozzine di progetti open source e siamo orgogliosi di aver contribuito in modo significativo a basi di codice come Hadoop e HBase tra molti altri.
Alimentato dal protocollo HUMAN

 


hCaptcha è piuttosto interessante, ma è solo il primo pezzo del puzzle di una grande visione: consentire agli esseri umani di aiutare a migliorare l'intelligenza delle macchine in modo molto più rapido ed efficiente che mai.


Dietro hCaptcha si trova il protocollo HUMAN, un protocollo decentralizzato aperto per il lavoro umano che funziona sulla blockchain di Ethereum. Ciò ha molti vantaggi: consentire agli "libri aperti" di dimostrare che stiamo distribuendo equamente taglie, micropagamenti efficienti tramite token umani (un token compatibile con EIP20 con un'API Bulk personalizzata), fornendo un nuovo meccanismo per ridimensionare un mercato a due facciate in modo efficiente in termini di capitale e altro ancora.


Il nostro obiettivo è quello di pubblicare un'implementazione di riferimento open source completa di tutti i componenti nel protocollo HUMAN quest'anno.


Pubblicheremo articoli tecnici approfonditi nelle prossime settimane e mesi man mano che open source forniremo più componenti del sistema che la comunità degli sviluppatori potrà utilizzare e siamo entusiasti di aiutarti a costruire!


Stato attuale
Abbiamo lavorato tranquillamente per molti mesi alla costruzione del software, alla convalida delle idee e al collaudo dell'infrastruttura. Il sistema è attivo in versione beta in questo momento e abbiamo già clienti, partner e siti Web eccezionali già registrati.


Il servizio hCaptcha è già stato testato su diversi miliardi di richieste al giorno e siamo certi che abbineremo o supereremo le capacità di protezione anti-bot di reCAPTCHA. Mentre per il momento manteniamo l'etichetta beta, hCaptcha è già in uso su siti Web reali e oggi etichetta i dati dei clienti reali.


Se hai un sito Web, è ora di smettere di regalare ai tuoi visitatori gratuitamente.
Se sei un'azienda con esigenze di etichettatura, inviaci semplicemente una e-mail: saremo lieti di lavorare insieme per aiutarti ad abbreviare i tempi di consegna, aumentare la qualità e ridurre i costi nella creazione del set di dati.


Connettiamoci
Questa è una giornata entusiasmante per tutti noi e non vediamo l'ora che tu provi il servizio, inizi a costruire sul protocollo e sulla piattaforma e unisciti a noi in questa missione!
Fateci sapere cosa ne pensate su Telegram , Twitter , Facebook o e - mail . Troveremo i modi per premiare i primi membri della nostra comunità per il tuo entusiasmo e la fiducia in noi e adoreremmo un modo per rimanere in contatto con te.

 

Con queste vibranti parole hCaptcha è stato presentato alla comunità di internet. Il valore del cervello umano nei suoi task cognitivi è ancora merce di valore. Ma quello che oggi si cerca di far pagare all'uomo non è un task di digitalizzazione bensì l'espropriazione delle sue stesse facoltà cognitive.

 

Tutte le volte che ci è chiesto di riconoscere qualcosa in una foto da Google con il suo reCaptcha stiamo addestrando i suoi sistemi di guida autonoma a conoscere l'ambiente e a saper distinguere cosa le sue telecamere vedono. Ora questa capacità di etichettare i dati è il vero tesoro. Non più il prodotto della cultura umana passata da rendere fruibile a tutti con il digitale. Non più l'ingegno di un'umanità che si conserva nelle biblioteche o nei documenti storici ma la capacità di comprendere e schematizzare la realtà che ci promettono le AI. 

 

Gli ingegneri di hCaptcha danno per scontato cosa sia di valore oggi e promettono solo di far guadagnare il maggior numero di persone possibile (loro inclusi).

 

Le AI e il test di Turing abita già la nostra quotidianità. Se prendiamo consapevolezza di cosa testiamo quotidianamente possiamo capire il valore che attribuiamo all'umano nella società algoritmica che stiamo costruendo.
 

 

 

 

Share on Facebook
Share on Twitter
Please reload