0

Generatore TOTP: codice di autenticazione 2FA in tempo reale

Incolla un segreto TOTP Base32 e guarda il codice reale dell'autenticatore a 6 cifre ruotare ogni 30 secondi, completamente offline nel tuo browser.

- -

30 Secondi

Elaborazione... 0%

Risultato

Questo strumento genera codici TOTP (Time-based One-Time Password) reali e conformi agli standard da un segreto Base32, gli stessi codici rotanti a sei cifre mostrati da app come Google Authenticator o Authy. Incolla il segreto che ti è stato fornito durante la configurazione dell'autenticazione a due fattori (la stessa stringa solitamente nascosta dietro un codice QR) e osserva il conto alla rovescia del codice in tempo reale e l'aggiornamento ogni 30 secondi, esattamente come farebbe all'interno di un'app del telefono. È pensato per testare e verificare i segreti 2FA che possiedi o controlli: eseguire il debug di un flusso di accesso che stai creando, confermare un codice di backup prima di eliminare un QR di provisioning o ricontrollare che un segreto sia stato digitato correttamente.

Dietro le quinte si tratta di un'implementazione autentica di RFC 6238 (TOTP) basata su RFC 4226 (HOTP), non di un conto alla rovescia cosmetico. Il segreto Base32 viene decodificato secondo RFC 4648 in byte chiave non elaborati, l'ora Unix corrente viene divisa per il passaggio temporale per ottenere un contatore in movimento e tale contatore è codificato come buffer big-endian da 8 byte. L'API Web Crypto nativa del browser (crypto.subtle) calcola un HMAC su quel buffer con l'hash scelto: SHA-1 rimane l'impostazione predefinita quasi universale per la compatibilità con le app di autenticazione esistenti, mentre SHA-256 e SHA-512 sono offerti per configurazioni che supportano le varianti più potenti. Il troncamento dinamico di RFC 4226 estrae quindi quattro byte dall'output HMAC con un offset preso dal suo ultimo byte, maschera il bit superiore e riduce il risultato modulo 10 ^ 6 o 10 ^ 8 per produrre il codice a 6 o 8 cifre: la stessa identica aritmetica eseguita internamente dall'app di autenticazione del telefono.

Ogni parte del processo avviene localmente: non esiste alcun componente server, nessun beacon di analisi che trasporta il tuo segreto e nessuna chiamata API esterna di alcun tipo. Il testo Base32 che incolli nel campo viene analizzato direttamente da JavaScript in esecuzione nella tua scheda e non lo lascia mai. Ciò lo rende un modo sicuro per verificare l'integrità di un segreto 2FA su una macchina di cui ti fidi, anche se, come con qualsiasi strumento che tocca il materiale di autenticazione, dovresti comunque evitare di incollare segreti su computer condivisi o pubblici e dovresti usarlo solo su codici legati ad account che possiedi o che sei esplicitamente autorizzato a testare.

L'algoritmo, il conteggio delle cifre e i controlli dei passaggi temporali esistono perché le implementazioni TOTP nel mondo reale non sono perfettamente uniformi: la maggior parte dei servizi consumer utilizza SHA-1 con 6 cifre e un passaggio di 30 secondi, ma alcuni strumenti aziendali e di sviluppo emettono segreti SHA-256 o SHA-512, codici a 8 cifre o passaggi temporali non standard come 15 o 60 secondi. La corrispondenza di queste impostazioni con qualsiasi URI di provisioning o pagina di configurazione specificata ti consente di riprodurre esattamente il codice mostrato dall'app di autenticazione, il che ha un valore inestimabile quando implementi il ​​tuo server di verifica TOTP e hai bisogno di un riferimento offline affidabile con cui confrontarlo.