Zum Inhalt springen
buybitcoinsmart

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.

Nicht zu verwechseln mit

Häufig gestellte Fragen

Muss ich einen Deskriptor ebenso wie meine Seed-Phrase sichern?

Bei einer gewöhnlichen Wallet mit einer einzigen Signatur auf einem Standardpfad genügt die Seed-Phrase. Bei Multisig oder jeder individuellen Einrichtung sichern Sie den Deskriptor ebenfalls, weil die Phrasen allein weder den Skripttyp noch die Schlüssel der Mitsignierer noch die Schlüsselreihenfolge aufzeichnen.

Ist es sicher, einen Deskriptor weiterzugeben?

Nur an jemanden, dem Sie Ihre vollständige Transaktionshistorie anvertrauen würden. Ein Deskriptor mit einem erweiterten öffentlichen Schlüssel erlaubt dem Besitzer, jede Adresse auf diesem Zweig abzuleiten und dauerhaft zu beobachten, doch er erlaubt ihm nie, etwas auszugeben.

Verwandte Begriffe

Mehr zum Thema Adressen und Schlüssel

Diese Seite auf Englisch lesen