I really thought we’ve seen the bottom of Bitcoiners making ridiculous and absurd arguments against the development of Bitcoin, to paint themselves as some kind of righteous underdog fighting corruption and incompetence from within.
Boy was I wrong.
So, some things to explain first. With lightning channels, you must determine your amount for each closing transaction ahead of time. Because the actual UTXO is multisig, both sides of the channel must sign the transaction used by either side to close the channel prematurely. All lightning protection is based on having these. If you ever need to use one, say because your partner doesn’t cooperate with you, you can’t count on them to clear a large amount of money when you need it.
This led to problems during the closing of joint costs. If fees have been high and low since you opened your channel, you’re paying money you didn’t need. If the payments were low and increased, you cannot ensure that your channel is closed at the right time. You can’t Replace With Payment(RBF) because your partner needs to sign, and you can’t use Child-Pays-For-Parent(CPFP) because all your deductions are time-locked, so nothing to use will be allowed. until after the first transaction is really valid and bypasses many blocks.
Because of this, anchor effects are created. It was a special effect that exists without time locking for the sole purpose of being able to use it in child transactions to pay for Lightning close transactions. These add to the financial inefficiencies, which require a disproportionate amount of satoshis to be used to create these effects.
Add ephemeral anchors, build on v3 transaction relay and relay package (to relay operations to mempool as groups). The idea is to have an output value of 0 that is usable with OP_TRUE(meaning anyone can use it). Transactions with a payload of 0, and including an ephemeral anchor, will be transferred to the mempool as long as there is a child function that uses an ephemeral anchor that outputs the appropriate value.
This allows lightning stations to sign one-off transactions without fees, and anyone who needs to use them can simply use the ephemeral anchor output to set whatever amount of money is needed at the time. This greatly simplifies lightning closures, and removes financial inefficiencies from existing outputs. An added bonus is that or anyone can charge a fee for a temporary anchor, not just station owners (or other contract).
An ephemeral anchor never creates a 0 UTXO value in the UTXO set, because it will only be transferred together with the work you spend immediately on the same block.
So why is this a problem? Or attack? I don’t know, it’s an amazing simplification that basically any second layer protocol, or contract built on Bitcoin in general, that uses pre-signed transactions will benefit greatly from it. It does not cause the bloat of the UTXO set, because as in the name, the output used is ephemeral. They are not created forever.
The only arguments I’ve seen are “spam!” Or “The main engineers are clearing the dust limit!” (The minimum transaction output limit must be passed, and it removes nothing but ephemeral anchors, those it should used immediately by the child to be transferred).
I think we are at a time when we have to think seriously when it is time to dismiss criticism or complaints about the topic of technology in this space. Or when legitimate criticism ceases to be that, and becomes irrational and irrational crusades against or humane instead of reasoned criticism. Because this pushback against ephemeral anchors is undeniably final.
All reasonable criticism should be welcomed in an open source agreement like Bitcoin, but it’s time to stop mocking irrational nationalism with no rational basis as if it were equal to legitimate criticism. It’s not, it’s a waste of time and a Denial of Service attack against the Bitcoin development process.
This article is a Take it. The views expressed are entirely those of the author and do not reflect those of BTC Inc or Bitcoin Magazine.