EMZETT.
Login

Rainbow Tables

Kurz: Rainbow Tables sind vorberechnete Nachschlagetabellen, mit denen man aus einem Passwort-Hash schnell das Passwort zurückrechnet. Salz macht sie unbrauchbar.

Genauer: Statt jedes Mal alle Passwörter durchzuprobieren, tauscht man Speicher gegen Rechenzeit: Man berechnet vorab Ketten aus Hash- und Reduktionsschritten und legt nur Anfang und Ende ab.

Im Detail

  • Idee: Eine Kette Passwort → Hash → Passwort' → Hash → … wird gespeichert als (Start, Ende). Beim Knacken wird die Kette vom Ziel-Hash nachgebildet, bis ein Endpunkt passt, und dann ab dem Start rekonstruiert.
  • Gegenmittel Salz: Ein zufälliger Zusatzwert pro Nutzer macht gleiche Passwörter zu verschiedenen Hashes. Tabellen müssten für jeden Salzwert neu berechnet werden. Siehe Passwörter sicher speichern.
  • Langsame Verfahren: Argon2, bcrypt und scrypt machen jeden Versuch teuer.
  • Heute: Gegen unsalzige Alt-Hashes (MD5, SHA-1, siehe MD5 und SHA-1) wirken sie noch. Für starke Passwörter sind GPU-Wörterbuchangriffe praktischer.
  • Lehre: Nie Passwörter mit einem schnellen, unsalzigen Hash speichern.

Siehe auch: Hashing