Beispiel für zwei gleiche MD5-Fingerprints

Hier kann alles mögliche diskutiert werden. Themen zu Purebasic sind hier erwünscht.
Flames und Spam kommen ungefragt in den Mülleimer.
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8809
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Beispiel für zwei gleiche MD5-Fingerprints

Beitrag von NicTheQuick »

Hi!

Bin letztens durch irgendjemanden darauf aufmerksam geworden, das man bei Wikipedia Beispiele für Datenfelder bekommt, die nach dem MD5-Algorithmus den gleichen Hash bekommen.

Hier mal zwei Beispiele, die ich gefunden habe. Vielleicht interessierts ja den ein oder andere. :wink:

Code: Alles auswählen

DataSection
  Value1:
    Data.l $2DD31D1,  $C4EEE6C5, $69A3D69,  $5CF9AF98, $87B5CA2F, $AB7E4612, $3E580440, $897FFBB8
    Data.l $634AD55,  $2B3F409,  $8388E483, $5A417125, $E8255108, $9FC9CDF7, $F2BD1DD9, $5B3C3780
    Data.l $D11D0B96, $9C7B41DC, $F497D8E4, $D555655A, $C79A7335, $CFDEBF0 , $66F12930, $8FB109D1
    Data.l $797F2775, $EB5CD530, $BAADE822, $5C15CC79, $DDCB74ED, $6DD3C55F, $D80A9BB1, $E3A7CC35
  
  Value2:
    Data.l $2DD31D1,  $C4EEE6C5, $69A3D69,  $5CF9AF98, $7B5CA2F,  $AB7E4612, $3E580440, $897FFBB8
    Data.l $634AD55,  $2B3F409,  $8388E483, $5A41F125, $E8255108, $9FC9CDF7, $72BD1DD9, $5B3C3780
    Data.l $D11D0B96, $9C7B41DC, $F497D8E4, $D555655A, $479A7335, $CFDEBF0,  $66F12930, $8FB109D1
    Data.l $797F2775, $EB5CD530, $BAADE822, $5C154C79, $DDCB74ED, $6DD3C55F, $580A9BB1, $E3A7CC35
  
  Value3:
    Data.l $2DD31D1,  $C4EEE6C5, $69A3D69,  $5CF9AF98, $87B5CA2F, $AB7E4612, $3E580440, $897FFBB8
    Data.l $634AD55,  $2B3F409,  $8388E483, $5A417125, $E8255108, $9FC9CDF7, $F2BD1DD9, $5B3C3780
    Data.l $313E82D8, $5B8F3456, $D4AC6DAE, $C619C936, $B4E253DD, $FD03DA87, $6633902,  $A0CD48D2
    Data.l $42339FE9, $E87E570F, $70B654CE, $1E0DA880, $BC2198C6, $9383A8B6, $2B65F996, $702AF76F
  
  Value4:
    Data.l $2DD31D1,  $C4EEE6C5, $69A3D69,  $5CF9AF98, $7B5CA2F,  $AB7E4612, $3E580440, $897FFBB8
    Data.l $634AD55,  $2B3F409,  $8388E483, $5A41F125, $E8255108, $9FC9CDF7, $72BD1DD9, $5B3C3780
    Data.l $313E82D8, $5B8F3456, $D4AC6DAE, $C619C936, $34E253DD, $FD03DA87, $6633902,  $A0CD48D2
    Data.l $42339FE9, $E87E570F, $70B654CE, $1E0D2880, $BC2198C6, $9383A8B6, $AB65F996, $702AF76F
EndDataSection

;1 und 2 testen
MD51.s = MD5Fingerprint(?Value1, 128)
MD52.s = MD5Fingerprint(?Value2, 128)

Debug MD51
Debug MD52
If MD51 = MD52 : Debug "Beide gleich" : EndIf

;Jetzt 3 und 4 testen
MD51.s = MD5Fingerprint(?Value3, 128)
MD52.s = MD5Fingerprint(?Value4, 128)

Debug MD51
Debug MD52
If MD51 = MD52 : Debug "Beide gleich" : EndIf
tranquil
Beiträge: 117
Registriert: 22.09.2004 22:07
Kontaktdaten:

Beitrag von tranquil »

Die beiden unterscheiden sich ja kaum voneinander. Theoretisch müsste es ja zu jedem MD5 Hash unendlich viele möglichkeiten geben. Nur werden diese Datenpakete dann eben wesendlich größer.

Aber trotzdem mal interessant sowas zu sehen. Nur ein MD5 Hash von einem File ist also durchaus nicht sicher. Deshalb beziehe ich zu dem Hash-String eines Files immernoch die Dateigröße mit zum vergleich hinzu.

Mike
Benutzeravatar
hardfalcon
Beiträge: 3447
Registriert: 29.08.2004 20:46

Beitrag von hardfalcon »

deshalb wurde AFAIK ja auch SHA1 entwickelt. Der ist ancsheinend sicherer als MD5. Für Passwortabfragen in PHP verwende ich deswegen auch immer SHA1 anstelle von MD5, nur bei PB geht das halt leider nicht ohne Umwege... Schade eigentlich!

@tranquil: Dateigröße allein reicht nicht. Du solltest auch noch mehrere DES-Fingerprint mit jeweils verschiedenen Keys benutzen... Es reicht ja vollauf, wenn du die drei MEthoden gestaffelt anwendest:

1.) Dateigröße (wenn ungleich, überspringe den Rest)
2.) MD5 (wenn ungleich, überspringe den Rest)
3.) verschiedene DES-Hashes (wenn ungleich, überspringe den Rest)
Benutzeravatar
ZeHa
Beiträge: 4760
Registriert: 15.09.2004 23:57
Wohnort: Friedrichshafen
Kontaktdaten:

Beitrag von ZeHa »

Mal 'ne andere Frage... kann man einer BruteForce-Attack leicht entgehen, indem man das Paßwort per md5(sha1(md5(md5(sha1())))) oder sowas verschlüsselt? Oder bringt das so gesehen nicht viel? Weil der BruteForcer hat ja keine Ahnung, in welcher Reihenfolge ich welche Methode verwende - da müßte er seine Wortlisten ja in allen möglichen Verschlüsselungs-Kombinationen ausprobieren...
tranquil
Beiträge: 117
Registriert: 22.09.2004 22:07
Kontaktdaten:

Beitrag von tranquil »

zum Thema BruteForce und Fingerprints:

Hm das ist recht relativ. Passwörter sollten aufgrund von Datensicherheit nur als MD5 übertragen und gespeichert werden. Wie schnell so ein 32 Zeichen langer MD5-String geknackt ist kann ich leider auch nicht sagen.

ich hab mal nen MD5 im https://passwortcheck.datenschutz.ch/check.php geprüft. Resultat:

Code: Alles auswählen

Ihr Passwort ist stark. 
  
Gemäss unserer Analyse kann es wie folgt gefunden werden: 
Anzahl benötigte Versuche: 1'788'418'437'741'806'952'541'445'418'695'489'459'120'748'545'829'780 
Ungefähre Zeit für Suche: 113'420'753'281'443'870'658'386'949'435'279'646'063 Jahr(e) (bei 500'000 Tests/Sekunde) 
 
Als Passwort habe ich den Hash von 'DiesIstEintestpasswort' errechnen lassen. Das Ergebniss ist demzufolge sehr gut.
Benutzeravatar
ZeHa
Beiträge: 4760
Registriert: 15.09.2004 23:57
Wohnort: Friedrichshafen
Kontaktdaten:

Beitrag von ZeHa »

Jo, scheinbar kommen ganze Sätze in Frage, wenn man ein Paßwort braucht... klar, weil die einzelnen Wörter, die zwar in der Wortliste sind, müssen erst noch in der richtigen Reihenfolge zusammengesetzt werden! Und wenn dann der Satz auch noch sinnlos ist, ist es am besten ;)

ichessegesterneinholz z.B. scheint stark zu sein ;)
Benutzeravatar
Eric
Beiträge: 303
Registriert: 05.09.2004 09:50
Wohnort: Göttingen

Beitrag von Eric »

Ich musste gerade feststellen, dass die 32 stellige Zahlenkombination, die ich als Passwort hab unter Windows XP Stark ist, unter Windows NT mittelmäßig und unter Linux schwach :shock:

Und jetzt das Beste:
Unser Schulserver läuft mit Linux, auf den meisten Computern läuft NT Workstation und auf einigen XP :lol:
El_Choni_work: cant't you just spit the binary data to sqlite, as you would spit a hamster into a microwave oven?
* Fangles falls off the chair laughing
Bild
Antworten