Gerador de Senhas Fortes e Aleatórias

Fraca0 bits
Tempo de quebra offline: instantly

    Gerado no seu navegador com crypto.getRandomValues. Nada é transmitido, armazenado ou colocado na URL — um link compartilhado não pode vazar isso.

    Nada do que você digita aqui é armazenado, registrado ou compartilhado.

    Gere senhas fortes e aleatórias no seu navegador, com a entropia real em bits em vez de um medidor vago de força. Nada é transmitido nem armazenado.

    Como usar

    1. Escolha um comprimento e quais conjuntos de caracteres incluir.
    2. As senhas são geradas imediatamente; clique em Gerar para um novo lote.
    3. Copie uma, ou copie a lista inteira.

    Comprimento vale mais que complexidade

    Entropia é o comprimento multiplicado pelo logaritmo na base dois do tamanho do alfabeto, e o formato dessa fórmula é o argumento inteiro. Acrescentar um caractere à senha multiplica o espaço de busca pelo tamanho do alfabeto; acrescentar uma classe inteira de caracteres multiplica uma única vez. Uma senha de 16 caracteres só com minúsculas tem cerca de 75 bits. Uma de 12 caracteres usando as quatro classes tem cerca de 79. Acrescentar mais quatro minúsculas vale mais que acrescentar símbolos.

    É por isso que regras de composição - uma maiúscula, um dígito, um símbolo - caíram em desuso. Em teoria elas somam um ou dois bits e, na prática, empurram as pessoas para as mesmas poucas substituições previsíveis: maiúscula no começo, dígito e ponto de exclamação no fim. Atacantes modelam esses padrões explicitamente, então as regras tornam as senhas mais fáceis de adivinhar enquanto parecem mais seguras. A diretriz SP 800-63B do NIST abandonou tanto as exigências de composição quanto a troca periódica obrigatória exatamente por isso, e recomenda comprimento com verificação contra senhas já vazadas.

    A entropia mede o processo, não a string

    Essa é a distinção que a maioria dos medidores de força erra. Entropia é uma propriedade de como a senha foi escolhida, não dos caracteres que saíram. Um gerador que escolhe 12 caracteres de forma uniforme num alfabeto de 72 produz 74 bits, sejam quais forem os 12 sorteados - inclusive aquela combinação que por acaso forma uma palavra, que é exatamente tão forte quanto qualquer outra.

    O inverso também vale, e importa mais. Uma senha inventada por uma pessoa tem a entropia do processo de escolha dela, que é muito menor do que a fórmula sugere, porque as pessoas escolhem num cantinho minúsculo do espaço. Um medidor que olha a string pronta não enxerga isso: dá nota alta para Tr0ub4dor&3 enquanto a lista de palavras do atacante a encontra rapidinho.

    O número mostrado aqui é honesto porque o processo é conhecido - seleção aleatória uniforme, de uma fonte sem viés, exatamente sobre o alfabeto que você configurou. Não é um palpite sobre uma string; é aritmética sobre um sorteio. O que também significa que ele deixa de valer no momento em que você edita o resultado à mão.

    Frases-senha

    Quando uma senha precisa ser digitada num controle de videogame ou ditada por telefone, uma frase-senha de palavras aleatórias é mais fácil de usar com a mesma força. A palavra importante é aleatória: escolhidas de uma lista, com dados ou com um gerador, e não compostas por você.

    A lista Diceware padrão tem 7.776 entradas, então cada palavra contribui com cerca de 12,9 bits. Quatro palavras dão uns 52 bits, o que sozinho já não basta. Seis palavras dão cerca de 77 bits e são um alvo razoável para algo que você precisa memorizar, como a senha mestra de um gerenciador ou uma chave de criptografia de disco. Sete ou oito para o que protege todo o resto.

    Uma frase que você mesmo pensou não chega nem perto disso. Letras de música, citações e frases gramaticais estão todas muito presentes nos dicionários de quebra de senha, e a própria gramática estreita enormemente o espaço.

    O que realmente protege uma conta

    A força é a parte da segurança de uma conta em que um gerador pode ajudar, e normalmente não é a parte que falha.

    O que falha é a reutilização. Credenciais de um vazamento são testadas em todos os outros serviços em poucas horas, então uma senha compartilhada entre sites faz o site mais fraco definir a segurança de todos - e nenhuma entropia numa senha reutilizada ajuda, já que o atacante tem o texto puro. Uma senha única por site é o hábito de maior valor, e só é viável com um gerenciador, que também derrota páginas de phishing que uma pessoa não distinguiria a olho.

    Depois vem a autenticação em dois fatores, de preferência com passkey ou chave física em vez de SMS, que pode ser interceptado com troca de SIM. E vale ter claro o limite do seu próprio esforço: se um serviço guarda senhas mal ou as vaza em texto puro, nada do que você escolheu faz diferença. Isso é argumento a favor de senhas únicas e 2FA, não de senhas mais longas.

    Como as senhas são realmente atacadas

    A tentativa online - digitar senhas em um formulário de login - é o ataque que as pessoas imaginam e o menos eficaz de todos, porque limites de taxa e bloqueios de conta o restringem a algumas tentativas por conta. Tudo o que é sério acontece offline, depois que um banco de dados de hashes foi roubado, e ali o único limite do atacante é o hardware que ele tem em mãos.

    A quebra offline não avança em ordem alfabética. Ela começa por listas montadas a partir de vazamentos anteriores, centenas de milhões de senhas que pessoas de fato escolheram, e então aplica regras a cada uma: colocar a primeira letra em maiúscula, acrescentar um ano no fim, trocar a por @, terminar com um ponto de exclamação. As transformações que as pessoas fazem para que uma senha pareça mais forte são exatamente as que essas regras cobrem.

    O credential stuffing é o ataque mais barato de todos e não exige quebra nenhuma. Pares de e-mail e senha de um vazamento são repetidos contra todos os outros serviços, e a taxa de sucesso é alta o bastante para sustentar um negócio, porque a maioria das pessoas reutiliza senhas. É por isso que uma senha única por site protege você mesmo quando um serviço que você usa é mal administrado.

    Gerenciadores e passkeys na prática

    Um gerenciador de senhas é a única forma realista de manter uma senha única e de alta entropia para cada site, e seu segundo benefício é menos comentado: ele não preenche automaticamente em um domínio que apenas parece o certo. Uma página de phishing convincente engana pessoas; não engana o gerenciador, porque a URL não bate.

    As passkeys vão além ao eliminar o segredo compartilhado. Um par de chaves é gerado no dispositivo, a metade privada nunca sai dali e o site guarda apenas a chave pública - ou seja, não há nada no banco de dados do site que valha a pena roubar e nada para phishing, já que a assinatura fica vinculada à origem. O suporte já é amplo entre navegadores, sistemas operacionais e grandes serviços.

    A migração é gradual e bagunçada. A maioria das contas vai manter uma senha como alternativa por anos, os fluxos de recuperação são o ponto fraco nos dois modelos, e a sincronização de passkeys entre ecossistemas ainda é irregular. Ativar passkeys onde forem oferecidas e manter senhas fortes e únicas no resto é a posição pragmática.

    Definindo a política de um time ou de um produto

    O SP 800-63B do NIST é a referência que a maior parte das orientações modernas segue, e suas recomendações surpreenderam muita gente: nada de regras de composição, nada de expiração periódica obrigatória, um comprimento mínimo de pelo menos oito caracteres com permissão para senhas muito mais longas, e verificação contra listas de senhas já vazadas.

    O raciocínio é comportamental. Regras de composição empurram todo mundo para as mesmas substituições previsíveis, e a troca forçada produz Password1, Password2, Password3 - cada mudança mais fraca que a anterior e anotada em um papelzinho. A expiração continua fazendo sentido como resposta a uma suspeita de comprometimento, o que é bem diferente de seguir o calendário.

    Três detalhes de implementação importam mais que o texto da política. Permita senhas longas e todos os caracteres, inclusive espaços e emoji, já que um comprimento máximo costuma indicar que a senha está sendo armazenada de forma errada. Não trunque em silêncio - o bcrypt ignora tudo o que passa de 72 bytes. E compare as senhas novas com uma base de vazamentos, o que a range API do Have I Been Pwned faz sem que a senha saia do cliente de uma forma utilizável.

    A recuperação é o alvo dos atacantes

    Toda conta é tão forte quanto o caminho mais fraco de volta para dentro dela. Uma senha de vinte caracteres não significa nada se o link de redefinição chega a um e-mail protegido por uma data fácil de lembrar, e é por isso que a conta de e-mail que sustenta todo o resto merece a senha mais forte e o segundo fator mais robusto que você estiver disposto a manter.

    Perguntas de segurança são senhas com resposta pública. Onde não der para evitá-las, trate-as como senhas adicionais: gere uma sequência aleatória para cada uma e guarde no gerenciador.

    Os códigos de backup são a parte que as pessoas pulam e depois lamentam. Gere-os ao ativar a autenticação em duas etapas, imprima-os ou guarde-os em algum lugar que não dependa do aparelho onde está o autenticador, e cadastre um segundo fator se o serviço permitir. O cenário de falha que ninguém planeja não é um atacante; é um celular perdido e uma conta cujo único segundo fator estava nele.

    O que o medidor de força enxerga e o que não

    O número de entropia mostrado aqui é honesto porque o processo é conhecido: seleção aleatória uniforme a partir do alfabeto exato que você configurou. É aritmética sobre um sorteio, não um palpite sobre um texto, e deixa de valer no instante em que o resultado é editado à mão.

    Medidores que pontuam uma senha digitada por você estão estimando algo bem mais difícil. Os bons, como o zxcvbn, fazem isso buscando em listas de palavras, padrões de teclado, datas e substituições comuns, e informando com que rapidez esses métodos a encontrariam - um número muito mais útil do que contar classes de caracteres, que é o que fazem os medidores ingênuos.

    É por isso que um medidor ingênuo dá nota alta a P@ssw0rd1 enquanto uma lista de palavras a encontra em milissegundos. Se você está construindo um formulário de cadastro, um medidor que reconhece padrões somado a uma verificação de vazamento dá aos usuários um retorno que corresponde ao risco real; uma barra colorida movida por comprimento e símbolos basicamente ensina a acrescentar um ponto de exclamação.

    Perguntas frequentes

    De onde vem a aleatoriedade?
    De crypto.getRandomValues, a fonte aleatória criptograficamente segura do navegador. Math.random é deliberadamente evitado: é um gerador pseudoaleatório rápido, semeado a partir do estado do relógio, e sua saída é previsível para quem observar o suficiente dela.
    O que significa o valor de entropia?
    É o número de bits de aleatoriedade real, calculado como o comprimento multiplicado pelo log2 do tamanho do conjunto de caracteres. Cada bit a mais dobra o trabalho de adivinhar. Essa é a medida honesta de força, ao contrário de um medidor que só checa se você incluiu um símbolo.
    Quanta entropia é suficiente?
    Abaixo de cerca de 45 bits é fraco contra um atacante determinado. Perto de 70 bits resiste à quebra offline de um hash rápido. Acima de 100 bits está além da força bruta para qualquer hardware previsível. As configurações padrão aqui produzem bem mais de 100.
    Como o tempo de quebra é calculado?
    Ele assume um ataque offline contra um hash rápido a 100 bilhões de tentativas por segundo, e reporta o tempo para percorrer metade do espaço de chaves. Esse é o pior caso realista; um atacante tentando contra um login ativo é muitas ordens de grandeza mais lento.
    Estas senhas são enviadas ou registradas em algum lugar?
    Não. Elas são geradas no seu navegador, nunca transmitidas, nunca armazenadas e nunca escritas na URL, então compartilhar um link não pode vazá-las. Ainda assim, um gerenciador de senhas é um lugar melhor para guardá-las do que uma aba do navegador.
    Por que excluir caracteres parecidos?
    Porque 0 e O, ou 1 e l, são difíceis de distinguir quando uma senha precisa ser lida em voz alta ou digitada a partir do papel. Isso reduz um pouco a entropia, e é por isso que a contagem de bits se atualiza quando você ativa a opção.

    Última atualização:

    Relatar um problema

    Inclua os passos, o resultado esperado e o resultado real. Remova segredos e dados pessoais.

    Ferramentas relacionadas