Hilfe bei der Rohtransaktionsgebühr - Absurd hohe Gebühr

Ich arbeite schon seit einiger Zeit an meiner Litecoin-Wallet. Aber ich kann die Transaktionsgebühr anscheinend nicht kontrollieren, wenn ich Rohtransaktionen durchführe.

Ich weiß, wie man Transaktionen mit Litecoin-Qt GUI sendet: https://live.blockcypher.com/ltc/tx/2b2f0aab9d2661840a60b172dcda24f359e85b7dbd0810e7afb2d3a6c0b8e59c/

Kein Problem damit, die Gebühr betrug 0,00017 LTC ​​und wurde in den nächsten Block aufgenommen. Der vsizedieser TX = 170, was die 0,00017 LTC-Gebühr erklärt.

Ich arbeite aber auch an einem eigenen Wallet auf meinem VPS mit der Litecoin-CLI. Ich habe eine unbearbeitete TX erstellt, unterschrieben und abgeschickt. Dies ist passiert: https://live.blockcypher.com/ltc/tx/32ceefc7f377ad53c91922dffe62e6fd19e48a46d6afb4d610c2c090646404dc/

Eine Transaktionsgebühr von 0,1 LTC!!! Und das vsizeist nur 192.

Ich ging zurück zur Datei litecoin.conf und sie hat den paytxfee=0.001Parameter. Das heißt, es würde mich 0,001 LTC/kB kosten. maxtxfeewar noch nicht eingeschaltet, hat aber jetzt einen Wert von 0,001. Wenn ich jetzt versuche zu senden, werde ich nur aufgefordert mit: "error":{"code":-26,"message":"256: absurdly-high-fee"}.

Was mache ich falsch?

(Ja, ich teste meine Brieftasche im Mainnet, ich bin dumm)

Antworten (2)

Die Gebühr einer Transaktion ist nur die Differenz zwischen dem Eingabe- und dem Ausgabewert. Bei der zweiten Transaktion, die Sie gebucht haben, betrug der Eingabewert 0,25 LTC und der Ausgabewert 0,15 LTC, Sie haben also eine Gebühr von 0,1 LTC (0,25-0,15) bezahlt, wie Sie sagen. Wenn Sie eine Eingabe wählen, die größer ist als die Ausgabe, die Sie senden möchten, sowie die Gebühr, müssen Sie eine Änderungsausgabe erstellen, um den Rest ebenfalls an Ihre Brieftasche zurückzusenden, da sonst alles als Gebühren an die Miner geht. Wenn Ihre Eingabe beispielsweise 0,25 LTC war und Sie 0,15 LTC senden und nur eine Gebühr von 0,01 LTC zahlen möchten, müsste Ihre Transaktion zwei Ausgänge haben, einen für 0,15 LTC und einen für 0,09 LTC zurück an eine Adresse, die Ihnen gehört. sodass die Gesamtgebühr nur (0,25-(0,15+0,9) = 0,01 beträgt)

Ich bin darauf gestoßen fundrawtransaction, was es wirklich einfach gemacht hat.

Es hört sich so an, als würden Sie mit dem createrawtransactionRPC-Befehl eine Transaktion von Hand erstellen. createrawtransactionwird von keinem der Transaktionsgebührenbefehle oder -parameter beeinflusst. Sie müssen die Gebühr in diesem Fall manuell festlegen, indem Sie bei Bedarf Änderungsausgaben erstellen.

Wie MeshCollider sagte, ist die Transaktionsgebühr die Differenz zwischen der Summe der Eingaben und der Summe der Ausgaben einer Transaktion. Wenn Sie also verwenden createrawtransaction, müssen Sie sicherstellen, dass die Summe der von Ihnen erzeugten Ausgaben nicht zu niedrig oder zu hoch ist.

Wenn Sie dies nicht manuell tun möchten, können Sie den fundrawtransactionBefehl verwenden, der Eingaben aus Ihrer Brieftasche auswählt und bei Bedarf Änderungsausgaben erstellt. fundrawtransactionübernimmt Transaktionsgebühren.