I believe that to defend the network we need a more dogged mindset than this. It might be doable to store 21TB in the next 100 years, but if it turns out it's just 11TB because we've kept 10TB of gifs, jpeg and json out of the blockchain then we'd have done a much better job, because all other things being equal there would be more pleb nodes.

And Luke and me thinking about this shouldn't help you sleep better. Bitcoin is a decentralized network and thus emergent behavior from independent actors is needed for things to happen. The blocksize war would've gone differently if one guy worried about it and all the node runners had sat on the fence.

What should help you sleep better is figuring out how to run ordisrespector and do it (assuming you don't want to relay unconfirmed inscriptions), even if your individual action doesn't have a visible effect on the whole picture.

Reply to this note

Please Login to reply.

Discussion

Ordisrespector distorts fee estimates on the local node, and doesnt do anything meaningful to prevent inscriptions nor the bloat to UTXO set caused by transactions in general.

Im not opposed to smaller blocks (1MB, even 512KB would be fine) to help cap but I dont yet know a way to truly reduce UTXO quantity by encouraging consolidation

It would do something meaningful if the dev team would've treated inscriptions as an exploit and released a security patch with ordisrespector turned on by default. Then it'd be just like any other standardness rule, like the 80 byte limit on OP_RETURN, or the dust limit of 546 sats. You can still get non-standard TXs mined but it doesn't happen by default, which is enough.

Individual node runners patching their nodes won't mitigate the issue by themselves, but building a modded Bitcoin Core is a good learning exercise that shows that Bitcoin Core is not a consumer product given from above, and that you can use it to show your preferences (staying within consensus).

The bogus fee estimates are the #1 criticism I get but it's not a problem in practice. Normal transactions usually dominate the fee market, and if they don't it's trivial to get a second opinion. Miners accepting non-standard TXs off-band, or Mempool's TX Acceleration service probably do more damage to fee estimates than ordisrespector.

Yeah thats a cat and mouse game where you run the risk of breaking other valid transaction signatures while doing nothing to stop other UTXO bloat and space waste caused by Bitcoin Stamps and Muun

Ordisrespector simply filters unconfirmed TXs with the OP_FALSE OP_IF sequence. There's no other use for that sequence of opcodes than embedding random bytes. And even if the developer fucks up the logic of one of these filters and discards valid transactions they can be amended without causing any long term damage.

Most of the recent UTXO bloat is due to a tidal wave of BRC-20 nonsense TXs that pay market fees to move amounts below the dust limit, like this one: https://mempool.space/tx/d5261e9d383bee5bc429ab5cffbd00fbe031fdd7dd943541f5d18adf40bc0b41

So yeah, ordisrespector as standard policy would possibly be an effective stopgap to UTXO bloat, as it's being fueled by inscriptions.

Regarding stamps, the equivalent stampdisrespector patch is already present in Bitcoin Core. You can turn it on with permitbaremultisig=0 (I do). As a "funny" trivia, Luke tried to turn it on by default back in 2014 and Mike Hearn shot him down:

https://github.com/bitcoin/bitcoin/pull/5231

That’s wrong. Mempool bidding fees are determined by the margin and not by absolute. Non-inscription transaction are bidding more for compensation than transaction with inscriptions.

By the way, how could you even know that since you are not enforcing #ordirespector?

One of my nodes runs ordisrespector. The others do the inverse, disconnecting nodes that are ordisrespector.

Then you are distorting your fee monitoring yourself.

Possibly. Every node has a different mempool. How does yours compare.

Yes..the fees are affected there

Yes, there and there “the” fee is there.

These are different instances no?

Spread around the world

And they have different fee estimates

Are you surprised?

Of course all spread around the world have different fee estimates. 1 ~ 2 sats/vB.

Why doing such a thing is useless to support and not support ordisrespector?

I prefer gathering data to see what is happening empirically to avoid making assumptions.

Fair

How does your node test for that?

Fair points.