Passwort-Stärke-Checker
Echtzeit-Analyse mit der zxcvbn-Engine: Häufige Passwörter, Tastatursequenzen, Folgen, Wiederholungen und Daten bringen Punkteabzug – ein viel aussagekräftigeres Sicherheitsmaß als das Zählen von Groß-/Kleinbuchstaben, Ziffern oder Symbolen. Alles läuft lokal ab; Ihr Passwort verlässt den Browser niemals.
- Engine
- zxcvbn
- Punktzahl
- Skala 0–4
- Privatsphäre
- Niemals hochgeladen
- Wörterbuch
- Häufige Passwörter integriert
Erweiterte Richtlinieneinstellungen
Komma- oder zeilenweise getrennt, Groß-/Kleinschreibung wird nicht berücksichtigt. zxcvbn erkennt automatisch Abweichungen bei der Groß-/Kleinschreibung, Ersetzungen durch Ziffern (z. B. Pa$$w0rd) und Umkehrungen.
Zwei Passwörter vergleichen
WIESO ES WICHTIG IST
War „Groß + Klein + Ziffer + Sonderzeichen“ keine Sicherheit ist
P@ssw0rd! erfüllt alle vier Zeichenbedingungen und steht dennoch auf echten Datendiebstahl-Listen. Stärke hängt von der Erratbarkeit ab – nicht von der arithmetischen Kombination von Zeichenklassen.
Abgleich mit schwachen Passwörtern
Ein integriertes Wörterbuch mit gängigen Passwörtern und Wörtern wird stark abgewertet – „password“, „123456“ und „P@ssw0rd“ erhalten korrekt die Note „sehr schwach“.
Mustererkennung
Tastaturfolgen, gerade Sequenzen, Wiederholungen, Daten und gängige Wörter reduzieren den effektiven Erratraum.
Effektive, nicht theoretische Entropie
Die Bewertung basiert auf real zu erwartenden Versuchen aus den gefundenen Strukturen – nicht auf der Multiplikation von Zeichenklassengröße und Länge.
Zwei Angriffsszenarien
Getrennte Schätzungen für Offline-GPU-Knacken und online limitierte Versuche vermitteln ein Verständnis der Angreiferkosten.
Benutzerdefinierte Richtlinie und Sperrliste
Legen Sie die minimale Länge und Anforderungen an Zeichenklassen fest; fügen Sie Firmennamen oder Projekt-Codenamen hinzu, um Unternehmens-Passwortregeln zu erfüllen.
Vollständig lokal
Ihr Passwort verlässt niemals den Browser und berührt keinen Server; die Einstellungen bleiben ausschließlich in Ihrem eigenen localStorage gespeichert.
Passwortstärke verstehen
Wie die Bewertung funktioniert, was Knackzeiten bedeuten und was tatsächlich ein gutes Passwort ausmacht.
Wie wird die 0–4-Bewertung von zxcvbn berechnet?
zxcvbn teilt das Passwort zuerst in Segmente auf: Wörterbücherwörter (gängige Passwörter, englische Wörter), Tastaturfolgen, Sequenzen, Wiederholungen, Daten und Brute-Force-Fragmente.
Es schätzt die zu erwartenden Versuche pro Segment, kombiniert sie zu einer Gesamtzahl und ordnet sie einer 0–4-Bewertung zu. Häufige Abweichungen werden automatisch berücksichtigt – Groß-/Kleinschreibungsumkehr, Ersetzungen durch Ziffern (z. B. @→a, 0→o), Jahressuffixe – weshalb P@ssw0rd trotz seiner Zeichenvielfalt schlecht abschneidet.
Was ist der Unterschied zwischen effektiver Entropie und Zeichenklassengröße?
Die Zeichenklassengröße multipliziert die Alphabetgröße mit der Länge – eine theoretische Obergrenze, die voraussetzt, dass jedes Zeichen vollständig zufällig ist, was echte Passwörter praktisch nie sind.
Die hier angezeigte effektive Entropie (Bitanzahl) ist der reale Erratraum, den zxcvbn nach der Suche nach Wörterbücherwörtern und Mustern schätzt. Bei gleicher Länge hat „iloveyou2024“ eine weitaus geringere effektive Entropie als eine zufällige Zeichenkette.
Wie werden Knackzeiten geschätzt – sind sie zuverlässig?
Knackzeit = geschätzte Versuche pro Sekunde. Es werden zwei Geschwindigkeiten angezeigt: ~10 Milliarden/Sekunde für eine Offline-GPU-Farm (Angreifer hat den Hash), und ~100/Stunde für ein online-ratebegrenztes Login.
Behandle sie als Größenordnungen, nicht als Vorhersagen: Die tatsächliche Geschwindigkeit hängt vom Hash-Algorithmus ab (bcrypt/Argon2 sind um Größenordnungen langsamer als MD5), der Hardware und der Qualität des Wörterbuchs. Eine Abweichung um das 10-fache ändert nichts; eine Lücke um das Millionenfache schon.
Was macht eigentlich ein gutes Passwort aus?
Zwei solide Wege: Eine zufällige Zeichenkette von 16+ Zeichen aus einem Passwortmanager, eindeutig pro Site; oder eine Passphrase aus 4+ unzusammenhängenden Wörtern (z. B. correct-horse-battery-staple) – lang und bedeutungslos.
Egal für welche Variante Sie sich entscheiden, kombinieren Sie sie mit Multi-Faktor-Authentifizierung (MFA) und verwenden Sie nie dasselbe Passwort auf verschiedenen Sites.
Meine Site verlangt Groß-/Kleinbuchstaben, Ziffern und Symbole – warum die niedrige Punktzahl?
Die Unternehmensrichtlinie (Länge, Zeichenklassen) ist ein Einhaltungsmindestwert: Sie beantwortet die Frage „entspricht es den Regeln?“. Der zxcvbn-Score beantwortet die Frage „kann es erraten werden?“. Beides ist unabhängig voneinander.
Ein Ausrufezeichen und ein Jahr zu einem gängigen Wort hinzuzufügen (Password!2024) besteht die meisten Richtlinienprüfungen, fällt aber Sekunden nach einem Wörterbuchangriff.
Wird mein Passwort irgendwo hochgeladen?
Nein. Alles läuft in Ihrem Browser über JavaScript ab – es gibt keinen Netzwerkaufruf, der das Passwort sendet, und es funktioniert auch offline. Nur Ihre benutzerdefinierte Richtlinie (Längenregeln, Sperrliste) wird lokal gespeichert; diese enthält niemals ein Passwort.
Passwortstärke im Code prüfen
Um Ihre eigene Anmelde- oder Passwortänderungsformular mit Live-Stärkenprüfungen zu ergänzen, verwenden Sie einen zxcvbn-Port für Ihre Sprache:
<!-- 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}"),
}
}
Scores und Mustereschätzungen können je nach Bibliotheksversion geringfügig von dieser Seite abweichen, aber die Prinzipien bleiben dieselben. Bei serverseitigen Prüfungen sollten Sie zudem eine Längenbegrenzung und Ratenbegrenzung durchsetzen, damit übergroße Eingaben nicht die CPU belasten.
Häufig gestellte Fragen
Wie funktioniert dieser Passwortstärke-Checker?
Er verwendet zxcvbn, den quelloffenen Algorithmus von Dropbox: Das Passwort wird mit Wörterbüchern gebräuchlicher Passwörter, englischen Wortlisten, Tastaturmustern, Sequenzen, Daten und Wiederholungsmustern abgeglichen. Die geschätzte durchschnittliche Anzahl an Versuchen, die ein Angreifer benötigt, wird einem Score von 0–4 und Schätzungen zur Knackzeit zugeordnet.
P@ssw0rd scheint komplex zu sein – warum ist es „sehr schwach“?
Es ist eines der ikonischsten schwachen Passwörter in Datenpannen. Es taucht direkt in den Wörterbüchern von zxcvbn auf, und Großschreibung sowie Ersetzungen wie a→@ oder o→0 werden automatisch erkannt. Abwechslungsreiche Zeichen mit einer vollständig vorhersehbaren Struktur ist genau das, was regelbasierte Angreiferwörterbücher zuerst ausprobieren.
Wie lang sollte ein Passwort sein?
Wenn zufällig generiert, besiegen 12+ Zeichen typischerweise Online-Angriffe, während 16+ Zeichen Offline-GPU-Knackangriffe über viele Jahre standhalten. Die Länge ist wichtiger als die Zeichenkomplexität: Eine zufällige 20-stellige Zeichenkette in Kleinbuchstaben ist stärker als eine 10-stellige Mischung aus allen vier Zeichenklassen.
Warum wird zwischen Offline- und Online-Knackzeiten unterschieden?
Die Angriffsszenarien unterscheiden sich: Nach einer Datenbankpanne kann ein Angreifer Hashes lokal auf GPUs mit Milliarden von Versuchen pro Sekunde testen; bei einem Live-Login erlaubt die Ratenbegrenzung nur wenige Versuche pro Sekunde. Dasselbe Passwort kann in einem Szenario Billionenmal länger überleben als im anderen – daher werden beide angezeigt.
Werden meine Eingaben irgendwo gespeichert?
Nein. Ihr Passwort befindet sich nur im Speicher Ihres Browsers und verschwindet beim Neuladen. Nur Ihre benutzerdefinierten Richtlinieneinstellungen (Längenregeln, Sperrliste) werden im lokalen Speicher aufbewahrt – sie enthalten niemals ein Passwort.