Gerador de Senhas/ Aleatorio Seguro
Gere senhas aleatorias fortes instantaneamente. Personalize comprimento, tipos de caracteres e geracao em massa. Usa a API Web Crypto — nada sai do seu navegador.
As senhas são geradas localmente no seu navegador e nunca enviadas a um servidor
TszhD~o%EIt.rGA.d6D1plkq)Hzc`oocKG]:G7Cxbswnms`1N,Jq>PGPZq-_W7[BTb,/@0aLG2S0<iKqEsta ferramenta resolveu o seu problema?
O que torna uma senha forte
Senhas fortes通常 atendem a estes critérios: pelo menos 12 caracteres (16+推荐), contendo maiúsculas, minúsculas, números e símbolos especiais, evitando palavras do dicionário ou informações pessoais, e diferentes para每个 site. A强度 da senha está高度 correlacionada com o comprimento — uma senha随机 de 16 caracteres é mais difícil de暴力破解 do que uma senha复杂 de 8 caracteres. As últimas diretrizes NIST推荐 priorizar o comprimento sobre a复杂idade.
Por que não criar senhas você mesmo
Os humanos tendem a使用 padrões previsíveis: nome + aniversário + símbolos, sequências de teclado (qwerty, 123456), variações de palavras comuns. Esses padrões já estão收录 nos dicionários de senhas dos atacantes e podem ser破解ados em segundos. Senhas geradas随机amente não possuem padrões e levariam séculos para暴力破解-se. Usar um gerador de senhas com um gerenciador de senhas (1Password, Bitwarden等) é a melhor prática.
Este gerador de senhas é seguro
Nossa ferramenta使用 o Web Crypto API内장 do navegador (crypto.getRandomValues), um gerador de números pseudo-aleatórios暗号学icamente seguro (CSPRNG). Todo o processo de geração ocorre完全 no navegador — as senhas nunca são上传adas para nenhum servidor, não há传输 de rede,因此 não há risco de泄露. Você pode usá-lo offline com segurança.
Exemplos de codigo
function generatePassword(len, charset) {
const arr = new Uint32Array(len);
crypto.getRandomValues(arr);
return Array.from(arr, (v) =>
charset[v % charset.length]
).join("");
}
const chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*";
const pw = generatePassword(16, chars);
// e.g. "xK9#mP2&vL5$nQ7@"import secrets
import string
def generate_password(length=16):
chars = (
string.ascii_letters
+ string.digits
+ string.punctuation
)
return "".join(
secrets.choice(chars)
for _ in range(length)
)
pw = generate_password(16)
# Uses OS-level CSPRNGfunction securePassword(
length: number,
options = {
upper: true, lower: true,
digits: true, symbols: true,
}
): string {
let pool = "";
if (options.upper) pool += "A-Z";
if (options.lower) pool += "a-z";
if (options.digits) pool += "0-9";
if (options.symbols) pool += "!@#$%^&*";
const buf = new Uint32Array(length);
crypto.getRandomValues(buf);
return [...buf].map(v =>
pool[v % pool.length]).join("");
}import (
"crypto/rand"
"math/big"
)
func GeneratePassword(
length int, charset string,
) (string, error) {
result := make([]byte, length)
max := big.NewInt(int64(len(charset)))
for i := range result {
n, err := rand.Int(rand.Reader, max)
if err != nil {
return "", err
}
result[i] = charset[n.Int64()]
}
return string(result), nil
}