# Gerador de códigos TOTP / HOTP offline

Gera senhas de uso único TOTP RFC 6238 (6/8 dígitos, 30/60 s) e HOTP RFC 4226 (por contador) a partir de um segredo base32, offline, com HMAC-SHA1/256/512, e exporta uma URI otpauth://

> Página canônica: https://elysiatools.com/pt/tools/totp-hotp-offline-generator

- **Categoria:** Security

- **Palavras-chave:** totp, hotp, otp, 2fa, autenticador

## Visão geral

Insira o segredo compartilhado em base32 (aquele exibido ao lado do QR code no Google Authenticator / Authy) e a ferramenta calcula as senhas localmente — nada é enviado a servidor algum.

Compatível com:
- **TOTP** (RFC 6238): códigos baseados no tempo UNIX atual e num passo (30 s ou 60 s). É o que o Google Authenticator mostra para a maioria das contas 2FA.
- **HOTP** (RFC 4226): códigos baseados num contador compartilhado.
- Algoritmos HMAC: **SHA-1** (padrão RFC), **SHA-256**, **SHA-512**.
- Saída de 6 dígitos (padrão) ou 8.
- “Mostrar próximos N códigos”: pré-visualiza as próximas janelas TOTP ou contadores HOTP.
- Exporta uma URI **otpauth://** (com emissor e rótulo opcionais) para reimportar a conta em qualquer app.

Notas de implementação:
- HOTP usa o truncamento dinâmico padrão: HMAC do contador big-endian de 8 bytes, usa os 4 bits baixos do último byte como offset, lê um inteiro de 31 bits, depois mod 10^dígitos.
- TOTP é HOTP com contador = floor(tempoUNIX / passo).
- A decodificação do segredo é base32 RFC 4648 (sem padding); espaços são ignorados.

## Entradas

- **Segredo compartilhado (base32)** (text): JBSWY3DPEHPK3PXP (A–Z, 2–7; spaces ignored)
- **Modo** (select)
- **Algoritmo HMAC** (select)
- **Dígitos** (select)
- **Passo de tempo (segundos)** (select)
- **Contador (HOTP)** (number): e.g. 0
- **Mostrar próximos N códigos** (number)
- **Emissor (para URI otpauth)** (text): e.g. Acme Corp
- **Rótulo da conta** (text): e.g. alice@example.com

## Quando usar

- Quando você precisa gerar códigos de autenticação de dois fatores (2FA) sem acesso a um dispositivo móvel ou aplicativo autenticador físico.
- Ao testar a integração de fluxos de login baseados em TOTP ou HOTP em sistemas de autenticação em desenvolvimento.
- Para recuperar ou migrar contas 2FA gerando uma URI otpauth:// a partir de um segredo base32 salvo.

## Como funciona

- Insira o segredo compartilhado em formato base32 no campo indicado, com ou sem espaços.
- Selecione o modo de geração (TOTP baseado em tempo ou HOTP baseado em contador) e configure o algoritmo HMAC (SHA-1, SHA-256 ou SHA-512).
- Defina o número de dígitos (6 ou 8) e o passo de tempo ou valor do contador inicial.
- O gerador calcula instantaneamente o código atual localmente e exibe a lista de próximos códigos junto com a URI otpauth:// correspondente.

## Casos de uso

- Geração de códigos 2FA de emergência em computadores desktop sem depender de smartphones.
- Validação de implementações de servidores de autenticação comparando os códigos gerados localmente com os do sistema.
- Criação de links de configuração otpauth:// para facilitar o provisionamento de novas contas de usuários.

## Perguntas frequentes

### Meus segredos base32 são enviados para algum servidor?

Não. Toda a decodificação e geração de códigos ocorrem localmente no seu navegador de forma totalmente offline.

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

O TOTP gera códigos baseados no tempo atual (geralmente mudando a cada 30 ou 60 segundos), enquanto o HOTP gera códigos baseados em um contador incremental.

### Posso usar segredos com espaços ou letras minúsculas?

Sim. O decodificador ignora espaços automaticamente e processa o segredo base32 padrão RFC 4648.

### Como importo o código gerado para o Google Authenticator?

A ferramenta gera uma URI otpauth:// que pode ser copiada ou convertida em link para importação direta em aplicativos compatíveis.

### Quais algoritmos HMAC são suportados?

São suportados os algoritmos HMAC-SHA1 (padrão mais comum), HMAC-SHA256 e HMAC-SHA512.

## Ferramentas relacionadas

- [Gerador de PKCE Code Verifier e Challenge](https://elysiatools.com/pt/tools/pkce-code-verifier-generator): Gera, valida e verifica pares code_verifier / code_challenge PKCE (RFC 7636) de OAuth2 / OIDC. Três modos: (1) gerar um par novo a partir de bytes aleatórios criptográficos (256/384/512/768 bits), (2) auditar um verifier existente frente ao RFC — comprimento (43–128), charset \[A-Za-z0-9-._~\] e ≥256 bits de entropia, e (3) verificar um par recalculando BASE64URL(SHA256(verifier)). Opcionalmente constrói a URL completa de autorização e o corpo de troca de token. Complementa o nonce-generator genérico (que só emite o par) com auditoria de conformidade RFC e verificação de pares.
- [Gerador de frases mnemônicas BIP39](https://elysiatools.com/pt/tools/mnemonic-bip39-generator): Gera ou valida frases BIP39 de 12 a 24 palavras com saída de entropia e seed PBKDF2-HMAC-SHA512
- [Gerador em lote de codigos](https://elysiatools.com/pt/tools/barcode-batch-generator): Gera em lote Code 128, EAN-13, UPC-A, ITF-14, QR Code e Data Matrix a partir de CSV ou texto multilinha com saida PNG ZIP ou PDF
- [Gerador Bcrypt](https://elysiatools.com/pt/tools/bcrypt-generator): Gerar hash bcrypt a partir de senha
- [Gerador de Geohash](https://elysiatools.com/pt/tools/geohash-generator): Gerar geohash a partir de coordenadas de latitude e longitude
- [Gerador e Verificador HMAC](https://elysiatools.com/pt/tools/hmac-generator-verifier): Calcula uma assinatura HMAC de mensagem + segredo com SHA-1/SHA-2/SHA-3/BLAKE2, ou verifica uma assinatura recebida (comparação em tempo constante), com presets para Stripe / Slack / GitHub
- [Gerador de Tabelas Markdown](https://elysiatools.com/pt/tools/markdown-table-generator): Gera tabelas Markdown formatadas a partir de dados CSV, JSON ou arrays com alinhamento, estilo de cabecalho, largura de coluna e dicas de mesclagem
- [Criptografar / Descriptografar RSA](https://elysiatools.com/pt/tools/rsa-encrypt-decrypt): Criptografa texto com uma chave pública RSA ou descriptografa o texto cifrado com a chave privada correspondente, usando padding OAEP (SHA-1 ou SHA-256). Trata mensagens longas em blocos. Chaves e dados ficam locais. PKCS#1 v1.5 não é oferecido (Node o desabilita para descriptografia devido a ataques Bleichenbacher).

## Exemplos

- [Exemplos de Códigos QR](https://elysiatools.com/pt/samples/qrcode-samples): Imagens de código QR de exemplo para testar ferramentas de leitura e geração de código QR
- [Exemplos de Comentários de Código](https://elysiatools.com/pt/samples/code-comment-samples): Arquivos de código de exemplo com vários estilos de comentários para testar a remoção de comentários
- [Exemplos de Processamento de Imagem Web Python](https://elysiatools.com/pt/samples/web-image-processing-python): Exemplos de processamento de imagem Web Python usando PIL/Pillow incluindo leitura, salvamento, redimensionamento e conversão de formato
- [Exemplos de Código com Nomes de Variáveis Inválidos](https://elysiatools.com/pt/samples/code-invalid-variable-names-samples): Arquivos de código de amostra demonstrando convenções de nomenclatura de variáveis inválidas em diferentes linguagens de programação

## Conteúdo relacionado

- [Ferramentas de fluxo para tokens, sessoes e 2FA](https://elysiatools.com/pt/hubs/token-session-and-2fa-workflows): Depure fluxos reais de login com geradores de PKCE e nonce, inspecao de JWT e JWK, verificacao HMAC, testes de OTP e TOTP e identificadores uteis para autenticacao reunidos em um unico hub.
- [Ferramentas de codificacao e conversao de audio](https://elysiatools.com/pt/hubs/audio-convert): Compare conversao de formatos de audio, ajustes de bitrate, conversao de taxa de amostragem, troca de codec e exportacao em um unico hub.
- [Ferramentas de conversao de formatos de imagem e exportacao animada](https://elysiatools.com/pt/hubs/image-convert): Compare conversores de imagem para JPG, PNG, GIF, AVIF, WebP, TIFF, ICO, base64 e saidas voltadas para animacao em um unico hub.
- [Ferramentas de intercambio JSON e traducao de formatos](https://elysiatools.com/pt/hubs/json-convert): Compare ferramentas de conversao JSON para CSV, YAML, TOML, GraphQL, XML, Markdown, Excel, BSON, EDN e outros formatos estruturados em um unico hub.
