Por que usar um gerador de senhas?
Senhas fracas ou reutilizadas continuam sendo a principal causa de comprometimento de contas online. Segundo o relatório Verizon DBIR 2024, 80% das violações envolvem credenciais roubadas ou adivinhadas. Um gerador de senhas elimina os vieses humanos e cria credenciais verdadeiramente aleatórias.
O problema das senhas criadas manualmente:
Os humanos são péssimos em gerar aleatoriedade. Reutilizamos os mesmos padrões: nome + ano de nascimento, nome do cachorro + "123", palavra do dicionário com um "!" no final. Essas senhas caem em segundos diante de um ataque de dicionário.
O que um gerador resolve:
- Verdadeira aleatoriedade: sem padrões, palavras do dicionário ou informações pessoais
- Força calibrada: ajuste o comprimento, os tipos de caracteres e a entropia conforme sua necessidade
- Geração instantânea: crie uma nova senha em milissegundos
- Reprodutibilidade: mesmo nível de segurança para cada senha gerada
Como usar o gerador em 3 passos
Passo 1: escolher o modo de geração
Dois modos estão disponíveis:
- Aleatório: caracteres individuais misturados (ex:
k7#Qm9!xR2pL$wN4). Entropia máxima por caractere. Ideal quando um gerenciador de senhas armazena a senha para você. - Memorável: frases-senha compostas de palavras aleatórias (ex:
Sloppily8-Rosy3-Unlocking8-Angelic4). Mais fácil de lembrar e digitar, com entropia elevada graças ao número de palavras.
Passo 2: ajustar os parâmetros
No modo Aleatório:
- Comprimento: 4 a 128 caracteres (recomendado: 16+ para contas sensíveis)
- Tipos de caracteres: maiúsculas, minúsculas, dígitos, símbolos
- Exclusões: caracteres semelhantes (0/O, 1/l/I), caracteres personalizados
No modo Memorável:
- Número de palavras: 3 a 10 (recomendado: 4+ palavras)
- Separador: hífen, espaço, ponto, personalizado
- Opções: capitalização, adição de dígitos entre as palavras
Passo 3: copiar e usar
Clique no botão copiar. A senha é copiada para sua área de transferência. Use-a imediatamente no seu gerenciador de senhas ou no formulário de cadastro do serviço.
O indicador de força exibe em tempo real a entropia (em bits), a pontuação de segurança e o tempo estimado de quebra por força bruta.
Aleatório vs. Memorável: quando usar cada modo
| Critério | Modo Aleatório | Modo Memorável |
|---|---|---|
| Entropia por caractere | ~6.5 bits (95 chars ASCII) | ~12.9 bits por palavra (7776 palavras Diceware) |
| Exemplo | k7#Qm9!xR2pL$wN4 | Sloppily8-Rosy3-Unlocking8 |
| Facilidade de memorização | Impossível sem gerenciador | Possível com esforço |
| Facilidade de digitação | Difícil (símbolos, caixa) | Fácil (palavras comuns) |
| Caso de uso ideal | Contas armazenadas em um gerenciador | Senha mestra, PIN, acesso compartilhado |
Quando escolher Aleatório:
- Contas web armazenadas no 1Password, Bitwarden ou KeePass
- Chaves de API e credenciais de serviço
- Qualquer senha que você nunca precisará digitar manualmente
Quando escolher Memorável:
- A senha mestra do seu gerenciador (a única que você memoriza)
- Os códigos de desbloqueio que você digita com frequência (tela de bloqueio)
- As senhas compartilhadas que você precisa comunicar verbalmente
Entendendo a entropia das senhas
A entropia mede a imprevisibilidade em bits. Cada bit dobra o número de combinações possíveis. A fórmula é: entropia = log2(número_de_combinações).
Exemplo prático:
- Uma senha de 8 caracteres entre 26 letras minúsculas:
log2(26^8)= 37.6 bits - A mesma com maiúsculas + minúsculas + dígitos (62 chars):
log2(62^8)= 47.6 bits - Com símbolos adicionais (95 chars):
log2(95^8)= 52.6 bits - 16 caracteres entre 95 chars:
log2(95^16)= 105.2 bits
| Entropia | Força | Tempo de quebra (10¹² tentativas/seg) |
|---|---|---|
| <28 bits | Muito fraca | Segundos |
| 28-35 bits | Fraca | Minutos a horas |
| 36-59 bits | Média | Dias a anos |
| 60-127 bits | Forte | Milhares a bilhões de anos |
| ≥ 128 bits | Muito forte | Além de qualquer tecnologia previsível |
O limiar de 10¹² tentativas/segundo corresponde a um ataque de força bruta com hardware GPU moderno (tipo cluster de placas gráficas). Para um serviço online com rate limiting, o tempo real seria consideravelmente maior.
Boas práticas de segurança de senhas
Recomendações NIST SP 800-63B (2024)
O National Institute of Standards and Technology (NIST) atualizou suas recomendações sobre senhas. As mudanças principais em relação às práticas antigas:
| Prática antiga | Recomendação NIST atual |
|---|---|
| Trocar senhas a cada 90 dias | Trocar apenas se comprometida |
| Exigir caracteres especiais | Priorizar comprimento sobre complexidade |
| Mínimo de 8 caracteres | Mínimo 8, recomendado 15+ |
| Perguntas secretas | Proibidas (muito previsíveis) |
| Dicas de senha | Proibidas |
As 5 regras essenciais
- Uma senha única por serviço: se um serviço for comprometido, os outros permanecem protegidos
- Comprimento > complexidade:
correcthorsebatterystaple(25 chars, ~58 bits) é mais seguro e mais memorável queP@$$w0rd(8 chars, ~30 bits) - Use um gerenciador de senhas: 1Password, Bitwarden ou KeePass para armazenar centenas de senhas únicas
- Ative a 2FA em tudo: TOTP (Google Authenticator, Authy) ou chave de segurança FIDO2 em todas as contas críticas
- Verifique vazamentos: consulte Have I Been Pwned para saber se suas credenciais foram expostas em um vazamento de dados
Exemplos de senhas e sua força
| Tipo | Exemplo | Entropia | Tempo de quebra | Veredito |
|---|---|---|---|---|
| Palavra comum | password | ~0 bits | Instantâneo (dicionário) | Catastrófico |
| Nome + ano | Maria1990 | ~20 bits | Segundos | Muito fraca |
| Aleatória 8 chars | k7#Qm9!x | ~52 bits | Dias | Média |
| Aleatória 12 chars | k7#Qm9!xR2pL | ~79 bits | Milhares de anos | Forte |
| Aleatória 16 chars | k7#Qm9!xR2pL$wN4 | ~105 bits | Bilhões de anos | Muito forte |
| Frase-senha 4 palavras | Correct-Cavalo-Bateria-Grampo | ~52 bits | Dias a meses | Média |
| Frase-senha 5 palavras + dígitos | Sloppily8-Rosy3-Unlocking8-Angelic4-Brisk7 | ~85 bits | Milhões de anos | Forte |
O equilíbrio ideal para a maioria dos usuários: uma senha aleatória de 16+ caracteres armazenada em um gerenciador, com uma frase-senha de 5+ palavras como senha mestra.
Como funciona a geração?
Geração criptográfica (CSPRNG)
Nosso gerador utiliza crypto/rand do Go, um CSPRNG (Cryptographically Secure Pseudo-Random Number Generator) que se baseia nas fontes de entropia do sistema operacional:
/dev/urandomno LinuxCryptGenRandomno WindowsSecRandomCopyBytesno macOS
Diferente dos geradores pseudo-aleatórios clássicos (Math.random() em JavaScript, random em Python), um CSPRNG produz uma saída imprevisível mesmo para um atacante que conheça os valores anteriores.
Processo de geração
- Cálculo do pool de caracteres: de acordo com as opções ativadas (maiúsculas, minúsculas, dígitos, símbolos), o pool contém entre 10 e 95 caracteres
- Sorteio aleatório: para cada posição da senha, um byte aleatório é sorteado via CSPRNG e convertido em índice no pool
- Cálculo da entropia:
log2(tamanho_pool^comprimento)fornece a entropia em bits - Estimativa do tempo de quebra: baseada em 10¹² tentativas/segundo (ataque GPU offline)
- Transmissão segura: a senha é retornada via HTTPS e não é armazenada, logada nem cacheada
Ferramentas complementares
| Ferramenta | Utilidade |
|---|---|
| Conversor de caixa | Transformar a caixa de textos (UPPER, lower, Title, camelCase) |
| Codificador/decodificador Base64 | Codificar dados sensíveis para transporte |
| Estatísticas de texto | Analisar o comprimento e a composição de um texto |
| Gerador de slug | Transformar um texto em identificador URL-safe |
Recursos úteis
- NIST SP 800-63B: Digital Identity Guidelines: recomendações oficiais sobre senhas
- OWASP Password Storage Cheat Sheet: boas práticas de armazenamento no servidor
- Have I Been Pwned: verifique se suas credenciais estão em um vazamento de dados
- Diceware Passphrase: método original de geração de frases-senha
- Passkeys vs senhas: comparativo passkeys vs senhas tradicionais