All’aumento del tempo e delle attività svolte connessi ad Internet corrisponde anche una crescita dei pericoli legati alla sicurezza informatica, soprattutto quando si ha a che fare con accessi a portali che contengono informazioni riservate o dati di pagamento.
Uno dei sistemi di autenticazione più utilizzati per contrastare la diffusione di queste informazioni consiste nell’identificazione tramite codice OTP (One Time Password).
Grazie a questo codice temporaneo è possibile effettuare acquisti o operazioni di home banking in sicurezza, senza cadere in frodi o connessioni non autorizzate ai proprio account.
Scopriamo cos’è il codice OTP e perché è così importante ed efficace nell’ambito delle autenticazioni su vari siti.
Cos’è il codice OTP?
L’acronimo di OTP è One Time Password e definisce questo strumento come una password usa e getta da usare una sola volta composta da un codice alfanumerico generato in automatico da un algoritmo prima di essere inviata all’utente tramite SMS o altro mezzo (e-mail, SMS, app su smartphone).
Essendo l’OTP utilizzabile soltanto per un unico accesso, è più sicuro della password statica perché non dà luogo ai replay-attack, ovvero gli attacchi con replica perpetrati ai danni di utenti inconsapevoli che, accedendo ad un sistema con lo stesso password, una volta intercettato dai malintenzionati, può essere riutilizzato abusivamente altrove simulando l’identità dell’utente.
Con l’OTP questo comportamento fraudolento non è possibile perché non è più valido dopo il primo utilizzo e molto spesso scade dopo pochi secondi.
Inoltre, a differenza della password statica, l’OTP non può essere memorizzato e necessita di un ulteriore dispositivo, come uno smartphone o un token fisico, per poter funzionare.
Il codice OTP può essere utilizzato come:
- unico fattore di autenticazione;
- autenticazione a due fattori (Two Factor Authentication, 2FA), cioè associato, ad esempio, ad una password dell’utente o al PIN della carta di credito e, per via della sua complessità, ancora più sicuro.
Come viene generato un codice OTP?
Un codice OTP, o “One-Time Password” (Password monouso), è un codice temporaneo che viene utilizzato per autenticare un utente o una transazione. Esistono diversi metodi per generare codici OTP, ma uno dei più comuni è attraverso l’utilizzo di un algoritmo basato sul tempo o un seed segreto.
Ecco una spiegazione generale di come funziona la generazione di un codice OTP basato sull’algoritmo Time-based One-Time Password (TOTP):
- Seed segreto: Inizialmente, un seed segreto viene condiviso tra l’utente e il sistema che verifica l’OTP. Questo seed è una stringa segreta nota solo alle due parti.
- Orario corrente: La maggior parte dei sistemi TOTP utilizza l’orario corrente come parametro per generare il codice OTP. Solitamente, l’orario è suddiviso in intervalli di tempo fissi, ad esempio, ogni 30 secondi.
- Algoritmo di hash: L’orario corrente viene alimentato in un algoritmo di hash crittografico, insieme al seed segreto. Un algoritmo comune utilizzato per questo scopo è l’algoritmo HMAC-SHA-1 (Hash-based Message Authentication Code con Secure Hash Algorithm 1).
- Truncatura e formattazione: Il risultato dell’hash viene solitamente troncato in modo da ottenere un numero più breve (ad esempio, 6-8 cifre). Questo risultato è il codice OTP.
L’utente riceve quindi il codice OTP che cambierà ogni tot secondi (dove il “tot” è l’intervallo di tempo specificato). L’utente inserisce questo codice insieme alle proprie credenziali di accesso, e il sistema verifica la validità del codice confrontandolo con il valore previsto calcolato allo stesso modo. Poiché il seed segreto è noto solo al sistema e all’utente, e il codice cambia frequentemente, è difficile per un potenziale attaccante indovinare o duplicare il codice OTP senza conoscere il seed segreto corrente.
Quali sono gli usi per i codici OTP?
I codici OTP (One-Time Password) sono utilizzati per una varietà di scopi e contesti per migliorare la sicurezza delle transazioni e l’accesso a informazioni sensibili. Ecco alcuni dei principali utilizzi dei codici OTP
- Autenticazione a due fattori (2FA): I codici OTP sono spesso utilizzati come secondo fattore di autenticazione, insieme alle tradizionali credenziali come nome utente e password. L’utente deve inserire il codice OTP generato, dimostrando così di avere non solo le credenziali, ma anche l’accesso al dispositivo o al mezzo che genera il codice.
- Accesso a servizi online: Molte piattaforme online, come servizi di posta elettronica, social media, servizi bancari online, e altro ancora, offrono l’opzione di abilitare l’autenticazione a due fattori attraverso l’uso di codici OTP per aumentare la sicurezza dell’account.
- Transazioni finanziarie: Nei settori finanziari, i codici OTP sono spesso richiesti per autorizzare transazioni online, specialmente quelle considerate ad alto rischio o sensibili.
- Accesso remoto: Nell’ambito dell’accesso remoto a reti aziendali o sistemi critici, i codici OTP sono utilizzati per verificare l’identità degli utenti e aumentare la sicurezza delle connessioni.
- Protezione delle transazioni con carte di credito: Alcune carte di credito offrono una funzionalità di codice OTP per migliorare la sicurezza durante le transazioni online. Dopo aver inserito i dettagli della carta, l’utente riceve un codice OTP per completare la transazione.
- Accesso a VPN: Le reti private virtuali (VPN) spesso richiedono l’uso di codici OTP per autenticare gli utenti che cercano di connettersi in modo sicuro a una rete aziendale da posizioni remote.
- Autorizzazione di dispositivi: Alcuni servizi richiedono l’uso di codici OTP per autorizzare nuovi dispositivi. Ad esempio, se si tenta di accedere a un account da un nuovo computer o dispositivo, potrebbe essere richiesto l’inserimento di un codice OTP per verificare l’autenticità dell’accesso.
L’utilizzo dei codici OTP fornisce un livello aggiuntivo di sicurezza, mitigando le vulnerabilità associate all’uso di sole credenziali statiche come nome utente e password.
Quali sono i vantaggi del codice OTP?
Considerando quanto scritto finora, gli OTP danno luogo a numerosi benefici:
- essendo password dinamiche, non permettono agli hacker di memorizzarle né prevederle;
- hanno durata limitata, lasciando perciò troppo poco tempo ai cybercriminali per rubarli e accedere senza permesso;
- valgono per un solo utilizzo, quindi già ad un secondo tentativo risulterebbe impossibile accedere al sistema che adotta l’OTP;
- offrono maggiore sicurezza rispetto alla semplice autenticazione con username e password;
- possono essere utilizzati per diversi portali e servizi online.
L’unico svantaggio minore che può derivare dagli OTP riguarda essenzialmente il fatto che, a causa della loro durata limitata, se non si ricordano e manca la connessione, diventa necessario generare un nuovo codice per effettuare un accesso.
Si può quindi concludere che gli OTP sono sistemi di autenticazione non vulnerabili agli attacchi e in grado di garantire una resistenza efficace contro i sempre più frequenti sistemi di violazione digitale.
In che modo KRUK Italia utilizza il codice OTP?
KRUK Italia offre il servizio e-signature, un metodo altamente sicuro e innovativo basato sulla autenticazione OTP per gestire le fasi burocratiche del rapporto con KRUK Italia. Inoltre, l’e-signature è anche disponibile sulla piattaforma e-KRUK per i clienti che preferiscono gestire autonomamente le proprie pratiche.
Il sistema di autenticazione OTP è stato implementato da oltre due anni per garantire il massimo livello di sicurezza di tutti i dati degli utenti utilizzando sistemi crittografati
nelle connessioni univoche dalla firma al firmatario.
Lo sapevi che…
- Se al giorno d’oggi utilizzare un metodo di autenticazione sicuro come l’OTP può limitare di molto i danni provocati dai furti e gli attacchi informatici, sono sempre di più le piattaforme che si sono mosse per garantire ai propri utenti una navigazione ed una condivisione di dati protetta.