One-Time Password (OTP) – Più sicurezza nella rete

Le password tradizionali hanno molti punti deboli. Questo vale persino per le password attentamente selezionate e di fatto considerate password sicure. Il problema principale è che, se una password viene utilizzata regolarmente, sussiste il pericolo che persone non autorizzate possano impossessarsene. Spesso questo accade attraverso i cosiddetti attacchi replay: la password viene intercettata e in seguito utilizzata da persone non autorizzate per effettuare nuovamente l’autenticazione.

La colpa non è sempre solo ascrivibile alla disattenzione degli utenti: negli scorsi anni si sono verificati vari casi in cui anche noti servizi online sono stati oggetto di attacchi informatici che hanno consegnato i dati di migliaia di clienti nelle mani sbagliate.

In che modo è possibile proteggersi da questo pericolo? Una possibilità è quella di modificare la password a intervalli di tempo regolari e possibilmente brevi. Tuttavia, nessun utente vorrebbe dover cambiare le proprie password ogni giorno. Un’altra soluzione, certamente più semplice da realizzare, è costituita dalla cosiddetta one-time password (password usa e getta).

Certificato SSL
Proteggi il tuo sito con un certificato SSL

Evita che venga visualizzata un'allerta nella barra degli indirizzi e ottieni la fiducia dei clienti con un sito crittografato tramite SSL.

Cos’è una one-time password?

Una one-time password è una password che può essere utilizzata un’unica volta e che, dopo l’utilizzo, perde validità. La traduzione italiana del termine è quindi password “usa e getta”. Spesso si trova anche solo l’abbreviazione OTP oppure, come termine derivato, codice OTP.

La password usa e getta è generalmente costituita da un codice OTP alfanumerico (lettere e numeri) e viene generata ex novo ogni volta che si esegue una procedura di accesso. Dopo che l’utente ha eseguito l’accesso con una one-time password, questa perde la propria validità e non può più essere utilizzata all’accesso successivo.

Le password usa e getta vengono spesso utilizzate nell’ambito di un’autenticazione a due fattori, ad esempio nell’online banking, tuttavia sempre più spesso anche nelle aziende. A questo scopo l’utente immette per prima cosa i normali dati di accesso. Successivamente, utilizzando ad esempio un generatore di codice, genera una password usa e getta dinamica anch’essa necessaria per l’autenticazione.

Questo passaggio aggiuntivo permette di innalzare in modo significativo il livello di sicurezza: anche se, durante la procedura di accesso, un soggetto non autorizzato riesce ad accedere alla password normale, gli mancherà comunque la password usa e getta dinamica, poiché questa viene generata solo all’occorrenza. Per questo sempre più servizi online stanno passando all’utilizzo dell’autenticazione a due fattori, in particolare se in gioco ci sono dati sensibili.

N.B.

Non confondete l’abbreviazione OTP di one-time password con l’abbreviazione OTP che sta per one-time pad. Quest’ultimo termine indica infatti un’altra procedura di codifica che, pur molto sicura, è molto più complessa da realizzare rispetto a un processo one-time password.

Come funziona una password OTP?

Per poter eseguire l’accesso con una one-time password, sia l’utente sia il sistema in cui viene utilizzata devono conoscere la password. Affinché questo avvenga, esistono due metodi:

Elenco di password

Un elenco di password è il modo più semplice per utilizzare le password usa e getta. Su un elenco prestabilito si trovano diverse password che sono note sia all’utente sia al sistema. Quando una di queste password usa e getta viene utilizzata, l’utente deve semplicemente cancellarla dall’elenco.

È evidente che lo svantaggio di questa procedura è che, se l’utente perde l’elenco, c’è il rischio che terzi non autorizzati abbiano accesso alle password. Anche se questi elenchi di one-time password vengono talvolta ancora utilizzati nell’online banking, sempre più fornitori stanno passando a password OTP generate dinamicamente per evitare questo inconveniente.

Password generate dinamicamente

Le password usa e getta generate dinamicamente rappresentano oggi il metodo più utilizzato. Molto diffusi sono ad esempio i generatori di password hardware: piccoli dispositivi realizzati sotto forma di portachiavi o scatolina che, all’occorrenza, generano una password.

Questi dispositivi vengono denominati anche token OTP. Ciò che li accomuna è la presenza di un display e la capacità di generare password usa e getta a ogni nuova procedura di accesso semplicemente premendo un pulsante. Le password così generate vengono spesso immesse in associazione ad altre caratteristiche di autenticazione, come ad esempio codici PIN o ID utente.

Per generare una password usa e getta dinamica viene utilizzato uno speciale algoritmo che, se necessario, genera la password. In base al metodo di generazione, la password può essere di tre tipi:

  • Password basata sul tempo
  • Password basata su evento
  • Password generata su richiesta del server

Password basata sul tempo

Nell’ambito di questo processo, il generatore di password (client) e il server generano password abbinate utilizzando lo stesso algoritmo. Questo tipo di password, detta Time-based One-Time Password (TOTP) è pertanto nota sul lato client e sul lato server ed è valida per un determinato lasso di tempo, solitamente da uno a quindici minuti.

Password basata su evento

Le password usa e getta basate su evento vengono generate attraverso l’esecuzione di una determinata azione, ad esempio premendo un tasto sul generatore token. Come nel processo basato sul tempo, anche in questo caso sul lato server e sul lato client lavora lo stesso algoritmo. La password viene calcolata sulla base dell’ultima password valida e può così essere sincronizzata con il server.

Richiesta del server (meccanismo challenge-response)

Con questo metodo, il server invia una richiesta (challenge) alla quale il client deve rispondere (response). Il client riceve un determinato valore dal server e, con questo, calcola la password usa e getta. Poiché il server conosce l’algoritmo e il valore prestabilito, è in grado di verificare la password generata.

Quando è vantaggioso utilizzare le one-time password?

L’utilizzo delle password usa e getta viene consigliato per tutti i servizi online e i siti web che trattano dati particolarmente sensibili e importanti. Tra questi figurano:

  • Online banking
  • Servizi finanziari come depositi titoli online o borse per criptovalute
  • Dati aziendali sensibili
  • Canali di comunicazione riservati

La password usa e getta non è necessaria per tutti i siti web. In generale, tuttavia, l’utente dovrebbe accertarsi che le password siano sicure, anche se vengono utilizzate più volte. Secondo alcuni studi, nonostante l’aumento della criminalità informatica, molti utenti sono ancora troppo poco consapevoli dell’importanza della sicurezza.

Consiglio

Oltre al processo OTP esistono altri metodi interessanti per ottenere una maggiore sicurezza e che, in futuro, potrebbero ottenere grande attenzione. Tra questi citiamo ad esempio il nuovo standard WebAuthn, che promette di rendere totalmente superflua la generazione di password.

Vantaggi e svantaggi delle one-time password

Vantaggi Svantaggi
Difficili da decifrare medianti attacchi replay Necessaria tecnologia aggiuntiva
Nessun pericolo che una password trafugata possa essere utilizzata per altri siti e/o servizi I token di sicurezza possono subire guasti o rompersi
Maggiore sicurezza per l’utente Processo di generazione delle password OTP talvolta complesso
Dominio
Registra il tuo dominio
  • Certificato SSL Wildcard incluso
  • Registrazione di dominio sicura
  • Indirizzo e-mail professionale da 2 GB
Hai trovato questo articolo utile?
Per offrirti una migliore esperienza di navigazione online questo sito web usa dei cookie, propri e di terze parti. Continuando a navigare sul sito acconsenti all’utilizzo dei cookie. Scopri di più sull’uso dei cookie e sulla possibilità di modificarne le impostazioni o negare il consenso.
Page top