Glossar / Adressen und Schlüssel
Output-Deskriptor
Auch bekannt als Descriptor, Deskriptor, Output descriptor.
- Was ist ein Output-Deskriptor?
- Ein Output-Deskriptor ist eine einzelne Textzeile, die angibt, welchen Skripttyp, welche Schlüssel und welchen Ableitungszweig eine Wallet verwenden soll, mit einer Prüfsumme am Ende.
Spezifiziert im BIP-380.
Deskriptoren gibt es, weil ein erweiterter Schlüssel für sich genommen mehrdeutig ist. Derselbe xpub kann Legacy-, verschachtelte SegWit-, native SegWit- oder Taproot-Adressen erzeugen, und nur die umschließende Funktion klärt die Frage. Bitcoin Core erstellt seit Version 23.0, veröffentlicht im April 2022, standardmäßig Deskriptor-Wallets, und eine Multisig-Sicherung ohne ihren Deskriptor ist oft nicht wiederherstellbar.
So funktioniert es
Ein Deskriptor ist eine Funktion, die auf einen Schlüsselausdruck angewendet wird, gefolgt von einem Rautenzeichen und acht Prüfsummenzeichen. Die Funktion benennt das Skript: pkh für Legacy, sh(wpkh(...)) für verschachteltes SegWit, wpkh für natives SegWit, tr für Taproot und wsh(sortedmulti(2,...)) für einen Tresor mit 2 von 3.
Der Schlüsselausdruck trägt den Rest. Eckige Klammern enthalten den Ursprung, also den Fingerabdruck des Hauptschlüssels und den Pfad, der zu diesem Schlüssel führt, wie in [1a2b3c4d/84h/0h/0h]. Danach folgt der erweiterte Schlüssel, dann ein Suffix wie /0/*, wobei der Stern ein Platzhalter ist, der der Reihe nach für jeden Adressindex steht. Ein Deskriptor mit Platzhalter heißt ranged, und die Adressen 0 bis 999 daraus anzufordern, ist ein einziger RPC-Aufruf statt tausend Importen.
Empfang und Wechselgeld sind zwei Deskriptoren, nicht einer, weshalb Wallets sie paarweise importieren, endend auf /0/* und /1/. BIP-389 hat das mit der Mehrpfad-Notation aufgeräumt und schreibt das Paar als /<0;1>/ in eine einzige Zeichenfolge.
Die Prüfsumme ist klein, aber entscheidend. BIP-380 definiert einen acht Zeichen langen Code über den Deskriptortext, der genau die Schäden abfangen soll, die einer langen Zeichenfolge tatsächlich passieren: ein vertauschtes Zeichen, ein abgeschnittener Einfügevorgang, ein von einem E-Mail-Programm eingefügter Zeilenumbruch. Bitcoin Core lehnt jeden Deskriptor ab, dessen Prüfsumme nicht passt, und getdescriptorinfo berechnet die richtige für eine Zeichenfolge, die Sie selbst eingegeben haben.
Wo er auftaucht
Deskriptoren sind das Sicherungsformat für alles, was komplizierter ist als eine einzelne Seed-Phrase. Sparrow, Nunchuk und Specter exportieren einen für jede Wallet, die sie erstellen, und ein Coldcard-Gerät schreibt den Deskriptor während der Multisig-Einrichtung auf eine microSD, damit die Anordnung ohne die ursprüngliche Koordinator-Software wiederhergestellt werden kann.
Bitcoin Core ist der Ort, an dem sie Standard wurden. Version 0.17.0, veröffentlicht im Oktober 2018, führte sie zum Scannen und zur Adresserzeugung ein; importdescriptors und listdescriptors machten sie zur Muttersprache der Wallet; und die Deskriptor-Wallet ist heute die einzige Art, die die Software erstellt. Eine Core-Wallet aus einem Deskriptor plus einem Rescan wiederherzustellen, ist ein unterstützter Weg, der auch eine Neuinstallation der Software von Grund auf übersteht.
Bei einer einfachen Wallet mit einer einzigen Signatur kommen Sie in der Regel ohne aus, weil Ihre Seed-Phrase und der Standardpfad genügen. Bei Multisig ist der Deskriptor die fehlende Hälfte der Sicherung: drei Seed-Phrasen ohne Aufzeichnung des Skripttyps, der Schlüsselreihenfolge oder des Ursprungs jedes Mitsignierers können dazu führen, dass Sie nicht in der Lage sind, die Adressen zu rekonstruieren, in denen Ihre Bitcoin liegen.
Output-Deskriptor vs. erweiterter Schlüssel
Ein erweiterter Schlüssel ist eine Zutat, und ein Deskriptor ist das Rezept. Der xpub sagt der Software, welche Schlüssel existieren; der Deskriptor sagt ihr, was daraus zu bauen ist und wo mit dem Zählen begonnen wird. Deshalb kann der Import eines xpub in zwei verschiedene Apps zwei verschiedene Adresslisten erzeugen, während der Import desselben Deskriptors das nicht kann. Beide geben gleich viel über Ihre Privatsphäre preis: Wer einen von beiden besitzt, kann Ihren Zweig aufzählen, daher verdient ein Deskriptor dieselbe Sorgfalt wie der Schlüssel darin.