Kann man MD5 knacken?



  • Es gibt insgesamt nur 2^128 Hashwerte bei MD5. Das sind 3,4*10^38 Hashwerte. Wer es gerne Bildlich hat: Das sind 1 Milliarde * 1 Milliarde * 1 Milliarde * 1 Milliarde * 100 unterschiedliche Werte. Die Chance dafür, dass innerhalb der nächsten 10 Jahre irgendwo auf der Welt zwei unterschiedliche Datei zufällig denselben MD5 Hashwert haben, ist fast Null. Ich hab mal versucht die Wahrscheinlichkeit auszurechenen, aber sie war schon für wesentlich kürzere Hashwerte bei 0.(als Null zählt bei mir, was kleiner als 2^-100 ist)

    Du(wer auch immer sich angesprochen fühlt) wirst also niemals in deinem Leben ausversehen denselben Hashwert bekommen. Und wenn du ein sicheres Verfahren wie SHA nimmst, (MD5 gilt nicht mehr als sicher, da es theoretische schwächen hat) wird auch niemand absichtlich zwei unterschiedliche Dokument mit dem selben Hashwert erzeugen können. Die effektivste Methode dafür braucht 2^64 Texte um eine 50% Chance zu haben, was noch niemand schaft.
    Weil: 2^64 Texte sind jeweils mindestens 64 Bit lang, was insgesamt 64*2^64 Bit macht, also 2^70 Bit, das sind 2^40(mehr als eine Billion) Gigabyte. Das schafft noch niemand!

    @Mis2com:
    Ich verstehe deine Argumentation nicht! Bist du sicher, das du weist, worüber du redest? Das ist nicht böse gemeint, aber es kann ja sein du verwechselst gerade etwas. 😞
    Bei Hashwerten gilt: Je länger desto besser, vorausgesetzt der Algorithmus ist sicher. Und spätestens bei einem 256 Bit langen Hashwert, kann ihn dann niemand mehr per Brute-Force(ausprobieren) knacken(Dafür gibt es nicht genug Atome im Universum, hat mal einer ausgerechnet!!!). Tatsächlich reicht 160 Bit aber auf alle Fälle aus. Länger Hashwerte braucht man eigentlich nicht.



  • Nimda schrieb:

    übrigens: MD5 ist NICHT zum verschlüsseln da!

    Zum Verschlüsseln von Daten, die du wieder rekonstruieren willst: Natürlich nicht.
    Zum Verschlüsseln von Passworten: Aber sicher - insbesondere wenn man die Passworte
    sicher abspeichern will, ohne dass irgendwer sie wieder rekonstruieren kann.



  • Achso, jetzt verstehe ich. Danke
    Allerdings ist das dann eine Einwegverschlüsselung, man muss dann das eingetippte Passwort immer Hashen und mit dem gehashtem eingestellten Passwort vergleichen. Damit kann niemand das Passwort auslesen, selbst wenn er den Hashwert kennt, was ja alles ist, was von dem Passwort gespeichert wird, kann er sich damit nicht einloggen, da seine Eingabe ja gehasht wird.(Für die, die es nicht wussten)
    Das ist übrigens der Grund dafür, warum manche Internetdienste einem nicht das Passwort zu mailen könen. Weil sie es auch nicht kennen, so kurios das klingt!



  • Nimda schrieb:

    Achso, jetzt verstehe ich. Danke

    Büdde.



  • http://www.cs.ucsd.edu/users/bsy/dobbertin.ps
    http://passcracking.com/

    gerade letzteres sollte interessant sein, da es ein Online Cracking System für MD5 ist.



  • Taurin schrieb:

    Zum Verschlüsseln von Passworten: Aber sicher - insbesondere wenn man die Passworte
    sicher abspeichern will, ohne dass irgendwer sie wieder rekonstruieren kann.

    Falsch. Dafür ist es NICHT da. Man kann es aber dafür nutzen. Wie schon oben erwähnt, ist MD5 lediglich für Checksums gedacht...



  • Hö? Und wo ist der Widerspruch? Ich hab doch gar nicht bestritten, dass es - wie
    ja oben schon erwähnt - noch andere Anwendungsfelder gibt.



  • Ganz einfach MD5 ist KEINE Verschlüsselung. Es lässt sich aber dafür "missbrauchen".



  • Ich verstehe immer noch nicht, worauf du hinaus willst. Man *kann* mit dem
    Verfahren eine Einwegverschlüsselung durchführen, muss man aber nicht. Man
    kann damit auch andere, wundervolle Dinge tun.
    Wo ist das Problem? Willst du auf die Absicht der Autoren des Verfahrens hinaus?
    Die ist mir recht egal, solange das Verfahren das tut, was ich will...



  • Taurin schrieb:

    Ich verstehe immer noch nicht, worauf du hinaus willst.

    Vermutlich darauf, daß man mit MD5 lieber nicht verschlüsselt. Daß es geht, hat, soweit ich sehe, niemand bezweifelt. Verschlüsseln kann man aber doch auch mit dem Caesar-Chiffre oder ROT13.



  • Taurin schrieb:

    Willst du auf die Absicht der Autoren des Verfahrens hinaus?

    Genau.

    Taurin schrieb:

    Die ist mir recht egal, solange das Verfahren das tut, was ich will...

    Klar. Mach ich doch genauso.



  • Daniel E. schrieb:

    Taurin schrieb:

    Ich verstehe immer noch nicht, worauf du hinaus willst.

    Vermutlich darauf, daß man mit MD5 lieber nicht verschlüsselt. Daß es geht, hat, soweit ich sehe, niemand bezweifelt. Verschlüsseln kann man aber doch auch mit dem Caesar-Chiffre oder ROT13.

    weisst du wie geil ein 256Bit langer schlüssel für ne XOR verschlüsselung ist?
    btw: man kann mit MD5 auch nen geilen Passworttest machen:
    man speichert einen hash auf sagen wir mal die ersten 100 Byte eines textes oder anderen Datei die verschlüsselt werden soll, verschlüsselt dann die Datei auf irgendeinem wege,und wenn entschlüsselt werden soll, werden statt nem passworttest die ersten 100Bytes entschlüsselt(da kann irgendein müll drinstehen) und mit dem Hash verglichen,wenn die beiden Hashs richtig sind, dann hat man das richtige passwort eingegeben.
    das richtige passwort steht in keiner weise im quellcode(ausser es hat jemand lust den Hashwert zu knacken).

    Schwachstellen des verfahrens: es werden teile des Textes entschlüsselt, und ein schlauer user könnte auf böse ideen kommen,wenns aber nicht auf den Text,sondern nur auf den Hashwert ankommt,dann is das verfahren schon gut.



  • otze schrieb:

    Daniel E. schrieb:

    Taurin schrieb:

    Ich verstehe immer noch nicht, worauf du hinaus willst.

    Vermutlich darauf, daß man mit MD5 lieber nicht verschlüsselt. Daß es geht, hat, soweit ich sehe, niemand bezweifelt. Verschlüsseln kann man aber doch auch mit dem Caesar-Chiffre oder ROT13.

    weisst du wie geil ein 256Bit langer schlüssel für ne XOR verschlüsselung ist?

    Ich schrieb nicht von XOR-Verschlüsselungen.


Anmelden zum Antworten