hash: Eindeutige Prüfziffer aus einem String bilden

Beitrag lesen

Nein, wie im hiesigen Thread schon mehrfach geschrieben, können auch unterschiedliche Strings den selben Hashwert nach Verfahren X haben. Solche Kollisionen sind sowohl für MD5 als auch für SHA1 nachgewiesen. Die Frage nach der Wahrscheinlichkeit einer solcher Kollision sei dahingestellt.

Für md5 und sha1 ist nachgewiesen, dass es möglich ist, Kollisionen in relativ kurzer Zeit vorsätzlich zu erzeugen, die einem ebenfalls von mir vorgegebenen Format folgen; dass ein allgemeiner Hash, der kürzer ist als der Originaltext immer zufällige Kollisionen haben muss, ist eine deutlich schwächere Aussage. Google hat letzten Sommer gezeigt, dass sie zwei PDF mit derselben SHA1-Prüfsumme und Dateigröße erzeugen können, die sich visuell nur wenig unterscheiden (statt die Farbe zu ändern, könnte man z.B. auch den Text eines Vertrages ändern). Bei der Verwendung eines nicht gebrochenen Hashes soll ich mich ja tatsächlich relativ[1] sicher darauf verlassen können, dass aus gleichen Hashes gleicher Inhalt folgt.


  1. Falls jemand also zu einem Datei zufällig auf eine Kollision stößt, so ist diese einfach (unterschiedliche Dateigröße, entspricht nicht dem Originalformat, Inhalt ist zufällig) zu erkennen. ↩︎