Eine Wallet ist eine Anwendung oder ein Gerät zum Empfangen und Senden von Bitcoin. Transaction Labeling bezeichnet Beschriftungen und Notizen zu Transaktionen, Adressen oder anderen Wallet-Einträgen. Sie können den Zahlungszweck oder die Herkunft empfangener Mittel festhalten. Diese Metadaten speichert die Anwendung außerhalb der Bitcoin-Transaktion; sie beweisen für sich genommen keine Identität der Gegenpartei.
Sie öffnen den Wallet-Verlauf und sehen eine alte Zahlung. War sie eine Anzahlung, ein Geschenk oder eine Überweisung auf Ihr anderes Konto? Das Label „Anzahlung Fahrradreparatur“ kann den Eintrag lange später verständlich machen. Beim Umbenennen ändern Sie eine Anwendungsnotiz, nicht die Transaktion oder ihre Kennung txid. Dafür muss nichts Neues in die Blockchain, die öffentliche Historie bestätigter Transaktionen, geschrieben werden. Dasselbe gilt bei der Wiederherstellung: Eine Seed Phrase, die Wiederherstellungswörter für Wallet-Schlüssel, enthält Ihre persönlichen Notizen nicht. Zugriff auf die Mittel und den Kontext der Zahlungen wiederherzustellen sind verschiedene Aufgaben. [1] [3] [5]
Eine hilfreiche Notiz hält Bekanntes fest: Rechnungsnummer, Zahlungszweck oder Herkunft der Mittel. Eine eigene Notiz ist jedoch etwas anderes als eine automatisch zugeordnete Information oder eine übernommene Analystenbehauptung. BTCPay Server verwendet beispielsweise invoice für Rechnungszahlungen und payout für Auszahlungen oder Erstattungen; eigene Labels sind ebenfalls möglich. Der Zusammenhang hilft bei Coin Control, der manuellen Auswahl noch nicht ausgegebener Ausgänge, der UTXO. Jeder solche Ausgang hält einen Betrag und die Bedingungen fest, unter denen er ausgegeben werden darf. Ein Label „nicht zusammenführen“ verhindert allein aber nichts. Welche Eingänge die nächste Zahlung verbindet, bestimmt die tatsächliche Auswahl. [1] [2]
Manche Wallets können einen Ausgang einfrieren, sodass die Anwendung ihn nicht zum Ausgeben auswählt. BIP 329 überträgt diesen lokalen Zustand mit spendable, ausschließlich beim Typ output. spendable:false verwendet den booleschen Wert false; die Zeichenfolge "false" ist etwas anderes. Praktisch schützt das Einfrieren vor unbeabsichtigter Auswahl in dieser Anwendung, nicht vor jeder möglichen Ausgabe. Es ist kein Timelock, also keine Zeitbedingung der Bitcoin-Regeln. Eine andere Wallet mit den richtigen Schlüsseln kann den Ausgang ausgeben, wenn seine tatsächlichen Bedingungen erfüllt sind. [1] [3]
Denken Sie beim Wechsel zu einer anderen Anwendung auch an einen gesonderten Export der Notizen. Er kann Namen, Rechnungen und Zahlungsverläufe mit Adressen oder einem XPUB verbinden, einem erweiterten öffentlichen Schlüssel. Damit lassen sich weitere Adressen für den zugehörigen Teil der Wallet berechnen; allein mit einem XPUB lassen sich jedoch keine Zahlungen signieren. Enthält der Export einen Eintrag vom Typ spscan, enthält dieser auch einen privaten Scanschlüssel zum Auffinden eingehender Silent Payments. Dieser erlaubt allein keine Ausgaben, seine Offenlegung schadet aber der Privatsphäre. Ohne privaten Ausgabeschlüssel ist die Datei also nicht automatisch harmlos. Schützen Sie gespeicherte Kopien und Übertragungen durch Verschlüsselung und testen Sie die Wiederherstellung im richtigen Konto. [1] [4] [5]
BIP 329 unterscheidet tx, addr, pubkey, input, output, xpub und spscan: Transaktion, Adresse, öffentlichen Schlüssel, Eingang, Ausgang, erweiterten öffentlichen Schlüssel und einen Ausdruck zum Scannen von Silent Payments. Der Typ bestimmt die Bedeutung von ref. Bei input bezeichnet es Transaktion und Eingangsindex, bei output die erzeugende Transaktion und den Ausgangsindex. txid:1 reicht ohne Typ daher nicht aus. Es könnte einen Eingang oder einen Ausgang bezeichnen, also verschiedene Objekte. Solche Verweise pauschal als „Zahlungsadresse“ zu behandeln ist nicht sicher. [1] [4]
Für den Austausch nutzt BIP 329 JSON Lines: eine UTF-8-Textdatei mit einem strukturierten Eintrag pro Zeile. Sie müssen sie nicht selbst schreiben; entscheidend ist, dass beide Anwendungen sie verstehen. Die Pflichtfelder type und ref bestimmen den Gegenstand. label, origin und spendable sind optional. Fehlende Werte für label oder spendable sollen beim Import vorhandene Werte nicht überschreiben. Unbekannte Typen soll ein kompatibler Importer ignorieren. Eine erfolgreich geöffnete Datei bedeutet deshalb nicht, dass alle Notizen und Einstellungen übernommen wurden. [1]
Dieselbe Transaktion kann in mehreren Konten oder Wallets erscheinen und jeweils anders beschriftet sein. origin hilft, diese Perspektiven zu unterscheiden. Das Feld enthält einen verkürzten Output Descriptor, eine maschinenlesbare Wallet-Beschreibung, mit Angaben zur Schlüsselherkunft, aber ohne tatsächliche Schlüssel, nachgeordnete Ableitungspfade oder Prüfsumme. Es zeigt, zu welcher Wallet das Label gehört. Es ist weder eine Signatur der Datei noch ein Beleg für den wahrheitsgemäßen Zahlungszweck. Das richtige Konto zu erkennen und dem Notizinhalt zu vertrauen sind verschiedene Dinge. [1]
Bevor Sie die alte Anwendung aufgeben, erproben Sie den Transfer mit einer getrennten Testkopie. Vergleichen Sie bei bekannten Zahlungen das Objekt und ref, den Text sowie einen möglichen Einfrierzustand spendable. Prüfen Sie Umlaute, mehrere Konten, unbekannte Typen und fehlende optionale Werte. Ein Importer kann nicht unterstützte Einträge überspringen oder Labels kürzen. Die empfohlenen 255 Zeichen sind eine Standardgrenze, keine anwendungsübergreifende Garantie. Behalten Sie die ursprüngliche Sicherung, bis wichtiger Kontext überprüft ist. „Import abgeschlossen“ bestätigt das allein nicht. [1]
Für ein möglichst vollständiges Bild lies diesen Eintrag zusammen mit Coin Control, UTXO, Bitcoin-Privatsphäre, Address Clustering, Seed Phrase, Output Descriptor. Auf diesen Eintrag verweisen außerdem Chain Surveillance.