Ich habe eine Transaktion (unter Verwendung des vollen Saldos einer Ausgabe) mit dem Bitcoin Core Wallet (das als vollständiger Knoten ausgeführt wird) erstellt. Die Transaktion gelangte wie erwartet in den Mempool der Hauptknoten. Ich habe die Gebühr auf das festgelegt, was der Kunde für eine langsame Transaktion empfohlen hat (etwas mehr als 9 Sat/B), aber heutzutage erweist sich dies als sehr niedrig. Angesichts des aktuellen Standes des Mempools bei Hoenicke könnte dies, wenn überhaupt, erst in Wochen bestätigt werden.
Ich habe die Transaktion zunächst bewusst auf "Request Replace-By-Fee" eingestellt und möchte die Gebühr jetzt erhöhen . Ich habe erwartet, einen Teil des "Zielbetrags" zu nehmen und als Gebühr zu verwenden, wobei der Gesamtbetrag der Transaktion gleich bleibt (immer noch die gesamte Ausgabe insgesamt ausgeben).
Dies scheint jedoch konstruktionsbedingt nicht möglich zu sein. Ich erhalte einen "Fee Bump Error" mit der Meldung "Erhöhen der Transaktionsgebühr fehlgeschlagen (Transaktion hat keine Änderungsausgabe)".
Warum kann ich den Ziel-/Gebührensaldo einer Transaktion nicht ändern und wie soll ich die Gebühr an dieser Stelle erhöhen?
Summary
Size 1xx (bytes)
Weight 7xx
Lock Time Block: 49xxxx
Inputs and Outputs
Total Input 0.01xxxxxx BTC
Total Output 0.01xxxxxx BTC
Fees 0.00001xxx BTC
Fee per byte 9.xxx sat/B
Fee per weight unit 2.xxx sat/WU
Estimated BTC Transacted 0.019xxxxx BTC
Sowohl Eingangs- als auch Ausgangsadressen beginnen mit „1“
BIP125 RBF -Transaktionen (Replace-by-Fee) in Bitcoin-Core 0.15.0.1 scheinen eine Änderungsadresse mit einem Saldo zu erfordern, um eine zukünftige RBF-basierte Gebührenerhöhung zu ermöglichen.
Betrachten Sie als Beispiel die folgende Transaktion:
Input - 1.00000 BTC
Output - 0.99998 BTC
Fee - 0.00001 BTC
Change - 0.00001 BTC
Gehe davon aus, dass die Gebühr zu niedrig ist. Jetzt wollen wir die Gebühr für die Transaktion erhöhen, also ersetzt der RBF die vorherige Transaktion durch eine wie:
Input - 1.00000 BTC
Output - 0.99998 BTC
Fee - 0.00002 BTC
Change - 0.00000 BTC
Nun reicht die Gebühr aus, dass die Transaktion bestätigt wird.
Ohne „Wechselgeld“ in der ersten Transaktion gibt es keine Quelle für die erhöhte Gebühr. RBF könnte so implementiert werden, dass die Ausgabe reduziert wird, um eine höhere Gebühr zu ermöglichen; Ich bin mir nicht sicher, warum das nicht unterstützt wird. Zeile 2928 des wallet.cpp-Quellcodes im Bitcoin-Core-Github-Repository besagt:
break; // Done, able to increase fee from change
Der Weg, um dieses Problem für eine Transaktion zu umgehen, bei der RBF aktiviert ist, aber keine Änderungsadresse hat, besteht darin, den Anweisungen zu folgen, die in einer der Antworten auf die kanonische Frage "Transaktion wird nicht bestätigt" enthalten sind . Ich habe letzte Woche genau das Problem erlebt und konnte es mithilfe der -zapwallettxes
Option in der Bitcoin-Core-Wallet-CLI erfolgreich wiederherstellen.
Monstrum