molily: meine Passwortverschlüsselungsidee

Beitrag lesen

Als Lösung wird ein mehrfaches Verschlüsseln per MD5 vorgestellt. In PHP gibt es dazu z.B. die Funktion bcrypt(). Beim verschlüsseln des Passwortes kostet das pro Aufruf ein paar Milisekunden, soll später bei einem Angriff die Zeit des Rekonstruierens sehr hochtreiben.

Und ich stell mir die Frage, wieso so kompliziert?

Weil das im Gegensatz zu MD5 und darauf basierendes Gebastel sicher ist. Standard sind längere salted hashes mit einem sichereren Hash-Algorithmus wie eben Blowfish oder neuere SHA-Versionen. Siehe etwa http://www.openwall.com/phpass/ oder http://net.tutsplus.com/tutorials/php/understanding-hash-functions-and-keeping-passwords-safe/. Etwas besseres wirst du nicht erfinden.

Ich würde das Passwort per md5 verschlüsseln und diese md5 Stringkette nochmals manipulieren z.B. könnte man den kompletten String einfach umdrehen.

Das erhöht die Sicherheit nicht oder nur minimal.

Der Angreifer weiß nicht dass der MD5 umgedreht wurde und versucht den umgedrehten md5 zu entschlüsseln.

Wenn der Angreifer das Know-How hat, um an deine MD5-Hashes zu kommen und einen Angriff gegen diese startet, wird er sich von deiner weiteren winzigen Hürde nicht beeindrucken lassen.

Wenn deine Datenbank kompromittiert wird, ist deine Webanwendung und deren Code wahrscheinlich schon vorher kompromittiert worden.

Lass die Finger von selbstgebauten Methoden, vor allem simple »Security by Obscurity«. Es existieren hinreichend performante und sichere Methoden.

Mathias