Gerador de senhas

Roda no seu navegador; nada é enviado

Senhas, API keys e tokens aleatórios, criados pelo gerador aleatório seguro do seu navegador, com a entropia real de cada um.

Settings

Characters

Generated

Very strong129.7 bits of entropy each, from 90 possible characters

Generating…

20 characters from 90 · 129.7 bits
1 value

O que torna uma senha ou um segredo forte?

A força de uma senha aleatória é medida em bits de entropia: o logaritmo na base 2 de quantas senhas as mesmas configurações poderiam ter gerado. 20 caracteres entre as 90 letras, dígitos e símbolos oferecidos aqui dão cerca de 130 bits; um PIN de 6 dígitos, cerca de 20. Cada bit a mais dobra o trabalho de quem tenta adivinhar.

O tamanho importa mais do que qualquer outra coisa. Cada caractere multiplica as possibilidades pelo tamanho do alfabeto, enquanto adicionar um conjunto de caracteres só aumenta um pouco esse tamanho. Por isso strings longas e aleatórias vencem as curtas e espertas, e por isso o lugar de guardá-las é um gerenciador de senhas.

O mesmo vale para API keys, client secrets, segredos de assinatura de webhook e tokens. Ninguém digita esses valores, então eles devem ser longos e totalmente aleatórios; 128 bits é um mínimo comum. A aleatoriedade precisa vir de uma fonte criptograficamente segura: esta ferramenta usa o crypto.getRandomValues() do navegador, nunca Math.random().

Como usar esta ferramenta

  1. 1Defina o tamanho e escolha os caracteres: A–Z, a–z, 0–9, símbolos e quaisquer caracteres extras que você digitar. Novos valores aparecem conforme você muda as configurações.
  2. 2Ative Leave out look-alikes para tirar Il1|O0o de senhas que alguém vai precisar ler ou digitar. Use a opção de incluir cada conjunto selecionado pelo menos uma vez em sistemas que exigem isso.
  3. 3Ou escolha um preset: senha, senha legível, API key, token hexadecimal ou PIN.
  4. 4Confira a linha de força, que mostra a entropia exata dessas configurações, e copie o valor. Generate (Ctrl+Enter) cria novos valores.
  5. 5Para gerar vários de uma vez, defina How many (até 1.000) e use Copy all ou Download (Ctrl+S).

Solução de problemas

Um sistema rejeita alguns símbolos
Desative Symbols e digite em Extra characters só os símbolos que ele aceita; depois aumente o tamanho em alguns caracteres para compensar o alfabeto menor. Aspas e barras invertidas ficam de fora por padrão porque quebram strings de shell e de configuração.
A entropia cai com "every selected set" ligado
Exigir cada conjunto exclui as senhas que deixam algum de fora, então há um pouco menos de senhas possíveis. Com 16 caracteres ou mais, a diferença é menor que um bit; com valores bem curtos ela é maior, e o número mostrado é exato.
Não é possível gerar com estas configurações
Escolha pelo menos um conjunto ou digite alguns caracteres, e, quando todo conjunto precisar aparecer, use um tamanho pelo menos igual ao número de conjuntos escolhidos.

Perguntas frequentes

As senhas são enviadas ou guardadas em algum lugar?

Não. Elas são geradas no seu navegador depois que a página carrega e nunca são enviadas nem salvas. Só as suas configurações, como o tamanho, ficam lembradas neste navegador. Guarde os valores de que precisar num gerenciador de senhas ou num cofre de segredos.

Todos os caracteres têm a mesma chance?

Sim. Cada caractere é escolhido com amostragem por rejeição, que evita o pequeno viés do método comum random % length, e senhas que precisam conter todos os conjuntos são sorteadas de novo até conterem, em vez de serem remendadas, então toda senha válida tem a mesma chance.

Qual deve ser o tamanho de uma senha?

Para senhas guardadas num gerenciador de senhas, 16 caracteres ou mais com todos os conjuntos. Para API keys e tokens, mire em pelo menos 128 bits, como 22 letras e dígitos ou 32 dígitos hexadecimais.