Verständnis sha-1-Kollision Schwäche
Laut verschiedenen Quellen, die Angriffe der Suche nach sha-1 Kollisionen wurden verbessert, um 2^52 Operationen:
http://www.secureworks.com/research/blog/index.php/2009/6/3/sha-1-collision-attacks-now-252/
Was ich wissen möchte ist, die Auswirkungen dieser Entdeckungen auf Systemen, die nicht unter Angriff ist. Das heißt, wenn ich hash-zufällige Daten, was sind die statistischen Chancen, eine Kollision? Mit anderen Worten, hat die aktuelle Untersuchung zeigen, dass eine brute-force-Angriff Geburtstag hat eine höhere chance auf das finden von Kollisionen, die ursprünglich vorgeschlagen?
Einige writeups, wie oben beschrieben, sagen, dass die Erteilung einer SHA-1-Kollision über brute-force würde erfordern 2^80 Operationen. Die meisten Quellen sagen, dass 2^80 ist eine theoretische Zahl (ich vermute, weil keine hash-Funktion ist wirklich perfekt verteilt, auch über seine verdauen Raum).
So sind die angekündigten sha1 Kollision Schwächen in der grundlegenden hash-Verteilung? Oder sind die erhöhten Wahrscheinlichkeit der Kollision nur das Ergebnis der geführten mathematische Angriffe?
Merke ich, dass es am Ende nur ein Spiel der Quoten, und dass Ihr eine verschwindend kleine änderung, dass die ersten und zweiten Nachrichten wird in Folge einer Kollision. Ich merke auch, dass sogar 2^52 ist eine wirklich große Zahl, aber ich möchte dennoch verstehen, die Auswirkungen für ein system, das nicht unter Beschuss. Also bitte nicht Antworten mit "don' T worry about it".
- wahrscheinlich migriert werden sollen, in die Kryptographie.SE
Du musst angemeldet sein, um einen Kommentar abzugeben.
Das Ergebnis bekannt gegeben in deinem link ist ein Angriff, eine Folge des vorsichtigen, algorithmisch-Schritte gewählt, dass Kollisionen erzeugen mit größerer Wahrscheinlichkeit als würde ein zufälliger Angriff. Es ist nicht eine Schwäche in der hash-Funktion ist die Verteilung. Gut, ok, es ist, aber nicht von der Art, macht eine zufällige Angriff, wahrscheinlich auf die Bestellung von 2^52 um erfolgreich zu sein.
Wenn niemand versucht, zu erzeugen Kollisionen in Ihren hash-Ausgänge, das Ergebnis nicht beeinflussen.
Sowie gute hash-Funktionen sind resistent gegen 3 verschiedene Arten von Angriffen (wie der Artikel sagt).
Den wichtigsten Widerstand in einem praktischen Sinn, ist 2. pre-image resistance. Grundsätzlich bedeutet dies, dass Sie in einem gegebenen Nachricht M1 und Hash(M1)=H1 ist, ist es schwer zu finden ein M2, so dass Hash(M2)=H1.
Wenn jemand einen Weg gefunden, um das effizient tun würde, wäre das schlecht. Weiter, ein preimage-Angriff ist nicht anfällig für den Geburtstag paradox, da die Nachricht M1 ist fest für uns.
Dies ist nicht ein pre-image oder second pre-image-Angriff, lediglich eine Kollision finden, angreifen.
Um Ihre Frage zu beantworten, Ohne einen brute-force-Angriff NICHT haben eine höhere chance auf das finden von Kollisionen. Was dies bedeutet ist, dass die naive brute-force-Methode, kombiniert mit dem Forscher Methoden führen bei der Suche nach Kollisionen nach 2^52. Ein standard-brute-force-Angriff dauert noch 2^80.
Die wichtigste Frage ist, "Können die Angreifer ändern sowohl m1 und m2-Nachrichten"?. Wenn dem so ist, benötigt der Angreifer zu finden, m1, m2, so dass hash(m1) = hash(m2). Dies ist der Geburtstag der Angriff und die Komplexität deutlich reduziert --- wird zu Wurzel. Wenn die hash-Ausgabe 128 bit (MD5), der Komplexität 2^64, auch innerhalb der Reichweite mit der aktuellen Rechenleistung.
Das übliche Beispiel ist, daß der Verkäufer fragt seine Sekretärin zu geben Nachricht "ich werde es verkaufen für 10 Millionen Dollar". Der intrigante Sekretär erstellt 2 Dokumente, der sagt "ich werde es verkaufen für 10 Millionen Dollar" und ein anderer, der sagt "ich werde es verkaufen für x Millionen Dollar", wobei x ist viel weniger, als 10, ändert sowohl Nachrichten durch das hinzufügen von Leerzeichen, Großschreibung Wörter etc, ändert x, bis hash(m1) = hash(m2). Nun, der Sekretär zeigt die korrekte Nachricht m1 an den Verkäufer, und er signiert es mit seinem privaten Schlüssel, wodurch hash h. Die Sekretärin schaltet die Meldung und sendet (m2 h). Nur der Verkäufer hat Zugang zu seinem privaten Schlüssel und so kann er nicht leugnen und sagen, dass er nicht die Nachricht signieren.
SHA1, die Ausgänge 160 bits, die Geburtstag Angriff reduziert die Komplexität von 2^80. Dies sollte sicher für 30 Jahre oder mehr. Neue Staatliche Vorschriften, 4G, 3gpp-Spezifikationen beginnen, benötigen SHA256.
Aber wenn du in deinen use-case, der Angreifer kann nicht ändern, sowohl die Nachrichten (preimage-oder second preimage-Szenarien), dann für SHA1 sich die Komplexität von 2^160. Sollten sicher sein für die Ewigkeit, es sei denn, nicht-brute-force-Angriff entdeckt wird.