0 risultati
video suggerito
video suggerito
21 Maggio 2023
8:30

Cosa sono i codici Captcha e come fanno a verificare che non siamo dei robot

Come funziona il box "non sono un robot"? E come fa un test così semplice a dimostrare che siamo degli umani? Ecco come funzionano i codici Captcha.

1.061 condivisioni
Cosa sono i codici Captcha e come fanno a verificare che non siamo dei robot
captcha

Spesso, quando ci registriamo ad un sito web per la prima volta o effettuiamo una transazione online ci viene richiesto di dimostrare che "non siamo dei robot" ed il metodo di verifica utilizzato è un cosiddetto codice captcha (Completely Automated Public Turing Test to Tell Computers and Humans Apart). Si tratta di un test di verifica che permette di verificare se l'utente è un umano o meno tramite il riconoscimento di immagini, scritte distorte o cliccando su un apposito box. Ma come funzionano esattamente questi codici?

La nascia del codice captcha

Il termine captcha fu coniato da Luis von Ahn, Nicholas J. Hopper e John Langfor e si tratta di un test che si basa su quello di Turing per comprendere se l'utente è un umano o meno. Un test di Turing, ricordiamolo, è un particolare tipo di test che serve a valutare la capacità di una macchina di esibire comportamenti equivalenti o indistinguibili da quelli di un umano.

I captcha sono test che risultano essere relativamente semplici da risolvere per gli umani, che infatti impiegano in media circa 10 secondi, e pressoché irrisolvibili per un computer.
L'importanza di introdurre test di questo tipo deriva dalla necessita di proteggere un sito web da attacchi informatici sferrati da bot automatici: pensiamo, ad esempio, a cosa succederebbe se un bot inondasse di richieste di registrazione un server! Attacchi di questo tipo vengono definiti DDoS (Distributed Denial of Service) e si verificano quando un utente malevolo genera verso un server traffico al fine di rendere indisponibile lo stesso al traffico legittimo.

Il box "Non sono un robot"

Questo tipo di test è basato su un semplice box da spuntare che è posto, tipicamente, a fianco alla scritta "non sono un robot". Ma come fa un test così banale, a verificare che chi effettua l'operazione è un umano?

i'm not a robot

Questo tipo di test test è stato brevettato da Google, che ha acquisito un popolare sistema di captcha che prende il nome di reCAPTCHA.
Il box "non sono un robot" ha un meccanismo di analisi completamente diverso rispetto a quelli basati sul riconoscimento di testo o elementi in un'immagine: ciò che viene analizzato in questo caso non è il click in sé ma la lista di operazioni che l'utente ha effettuato prima e dopo tale click.

Quando si clicca il tasto "non sono un robot" un programma cerca di analizzare una serie di parametri svolti dall'utente come: i movimenti del mouse effettuati, le azioni che l'utente fa subito dopo aver cliccato, le pagine visitate in precedenza e altro. In questo caso quindi il parametro utilizzato per effettuare il test di Turing è, quindi, il comportamento avuto prima e dopo il click.
Google ha, negli anni, continuato a sviluppare reCAPTCHA ampliando la lista di controlli e modificando il comportamento del test, nelle ultime versioni (reCAPTCHA v3) i test sull'analisi del comportamento dell'utente possono partire anche senza che vi sia la comparsa a schermo del box, tuttavia qualora i test abbiano esito dubbio o negativo il box verrà mostrato per consentire un'analisi ulteriore.

Captcha con testo distorto

Una tipologia molto diffusa di Captcha sono quelli basati su testo distorto, viene chiesto all'utente di scrivere in un box di testo l'equivalente di ciò che legge in un'immagine distorta.
Come detto precedentemente un captcha efficace è facilmente risolvibile da un umano ma molto complicato per una macchina, in questo caso ciò che viene testata è la capacità di tradurre un input visivo nel suo equivalente testuale, la distorsione apportata all'immagine è necessaria al fine di rendere computazionalmente svantaggioso ad un computer tentare di risolvere quel test.

Le variazioni al testo possono includere rotazioni, distorsioni o fusioni tra le lettere, viene spesso applicato anche uno sfondo che consente di confondere ulteriormente le lettere all'interno dell'immagine.
Di questo tipo di captcha ne esiste anche la versione sonora che è basato sull'ascolto di un audio disturbato delle lettere distorte mostrate a schermo.

captcha

Captcha basati su immagini

I captcha basati su immagini si basano su un principio di funzionamento analogo a quelli su immagini di testo distorto.
Ancora una volta, se per un umano è semplice individuare i riquadri contenenti determinati oggetti (automobili, semafori, strisce pedonali etc…) per un programma questo compito non è così banale: il computer dovrebbe comprendere cosa il test richiede di trovare, analizzare l'immagine, comprenderne gli elementi e individuare quali riquadri contengono il dato elemento.

In questo caso, quindi, si aggiunge una difficoltà aggiuntiva, rispetto al riconoscimento del solo testo perché un computer dovrebbe anche associare una data parola (ad esempio "semafori") all'oggetto corrispondente e ritrovarlo all'interno di ciascuna immagine. Questa tipologia di captcha risulta, quindi, più sicura rispetto a quella basata sul solo testo.
Di contro, i test basati su testo e immagini introducono delle difficoltà in termini di accessibilità per utenti che, seppur umani, siano affetti da patologie che ne limitano le capacità visive e/o uditive.

image based captcha
Sfondo autopromo
Cosa stai cercando?
api url views