Es gab mehrere Billionen Entschlüsselungsschlüsseloptionen zwischen einer Person und ihrer Kryptowährung.
Im Oktober erhielt Michael Stay eine seltsame Nachricht von LinkedIn. Ein Fremder verlor den Zugriff auf die privaten Schlüssel seiner Kryptowährung und bat Stay um Hilfe, um wieder Zugriff auf seine 300.000 US-Dollar zu erhalten.
Es war nicht verwunderlich, dass "Dude", wie Stay ihn nennt, einen ehemaligen Sicherheitsspezialisten bei Google gefunden hatte. Vor neunzehn Jahren veröffentlichte Stay ein Papier, in dem die Technologie zum Knacken verschlüsselter ZIP-Dateien beschrieben wird. Der Typ kaufte im Januar 2016 Bitcoins im Wert von etwa 10.000 USD, lange vor dem Boom der Kryptowährung. Er verschlüsselte die privaten Schlüssel in einer ZIP-Datei und vergaß das Passwort. Und jetzt hoffte er, dass Stay ihm helfen könnte, es zu knacken.
Auf der jüngsten Defcon-Konferenz beschrieb Stay seine epischen Versuche, genau das zu tun.
ZIP ist ein beliebtes Dateiformat für die verlustfreie Komprimierung großer Dateien - genau wie eine kleine Bandabdeckung Ihren Schlafsack aufnehmen kann. Viele Implementierungen des ZIP-Formats weisen bekanntermaßen Sicherheitsprobleme auf - bevor sich im vergangenen Sommer sogar ein US-Senator an das National Institute of Standards and Technology wandte, um das Problem zu untersuchen. "Wenn wir dieses Passwort erfolgreich finden, werde ich Ihnen danken", schrieb Dude am Ende mit einem Smiley. Nach der ersten Analyse schätzte Stay, dass das Brechen der Datei 100.000 US-Dollar kosten würde. Der Typ nahm das Angebot an - schließlich sollte der Gewinn groß sein.
„Ich hatte lange keinen Spaß mehr. Jeden Morgen ging ich glücklich zur Arbeit und kämpfte mit diesem Problem “, sagt Stay, derzeit CTO des Blockchain-Technologieunternehmens Pyrofex. "Die ZIP-Verschlüsselung wurde vor Jahrzehnten von einem Laien-Kryptographen entwickelt. Es ist also bemerkenswert, dass sie so lange anhielt." Wenn jedoch einige ZIP-Dateien mit vorgefertigten Dienstprogrammen geknackt werden können, hatte Dude kein Glück.
Insbesondere deshalb haben sie so viel nach der Arbeit gefragt. Neue Generationen von ZIP-Programmen verwenden den seriösen und zuverlässigen AES-Kryptostandard, und ältere Versionen, von denen Dude eine verwendete, sind Zip 2.0 Legacy, das häufig gehackt werden kann. Der Grad der Komplexität hängt jedoch von seiner Implementierung ab. "Es ist eine Sache zu sagen, dass der Standard gebrochen ist, aber tatsächlich zu brechen ist eine ganz andere Frage", sagt der Kryptograf Matthew Green von der Johns Hopkins University.
Nur eine Handvoll Hinweise konnten helfen, bei seinem Ansatz zu bleiben. Dude hatte immer noch einen Laptop, mit dem er die verschlüsselte ZIP-Datei erstellte. Dies bestätigte seinen Besitz der Bitcoins und gab Stay Informationen darüber, welches ZIP-Programm und welche Version für die Verschlüsselung verwendet wurde. Er kannte auch die Zeit für die Dateierstellung, die die Info-ZIP-Software für ihr kryptografisches Schema verwendet. Stay konnte die große Anzahl möglicher Passwörter und Verschlüsselungsschlüssel auf mehrere Billionen reduzieren.
Um einen Angriff dieser Größenordnung auszuführen, musste Cloud-Verarbeitungsleistung für die Grafikverarbeitung gemietet werden. Wenden Sie sich an Nash Foster, den Direktor von Pyrofex, um den Kryptoanalysecode zu schreiben und ihn auf einer Allzweck-GPU von Nvidia Tesla auszuführen. Als er sich eingehender mit dem Projekt befasste, konnte Stay den Angriff verfeinern und die Laufzeit des Programms reduzieren, die erforderlich war, um ein Ergebnis zu erzielen.
"Anfangs gingen wir davon aus, dass wir das Programm für ein paar Monate entwickeln und dann für ein paar weitere Monate funktionieren würden", sagte Foster gegenüber dem Wired-Magazin. „Infolgedessen konnte Mike die Kryptoanalyse effizienter durchführen, und wir haben mehr Zeit für die Entwicklung des Angriffs aufgewendet. Die Arbeit des Programms dauerte nur eine Woche. Dies sparte Dude viel Geld bei der Miete der Infrastruktur. Vor zehn Jahren wäre dies ohne die Montage spezieller Geräte nicht möglich gewesen, und die Kosten des Projekts hätten wahrscheinlich die Kosten seiner Bitcoins überschritten. "
Die Frage, ob dieses Schleifen von Zahlen auf der GPU funktionieren würde, war jedoch noch offen. Nach Monaten des Bastelns an dieser Aufgabe war Stan endlich bereit, es zu versuchen. Der Typ gab Stay and Foster nicht die gesamte Datei - er vertraute ihnen wahrscheinlich nicht und glaubte, dass sie seine Kryptowährung stehlen könnten, indem sie die Schlüssel knacken. Aufgrund der Art und Weise, wie er die ZIP-Verschlüsselung implementierte, konnte er Stay and Foster nur verschlüsselte Header - Informationsaufzeichnungen über den Inhalt der Datei - zur Verfügung stellen, ohne den Hauptinhalt zu übertragen. Bis Februar, vier Monate nach der ersten LinkedIn-Nachricht, hatten sie ein Programm vorbereitet und einen Angriff gestartet.
Sie arbeitete 10 Tage und scheiterte. Stay schrieb später, er sei "mit gebrochenem Herzen".
"Vorher sind wir auf verschiedene Fehler gestoßen, aber bei allen Tests, die ich auf meinem Laptop ausgeführt habe, hat alles gut funktioniert", sagt er. "Wenn es ein Fehler war, muss sie sehr gerissen gewesen sein, und ich hatte Angst, dass wir lange brauchen würden, um sie zu finden." Die Tatsache, dass im Februar die Kosten für Bitcoins und damit auch die Kosten für die Datei zu sinken begannen, half auch nichts. Der Typ war sehr besorgt.
Stay ging das gesamte Programm durch und machte sich Sorgen über falsche Annahmen oder versteckte Fehler. Aber dann kam er auf eine neue Idee, welcher Zufallsstartwert mit dem in ihrem Programm verwendeten Zufallszahlengenerator beginnen sollte. Der Typ sah sich auch die Testdaten an und bemerkte einen Fehler, der auftreten würde, wenn die GPU beim ersten Durchgang nicht das richtige Passwort verarbeitete. Stay und Foster haben den Fehler behoben. Nach diesen beiden Programmkorrekturen waren sie bereit, von vorne zu beginnen.
"Knall! Und ein paar Bitcoins sind aus der Akte herausgekommen “, sagt Foster. "Wir atmeten erleichtert auf", fügt Stay hinzu.
Infolgedessen betrugen die Kosten für die Anmietung der Infrastruktur 6.000 bis 7.000 US-Dollar anstelle der ursprünglich geschätzten 100.000 US-Dollar, sagt Foster. Der Typ hat viermal weniger bezahlt als erwartet.
"Der Deal war großartig für ihn", sagt Foster. - Solche Projekte sind selten. Wenn er eine etwas andere Situation hätte und eine neuere Version von ZIP verwenden würde, wäre dies unmöglich. Aber in diesem speziellen Fall hätten wir etwas tun können. "
Laut Stay haben sich nach der Veröffentlichung der technischen Beschreibung des Projekts im April mehrere Personen an ihn gewandt, um Passwörter für ihre Bitcoin-Geldbörsen wiederherzustellen. Leider ist dies ein häufiges Problem. Sogar die Redaktion von Wired ist darauf gestoßen. Der ZIP-Angriff hat jedoch nichts mit Kryptowährungs-Wallets zu tun - sie können manchmal hackbare Fehler aufweisen, sind jedoch mit einer starken modernen Verschlüsselung ausgestattet.
Die Verbreitung von ZIP lässt jedoch darauf schließen, dass die Forschung von Stay and Foster weitreichende Auswirkungen hat.
"In Bezug auf die Kryptografie ist dies ein sehr cooles Projekt", sagt Green. - Dies ist einer der alten Angriffe auf ein veraltetes Schema, und niemand hätte gedacht, dass es immer noch relevant ist. Aber überraschenderweise ist all dieser Müll immer noch allgegenwärtig, daher ist dieses Thema sehr relevant. Und die Tatsache, dass am Ende viel Geld auf sie gewartet hat, ist im Allgemeinen cool. "
Wir hätten alle so viel Glück.