Bitte um Hilfe bei CPFP

Ein Kanalpartner hat seinen Kanal zu mir mit 6 sat/vbyte geschlossen und danach seine Node neu aufgesetzt jedenfalls kann er kein rbf machen interessiert sich auch nicht dafür weil 99% der Sat auf meiner Seite liegen. Wie kann ich die Transaktion erhöhen? CPFP sollte irgendwie gehen?

Ich kenne den Typ nicht und er hat bereits ein 2 Kanal zu mir geöffnet. Kann ich irgendwie dafür sorgen, das er sich nie wieder zu mir verbinden kann?

Nachtrag: Ob er seine Coins wieder bekommt ist mir dann auch egal. Ansonsten könnte ich versuchen den ganzen Kanal zu bekommen um ihm sein Anteil wieder zu geben?

Noch ein Nachtrag: Ich wünschte ich könnte die mempool.space Funktion einfach Nutzen. Ist aber eine closed Beta… Wenn jemand Zugang hat würde ich mich freuen. Es wird ungefähr 27€ kosten. Ich werde dem ausführenden 10% mehr geben.

Versuch mal das:

$ lncli wallet bumpclosefee --sat_per_vbyte 30 a1c17390890523b40007a95808ba8837dd5d2e156ce735b72ce9f9084d1a761f:0

https://docs.lightning.engineering/lightning-network-tools/lnd/unconfirmed-bitcoin-transactions#docs-internal-guid-5647dd03-7fff-dc71-47cf-5f7e2155a44d

Alternativ, um Kosten zu sparen: ViaBTC | Transaction Accelerator
Dort anmelden, Close-Tx eingeben und warten, bis ViaBTC die Transaktion mit in einem Block nimmt.

Wenn du die Coins bei dir als Pending siehst. Kannst du diese UTXO einfach an eine neue Adresse von dir mit Coincontrol senden. Du muss nur die fees dabei höher setzen.
Der close ist mit 6sats und wenn du jetzt z.B. 25sat/vB benotigst muss die neue Transaktion mindestens 44sat/vB haben da du beide Transaktionen bezahlen musst. Mach aber lieber ein paar Sats mehr oder du musst halt warten.

Zum Blockieren kannst du nur in der lnd.conf unter Application Options diesen Zusatz einfügen:

maxpendingchannels=0

Anschließend lnd neustarten und niemand kann mehr ein Channel zu dir öffnen. Du kannst allerdings noch welche aufmachen. (Habs selber noch nie getestet)
Was anderes fällt mir gerade nicht ein außer vlt die Channelgröße auf z.B 1BTC setzen. Aber dann wird auch keiner mehr ein Kanal zu dir aufmachen können.

Ich kann die Transaktion als pending closing sehen.
Habe schonmal alle SATs an den Kanalpartner verloren wegen sowas und bin daher vorsichtig.

Muss ich noch am Wochenende ausprobieren wenn ich Zeit habe. Ich hoffe dass es geht obwohl ich nicht der Ersteller der ursprünglichen Transaktion war.

Zum Blockieren habe ich an minchansize=10000000 Gedacht.

@utxo wo hast du die a1c1739… hergenommen? Ich nehme an, dass noch anpassen zu müssen.

Das geht, weil es Anchors Channel gibt und du damit eine Handhabe hast.

Das ist der channel point, also die Kanalerstellungstransaktion.

@utxo muss ich die " :0 " unbedingt hinter die Adresse schreiben? Im mempool ist die nicht hinten dran.

Sry das ich so akribisch Frage. Habe wegen sowas schon 20Mio Sat verloren.

Bin nicht der Kanal Öffner und auch nicht der Kanal Schließer gewesen.

@utxo
2 Fragen:

  1. Wieso a1c17390890523b40007a95808ba8837dd5d2e156ce735b72ce9f9084d1a761f? Das ist der Opening TX Hash!
  2. Wieso der Parameter bumbclosefee? In den Docs steht, dass man diesen Parameter im Fall eines force closes benutzt. Hier wird ein cooperative close versucht (halt nur mit zu geringer Gebühr).

Ich hätte jetzt gedacht, dass folgender Befehl richtig ist:

lncli wallet bumpfee --sat_per_vbyte 45 b20861a5cce282edeef3c479bc97b97b727e9129dd1dcd3a06ef7b52bb493d5b:3
  • 45 könnte auch höher oder niedriger sein, je nach Risikobereitschaft/Gebührensituation.
  • Index :3, weil es sich um den vierten Output handelt, der per CPFP manipuliert werden soll (es wird bei 0 angefangen zu zählen soweit ich weiß, keine Ahnung wieso mempool das nicht tut).

Weil der Befehl lncli wallet bumpclosefee den Channel Point als Parameter benötigt, das ist die opening tx des Channels.

Insofern es Anchors (330 sat utxos) bei der Schließung eines Kanals gibt, muss es sich um einen Force Close handeln. Coop Closes verwenden keine Anchors.

1 „Gefällt mir“

Solange ich nicht sicher bin, welcher Index richtig ist Mach ich erstmal noch nichts.

Super, vielen Dank! Wieder was gelernt.
Und hier wird erklärt, wieso es Anchor Outputs überhaupt geben muss: What Are Anchor Outputs | Fanis Michalakis

@SaftCPU War dir bewusst, dass es sich hier um einen Force-Close handelt? Wie auch immer, der vorgeschlagene Befehl von @utxo sollte funktionieren, ich bin mir nur nicht sicher, ob die Gebühr von 30 sats/vB ausreicht.

Was den Index angeht:
Hier sieht man, dass Output 0 (mempool nennt es Output #1, da sie bei 1 anfangen zu zählen) derjenige Output war, der die Funds in den Channel gefüllt hat: mempool - Bitcoin Explorer
→ Insofern ist Index 0 richtig.

Soweit ich weiß, würde ein falscher Index aber auch nur einfach nicht funktionieren. Ansonsten passiert nichts.

1 „Gefällt mir“

Weil in den meisten Foren die Lösung fehlt: Hier mein Ergebnis für andere :smiley:
(Habe das BOS Terminal verwendet habe daher evtl. etwas detailliertere Rückmeldung)

Es wurde geschildert, dass es für 2 Transaktionen ausreichen muss.
Aktuell sind 17sat/vbyte gebühren gefordert.
Folgendes habe ich daher ausgeführt:

lncli wallet bumpclosefee --sat_per_vbyte 45 a1c17390890523b40007a95808ba8837dd5d2e156ce735b72ce9f9084d1a761f:0

Folgende Terminal Rückmeldung:

Bumping fee of 397f353346a7e45d672e17fc82b2d94ed997b6503ef3e326ae5a1637d71f5d11:1
Bumping fee of b20861a5cce282edeef3c479bc97b97b727e9129dd1dcd3a06ef7b52bb493d5b:1

Die Transaktion wurde direkt in den nächsten Block aufgenommen.
Jetzt habe ich noch eine Sperrzeit von knapp 2 Wochen.
Danach sollten die Sat wieder On-Chain verfügbar sein.

Vielen Dank an alle Helfer! Wieder was gelernt :sunglasses:

2 „Gefällt mir“

Um bei der Gelegenheit noch mehr Details zu verstehen, habe ich noch 2 Fragen:

  1. Die erste Rückmeldung Bumping fee of 397f353346a7e45d672e17fc82b2d94ed997b6503ef3e326ae5a1637d71f5d11:1 verstehe ich nicht. Es ist auch kein im mempool oder in der chain existierender TX-Hash. Wo kommt das her?
  2. Obwohl hier eine Feerate von 45 sats/vB gewählt wurde, kann ich sehen, dass die Child-TX eine Feerate von 105 sats/vB hat (-> mempool - Bitcoin Explorer). Offensichtlich wählt man mit dem Parameter also nicht die Feerate der neuen (Child) TX, sondern die gewünschte effektive Feerate (also Gesamtfeerate) der Parent und Child TX, korrekt?

Das stimmt und sollte besser beschrieben werden im Hilfsmenü von LND. Man wählt also nicht die fee rate der child tx, sondern direkt die Zielgebühr von beiden Transaktionen.

Zu 1) gute Frage. Keine Ahnung :thinking:

In Zukunft kann man also einfach eine ausreichende Gebühr für die aktuell benötigte feerate eingeben und gut ist :slight_smile:

Übrigens hier ein guter Artikel, wenn es mal beim Channel Closing hakt:

1 „Gefällt mir“

Hab mal einen Pull Request für die LND docs gemacht…

Exakt, du hast jetzt unnötig zu viel bezahlt. Das ist sicherlich schon vielen passiert, weil man an dieser Stelle kein Risiko mehr eingehen will.