Info2go

Hier gibt ́s Videos über spannende Experimente, Aufnahmen von wissenschaftlichen Phänomenen und Reportagen über nordbord-Projekte sowie interessante Unternehmen. Das Beste: Du kannst auch deine eigenen Filme drehen und hier mit anderen nordbordern teilen.

Wann sind Passwörter auf Servern sicher?

In der letzten Woche haben wir das Prinzip von Hashfunktionen kennengelernt. Aber wann ist eine solche Funktion sicher?

Damit eine Hash-Funktion aber auch sicher ist, sollte sie ein paar zusätzliche Eigenschaften erfüllen:
  • Einwegfunktion: Es darf nicht möglich sein, aus einem Hash das Passwort zu rekonstruieren. Sonst müsste man sich die Mühe des Hashings ja garnicht machen.
  • Schwache Kollisionsresistenz: Identische Hashes für unterschiedliche Passwörter dürfen innerhalb einer definierten Grenzen nicht vorkommen.
  • Starke Kollisionsresistenz: Hashes dürfen nicht gezielt erzeugt werden können. Wenn man einen Hash vorliegen hat, zum Beispiel weil man auf einen Server eingebrochen ist, darf es nicht möglich sein beliebige dazu passende "Passwörter" zu erzeugen.
Und weil das wieder ein wenig abstrakt ist, schauen wir uns das mal wieder am Beispiel einiger schwacher Hash-Funktionen an.
  • Die Länge des Passwortes ist eine Einwegfunktion. Wenn man nur die Länge des Passwortes kennt ist es unmöglich das ursprüngliche Passwort zu rekonstruieren. Es gibt einfach zu viele mögliche Wörter. Aber Kollisionsresistenz ist nicht gegeben: Das alle Wörter der gleichen Länge auf den gleichen Hash abgebildet werden zerstört die schwache Kollisionsresistenz. Und das es trivial ist sich irgendein Wort einer beliebigen Länge auszudenken sollte auch einleuchten. Und damit fällt auch die starke Kollisionsresistenz flach.
  • Die Summe der Buchstaben eines Passwortes ist ebenfalls eine Einwegfunktion weil es zu viele mögliche Passwörter für jeden Hash gibt. Auch in diesem Fall ist aber keine Kollisionsresistenz gegeben. Vertauschungen von Buchstaben führen zu einem identischen Hash. Und um einen bestimmten Hash zu erzeugen reicht es einfach aus ein paar Buchstaben zu addieren.
Richtige kryptographische Hashfunktionen erfüllen alle diese Anforderungen und werden von Mathematikern entwickelt.

Zurück