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

Entropie
Force:
Estimation du temps de cassage hors ligne (GPU haute vitesse)
Estimation du temps de cassage en ligne (vitesse limitée)
Résultats de la vérification
  • Longueur
  • Lettres minuscules
  • Lettres majuscules
  • Chiffres
  • Symboles
  • Séquence
  • Répétitions
  • Liste noire
  • Mode clavier
  • Date
  • Période
Configuration de la stratégie
Séparés par des virgules, sans distinction de casse. Prend en charge la normalisation Leet (par exemple Pa$$w0rd → password).
Suggestions d'amélioration
Note de confidentialité : La détection se fait entièrement localement dans votre navigateur, le mot de passe n'est pas téléchargé.

Mode d'emploi

Analysez les mots de passe localement et recevez des suggestions d'amélioration exécutables.
1) Entrez ou collez le mot de passe ; les résultats seront mis à jour en temps réel.
2) Ajustez la stratégie selon vos besoins (longueur minimale / exigences de type de caractères).
3) Ajoutez des mots faibles courants à la liste noire pour faciliter la détection (prise en charge de la normalisation Leet).
4) Utilisez l'importation / l'exportation pour partager les paramètres de la stratégie.

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

Comparaison de mots de passe

Résultat de la comparaison
Entropie (A): Entropie (B):

Questions fréquemment posées

Mon mot de passe sera-t-il téléchargé ?
Non. Toutes les analyses sont exécutées uniquement dans votre navigateur.
Qu'est-ce que l'“entropie” ?
Cela représente approximativement le nombre d'essais nécessaires pour deviner le mot de passe. La force réelle diminue en cas de structure.
Pourquoi la note a-t-elle diminué ?
Des motifs tels que des séquences, des dates ou des mouvements au clavier diminuent la force.

Rapport

Le rapport ne contient pas le texte de votre mot de passe, seulement les indicateurs et les paramètres.

Connaissances connexes
Entropie

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.

Explication des éléments de détection
  • 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).
Remarque sur le temps de crack

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.

Meilleures pratiques
  • 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.

JavaScript
<!-- 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>
                        
Node.js
// npm i @zxcvbn-ts/core
import { zxcvbn } from '@zxcvbn-ts/core';

const result = zxcvbn('P@ssw0rd!');
console.log(result.score, result.guesses_log10);
                        
PHP
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'];
                        
Python
pip install zxcvbn
                        
from zxcvbn import zxcvbn

res = zxcvbn('P@ssw0rd!')
print(res['score'], res['crack_times_display'])
                        
Go
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)
}
                        
Rust
# 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.