Passwörter: je komplexer, desto sicherer - oder etwa nicht?
“Ein Passwort sollte aus Grossbuchstaben, Kleinbuchstaben, Sonderzeichen und Zahlen bestehen.”, so lautet die Empfehlung des deutschen Bundesamts für Sicherheit in der Informationstechnik. Solche Passwortrichtlinien sind heute fast überall in Verwendung und unterscheiden sich lediglich in der Anzahl Kriterien die erfüllt werden müssen und der Mindestlänge. Doch, braucht es wirklich alle diese Kriterien? Werden Passwörter dadurch sicherer?
Um dieser Frage auf den Grund zu gehen, muss man Passwörter vergleichen können. Man benötigt also eine Formel, um aus einem Passwort einen vergleichbaren Wert zu erzeugen, die sogenannte Passwortstärke. In der Informationstheorie wird hier von Entropie gesprochen. Sie beschreibt den Informationsgehalt einer Zeichenkette und als Masseinheit wird Bit verwendet.
Die Verfahren um die Passwortstärke zu ermitteln, werden üblicherweise auf die Informationen angewendet, die der Algorithmus zur Generierung verwendet und nicht auf das resultierende Passwort. Man geht nämlich davon aus, dass dem Angreifer die genauen Details des Passworts unbekannt sind.
Die Berechnung
Einem Passwort liegt ein Zeichenvorrat (a) zu Grunde. Dies ist eine abschliessende Liste von Zeichen, welche zur Erstellung verwendet werden kann. Beispiel: a={1,2,3,a,b,c,A,B,C,@,+,!}. Aus diesem Zeichenvorrat kann ein Wort wie B@1a konstruiert werden. Neben dem Zeichenvorrat gilt auch die Länge der Zeichenkette (b) als wichtige Information. Beispiel: Die Länge der Zeichenkette B@1a beträgt 4 (b=4).
Mit der Formel a^b lässt sich die Anzahl Kombinationen berechnen, welche aus dem definierten Zeichenvorrat und der Länge erstellt werden können. Beispiel: 12^4= 20736. Wenn man die Anzahl Kombinationen als Zweierpotenz darstellt, entspricht der Exponent der Entropie.
Beispiel: 20736=2^14.34, H=14.34 bit (Entropie).
Durch die Umformung unter Verwendung des Logarithmus dualis entsteht eine kompakte Formel. Hier nochmals zusammengefasst die einzelnen Komponenten mit der Formel:
- a=Anzahl Zeichen im Zeichenvorrat
- b=Länge der Zeichenkette
- H=Entropie
Formel: b*log2(a)=H
Betrachten wir hier eine Passwortrichtlinie mit den folgenden Zeichen als Zeichenvorrat: Buchstaben gross (26), Buchstaben klein (26), Zahlen (10), Sonderzeichen (Annahme Tastatur Layout “Swiss German”: 40). Dies entspricht 26+26+10+40=102 Zeichen als Zeichenvorrat. Als Länge definieren wir hier 8, was einer verbreiteten Zahl für die minimale Passwortlänge entspricht.
a=102, b=8, H=8*log2(102)=53.38 bit
Wir erhalten also ein Passwort mit einer Entropie von 53.38 bit. Beispiel: X#jk29{N. Zum Vergleich reduzieren wir nun den Zeichenvorrat um die Sonderzeichen und erhalten 26+26+10=62 Zeichen als Zeichenvorrat.
a=62, b=8, H=9*log2(62)=47.6 bit
Wie zu erwarten war, verringert sich so die Stärke des Passworts. Verlängern wir nun das Passwort um ein Zeichen, können wir die 40 entfernten Zeichen aus dem Zeichenvorrat ausgleichen und erhalten zudem ein ansehnlicheres Passwort. Beispiel: kBVEuMr9i.
a=62, b=9, H=9*log2(62)=53.59 bit
Erhöhen wir die Anzahl Zeichen auf 12, erhalten wir eine vernünftige Entropie von 71.45 bit.
Was sagt uns das nun?
Um die Sicherheit eines Passworts zu erhöhen, kann man den Zeichenvorrat erhöhen oder die Mindestlänge des Passworts. Uns werden immer komplexere Passwortrichtlinien aufgezwungen, was zur Folge hat, dass man sich die Passwörter nicht mehr merken kann oder bei Benutzung einer Tastatur mit anderem Layout das richtige Sonderzeichen nicht findet. Es wäre daher benutzerfreundlicher, auf Sonderzeichen zu verzichten und dafür die Länge des Passworts zu erhöhen. Ausserdem sollten Passwortgeneratoren benutzt werden. Die Voraussetzung obiger Rechnereien ist nämlich, dass die Zeichen einer zufälligen Quelle entsprangen. Modifikationen von Sätzen und Wörtern sind aber nicht zufällig. Es gibt denn auch verschiedene Methoden, welche auf nicht-zufällige Passwörter spezialisiert sind, wie zum Beispiel Wörterbücher, Passwort-Listen und Social Engineering (a.k.a. "Lassen Sie sich nicht ausfragen"). Mit diesen Methoden lassen sich Passwörter in einem Bruchteil der Zeit knacken, die bei der Verwendung von zufälligen Passwörtern nötig wäre.
Weiterführender Link: Electronic Authentication Guideline