Immer mehr Transaktionen sind im SegWit-Format. Die ersten Blöcke mit einer Größe von mehr als 1 MB wurden bereits erzeugt. Zwar ist die Rate an SegWit-Transaktionen mit 0,5 Prozent noch sehr gering. Doch die Wallets beginnen erst, die Bereitschaft für SegWit auszurollen. Mit Bitcoin Core kann jedoch schon jeder SegWit-Transaktionen bilden. Wir erklären, wie.
SegWit verspricht eine Erhöhung der Kapazität von Bitcoin um rund 100 Prozent – jedoch nur, wenn es auch benutzt wird. Nachdem SegWit am vergangenen Donnerstag offiziell aktiviert wurde, hält sich der Gewinn an Kapazität bis heute noch in sehr engen Grenzen. Allerdings gibt es klare Anzeichen dafür, dass SegWit bereits benutzt wird – und auch dazu beiträgt, die angespannte Situation am Transaktionsmarkt zu entspannen. Zumindest ein kleines bißchen.
Die beste Seite, um die Verbreitung von SegWit im Bitcoin-Netzwerk zu beobachten, dürfte CountSegwit sein. CountSegwit zählt den Anteil von SegWit-Transaktionen in den Bitcoin-Blöcken.
Heute, also etwa 4 Tage nach SegWit-Aktivierung, benutzen etwa 0,5 Prozent aller Transaktionen SegWit. Dies ist ein beinah verschwindender Anteil, durch den sich die Kapazität von Bitcoin noch überhaupt nicht erhöht. Dementsprechend hat sich auch der MemPool – die Gesamtheit der unbestätigten Transaktionen – bislang nicht weniger reduziert als an anderen Wochenenden.
Der MemPool in Kilobyte, gestaffelt nach der Höhe der Transaktionen. Quelle: Jo Hoes Mempool Visualisierung
Allerdings ragen aus dem 144-Blocks-Durchschnitt einige Blöcke mit einem bemerkenswert hohen SegWit-Anteil heraus: Allen voran Block 482.309 mit 4,4 Prozent SegWit-Transaktionen, gefolgt von den Blöcken 482.280 und 482.294 mit 1,5 bzw. 1,3 Prozent.
Darüber hinaus gibt es bereits den einen oder anderen Beweis, dass SegWit tatsächlich die Blocksize erhöhen kann: Der Block mit der Nummer 482.244 hat eine Blockgröße von 1.068 Kilobyte und überschreitet damit das bisherige Blocksize-Limit von 1 Megabyte. Verantwortlich hierfür ist vor allem eine Transaktion von Bitrefill, die mit mehr als 800 Outputs und einer Größe von 143 Kilobyte ernsthaft Signatur-Daten auslagert. Indem die digitalen Unterschriften nicht länger genuiner Teil der Blöcke sind, können die Blöcke größer als 1 MB werden, obwohl die Nicht-SegWit-Nodes weiterhin das Basis-Limit von 1 MB aufrecht halten.
Wenig Support in den Wallets
All dies ist freilich erst der Anfang. Man kann erst seit 4 Tagen SegWit benutzen, und noch kaum eine Wallet ist bereit dafür. Im Gegensatz zu einer blanken Blocksize-Erhöhung setzt SegWit den Gewinn an Kapazität nicht unmittelbar frei, sondern bedard der Migration von Outputs auf SegWit-Adressen.
Die vielleicht einzige Ausnahme unter den Wallets ist bisher die Hardware-Wallet Ledger. Einem Blogpost zufolge können die Ledger-User SegWit bereits benutzen. Dazu müssen sie eine SegWit-Adresse bilden und mit dieser Bitcoins empfangen. Anschließend können die dort gespeicherten Bitcoins per SegWit versendet werden. Der Wallet-Hersteller aus Paris empfiehlt die Migration zu SegWit-Adressen, da dies die Gebühren reduziert und die Kapazität für das gesamte Netzwerk erhöht.
Noch nicht ganz, aber fast so weit sind die Mitbewerber von Ledger aus Prag. Satoshi Labs, die mit Trezor die erste Hardware-Wallet überhaupt entwickelt haben, haben angekündigt, SegWit noch am heutigen Montag freizuschalten. Nachdem Trezor bereits SegWit für Litecoin in die GUI integriert hat, sollte dieses Update für Trezor-Kunden relativ reibungslos vonstatten gehen.
Auch Electrum dürfte bald nachziehen. Die laut unserer Umfrage beliebteste Wallet überhaupt hat per Twitter annonciert, dass man ab dem nächsten Release bereit für SegWit sein wird. Wann dies geschehen wird, ist derzeit allerdings noch nicht zu sagen.
So bildet man mit Bitcoin Core eine SegWit-Transaktion
Die Entwickler von SegWit selbst – die Core Devs – haben angekündigt, ab der Version 0.15.1 SegWit direkt in die Qt-Wallet und die RPC-API zu bringen. Um bisher SegWit mit Core zu verwenden, muss man „selbst Hand anlegen“. Dies ist aber nicht allzu kompliziert:
Zunächst muss man eine herkömmliche Adresse bilden und diese mit der Konsole in eine SegWit-Adresse umwandeln. Dazu muss man in der Konsole „addwitnessaddress“ eingeben und dahinter die Adresse kopieren. Schon hat man eine neue SegWit-Adresse gebaut. Mit dieser kann man nun Bitcoins empfangen und auch als SegWit-Transaktion ausgeben. Gerade wenn man kleine Bitcoin-Zahlungen empfängt, etwa aus dem Cloud-Mining oder von Faucets, sollte man dies unbedingt machen.
Ab 0.15.1 wird Core standardmäßig SegWit-Adressen verwenden, um Bitcoins zu empfangen. Dies dürfte die Verbreitung von SegWit noch einmal gehörig anschubsen.
