Das Bitcoin Segregated Witness Upgrade (SegWit)

Was ist Segregated Witness (SegWit)?
Segregated Witness (oder SegWit) ist der Name für den Soft Fork, den Bitcoin am 24. August 2017 erhalten hat. Segregated Witness (SegWit) ist eine Methode, wie Transaktionen von sogenannten Witness-Nodes signiert werden. Ziel dieses Protokoll-Upgrades war es, Transaktionen besser vor Manipulation zu schützen und schnellere Transaktionen zu ermöglichen, indem die Blockkapazität erhöht wurde. Es sollte auch den Validierungsprozess beschleunigen, indem mehr Transaktionen in einem Block gespeichert werden.
Wichtigste Erkenntnisse
-
Segregated Witness (SegWit) ist ein Upgrade des Bitcoin-Netzwerks, das die Transaktionszeiten verringert und die Blockkapazität von Bitcoin erhöht hat.
-
Ziel von Segregated Witness ist es, unbefugte Transaktionen im Bitcoin-Netzwerk zu verhindern und dafür zu sorgen, dass mehr Transaktionen in einem Block gespeichert werden können.
-
SegWit sollte auch ein Problem mit der Größe der Blockchain lösen, wodurch die Transaktionsgeschwindigkeit von Bitcoin verlangsamt wurde.
-
Nicht alle waren früher mit dem Segregated Witness Upgrade einverstanden. Es hat lange gedauert, bis die meisten Leute dieses Update akzeptiert haben.
Warum war SegWit nötig?
Blockchain-Netzwerke wie Bitcoin bestehen aus Tausenden von Computern, die als Validatoren für die von Minern erstellten Blöcke fungieren. Diese Computer nennt man Nodes und sie behalten jeweils einen vollständigen Überblick über alle Transaktionen. Dieser Überblick wird Blockchain genannt.
Nachdem Bitcoin an Beliebtheit gewonnen hatte, bekam das Netzwerk einige Probleme. Eines davon war, dass es mehr Transaktionen gab, was zu längeren Wartezeiten für Nutzer und höheren Gebühren führte, da Nutzer mehr bezahlen mussten, um ihre Transaktionen zu priorisieren.
Bitcoin-Blöcke werden im Durchschnitt alle 10 Minuten erstellt und waren früher auf eine maximale Größe von 1 Megabyte (MB) begrenzt. Das ist natürlich nicht viel, und durch diese Begrenzung konnten nur wenige Transaktionen in einen Block aufgenommen werden. Das Ergebnis? Langsame Transaktionen und steigende Kosten.
Ohne die Implementierung von SegWit wäre die Validierung von Bitcoin-Transaktionen sehr langsam geworden. Besonders wenn die Beliebtheit von Bitcoin weiter gestiegen wäre.
Das SegWit-Protokoll teilt die Transaktion in zwei Teile auf. Die Signatur zum Entsperren (die sogenannten „Witness“-Daten) wird aus dem ursprünglichen Teil entfernt, bleibt aber als separate Struktur am Ende weiterhin Teil der Blockchain. Der ursprüngliche Teil enthält die Daten des Absenders und Empfängers, während die separate Struktur am Ende (die „Witness“-Struktur) Skripte und Signaturen enthält.
Durch diese Trennung der Daten entsteht mehr Platz und es können mehr Transaktionen zur Blockchain hinzugefügt werden. Das bedeutet am Ende also niedrigere Transaktionskosten.
Ziele von SegWit
Um die Ziele hinter der Implementierung von SegWit zu verstehen, ist es wichtig zu wissen, was im Hintergrund passiert, das es so nützlich macht.
Das Hauptproblem, das SegWit löst
Stell dir vor, du willst ein bisschen Bitcoin an deinen Freund schicken. Dafür brauchst du zwei Dinge: eine Public Address und einen Private Key. Die Public Address ist eigentlich die Adresse, an die du die Bitcoin schickst (das ist wie deine Kontonummer). Jeder kann deine Public Address sehen und den Inhalt davon anschauen, weil sie im Netzwerk offenliegt. Der Private Key ist wie dein Passwort, das beweist, dass du der Besitzer dieser Adresse bist.
Wenn du eine Transaktion machen willst, schickst du eine Anfrage ans Netzwerk mit deiner Public Address und dem Betrag. Die Miner prüfen dann diese Transaktion und verschlüsseln alle Infos (Hashing) und machen daraus so etwas wie einen digitalen Fingerabdruck (die Transaktions-ID).
Diese Transaktion kommt in eine Warteschlange, und sobald genug Transaktionen da sind, werden sie zu einem Block gebündelt. Der Block wird an die Nodes geschickt, und wenn die Mehrheit zustimmt, dass alles korrekt ist, wird er zur Blockchain hinzugefügt. So geht dein Bitcoin sicher von dir zu deinem Freund oder Kollegen.
Klingt vielleicht kompliziert, aber es ist wie ein Brief, der von Dutzenden Postämtern überprüft wird, damit er nicht verloren geht oder verändert wird.
Nur gab es ein Problem: Jede Transaktion brauchte eine digitale Signatur, und die hat viel Platz im Block eingenommen. Dadurch waren die Blöcke schneller voll, das Netzwerk wurde langsamer und die Kosten stiegen. SegWit hatte dafür eine clevere Lösung: Es hat die Signatur vom Rest der Transaktion getrennt, sodass mehr Transaktionen in einen Block passen und alles schneller und günstiger wird.
Wie SegWit das Problem gelöst hat
Als Bitcoin immer beliebter wurde, kam das Netzwerk ins Stocken. Es konnten nicht genug Transaktionen gleichzeitig verarbeitet werden, was alles langsamer und teurer machte. Das lag vor allem daran, dass jede Transaktion ziemlich viel Platz in einem Block beansprucht hat.
Ein Bitcoin-Entwickler, Pieter Wuille, hatte dann eine Idee: „Lass uns die Signaturen (die man braucht, um eine Transaktion zu beweisen) vom Rest der Transaktion trennen.“ Das haben sie dann Segregated Witness (oder SegWit) genannt. Die Idee: Trenn die Signatur (die Witness) von den anderen Daten und schaffe dadurch mehr Platz in jedem Block.
Bitcoin bekam dann auch eine neue Art von Limit: nicht mehr nur eine maximale Größe in Megabytes, sondern ein Limit beim Gewicht (4 Millionen WU, also Weight Units). Klingt vielleicht komisch, aber hier ist ein Beispiel.
Beispiel:
Stell dir vor, du packst einen Umzugskarton. Früher durfte der Karton nur 1 Meter hoch sein. Mit SegWit ist die Höhe nicht mehr so wichtig, sondern das Gewicht von dem, was du reinpackst. Schwere Sachen (wie die Witness-Daten) zählen jetzt weniger, sodass du mehr reinbekommst.
Blöcke sind nach SegWit also nicht wirklich 4 MB groß, aber sie können viel mehr Transaktionen enthalten. Am 25. Januar 2022 gab es zum Beispiel einen Block, der 1,56 MB groß war, aber beim Gewicht fast an der Grenze (3,993 Millionen WU). Andere Blöcke an dem Tag waren kleiner in MB, hatten aber dasselbe Gewicht. Das zeigt: Es geht nicht mehr nur um die Größe, sondern darum, wie „schwer“ die Daten sind.
Was ist Native SegWit?
Native SegWit ist einfach ein Upgrade von SegWit, das alles nochmal ein bisschen schneller, günstiger und besser macht. Statt den alten Bitcoin-Adressen, die mit einer „1“ (Legacy) oder „3“ (kompatibles SegWit) anfangen, benutzt Native SegWit Adressen, die mit „bc1“ beginnen.
Denk an den Unterschied zwischen einer alten E-Mail-Adresse und einer modernen cloudbasierten Adresse: beides funktioniert, aber die neue Version ist leichter, schneller und weniger fehleranfällig.
Warum sollte man Native SegWit benutzen?
-
Geringere Transaktionskosten
Weil die Daten effizienter gespeichert werden, zahlst du weniger Gebühren. -
Schneller verarbeitet
Miner können mehr Transaktionen in einen Block packen. Es gibt weniger Fehler (dank dem Bech32-Format). -
Zukunftssicher
Native SegWit ist der neue Standard für Bitcoin-Wallets und unterstützt zukünftige Upgrades wie Taproot besser.
Beispiel:
Stell dir vor, du schickst 0,01 BTC von einer alten Adresse (fängt mit einer 1 an), dann zahlst du etwa 2 Euro Gebühr. Wenn du dieselbe Transaktion von einer Native SegWit-Adresse (bc1) machst, zahlst du vielleicht nur 0,50 Euro.
Was sind die Vorteile von SegWit?
Die Krypto-Community diskutiert immer noch, ob SegWit gut oder schlecht ist, aber die bessere Sicherheit und die kürzeren Transaktionszeiten sind ein Vorteil für die Blockchain und die Miner und Nodes, die es nutzen. SegWit hat auch zur Implementierung von Taproot geführt, einem Bitcoin-Upgrade, das auf SegWit aufbaut und noch schnellere Validierung ermöglicht.
Vorteile von SegWit
-
Mehr Transaktionen pro Block
Weil die Witness-Daten separat gespeichert werden, gibt’s plötzlich mehr Platz im Block. Ergebnis? Es passen mehr Transaktionen rein und du musst nicht so lange warten. Win-win. -
Weniger Fehler und Bugs
Vor SegWit konnte jemand mit einer kleinen Änderung die Transaktions-ID ändern. Das hat manchmal bei dApps oder Exchanges Probleme gemacht. Mit SegWit ist dieses Problem (fast) ganz weg. -
Schnelle und günstige Zahlungen über Lightning
SegWit hat es möglich gemacht, Zahlungen außerhalb der Blockchain zu machen, z. B. über das Lightning Network. Diese Transaktionen sind viel schneller als im normalen Bitcoin-Netzwerk. -
Bessere Bitcoin-Adressen (Bech32)
SegWit hat neue Adressen eingeführt, die mit „bc1“ anfangen. Sie sind leichter, also zahlst du weniger Gebühren. Und weil sie einfacher sind, machst du weniger Fehler beim Kopieren. -
Bitcoin Taproot Upgrade
SegWit war der Vorreiter für eine der neuesten großen Veränderungen bei Bitcoin, nämlich Taproot. Das bringt bessere Privatsphäre und mehr Möglichkeiten für Smart Contracts.
Nachteile von SegWit
-
Langsame Adoption
Nicht alle Wallets und Exchanges haben SegWit automatisch genutzt. Es hat Jahre gedauert, bis die Mehrheit umgestiegen ist, und manche Nutzer finden das alte System immer noch besser. -
Technisch komplizierter
Entwickler müssen beim Bauen von Anwendungen sowohl SegWit- als auch Nicht-SegWit-Transaktionen berücksichtigen. Das ist manchmal nervig für Developer. -
Meinungsverschiedenheiten in der Community
Nicht alle waren Fans von SegWit. Manche Gruppen fanden es eine halbe Lösung und wollten lieber sofort größere Blöcke durch einen Hard Fork. Das hat dann zu einem Hard Fork geführt. Diesen Hard Fork kennen wir heute als Bitcoin Cash. -
Nicht sofort Wirkung
Die Vorteile von SegWit kamen erst richtig zum Vorschein, nachdem die Mehrheit umgestiegen war. Das Problem mit den vollen Blöcken blieb also noch eine Zeit lang bestehen.
Fazit
SegWit war für Bitcoin ein großer Schritt nach vorne (laut den meisten Leuten). Die Blockchain wurde effizienter, günstiger und zukunftssicherer. Dank des SegWit-Updates können wir jetzt das Lightning Network nutzen, und das Netzwerk ist besser auf Innovationen vorbereitet. Trotzdem war sich die Bitcoin-Community – wie so oft – nicht einig. Das SegWit-Update war ein viel diskutiertes Thema, bei dem nicht alle der gleichen Meinung waren.