Ephemeral anchors
Also covering Pay-to-Anchor (P2A) and Ephemeral dust
Ephemeral anchors are a proposal to allow some transactions to be relayed even if they don’t pay any transaction fee, provided they’re relayed as part of a package containing a child transaction which pays a fee sufficient for the entire package.
The proposal is built on top of the v3 transaction relay proposal. A v3 transaction containing as little as
zero fee that has a zero-value output paying OP_TRUE
as the entire script
would be accepted when included in a relay package with a fee-paying child.
This allows anyone on the network to use that output as the input to a child transaction. This allows anyone to create the fee-paying child, even if they don’t receive any of the other outputs from the parent transaction. This allows ephemeral anchors to function as fee sponsorship but without requiring any consensus changes.
Ephemeral anchors is envisioned to be used with contract protocols such as LN where transactions are signed by the contract participants a long time before they are broadcast, preventing the participants from determining an appropriate feerate to use. Instead, any participant (or several acting together) can use the ephemeral anchor output as the input to a child transaction which adds fees at the time the transaction is broadcast. This is similar to the anchor outputs added to LN in 2021-22, based on the CPFP carve out relay rule.
Primary code and documentation
Optech newsletter and website mentions
2024
- Bitcoin Core #30239 makes ephemeral dust outputs standard, allowing zero-fee transaction relay
- Bitcoin PR Review Club about ephemeral dust to improve P2A usability
- LN developer discussion of using P2A for version-3 LN commitments
- Guide for Wallets Employing Bitcoin Core 28.0 Policies: P2A output scripts
- Description of a replacement cycling attack against transactions using P2A
- Bitcoin Core PR Review Club for #30352: Add PayToAnchor (P2A) as standard output script for spending
- Bitcoin Core #30352 introduces a new standard output type, Pay-To-Anchor (P2A)
- Proposed changes to LN for v3 relay and ephemeral anchors
- Discussion about cluster mempool and a need for a CPFP carve out replacement like ephemeral anchors
- Discussion about Miner Extractable Value (MEV) in non-zero ephemeral anchors
- Discussion about ephemeral anchors for LN and v3 transaction relay proposal
2023
- Making ephemeral anchor spends with non-malleable txids
- LN developer discussion about multiple relay policy topics, including ephemeral anchors
- Bitcoin Inquisition #23 adds part of the support for ephemeral anchors
- Ephemeral anchors compared to
SIGHASH_GROUP
2022
- Ephemeral anchors implementation
- Ephemeral anchors
- Proposed additional rules for v3 transaction relay to assist CPFP fee bumping
See also
Previous Topic:
Eltoo
Next Topic:
Erlay