OTP e Autenticazione
28 ago 2024
La guida completa per SMS OTP
Poiché le aziende e i consumatori si stanno evolvendo sempre di più online, la necessità di proteggere gli account online e le informazioni dei loro utenti è diventata cruciale per le imprese. E la soluzione più popolare può essere scritta in sole sei lettere: SMS OTP.
Ma cos'è esattamente l'SMS OTP e come funziona? In questa guida, copriremo tutto ciò che devi sapere sull'SMS OTP, inclusi i suoi vantaggi e come implementarlo in modo efficace.
Che cos'è l'SMS OTP?
L'SMS OTP (per One-Time Password), è una password temporanea e sicura inviata tramite SMS (Short Message Service) al telefono cellulare di un utente. Funziona come misura di sicurezza per autenticare l'identità di un utente.
Il OTP assume tipicamente la forma di un codice di 4-8 cifre generato casualmente. Può essere utilizzato solo una volta e scade dopo un periodo molto breve (spesso solo pochi minuti).
Le aziende utilizzano gli SMS OTP per migliorare la sicurezza nelle loro configurazioni di autenticazione a due fattori (2FA).
Come funziona l'SMS OTP?
Consideriamo un'app di incontri che mira a proteggere la privacy dei suoi utenti (soprattutto quelli che non vogliono rivelare le loro migliori frasi di approccio al pubblico).
Quando uno dei loro utenti attiva un'azione che richiede un OTP, come un tentativo di accesso a un nuovo dispositivo, ecco cosa succede:
L'app non riconosce il dispositivo. Suggerisce di inviare un codice di verifica tramite SMS per confermare l'identità dell'utente.
L'app richiede automaticamente al proprio fornitore di SMS OTP di generare e inviare un OTP al numero di cellulare dell'utente.
L'algoritmo del fornitore di SMS OTP genera un codice casuale a 4 cifre e lo invia al telefono dell'utente.
L'utente inserisce l'OTP nell'app di incontri. L'algoritmo del generatore di SMS OTP convalida il codice immediatamente se è corretto.
E voilà! L'utente può tornare a giocare agli incontri sul suo nuovissimo dispositivo.
E la parte migliore è che è tutto accaduto automaticamente, in meno di un minuto. Tutti sono felici: l'utente perché i propri dati sono chiaramente protetti e l'app di incontri perché è al sicuro dai hacker.
Esempio di SMS OTP
Gli SMS OTP seguono solitamente lo stesso schema:
{{Code}} è il tuo codice di convalida per {{Name of the app}}.
Alcune aziende vorranno personalizzare il proprio messaggio per allinearsi con la propria identità di marca e rendere questa notifica parte dell'esperienza complessiva dell'utente. Ad esempio, il cliente di Prelude e l'app sociale BeReal, utilizzano il loro slogan alla fine del messaggio OTP:
“7860 è il tuo codice di convalida per BeReal. I tuoi amici per davvero.”

TOTP o HOTP: Qual è la differenza?
Gli SMS OTP rientrano solitamente in due categorie diverse, a seconda dell'algoritmo utilizzato per generarli: HOTP (HMAC-Based One-Time Password) e TOTP (Time-Based One-Time Password).
La principale differenza tra questi due è il fattore mobile che cambia ogni volta che viene generato un codice dall'algoritmo.
Il HOTP è basato su un contatore. Il contatore aumenta ogni volta che viene richiesto un OTP. Ciò significa che il codice rimane valido fino a quando non viene utilizzato o il contatore non è aumentato.
Il TOTP è basato sul tempo, valido solo per un intervallo specifico. Una volta scaduto l'intervallo, può essere generato un nuovo OTP.
Leggi di più su questo argomento nel nostro post sul blog: TOTP vs HOTP: Qual è la differenza (e quale è migliore)?
I (molti) casi d'uso dell'SMS OTP per le aziende
Le aziende possono utilizzare gli SMS OTP in molti modi per migliorare la sicurezza e la fiducia dei loro utenti. I casi d'uso più comuni includono:
Registrazione utenti: Verifica l'identità e il numero di telefono dei tuoi nuovi utenti durante il processo di creazione dell'account.
Autenticazione a due fattori: Aggiungi un ulteriore livello di sicurezza al processo di accesso con nome utente e password.
Reimpostazione della password: Sicura il processo di reimpostazione di una password dimenticata o compromessa per evitare che i tuoi utenti vengano esclusi dai loro account.
Autenticazione di nuovi dispositivi: Quando gli utenti accedono da dispositivi nuovi o non riconosciuti, richiedere un SMS OTP può contribuire a garantire che siano autorizzati a farlo.
Autenticazione senza password: Se desideri consentire ai tuoi utenti di registrarsi utilizzando solo il loro numero di cellulare, inviare un OTP ti aiuta a garantire la loro autenticazione.
Verifica delle transazioni: Per qualsiasi transazione, come un trasferimento o un pagamento online, invia un SMS OTP per verificare la validità della transazione.
Cambiamento dei dettagli dell'account: Quando un utente desidera modificare informazioni sensibili dell'account, come l'indirizzo email o la password, verifica la loro autenticità con un OTP.
Attivazione delle carte di pagamento bancarie: Le nuove carte bancarie emesse spesso richiedono l'attivazione tramite OTP per garantire che siano in possesso del legittimo proprietario. Ciò aggiunge un ulteriore livello di sicurezza e garantisce che solo il titolare della carta possa attivare e utilizzare la carta.
Potremmo menzionare molti altri casi d'uso, come la protezione dell'accesso ai file o l'integrazione di terze parti, ma ormai dovresti aver capito che praticamente qualsiasi azione sensibile attivata dal comportamento di un utente potrebbe trarre vantaggio da un ulteriore livello di sicurezza grazie a un SMS OTP.
Quanto è sicuro l'SMS OTP?
Gli SMS OTP sono molto efficaci nel mitigare i rischi, grazie alla loro casualità.
Per un codice casuale a quattro cifre, un truffatore dovrebbe indovinare ogni numero correttamente in meno di cinque minuti. Ciò corrisponde a 10 possibilità, quattro volte. Matematicamente, ciò si traduce in una possibilità su 10.000 di indovinare correttamente un OTP.
Ad aumentare quella casualità c'è il fatto che un OTP è valido solo una volta ed è sensibile al tempo. È come cercare un ago in un pagliaio, tranne che l'ago si sposta in un pagliaio diverso ogni minuto!
Ma dobbiamo affrontare l'elefante nella stanza: l'SMS OTP non è infallibile.
In base al loro mezzo, gli SMS OTP possono essere soggetti a potenziali minacce. Lo scambio di SIM, le vulnerabilità del protocollo SS7 e l'ingegneria sociale sono tutte tattiche ben note utilizzate dagli hacker che possono indebolire gli SMS OTP come fattore di autenticazione sicuro.
È un rischio che le aziende possono mitigare educando i propri utenti, ma soprattutto, implementando un fornitore di OTP sicuro che previene attivamente le frodi.
💡 Ad esempio, presso Prelude, blocchiamo il 99% degli attacchi spam e frodi per i nostri clienti utilizzando un punteggio di rischio a segnale incrociato per identificare le frodi con la massima accuratezza. La nostra API Watch analizza decine di segnali digitali, inclusa la portabilità della scheda SIM, per prevenire attacchi di swap di SIM mirati ai tuoi utenti. Il nostro obiettivo finale è che i nostri clienti inviino OTP solo a utenti reali, senza dover bloccare interi paesi.
I vantaggi dell'SMS OTP
Sicurezza migliorata e riduzione delle frodi
Come discusso in precedenza, gli SMS OTP forniscono un livello vitale di sicurezza utilizzando un codice non indovinabile e sensibile al tempo. Questo aiuta le aziende a combattere le frodi e a proteggere gli account e le informazioni degli utenti da accessi non autorizzati mentre riduce i rischi associati al fare affidamento esclusivamente sulle password degli utenti.
Costruire la fiducia dei clienti
Oltre il 25% degli utenti online ha abbandonato le transazioni a causa di preoccupazioni sulla sicurezza di un'app o di un sito web. Implementare l'SMS OTP nel tuo sistema di autenticazione a due fattori può contribuire ad eliminare queste barriere alla conversione rassicurando i clienti che i loro dati e le loro informazioni finanziarie sono al sicuro con la tua azienda.
Accessibile a tutti i tuoi utenti
Gli SMS sono il tipo di 2FA più utilizzato nel mondo. Sono facilmente accessibili a tutti gli utenti con un telefono, poiché non richiedono app o tecnologie aggiuntive e sfruttano un mezzo con cui gli utenti sono già familiari.
Gli SMS sono universalmente supportati dai fornitori di rete mobile, rendendoli il canale ideale per raggiungere gli utenti su scala globale.
Autenticazione utente istantanea
Con elevate percentuali di consegna e apertura, gli SMS consentono ai tuoi utenti di ricevere e utilizzare i loro OTP istantaneamente, facilitando un'esperienza di autenticazione utente fluida.
Facilità di implementazione
Implementare l'SMS OTP nei tuoi sistemi è semplice e non richiede cambiamenti significativi nell'infrastruttura o risorse estensive. Presso Prelude, abbiamo assistito a molte aziende lanciare i propri sistemi OTP in meno di un'ora con solo un membro del team!
Scalabilità
Essendo un canale globale, le tue esigenze di OTP possono crescere alla stessa velocità della tua azienda. Puoi espanderti in nuovi mercati senza dover fare affidamento su nuovi fornitori o canali, specialmente se lavori con un servizio OTP che integra già più fornitori.
Come implementare SMS OTP nella tua applicazione?
Ora che sei convinto che la tua azienda ha bisogno di SMS OTP, quali sono i prossimi passi? Distribuire un servizio del genere può essere piuttosto veloce e semplice.
1. Scegli il tuo fornitore di servizi OTP
In un articolo precedente, abbiamo elencato le funzionalità da cercare in un fornitore di SMS OTP.
Per scegliere il migliore per la tua azienda, devi avere un chiaro elenco di funzionalità indispensabili in mente, che si tratti di velocità e affidabilità, facilità di implementazione, integrazioni o pricing.
Assicurati anche di controllare se il fornitore offre SDK per il tuo linguaggio di programmazione preferito, per facilitare il processo di integrazione! Ad esempio, Prelude fornisce SDK per molti linguaggi popolari come Node, Go o Python.
2. Integra l'API SMS del fornitore
Una volta fatta la scelta, puoi utilizzare l'API SMS del tuo fornitore per integrare la funzionalità OTP nella tua applicazione. Il tuo fornitore dovrebbe condividere con te una chiave API o un token, in modo da configurare il servizio.
3. Testa l'integrazione
Prima di procedere a fondo con il tuo fornitore, assicurati di testare l'integrazione. Puoi farlo utilizzando numeri di telefono di prova per verificare che i messaggi siano ricevuti correttamente, quindi monitorando i log nella dashboard del tuo fornitore per assicurarti che i tuoi utenti ricevano i loro OTP.
4. Monitora e scala
Una volta che tutto funziona senza intoppi per i tuoi utenti, dedica un po' di tempo in avanti per monitorare i costi e il volume di SMS inviati per tenere traccia delle tue performance di acquisizione. Alcuni fornitori come Prelude danno accesso ai propri clienti a dashboard e analisi in tempo reale in modo che possano comprendere meglio i loro KPI e le opportunità di autenticazione degli utenti.

Inizia con SMS OTP con Prelude Verify
Puoi inviare e verificare un codice in 2 minuti e 3 semplici passaggi integrando l'API Prelude Verify da qualsiasi linguaggio per iniziare a inviare messaggi OTP ai tuoi utenti in tutto il mondo utilizzando più canali di messaggistica.
Passo 1: Registrati e ottieni la tua chiave API
Per utilizzare i servizi di verifica di Prelude, hai bisogno di una chiave API:
Crea un account su Prelude.
Naviga nella sezione Chiavi delle tue impostazioni.
Genera una nuova chiave API e conservala in modo sicuro.
La tua chiave API è necessaria per autenticare le richieste e deve essere mantenuta privata.
Passo 2: Invio di un codice di verifica
Per verificare un numero di telefono, il primo passo è inviare una password monouso (OTP). Usa l'/v2/verification
endpoint per attivare un messaggio con un codice di verifica. Puoi vedere tutti i diversi parametri personalizzabili, come dimensione del codice o ID del mittente, nella nostra documentazione.
Esempio di richiesta:
Esempio di risposta:
Passo 3: Controllo del codice di verifica
Una volta che l'utente riceve l'OTP, lo inserisce nella tua app. Poi verifichi il codice utilizzando l'/v2/verification/check
endpoint.
Esempio di richiesta:
Esempio di risposta:
In caso di errori, come numero di telefono non valido o richiesta non valida, scopri come risolverli qui.
Passo 4: Invio di segnali di frode
Sei già a posto con Prelude! Questo ultimo passo è facoltativo (ma altamente raccomandato) in quanto ti aiuterà a sfruttare al massimo la nostra API abilitandola a mitigare attacchi di frode come lo SMS pumping.
Puoi inviare oltre 50 segnali utente (modello del dispositivo, versione dell'app, livello della batteria e altro) a Prelude tramite i nostri SDK mobili (per iOS, Android e React Native) per il filtraggio più accurato possibile.
Puoi anche iniziare ad aprire nuovi paesi e nuovi canali di messaggistica (come WhatsApp, RCS o Viber) a seconda delle tue esigenze di verifica degli utenti.
Migliori pratiche per l'SMS OTP
Come puoi garantire che il tuo OTP generi conversioni invece di perdere utenti? Ecco alcune migliori pratiche che raccomandiamo ai nostri clienti, basate sulla nostra esperienza nell'invio di milioni di OTP ogni mese.
Tienilo breve e dolce: Il tuo SMS dovrebbe iniziare con il codice, consentendo agli utenti di inserirlo direttamente nella tua app senza dover aprire il messaggio. Se desideri aggiungere un tocco personale nel contenuto del messaggio, puoi farlo dopo che il codice è stato menzionato.
Implementa opzioni di fallback: Se il tuo utente ha una scarsa ricezione della rete cellulare, è sempre meglio avere opzioni di fallback come WhatsApp o Viber per inviare il tuo OTP. Punta su un fornitore di OTP che possa farlo automaticamente per te.
Permetti la ripetizione per gli OTP: Gli utenti che non ricevono o utilizzano il loro OTP in tempo dovrebbero avere la possibilità di richiederne uno nuovo.
Come superare le sfide dell'SMS OTP?
In Prelude, abbiamo notato che i nostri clienti si rivolgono a noi quando affrontano una delle due sfide comuni degli SMS OTP:
bollette elevate dai loro fornitori di OTP a causa di addebiti per frodi,
o la necessità di servizi di verifica SMS accessibili durante lo sviluppo delle loro app.
Affrontiamo queste problematiche con un modello di pricing che può ridurre i costi di verifica SMS del 30-40% e migliorare i tassi di conversione. I nostri servizi includono costi inferiori per la protezione dalle frodi, opzioni di multi-routing e un dashboard trasparente che mostra le suddivisioni dei costi degli SMS e i risparmi.
Con un rilevamento avanzato delle frodi e analisi in tempo reale, i nostri clienti possono ora connettersi efficacemente con utenti genuini mentre minimizzano le spese.
Eleva il tuo processo di verifica SMS prenotando una demo della nostra API o provandola oggi!
Articoli Recenti