Cyber Security Academy · Aula

TOTP e HOTP

Senhas de uso único baseadas em tempo

Aula 2 de 413 etapas

TOTP e HOTP é uma aula grátis de Cyber Security Academy no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Cyber Security Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Cyber Security Academy inclui 4 aulas no total.

Senhas de uso único

Uma Senha de uso único (OTP) é um código válido para uma única sessão ou por um curto período.

Dois algoritmos padrão as geram: HOTP e TOTP.

O segredo compartilhado

Os dois algoritmos começam com um segredo compartilhado conhecido apenas pelo servidor e pelo seu aplicativo autenticador.

Ele geralmente é enviado como um código QR durante a configuração e armazenado nos dois lados.

HOTP: baseado em contador

HOTP (OTP baseado em HMAC) combina o segredo compartilhado com um contador usando HMAC e depois trunca o resultado para formar um código numérico curto.

O contador aumenta em um a cada código gerado.

HOTP = Truncate( HMAC-SHA1(secret, counter) )

TOTP: baseado em tempo

TOTP (OTP baseado em tempo) é um HOTP no qual o contador é o tempo atual dividido em intervalos fixos (geralmente de 30 segundos).

Como o tempo sempre avança, os dois lados permanecem sincronizados sem acompanhar um contador manual.

T = floor( (current_unix_time) / 30 )
TOTP = Truncate( HMAC-SHA1(secret, T) )

A janela de 30 segundos

Um código TOTP normalmente muda a cada 30 segundos. Essa curta duração limita por quanto tempo um código roubado pode ser útil.

É por isso que os aplicativos autenticadores exibem uma barra de contagem regressiva.

Tolerância à diferença dos relógios

Os relógios dos dispositivos sofrem pequenos desvios. Para evitar a rejeição de códigos válidos, os servidores aceitam códigos de uma etapa antes e depois da janela atual.

Uma janela muito ampla reduz a segurança, por isso ela é mantida pequena.

Sincronização do HOTP

O HOTP pode sair de sincronia se um código gerado não for usado (o contador avança no dispositivo, mas não no servidor).

Os servidores permitem uma pequena janela de antecipação para resincronizar, mas lacunas grandes exigem uma resincronização manual.

O URI otpauth

Os códigos QR codificam um URI otpauth que descreve o segredo e os parâmetros.

otpauth://totp/Example:alice@example.com?secret=JBSWY3DPEHPK3PXP&issuer=Example&period=30

Por que o TOTP prevaleceu

O TOTP é muito mais comum que o HOTP porque:

  • Não há contador sujeito a desvio ou resincronização.
  • Os códigos expiram naturalmente.
  • Ele funciona offline; não é necessária uma rede para gerar um código.

Pontos fortes e limitações

O TOTP é um grande avanço em relação ao uso exclusivo de senhas, mas ainda pode ser capturado por uma página falsa: um site falso pode induzir o usuário a digitar um código válido.

As chaves físicas (abordadas na próxima lição) resistem a isso.

Backup e recuperação

Perder o dispositivo que armazena o segredo pode impedir seu acesso. Uma boa prática é:

  • Salvar os códigos de recuperação fornecidos durante a configuração.
  • Fazer backup do segredo com segurança ou cadastrar um segundo autenticador.

Verificação rápida

Qual é a principal diferença entre HOTP e TOTP?

Recapitulação

Você aprendeu como funcionam os algoritmos OTP.

  • Ambos se baseiam em um segredo compartilhado e HMAC.
  • HOTP usa um contador; TOTP usa o tempo.
  • Os códigos TOTP expiram a cada ~30 segundos, mas continuam vulneráveis a phishing.
  • Mantenha os códigos de recuperação.

Em seguida, veremos as aprovações por notificação e as chaves físicas.

Grátis para começar

Aprenda Cyber Security Academy com um tutor de IA — grátis

Escreva e execute código real no seu navegador, obtenha ajuda instantânea de um tutor de IA 24/7 e continue de onde parou na web ou no app.

Cursos
76
Aulas
303

Perguntas Frequentes

A aula “TOTP e HOTP” é grátis?

Sim — o texto completo de “TOTP e HOTP” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Cyber Security Academy, atualize para CoddyKit PRO. O curso de Cyber Security Academy inclui 4 aulas no total.

O que vou aprender em “TOTP e HOTP”?

Senhas de uso único baseadas em tempo Você pratica Cyber Security Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Cyber Security Academy?

Nenhuma experiência prévia é necessária. Cyber Security Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.

Quanto tempo leva a aula “TOTP e HOTP”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Cyber Security Academy?

Sim. Cada aula de Cyber Security Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Fatores de autenticação
  2. TOTP e HOTP
  3. Chaves push e de hardware
  4. Riscos de contorno da MFA
← Voltar para Cyber Security Academy