Hash-Kollision
Eine Hash-Kollision liegt vor, wenn zwei verschiedene Eingaben denselben Hash-Digest erzeugen.
Definition
Eine Hash-Kollision entsteht, wenn zwei unterschiedliche Eingaben unter derselben Hashfunktion denselben Digest erzeugen. Kollisionen müssen bei jedem Hash fester Größe existieren, weil es mehr mögliche Eingaben als Ausgaben gibt; ein sicherer Hash macht sie aber praktisch unauffindbar.
Kollisionsresistenz ist wichtig, wenn ein Digest Inhalte identifiziert, Dokumente signiert, Dateien vergleicht oder Integrität gegen Angreifer schützt.
Kollisionsresistenz
Für einen idealen n-Bit-Hash kostet eine generische Kollisionssuche wegen der Geburtstagsgrenze etwa 2^(n/2) Arbeit. Das unterscheidet sich von Urbildresistenz, bei der eine Eingabe für einen bestimmten Digest gesucht wird und die generischen Kosten etwa 2^n betragen.
MD5 und SHA-1 haben praktische Kollisionsangriffe und sollten nicht für neue sicherheitssensitive Designs genutzt werden. SHA-256, SHA-512, SHA-3 und BLAKE2 sind moderne Optionen, wenn sie in der passenden Konstruktion verwendet werden.
Was eine Kollision nicht bedeutet
Ein Kollisionsangriff entschlüsselt keinen Hash und verrät nicht die ursprüngliche Nachricht. Er zeigt, dass ein Angreifer zwei verschiedene Eingaben mit demselben Digest erzeugen kann, was Signaturen, Zertifikate oder Inhaltskennungen brechen kann, die auf Eindeutigkeit vertrauen.
Die Sicherheit von HMAC hängt nicht in derselben Weise allein von Kollisionsresistenz ab wie einfache Signaturen über einen Digest, dennoch sollten Protokolle aktuelle Hashfunktionen wählen und ihre Spezifikationen befolgen.
Nein. Kollisionen sind mathematisch unvermeidbar, aber ein gut entworfener Hash macht nützliche Kollisionen praktisch unauffindbar.
Nein. Beim Umkehren sucht man eine Eingabe für einen gegebenen Digest; bei einer Kollision sucht man zwei verschiedene Eingaben mit demselben Digest.
Für beide gibt es praktische Kollisionsangriffe, sodass Angreifer in kollisionskritischen Szenarien verschiedene Eingaben mit demselben Digest erzeugen können.