O Que É, E Como Calcular CPFP - Child Pays For Parent
A importância de saber calcular o target fee ou custear um CPFP
Block Height: 822.035
Você noderunner foi abrir um canal com uma certa fee rate mas do nada começaram a entrar novas transações na fila de blocos da timechain e ligeiramente as fees rates de prioridades começaram a subir sem parar fazendo com que sua transação de abertura de canal ficasse para trás.
Pois então… uma abertura de canal não pode ficar pendente mais que 2016 blocos. Caso contrário, não se tornará ativo e terá que ser fechado por force close.
A alternativa que você tem agora é fazer uma transação CPFP!
O que é CPFP? - Child Pays For Parent
Como um canal é negociado entre duas partes e depende da sua transação de abertura, não podemos aumentar a taxa da sua transação de financiamento com outra e, portanto, não podemos aumentar a fee rate.
Em vez disso, temos que criar uma transação CPFP que receba a transação de abertura de canal como entrada e gaste-a conosco mesmos com uma taxa mais alta. Podemos fazer isso com o comando lncli wallet bumpfee usando o TXID da transação do canal que estamos aguardando para ser aberto. Isso só funciona se a abertura do canal tiver um output, e precisaremos identificar este output:
Encontre o TXID da transação de abertura do seu canal. Você pode usar o comando lncli pendingchannels ou encontrar na página de dashboard do LNDg.
O valor channel_point fornecerá o ID da transação e o índice de output, que é 0 ou 1.
Na tela de dashboard do LNDg em pending open channels, terá o txid:output do canal pendente.
A saída para a qual você deseja fazer uma transação CPFP terá o mesmo TXID de transação, mas um índice de output diferente. Portanto, se o seu channel_point tiver o índice de saída 0, a sua utxo de troco terá o índice de saída 1. E vice-versa.
Você pode verificar novamente o TXID da transação usando a mempool. Caso sua transação de abertura de canal não tenha um output de troco, por exemplo: ele tem apenas uma output que é do canal. Neste caso, você não poderá fazer uma transação CPFP e não poderá aumentar a fee rate.
Comando lncli para o CPFP:
lncli wallet bumpfee --sat_per_byte <FeeRate> <txid:output>
Como Calcular o CPFP?
A primeira fórmula se utiliza quando você quer saber qual fee rate usar para transmitar a transação Child, ou seja, a nova transação para dar um bump de fee.
A segunda fórmula se utiliza quando você já estipulou a fee rate que irá usar na transmissão da transação Child e quer encontrar qual será a fee rate efetiva, ou seja, a fee rate que será considerada na fila dos blocos.
Para calcular o custo onchain total das duas transações:
Custo Total = Fees Parent + Fees Child
Calculadora do LNDg
A calculadora do LNDg utiliza do mesmo cálculo apresentado na imagem acima, você pode verificar por si só.
Para usá-la acesse a página de balance a partir da página do dashboard:
No canto direito terá essa calculadora, clique nela:
Então a interface abrirá da seguinte forma:
Sendo as informações necessárias:
Desired Fee Rate: Fee rate efetiva desejada, ou seja, a fee rate que é levada em consideração na fila de blocos. Você é quem decide este valor, com base no momento em que estão as fee rates.
Parent TX Fees: Fee onchain paga na transação Parent, ou seja, a de abertura do canal. Obs: É preciso colocar a fee onchain total paga e não a fee rate.
Parent TX Size: Tamanho da transação Parent em vbytes (virtual size).
Essas informações você pode encontrar na mempool com o txid da abertura do canal:
O resultado entregue pela calculadora do LNDg é a fee rate que você deverá usar na transação Child. Uma forma mais fácil de fazer este procedimento é usar o próprio LNDg na página “Balance” novamente, e então setar a nova fee rate na transação desejada e aperte Enter, conforme a seguir:
Obs: o LNDg não deixa setar a fee rate maior que 100 sat/vbyte, o exemplo acima foi apenas ilustratório. Para valores de fee rate maiores que 100, é necessário utilizar o comando lncli.
Por Que Devo Saber Disso Tudo?
É extremamente necessário saber custear um procedimento de CPFP para um noderunner pois influencia em seu balanço geral, gera mais custos que poderiam ter sido evitados.
Saber calcular ou saber usar a calculadora pode te salvar alguns trocados em satoshis pois saberá dimensionar corretamente um bump fee por cpfp conforme a necessidade do momento.
Contato
Twitter: EMTLL_
Telegram: EM_TLL
Amboss: EMTLL
Se gostou do artigo e quiser contribuir com alguns satoshis, envie para o LN Address: emtll@lnmarkets.com