Wachtwoordsterktechecker

Controleer de sterkte, entropie en veelvoorkomende zwakke punten van uw wachtwoord. Alle controles worden lokaal in uw browser uitgevoerd.

Sterktecontrole

Entropie
Sterkte:
Geschatte offline (snelle GPU) kraakduur
Geschatte online (geschaalde) kraakduur
Controleerresultaten
  • Lengte
  • Kleine letters
  • Hoofdletters
  • Cijfers
  • Symbolen
  • Reeks
  • Herhalingen
  • Zwarte lijst
  • Toetsenbordpatroon
  • Datum
  • Periodiek
Beleidsconfiguratie
Gescheiden door komma's, niet hoofdlettergevoelig. Ondersteunt Leet-normalisatie (bijv. Pa$$w0rd → password).
Verbeteringssuggesties
Privacyverklaring: De detectie vindt volledig lokaal in uw browser plaats. Het wachtwoord wordt niet geüpload.

Gebruiksaanwijzing

Analyseer uw wachtwoord lokaal en ontvang uitvoerbare verbeteringssuggesties.
1) Voer of plak uw wachtwoord in; de resultaten worden realtime bijgewerkt.
2) Pas het beleid (minimale lengte/vereisten voor tekentypes) aan naar wens.
3) Voeg veelvoorkomende zwakke woorden toe aan de zwarte lijst om herkenning te vergemakkelijken (ondersteuning voor Leet-normalisatie).
4) Gebruik importeren/exporteren om beleidsinstellingen te delen.

Functiekenmerken

  • 100% lokale analyse, met prioriteit voor privacy.
  • Geavanceerde detectie: toetsenbordpatronen, datums, periodieke herhaling, volgorde, herhaling, enzovoort.
  • Leet-normalisatie voor overeenkomsten met de zwarte lijst (bijv. Pa$$w0rd → password).
  • Flexibele beleidsregels: minimale lengte en vereisten voor tekensoort.
  • Eenklik import/export van beleids-JSON.
  • Eenklik analyse in de detector

Wachtwoordvergelijking

Vergelijkingsresultaat
Entropie (A): Entropie (B):

Veelgestelde vragen

Wordt mijn wachtwoord geüpload?
Nee. Alle analyses worden alleen in uw browser uitgevoerd.
Wat betekent 'entropie'?
Roughly geeft het aan hoeveel pogingen nodig zijn om het te raden. De werkelijke sterkte neemt af bij aanwezigheid van patronen.
Waarom is de score gedaald?
Patronen zoals reeksen, datums of toetsenbordpatronen verminderen de sterkte.

Rapport

Het rapport bevat niet uw wachtwoordtekst, alleen indicatoren en instellingen.

Gerelateerd kennisgebied
Entropie

Entropie wordt gebruikt om de grootte van de zoekruimte te schatten op basis van het tekenenbestand en de lengte. Als er structuur (patronen, woorden) aanwezig is, zal de effectieve entropie dalen, zelfs als de oorspronkelijke bits hoog lijken.

Uitleg van de detectie-items
  • Opeenvolgende reeksen, zoals abcde of 12345.
  • Lange herhalingen van hetzelfde teken (bijv. aaaa).
  • Overeenkomst met veelgebruikte zwakke woorden/patronen in de aangepaste zwarte lijst.
  • Toetsenbordreeksen of patronen van aangrenzende toetsen (bijv. qwerty, asdf).
  • Datumformaten (bijv. YYYYMMDD, dd-mm-yyyy).
  • Herhalende substrings (bijv. abcabc, 121212).
  • Voer Leet-normalisatie uit voordat er wordt vergeleken met de zwarte lijst (bijv. Pa$$w0rd → password).
Opmerking over cracktijd

De cracktijd is slechts een ruwe schatting. Echte aanvallen maken gebruik van woordenboeken, masks en GPU's. Korte wachtwoorden met een duidelijke structuur zijn vaak veel zwakker dan hun schijnbare entropie.

Best practices
  • Gebruik bij voorkeur lange willekeurige passphrases (meer dan 4 woorden) of wachtwoorden gegenereerd door een wachtwoordbeheerder.
  • Vermijd persoonlijke informatie, datums en voorspelbare structuren.
  • Gebruik een wachtwoordbeheerder en schakel zo veel mogelijk multi-factor authenticatie (MFA) in.
  • Gebruik geen wachtwoorden herhaaldelijk; vervang ze alleen als ze zijn gelekt.

Hoe de sterkte van een wachtwoord te controleren via programmeertalen

Hieronder staat een minimaal voorbeeld met behulp van beproefde community-bibliotheken. U kunt kiezen op basis van uw technologiestack.

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}"),
    }
}
                        

Opmerking: Deze bibliotheken geven een schatting van de sterkte en patronen, wat mogelijk enigszins verschilt van de detectieitems op deze pagina.