# Liste häufiger Passwörter `common-passwords.txt` wird von der Registrierung und vom Passwort-Reset genutzt (KTO-01 Kriterium 3, Spec #1 § 5.6). Die Liste wird nur im Client geprüft; es gibt keinen Abgleich mit externen Diensten (kein HIBP). ## Format - Eine Zeile je Eintrag, UTF-8, LF, Kleinschreibung, ohne Leerraum am Rand. - Nur Einträge mit mindestens 10 Zeichen (kürzere fängt die Längenregel). - Einmalig, nach Häufigkeit sortiert (deutsche Einträge zuerst). - 10.000 Einträge, ca. 118 KB. - Der Vergleich in der App erfolgt ohne Groß-/Kleinschreibung und nach Trim. ## Quelle und Lizenz SecLists von Daniel Miessler, Lizenz MIT (Volltext in `app/THIRD_PARTY.md`), Commit `68bcd12457978649d41ae4f56e3b5d2db2b72560`, Verzeichnis `Passwords/Common-Credentials/`: | Datei | Verwendung | |---|---| | `Language-Specific/German_common-password-list-top-100000.txt` | die ersten 4.000 Einträge mit mindestens 10 Zeichen | | `xato-net-10-million-passwords-1000000.txt` | die ersten 6.000 weiteren Einträge mit mindestens 10 Zeichen | **Lizenzfrage entschieden (Chris, 2026-11-03):** Die MIT-Lizenz gilt für das SecLists-Repository. Die einzelnen Listen stammen aus Datenlecks bzw. Sammlungen Dritter (die xato-Liste von Mark Burnett); eine eigene Lizenz je Liste nennt SecLists nicht. Chris hat entschieden, die SecLists-Listen mit dokumentierter Herkunft (diese Datei) und MIT-Lizenztext (`app/THIRD_PARTY.md`) zu nutzen. Die Liste enthält ausschließlich Passwörter, keine Konten oder E-Mail-Adressen. Der Lizenztext wird zur Laufzeit über `LicenseRegistry` ausgeliefert (`lib/core/licenses/third_party_licenses.dart`, Asset `THIRD_PARTY.md`) und erscheint damit in `showLicensePage`. ## Neu erzeugen ```bash python3 scripts/build-common-passwords.py app/assets/security/common-passwords.txt ``` Das Skript liegt unter `scripts/build-common-passwords.py` (Filter, Reihenfolge und Grenzen stehen im Kopf der Datei).