Generateur de mots de passe/ Aleatoire securise
Generez instantanement des mots de passe aleatoires et robustes. Personnalisez la longueur, les types de caracteres et la generation en masse. Utilise l'API Web Crypto — rien ne quitte votre navigateur.
Les mots de passe sont générés localement dans votre navigateur et ne sont jamais envoyés à un serveur
eIc.7VYR|=JXuYR_Ce5T>j8Uq~VAeJ2/4/E~6T`^b^L.Z+.chi[63x;z%CT046>x!/u-x`xC9pCX%zeTCet outil a-t-il résolu votre problème ?
Qu'est-ce qu'un mot de passe fort
Les mots de passe forts répondent通常 à ces critères : au moins 12 caractères (16+ recommandé), contenant majuscules, minuscules, chiffres et symboles spéciaux, évitant les mots du dictionnaire ou les informations personnelles, et不同 pour chaque site. La force d'un mot de passe est高度 corrélée à sa longueur — un mot de passe随机 de 16 caractères est plus difficile à暴力破解 qu'un mot de passe complexe de 8 caractères. Les dernières directives NIST recommandent de prioriser la longueur sur la复杂ité.
Pourquoi ne pas créer vos mots de passe vous-même
Les humains ont tendance à utiliser des modèles prévisibles : nom + date de naissance + symboles, séquences de clavier (qwerty, 123456), variations de mots courants. Ces modèles sont déjà收录 dans les dictionnaires de mots de passe des attaquants et peuvent être破解és en quelques secondes. Les mots de passe générés随机ément n'ont aucun modèle et nécessiteraient des siècles pour être暴力破解és. L'utilisation d'un générateur avec un gestionnaire de mots de passe (1Password, Bitwarden等) est la meilleure pratique.
Ce générateur de mots de passe est-il sûr
Notre outil使用 le Web Crypto API内장 du navigateur (crypto.getRandomValues), un générateur de nombres pseudo-aléatoires暗号学iquement sûr (CSPRNG). Tout le processus de génération se déroule entièrement dans le navigateur — les mots de passe ne sont jamais上传és sur un serveur, il n'y a aucun传输 réseau, donc aucun risque de fuite. Vous pouvez l'utiliser hors ligne en toute sécurité.
Exemples de code
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
}