Bei mehr als einer Gelegenheit wurde ich gebeten, Regeln für die Auswahl von Passwörtern für die von mir entwickelte Software einzuführen. Typische Vorschläge beinhalten Dinge wie:
- Die Passwörter müssen mindestens N Zeichen lang;
- Passwörter müssen Kleinbuchstaben, Großbuchstaben und Zahlen enthalten;
- Keine Wiederverwendung des letzten M Passwörter (oder Passwörter, die innerhalb von P Tage).
Und so weiter.
Etwas hat mich schon immer daran gestört, dass man jede Durch die Einschränkung der verfügbaren Passwörter wird der Raum der zulässigen Passwörter verkleinert. Macht dies nicht die Passwörter einfacher zu erraten?
Wenn die Benutzer komplexe, häufig wechselnde Passwörter erstellen müssen, steigt die Versuchung, sie aufzuschreiben, was die Sicherheit ebenfalls verringert.
Gibt es einen quantitativen Beweis dafür, dass Regeln zur Einschränkung von Passwörtern die Sicherheit von Systemen erhöhen?
Wenn ja, was sind die "sichersten" Strategien zur Einschränkung von Passwörtern, die verwendet werden sollten?
bearbeiten Ólafur Waage hat freundlicherweise auf eine Coding Horror Artikel über Wörterbuchangriffe die eine Menge nützlicher Analysen enthält, aber mir scheint, dass Wörterbuchangriffe massiv reduziert werden können (wie Jeff vorschlägt), indem einfach eine Verzögerung nach einem fehlgeschlagenen Authentifizierungsversuch hinzugefügt wird.
Welche Beweise gibt es vor diesem Hintergrund dafür, dass erzwungene komplexe Passwörter sicherer sind?