Daniel Thoma: MD5 zurückverwandeln

Beitrag lesen

Hallo Johannes,

Wenn der Client aber schon ein MD5-verschlüsseltes Passwort an den Server schickt bringt das gar nichts, da ein Mithörer einfach den abgefangenen.

Das ist nur teilweise richtig. Wenn man einfach den MD5-Hash des Passworts nimmt, hast Du recht.
Aber man kann zusätzlich zum Passwort noch andere Daten verwenden, z.B. eine vom Server gesendete Zufallszahl, eine Sequenznummer, eine Prüfsumme der Anfrage die man verschicken will etc.
Wenn man das richtig macht, kann man vermeiden, dass ein Mithörer das Passwort abfangen, die Nachricht verfälschen oder erneut verschicken kann.

Eine Nachricht sollte in etwa so aussehen können:
SequenzNr, Benutzer, md5(md5(Benutzer, Passwort), SequenzNr, md5(Daten)), Daten

Das Passwort kann der Mithörer nicht herausfinden, eine neue Nachricht bräuchte die nächste Sequenznummer, ohne das Passwort kann er aber den neuen MD5-Wert nicht ausrechnen. Die Nachricht kann er auch nicht manipulieren, weil auch dann der MD-5 wert nicht mehr stimmt.

Dass der OP sowas macht, wenn er fragt, wie man MD-5 entschlüsselt, ist natürlich eher nicht zu erwarten ;-)

Grüße

Daniel