Zum Inhalt springen
buybitcoinsmart

Glossar / Protokoll und Upgrades

Taproot

Auch bekannt als BIP341.

Was ist Taproot?
Taproot ist die Soft Fork aus dem Jahr 2021, die Bitcoin die Schnorr-Signaturen und einen neuen Ausgabetyp brachte, bei dem der kooperative Ausgabepfad mit einer gewöhnlichen Einzelschlüssel-Zahlung identisch aussieht.

Spezifiziert im BIP-341.

Drei Spezifikationen wurden gemeinsam veröffentlicht: BIP-340 für Schnorr-Signaturen, BIP-341 für den Output-Typ und BIP-342 für die angepasste Script-Sprache. Die Aktivierung erfolgte bei Block 709.632 am 14. November 2021, vier Jahre nach dem vorherigen Upgrade. Der praktische Effekt ist, dass komplizierte Konstruktionen, Multisig-Vaults, Treuhandkonstrukte, Channel-Schließungen, sich so abwickeln können, dass sie wie die Zahlung von jemand anderem aussehen.

Wie es funktioniert

Das Design beginnt mit einer Beobachtung darüber, wie Verträge tatsächlich enden: Fast alle enden einvernehmlich.

Ein Taproot-Output legt zwei Dinge zugleich in einem einzigen 32-Byte-Wert fest. Das eine ist ein öffentlicher Schlüssel, den die kooperierenden Parteien halten. Das andere ist ein Merkle-Baum, dessen Blätter alternative Skripte sind, die Ausweichmöglichkeiten, die greifen, wenn die Kooperation scheitert. Der veröffentlichte Schlüssel ist der kooperative Schlüssel, angepasst um einen Hash seiner selbst und der Wurzel dieses Baums, was bedeutet, dass der Output jede Ausweichmöglichkeit festschreibt, ohne zu verraten, dass es welche gibt.

Das Ausgeben nimmt dann einen von zwei Pfaden. Der Schlüsselpfad erzeugt eine einzige Signatur und veröffentlicht nichts über den Baum, sodass die Transaktion nicht von der Zahlung einer einzelnen Person zu unterscheiden ist. Der Skriptpfad offenbart genau ein Blatt plus die Geschwister-Hashes, die nötig sind, um zu belegen, dass es zur festgeschriebenen Wurzel gehört, und jeder andere Zweig bleibt dauerhaft geheim. Ein Vault mit einem Quorum von zwei von drei, einem zeitverzögerten Wiederherstellungsschlüssel und einer Notfallklausel gibt nur die Klausel preis, die verwendet wurde.

BIP-342 passte die Script-Sprache für diese Blätter an. OP_CHECKMULTISIG ist innerhalb eines Taproot-Blattes nicht verfügbar, und OP_CHECKSIGADD ersetzt es, indem es erfolgreiche Signaturen auf dem Stack zählt, statt einen Stapel auf einmal zu verbrauchen, was Schwellenwertprüfungen ohne die alte Umständlichkeit schreiben lässt. Die Obergrenze von 10.000 Byte für die Skriptgröße und das Limit von 201 Opcodes sind weg, ersetzt durch ein Budget für Signaturoperationen, das mit der Größe des Witness skaliert. Unbekannte Typen öffentlicher Schlüssel und unbekannte Blattversionen sind als gültig definiert, was Raum für das nächste Upgrade lässt, ohne ein weiteres Adressformat.

Da Taproot die Witness-Version 1 belegt, verwenden seine Adressen die bech32m-Prüfsumme aus BIP-350 statt der ursprünglichen bech32. Deshalb kann Software bc1q akzeptieren und bc1p trotzdem ablehnen.

Warum das wichtig ist, wenn Sie Bitcoin kaufen

Das Privatsphäre-Argument ist das, das auf fast alle zutrifft, auch auf Menschen, die nie ein Skript schreiben werden.

Jede frühere Art, Bitcoin zu schützen, machte sich selbst bekannt. Eine Einzahlung mit 2-von-3-Multisig war On-Chain als Einzahlung mit 2-von-3-Multisig lesbar, was Firmen für Blockchain-Analyse, und jedem, der bei ihnen Daten kaufte, verriet, dass die Adresse jemandem gehörte, der genug hielt, um sich die Mühe zu machen. Eine kooperative Taproot-Ausgabe aus derselben Konstruktion veröffentlicht eine Signatur gegen einen Schlüssel. Die Sicherheit ist unverändert und das Signal ist weg.

Die Kosten bewegen sich in dieselbe Richtung. Ein Taproot-Input über den Schlüsselpfad ist der günstigste Input-Typ auf Bitcoin, und der Abstand wächst, je komplizierter die Konstruktion wird, weil die Ausweichzweige, die Sie nie nutzen, nichts kosten. Für jeden, der die Art von Nachlass- oder Multisig-Konstruktion aufbaut, die unsere Hardware-Wallet-Bewertungen beschreiben, ändert das die Rechnung, wie viele Schlüssel es wert sind, gehalten zu werden.

Die Reibung ist real und es lohnt sich, sie einzuplanen. Manche Börsen lehnen bc1p als Auszahlungsziel weiterhin ab, und ältere Hardware-Wallet-Firmware leitet Taproot-Adressen möglicherweise gar nicht ab. Der Ausweg ist unspektakulär: Empfangen Sie an eine bc1q-Adresse aus derselben Seed-Phrase und wechseln Sie zu Taproot, wenn Ihr gesamtes Setup es unterstützt. Durch Warten geht nichts verloren, da beide Adresstypen aus einer Sicherung stammen.

Eine ehrliche Anmerkung zu den Nebenwirkungen. Die günstigen Witness-Daten von Taproot sind es, was Inscriptions wirtschaftlich gemacht hat, und die daraus entstehende Nachfrage trieb die Gebührensätze auf Werte, die gewöhnliche Zahlungen seit Jahren nicht gesehen hatten. Das war eine Folge des Rabatts und kein Ziel des Designs, und es ist berechtigt, es ihm anzulasten.

Speedy Trial, der Kompromiss, der Taproot aktivierte

Der Code war Anfang 2021 unumstritten, und die Aktivierungsmethode hätte ihn trotzdem fast zu Fall gebracht.

Der Streit drehte sich um BIP-8 und sein Flag lockinontimeout. Ein Lager wollte LOT auf true gesetzt haben, was die Aktivierung beim Timeout erzwingt, ob Miner signalisieren oder nicht, nach dem Grundsatz, dass 2017 gezeigt hatte, dass Miner unbegrenzt blockieren konnten. Das andere wollte false, nach dem Grundsatz, dass eine erzwungene Aktivierung mit schwacher Unterstützung die Spaltung riskiert, die sie zu vermeiden versucht. Keine Seite bewegte sich monatelang.

Speedy Trial beendete die Blockade, indem es die Frage kleiner machte. Es behielt die Zählung der Versionsbits aus BIP-9 bei, senkte die Schwelle auf 1.815 von 2.016 Blöcken, öffnete ein Fenster von etwa drei Monaten und legte eine feste Mindestaktivierungshöhe von 709.632 fest, sodass Lock-in und Durchsetzung durch eine lange, vorhersehbare Lücke getrennt waren. Signalisierten die Miner, fand die Soft Fork an einem bekannten Datum statt. Taten sie es nicht, lief der Versuch schnell ab und die härtere Diskussion konnte fortgesetzt werden, ohne dass etwas verloren war.

Der Code wurde in Bitcoin Core 0.21.1 am 1. Mai 2021 veröffentlicht. Die Miner überschritten die Schwelle in der Difficulty-Periode, die am 12. Juni 2021 endete, was dem Netzwerk fünf Monate Vorlauf gab, bevor sich die Regeln änderten. Es bleibt die einzige Aktivierungsmethode, die Bitcoin verwendet hat und die vor allem dafür entworfen wurde, kostengünstig zu scheitern.

Taproot vs. Schnorr-Signaturen

Taproot ist das Paket; Schnorr-Signaturen sind ein Teil davon. BIP-340 definiert ein Signaturschema, das in der Kryptografie seit den 1980er Jahren existiert und grundsätzlich überall verwendet werden könnte, während BIP-341 definiert, wie ein Bitcoin-Output aussieht, und BIP-342 definiert, was innerhalb eines solchen läuft. Auf Bitcoin sind die drei in der Praxis untrennbar, weil eine BIP-340-Signatur nur in einer Ausgabe mit Witness-Version 1 gültig ist, aber es sind getrennte Dokumente, die getrennte Probleme lösen, und die Schlüsselaggregation, die die meisten am interessantesten finden, ist eine Eigenschaft des Signaturschemas und nicht von Taproot selbst.

Nicht zu verwechseln mit

Häufig gestellte Fragen

Brauche ich eine Taproot-Adresse?

Nicht dringend. Eine bc1p-Adresse ist am günstigsten auszugeben und am privatesten für Multisig, doch die Unterstützung bei Börsen ist noch ungleichmäßig. Bewahren Sie eine bc1q-Adresse aus derselben Seed-Phrase auf für Plattformen, die bc1p ablehnen.

Kann eine alte Wallet Geld an eine Taproot-Adresse senden?

Nur wenn sie bech32m versteht, die Prüfsumme, die für Witness-Version 1 eingeführt wurde. Software, die vor Taproot geschrieben wurde, wird eine bc1p-Adresse als ungültig ablehnen, was eine Einschränkung auf Client-Seite ist und nicht etwas, das das Protokoll verhindert.

Ist Taproot der Grund für gestiegene Gebühren?

Indirekt. Der Witness-Rabatt machte es günstig, beliebige Daten in einen Taproot-Skriptpfad einzubetten, was Inscriptions tun, und die daraus entstehende Nachfrage konkurrierte mit Zahlungen um Blockplatz. Der Rabatt ist älter als Taproot und kam mit SegWit.

Weiterlesen

Verwandte Begriffe

Mehr zum Thema Protokoll und Upgrades

Diese Seite auf Englisch lesen