Sven Rautenberg: md5-Codierung

Beitrag lesen

Moin!

Hallo zusammen,

Eine Frage zu folgendem Code-Abschnitt:

$data = array(
       $variable,
       $password
  );
  $data_implode = implode('', $data);
  $hash = md5($data_implode);

Nehmen wir an, jemand kennt nur $variable und $hash. Käme die Person dann an $password ran?

Nicht so ohne weiteres. Er wird einen mächtigen Rechenaufwand betreiben müssen, um eine individuelle Rainbowtabelle aufzustellen, da der Anteil $variable verhindert, dass man in schon bestehenden Tabellen einfach den Hashwert nachguckt, um _EINEN_ durch MD5 geschickten String zu ermitteln.

Letztendlich wird aber auch diese rechenintensive Methode nur jeweils EINE mögliche Lösung liefern, denn MD5 ist im Prinzip wie eine Quersumme einer Zahl:

Angenommen, in $variable steht eine 2, und das "Passwort" ist 63, dann wäre die Quersumme aus "263" eine 11. Wenn du jetzt die 11 und die 2 kennst, weißt du zwar, dass das Passwort selbst die Quersumme 9 hatte, aber da gibts außer "63" eben noch viele andere Möglichkeiten. :)

- Sven Rautenberg

--
"Love your nation - respect the others."