Gerador de TOTP (senha de uso único)
Gera a mesma senha de uso único de 6 dígitos (RFC 6238) usada pelo Google Authenticator e aplicativos semelhantes, a partir de um segredo TOTP em Base32, totalmente no seu navegador. Seu segredo nunca é transmitido.
Sobre o algoritmo TOTP
TOTP (senha de uso único baseada em tempo) é um algoritmo definido na RFC 6238 para gerar senhas de uso único com base no tempo. Ele converte um segredo compartilhado e a hora atual em um contador que avança em intervalos fixos e, em seguida, deriva um código numérico usando o mesmo algoritmo de truncamento dinâmico do HOTP (RFC 4226).
| Algoritmo HMAC | Escolha entre SHA-1 (padrão), SHA-256 ou SHA-512 |
|---|---|
| Número de dígitos do código | 6 dígitos (o mesmo padrão usado pelo Google Authenticator e pela maioria dos principais aplicativos de 2FA) |
| Intervalo de atualização | Um novo código é gerado a cada 30 segundos |
Dicas
- O segredo é a string de "chave de configuração" exibida abaixo do código QR no primeiro registro da autenticação de dois fatores (2FA). Se você já o registrou em um aplicativo autenticador no celular, insira o mesmo segredo aqui para conferir se o código coincide.
- Alguns serviços usam um algoritmo de hash diferente do SHA-1 (SHA-256 ou SHA-512). Se o código gerado não coincidir com o do seu aplicativo, tente alternar o algoritmo.
- O código é atualizado automaticamente a cada 30 segundos, com uma barra de progresso mostrando o tempo restante. Tenha cuidado ao copiar um código pouco antes de ele expirar, pois ele pode se tornar inválido antes de chegar ao serviço em que você está se autenticando.
- Ao fechar esta guia do navegador, o segredo é descartado permanentemente e nunca é salvo em lugar nenhum. Se quiser mantê-lo como backup, guarde o segredo em si em um local seguro, como um gerenciador de senhas.
Perguntas frequentes
Curiosidade — Por que a autenticação de dois fatores se firmou em 6 dígitos
A OATH (Iniciativa para Autenticação Aberta), que redigiu a especificação do TOTP (RFC 6238), simplesmente reaproveitou o algoritmo de truncamento dinâmico do HOTP (RFC 4226) e deixou o número de dígitos do código a critério de cada implementação. Seis dígitos se tornaram o padrão de fato da indústria principalmente porque o Google Authenticator adotou esse tamanho em sua implementação original de 2010, e muitos outros serviços e bibliotecas seguiram o exemplo.
Seis dígitos também são um ponto de equilíbrio perfeito. Com um milhão de combinações possíveis (10^6) e uma janela de validade de apenas 30 segundos, forçar um código por força bruta se torna praticamente impossível, enquanto um número maior de dígitos tornaria impraticável memorizar e digitar manualmente. Não é coincidência que a maioria dos códigos SMS também tenha 6 dígitos: a indústria convergiu para esse tamanho em qualquer "código numérico descartável de curta duração".
O HOTP (RFC 4226, 2005), predecessor do TOTP, usava um contador que precisava ser incrementado em um a cada uso do código. Na prática, isso causava problemas frequentes de sincronização, com usuários que esqueciam de apertar um botão, ou o contador do dispositivo e do servidor ficando dessincronizados. O TOTP, padronizado em 2011, substituiu o contador pela hora atual, um valor de referência que qualquer pessoa pode consultar, simplificando bastante a operação.