Transaktions-Malleabilität: Das Problem, das SegWit löste
Transaktions-Malleabilität war eine kritische Schwachstelle in Blockchain-Protokollen, die es ermöglichte, die eindeutige Kennung einer Transaktion vor der Bestätigung zu ändern. Segregated Witness (SegWit) wurde eingeführt, um dieses
Struktur, Lesbarkeit, interne Verlinkung und SEO-Metadaten wurden automatisiert geprüft. Der Artikel wird fortlaufend aktualisiert und dient der Bildung, nicht als Finanzberatung.
Definition
Transaktions-Malleabilität bezeichnet eine Schwachstelle innerhalb bestimmter Blockchain-Protokolle, insbesondere bei Bitcoin vor der Implementierung von Segregated Witness (SegWit). Sie beschreibt ein Szenario, in dem die eindeutige Kennung einer Transaktion, bekannt als Transaktions-ID (txid), von einem Dritten geändert werden konnte, bevor die Transaktion bestätigt und der Blockchain hinzugefügt wurde. Diese Änderung war möglich, ohne die Transaktion selbst ungültig zu machen oder ihre grundlegende Absicht, wie den gesendeten Betrag oder den Empfänger, zu verändern. Das Kernproblem resultierte aus der Art und Weise, wie die txid berechnet wurde, die die digitale Signatur der Transaktion einschloss. Da bestimmte Aspekte der Signatur modifiziert werden konnten, ohne ihre kryptografische Gültigkeit zu brechen, würde der resultierende Hash (txid) sich ändern, obwohl die zugrunde liegende Wertübertragung dieselbe blieb. Dies schuf erhebliche Herausforderungen für Systeme, die sich auf die Unveränderlichkeit von txids für die Verfolgung und Bestätigung von Transaktionen verließen.
Transaktions-Malleabilität: Die Fähigkeit, dass die eindeutige Kennung (txid) einer Transaktion von einem Dritten geändert werden kann, bevor sie in der Blockchain bestätigt wird, ohne die Kernabsicht der Transaktion oder die kryptografische Signatur ungültig zu machen.
Kernaussage
Transaktions-Malleabilität stellte eine grundlegende Herausforderung für die Integrität und Zuverlässigkeit von Blockchain-Transaktionen dar, insbesondere für Anwendungen, die auf der Basisschicht aufbauten und von festen Transaktions-Identifikatoren abhingen. Obwohl sie in den meisten Szenarien keinen direkten Diebstahl von Geldern aus einer Wallet ermöglichte, führte sie eine kritische Mehrdeutigkeit bezüglich der Transaktionsbestätigung und -verfolgung ein. Die primäre Lösung, Segregated Witness (SegWit), begegnete diesem Problem, indem sie die Speicherung von Transaktionsdaten und die Berechnung der txid neu strukturierte. Durch die Trennung der digitalen Signatur (Witness-Daten) von den Haupttransaktionsdaten, die zur Berechnung der txid verwendet werden, machte SegWit Transaktions-Identifikatoren effektiv unveränderlich und ebnete so den Weg für robustere Off-Chain-Skalierungslösungen wie das Lightning Network. Diese architektonische Änderung war entscheidend für die langfristige Skalierbarkeit und Sicherheit von Bitcoin und anderen Kryptowährungen, die ähnliche Prinzipien anwenden.
Mechanik
Vor SegWit wurde die txid einer Bitcoin-Transaktion durch Hashing der gesamten Transaktionsdaten berechnet, welche Eingaben, Ausgaben und, entscheidend, die digitalen Signaturen (Skripte) umfassten, die das Ausgeben von Geldern autorisierten. Das Problem entstand, weil die digitale Signatur selbst, obwohl kryptografisch gültig, auf mehrere leicht unterschiedliche Weisen dargestellt werden konnte, ohne ihre Bedeutung oder Gültigkeit zu ändern. Zum Beispiel konnten dem Signatur-Skript zusätzliche Daten hinzugefügt werden (z.B. eine Dummy-Push-Operation) oder bestimmte Kodierungsparameter variiert werden, während immer noch eine gültige Signatur erzeugt wurde, die vom Netzwerk akzeptiert würde. Wenn diese geringfügigen, nicht-essentiellen Modifikationen an der Signatur vorgenommen wurden, änderte sich der Hash der gesamten Transaktion, was zu einer neuen, gültigen txid führte. Diese Schwachstelle wurde oft durch die Änderung der DER-Kodierung (Distinguished Encoding Rules) der Signatur ausgenutzt, was geringfügige Änderungen in der Byte-Darstellung ermöglichte, ohne die Signatur selbst ungültig zu machen.
Stellen Sie sich ein Szenario vor, in dem Alice Bitcoin an Bob sendet. Alice erstellt eine Transaktion, signiert sie und sendet sie an das Netzwerk. Bevor diese Transaktion von Minern bestätigt und in einen Block aufgenommen wird, könnte ein böswilliger Akteur (oder sogar Bob selbst) die Transaktion abfangen, ihre Signatur auf eine malleable Weise subtil ändern und diese modifizierte Version erneut senden. Nun existieren zwei Versionen derselben logischen Transaktion im Netzwerk, jede mit einer anderen txid, aber beide versuchen, dieselben Eingaben auszugeben. Es entsteht ein Wettlauf: Welche Version zuerst von den Minern aufgegriffen und in einen Block aufgenommen wird, ist diejenige, die bestätigt wird. Wenn die modifizierte Version bestätigt wird, wird Alices ursprüngliche txid ungültig, obwohl ihre Gelder erfolgreich übertragen wurden. Dies führte zu erheblicher Verwirrung und operativen Herausforderungen, insbesondere für Börsen oder Dienste, die Transaktionen anhand ihrer ursprünglichen txid verfolgten.
SegWit änderte diesen Mechanismus grundlegend. Es führte das Konzept der Segregation (Trennung) der Witness-Daten (hauptsächlich die digitalen Signaturen) vom Rest der Transaktionsdaten ein. Mit SegWit wird die txid berechnet, indem nur die Kerndaten der Transaktion (Eingaben, Ausgaben und andere Nicht-Witness-Felder) gehasht werden, ohne die Witness-Daten. Die Witness-Daten werden dann separat in einem anderen Teil der Blockstruktur festgeschrieben. Dies bedeutet, dass selbst wenn die Witness-Daten manipuliert würden, dies die txid nicht ändern würde, da die txid nicht mehr davon abhängt. SegWit-Transaktionen haben effektiv zwei Identifikatoren: die traditionelle txid (die jetzt unveränderlich ist) und eine wtxid (Witness Transaction ID), die die gesamte Transaktion einschließlich der Witness-Daten hasht. Diese Trennung stellt sicher, dass der primäre Identifikator, der zur Verfolgung und Referenzierung von Transaktionen verwendet wird, fest und unveränderlich bleibt und somit eine robuste Grundlage für zukünftige Entwicklungen bietet.
Trading-Relevanz
Obwohl die Transaktions-Malleabilität einem Benutzer in einem typischen Sinne nicht direkt ermöglichte, Gelder aus der Wallet eines anderen zu stehlen, waren ihre Auswirkungen auf das breitere Kryptowährungs-Ökosystem und damit indirekt auf den Handel erheblich. Für Kryptowährungsbörsen, die ein enormes Transaktionsvolumen abwickeln und stark auf eine genaue Transaktionsverfolgung angewiesen sind, stellte die Malleabilität ein erhebliches operatives Problem dar. Eine Börse könnte Gelder an einen Benutzer senden, die ursprüngliche txid aufzeichnen und dann feststellen, dass eine andere txid für dieselbe Transaktion in der Blockchain bestätigt wurde. Diese Diskrepanz konnte zu Verzögerungen bei der Gutschrift von Benutzerkonten, manuellen Abgleichprozessen und potenziellen Streitigkeiten führen, was alles die Liquidität und das Vertrauen in die Handelsplattform beeinträchtigt. Der berüchtigte Zusammenbruch von Mt. Gox im Jahr 2014 wurde teilweise auf Probleme zurückgeführt, die durch Transaktions-Malleabilität verschärft wurden, was ihr Potenzial zur Destabilisierung großer Handelsplätze unterstreicht.
Darüber hinaus behinderte die Existenz der Transaktions-Malleabilität die Entwicklung und den Einsatz von Off-Chain-Skalierungslösungen wie dem Lightning Network erheblich. Diese Lösungen basieren auf der Erstellung von Ketten unbestätigter Transaktionen, die schließlich auf der Haupt-Blockchain abgewickelt werden. Damit solche Systeme sicher funktionieren können, müssen die Transaktions-IDs dieser vorab signierten, unbestätigten Transaktionen absolut unveränderlich sein. Könnte ein böswilliger Akteur die txid einer Transaktion innerhalb eines Zahlungskanals ändern, könnte dies nachfolgende Transaktionen in der Kette ungültig machen oder sogar eine Form von „gefälschter“ Transaktion ermöglichen, was zu Geldverlusten oder erzwungenen Kanal-Schließungen führen könnte. SegWits Behebung der Malleabilität war daher eine Voraussetzung für die sichere und weit verbreitete Einführung dieser fortschrittlichen Skalierungstechnologien, die für die langfristige Lebensfähigkeit von Bitcoin als globales Zahlungssystem unerlässlich sind.
Risiken
Über die operativen Herausforderungen für Börsen hinaus birgt die Transaktions-Malleabilität weitere Risiken für die Integrität und Funktionalität des Bitcoin-Netzwerks und seines Ökosystems. Ein erhebliches Risiko war das Potenzial für Denial-of-Service-Angriffe oder Netzwerküberlastung. Durch wiederholtes Manipulieren und erneutes Senden von Transaktionen konnte ein Angreifer das Netzwerk mit mehreren Versionen derselben logischen Transaktion überfluten, was Bandbreite und Rechenleistung für Knoten und Miner verbrauchte. Obwohl dies nicht direkt zu Diebstahl führte, konnte es die Netzwerkleistung und das Benutzererlebnis beeinträchtigen.
Ein weiteres kritisches Risiko war die Auswirkung auf komplexe Smart Contracts und Multi-Signatur-Schemata. Viele fortgeschrittene Bitcoin-Skripte und -Protokolle basieren auf der Fähigkeit, zukünftige Transaktionen anhand ihrer erwarteten txid zu referenzieren. Wenn diese txids geändert werden könnten, würde dies die Logik solcher Verträge brechen und sie unsicher oder unmöglich zuverlässig auszuführen machen. Diese Einschränkung behinderte Innovationen und die Entwicklung anspruchsvollerer Anwendungen auf der Bitcoin-Blockchain. SegWits Lösung der Malleabilität war daher nicht nur eine Fehlerbehebung, sondern ein grundlegender Wegbereiter für die Weiterentwicklung der Bitcoin-Fähigkeiten über einfache Wertübertragungen hinaus.
Geschichte und Beispiele
Das Problem der Transaktions-Malleabilität wurde der Bitcoin-Community bereits 2011 bekannt, erlangte aber Anfang 2014 weitreichende Bekanntheit. Im Februar 2014 gab Mt. Gox, einst die größte Bitcoin-Börse der Welt, bekannt, dass sie Ziel eines Exploits im Zusammenhang mit Transaktions-Malleabilität geworden war. Die Börse behauptete, dass Angreifer in der Lage waren, Transaktions-IDs zu ändern, was es Mt. Gox erschwerte, Abhebungen zu verfolgen, und zu Diskrepanzen in ihrer internen Buchhaltung führte. Diese Verwirrung war ein beitragender Faktor zum späteren Zusammenbruch der Börse, der zu Verlusten von Hunderten Millionen Dollar in Bitcoin für ihre Nutzer führte.
Kurz nach dem Mt. Gox-Vorfall wurde bekannt, dass auch Silk Road 2.0, ein Darknet-Marktplatz, etwa 2,7 Millionen US-Dollar in Bitcoin durch einen unbekannten Hacker verloren hatte, der die Transaktions-Malleabilität ausnutzte. In diesem Fall nutzte der Angreifer die Malleabilität wahrscheinlich, um den Marktplatz dazu zu bringen, Gelder mehrfach freizugeben oder sein Zahlungsabwicklungssystem zu verwirren. Diese hochkarätigen Vorfälle unterstrichen die Schwere der Schwachstelle und spornten die Bitcoin-Entwicklergemeinschaft an, eine dauerhafte Lösung zu finden, die sich schließlich in Form von Segregated Witness manifestierte.
Häufige Missverständnisse
Ein häufiges Missverständnis bezüglich der Transaktions-Malleabilität ist, dass sie Angreifern ermöglichte, Gelder direkt aus der Wallet eines Benutzers zu stehlen. Dies ist im Allgemeinen falsch. Der Malleabilitäts-Exploit ermöglichte es einem Angreifer nicht, den Empfänger einer Transaktion oder den gesendeten Betrag zu ändern, noch kompromittierte er die privaten Schlüssel, die die Gelder eines Benutzers sicherten. Die Gelder würden letztendlich immer noch am beabsichtigten Ziel ankommen. Das Kernproblem war die Änderung des Transaktions-Identifikators (txid), was erhebliche operative Probleme für Dienste verursachte, die auf die Verfolgung dieser IDs angewiesen waren.
Ein weiteres verbreitetes Missverständnis ist, dass Malleabilität eine Form von „Doppelausgabe“ im traditionellen Sinne war. Obwohl sie in bestimmten Szenarien genutzt werden konnte, um eine Form der Doppelausgabe zu erleichtern (z.B. wenn ein Händler Waren auf der Grundlage einer unbestätigten Transaktion freigab und sich dann die txid änderte, wodurch die ursprüngliche Referenz ungültig wurde und der Absender behaupten konnte, die Transaktion sei nie bestätigt worden), war sie kein direkter Mechanismus, um dieselben Münzen zweimal auszugeben. Stattdessen schuf sie Mehrdeutigkeit und Verwirrung, was es schwierig machte, festzustellen, welche Version einer Transaktion gültig und bestätigt war. SegWits Korrektur stellte sicher, dass, sobald eine Transaktion gesendet wurde, ihr eindeutiger Identifikator feststand, wodurch diese Mehrdeutigkeit beseitigt wurde.
Zusammenfassung
Transaktions-Malleabilität stellte eine bedeutende, wenn auch subtile, Schwachstelle im ursprünglichen Bitcoin-Protokoll dar, die es ermöglichte, den eindeutigen Identifikator einer Transaktion (txid) vor der Bestätigung zu ändern. Dieses Problem resultierte aus der Einbeziehung veränderlicher digitaler Signaturen in die txid-Berechnung. Obwohl sie keinen direkten Diebstahl aus Wallets ermöglichte, führte sie zu erheblichen operativen Herausforderungen für Kryptowährungsbörsen, trug zu großen Vorfällen wie dem Zusammenbruch von Mt. Gox bei und behinderte die Entwicklung entscheidender Off-Chain-Skalierungslösungen wie dem Lightning Network erheblich. Die Einführung von Segregated Witness (SegWit) bot eine robuste und elegante Lösung, indem sie die Witness-Daten (Signaturen) von den Kerntransaktionsdaten trennte, die zur Berechnung der txid verwendet werden. Diese grundlegende Änderung gewährleistete die Unveränderlichkeit der Transaktions-Identifikatoren und verbesserte dadurch die Sicherheit, Zuverlässigkeit und das Skalierungspotenzial von Bitcoin und seinem Ökosystem. Die Implementierung von SegWit war ein entscheidender Moment, der den Weg für eine reifere und funktionalere Blockchain-Infrastruktur ebnete.
OKX EU · Offizieller Biturai-Partner
OKX EU
Entdecke das aktuelle Angebot von OKX EU über den offiziellen Biturai-Partnerlink. Produkte und Verfügbarkeit können je Land abweichen.
OKX EU ansehenPartnerlink · Biturai kann bei Nutzung eine Vergütung erhalten · keine Anlageberatung
