Ir para o conteúdo

Gerador Criptográfico de Senhas Seguras

Gere senhas de alta entropia localmente com window.crypto.getRandomValues. 100% no navegador, sem telemetria nem tráfego de rede.

Configure as opções e clique em Gerar

Gerador Criptográfico de Senhas Seguras

100% CSPRNG no Navegador

Gere senhas de alta entropia localmente com window.crypto.getRandomValues. 100% no navegador, sem telemetria nem tráfego de rede.

Conjuntos de Caracteres

20 caracteres
82064128
Conjuntos de Caracteres

Força da Senha

Força da Senha:Muito Forte
Tamanho do Conjunto: 89Entropia de Shannon Estimada: ~129.5 bits

A entropia é uma estimativa matemática teórica baseada no tamanho do conjunto e comprimento, não uma garantia absoluta contra ataques de dicionário.

Senhas Geradas

Configure as opções e clique em Gerar

As senhas geradas nunca são enviadas pela rede, nunca são registradas e nunca são salvas no armazenamento local ou de sessão.

Cryptographically Secure Randomness vs. Pseudo-Random Number Generators

Standard JavaScript Math.random() relies on pseudo-random number algorithms (such as xorshift128+) designed for speed rather than cryptographic unpredictability. Because PRNG internal state can be reconstructed from observed sequence outputs, passwords generated via Math.random() are fundamentally vulnerable to reverse-engineering and statistical prediction attacks.

This tool utilizes window.crypto.getRandomValues(), which interfaces directly with the host operating system's cryptographic random number generator (such as /dev/urandom on Linux and macOS or CryptGenRandom / BCryptGenRandom on Windows). This guarantees true cryptographically secure pseudo-randomness (CSPRNG) with maximum information entropy.

Information Entropy Calculation (Shannon Entropy)

Password strength is mathematically measured in bits of entropy using Shannon's entropy formula:

Entropy (bits) = L * log2(R)
  • L = Password length in characters
  • R = Size of the available character pool (e.g. 90 unique characters when uppercase, lowercase, numbers, and symbols are enabled)

A 20-character password drawn from a pool of 90 characters delivers approximately 130 bits of entropy, requiring an astronomical 2130 brute-force attempts to exhaust the keyspace—far exceeding modern supercomputing capabilities.

Guaranteed Character Representation and Unbiased Shuffling

Many simplistic password generators pick random characters from a concatenated pool, which creates a probabilistic risk that a required character class (such as special symbols or digits) might be omitted in a specific password.

Our generator enforces strict representation: at least one character is selected directly from each active class, remaining positions are populated uniformly from the combined pool using rejection sampling to eliminate modulo bias, and the entire character array undergoes an unbiased cryptographic Fisher-Yates shuffle.

Zero-Retention & Zero-Backend Privacy Architecture

In accordance with strict zero-knowledge security standards:

  • 100% Client-Side: All computations execute strictly within your local browser JavaScript engine. No passwords, seeds, or parameters are ever sent to an external server.
  • Zero Persistence: Generated passwords exist solely in ephemeral memory and are never written to localStorage, sessionStorage, cookies, or indexed databases.
  • Zero Auto-Copy: Passwords are never placed into your system clipboard without an explicit user click on the Copy action button, preventing clipboard snooping attacks.

Frequently Asked Questions

As senhas geradas são transmitidas para algum servidor?
Não. A geração ocorre inteiramente na memória do seu navegador através de window.crypto.getRandomValues, sem chamadas externas.
Por que usar crypto.getRandomValues em vez de Math.random?
Math.random não é criptograficamente seguro e seus resultados podem ser previstos. window.crypto.getRandomValues consome entropia do sistema operacional.
As senhas geradas ficam salvas no navegador?
Nunca. As senhas são mantidas apenas na memória volátil da interface e nunca são gravadas no localStorage ou sessionStorage.