O que é o “Child Pays for Parent” (CPFP) e como funciona na prática

O que é o “Child Pays for Parent” (CPFP)

O Child Pays for Parent (CPFP) é um mecanismo de substituição de taxas utilizado nas redes de Bitcoin e, em versões adaptadas, também em Ethereum. Ele permite que uma transação “filha” (child) pague uma taxa maior para que a transação “pai” (parent), que está presa por ter uma taxa baixa, seja confirmada mais rapidamente pelos mineradores.

Por que o CPFP é necessário?

Em períodos de alta congestão, as mempools ficam cheias de transações com diferentes valores de taxa. Quando uma transação é criada com uma taxa insuficiente, ela pode ficar “preso” na mempool por muito tempo. Como as transações são processadas em ordem de taxa, a única forma de acelerar a confirmação é aumentar a taxa da própria transação – algo que não é possível depois que ela já foi enviada. O CPFP resolve esse impasse ao criar uma nova transação que gasta a saída da transação original e oferece uma taxa suficientemente alta. Os mineradores, ao verem que a soma das taxas das duas transações (pai + filho) é atrativa, incluem ambas no bloco.

Como funciona na prática?

  1. Uma transação pai é enviada com taxa baixa e fica presa na mempool.
  2. O remetente (ou um terceiro) cria uma transação filho que gasta a saída não‑gasta (UTXO) da transação pai.
  3. A transação filho inclui uma taxa alta o suficiente para tornar a soma das duas taxas competitiva.
  4. Os mineradores, ao validar o bloco, verificam que a transação filho depende da transação pai; assim, ambas são incluídas juntas.

Esse processo garante que a taxa total paga seja suficiente para a confirmação rápida, sem a necessidade de substituir a transação original.

Vantagens e desvantagens do CPFP

Vantagens:

  • Flexibilidade: permite ajustar a taxa após o envio da transação original.
  • Segurança: evita a necessidade de criar uma nova transação que substitua a original, mantendo a integridade dos UTXOs.
  • Compatibilidade: funciona em quaisquer carteiras que suportem a criação de transações dependentes.

Desvantagens:

  • Custo adicional: a taxa da transação filho é paga em conjunto com a taxa da transação pai.
  • Complexidade: requer conhecimento técnico ou o uso de carteiras que automatizem o processo.

CPFP e o ecossistema MEV

O CPFP está intimamente ligado ao conceito de MEV (Maximal Extractable Value). Quando miners priorizam transações que oferecem maiores recompensas, a soma das taxas pai+filho pode gerar oportunidades de MEV, especialmente em operações de arbitragem ou liquidations. Para mitigar impactos negativos, consulte o artigo Soluções para mitigar o MEV, que apresenta estratégias como Flashbots e Proposer‑Builder Separation (PBS).

Como usar CPFP nas principais carteiras

Algumas carteiras já implementam o CPFP de forma automática:

  • Electrum: permite marcar a transação como “Replace‑by‑Fee” (RBF) ou criar uma transação filho manualmente.
  • Bitcoin Core: oferece a opção “Bump Fee” que, na prática, cria uma transação filho com taxa maior.
  • Carteiras móveis (BlueWallet, Wasabi): incluem um botão “Acelerar” que gera o CPFP.

Para usuários avançados, a criação manual de um CPFP pode ser feita via linha de comando bitcoin-cli ou usando bibliotecas como bitcoinjs-lib.

Conclusão

O Child Pays for Parent (CPFP) é uma ferramenta poderosa para quem precisa garantir a velocidade de confirmação de transações em redes congestionadas. Ao entender seu funcionamento, vantagens e riscos, usuários e desenvolvedores podem otimizar custos e melhorar a experiência de uso da blockchain.