Guia

Como gerar códigos OTP com uma chave Base32

Aprenda a gerar códigos de autenticação TOTP e HOTP a partir de uma chave Base32 com 6 ou 8 dígitos através do algoritmo HMAC-SHA1.

Ferramenta Gerador de Códigos OTP

Para gerar um código de autenticação temporário ou sequencial, introduza uma chave secreta no formato Base32, escolha entre o modo baseado no tempo (TOTP) ou em contador (HOTP) e defina o número de dígitos pretendido (6 ou 8). O cálculo utiliza o algoritmo HMAC-SHA1 e devolve o código numérico pronto a utilizar.

Antes de começar

Os códigos de utilização única (OTP) servem como segundo fator de autenticação em diversas plataformas. Antes de iniciar o cálculo com o Gerador de Códigos OTP, certifique-se de que dispõe da chave secreta em formato Base32 fornecida pelo serviço.

A ferramenta processa a chave de forma flexível: converte automaticamente letras minúsculas para maiúsculas, remove espaços em branco adicionais e aceita chaves com ou sem carateres de preenchimento (sinais de igual). Deve também verificar se o serviço exige o protocolo TOTP padrão (que renova o código a cada intervalo de tempo) ou o protocolo HOTP (que avança mediante um contador sequencial).

Passo a passo para gerar o código

  1. Introduza a sua chave secreta Base32 no campo indicado.
  2. Selecione o modo de cálculo pretendido: escolha TOTP se pretender validar um código sincronizado com o relógio, ou HOTP para uma sequência manual.
  3. Defina o comprimento da saída entre 6 ou 8 dígitos, de acordo com o requisito do serviço.
  4. Se selecionou TOTP, ajuste o período em segundos caso pretenda um intervalo diferente do padrão de 30 segundos.
  5. Se selecionou HOTP, indique o valor inteiro do contador pretendido (o valor predefinido é 0).
  6. Execute o cálculo para obter o código OTP resultante e consultar o tempo restante de validade.

Se estiver a configurar novos acessos em dispositivos móveis e necessitar de partilhar parâmetros de autenticação através de imagens legíveis por câmara, pode recorrer ao Gerador de Códigos QR para codificar hiperligações de registo.

Como interpretar o resultado

Após o processamento, o utilitário devolve o código numérico formatado com os dígitos selecionados. No modo TOTP, a resposta inclui também a contagem decrescente dos segundos restantes do período em curso. Quando esse intervalo atinge o fim, o cálculo seguinte gera um novo código correspondente ao novo bloco temporal.

No modo HOTP, o código mantém-se estritamente associado ao número do contador fornecido. Gerar o código repetidamente com o mesmo contador e a mesma chave produzirá exatamente o mesmo resultado numérico, sem qualquer dependência do relógio do sistema.

Exemplo prático de cálculo

Imagine que pretende testar a sincronização de uma conta protegida por autenticação em dois passos:

  • Chave Base32: JBSWY3DPEHPK3PXP
  • Modo: TOTP (baseado em tempo)
  • Comprimento: 6 dígitos
  • Período: 30 segundos

Ao executar o pedido, a ferramenta calcula a fatia de tempo atual Unix, aplica o algoritmo HMAC-SHA1 com a chave descodificada e apresenta um código de 6 dígitos acompanhado pelos segundos que restam até à próxima rotação.

Limitações do utilitário

  • O algoritmo subjacente está fixado em HMAC-SHA1, de acordo com as especificações RFC 4226 e RFC 6238.
  • Chaves com carateres inválidos fora do alfabeto Base32 impedem o cálculo do código.
  • Os campos numéricos de período e contador aceitam apenas números inteiros.

Erros comuns ao introduzir dados

  • Inserir valores decimais nos campos de período ou contador, o que resulta na rejeição dos dados.
  • Tentar utilizar chaves em formatos hexadecimais puros sem conversão prévia para Base32.
  • Esperar que o modo HOTP mude de código automaticamente sem atualizar o valor do contador.

Perguntas frequentes

A ferramenta aceita chaves com espaços ou letras minúsculas?

Sim. Os espaços em branco no início, no meio ou no fim são eliminados automaticamente e as letras minúsculas são convertidas para maiúsculas antes do processamento.

Qual é o valor padrão do período no modo TOTP?

O período predefinido é de 30 segundos, que corresponde ao padrão comum da maioria das aplicações de autenticação.

A chave secreta fica visível no resultado?

Não. O painel de resultados apresenta apenas o código numérico gerado, os parâmetros de cálculo e o tempo restante, sem expor a chave nos dados de saída.

Ferramenta

Gerador de Códigos OTP