Reading Time: 3 minutes

Schemi per l’autenticazione

L’autenticazione di chi richiede un servizio è la funzione più delicata (e quella ripetuta con maggiore frequenza) della intera procedura di controllo accessi.

Essa può essere effettuata basandosi su:

  • qualcosa che solo l’utente conosce;
  • qualcosa che solo l’utente possiede;
  • qualcosa che caratterizza fisicamente l’utente.

L’invio di una password è un esempio di autenticazione fondata sul primo principio.

L’uso di una smart card o altri token (gettoni) è invece un esempio di autenticazione basata sul secondo principio.

L’installazione di dispositivi elettronici per acquisire l’immagine della retina o le impronte digitali dell’utente (e in generale un qualsiasi dato legato alla biometria) è un caso di autenticazione basata invece sul terzo principio.

Per una migliore efficacia la procedura può richiedere l’esibizione di una combinazione delle precedenti credenziali.

L’utilizzo di dispositivi hardware (come scanner biometrici), in grado di stablire l’identità fisica dell’utente che richiede un servizio, non è una soluzione proponibile su larga scala.

Tali dispositivi vengono adottati quasi esclusivamente per autenticare l’accesso a particolari locazioni fisiche (per esempio stanze blindate o uffici governativi).

Più recentemente si è diffuso l’uso di rilevatori di impronte digitali per regolare l’accesso alla propria postazione di lavoro, anche quando questa è scollegata dal resto della rete.

Non dimentichiamo poi che il progresso di queste tecnologie ha portato in questi anni ad avere scanner di impronte digitali, sistemi di riconoscimento vocale e riconoscimento facciale anche sui nostri smartphone.

L’evoluzione di queste tecnologie e della potenza hardware dei futuri dispositivi non farà che incrementare tali metodi di autenticazione.

I token sono invece largamente utilizzati in molti servizi Internet.

L’autenticazione in tal caso si fonda sul fatto che l’utente possiede il token richiesto dal servizio ed è in grado di esibirlo al momento opportuno.

Generalmente il token viene realizzato in hardware (per esempio viene memorizzato su una carta magnetica che deve essere introdotta in un apposito lettore, oppure tramite tecnologia RFID).

Per la lettura del token non serve necessariamente un dispositivo hardware dedicato.

Il token può essere realizzato come chiave USB (interfacce ormai disponibili su ogni postazione di lavoro), in modo da non limitare la diffusione del servizio.

Occorre comunque considerare che la diffusione di token hardware, anche quando vengono prodotti milioni di pezzi, ha un costo sensibilmente maggiore di qualsiasi schema per la gestione di credenziali basato esclusivamente a livello logico (password repository).

Inoltre è necessario ricordare che l’uso delle password non è mai interamente sostituito dal possesso di un token.

Per evitare che, in caso di furto o smarrimento del token, un hacker possa sostituirsi all’utente legittimo nell’accesso al servizio, oltre al token nell’implementazione pratica dei principali sistemi di autenticazione è richiesto l’utilizzo di un comune segreto condiviso.

Indipendentemente da quanto utilizzato come credenziale utente, uno schema di autenticazione deve possedere alcune caratteristiche irrinunciabili:

  • poter resistere ad attacchi esterni (non deve essere facile ingannare il sistema);
  • non richiedere un tempo eccessivo per stabilire l’identità del’utente;
  • non incidere troppo sul costo complessivo del servizio (uno schema complesso e costoso può compromettere la diffusione del servizio che lo adotta);
  • essere relativamente semplice da gestire (l’aggiornamento delle liste di utenti autorizzati al servizio deve essere semplice e veloce);
  • essere disponibile in ogni momento (la mancata disponibilità del sistema di autenticazione di fatto compromette la fruizione del servizio);
  • essere accurato (il numero di autenticazioni non riuscite da parte di utenti autorizzati, e il numero di autenticazioni riuscite da parte di quelli non autorizzati, deve essere limitato.);
  • essere facile da utilizzare (l’utente deve poter imparare in poco tempo l’uso del sistema);
  • non richiedere la condivisione di un elevato numero di segreti (minimizzare la quantità di informazioni riservate indispensabili per l’autenticazione).

Le procedure di autenticazione vengono normalmente classificate sulla base del numero di partecipanti di cui, al termine del processo, risultano verificate le credenziali.

Si può assistere a due scenari:

  1. autenticazione unilaterale (si verifica l’identità di un solo partecipante);
  2. mutua autenticazione (si stabilisce l’identità di entrambi i partecipanti).

Per giungere alla verifica delle credenziali dei partecipanti sono oggi disponibili numerosi approcci diversi.

Indipendentemente dai dettagli tecnici della singola procedura implementata, ciascun sistema di autenticazione si svolge secondo uno dei seguenti paradigmi generali:

  • paradigma username/password;
  • paradigma challenge/response;
  • paradigma timestamp.

Nei prossimi articoli analizzeremo più nel dettaglio i singoli paradigmi elencati.

 

Mattia Felici

Mattia Felici

error: Content is protected !!

Complimenti! Ti sei iscritto alla nostra Newsletter

C'è stato un errore durante l'invio della richiesta. Per favore riprova.

Computer Security will use the information you provide on this form to be in touch with you and to provide updates and marketing.