Gerador de Senha

Uma senha aleatória criada no seu navegador e nunca enviada a lugar nenhum, com a entropia declarada em bits em vez de chutada.

Roda inteiramente no seu navegador. Nada é enviado, registrado ou armazenado.

Caracteres a sortear
Entropia, em bits
—
Caracteres disponíveis
—
Senhas possíveis
—
O alfabeto usado
—

Uma senha aleatória, feita pelo seu próprio navegador e nunca enviada a lugar nenhum. A força é dada como entropia em bits, que é uma medida e não uma opinião, e a página explica o que o número significa.

Como funciona

Cada caractere é sorteado de forma independente e uniforme do alfabeto que você escolheu, usando o gerador criptográfico de números aleatórios do seu navegador. Nada na senha deriva do horário, da sua máquina ou de qualquer coisa que um atacante pudesse adivinhar.

A entropia é comprimento × log2(tamanho do alfabeto). Isso é uma definição, não uma estimativa: é o logaritmo na base dois de quantas senhas as suas opções poderiam ter produzido. Cada bit a mais dobra esse número.

Isso só é verdade para uma senha sorteada ao acaso, que é o que esta página produz e o que uma pessoa escolhendo uma não faz. Uma senha que você inventou tem bem menos entropia do que o comprimento sugere, porque o jeito como as pessoas inventam senhas é previsível.

Perguntas frequentes

A senha é enviada para o servidor de vocês?

Não, e o projeto vai além de uma promessa. O código de servidor deste site deliberadamente não consegue gerar uma senha: para esta ferramenta ele calcula apenas a aritmética — o alfabeto, o tamanho dele, a entropia — e nenhuma senha. O único lugar em que uma senha passa a existir é o navegador que vai usá-la.

Por que não há um medidor de força?

Porque ele seria inventado. Quanto tempo uma senha sobrevive depende do hardware do atacante, do orçamento dele, do algoritmo de hash que o site escolheu e de quanto do banco de dados vazou. Esta página não conhece nenhum desses, então "levaria 3 milhões de anos para quebrar" seria um número sem nada por trás. Entropia em bits é algo que se pode dizer com verdade.

Então de quantos bits eu preciso?

De mais do que você consegue memorizar, que é a resposta de verdade: use um gerenciador de senhas e o comprimento que esta página oferece. Para ter uma ideia de escala, cada bit dobra o número de possibilidades, então 60 bits é um milhão de vezes mais difícil que 40. O que basta de fato depende do que a senha protege e de como o site a armazena, e nenhuma das duas coisas é visível daqui.

Por que deixar de fora os caracteres parecidos baixa o número?

Porque é uma troca real, e não uma melhoria de graça. Remover Il1O0oB8S5Z2 torna a senha mais fácil de ler na tela e encolhe o alfabeto de onde ela foi sorteada, então a entropia cai. O número se mexe quando você marca a caixa, e é para isso que ele é mostrado.

A aleatoriedade é boa o bastante?

Ela usa crypto.getRandomValues, o gerador criptográfico do navegador, em vez de Math.random, que não foi feito para isso e é previsível a partir da própria saída. Se o seu navegador não tiver um gerador desses, a ferramenta diz e recusa, em vez de cair para algo mais fraco.

Bom saber

  • Nada aqui é armazenado, registrado ou enviado. Não há link de compartilhamento, porque uma senha em uma URL é uma senha no histórico do navegador e em qualquer lugar onde o link seja colado.
  • O alfabeto aparece ao lado dos números, para que você veja exatamente quais caracteres estavam em jogo em vez de confiar na contagem.
  • Os símbolos são a pontuação ASCII, menos o espaço — que formulários demais removem. Nada mais é retirado em silêncio, porque um alfabeto que descarta caracteres torna a senha mais fraca do que o número ao lado dela afirma.

Fontes

Todas as ferramentas de Código