Che cosa è un CAPTCHA?

  Captcha
  Questa CAPTCHA di "smwm" nasconde il suo messaggio di interpretazione del computer torcendo le lettere e l'aggiunta di una leggera pendenza colore di sfondo.

Con l'acronimo inglese CAPTCHAsi denota nell'ambito dell'informatica un test fatto di una o più domande e risposte per determinare se l'utente sia un umano (e non un computer o, più precisamente, un bot).

L'acronimo deriva dall'inglese "completely automated public Turing test to tell computers and humans apart" (Test di Turing pubblico e completamente automatico per distinguere computer e umani). Il termine è stato coniato, nella terminologia inglese, nel 2000 da Luis von Ahn, Manuel Blum e Nicholas J. Hopper della Università Carnegie Mellon e da John Langford della IBM. Come di consueto nella terminologia informatica, il termine inglese viene utilizzato anche nella terminologia informatica italiana.

Un test CAPTCHA tipicamente utilizzato è quello in cui si richiede all'utente di scrivere quali siano le lettere o i numeri presenti in una sequenza, che appare distorta o offuscata sullo schermo.

Dal momento che il test viene gestito da un computer, mentre il test originale di Turing viene gestito da un umano, a volte si descrive il test CAPTCHA come un test di Turing inverso; questa è però una definizione fuorviante, perché potrebbe indicare anche un test di Turing in cui entrambi i partecipanti tentano di provare che non sono umani.

Descrizione

Origini

I CAPTCHA sono stati sviluppati per la prima volta nel 1997 dal settore ricerca e sviluppo di AltaVista capitanato da Andrei Broder, per impedire ai bot di aggiungere URL al loro motore di ricerca. Broder e colleghi cercavano di creare immagini resistenti agli attacchi degli OCR e così consultarono il manuale degli scanner della Brother, su cui erano indicate tutte le caratteristiche che un testo deve avere per poter essere riconosciuto dallo scanner: caratteri ben definiti e lineari, mancanza di differenze tra i font utilizzati nel testo, sfondo omogeneo e ben distinguibile dal testo e così via. Applicando al contrario queste indicazioni, si riuscì a ottenere la peggiore situazione possibile, ossia un testo la cui scansione sarebbe stata molto difficile: caratteri storti, font diversi, colori del testo simili a quello dello sfondo o accorgimenti simili. Broder sostenne che l'introduzione di tale tecnologia avesse ridotto lo spam di oltre il 95%.

In modo indipendente dal team di AltaVista, Luis von Ahn e Manuel Blum realizzarono e diffusero nel 2000 l'idea del test CAPTCHA, intendendo con ciò qualunque tipo di programma che fosse in grado di distinguere tra persone e computer. Loro inventarono vari tipi di test, compresi i primi a ricevere un'ampia diffusione grazie all'uso da parte di Yahoo!.

Applicazioni

I CAPTCHA sono utilizzati per impedire che i bot utilizzino determinati servizi, come i forum, la registrazione presso siti web, la scrittura di commenti e in generale tutto ciò che potrebbe essere usato per creare spam o per violare la sicurezza con operazioni di hacking come il brute force. Questo tipo di test è stato utilizzato anche per contrastare lo spam generato da bot, obbligando il mittente di un messaggio e-mail non conosciuto dal destinatario a superare un test CAPTCHA prima di consentire la consegna del messaggio.

Caratteristiche

Per definizione i test CAPTCHA sono completamente automatici e non richiedono di norma interventi umani per la somministrazione o la manutenzione, con indubbi vantaggi in termini di costi e affidabilità.

Gli algoritmi utilizzati per realizzare i test vengono spesso divulgati al pubblico, anche se in molti casi sono protetti da brevetto. Tale politica di trasparenza è tesa a dimostrare il fatto che la sicurezza del metodo non risiede nella conoscenza di un algoritmo segreto (che potrebbe essere ricavata con tecniche di reverse engineering o in modo fraudolento); al contrario, per 'rompere' l'algoritmo è necessario risolvere un problema classificato come 'hard' nel campo dell'intelligenza artificiale.

Non è obbligatorio ricorrere a tecniche visive: qualunque problema di intelligenza artificiale che abbia lo stesso grado di complessità, ad esempio il riconoscimento vocale, è adatto a fare da base per un test di questo tipo. Alcune implementazioni consentono all'utente di scegliere in alternativa un test basato su tecniche auditive, anche se tale approccio ha subito uno sviluppo più lento e non è detto che possieda lo stesso grado di efficacia di quello visivo. Inoltre, è possibile ricorrere ad altri tipi di verifiche che richiedano un'attività di comprensione testuale, quali la risposta a una domanda o a un quiz logico, il seguire delle specifiche istruzioni per creare una password ecc. Anche in questo caso i dati sulla resistenza di tali tecniche alle contromisure sono scarsi.

Una promettente tecnica che si sta sviluppando negli ultimi anni impiega dei test basati sul riconoscimento di una faccia all'interno di un'immagine familiare. Per questo tipo di CAPTCHA si parla di RTT based on faces recognition. In letteratura allo stato attuale sono stati implementati soltanto due metodi basati su questo tipo di CAPTCHA: l'ARTiFACIAL e un CAPTCHA basato sul riconoscimento facciale.

Accessibilità

L'uso di test CAPTCHA basati sulla lettura di testi o altre attività legate alla percezione visiva impedisce o limita fortemente l'accesso alle risorse protette agli utenti con problemi di vista e, poiché tali test sono progettati specificamente per non essere leggibili da strumenti automatici, i normali ausili tecnologici usati dagli utenti ciechi o ipovedenti non sono in grado di interpretarli; ma anche gli utenti daltonici possono non essere in grado di superare il test. L'uso dei test CAPTCHA, generalmente legato alle fasi iniziali di accesso o registrazione ai siti e talvolta ripetuto per ogni accesso, può costituire una discriminazione nei confronti di tali utenti disabili tale per cui in alcuni ordinamenti esso costituisce una violazione delle norme di legge.

Nelle nuove generazioni di CAPTCHA, create per resistere ai più sofisticati programmi di riconoscimento di testi, può diventare abbastanza complicato, se non impossibile, riuscire a riconoscere il testo da parte di molti utenti, anche nel pieno possesso della propria capacità visiva.

Il W3C ha redatto un rapporto in cui vengono evidenziati alcuni dei problemi di accessibilità legati all'uso di tali tecniche.

RITORNO

  • 1 Utenti hanno trovato utile questa risposta
Hai trovato utile questa risposta?

Articoli Correlati

Che cosa è spam?

    Una cartella di messaggi spam di KMail Lo spamming, detto anche fare...

Che cosa è un dominio Internet?

A domain name is an identification string that defines a realm of administrative autonomy,...

Che cosa è un social media?

Social media, in italiano media sociali , è un termine generico che indica tecnologie e...

Perché sto ottenendo spammato e come prevenirlo?

Lo spam è un problema in corso che costa imprese e individui miliardi di euro di tempo e risorse...

Che cos'è il DNS?

Il sistema dei nomi di dominio (in inglese: Domain Name System, DNS), è un sistema utilizzato...

Powered by WHMCompleteSolution