Mathematik der Passwörter: PIN vs. Kennwort

Die Sicherheit von Passwörtern ist ein allgegenwärtiges Thema und Diskussionen unter Experten zu Themen wie Schlüsselkomponenten und Passwörter für E-Mail-Konten, soziale Netzwerke, Onlinebanking oder Smartphones halten beständig an. Besonders bei letzterem werden die unterschiedlichen Arten der Sperrung und deren Vor- bzw. Nachteile häufig diskutiert.

Denn oftmals bedeutet ein verlorenes oder gestohlenes Smartphone nicht nur den materiellen Verlust des Mobilgeräts. Auch persönliche oder gar berufliche Informationen stehen bei ungenügendem Schutz auf dem Spiel. Deshalb raten wir Nutzern bei jeder Gelegenheit, ihr Smartphone zu sperren.

Je nach Plattform und Hersteller bestehen unterschiedliche Möglichkeiten zur Sperrung des Geräts. Die Optionen reichen von Pattern bis hin zu biometrischen Systemen, die Fingerabdrücke identifizieren. In der Regel wird von Experten eine vierstellige numerische PIN oder ein alphanumerisches Kennwort empfohlen. Letzteres ist der sicherste Weg, um Informationen auf dem Smartphone zu schützen.

Doch worin genau besteht der Unterschied zwischen einer PIN und einem Kennwort? Diesen wollen wir im Folgenden anhand des Aufwands verdeutlichen, mit dem der jeweilige Code per Brute Force geknackt werden kann. Hierfür spielt zum einen die Komplexität des Codes eine Rolle – heißt, wie viele mögliche Code-Kombinationen es gibt.

(Un)endliche Möglichkeiten?

Bei Smartphones kann man in der Regel eine vierstellige, aus Ziffern bestehende PIN eingeben. Da wir pro Stelle aus zehn Ziffern (0 bis 9) auswählen können, ergeben sich insgesamt 10.000 Kombinationsmöglichkeiten:

IMG_Formula_1

Bei Kennwörtern kann man pro Stelle aus 26 Großbuchstaben, 26 Kleinbuchstaben (wenn man Umlaute und das „ß“ mitzählen würde sogar noch mehr), 10 Ziffern und 10 Sonderzeichen (z.B. „$“, „#“, „!“) auswählen. Es gibt also insgesamt 72 Möglichkeiten pro Stelle. Bei einem vierstelligen Entsperrungscode ergibt sich die folgende Anzahl an Möglichkeiten:

IMG_Formula_2

Während es bei einer allein aus Ziffern bestehenden PIN mit vier Stellen also nur 10.000 mögliche Kombinationen gibt, sind es bei alphanumerischen Kennwörtern mehr als 26 Millionen. Diese Rechnung kann auf jedes beliebige Passwort übertragen. Bei Codes mit mehreren Stellen muss lediglich der Exponent angepasst werden.

Benötigte Zeit für einen Brute-Force-Angriff

Bei einem Brute-Force-Angriff werden alle Code-Kombinationen getestet, bis der richtige gefunden wird. Hierbei spielt neben der Anzahl an Kombinationsmöglichkeiten die Prozessleistung eine wichtige Rolle. Diese nimmt aufgrund des technologischen Fortschritts in der Architektur von Prozessoren stets zu. Derzeit können wir von einer durchschnittlichen Rechenkapazität von vier Milliarden Kalkulationen pro Sekunde ausgehen. In diesem Fall braucht ein Angreifer nicht lange, um ein vierstelliges Kennwort zu knacken (s = Sekunde):

IMG_Formula_3

In weniger als einer hundertsten Sekunde können Angreifer also aus 26 Millionen Kombinationsmöglichkeiten den richtigen Code berechnen lassen. Zwar dauert dieser Prozess immerhin 2,687-mal länger als bei einer vierstelligen PIN, aber dennoch ist der Aufwand für Angreifer sehr gering. Wortwörtlich können sie innerhalb eines Wimpernschlags 50 solcher Codes knacken (ein Lidschlag dauert etwa 300 bis 400 Millisekunden).

Wie lang ist sicher?

An dieser Stelle kommt zwangsläufig die Frage auf, wie lang ein Passwort sein sollte, um einem Brute-Force-Angriff Stand halten zu können. Bei einem zehnstelligen Kennwort (mit 72 Varianten pro Stelle) ergeben sich mehr als drei Billionen Kombinationsmöglichkeiten:

IMG_Formula_4

Ein Brute-Force-Angriff würde in diesem Fall die folgende Zeit beanspruchen (um das Ergebnis in Jahren zu erhalten, wird die Rechenkapazität von 4 Milliarden Kalkulationen pro Sekunde mit 31.556.926 multipliziert, was der Anzahl an Sekunden pro Jahr entspricht):

IMG_72_10

Das ist ein zufriedenstellendes Ergebnis, wenn man davon ausgeht, dass vermutlich niemand die Geduld haben wird, 29 Jahre lang zu warten, um ein Passwort zu knacken. Aber man kann natürlich nie wissen.

Bei der Rechnung handelt es sich um eine Exponentialfunktion. Das heißt, dass die Hinzufügung einer einzigen zusätzlichen Stelle bei dem Kennwort die benötigte Zeit zum Knacken des Codes so stark anhebt, dass sie so lang ist, wie die Entstehung des Christentums zurückreicht:

IMG_72_11

Dennoch gibt es Kryptografen, für die ein absolut sicheres Passwort noch länger sein sollte. Wie wäre es zum Beispiel mit der Zeit, die der Urknall nun schon zurückliegt (ca. 14 Milliarden Jahre)? Nur, damit dir der Umfang bewusst wird – mit einem 15-stelligen Kennwort würde die Ermittlung per Brute Force viermal so lang dauern. Ich persönlich denke, dass auch 2.000 Jahre schon eine ziemlich sichere Größe darstellen. Aber natürlich ist jedem selbst überlassen, zu entscheiden, was er als sicher empfindet.

Bin ich also sicher vor Hackern?

Natürlich gibt es neben Brute-Force-Angriffen auch andere Wege, mit denen Angreifer an Passwörter gelangen, wie Social Engineering, Phishing-Angriffe oder sogar unkonventionelle Methoden wie PIN-Punching.

Zudem sollte man nicht vergessen, dass Hacker oftmals die Bildschirmsperre umgehen und stattdessen Schwachstellen ausnutzen. Denn unter Android ist die Datei, die Passwörter speichert (data/system/password.key) per „Saltingzusätzlich vor Brute-Force-Angriffen geschützt.

Dennoch war es interessant, einmal die Dauer von Brute-Force-Angriffen vor dem Hintergrund heutiger Prozessleistung zu analysieren und die Relevanz von starken Passwörtern mathematisch zu  verdeutlichen.

Und nun?

Zunächst sollte jeder verstehen, wie wichtig es ist, das eigene Smartphone mit einem Passwort zu schützen. Es kann zwar lästig sein, immer wieder das Handy zu entsperren, aber wenn du wichtige Informationen auf deinem Gerät gespeichert hast, solltest du diesen Umstand in Kauf nehmen.

Wenn du die Möglichkeit hast, dein Smartphone mit einem Kennwort zu schützen, solltest du das tun. Für dich ist der Unterschied in Bezug auf den Aufwand zwischen der Eingabe einer PIN und einem Kennwort nicht besonders groß – für einen Angreifer hingegen schon.

Picture Credits: ©tillwe/Flickr

Autor , ESET

  • fg

    die durchschnittlichen Rechenkapazität von vier Milliarden Kalkulationen pro Sekunde hat für die Sicherheit eines Passworts keine Bedeutung, sondern nur die Zeitspanne bis ein Passwortversuch als erfolgreich verifiziert werden kann oder eben als vergeblicher Versuch (Systemantwortszeit).

    Wenn zwischen jedem Versuch die Systemantwortszeit künstlich auf eine Sekunde gesetzt wird – und das ist in vielen Fällen bereits realisiert – ergibt sich bereits bei einem vierstelligen numerischen Passwort ein Zeit von max 10000 Sekunden.

    Wenn die Systemantwortszeit bei jedem Fehlversuch verdoppelt wird, ist bereits ein 4 stelliges num. Passwort absolut sicher (siehe Schachbrett und Reiskörner).

    Noch einfacher wird es, wenn die Zahl der Fehlversuche limitiert ist. Diese Lösung wird heute fast überall praktiziert. Und da hilft auch der schnellste Superrechner nichts.

    Brute Force ? No way !