Este gerador de senhas cria senhas criptograficamente aleatórias usando as APIs de segurança integradas do seu navegador. Você controla o comprimento, quais tipos de caracteres incluir e se deseja excluir caracteres que se parecem entre si e causam confusão ao digitar. Cada senha é gerada localmente no seu dispositivo, então nada que você criar aqui é transmitido ou armazenado em qualquer lugar.
Insira seus valores para ver o resultado.
Comprimento 16, todos os tipos ativados → k7#mP2$xQ9vL!nR4
Uma senha de 16 caracteres com minúsculas, maiúsculas, dígitos e símbolos.
Comprimento 24, sem símbolos → aB3cD5eF7gH9jK1mN3pQ5rS7
Senhas mais longas sem símbolos ainda são muito fortes e mais fáceis de digitar.
Comprimento 12, excluir ambíguos → xY4zW6vU8tSr
Sem O, 0, l, I ou 1 — evita confusão ao ler ou ditar.
A maioria das pessoas escolhe senhas previsíveis demais. Usam nomes, datas, palavras do dicionário ou padrões simples como "123456" ou "senha". Mesmo quando tentam ser espertos, os seres humanos são péssimos em aleatoriedade: evitamos caracteres repetidos, favorecemos certas letras e criamos padrões que nos parecem aleatórios, mas são óbvios para um computador. Um gerador de senhas remove completamente o elemento humano e produz algo genuinamente imprevisível.
A entropia mede o quão difícil é adivinhar uma senha e é expressa em bits. Uma senha com n bits de entropia requer, em média, 2 elevado a n tentativas para ser quebrada por força bruta. Cada caractere que você adiciona multiplica o espaço de busca pelo tamanho do alfabeto do qual você está extraindo. Uma senha apenas com letras minúsculas extrai de 26 caracteres, então cada posição adiciona cerca de 4,7 bits de entropia. Adicione maiúsculas e você dobra o alfabeto para 52, elevando cada posição para cerca de 5,7 bits. Adicione dígitos e símbolos e chega a aproximadamente 6,5 bits por posição.
A percepção crítica é que o comprimento importa mais do que o tamanho do alfabeto. Uma senha de 20 caracteres usando apenas letras minúsculas tem cerca de 94 bits de entropia. Uma senha de 10 caracteres usando todos os caracteres ASCII imprimíveis tem cerca de 66 bits. A senha mais longa vence decisivamente, mesmo usando um alfabeto menor, porque cada caractere adicional multiplica o espaço de busca total em vez de apenas somar a ele.
Muitos sites impõem regras de complexidade exigindo maiúsculas, minúsculas, dígitos e símbolos. Essas regras existem porque senhas curtas precisam de toda a ajuda possível, mas criam a impressão enganosa de que a complexidade é o principal motor da força. Na realidade, uma senha de 16 caracteres feita inteiramente de letras minúsculas é mais forte do que uma senha de 8 caracteres que satisfaz todas as regras de complexidade que um site típico impõe.
É por isso que especialistas em segurança recomendam cada vez mais frases-senha — longas sequências de palavras — em vez de senhas curtas e complexas. Uma frase-senha como "cavalo correto bateria grampo" é fácil de lembrar, fácil de digitar e muito difícil de adivinhar, porque seu comprimento compensa mais do que o pequeno alfabeto. O gerador de senhas nesta página permite que você escolha qualquer abordagem: curta e complexa, longa e simples, ou qualquer coisa entre os dois.
O JavaScript fornece dois geradores de números aleatórios. O primeiro é Math.random, que é rápido e adequado para jogos, simulações e embaralhar uma playlist. O segundo é crypto.getRandomValues, que extrai de um pool de entropia no nível do sistema operacional e é projetado para operações sensíveis à segurança, como gerar senhas, tokens e chaves de criptografia.
A diferença não é sutil. Math.random usa um estado interno que pode ser reconstruído observando suas saídas. Uma vez que um invasor conhece o estado, pode prever todos os valores futuros, incluindo suas senhas. A API crypto usa uma fonte fundamentalmente diferente, projetada para permanecer imprevisível independentemente de quantas saídas anteriores um invasor tenha visto.
Este gerador usa crypto.getRandomValues exclusivamente e aplica amostragem por rejeição para eliminar o viés modular. Quando você solicita um índice aleatório em um alfabeto de 26 caracteres, uma implementação ingênua pegaria um inteiro aleatório de 32 bits módulo 26. Mas 2 elevado a 32 não é divisível por 26, então os primeiros índices teriam uma probabilidade ligeiramente maior. A amostragem por rejeição descarta valores que criariam esse viés, garantindo que cada caractere tenha exatamente a mesma probabilidade.
Use pelo menos 16 caracteres para qualquer conta que importe. Use 20 ou mais para e-mail, banco e outros alvos de alto valor. Armazene suas senhas em um gerenciador de senhas para não precisar memorizá-las. Ative a autenticação de dois fatores sempre que possível, para que mesmo que uma senha seja comprometida, o invasor ainda precise de um segundo fator para acessar sua conta.
Nunca reutilize senhas entre sites. Uma violação em um serviço não deve comprometer suas contas em outros lugares. Um gerador torna isso fácil: cada senha é única, forte e criada em segundos. Copie-a, cole-a no seu gerenciador de senhas e está pronto.
Sim, este gerador usa a mesma API criptográfica de números aleatórios que os navegadores fornecem para operações sensíveis à segurança. A função crypto.getRandomValues é projetada para produzir resultados imprevisíveis adequados para senhas e tokens, e está disponível em todos os navegadores modernos. A implementação também usa amostragem por rejeição para evitar viés modular, o que significa que cada caractere no alfabeto tem exatamente a mesma probabilidade de ser selecionado, sem nenhum favorecimento leve em relação aos primeiros caracteres.
Não, sua senha é gerada inteiramente dentro do seu navegador e nunca sai do seu dispositivo. O código JavaScript roda localmente, não usa requisições de rede e não envia nada para nenhum servidor. Você pode verificar isso desconectando da internet antes de gerar uma senha — ela ainda funcionará perfeitamente. Esta é uma propriedade de segurança importante: um gerador de senhas que transmite suas senhas pela rede derrotaria o propósito de ter uma senha segura em primeiro lugar.
Para a maioria das contas, 16 caracteres é um mínimo forte. Se o site permite senhas mais longas, 20 a 24 caracteres oferece ainda mais segurança sem ser difícil de gerenciar, especialmente se você a armazena em um gerenciador de senhas. O fator mais importante é o comprimento: uma senha de 20 caracteres feita apenas de letras minúsculas é mais forte do que uma senha de 8 caracteres que usa todos os tipos de caracteres imagináveis. O comprimento vence a complexidade sempre, porque cada caractere adicional multiplica o número de combinações possíveis pelo tamanho do alfabeto.
Math.random é projetado para simulações e jogos, não para segurança. Produz números que parecem estatisticamente aleatórios, mas são inteiramente previsíveis se alguém conhecer o estado interno. Um invasor que observar algumas saídas de Math.random pode reconstruir seu estado e prever todas as saídas futuras, incluindo suas senhas. A função crypto.getRandomValues, por outro lado, draws de uma fonte de entropia no nível do sistema operacional, projetada especificamente para ser imprevisível mesmo para alguém que observou todas as saídas anteriores. Para qualquer coisa sensível à segurança, use sempre a API criptográfica.
Caracteres ambíguos são aqueles que se parecem muito semelhantes em muitas fontes: a letra O e o dígito 0, o l minúsculo e o I maiúsculo, e o dígito 1. Quando você precisa digitar uma senha de memória ou lê-la em voz alta, esses caracteres causam confusão e erros de transcrição. Excluí-los reduz ligeiramente o número total de senhas possíveis, mas a redução é negligenciável para senhas de 12 caracteres ou mais, e o benefício de usabilidade é significativo se você precisar inserir a senha manualmente.
O gerador primeiro escolhe um caractere de cada classe selecionada — minúsculas, maiúsculas, dígitos, símbolos — e depois preenche as posições restantes a partir do alfabeto combinado. Por fim, embaralha todo o resultado usando um embaralhamento Fisher-Yates controlado pela mesma fonte aleatória criptográfica. Sem essa etapa, as primeiras posições sempre revelariam quais classes de caracteres foram incluídas, vazando informações sobre a estrutura da senha para qualquer pessoa que a veja.
Última atualização em 2026-09-27 · Escrito por UtiliaTools