Coinmerce App

Download

Segregated Witness


Mit dem Wachstum von Blockchain und Kryptowährungen wird im Laufe der Zeit auch deutlich, dass es Schwachstellen gibt. Das ist zum Beispiel bei Bitcoin der Fall, da wir derzeit feststellen, dass es tatsächlich überhaupt nicht sehr skalierbar ist. Aber auch in der Vergangenheit sind wir auf Probleme gestoßen, die inzwischen gelöst wurden. Eine solche Lösung kann mittels eines Soft Forks angewendet werden. Das ist auch bei Bitcoin passiert, als das Upgrade namens SegWit (Segregated Witness) auf der Blockchain implementiert wurde. In diesem Artikel erklären wir alles, was du über Segregated Witness wissen musst.

Was ist SegWit?


Segregated Witness (auch bekannt als SegWit) ist ein Upgrade des Bitcoin-Protokolls (ein Soft Fork), das die Struktur von Transaktionen verändert, indem es die Signaturdaten (wie z. B. den privaten Schlüssel) in eine separate Datenbank verschiebt. Der Hauptzweck davon ist, die Transaktionskapazität von Bitcoin zu erhöhen. Dabei macht es die Transaktionen außerdem weniger leicht manipulierbar.

Vom Alter her ist SegWit keine neue Idee mehr: Das Update wurde erstmals 2015 vorgeschlagen, bevor es im Dezember 2015 offiziell von Pieter Wuille und anderen Bitcoin -Core-Entwicklern veröffentlicht wurde. Aufgrund seiner umstrittenen Natur und der Ablehnung durch Miner wurde es jedoch erst viel später eingeführt. Erst 2017, im Rahmen des SegWit2X-Kompromisses, wurde der Vorschlag, der SegWit ermöglichte (BIP-91), genehmigt. Die Aktivierung von SegWit im Bitcoin-Netzwerk erfolgte schließlich am 24. August 2017 bei Block 481.824.

Die wichtigste Verbesserung, die SegWit bringt, ist die Tatsache, dass Transaktionen nicht mehr manipuliert werden können. Dadurch sorgt es auch dafür, dass Transaktionen plötzlich kleiner sind, sodass viel mehr Transaktionen in einen Block passen.

Wie funktioniert SegWit?


Wie du wahrscheinlich bereits weißt, hat jede Transaktion in Bitcoin eine Kennung (txid), die als Zeichenkette dargestellt wird. Zum Beispiel lautet die Kennung der ersten Transaktion zwischen Satoshi Nakamoto und Hal Finney:

f4184fc596403b9d638783cf57adfe4c75c605f6356fbc91338530e9831e9e16

Diese Kennung ist ein Fingerabdruck der Transaktion, der auch als Ergebnis der Anwendung einer Hash-Funktion auf diese Transaktion bezeichnet werden kann. Sie hängt von den in der Transaktion enthaltenen Elementen ab: Wenn eines davon geändert wird, ändert sich die Kennung vollständig.

In Bitcoin sind klassische Transaktionen verformbar (malleable). Das bedeutet, dass es möglich ist, ihre Kennung zu ändern, ohne sie ungültig zu machen. Wie ist das möglich? Es ist möglich, weil die Signaturen, die die Transaktion gültig machen, nicht alle Daten abdecken. Das liegt daran, dass die Transaktion zuerst ohne Signaturen erstellt wird, dann signiert wird und schließlich die Signaturen hinzugefügt werden.

Erhöhung der Transaktionskapazität durch SegWit


Neben der Behebung der Manipulierbarkeit von Transaktionen hat das SegWit-Update einen weiteren wichtigen Effekt: Es erhöht die Transaktionskapazität des Netzwerks und vermeidet dabei einen Hard Fork. Diese Erhöhung wird dadurch ermöglicht, dass die Signaturskripte außerhalb der traditionellen Blöcke platziert werden.

In SegWit wird eine neue Technik verwendet, um die Auswirkung von Transaktionen und Blöcken auf das Netzwerk zu messen: Gewicht. Anstatt sich auf die Größe einer Transaktion zu stützen, die in Bytes angegeben wird und die Menge der auf der Blockchain gespeicherten Daten repräsentiert, verwendet SegWit ein virtuelles Attribut namens Gewicht. Dieses wird in Weight Units (WU) ausgedrückt und definiert als:

Gewicht = 4 × Basisgröße Größe der Witness-Daten

Dieses Update ändert das 1-MB-Limit der Blockgröße auf ein 4-MWU-Limit. Das ist keine Vervierfachung der Netzwerkkapazität, obwohl der Block bis zu 4 MB Blockgröße zulässt. Das ist also ein Trick, der durch SegWit umgesetzt wird.

Bei vollständiger Implementierung von SegWit würde man mit einer Erhöhung der Transaktionskapazität des Netzwerks um 70–100 % rechnen. Das heißt, es handelt sich um SegWit-Blöcke mit einer Gesamtgröße von 1,7–2 MB, was im besten Fall 5–15 Transaktionen pro Sekunde ermöglichen würde.

Weitere Vorteile von SegWit


In Übereinstimmung mit BIP-143 wurde der Signaturalgorithmus für SegWit-Transaktionen verbessert. Einerseits vermeidet er redundante Hashes bei der Verifizierung einer Signatur. Andererseits bietet der Algorithmus, indem er die Eingabebeträge der Transaktion berücksichtigt, eine bessere Sicherheit als die Offline-Signatur, die von Hardware-Wallets wie dem Ledger Nano S verwendet wird.

SegWit ermöglicht außerdem eine Versionskontrolle der Skripte und macht dieses Update damit zu einem Werkzeug zur Verbesserung des Protokolls.

Da mehr Transaktionen verarbeitet werden können, sind die Transaktionskosten ebenfalls deutlich geringer. Und das ist natürlich ein großer Vorteil für Bitcoin-Nutzer, zum Beispiel. Sie können über SegWit mehr Transaktionen zu einem niedrigeren Preis durchführen.

Nachteile


Entgegen dem, was du vielleicht denkst, war SegWit für Bitcoin keineswegs eine kleine Änderung: Es war eine umfassende Umstrukturierung von Transaktionen, die ihre eigenen Komplikationen mit sich brachte. Auch wenn das Upgrade über einen Soft Fork erfolgte, bedeutet das nicht, dass es ein reibungsloser Prozess war. Sobald SegWit aktiviert wurde, wurden die Blöcke aller Miner, die sich nicht an die neuen Regeln hielten, vom Netzwerk abgelehnt: Das Upgrade war damit für alle Miner verpflichtend.

Dabei wurde SegWit nicht einstimmig von der Bitcoin-Community unterstützt. Befürworter der Blockchain-Skalierbarkeit, Miner und große Marktteilnehmer lehnten es im Allgemeinen ab. Und einige Community-Mitglieder drängten darauf, es am 1. August 2017 über einen „User Activated Soft Fork“ zu aktivieren. Das SegWit-Update kam nur im Kontext des durch SegWit2X geschaffenen Kompromisses zustande, einer Vereinbarung, die SegWit ermöglichen und gleichzeitig das Basis-Blockgrößenlimit auf 2 MB erhöhen wollte, sich letztlich jedoch nicht durchsetzte.

SegWit macht die Codebasis sehr komplex, indem es zum Beispiel eine neue Interpretation der Skripte mit den neuen Adressen verknüpft. Das ist problematisch, weil Bitcoin ein ökonomisches System ist, dessen Sicherheit von der Kontrolle durch eine große Anzahl von Menschen (Nodes) abhängt und dessen Design einfach sein muss.

SegWit verursacht außerdem eine „Validierungsniederlage“ für Nodes, die den alten Regeln folgen: Sie sehen die Signaturen nicht und validieren sie nicht, was die Qualität des Netzwerks verschlechtert und Nodes dazu zwingt, auf die neue Software zu aktualisieren.

Der letzte große Nachteil von SegWit ist, dass seine Einführung langsam und begrenzt ist. Da es sich um einen Soft Fork handelt, haben die Menschen die Wahl, SegWit zu nutzen oder nicht. Das wirkt sich jedoch direkt auf die Versprechen aus, die dieses Update macht. Derzeit stagniert die SegWit-Adoption bei etwa 50 % (April 2021), was bedeutet, dass nur 50 % der Nodes auf SegWit umgestellt haben.

Fazit


Nachdem wir nun erklärt haben, was SegWit ist, wie es funktioniert und welche Vorteile es gibt, ist es Zeit, zusammenzufassen, was du gerade gelernt hast. Es ist klar, dass SegWit ein Upgrade des Bitcoin-Protokolls ist, das eine Reihe von Verbesserungen bringt, über die wir in diesem Artikel bereits gesprochen haben. Insbesondere behebt es die Verformbarkeit von Transaktionen, die die Implementierung des Lightning-Netzwerks behindert hat, und erhöht die Kapazität des Netzwerks. Einer der größten Vorteile ist, dass mehr Transaktionen in einen Block passen, was auch die Transaktionskosten senkt. Das ist natürlich sehr vorteilhaft für Krypto -Trader, aber auch für Nodes der Bitcoin-Blockchain. Die Tatsache, dass es sich um einen Soft Fork handelt, macht SegWit mit älteren Versionen von Bitcoin kompatibel, aber SegWit ist bei weitem nicht perfekt. Daher ist noch lange nicht klar, wie sich das entwickeln wird.

Investieren ist mit Risiken verbunden. Kryptowährungen sind volatil, Sie könnten Ihre Investition verlieren.