Bitcoin Lightning-Netzwerk: Neuer Angriffsvektor aufgedeckt

Die Skalierungsdebatte um Bitcoin ist nach wie vor ein heißes Pflaster. Hat sie doch dafür gesorgt, dass das Protokoll mehrfach geforkt wurde. BTC, die aktuell wertvollste Kryptowährung mit der meisten akkumulierten Rechenleistung möchte an der Blockgröße nichts ändern und das […]

Lukas Mantinger

Lukas Mantinger

June 30, 2020 10:13 PM

Bitcoin Lightning-Netzwerk: Neuer Angriffsvektor aufgedeckt

Die Skalierungsdebatte um Bitcoin ist nach wie vor ein heißes Pflaster. Hat sie doch dafür gesorgt, dass das Protokoll mehrfach geforkt wurde. BTC, die aktuell wertvollste Kryptowährung mit der meisten akkumulierten Rechenleistung möchte an der Blockgröße nichts ändern und das Skalierungsproblem mit der Zweitschichtlösung “Lightning” angehen.

Jona Harris und Aviv Zohar, zwei Blockchainforscher, haben am Sonntag in einem Blogpost eine neue Angriffsmöglichkeit auf das Lightningnetzwerk vorgestellt. Die Autoren nennen den Angriff Flood & Loot (Überschwemmung und Plünderung).

So funktioniert Floot & Loot

Falls dir die Funktionsweise des Lightning-Netzwerkes nicht geläufig ist, empfiehlt es sich zuerst diesen Artikel zu lesen. Besonders der Punkt Lightning Routing ist für das Verständnis des Angriffs von Bedeutung.

Der Angreifer kontrolliert den Senderknoten und den Zielknoten. Wie vom Protokoll vorgesehen werden via HTLCs (Hash Time Locked Contracts) eine oder mehrere Routen zum Zielknoten aufgebaut. Opfer sind die Knoten, die direkt mit dem Senderknoten Kanäle bilden.

Nun zieht der Zielknoten den Betrag aus dem Kanal mit dem zu ihm verbundenen Knoten und gibt dabei zwangsläufig das Geheimnis frei. Dieser zieht dann mithilfe des Geheimnisses den Betrag aus dem Kanal zum vorherigen Knoten usw. Wenn dann die letzten Knoten, die Opfer, den Betrag vom Sender holen und die Transaktion auflösen möchten, verweigert dieser die Kooperation und ignoriert die Anfragen einfach.

Die einzige Möglichkeit der Opfer nun an die Bitcoin zu kommen, ist den Kanal zu schließen, indem sie eine Transaktion auf der Bitcoin-Blockchain durchführen. Dafür hat das Opfer nur eine begrenzte Zeit, den die HTLCs haben ein Zeitschloss (gemessen in Blöcken). Dieses dient zur Sicherheit, dass falls das Geheimnis nicht bereitgestellt werden kann (Transaktion abgebrochen etc.), der Sender seine BTC wieder zurückholen kann.

Dies kann der Angreifer ausnutzen. Zugute kommt ihm dabei, dass er die Transaktionsgebühren bestimmen kann, falls er den Kanal eröffnet hat. Sollte das Opfer den Kanal schließen wollen, kann er die Transaktion mit seinen Transaktionen ersetzen (Replace-by-Fee / Ersetzen durch Gebühr).

Wenn der Angreifer nun mehrere Kanäle angreift und überall dieselbe Blockhöhe als Zeitfenster einstellt, werden einige Opfer ihre Schließungstransaktion nicht rechtzeitig bestätigt bekommen und der Angreifer ist berechtigt, den Kanal zu seinen Gunsten zu schließen. Nun hat das Opfer seine Bitcoins weitergegeben, konnte sie aber nicht vom Sender einholen. Dieser hat den Betrag über den Empfängerknoten abgegriffen.

Eine Simulation in einem privaten Netzwerk hat gezeigt, dass der Angriff ziemlich erfolgreich ist. Der Erfolg hängt dabei von der Anzahl der Gleichzeitig angegriffenen Kanäle und vom Platz in den Blöcken ab. Haben weniger Transaktionen Platz, verlieren viele Opfer die Möglichkeit, dass ihre wichtige Transaktion zur Schließung des Kanals rechtzeitig bestätigt wird.

Ist das nun das Ende von Lightning?

Nein, die Nutzer können, wenn sie gewisse Regeln befolgen Angreifern das Leben wesentlich schwerer machen. Sie können z. B. die Anzahl der gleichzeitig offenen HTLCs limitieren. Zudem können sie verlangen, dass das Zeitfenster lange genug geöffnet ist bzw. früh genug reagieren und den Kanal rechtzeitig schließen.

Trotzdem hat der einst vielversprechende Ansatz von Lightning neben dem beschriebenen Problem einige schwere Hürden zu nehmen. Beispielsweise das Routen von Transaktionen über mehrere Knoten. Je größter der Betrag ist und über je mehr Knoten er geht, desto geringer ist die Wahrscheinlichkeit, dass er durchkommt. Alle Kanäle (Verbindung zwischen zwei Knoten) müssen nämlich den entsprechenden Betrag richtig konfiguriert (Senderseite) vorliegen haben.

So ist im Kampf der Skalierungslösungen für Bitcoin (BTC mit Lightning/BCH und BSV mit Blockgrößen) noch lange nicht das letzte Wort gesprochen.

Lukas Mantinger
Artikel Von

Lukas Mantinger

Lukas ist Journalist und Fachmann im Blockchainbereich. Er befasst sich seit vielen Jahren mit dem Thema, verfasst täglich Berichte und Reportagen. Er ist immer auf dem Laufenden und vor allem Experte, wenn es um technische Fragen geht.

Mehr Artikel auf Cryptoticker

Alle anzeigen

Regelmäßige Updates zu Web3, NFTs, Bitcoin & Preisprognosen.

Bleibe auf dem Laufenden mit CryptoTicker.