Détecteur de force de mot de passe
Vérifiez la force, l'entropie et les faiblesses courantes des mots de passe. Toutes les vérifications sont effectuées localement dans votre navigateur.
Vérification de la force
- Longueur
- Lettres minuscules
- Lettres majuscules
- Chiffres
- Symboles
- Séquence
- Répétitions
- Liste noire
- Mode clavier
- Date
- Période
- Cela semble bon ! Aucun indice d'amélioration pour le moment.
Mode d'emploi
Fonctionnalités
- Analyse 100% locale, priorité à la protection de la vie privée.
- Détection avancée : mouvements au clavier, dates, répétitions périodiques, séquences, répétitions, etc.
- Correspondance avec une liste noire normalisée Leet (par exemple Pa$$w0rd → password).
- Stratégies flexibles : longueur minimale et exigences de type de caractères.
- Importer/exporter les stratégies JSON d'un clic.
- Analyser dans le détecteur d'un clic
Questions fréquemment posées
L'entropie est utilisée pour estimer la taille de l'espace de recherche basé sur l'ensemble de caractères et la longueur. En cas de structure (modèle, mot), même si le nombre de bits initiaux semble élevé, l'entropie effective sera réduite.
- Séquence ordonnée, comme abcde ou 12345.
- Longue répétition du même caractère (par exemple, aaaa).
- Correspondance avec des mots faibles ou des modèles courants de la liste noire personnalisée.
- Séquence de touches adjacentes sur le clavier (par exemple, qwerty, asdf).
- Format de date (par exemple, YYYYMMDD, dd - mm - yyyy).
- Sous - chaîne répétée (par exemple, abcabc, 121212).
- Normalisation Leet avant la correspondance avec la liste noire (par exemple, Pa$$w0rd → password).
Le temps de crack n'est qu'une estimation approximative. Les attaques réelles utilisent des dictionnaires, des masques et des GPU. Les mots de passe courts et structurés sont souvent beaucoup plus faibles que leur entropie apparente.
- Privilégiez les phrases de passe aléatoires longues (plus de 4 mots) ou les mots de passe générés par un gestionnaire de mots de passe.
- Évitez les informations personnelles, les dates et les structures prévisibles.
- Utilisez un gestionnaire de mots de passe et activez autant que possible l'authentification multifacteur (MFA).
- N'utilisez pas le même mot de passe plusieurs fois ; changez - le uniquement en cas de fuite.
Comment vérifier la force d'un mot de passe via un langage de programmation
Voici un exemple minimal utilisant des bibliothèques communautaires éprouvées. Vous pouvez choisir en fonction de votre pile technologique.
<!-- CDN -->
<script src="https://unpkg.com/[email protected]/dist/zxcvbn.js"></script>
<script>
const res = zxcvbn('P@ssw0rd!');
console.log(res.score, res.crack_times_display);
</script>
// npm i @zxcvbn-ts/core
import { zxcvbn } from '@zxcvbn-ts/core';
const result = zxcvbn('P@ssw0rd!');
console.log(result.score, result.guesses_log10);
composer require bjeavons/zxcvbn-php
<?php
require __DIR__ . '/vendor/autoload.php';
use ZxcvbnPhp\\Zxcvbn;
$zxcvbn = new Zxcvbn();
$res = $zxcvbn->passwordStrength('P@ssw0rd!');
echo $res['score'];
pip install zxcvbn
from zxcvbn import zxcvbn
res = zxcvbn('P@ssw0rd!')
print(res['score'], res['crack_times_display'])
go get github.com/nbutton23/zxcvbn-go
package main
import (
"fmt"
zxcvbn "github.com/nbutton23/zxcvbn-go"
)
func main() {
res := zxcvbn.PasswordStrength("P@ssw0rd!", nil)
fmt.Println(res.Score, res.Guesses)
}
# Add dependency
cargo add zxcvbn
use zxcvbn::zxcvbn;
fn main() {
match zxcvbn("P@ssw0rd!", &[]) {
Ok(estimate) => {
println!("score: {}", estimate.score()); // 0..4
if let Some(times) = estimate.crack_times() {
println!("offline: {:?}", times.offline_slow_hashing_1e4_per_second());
}
}
Err(err) => eprintln!("zxcvbn error: {err}"),
}
}
Remarque : ces bibliothèques donnent une estimation de la force et des motifs, qui peut différer légèrement des éléments de détection de cette page.