Como funciona
Cada caractere é escolhido com crypto.getRandomValues, o gerador de números aleatórios criptograficamente seguro do seu navegador. O gerador usa amostragem por rejeição, então todos os caracteres do conjunto têm exatamente a mesma chance. (O atalho comum de pegar um número aleatório módulo o tamanho do conjunto faz alguns caracteres saírem um pouco mais.)
Com todos os tipos marcados, os caracteres vêm de um conjunto de 90: 26 maiúsculas, 26 minúsculas, 10 dígitos e 28 símbolos (!#$%&()*+,-./:;<=>?@[]^_{|}~). Letras acentuadas, ç, aspas, barras invertidas, crases e espaços ficam de fora, porque alguns sites, teclados e sistemas lidam mal com eles.
Força
A força mostrada é a entropia da senha: o tamanho dela vezes log₂ do número de caracteres possíveis.
| Senha | Entropia | Avaliação |
|---|---|---|
| 8 letras minúsculas | 37,6 bits | Muito fraca |
| 8 caracteres, todos os tipos | 51,9 bits | Fraca |
| 12 letras e dígitos | 71,5 bits | Razoável |
| 12 caracteres, todos os tipos | 77,9 bits | Razoável |
| 16 caracteres, todos os tipos | 103,9 bits | Muito forte |
| 20 caracteres, todos os tipos | 129,8 bits | Muito forte |
Isso vale para senhas aleatórias como as geradas aqui. Uma senha inventada por você, como Verao2026!, parece complexa, mas é descoberta rápido, porque os atacantes testam primeiro palavras e padrões comuns.
Boas práticas
- Use uma senha diferente para cada conta. Quando um site é invadido, as senhas reutilizadas são testadas em todos os outros.
- Guarde-as num gerenciador de senhas em vez de numa nota ou planilha. Ele preenche por você, então o tamanho não custa nada.
- Ative a verificação em duas etapas no e-mail, no banco e em qualquer conta que possa redefinir outras contas.
- Prefira tamanho a regras de complexidade quando puder escolher. As recomendações atuais do NIST preferem senhas mais longas a misturas forçadas de tipos de caractere.