Replying to Avatar Bill Cypher

Here is what I learned arguing with people on both sides of the op_return argument. Cunningham's Law in full effect for sure.

1. The Bitcoin blocksize limit is unaffected by the PR. A full archival node is going to grow hard drive storage at up to 4MB every 10 minutes, that number does not change.

2. That 4MB is with maxed out witness data. The base block limit is 1MB, also unchanged.

3. Op_return is base block data while most current arbitrary data schemes store in the larger witness data area.

4. The true limits were always only at the block total level. The total can be made up of any combination of sizes of the sub fields, this is unchanged. My initial assumption on this was backwards. I thought the block limit came from the collection of limits of sub types of data because of my background in networking where that is how the TCPIP packet limits are set. See my incorrect posts earlier where I got this wrong and got corrected.

5. Any "limit" on any particular field size that you set only affects your mempool. This means those limits affect what is in RAM on your node only, not drive space or bandwidth consumption.

6. Your node always validated blocks with any op_return that fits into the base block. This is true of core, libre, and knots. This is why the large op_returns during the dispute did not cause a chain fork even though knots had a limit of 80.

7. More bluntly, nothing changes about what blocks validate. The node runners still have full control over validation and they are not being asked to change validation rules.

8. Only what is carried in mempool will change and no hardware usage changes for nodes.

9. From a TX side, getting nodes to carry the larger op_returns in mempool means they don't have to pay miner accelerator markups. Removing the markup will make op_returns cheaper than the witness data schemes used by most current arbitrary data. This is the entire purpose of the change.

10. Changing op_return to be cheaper than witness data should get arbitrary data users to prioritize using op_return.

11. Witness data cannot be purged from a pruned node without losing economic transactions. Op_returns can be purged in a pruned node, though this may change if future L2s require op_return arbitrary data. That would only affect node runners who wanted to support that L2.

12. 11 means that after the change pruned nodes should have lower hard drive capacity requirements for the same amount of arbitrary data stored on chain.

13. Very slowly for the back of the class. It should be easier for people who don't want to store arbitrary data to not store arbitrary on their node hard drives after the change.

14. Not keeping large op_returns in mempool means you have an incomplete view of who you are bidding against when you set fees for your on chain transactions. Right now this is not a big deal because there aren't many large open_returns. Once there are more, particularly during arbitrary data rushes like the taproot wizards craze, you may wait many blocks after paying what you thought was a next block fee.

15. 14 is most important for lightning where timely automated transactions can be critical such as justice transactions.

16. Mempool has a user set size limit. It drops transactions based on fee. Only the highest fee TXs stay in mempool if mempool size exceeds your limit. This means that storing large op_returns in mempool does not increase RAM requirements for your node.

17. Satoshi stored arbitrary data in op_return not witness data.

So TLDR.

I support the change now. For people who don't want their node resources used for arbitrary data, this makes it easier for you while Knots actually makes it harder. I'll be staying on core and I will be upgrading.

That said, I still think core and the insiders who support this handled it like a bunch of asshats. Pathetic public relations and they need to do much better in the future if they want to be taken seriously. If one person doesn't get it they may be an idiot, if the entire class doesn't get it you are a shitty teacher. Stop condescending and work on your teaching skills.

nostr:npub1dryseu6yv7evgz2f7pfzk6wht8flapcfv5l6r4y65pg5px293awqlwwfpc nostr:npub1wnlu28xrq9gv77dkevck6ws4euej4v568rlvn66gf2c428tdrptqq3n3wr nostr:npub1lh273a4wpkup00stw8dzqjvvrqrfdrv2v3v4t8pynuezlfe5vjnsnaa9nk nostr:npub17u5dneh8qjp43ecfxr6u5e9sjamsmxyuekrg2nlxrrk6nj9rsyrqywt4tp nostr:npub1ej493cmun8y9h3082spg5uvt63jgtewneve526g7e2urca2afrxqm3ndrm nostr:npub1qtvl2em0llpnnllffhat8zltugwwz97x79gfmxfz4qk52n6zpk3qq87dze nostr:npub126ntw5mnermmj0znhjhgdk8lh2af72sm8qfzq48umdlnhaj9kuns3le9ll nostr:npub1aghreq2dpz3h3799hrawev5gf5zc2kt4ch9ykhp9utt0jd3gdu2qtlmhct nostr:npub1xapjgsushef5wwn78vac6pxuaqlke9g5hqdfjlanky3uquh0nauqx0cnde

This is a great write up by Bill. I hope that I can do it justice by replying and or asking questions.

#5: My Reply: Yes, I love this aspect. I get to choose the settings for the transactions that I want to go into. Something that I don’t get to do in the legacy world. They dictate everything.

#7: My Reply: Are the node runners are being asked to forgo the option to choose what size op return? Instead of the legacy system dictating policy, now it is the Bitcoin Core developers that tell us what the limit is??? Right???

#8: My Reply: It sounds like the Core Developers are choosing what is carried in the mempool by their wishes?

#9: My Reply: Can’t we just use RBF (replace by fee) instead of paying an accelerator? I have used rbf and it worked good. The fees do happen to go up. I don’t remember how much, but let’s say I send a transaction with 1sat/vB it went up to 5 or 6 sat/vB.

The entire purpose of the change is that people can send transactions that aren’t specifically BITCOIN value transactions…and make it cheaper? This seems like they are encouraging this behavior. I don’t care what people want to store on the chain, on my node, ect. If you pay for it then you deserve the block space. Where I do find it odd is that these Bitcoin Developers are going so far as to make non financial transactions cheaper AND creating a way for them to do it easier. This is where they loose me all together. Where is the motivation coming from to think of this elaborate plan? Who is funding and or pushing this? As a matter of fact…. They are risking changing the code and possibly breaking something for non bitcoin transactions? It doesn’t pass the smell test. I can smell their bullshit from here and it stinks like… like shit. (Excuse my French.)

To top it off with a cherry I watched the interview with Shinobi today and he or Peter said something along the lines of. It doesn’t matter anyway so we are just going to do it.

IF IT DOESN’T MATTER THEN WHY ARE YOU FKNG WITH IT. Yes coders will code and I am happy they have been there so long with bitcoin. I wonder who is the Bitcoin Core Jesus that thinks he invincible and we (the people) have no say?

#11: My Reply: I believe and I may be wrong but one of the reasons to run a FULL node is to know about all of the transactions. One of the reasons to run a PRUNED node is to know about all of the transactions with less block space taken on your hard drive. So this “should be fine” now, but in the future if a layer 2 needs it, then the PRUNED node will no longer be able to purge the op_return SO WE WILL HAVE TO CHANGE THE op_return back to how it is now.

Then you give the option back to us to prove your point that op_return with no limit isn’t a problem by saying… BUT “that would only affect node runners who wanted to support that L2.

You are telling me that both full and pruned nodes are working great with op_return now but you want to change it because it doesn’t matter anyhow but you will need to change it because some Layer 2 might require it in the future. DUDE, you already know this is coming. You have a smell to you Jameson, Peter, and Shinobi. Ya’ll are up to something and I want no parts of it!

#12: My Reply: When setting up a pruned node you can set the storage amount of space on your hard drive or ssd to go down to 1 or 2 GB at the minimum and all the way up to a full node. How much space would you save on this op_return? That is a real question. I bet the photo I took of my BTCLOCK today (because bitcoin hit 100k again today) is a lot larger than the so called “space saver from snatching away op_return.

#13: My Reply: Now this sounds like an honest push for deleting the op_return limit. If they would just say this then I would be fine. I would’ve still run Bitcoin Knots on all of my nodes, but I honor men that don’t try to hide to get their way. It’s sneaky and it makes me think they are trying to pull a fast one because we are not developers so we couldn’t possibly understand the complicated world of developing on bitcoin. Maybe I don’t understand what they have going on, but I guarantee you that I understand when there is a snake slithering around rattling his tail trying to pretend that he is here to give me a few satoshi.

I’m not sure if this is the reason for everyone that doesn’t want to store arbitrary data on their hard drives, but for my purposes I don’t think the “CORE issue” (see what I did there?) is actually storing the data. I believe the issue is that the block space is being taken up by non bitcoin transactions that also receive said block space cheaper or with a discount compared to a bitcoin transaction, then you have to add in the other factors like storing the arbitrary data which have accelerated the hard disk space needed by at least 7 to 10 years. I did the math about a year ago and don’t remember the actual numbers. The point to that is that The block size is compounding super super fast compared to not having those transactions. It doesn’t seem like a problem today, but in 20 years we will have at least 100 years worth of storage requirements because no thought nor action was taken seriously now. BUT THEY WANT TO FOCUS ON op_return. I’m O.J……… OK

#14: My Reply: Do you know anyone that has been affected by not having a complete view of the block fees? I have never ran into that and I send a ton of on chain transactions. I run nodes with mempool installed and I always receive the time that I expect. I may play with the minutia and put 1.17 sat/vB but I always get what I expect plus or minus 10 to 12 hours. If I am unsure then I triple the fee estimate and get into the next block.

#15: My Reply: I would like to know more about this. I don’t know anyone that has ran into a justice transaction yet. I hope it never happens to me because people are acting in good faith. My question is: who is the moderator for the justice transaction? I would think a lightning developer that has the know how and understands the fee estimator to get into a block within a timely matter. I would assume that if there is a justice transaction then the lightning node that is acting in bad faith isn’t getting the transaction and or satoshi back. Why is there such a rush to get a timely transaction sent?

#16: My Reply: Yes that is true, but can’t we just go into the Bitcoin Node configuration and set a higher memory limit for your personal mempool? I have mine set quite high. The default is somewhere in the 333 range? I believe mine is set to 1500. I want my node to keep and to know about as many transactions as there are out there. 1. because it sucks when your transaction has been sitting there with 2 sat/vB for 4 months because “arbitrary” transactions are filling the blocks and the fees are crazy high. (It wasn’t an important transaction so it was worth it to wait and not RBF.) The very first time this happened, I didn’t know that my transaction was dropped out of the collective mempool because I wasn’t running a node yet and didn’t have knowledge of this concept yet. Now, my node is set up so that most transactions will be held by my node and when fees drop to a level that the gossip network relays the transaction that has been sitting for a while it can be picked up by others and mined.

Plus I run Datum, Knots, create block templates and it is better to know about all potential transactions so you don’t have to ask the network if it meets consensus. This would take more time for your node to verify.

#17: My Reply: I am so glad that you saved this for last!!!!! We are currently saving in witness data no? How about we do what Satoshi did? Focus on not storing anything in witness data and store it in op_return, but let’s not forget that Satoshi also had a limit on op_return. So it is SETTLED! We are not storing anything in witness data, op_return stays with a limit. I knew your post was worth the read!!!!!!!

The ending and My Reply: My father always said “if you can’t explain something simply then you don’t truly understand it.” The Core Developers understand it, but only at their level. They can’t see why we have different points of view from them. It’s because we care about something different than they do. You want to write and push code. I want Bitcoin not to be touched every 6 months because you want to be looked at as proficient. We all know that you all are brilliant in your unique way. (That is not to put them down in any way.) But video games need coding to make them better bitcoin does not especially when everyone doesn’t agree. Can’t you see that you have the same thing that we have. A BLIND SPOT SOMEWHERE. The difference here is that we have Luke and Knots to go to. Where do the Bitcoin Core Developers run to?

#Bitcoin

#lightning

#BitcoinKnots

#BitcoinCore

#Noderunner

#TothebitcoinCEO

#mempool

#taprootwizards

#Ocean

#Datum

#bitcoinmining

#DIYBitcoin

#runanode

#runyourownnode

#donttrustverify

#Satoshi

Reply to this note

Please Login to reply.

Discussion

#9 I believe the point Shinobi was trying to make was that you can’t stop someone who is incentivised and willing to pay from getting arbitrary data into a block because they can currently go directly to a miner.

What this would change is that the arbitrary data is no longer being stored in a the UTXO set and creating unspendable transactions.

He also made the point that it will help prevent miner centralisation because all miners will be able to benefit from the fees from these transactions containing arbitrary data rather than the few who offer the service now.

BLOCK 895904 Mined by VIABTC There are no op_return transactions nor fees. I also checked

BLOCK 895903 Secpool

BLOCK 895902 Antpool

BLOCK 895901 Secpool

BLOCK 895900 F2pool

BLOCK 895899 BTC.com

BLOCK 895895 Foundry and none of them have any transactions with op_return nor fees. UNLESS I am looking at it wrong. I could be wrong right now.

Does every miner want to offer this “service?” Are they are trying to say that large miners have spent literally hundreds of thousands and millions and millions of dollars on equipment, staff, research, acquisition, buildings, electricity, miner, shipping, internet, computers ect. But they can’t afford to find 1 person that will set up out of band transactions for them?

Come on man. I was born at night but not last night.

Yes, people go to great lengths to accomplish their goals. I for one… I AM THAT GUY!!!! 100% Just because people will pay a miner on the side to get what they want doesn’t necessitate the change to make it easier for them.

Most people usually don’t go around checking front door knobs for open doors because in most places we assume they are locked. (In the U.S. specifically.) Let’s imagine a place that never locked their doors. I would assume more people would probably use the option to try the door knob because it is easy access. So in around about way this would be encouraging people to try to open the front door.

In theory it sounds noble to help the witness data users, but the people that don’t offer this service probably have no interest in it. UNLESS they are talking about something personal to themselves. What would be the incentive to have out of band transactions? Who would need such a service? A large government that wants to go undetected? A military? A large corporation? Have people like you and I needed that service? I haven’t needed it. I just send on chain so I compete with everyone. Or is that a clue? Why wouldn’t anyone want to compete with high fees?

I am not trolling when I ask this question. What is the big deal with an unspendable UTXO? Isn’t a UTXO just a UTXO? As a matter of fact. Isn’t that similar to a double negative? An unspendable unspent transaction output. Please try to understand. Someone is trying to play us.

If I have a UTXO and I never ever send it anywhere isn’t that a (U-UTXO) unspendable unspent transaction output? Satoshi has UUTXO’s doesn’t he? It sounds technical to not want a U-UTXO, but in practice…… how do we know which UTXO are unspendable? When someone looses their keys with no backup isn’t that a U-UTXO? It’s just that no-one knows the UTXO is a U-UTXO. RIGHT?

Someone please tell me that I am off base.

#Bitcoin

#lightning

#BitcoinKnots

#BitcoinCore

#Noderunner

#TothebitcoinCEO

#mempool

#taprootwizards

#Ocean

#Datum

#bitcoinmining

#DIYBitcoin

#runanode

#runyourownnode

#donttrustverify

#Satoshi

Im not sure what you’re trying to tell me with the first bit of the post. Is it that no-one is currently making out if band transactions directly with miners? If so, considering that fees are currently so low, wouldn’t this mean that there is little to no demand for these types of transactions? And if there is no demand now why would that change if the OP_RETURN limit is removed?

I’m not an expert. All I can go on is what I have read and heard and form my own opinion. Write or wrong I just don’t see it as being that big a deal. As long as miners choose what goes into a block people are going to get non financial transactions onto the blockchain if they really want to.

All the JPEG spam stopped not because it was too hard but because it was too costly. I think the same economics will play out here.

That makes 2 of us. I am not an expert either I’m just looking for more clarification on how I see the issues they are dealing with. Thank you for being level headed and responding. I want to learn more. I am under the impression that I could be wrong and my mind will be changed.

People should definitely be able to get their non financial transactions into the chain. What I don’t understand is why does the op_return limit need to be taken away so the non financial transactions can get those transactions into the chain cheaper? Shouldn’t all transactions have to bid the same amount to get into the chain.

I don’t think they would necessarily be cheaper, they would still be competing with all other transactions.

Something Shinobi said on WBD (with a listen if you haven’t already) was that not having visibility about what’s going into a block can be an issue if you need to make a transaction ‘now’ If you don’t have a clear picture of the mempool you don’t know what you need to pay to get your transaction confirmed.

The start of the whole thing was to do with a layer 2 that needed 140 bytes in OP_RETURN rather than 80.

I will have to watch that asap.

I have started the WBD podcast, but couldn’t finish today. I will watch it and reply for sure. Thanks for sending the recommendation. My respect for Shinobi has gone up and I’m only 10 minutes in. He has already said that he didn’t read the Citrea white paper nor the pull request. He is going off of the information he has received from other developers. So far it is worth the watch. It’s not that inscriptions or jpegs bloat the UTXO set that he is worried about. They want this change specifically for Citrea. This doesn’t sound so sneaky anymore because it makes sense. There is a motive. I still will filter my nodes, but I understand why they want to push this. Doesn’t make it right nor wrong.

To make this post not so long and boring… I will try to summarize by making the blanket statement that both sides of this thing aren’t saying that they see things from the other side. I will do that now.

I understand what he is saying when he says “transactions will still end up in the blockchain.” I feel that any jpg, inscription, etc should be allowed in the chain. I also understand that my filter does not prevent it from being in the chain. I don’t want to speak for everyone out there. If another node runner wants higher limits, or lower limits, wants to fit 4mb pictures into a block then I welcome their choice and will defend their right to choose what filters they want. Where we diverge is that I want the choice. I don’t want Jameson, Peter, Shinobi, Luke, Shitcoin Mechanic (I only use that name because he used it during the debate,) WK057 or anyone else to tell me what settings I should have. Satoshi Gave me a way to have a choice and I want to exercise that choice. So when the few developers say that they are unilaterally deleting the choice…. I have to voice my concern and take appropriate steps to ensure that I have a choice.

Thank you for telling me about that video. I learned a lot and it cleared up the real motivation for them wanting to change and change so quickly. When I heard all 3 of them say “it doesn’t matter, but we are changing it anyway…” I knew there was more to the story. They are dealing with Citrea and they developed Clementine which needs the 140 instead of 80. I have no problem with that. My problem is that they tried to pull the wool over like people don’t think, or aren’t developers so we wouldn’t understand. They used the example of lightning or other layer 2 “maybe needing more op_return space in the future… Things weren’t adding up. Now is see… The developers want to help Citrea use 140 of op_return which is more expensive than 80 of witness, but is it more expensive than 80 of witness plus 40 of op_return? I don’t know that answer. Now I am just thinking out loud and rambling lmao

You've been lied to, but rambled on too long to respond to specifics

I know it was a lot from a non developer. I just believe in am passionate about your mission and projects. Thanks!

Core are being condescending pricks so everyone looks at you and this is what you have to say?

Some people are just confused because it is complicated. Telling them off doesn't help anyone but it does increase my conviction to not run knots on my node.

Homie, we need OGs like you to last. I recommend diet an exercise:

These 7 exercises are easy to do with almost no equipment and will work out almost every muscle in your body and give you a six pack.

1. Pushups

2. Bicycle crunches

3. Side planks

4. 45-degree donkey kicks

5. Bear crawl

6. Squat->Bicep curl->Overhead raise and lift heels (holding weight)

7. Dead hangs (work up to Pullups, do both)

True indeed. We need people like Luke here for reasons just like this.

I could use this routine. I might have to adopt this.

No Luke, he has not.

Liar

No u

I think a couple of these can be answered with single answers.

Nothing about what gets validated in blocks is changing, only what gets carried in mempool changes.

I disagree with core removing the setting even though I agree that for most the new default is correct and you shouldn't change it. They should have just updated the default.

RBF gets you nothing if every node drops the TX from mempool for op_return size. Right now only Libre would keep them but very few people run that.

You have total storage limit but also keep op_returns or not. If you drop op_return you get more blocks in your same storage already.

Go look at block health on mempool, every TX that was predicted but didn't make it was burned by incomplete mempool propagation throughout the network. Maybe that didn't matter for that TX but lightning justice TX count on a timelock for the first close and next block fees for the justice TX.

I had a justice transaction in my favor once.

Total memory size in mempool is different. Even at 1500 large op_returns will not be carried by Knots.

On further review, Satoshi did not use op_return. I was wrong. I did invoke Cunningham in my introduction after all. My apologies.

I agree. The attitude towards the node runners with questions is far worse than the change. They need to do better. If they are mad about the backlash, they should know it is a self inflicted wound.