Was ist Segregated Witness (SegWit)?

Von Kraken Learn team
11 Min.
26. Nov. 2024

Der Einsteiger-Leitfaden für Bitcoin SegWit 💭

Segregated Witness (SegWit) war ein Upgrade des Bitcoin-Quellcodes am 1. August 2017.

Trotz der Verbesserungen, die viele in der Bitcoin-Blockchain sahen, stieß SegWit auf starken Widerstand, der die Gemeinschaft spaltete. 

Im Kern des Problems stand ein konkurrierendes Interesse zwischen der Rentabilität der Miner und den Netzwerkentwicklern, die Bitcoin günstiger und schneller nutzbar machen wollten.

Die Spannungen führten zu einem Riss innerhalb der Gemeinschaft, der in der ersten benutzeraktivierten Soft Fork des Netzwerks und einem feindlichen Split gipfelte. Die Spaltung brachte eine Reihe neuer Bitcoin-Gabelprojekte hervor, darunter Bitcoin Cash.

Bis heute bleibt SegWit eines der umstrittensten Ereignisse in der Geschichte von Bitcoin. Es hat sich jedoch auch als eines der wichtigsten Updates für die langfristige Lebensfähigkeit des Protokolls erwiesen. 

Jedes Jahr feiern viele in der Bitcoin-Gemeinschaft den 1. August als „Bitcoin-Unabhängigkeitstag“. Dieses Ereignis markiert den Zeitpunkt, an dem der Wille des Volkes gegen die zentralisierten Interessen etablierter Bitcoin-Mining-Unternehmen triumphierte.

Lass uns jedes dieser Ereignisse, wie sie geschahen, erkunden und die Geschichte hinter SegWit aufschlüsseln.

BTC icon
$69.709.00
+0,26 %
24 Std.
btc

Bitcoin vor SegWit ⏮️

Vor der Aktivierung von SegWit war die Blockkapazität von Bitcoin über viele Jahre hinweg unverändert geblieben. Die Blockkapazität bezieht sich auf die maximale Anzahl von Transaktionen, die innerhalb eines bestimmten Blocks aufgezeichnet werden können.

Als Bitcoin 2009 gestartet wurde, hatte der/die Schöpfer Satoshi Nakamoto keine Parameter festgelegt, wie groß Bitcoin-Blöcke sein könnten.

Im Jahr 2010 fügte Nakamoto jedoch heimlich ein Limit von 1 Megabyte (MB) für die Blockgröße hinzu, ohne die Zustimmung anderer Bitcoin-Beitragszahler.

Viele glaubten, dass Nakamoto das Limit eingeführt hatte, um zukünftige verteilte Denial-of-Service (DDoS)-Angriffe zu verhindern, die das Netzwerk beeinträchtigen könnten.

Diese feste Obergrenze für die Blockkapazität hatte den unerwünschten Effekt, das Potenzial von Bitcoin auf verschiedene Weise zu skalieren, einzuschränken.

Geringe Durchsatzrate und langsame Transaktionszeiten

Nur eine begrenzte Anzahl von Transaktionen kann in den vergleichsweise kleinen 1MB-Block passen, den Bitcoin jetzt übernommen hat. Diese kleine Kapazität bedeutete, dass das Bitcoin-Netzwerk nur etwa 2–3 Bitcoin (BTC)-Transaktionen pro Sekunde verarbeiten konnte – ein weit hergeholter Unterschied zu traditionellen digitalen Zahlungsnetzwerken, die Zehntausende von Transaktionen pro Sekunde verarbeiten können.

Darüber hinaus muss ein Block von Transaktionen, um als Teil des Bitcoin-Mining Prozesses gültig zu sein, sechs Bestätigungen erhalten. Mit anderen Worten, es müssen sechs neue Blöcke zur Blockchain hinzugefügt werden, nachdem der betreffende Block hinzugefügt wurde, bevor er finalisiert wird. Bei einer durchschnittlichen Blockzeit von zehn Minuten bedeutet dies, dass Bitcoin-Blockbestätigungen etwa eine Stunde dauern.

Zu der Zeit, als nur eine Handvoll "Cypherpunk"-Kryptographen von Bitcoin wusste, war es nicht unbedingt ein großes Problem. Aber wenn das Bitcoin-Netzwerk ein globales "Peer-to-Peer-Elektronikzahlungssystem" werden sollte, wie es Satoshi im Bitcoin-Whitepaper visionierte, mussten sich die Dinge ändern.

Hohe Gebühren

Der geringe Durchsatz von Bitcoin, der durch seine kleine Blockkapazität eingeschränkt ist, bedeutete, dass die Gebühren im Vergleich zu heute ebenfalls viel höher waren.

Hier ist eine einfache Möglichkeit, dieses Problem zu verstehen. Stellen Sie sich vor, Sie stehen draußen in einer Menschenmenge, nachdem Sie eine Theateraufführung gesehen haben. Jeder aus dem Theater möchte gleichzeitig ein Taxi nach Hause nehmen. Wenn viele Taxis in der Nähe sind, sollte es für jeden einfach sein, nach Hause zu kommen. Aber wenn es nur eine Handvoll Taxis gibt, könnten die Leute versuchen, den Taxifahrern einen höheren Preis zu zahlen, um den Fahrer zu motivieren, sie zuerst nach Hause zu bringen. Je nach Nachfrage könnten die Preise für Taxis erheblich über dem normalen Tarif steigen.

Die Gebühren von Bitcoin funktionieren nach denselben Prinzipien von Angebot und Nachfrage. Wenn viele Menschen möchten, dass ihre Transaktionen zur gleichen Zeit bearbeitet werden, könnten einige bereit sein, mehr Gebühren zu zahlen, um ihre Transaktion schneller von den Minern bearbeiten zu lassen. In Zeiten hoher Nutzung des Bitcoin-Netzwerks kann Überlastung zu einem Wettbewerb unter den Nutzern führen, was dazu führen kann, dass die Transaktionsgebühren stark ansteigen.

Transaktionsmalleability

Eine weitere inhärente Nuance, wie Bitcoin-Blöcke funktionierten, war als Transaktionsveränderlichkeit bekannt. Vor SegWit konnten die Leute die ID einer Transaktion ändern, bevor sie genügend Bestätigungen in der Blockchain erhielt.

Die Informationen zu einer bestimmten Transaktion zu nehmen und durch eine Hash-Funktion zu laufen, erzeugt eine Transaktions-ID. Sie können mehr über Hash-Funktionen in unserem Artikel Wie nutzen Kryptowährungen Kryptographie? erfahren.

Aber zur Vereinfachung können Sie sich diese Transaktions-IDs als digitale Fingerabdrücke vorstellen, die verwendet werden, um Transaktionen auf der Blockchain zu identifizieren und zu referenzieren.

Die Änderung der Transaktions-ID erzeugt einen völlig neuen Hash, der manchmal die Software von Blockchain-Clients verwirren könnte. Alle Knoten führen Client-Software aus, um mit der Blockchain zu interagieren und wichtige Rollen wie die Datenverifizierung zu übernehmen.

Dieser Malleability-Bug im Code von Bitcoin öffnete die Tür für böswillige Angriffe. Eines der berüchtigsten Beispiele für einen Angriff auf die Transaktionsmalleability war der Hack der Mt. Gox-Börse im Jahr 2014 – bekannt dafür, der größte Bitcoin-Hack in der Geschichte zu sein.

Experten berichteten, dass ein Hacker oder eine Gruppe von Hackern die Bitcoin-Brieftasche der Mt. Gox-Börse leergeräumt hat. Sie taten dies teilweise, indem sie die Transaktions-ID ihrer Abhebungen änderten. 

Der Angriff auf die Transaktionsmalleability ließ es so erscheinen, als ob Abhebungen auf der Blockchain nicht bestätigt wurden, obwohl sie es tatsächlich waren.

Diese Schwachstelle, zusammen mit anderen Angriffsvektoren, ermöglichte es dem Hacker, über 840.000 BTC von der Börse abzuzweigen.

Welche Verbesserungen brachte SegWit? ⚙️

Der Bitcoin-Beitragende Pieter Wuille präsentierte das SegWit-Upgrade erstmals bei einer Bitcoin-Veranstaltung in Hongkong im Jahr 2015.

Seine Lösung war in dreifacher Hinsicht innovativ. SegWit verbesserte die Skalierbarkeit von Bitcoin, beseitigte die Malleability und ermöglichte es den Knoten, die neue Transaktionsstruktur zu übernehmen. Am besten ist, dass dies ohne Hard-Forking des Netzwerks implementiert werden konnte.

Getrennte digitale Signatur- und Transaktionsinformationen

Wuilles Vorschlag erhöhte die Blockkapazität von Bitcoin, indem er die "Zeugen"-Daten von einem Block "segregierte" und sie in die Coinbase-Transaktion verschob. Coinbase-Transaktionen sind die allerersten Transaktionen innerhalb jedes neuen Bitcoin-Blocks. Die Coinbase-Transaktion ist dafür verantwortlich, neu geprägte Kryptowährung als Belohnung für den Bitcoin-Mining-Prozess in Umlauf zu bringen.

Miner, die im Wettbewerb um den kryptografiebasierten Proof-of-Work von Bitcoin erfolgreich sind, verdienen diese neu geprägten Token als "Blockbelohnungen."

Zeugendaten, auch bekannt als ScriptSig oder Unlocking Script, enthalten digitale Signatur- und öffentliche Schlüsselinformationen, die benötigt werden, um die übertragenen Bitcoins zu entsperren. Das SegWit-Upgrade führte ein separates "Witness-Feld" für den ScriptSig-Teil einer Transaktion ein.

Durch die separate Verarbeitung von digitalen Signaturinformationen vom Transaktionsinputfeld gab es mehr Platz für Transaktionen, um in jeden Block zu passen.

Mehr Transaktionen pro Block bedeuten höhere Transaktionsdurchsatzkapazitäten. Statt 2-3 Transaktionen pro Sekunde kann Bitcoin zwischen 7-10 SegWit-Transaktionen pro Sekunde verarbeiten. Eine erhöhte Kapazität bedeutet auch niedrigere Gebühren, da die Bitcoin-Blockchain ein höheres Transaktionsvolumen bewältigen kann.

Trotz der Trennung ist es wichtig zu beachten, dass Knoten sowohl die Transaktionsdaten als auch die Witness-Daten on-chain verarbeiten. Es werden keine Sidechains oder Layer-2-Protokolle verwendet.

Blockgewicht

Vor SegWit maßen Miner Bitcoin-Blöcke nach Größe (in Bytes). Dieses System funktionierte gut, als Blöcke sowohl Witness- als auch Transaktionsdaten enthielten, stieß jedoch auf Probleme, als sie getrennt wurden.

Um dies zu überwinden, führte das Upgrade eine Metrik namens Blockgewicht ein, um die Größe der Blöcke zu verwalten.

Mit diesem Konzept besteht jeder 1-Megabyte-Block aus 4.000.000 Gewichtseinheiten (WU). Jeder Transaktion wird ein Gewicht basierend auf der folgenden Formel zugewiesen:

Basis-Transaktionsgröße in Bytes (ohne Witness-Daten) * 3 + Gesamte Transaktionsgröße in Bytes.

Durch das Entfernen der Witness-Feld-Daten aus der Berechnung haben SegWit-Transaktionen ein viel niedrigeres Gewicht. Andererseits enthält eine Non-SegWit-Transaktion weiterhin Witness-Daten. Das bedeutet, dass Non-SegWit-Transaktionen immer 4-mal mehr wiegen als SegWit-Transaktionen.

Dieses Konzept erhöht theoretisch die Größe eines Bitcoin-Blocks von 1MB auf 4MB, wenn ein Block fast ausschließlich aus Witness-Daten besteht. Dies ist jedoch in der Praxis nicht möglich.

Der Hauptvorteil des gewichteten Systems besteht darin, dass es Miner anreizt, Blöcke zu verarbeiten, die hauptsächlich SegWit-Transaktionen enthalten. Vorausgesetzt, SegWit-Transaktionen haben die gleichen Gebühren wie Legacy-Blöcke, kann ein Miner viel mehr SegWit-Transaktionen pro Block verarbeiten. Je mehr Transaktionen sie pro Block verarbeiten, desto mehr Gebühren verdienen sie.

Eine Win-Win-Situation für beide Parteien. Oder so würde man denken.

Keine Probleme mehr mit Transaktionsmalleabilität

Unter der SegWit-Struktur enthält die gehashte Transaktions-ID nur die Transaktionsinformationen, nicht die Informationen des Witness-Feldes.

Diese Änderung entfernt die veränderbare Komponente einer Bitcoin-Transaktion, die zuvor Angriffe auf die Malleabilität ermöglichte.

Infolgedessen wurden sekundäre Skalierungslösungen wie das Bitcoin Lightning Network möglich.

 

Warum war SegWit umstritten? 🤔

Viele in der Entwicklergemeinschaft waren der Meinung, dass SegWit nicht weit genug ging, um die Skalierungsprobleme von Bitcoin anzugehen.

Die Hauptargumente gegen die Aktivierung von SegWit sind:

  • Die erhöhte Durchsatzrate von Bitcoin von 7-10 Transaktionen pro Sekunde ist immer noch bei weitem nicht hoch genug für ein dezentrales, globales Zahlungssystem.
  • Die Gebühren würden relativ hoch bleiben, was Dinge wie Mikrotransaktionen finanziell untragbar macht.
  • Miner können weiterhin Legacy-Transaktionsblöcke verarbeiten, was bedeutet, dass Malleabilität weiterhin eine Bedrohung darstellt.
  • Es wurde später entdeckt, dass SegWit den ASICBOOST-Mechanismus von Bitmain negieren würde; ein Exploit, der verwendet wurde, um die Effizienz von Mining-Rigs erheblich zu steigern.

Etwa ein Jahr nach Wuille’s Vorschlag hatten er und andere Bitcoin Core-Entwickler, einschließlich Eric Lombrozo, den Code vorbereitet, um im kommenden Bitcoin Core 0.13.1-Update live zu gehen. Der einzige verbleibende Schritt zur Aktivierung von SegWit war, dass Miner begannen, neue SegWit-Blöcke zu verarbeiten. 

Um seine Implementierung zu festigen, müssten über 95 % aller Bitcoin-Miner innerhalb der ersten zwei Wochen nach seiner Einleitung Unterstützung für SegWit zeigen – ein großes Hindernis angesichts der Umstände zu dieser Zeit.

Benutzeraktivierter Soft Fork

Es versteht sich von selbst, dass große Mining-Firmen wie Bitmain mit den vorgeschlagenen Änderungen immer noch unzufrieden waren und sich weigerten, die Aktivierung von SegWit zu unterstützen.

Anfang 2017 erhob ein pseudonymer Entwickler namens „Shaolinfry“ die Möglichkeit, dass Bitcoin-Knoten einen Soft Fork in einem online bitcoin-dev Beitrag durchsetzen. 

Ein benutzeraktivierter Soft Fork war im Bitcoin-Netzwerk zuvor nie versucht worden, würde es Entwicklern jedoch ermöglichen, SegWit mit etwa 51 % Unterstützung von Minern durchzusetzen. Diejenigen, die sich weigerten, neue Blöcke zu unterstützen, riskierten, dass ihre Blöcke von Knoten abgelehnt wurden. Die Lösung war nicht ohne Risiken. Wenn SegWit nicht genügend Unterstützung von Minern erhielt, würde das Ergebnis unweigerlich zu einer Kettenaufspaltung führen.

Die Gegner von SegWit schlugen stattdessen ein anderes SegWit 2X Hard Fork-Upgrade vor. Eines, das SegWit und die Blockgröße von Bitcoin auf 2MB erhöhen würde.

Im Gegensatz zum vorherigen Upgrade wäre SegWit 2X nicht abwärtskompatibel mit früheren Versionen des Bitcoin-Clients. Diese Änderungen bedeuteten, dass Knoten ihre Software aktualisieren mussten, um weiterhin im Netzwerk zu operieren.

SegWit & das New Yorker Abkommen 🗽

Die führenden Unternehmen der Branche trafen sich auf der Consensus 2017 und unterzeichneten gemeinsam ein Memorandum mit dem Titel "das New Yorker Abkommen". Dieses Dokument legte Pläne fest, damit SegWit im Sommer und die Blockgröße von Bitcoin bis November auf 2MB erhöht wird.

Vor November entwarf Shaolinfry zwei Bitcoin Improvement Proposals (BIPs); BIP148 und BIP149. Das erste stellte eine klare und feste Lösung dar; Unterstützung für SegWit-Blöcke signalisieren oder Knoten werden Ihre Blöcke ablehnen. Das letztere bot einen längeren Zeitraum für Miner, um sich einzuarbeiten, und setzte eine Aktivierungsfrist für Juli des folgenden Jahres fest.

Als das Datum näher rückte, schlug der Bitmain-Garantietechniker James Hillard ein neues BIP vor; BIP91. Seine Lösung zielte darauf ab, sowohl SegWit 2X als auch BIP148 miteinander kompatibel zu machen. Warum eine Kettenaufspaltung über zwei konkurrierende SegWit-Updates riskieren, wenn Sie sie beide kompatibel machen können?

Am 1. August sicherte ausreichende Mining-Unterstützung die Aktivierung von SegWit. Die zweite Phase des New Yorker Abkommens erhielt jedoch nicht die gleiche Unterstützung.

Das Versäumnis, die Blockgröße von Bitcoin auf 2 MB zu erhöhen, führte zur Bildung von Bitcoin Cash (BCH) – einem neuen geforkten Projekt der Bitcoin-Blockchain.

$467.48
+3,17 %
24 Std.
bch

Die Bedeutung des Bitcoin-Unabhängigkeitstags

Die Einführung von SegWit und die Entscheidung der Gemeinschaft, die Erhöhung der Blockgröße abzulehnen, stellten einen Meilenstein für die breitere Bitcoin-Gemeinschaft dar.

SegWit zeigte die Bedeutung des Konsenses bei Änderungen an der Bitcoin-Blockchain sowie das Ausmaß der Dezentralisierung der Macht, die Bitcoin bot.

Keine einzelne Person war in der Lage, das Netzwerk zu übernehmen und ihren Vorschlag durchzusetzen.

Stattdessen debattierte die Gemeinschaft, iterierte und setzte den langen Prozess fort, um als kollektive Gruppe einen Konsens zu erreichen – nicht unter der Leitung einer einzelnen Person.

Kaufe jetzt Bitcoin

Jetzt, da du alles über SegWit gelernt hast, bist du bereit, deine Krypto-Reise fortzusetzen und Bitcoin zu kaufen?

Schau dir unseren Leitfaden im Kraken Learn Center für weitere Informationen zu So kaufst du Bitcoin (BTC) und registriere dich noch heute für ein Kraken Konto an.