Como funciona
A força de uma senha gerada ao acaso não depende de ela "parecer complicada", mas de quantas combinações possíveis o gerador tinha para escolher. Essa quantidade é expressa em bits de entropia: cada bit dobra o trabalho de um atacante. Uma senha de 20 caracteres que combina minúsculas, maiúsculas, dígitos e símbolos sai de um alfabeto de 94 caracteres e tem cerca de 131 bits; com 8 caracteres do mesmo alfabeto cai para 52 bits, que uma fazenda de GPUs percorre em dias.
As frases-senha trocam caracteres por palavras. Esta ferramenta usa a lista longa da EFF, com 7.776 palavras (6⁵, as combinações de cinco dados), então cada palavra soma 12,9 bits. Cinco palavras dão 64,6 bits, o mesmo que 10 caracteres totalmente aleatórios, mas são muito mais fáceis de lembrar e digitar, algo essencial para a senha mestra de um gerenciador ou a criptografia de um disco.
Tudo é gerado no seu navegador com crypto.getRandomValues, o gerador criptográfico do sistema operacional, e a amostragem por rejeição garante que nenhum caractere saia mais vezes que outro. Nem as senhas geradas nem a que você avaliar no último cartão saem do seu dispositivo, e o avaliador também não é salvo no link de compartilhamento.
Exemplos
20 · a-z A-Z 0-9 !@#…≈ 131 bits20 × log₂(94). Mesmo a 10 bilhões de tentativas por segundo, percorrer metade das combinações levaria cerca de 4,6 × 10²¹ anos.5 × EFF≈ 64,6 bits5 × log₂(7776). Contra um hash rápido, uma GPU levaria em média cerca de 45 anos; se o site guarda as senhas com bcrypt, mais de 45 milhões.8 · a-z A-Z 0-9 !@#…≈ 52 bitsOito caracteres já não bastam se vazar um hash rápido: a 10 bilhões de tentativas por segundo, metade do espaço é percorrida em cerca de 85 horas.PIN · 61 000 000 · ≈ 19,9 bitsUm PIN só é seguro porque o dispositivo ou o banco limitam as tentativas. Com 100 tentativas por hora, testar metade das combinações levaria cerca de 208 dias; sem limite, um instante.Casos de uso
- Criar senhas únicas para cada conta e guardá-las em um gerenciador de senhas.
- Escolher uma frase-senha para o que você precisa digitar de memória: a senha mestra do gerenciador, a criptografia do disco ou o login do computador.
- Gerar credenciais de serviço, chaves de API ou senhas de banco de dados para arquivos de configuração e gerenciadores de segredos.
- Criar em lote senhas iniciais para novos usuários, excluindo caracteres ambíguos para que possam ser ditadas ou lidas no papel sem erros.
- Adaptar-se a sistemas com regras estranhas removendo os símbolos que eles não aceitam, como aspas ou barras invertidas.
- Verificar se uma senha que você já usa é previsível antes de decidir se é preciso trocá-la.
Perguntas frequentes
Quantos bits uma senha precisa ter?
Para uma conta web protegida por limite de tentativas, 60 bits sobram. Se o segredo puder ser atacado offline, por exemplo a senha mestra de um gerenciador ou uma chave que protege um arquivo criptografado, mire em 80 ou mais. Acima de 128 bits não há ganho prático: já é inalcançável para qualquer atacante imaginável.
É mais segura uma senha longa ou uma com símbolos?
A longa. Passar de 62 para 94 caracteres possíveis, ou seja, acrescentar os símbolos, adiciona 0,6 bit por caractere; acrescentar mais um caractere adiciona mais de 6 bits. Por isso o NIST, em sua diretriz SP 800-63B, pede que os sites aceitem senhas longas e deixem de impor regras de composição do tipo "pelo menos um símbolo".
Por que a frase-senha usa palavras em inglês?
Porque a lista da EFF é curada para frases-senha: palavras de uso comum, sem termos ofensivos, fáceis de digitar e sem que nenhuma seja prefixo de outra, o que evita ambiguidades ao juntá-las sem separador. A segurança não depende do idioma, mas do tamanho da lista e de a escolha ser aleatória; o atacante pode conhecer a lista inteira e ainda assim precisa testar 7.776 opções por palavra.
Por que o avaliador classifica diferente da entropia?
Porque medem coisas diferentes. A entropia vale para segredos gerados ao acaso, em que o processo exato é conhecido. Uma senha inventada por uma pessoa quase nunca é aleatória: "Argentina2024!" tem 14 caracteres de quatro tipos, mas é uma palavra de dicionário, um ano e um símbolo no final, exatamente o que os programas de cracking testam primeiro. O avaliador procura esses padrões e estima quantas tentativas seriam necessárias de fato.
É seguro gerar senhas em uma página web?
É, se o cálculo acontece no seu navegador e nada é enviado, que é o caso: você pode conferir abrindo as ferramentas de desenvolvedor e vendo que a aba de rede não registra nenhum envio de dados; o único download é a lista de palavras, na primeira vez que você pede uma frase-senha. Mesmo assim, para as credenciais mais críticas o ideal é que o próprio gerenciador onde você vai guardá-las as gere, assim a senha nunca passa pela área de transferência.
Por que excluir caracteres ambíguos?
Porque em muitas fontes 0 e O, ou 1, l e I, são quase idênticos, e uma senha que alguém precisa ler de um papel ou ditar por telefone acaba copiada errado. Removê-los reduz um pouco o alfabeto e a entropia por caractere, o que se compensa somando um ou dois caracteres ao tamanho.