Ist md5 sicher?

queicherius

♥ PHP ♥
Da ich mich sehr für die Sicherheit der Passwörter meiner Benutzer interessiere frage ich jetzt mal hier ob meine Verschlüsselungsmethode (md5) noch sicher ist, oder was ihr mir empfehlen würdet.
Ich hab nach 30 sek googlen schon ne hackerseite gefunden, die pw entschlüsselt, die mit md5 generiert wurden.
 
Da ich mich sehr für die Sicherheit der Passwörter meiner Benutzer interessiere frage ich jetzt mal hier ob meine Verschlüsselungsmethode (md5) noch sicher ist, oder was ihr mir empfehlen würdet.
Wenn möglich solltest du auf MD5 verzichten, da er mittlerweile als zu unsicher bewertet wird. Unsicher insofern als Kollisionen schneller erzeugt werden können als ursprünglich gedacht. Es ist also einfach als gedacht, einen möglichen Eingabewert für einen bekannten Hash-Wert zu errechnen.
Wenn möglich solltest du einen der SHA verwenden.

Ich hab nach 30 sek googlen schon ne hackerseite gefunden, die pw entschlüsselt, die mit md5 generiert wurden.
Eine Entschlüsselung ist nach wie vor nicht möglich. Was erwähnte Seiten aber bieten ist eine Liste bekannter Eingabewerte bei einem angegebenen Hash-Wert.
Wenn also einmal der Eingabewert „foobar“ und der dazugehörige Hash-Wert 3858f62230ac3c915f300c664312c63f bekannt sind, kann bei der Eingabe des Hash-Werts „foobar“ als möglicher Eingabewert ausgegeben werden. Das ist aber keine Entschlüsselung in dem Sinne sondern einfach nur das Speichern von Wert-Hashwert-Paaren und gilt daher auch nur für bereits bekannte Wert-Hashwert-Paare.
 
Irgendwo hab ich auch gelesen, dass dm5 von irgendwelchen Proffesoren oder so geknackt wurde und sollte sich deren Erfolgsmethode verbreiten, würde ich sagen, nein, ist nicht sicher.

Die Hackerseite, auf du warst, kann wahrscheinlich md5 nicht knacken, jedenfalls gehe ich nicht davon aus. Bei so Sachen wie md5 wurden/werden auf solchen Seiten s.g. RainbowTables (glaub die heißen so) eingesetzt. Diese Tabellen beinhalten einfach wer weiß wie viele generierte/geklaute "Passwörter" und deren md5-Hashes. Dann wird einfach nur noch nach dem md5-Hash gesucht und zack, hat man das Passwort.

Wenn man kryptische Passwörter (Zeichenfolgen ohne Sinn und verstand, am Besten einfach wild auf der Taste geklickt) benutzt und diese auch noch schön lang sind, dann sind die eigentlich schon sehr sicher, denn die Wahrscheinlichkeit, dass das Passwort in einer solchen Tabelle vorhanden ist, ist eher gering. Meist sind das Begriffe/Bezeichnungen/Namen/whatever, die auch einen schlüssigen Sinn ergeben.
 
MD5 ist keine Verschlüsselung, da es keine eineindeutigen Abbildungen von Passwort zu den errechneten Werten gibt. Allein schon aus der Tatsache, dass ein beliebig langer Wert auf einen Hashwert mit festen (32) Stellen berechnet wird, sollte zeigen, dass eine Verschlüsselung so nicht funktioniert.

Darüber hinaus sind RainbowTables kein speichern bekannter Wert-Hash-Kombinationen sondern es wird über Sequenzen itereiert um einen Hash zu erraten.

MD5 kann recht sicher, wenn Du einen Salt verwendest, denn dagegen sind auch RainbowTables recht machtlos.
 
Tschuldigung, wenn ich Mist erzählt hab, aber das war das, was ich so vom Hörn her kenne. Aber man lernt eben nie aus ;)
 
Bei der ganzen Diskussion sollte man folgendes nicht vergessen: auch ein noch so "sicherer" Hash-Algorithmus kann nur bedingt gegen schlechte Passwörter helfen. Man sollte sich daher auch nicht davor scheuen, seine Benutzer auf schwache Passwörter hinzuweisen oder ggf. diese sogar zu verbieten.

Grüße, Matthias
 
MD5 ist keine Verschlüsselung, da es keine eineindeutigen Abbildungen von Passwort zu den errechneten Werten gibt.
Was genau meinst du denn mit eineindeutige Abbildung?
Eine Hash-Funktion ist eine surjektive Abbildung. Das heißt, beliebig viele Urbilder (Eingabewerte) haben ein und dasselbe Abbild (Hash-Wert).

Bei der ganzen Diskussion sollte man folgendes nicht vergessen: auch ein noch so "sicherer" Hash-Algorithmus kann nur bedingt gegen schlechte Passwörter helfen. Man sollte sich daher auch nicht davor scheuen, seine Benutzer auf schwache Passwörter hinzuweisen oder ggf. diese sogar zu verbieten.
Du hast recht. Aber auch das Authentifizierungsystem selber stellt eine Schwachstelle dar. So wäre es fatal, wenn es möglich wäre, durch eine unbegrenzte Anzahl von Anfragen ein bestimmtes Passwort in Kombination mit alle Benutzer zu prüfen. Einer wird sicherlich „12345“ gewählt haben, da hilft auch der beste Hash-Algorithmus nicht.
 
Was genau meinst du denn mit eineindeutige Abbildung?
Eine Hash-Funktion ist eine surjektive Abbildung. Das heißt, beliebig viele Urbilder (Eingabewerte) haben ein und dasselbe Abbild (Hash-Wert).

Ließ meine Aussage einfach nochmal. Du wirst sehen, dass sich unsere Aussagen decken.
 
Hi.
Wie definierst du denn den Begriff Eineindeutigkeit?
Er meint doch nur das MD5 keine Verschlüsselung(-smethode) ist. Denn das würde ja die Möglichkeit bedingen eine Nachricht wieder entschlüsseln zu können. Der Witz einer Ein-Wege-Hashfunktion ist ja gerade, dass man nicht mal eben schnell die Originaleingabe herstellen kann... :)

Gruß
 

Neue Beiträge

Zurück