Risincronizzazione TOTP

4

Considerando i token hardware che implementano OATH TOTP (c.f. RFC6238 ), è risaputo che l'orologio in tali pedine deriva. È probabile che un token che non viene utilizzato molto spesso vada alla deriva oltre la finestra di sincronizzazione utilizzata da un server di autenticazione, pertanto potrebbe essere necessaria la risincronizzazione.

Una semplice forma di risincronizzazione è semplicemente quella di allargare la finestra di ricerca, e probabilmente potrebbe funzionare nella maggior parte dei casi. Ma se la finestra di ricerca è troppo grande, c'è un piccolo rischio che il token sia sincronizzato erroneamente (supponendo che venga ripetuta una OTP). Non ho fatto i conti, ma questo è probabilmente raro.

Ho sentito parlare dei metodi di risincronizzazione che eseguono una risincronizzazione di una sequenza di OTP. Ciò darebbe sicuramente una risincronizzazione accurata, ma a spese dell'avere l'utente in attesa di due o tre OTP.

So che alcuni token e provider di servizi di autenticazione hanno implementato un metodo in cui l'utente può ottenere parziali informazioni sull'orologio nel display, in modo che le informazioni temporali + OTP vengano utilizzate come input per la risincronizzazione processo.

Non ho visto nessuno degli RFC OATH che forniscano una raccomandazione concreta su come risincronizzare. Mi chiedo se qualcuno su questo forum conosce i metodi comunemente usati nel settore; in particolare qual è la tua opinione sull'ultima variante che descrivo?

    
posta Emil 24.09.2015 - 09:02
fonte

2 risposte

0

Hai già menzionato la versione che conosco da circa 5 o 6 anni e che è implementata anche in privacyIDEA per la risincronizzazione dei token TOTP.

Stiamo utilizzando due valori TOTP per cercare gli OTP in una finestra più grande avanti e indietro (l'orologio del token hardware potrebbe andare più veloce e più lento) Quando si esegue una ricerca all'indietro, non è necessario cercare valori più vecchi di quelli già utilizzati per l'autenticazione.

Quando guardi le specifiche HOTP, puoi dedurre questo comportamento, dal momento che TOTP è solo un HOTP con un altro tipo di contatore: È consigliato per utilizzare una sequenza di valori OTP .

Oltre al normale spostamento del tempo regolare nel tuo uno o due minuti (2 o 3 fasce temporali) puoi eseguire una risincronizzazione automatica. Se il valore OTP non corrisponde durante l'autenticazione, è possibile salvare questo valore. Se l'utente tenta nuovamente di accedere (con il valore successivo), è possibile utilizzare il vecchio valore OTP e il valore OTP corrente per eseguire una sincronizzazione della finestra temporale più grande. In questo modo puoi utilizzare TOTP anche per gli utenti rari-2FA.

    
risposta data 09.10.2015 - 15:51
fonte
2

Di solito, il server TOTP è configurato con un server NTP per un tempo preciso. Ogni volta che il token si autentica sul server, il server si adegua alla deriva del token. Come hai detto se un gettone non viene usato spesso, la quantità di deriva può superare la finestra di sincronizzazione.

Per risolvere questo problema il più delle volte, i server TOTP offrono un'opzione di risincronizzazione. Ad esempio, l'utilizzo di un software dal provider di servizi TOTP installato sul computer dell'utente può consentire al token di ottenere l'ora del server e risincronizzare l'orologio.

Ecco alcuni link per mostrare esempi dell'opzione di risincronizzazione

link

link

Alcuni altri fornitori di servizi TOTP lo faranno manualmente attraverso un help desk come link

Naturalmente, ci sono altri metodi, ma in generale, tutti consentono in un modo o nell'altro il token di conoscere l'orologio del server.

    
risposta data 24.09.2015 - 10:07
fonte

Leggi altre domande sui tag