// CRYPTOGRAPHIC TOOLS

Password Generator

Generate secure, random passwords client-side

••••••••••••••••••••
Strength

20

Como funciona este gerador

Cada caractere é sorteado de crypto.getRandomValues() — o mesmo gerador criptográfico que o seu navegador usa em ligações TLS. Aplicamos amostragem por rejeição (*rejection sampling*) ao mapear bytes aleatórios para índices de caractere, evitando o pequeno enviesamento de byteAleatório % tamanhoDoSet presente em muitos geradores.

Dois conjuntos de símbolos

O conjunto completo (!@#$%^&*()-_=+[]{};:,.<>?/|~\'\"\\) dá mais entropia por caractere, mas cria problemas: sites bancários e governamentais frequentemente rejeitam certos símbolos silenciosamente; teclados móveis tornam { e ~` chatos.

Por padrão usamos um conjunto seguro (!@#$%&*-_=+.?) que funciona em 95% dos formulários. Ative "Conjunto estendido" se precisar de entropia máxima.

O que "forte" significa

A barra de força mede entropia de Shannon — bits de aleatoriedade. Cada bit dobra o número de tentativas necessárias pra força-bruta.

Classificação Entropia Tempo a 1 bilião tent./seg
Fraca < 28 bits Segundos
Razoável 28–49 bits Horas a dias
Forte 50–71 bits Décadas
Muito Forte 72+ bits Séculos

Nada é armazenado

A senha gerada vive apenas na memória do navegador. Sem localStorage, sem chamadas de rede. A página nem auto-gera ao carregar — você decide quando.

Ataques online vs offline — porque a mesma palavra-passe é "fraca" e "OK" ao mesmo tempo

Quando você digita uma palavra-passe num formulário de início de sessão web, a sua tentativa é verificada pelo servidor do sítio. Os serviços modernos vigiam isto de perto: depois de três ou cinco tentativas erradas a conta é temporariamente bloqueada, exige captcha, ou dispara um email de "actividade suspeita". Mesmo com uma lista de palavras-passe vazada, o atacante consegue testar talvez 5-10 tentativas por minuto antes de ser bloqueado — e mesmo com um pequeno exército de bots a distribuir as tentativas, é difícil ir além de algumas centenas por hora. Isto chama-se rate limiting (limitação de taxa). Contra um atacante limitado a algumas centenas de tentativas por hora, uma palavra-passe de 8 caracteres em letras minúsculas (28 bits de entropia, ~200 mil milhões de possibilidades) é OK. Ele simplesmente não consegue tentar o suficiente.

O cenário catastrófico é diferente. Sítios são invadidos, bases de dados são vazadas, cofres de palavras-passe são roubados, cópias de segurança cifradas são exfiltradas. Quando isso acontece, o atacante tem uma *cópia* dos dados na máquina dele. Sem rate limit. Sem bloqueio. Pode atirar uma GPU farm contra isto — milhares de milhões de tentativas por segundo. A mesma palavra-passe de 8 caracteres que durou para sempre contra o início de sessão do sítio cai em segundos. O modelo de ameaça inverte-se no momento em que os dados saem do ambiente controlado pelo servidor.

É por isto que a mesma palavra-passe aparece como "fraca" na barra mesmo que, para a maioria dos usos, esteja perfeitamente segura. A barra assume o pior caso: alguém tem o blob cifrado e pode atacar offline a velocidade máxima.

O que um gestor de palavras-passe realmente faz por si

Um gestor de palavras-passe resolve o problema do ataque offline de uma forma que os humanos sozinhos não conseguem: permite-lhe usar uma palavra-passe aleatória única de 20+ caracteres para cada sítio, sem o seu cérebro precisar de se lembrar de nenhuma. Você memoriza uma palavra-passe principal — sua, escolhida com cuidado, longa, idealmente com palavras que nunca vai esquecer — e o gestor trata de tudo o resto. Quando um sítio é invadido, só essa palavra-passe específica é exposta, e é uma string aleatória de 20 caracteres que nenhum ataque offline vai quebrar em tempo útil. O raio do desastre cai de "todas as minhas contas" para "esta conta específica, que vou substituir".

Se não usa gestor de palavras-passe hoje, essa pode ser a maior melhoria de segurança disponível para si, e custa menos que um café por mês (ou é grátis, em alguns casos). O nosso gerador existe para o momento em que precisa de uma palavra-passe forte aleatória e não quer pensar — mas a palavra-passe que ele lhe dá é mais útil quando guardada num sítio durável, não memorizada.