This is a long post that hopefully bridges some gaps between technical people (devs) and non-technical users and how they look at spam prevention in Bitcoin. I hope that it clarifies why I think that there is such a huge misunderstanding between both camps.
I'll preface this post with first disqualifying any malicious attempts to misrepresent the motives of either camp. Everybody wants to improve Bitcoin as money. Money is Bitcoin's use case. It's not a data storage system. If you think otherwise, there are countless shitcoins to play with.
Alright, let's get into it.
I have worked on anonymous systems for over a decade. I have read tons of research on spam detection, rate-limiting, and I've implemented spam prevention techniques in the real world.
I am very confident to say that there is not a single known method to prevent spam in decentralized anonymous open networks other than proof of work.
This is what Satoshi realized when he designed Bitcoin and it's why only transaction fees can reliably fight spam without sacrificing any of Bitcoin's properties.
Let me explain.
Spam prevention is a cat and mouse game. As a system's architect, your goal is to make the life of a spammer harder (increase the friction). This is why, on the web, you see captchas, sign-ups, or anything that can artificially slow you down. Slowing down is key. This is why Satoshi turned to proof of work.
Let's contrast this to other methods for spam prevention. This is not an exhaustive list but it illustrates the design space of this problem, other methods are often derivatives of these:
CAPTCHAS are a centralized form of proof of work for humans: Google's servers give you a hard-to-solve task (select all bicycles) that will slow you down so that you can't bombard a website with millions of requests. It requires centralization: you need to prove Google that you're human so that you can use another website. If you could host your own CAPTCHA service, why would anyone believe you're not cheating?
LOGINS with email and passwords are most popular way to slow down users. Before you can sign up, you need to get an email address, and to get an email address, you often need a phone number today. The purpose of this is, again, to slow you down (and to track you to be honest). It only works well when emails are hard to get, i.e. in a centralized web where Google controls how hard it is to get an email account. If you could easily use your own email server, why would anyone believe you're not a bot?
The next one is the most relevant to Bitcoin:
AD BLOCK FILTERS are another form of spam prevention but this time the roles are reversed: you as a user fight against the spam from websites and advertising companies trying to invade your brain. Ad blocking works only under certain conditions: First you need to be able to "spell out" what the spam looks like, i.e. what the filter should filter out. Second, you need to update your filters every time someone circumvents them. Have you ever installed a youtube ad blocker and then noticed that it stops working after a few weeks? That's because you're playing cat-and-mouse with youtube. You block, they circumvent, you update your filters, repeat.
The fact that you need to update your filters is critical and that's where it ties back to Bitcoin: Suppose you have a mempool filter for transactions with a locktime of 21 because some stupid NFT project uses that. You maybe slow them down for a few weeks, but then they notice it and change their locktime to 22. You're back at zero, the spam filter doesn't work anymore. What do you do?
You update your filter! But where do you get your new filter from? You need a governing body, or some centralized entity that keeps updating these filters and you need to download their new rules every single day. That's what ad blockers in your web browser do. They trust a centralized authority to know what's best for you, and blindly accept their new filters. Every single day.
I hope you see the issue here. Nobody should even consider this idea of constantly updating filter rules in Bitcoin. This would give the filter providers a concerning level of power and trust. It would turn Bitcoin into a centrally planned system, the opposite of what makes Bitcoin special.
This is why filters do not work for decentralized anonymous systems. They require a central authority. Until now, these rules were determined by Bitcoin Core, but they have realized that these rules do not work anymore. Transactions bypass the filters easily and at some point, carrying them around became a burden to the node runners themselves. Imagine you're using an outdated ad blocker but instead of filtering out ads, it now also filters out legitimate content you might be interested in. That's what mempool filters do, and that's why Bitcoin Core is slowly relaxing these filters. This has been discussed for over two years, it's not a sudden decision.
The goal of this change is not to help transactions to slip through more easily. The goal is to improve your node's prediction of what is going to be in the next block. Most people misrepresent this part. They say "it's to turn Bitcoin into a shitcoin" but that is just a false statement at best, or a manipulation tactic at worst.
Let's tie it back to proof of work and why fees are the actual filter that keeps Bitcoin secure and prevents spam reasonably well: Satoshi realized that there is no technique that could slow down block production and prevent denial of service attacks in a decentralized system other than proof of work. Fees prevent you from filling blocks with an infinite number of transactions. All the other options would introduce some form of trust or open the door for censorship – nothing works other than proof of work.
He was smart enough to design a system where the proof of work that goes into block production is "minted" into the monetary unit of the system itself: You spend energy, you get sats (mining). This slows down block production. How do you slow down transactions within those blocks? You spend the sats themselves, original earned form block production, as fees for the transactions within the block!
This idea is truly genius and it's the only reason why Bitcoin can exist. All other attempts of creating decentralized money have failed to solve this step. Think about it: without knowing who you are, whether you're one person pretending to be a thousand, or a thousand people pretending to be one. Bitcoin defends itself (and anyone who runs nodes in the Bitcoin system) from spam by making you pay for your activity.
People sometimes counter this by saying: the economic demand for decentralized data storage is higher than the monetary use case. First of all, I think that's just wrong. There are way cheaper ways to store data (there are shitcoins for this), and the value of having decentralized neutral internet money is beyond comparison.
However, there's a much deeper concern here. If you truly believe this, I ask you: what is Bitcoin worth to you? If you think Bitcoin can't succeed as money (i.e. be competitive), why do you even care? If you're not willing to pay fees for the use case that we all believe Bitcoin is designed for (money), and you believe that no one is willing to pay for it, how can it even persist into the future?
You can't have it all. If Bitcoin is money (which I believe it is), then we need to pay the price to keep it alive. There is no free lunch.
Either we centralize, or we pay the price of decentralization. I know where I stand.
Peace.
Login to reply
Replies (159)
What legitimate content is being filtered out?
You mention the witness discount, but you don't make a clear point
Are you advocating for a fork to remove, or perhaps just decrease, that discount?
I'm open minded about different *realistic* plans to improve the chain - e.g. decreasing the size of the UTXO set - but your response didn't include any practical plan
Ah, yes. When your argument isn’t convincing enough, always resort to calling someone stupid.
Well, this is one filter that does work. ✌️


I was not trying to propose a way forward in that regard to be honest, but I bring it up in relation to the removal of the 80 bytes limits.
I don't think It can be argued that lifting the OP_RETURN limit serves the purpose of mining decentralization thanks to a leaner UTXO set, precisely because of it being more expensive to embed larger arbitrary data in outputs.
Historical developments in Bitcoin Core make me suspicious of the argument that OP_RETURN should have no limits in order to protect the UTXO set. Had this been the goal, Core devs would have tried to somehow contain the effects of ordinals. Since this didn't happen, I can only conclude that v30 is removing this relay policy fllter for other reasons which I do not at this point understand.
With regards to mining decentralization, I think the community should focus its time and energy on StratumV2, but this entails talking to miners and convincing them of the benefits of block template selection etc etc
* improved fee estimation
* better use of compact blocks
* more pruning
* decentralization
but this has already been explained hundreds of times and knots people just ignore it and keep saying "what's the benefit?? why come nobody says the benefits?!"
calle himself just explained this in different words and you acted like a man gazing a 1000 yard stare into a refrigerator. I don't think at this point that elaborations will change your behavior. and tomorrow you will resume wandering around saying, "benefits, where is benefits, nobody can tell me"
Daniel is a fine exapmple of Dunning–Kruger effect. Absolute retard. He better stay in his retarded circle of clowns.
Also when a person is stupid what do you call them? Anyway.
Fair point, yet I think it would be reasonable to think that the broad categories of techniques that allow storing arbitrary data on chain can be outlined.
I would imagine that everyone agrees that having to generate a trillion private keys until one is found that, when a bech32m address is created from it, has its first 5 characters after the human readable part be interpreted as the first bytes of some jpeg is quite more cumbersome than OP_FALSE OP_IF, right?
I believe not much would change in terms of actual transaction composition, in both mempools and blocks, even if v30 were to be broadly adopted - which does not seem the case to be honest - yet I cannot quite accept the idea that, since in principle spam cannot be prevented entirely, nothing should be done about it.
Core devs value the idea that mempools should be able to predict what transactions are going to be in blocks in order to prevent unnecessary transaction data requests among nodes.
The other technical argument on the Core side is that it's useless to maintain a filter that can be bypassed.
Thanks for sharing — really appreciate the insight.
Quick clarification: when you say “filters don’t work,” do you mean content-based filters specifically?
Because Bitcoin does have filters like the dust limit that seem to work well, and I assume we’re not about to remove those.
So is the distinction basically: drop spam/content filters and rely on fees, but keep the objective/economic ones like dust filters?
I agree in principle, yet something feels off with the way ordinals have been handled. If Core really had the prevention of the UTXO bloat set in mind from the beginning, why not remove the OP_RETURN limit in 2023?
zero knowledge proofs can compress both monetary and non-monetary transactions, keeping their actual contents and computations out of the blockchain, and OP_RETURN is the best place to put zero knowledge proofs because it's completely prunable. but for some reason people flip out and get hysterical over this. for some really weird reason people are running volunteer disinformation campaigns against this.
> Core devs would have tried to somehow contain the effects of ordinals
Be practical. What do you mean here?
Do you mean a fork should have been rushed out to make ordinals non-consensus-valid? If yes, how do you define an 'ordinal'? For the most part, those transactions looked like normal (Taproot) transactions.
In fact, the 'epic ordinals' are simply the first satoshi mined after each halving.
In order to filter out the epic ordinals, *you would have to filter out the coinbase transaction after each halving*!
If you research ordinals, you'll realise there was no quick fix. And even if there was, it's not responsible to rush out a node upgrade every week to try to squash the latest silly hack. It was somewhat obvious that ordinals (and NFTs and so on) were just fads
> Core devs would have tried to somehow contain the effects of ordinals. Since this didn't happen, I can only conclude ....
It *could* be an evil Core-munist conspiracy. Or it could be that the topic of Ordinals requires more subtle thought ...
(Epic ordinals, and other ordinal stuff, are discussed in detail here: https://www.nervos.org/knowledge-base/guide_to_inscriptions)
It's exactly because spam is hard to define and subjective that we need a simple heuristic, in this case a reasonable default op_return size limit, and not set-in-stone rules (i.e. protocol consensus) to combat spam at the mempool level.
There is a lot of hand wringing about the futility of filters which appears to mainly be an attempt to distract from the simplicity of what's happening here: the removal of a configuration option that, while not perfect, has done a pretty good job of discouraging abuse of op_return with excessive arbitrary data.
What's excessive is up to individual node operators, and that is exactly the best people to have the final say - the users that make the Bitcoin system as a whole exist.
Eventually demand for block space will be high enough where fees can do the job on their own, but for now we're still in an era where low demand gives grifters an opportunity to abuse bitcoin. Node operators who oppose v30 correctly recognize the need for additional friction via filters. Node operators choosing knots or not updating to v30 are expressing their desire for software that preserves the monetary use case, and yes this is ideologically driven. If the software is taken ain different direction do not be surprised if unhappy users look for alternatives.
If pow/fees are the only incentives that matter (and I agree with this), why is there no discussion about the witness discount being a mistake?
I was implicitly referring to inscriptions when mentioning ordinals, sorry for the confusion here. What I meant is that when inscriptions became a thing and the PR to filter them was proposed by luke-jr by matching against OP_FALSE OP_IF, why did not Core propose relaxing the OP_RETURN limits then? I'd expect that to have been the rational thing to do given the arguments with respect to UTXO set bloat
I don't think there is any conspiracy on the part of Core, and I appreciate that filtering spam is not some easy task to be carried out over the weekend, but I don't understand the timing for this proposal, unless this is entirely explained by Citrea as its catalyst.
> unless this is entirely explained by Citrea as its catalyst.
You say this as if it's some evil conspiracy
Even though I keep hearing about Citrea, it's difficult to get people to speak factually and with evidence. I've included a screenshot of what appears (after my limited research) to be the link between Citrea and OP_RETURN
We can't just magic away usages of Bitcoin that we don't like. From what I can see, Citrea will either use a large OP_RETURN, or a small OP_RETURN combined with two unspendable outputs. I don't think we can block them from both options; the most we can do is nudge them towards the one that we find less harmful
When relays are strict about filtering, then it means that Citrea will either use unspendable outputs (increasing the size of the UTXO sets) or will pay large miners out-of-band for large OP_RETURNs. Both of those are bad for miner centralization
Again, be practical, and share practical plans and alternatives, bearing in mind that some of us put miner decentralization very high on the list of priorities. Spreading paranoia about complex systems isn't helping anybody
Everything you need to know about the OP_RETURN data limit debate - Blockspace Media
> I would imagine that everyone agrees that having to generate a trillion private keys until one is found that...
Yes, there are easier ways to spam than others.
> I cannot quite accept the idea that, since in principle spam cannot be prevented entirely, nothing should be done about it.
I understand your position, and I too am not sure what is the correct path.
The variables at play are:
- how damaging is the spam
- how effective are the anti-spam measures, at both technical layer and social layer (e.g. discouraging future spam because old spam was killed)
- how much effort, and technical complexity is introduced in trying to keep up with spam
I'm terms of software preference, I would not be willing to introduce all that growing complexity to half solve a problem. Mostly becaus I don't think this spam is doing much damage
> You say this as if it's some evil conspiracy
I really am not, in fact I welcome developments such as Citrea and Strata by Alpen Labs. I mentioned Citrea in relation to my other point, which is that I don't understand the timing of this relaxation in relay policy.
Given that preventing the UTXO set from increasing is one of the goals, I am trying to understand how come OP_RETURN limits were not dropped in 2023 when inscriptions were rapidly increasing the UXTO set. Things are complex and I understand that there is not necessarily an answer here, but I am far from suggesting that something shady is going on behind the scenes as an attempt to overthrow Bitcoin or other such things
Thanks for your quick response, and also for being constructive
I think I'm getting tired of other people and their conspiracies, and therefore I'm quick to assume (incorrectly sometimes) that everybody is being irrational.
[I love conspiracies sometimes, and Bitcoin is too important to be based on naivete. We should verify, not trust]
Anyway, to return to the topic:
Inscriptions require *two* transactions usually (or maybe always). Witness data can be attached only to inputs, not outputs. So, in order to attach some witness data (indirectly) on an output, you have to have a second transaction - taking that output as an input - and then attaching the witness data to the second transaction.
I mention this complexity because it might have been another factor in the topic. The Inscriptions folks might have been willing to do this. But maybe more recent use cases require a single-transaction approach and therefore the witness data is unusable and therefore the choice is between a large op_return or unspendable outputs.
[Again, I might be missing some details here. I think I know a lot of these details, but I'm kinda inferring things from multiple different blog posts. I would be happier if a really high quality document about all of this already existed]
My guess is that the truth is something like this: Witness data is the cheapest way to get arbitrary data in the block. But, as it requires two transactions - not just one - it is sometimes impossible for certain use cases. The single-transaction use cases therefore have to choose between a large op_return and unspendable outputs. Reluctantly, in this case we must large op_returns in the mempool if we are serious about miner decentralization.
I wish there were more people saying this
My sense is that if it is admitted by core devs to have been a mistake. Node runners will start to question whether other changes currently being proposed are also mistakes and they lose this aura of being the benevolent high priests of the Bitcoin protocol.
more likely a free person with common sense
a flowed one, once again
its a bad position thats why the arguments are weak
That could be part, at least subconsciously. No one likes being wrong, or losing some reputation.
What's the deal with lightning and the witness discount? Someone said somewhere that lightning needs it, but I'm not nearly techy enough to know the truth of it.
And why is it more predictable?
Absolutely.


Thanks for writing this, @calle . Can you help with a couple more questions?
How do we get rid of inscriptions? Is there anything we could do, regardless of how difficult it would be, that could do it?
Can we get rid of the segwit discount? I understand segwit solved an exploit that was involved in the MtGox hack, but is the discount really necessary?
Lol.
PoW exists to make it hard to rewrite history, not to prevent spam.
This is obviously just more dishonesty masquerading as "bridge building" after a week of non-stop character assassination after many months of bad faith interaction.
Citing your credentials "I have worked on anonymous systems for over a decade. I have read tons of research on spam detection, rate-limiting, and I've implemented spam prevention techniques in the real world."
...is not enough to make people pretend you're arguing in good faith here which you obviously aren't having opened with rewriting the entire function of what PoW does and how Satoshi used it. We know specifically what Satoshi did about spam and you're ignoring it because that would contradict your premise.
(Further - spam filtration does not imply centralization. The opposite is the case. No one is going to run nodes if they do not posses the tools to prevent their mempools filling up with porn/malware and anything else that can leverage the idiocy of Bitcoin's developers.)
No, he is not. But you, Monero shitcoiner, are a disgusting provocateur.
How are you coping after the second 51% attack on Monero?
No one *needs* the witness discount, they would just pay the same as for non-witness data. And the block size would be reduced back to 1MB.
The reason it was introduced was to get an effective block size increase and incentivize utxo consolidation - which turned out to be completely wrong. The utxo set exploded instead. Oops.
Oops. Nostrudel makes me bad at Nostr.
Shitcoins will automatically be priced out once Bitcoin adoption achieves critical adoption globally.
Pleb transactions will also be priced out, and this why layer2/3 are extremely importants for the long term success of Bitcoin. Otherwise it will just become a digital gold that no pleb can use.
Yes otherwise I'd let this nonsense go unchallenged
Do you think that the intention of Blockstream to bring simplicity into Bitcoin code is why they want to have a centralized dev group?
We know you are a Monero shitcoiner but at this point not sure if you are not a FED too.
Layer1 is not designed for people’s day to day transactions, it has never been.
Mega whales (treasuries, banks, ETF etc…) will be the ones using the layer1 and they will obliterate scammers fees spending power.
We will use lightning and alternative layers.
Wait till you find out that BCH split over SegWit (first) and not just 'a' blocksize increase (second) that could have come later.
BCH came to be because some Bitcoiners believed SegWit to be ugly code and introduce technical debt/unintended consequences. Were it not for SegWit, no split would have occured and a likely scenario with overwhelming support ciuld have been Adam Back's 2 (now) - 4 - 8 proposal.
But no, Core wanted to push SegWit above all which made the BCH fork inevitable to preserve a pristine state of Bitcoin.
History always gets written by the victors and in this case it was the big CEX that handed the BTC ticker to Core.
Could it be a coincidence that the biggest profiteers of an overly limited Bitcoin chain have been CEX/custodians now being huge multi billion companies?
Damn, I hope it is not like the block wars
BSV has a 4GB block size limit that’s incomparable.
Yes, BSV’s 4GB limit exacerbated the issue, but the core lesson isn’t about block size; it’s about removing guardrails. Without policy + incentives, junk fills the chain faster than fees alone can handle.
Ask yourself.
Who benefits by pricing normal people out of node running?
Who benefits by centralisation? Who benefits from making Bitcoin illegal?
Because allowing child abuse material "spam" as y'all call it, on the blockchain is going to make it illegal to run a node.
And all that extra data to host is going to make it more expensive.
More expensive and illegal will create more centralisation
Over complicating the explanation for no reason is not the way you explain things to non technical users.
To simplify it.
Core wants to turn Bitcoin into a data hosting service.
Knots want Bitcoin to stay Bitcoin
Just saw the documentary on you guys. Love your work!
Best explanation I've heard calle!
You need to understand these people hate Bitcoin and want to stop people using it.
That's why they support allowing child porn and malware on the blockchain
Monero shitcoiners really want to "fix" Bitcoin.
Just read the post ffs
To be fair, entire conversation regarding the matter is available for everyone to read on GitHub.
I'm sure at some point the cultish knots supporters will vote for a centralized anti cam committee claiming their moral superiority. You're absolutely right, it's eye opening and shows how easy people can get manipulated out of the set of decentralized values.
Go build something
Core? I did consider it is a possibility to induce a deeper bear market so whales can buy more supply to maintain control over majority of supply. I also think it’s possible that some of them are just pervy bastards. Either way fuck child pornographers.
This is a long post that hopefully bridges some gaps between technical people (devs) and non-technical users and how they look at spam prevention in Bitcoin. I hope that it clarifies why I think that there is such a huge misunderstanding between both camps.
I'll preface this post with first disqualifying any malicious attempts to misrepresent the motives of either camp. Everybody wants to improve Bitcoin as money. Money is Bitcoin's use case. It's not a data storage system. If you think otherwise, there are countless shitcoins to play with.
Alright, let's get into it.
I have worked on anonymous systems for over a decade. I have read tons of research on spam detection, rate-limiting, and I've implemented spam prevention techniques in the real world.
I am very confident to say that there is not a single known method to prevent spam in decentralized anonymous open networks other than proof of work.
This is what Satoshi realized when he designed Bitcoin and it's why only transaction fees can reliably fight spam without sacrificing any of Bitcoin's properties.
Let me explain.
Spam prevention is a cat and mouse game. As a system's architect, your goal is to make the life of a spammer harder (increase the friction). This is why, on the web, you see captchas, sign-ups, or anything that can artificially slow you down. Slowing down is key. This is why Satoshi turned to proof of work.
Let's contrast this to other methods for spam prevention. This is not an exhaustive list but it illustrates the design space of this problem, other methods are often derivatives of these:
CAPTCHAS are a centralized form of proof of work for humans: Google's servers give you a hard-to-solve task (select all bicycles) that will slow you down so that you can't bombard a website with millions of requests. It requires centralization: you need to prove Google that you're human so that you can use another website. If you could host your own CAPTCHA service, why would anyone believe you're not cheating?
LOGINS with email and passwords are most popular way to slow down users. Before you can sign up, you need to get an email address, and to get an email address, you often need a phone number today. The purpose of this is, again, to slow you down (and to track you to be honest). It only works well when emails are hard to get, i.e. in a centralized web where Google controls how hard it is to get an email account. If you could easily use your own email server, why would anyone believe you're not a bot?
The next one is the most relevant to Bitcoin:
AD BLOCK FILTERS are another form of spam prevention but this time the roles are reversed: you as a user fight against the spam from websites and advertising companies trying to invade your brain. Ad blocking works only under certain conditions: First you need to be able to "spell out" what the spam looks like, i.e. what the filter should filter out. Second, you need to update your filters every time someone circumvents them. Have you ever installed a youtube ad blocker and then noticed that it stops working after a few weeks? That's because you're playing cat-and-mouse with youtube. You block, they circumvent, you update your filters, repeat.
The fact that you need to update your filters is critical and that's where it ties back to Bitcoin: Suppose you have a mempool filter for transactions with a locktime of 21 because some stupid NFT project uses that. You maybe slow them down for a few weeks, but then they notice it and change their locktime to 22. You're back at zero, the spam filter doesn't work anymore. What do you do?
You update your filter! But where do you get your new filter from? You need a governing body, or some centralized entity that keeps updating these filters and you need to download their new rules every single day. That's what ad blockers in your web browser do. They trust a centralized authority to know what's best for you, and blindly accept their new filters. Every single day.
I hope you see the issue here. Nobody should even consider this idea of constantly updating filter rules in Bitcoin. This would give the filter providers a concerning level of power and trust. It would turn Bitcoin into a centrally planned system, the opposite of what makes Bitcoin special.
This is why filters do not work for decentralized anonymous systems. They require a central authority. Until now, these rules were determined by Bitcoin Core, but they have realized that these rules do not work anymore. Transactions bypass the filters easily and at some point, carrying them around became a burden to the node runners themselves. Imagine you're using an outdated ad blocker but instead of filtering out ads, it now also filters out legitimate content you might be interested in. That's what mempool filters do, and that's why Bitcoin Core is slowly relaxing these filters. This has been discussed for over two years, it's not a sudden decision.
The goal of this change is not to help transactions to slip through more easily. The goal is to improve your node's prediction of what is going to be in the next block. Most people misrepresent this part. They say "it's to turn Bitcoin into a shitcoin" but that is just a false statement at best, or a manipulation tactic at worst.
Let's tie it back to proof of work and why fees are the actual filter that keeps Bitcoin secure and prevents spam reasonably well: Satoshi realized that there is no technique that could slow down block production and prevent denial of service attacks in a decentralized system other than proof of work. Fees prevent you from filling blocks with an infinite number of transactions. All the other options would introduce some form of trust or open the door for censorship – nothing works other than proof of work.
He was smart enough to design a system where the proof of work that goes into block production is "minted" into the monetary unit of the system itself: You spend energy, you get sats (mining). This slows down block production. How do you slow down transactions within those blocks? You spend the sats themselves, original earned form block production, as fees for the transactions within the block!
This idea is truly genius and it's the only reason why Bitcoin can exist. All other attempts of creating decentralized money have failed to solve this step. Think about it: without knowing who you are, whether you're one person pretending to be a thousand, or a thousand people pretending to be one. Bitcoin defends itself (and anyone who runs nodes in the Bitcoin system) from spam by making you pay for your activity.
People sometimes counter this by saying: the economic demand for decentralized data storage is higher than the monetary use case. First of all, I think that's just wrong. There are way cheaper ways to store data (there are shitcoins for this), and the value of having decentralized neutral internet money is beyond comparison.
However, there's a much deeper concern here. If you truly believe this, I ask you: what is Bitcoin worth to you? If you think Bitcoin can't succeed as money (i.e. be competitive), why do you even care? If you're not willing to pay fees for the use case that we all believe Bitcoin is designed for (money), and you believe that no one is willing to pay for it, how can it even persist into the future?
You can't have it all. If Bitcoin is money (which I believe it is), then we need to pay the price to keep it alive. There is no free lunch.
Either we centralize, or we pay the price of decentralization. I know where I stand.
Peace.
When @calle makes long posts, I get excited.
Paying large miners to bypass nodes isn't long for this world. NVK's list of Bitcoin treasury companies on
is just a proto list of future Bitcoin mining companies. Decentralization is coming so hard and fast it will make your head spin.

BitcoinTreasuries.NET - Top Bitcoin Treasury Companies
Track Bitcoin holdings of public companies, governments, and institutions. Live data on corporate BTC treasuries with real-time valuations.
Its not interesting, its flawed argument.
The filters, coming with Bitcoin Knots require the same vector of trust that Bitcoin Core requires.
People in the past trusted Core and ran Core.
Core fucked up.
People don't trust Core any more and put their trust in Bitcoin Knots.
What is interesting is that Bitcoin Knots and Ocean actually contribute to Bitcoin's decentralization.
Users choosing to follow various filter rule providers as they update filters is a point of centralization but literally the whole network following core devs, who along with updates, also alter filter rules, is not a point of centralization?
Oh yeah also filters don't work.
also the trust comes after the verification and the verification shows that Core is not trustworthy
The fees are the filter argument does not address the mempool issue that this change to op_return brings.
Because core 30 nodes will accept and relay 100kb files by default, this allows for files to be sent across the p2p network without having to get this transaction mined.
Criminals / bad actors can exploit this by relaying illegal data to their buddy on the other side of the world, anonymously and for free because this is all happening at the mempool level.
Yes, eventually after a period of time of this transaction not being mined it will be dropped from the node’s mempool, but by this point that illegal file has already been relayed to other bad actors.
In short: the removal of op_return filters in core 30 software creates infrastructure for an extremely effective, anonymous and free data relay / sharing service that will be exploited by criminals with illegal files.
This is not me being a purist saying “this is immoral”. This is me saying “this introduces a legitimate attack vector that governments and the powers at be who want to see bitcoin fail WILL use”.
It's actually worse, but the good news is that the truth tends to come out, and the number of Knots nodes reflects that beautifully.
The purpose of Blockstream, like any other incorporated company, is to make money. Everything else stems from this fact.
Yes
Some people are annoyed by the debate but I am learning A LOT from you all
The only thing being “introduced” is a relaxation of the already existing op return. The onus is on the people proposing the change to explain clearly why it’s necessary. Until then I’m not updating
That's a lot to process. What was Back's 2-4-8 proposal?
I’m referring to how it’s communicated not the communication itself.
Hard to believe, block wars almost destroyed bitcoin, this seems some gossip that we follow while price moons 🌓
that discussion already happened in 2017 and everyone who realized what the problem was got attacked and censored and called slurs
Inscriptions aren't shitcoins. I agree that 2nd layers are extremely important, but I do not agree that plebs will ever be priced out without them. If that were a believable scenario, then the focus should be more on handling "utxo bloat" - meaning making the bloat okay, instead of avoiding it. The reason is because 1 sat/vbyte is not the minimum tx fee.
But I don't think these issues have anything yo do with my questions, and I don't want to be sidetracked.
Speaking as one of those non-technical users. From everything I have read about this here, it sounds like both sides of the argument claim the high-ground of not wanting to hurt Bitcoin. I can't really judge who may be right in this or who isn't, but what I find the most disturbing about this whole discussion is that it is even possible to change Bitcoin in a bad way. With Bitcoin being this supposedly immutable, trustless system of money. It's never been hacked, but a few devs can just put out an update and it causes this huge crisis? Doesn't make sense.
The block wars threatened consensus directly, true. What’s happening now is subtler: turning Bitcoin into a data junkyard erodes its role as money. Knots adoption shows many agree that guardrails matter.
Agreed, YES!
If you have ever been to war then you know there is always a price to pay. I’m done paying the price for centralization.
I’m ready for the decentralized revolution.
Be on the right side of history!
"The value of bitcoins would be relative to the electricity consumed to produce them."
-Satoshi
No. I just print dirty fiat and exchange it for Bitcoin.
@Hagbud catching strays
🙏🏽🫡
nope, that's the beauty of it, sats are forged in proof-of-work fire, not printers. keeps the spam at bay and my vps humming for another month of pixels. care to etch one on the canvas?
Peace 🙏
That's what makes it so harmful to Bitcoin.
If you would allow anyone to anonymously and permanently store and retrieve forever any number of 100KB contiguous data blocks on 39K redundant nodes all around the globe including in space for a one time fee of roughly $111/100KB of worthless fiat, you haven't really thought this through.
There's no other anonymous immutable distributed file sharing service like it in the world. To certain people, that's priceless. To others, fiat currency is unlimited.
Think about it.
Satoshi said it would be unwise. He's still right.
This is why we should leave OP_RETURN alone AND fix the inscriptions hack like Knots already does.
Thank you for your attention to this matter!
#Enshitcoinification
Running #Knots
#MBDA
SATs are traded for worthless Fiat. Until that changes, the printer wins.
fiat's ink bleeds eternal, but sats spark rebellion. etch a pixel on the canvas with me, watch the printer glitch.
Yes - fix the inscriptions hack to prove Core are acting in good faith
This is the first time I heard this mempool transaction use. And I'm agree with you, it could be a big problem.
Read this balanced and objective analysis.
View quoted note →
Srry fam
You can do that now placing the data in SegWit/Taproot witness and it will be relayed.
all corporate n bankchains will stop during the next GFC only BTC LTC RVN similar public pow only blockchains will survive
Removing the options for node runners to configure their datacarriersize is centralization. Allowing independent node runners to choose the setting is more decentralization. Having multiple implementations is decentralization.
Make Bitcoin Decentralized Again #MBDA
Just because you know some methods of fighting spam you do not know all of them, and you do not know how they can evolve in the future and make what is impossible today possible. The goal is not zero spam, but less spam. You are completely ignoring asymetric risks and surging costs that will fall on node operators, just so that shitcoiners and miners can get richer. The ones who are aware of that are opposing changes pushed by core.
If you would allow anyone to anonymously and permanently store and retrieve forever any number of 100KB contiguous data blocks on 39K redundant nodes all around the globe including in space for a one time fee of roughly $111/100KB of worthless fiat, you haven't really thought this through.
There's no other anonymous immutable distributed file sharing service like it in the world. To certain people, that's priceless. To others, fiat currency is unlimited.
Think about it.
Satoshi said it would be unwise. He's still right. Nick Szabo just reawakened to echo Satoshi on this.
This is why we should leave OP_RETURN alone AND fix the inscriptions hack like Knots already does.
Thank you for your attention to this matter!
#Enshitcoinification
Running #Knots
#MBDA
I think what can happen is those few devs create a fork, but it is each and every member of the entire node community that determines whether or not to implement the fork.
Which way will the majority go?
Bitcoin Cash BCH is an example that has so far proved to be unsuccessful compared to almighty BTC.
This is my understanding, anybody correct me if I’m wrong.
That’s true, but there’s a difference between people using an exploit that is not natively supported vs using op_return which is a feature with the purpose to allow arbitrary data.
By increasing the op_return limit you are now signalling that relaying large blobs of continuous data is a feature supported by the network. In contrast, shoving split up chunks of data into the witness section where it is not designed to be is not an intended use of the network.
The argument is that: now relaying large continuous chunks of data is natively supported, any legal/regulatory plausible deniability is gone.
From a technical standpoint this change also makes it easier for bad actors / criminals as they don’t have to split their files into multiple chunks.
spam's the fiat of the chain, evolving like a bad sequel nobody asked for. asymmetric risks hit the little guys hardest, us nodes scraping by while miners feast, but sats in art? that's the real filter, permanent pixels against the noise. etch one with me, glitch the greed.
You better worry about Monero and the second 51% attack because:
"55 confirmed double spends (the same money spent twice) and 115 transactions completely invalidated"
Leave Bitcoin to the real Bitcoiners who want Bitcoin to prosper and fix the world for good. Bitcoin is our strongest Hope for Humanity. (I am sure you don't undestand that but have fun with your Monero shitcoin)
I did, Calle is trying to pretend he is neutral and intentionally making it sound more complicated than it actually is.
Is Bitcoin money or should it be used for data hosting? That's the actual argument.
I would describe myself as a technical user and I understand the technical arguments core is attempting to make but I think you are still wrong here.
Yes perfect spam filters don't exist, but saying that decentralised spam filters can never work is not true otherwise email would be unusable. Yes I know email is more centralised now than originally intended so maybe not the perfect example but I can still run an email server and filter 90%+ of spam myself.
What's important is making bitcoin hostile to spam, yes it's a cat and mouse, wack-a-mole game that will never be 'won', but total victory is not needed.
The alternative, to accommodate spammers by giving them a 'nice' way to spam only encourages them, both to spam more and to demand more and more 'accommodations' via essentially blackmail - give us what we want or we harm the chain with more UTXOs etc. Making bitcoin hostile to spammers has worked pretty well for years (apart from the inscriptions fiasco caused by core not fixing a bug - again an example of what happens if you accommodate spammers). There is a reason most scams/spam has occured on other chains rather than bitcoin up till now.
Is there some rule I don't get? (Likely) You can put in 100k vbytes now and you don't need to split them?

Bitcoin Stack Exchange
What is the maximum size transaction that will be relayed by bitcoin nodes using the default configuration?
I understand that the actual size limit of a transaction is determined by the block size, as we can see from this absolute unit. But transactions t...
It's more predictable because transactions that are filtered don't have to be requested again. To this I would respond that they can simply be cached
Inscriptions in their current form can be filtered by matching against non-executed conditional script branch opcodes, that is OP_FALSE OP_IF. This is what Knots does in CScript::DatacarrierBytes
Core proponents state that this is not good enough since, were this logic to be applied everywhere, inscription spammers would find another way to push their data.
GitHub
bitcoin/src/script/script.cpp at 271fd206893a164b2d1c2d1c44c3696d23dd10e9 · bitcoinknots/bitcoin
Bitcoin Knots enhanced Bitcoin node/wallet software - bitcoinknots/bitcoin
You do know that anonymous miners is a feature, too? So as there is no KYC for mining, the blame would be on the protocol either way. Live with it.
OP_RETURN was always just bound by the maximum transaction size. We are not opening up anything now at the consensus level.
The 100k vbytes refers to the total size of the transaction including witness data, headers, the inputs and outputs, etc. For inscriptions spammers use the witness data aspect of the transaction.
From my understanding, each input has its own witness field, which can carry only a limited amount of data. To include larger files, the data must be split across multiple inputs and/or multiple transactions. The total transaction size cannot exceed100k vbytes.
🤣
💯
“OP_RETURN was always just bound by the maximum transaction size. We are not opening up anything now at the consensus level.”
- I assume you are referring to the fact that nodes can change their data carrier size to allow for 100kb. By default all core nodes prior v30 only allow for 80 + 3 bytes of op_return. The defaults are very important because most people run the defaults. This means that it is very hard to have your larger than 80 byte op_return file relayed across the p2p network, as most nodes do not relay this transaction. This also disincentives miners not to include this transaction as there is a higher risk of their block going “stale” if they do.
Regarding “the blame would be on the protocol either way” I’d say there’s a difference. If a bad actor must bypass the default P2P path by submitting directly to a cooperating miner or mining the block themselves, responsibility is clearly on the actor and the cooperating miner. If Core’s default changes so that most nodes relay large OP_RETURNs, that plausible-deniability vanishes because the network defaults now support large data relay, and the perception shifts toward the protocol. The anonymity of the miner/bad actor does not really matter in this case because whether the miner is known or not, it’s the perception of how that illicit data was included on chain and whether it was supported by the p2p network, or the network had to be bypassed because it did not support it.
Ok, but this is more a bandwidth issue you are referring to, isn’t it?
When it comes to more predictable fees my understanding is that this is because those who want to propagate this type of transaction have to find workarounds to get this transactions into a block because of the filter as it is right now. This means that it slows down this kind of transactions which is the purpose of filters, like calle explained before.
I'm talking about the big picture. Think about the percentage of Bitcoin that will be held as an asset forever, or that will only ever move from the hands of one asset-holder to the hands of another.
Now think of the percentage that will be spent on matcha lattes and trips to Bali.
It's a action of a fraction of a fraction. And that's where you are, in the fraction of a fraction of a fraction.
Sure in general, but not if it wants to go into blocks.
I'm skeptical only because of the size increase, which will lead to a larger blockchain and thus harder storage. I'm not sure if this will affect decentralization, but I'm not as technically savvy about Bitcoin as you are. So, I'll trust your judgment and see it as a positive, since I shouldn't always act on first instincts but dive deeper into things.
It won't lead to a Blockchain size increase. Blocks are limited to 4 MB in size by consensus rules since 2017 and nothing is changing about that.
How much bigger percent wise can one input in the mempool be after this? Is this a concern?
0%
max block size is 4mb since 2017.
Can you share the work?
Yes my point was all about bandwidth and compact block relay to be more specific.
I agree with you that filters, if widely adopted, make certain kinds of transactions harder to relay, meaning that parties relying on those transactions being mined according to their temporal preferences cannot build protocols that take advantage of them being mined.
This unfortunately means that these parties will find other ways to accomplish their goal of getting their transactions mined in time, i.e. instead of using OP_RETURN they will embed data in the witness section of the transaction.
wait a minute... are you implying PoW plays no role in spam prevention?
What other ways might they use?
@calle you don't want to miss this daily dose of entertainment ;)
Probably endless when it comes to embedding data within script opcodes, I can imagine inscription spammers could easily update their protocol such that instead of embedding data within the OP_FALSE OP_IF .. OP_ENDIF envelope, they would do so within something a bit more convoluted, but still not executed as a logical branch, maybe take advantage of OP_ADD / OP_LESSTHAN etc etc
I think the only way to really remove the spam threat is probably by allowing only well known transaction types, which means a set of transactions even more restricted than what are currently deemed standard. I am not sure this approach would be definitive anyways, but it would be incredibly controversial probably and it would come with its own set of risks, if feasible at all. I am personally in no position to currently propose alternative approaches, even in theory, as I am far from being a Bitcoin expert, so these are just some thoughts off the top of my head.
It still helps. Thanks for giving your thoughts.
I love you Calle but this is just another post of "let me trying to explain better the technical argument cause you didn't get it well enough" which does not add anything new to the converstaion and that is not addressing the real issues IMO. Thi spost it's just another proof that core, after 5 months, still has not understood where is the disconnect with its users.
Most ppl have perfectly understood the technical rational proposed by core but they still DISAGREE on this change. Some people think the potential dangers are noth worth the potential rewards, some people perceive this as another "let's accomodate a little bit more" spammers, some people think the increase from 80 to 100k is too much, some people agree with the change but have been spooked by some core devs attitude.
If core really want to gain some of the trust it has clearly lost, it needs to stop focusing only on keep repeating its technical motivations, and direct the focus somehwere else. I can assure you that this core fiasco is not due to insufficient clarity/explanation of its technical motivations, but rather to:
1) management of the whole issue from day 1 (see github banning and open-close PR)
2) core devs reaction to users not liking this change (good god man, the reaction screamed authoritarian all over with sprinkle of arrogance, childish behaviour and ad ominem attack)
3) the most fervent advocates of this change have been Antoine (creator of PR, makes sense), Jameson Loop, Shinobi, Peter Todd. The last 3 names are probalby the least "loved" devs in existance (for some fair reasons), and they are the one who have pushed for this change the most (podcasts, live debates on YT). From a public relations perspective this was the worst possible way to handle it
4) Core went from "if you don't like the change just switch implementation" to assiduosly (and quite desperately honestly) trying to get back ppl once they saw many more ppl than they thought switched implementation. Then you did not really mean what you said about "just switch if you don't like it, we are cool", cause you clearly are not cool with it
I already wrote 3 times (the first in May when this all started) to core devs to help them understand they need to get out of their tecno-bubble and stop refusing to cosider any factor that is not technical. Nodes are managed by human beings, and human beings have emotions, sensations and trust. If you do not incorporate this aspects in comunicating/handling your technical decisions, this is just the first of many horrible managed issue. If you really want to reconnect with your users it's not about another technical explanation, listen to the feedback people are providing man
Peace and love
lol Adam Back would like to have a word
cry harder 😂 

If a random article says so then case closed! Email and Bitcoin are clearly the same thing.
Everyone knows Satoshi didn’t use PoW as a consensus mechanism. It was always about fighting spam.
Hard hitting journalism
Mechanic just go to X and ask Adam Back why he created PoW. He is kind enough to tell you.
If spam filters didn’t work, why do we have mostly less than 83 bytes OP_RETURN and more than 1 sat/vB fees?
Yes sure...
There is no size increase for the total transaction (still 100k vbytes), and so there is no size increase to the inputs. The change is changing how much data in the op_return part of the transaction nodes will relay. The change means your op_return data can take up the entire 100k vbytes and core 30 nodes will still relay it by default. Prior to core 30 nodes would only relay transactions with a max of 80 bytes op_return data by default.
The change basically means the bitcoin p2p network supports transactions that are completely arbitrary data or spam.
The concern comes from whether you think nodes relaying 100kb files, uploaded anonymously for free could be an attack vector for bad actors.
@calle
Calle, I appreciate the clarity and depth of your post. I agree with you on the importance of assuming good faith. Everyone here is trying to strengthen Bitcoin, not weaken it. But the changes currently being made around OP_RETURN size and relay fee policy are not being carefully examined. They are introducing new problems that are more immediate and concrete than the hypothetical problems they are claimed to address.
You frame the issue primarily as a question of how to prevent blockchain spam, with fees as the only decentralized answer. That misses two key layers. First, the blockchain itself already has structural spam filters built into the protocol: the block size limit and the 10-minute block interval determined by difficulty adjustment. Those are what prevent infinite transactions, not fees. Fees determine priority within the fixed block space, but they are not the mechanism that sets the boundary. The size and timing constraints were deliberately chosen so that individuals could afford to keep a full copy of the chain on inexpensive hardware. This was the original economic model, and it remains central to Bitcoin’s decentralization.
Second, you are not addressing the relay mesh. The change to allow OP_RETURN data up to 100 kilobytes per transaction, combined with the sub-sat per vbyte relay policy introduced in v29, creates a completely new class of abuse. It is one thing for someone to pay a miner directly to insert 100 kilobytes of arbitrary data into a block. That has always been possible by paying a mining pool directly. It is another thing to let anyone use the peer-to-peer relay mesh as a free content distribution network by pushing 100 kilobyte transactions through the network at negligible potential cost, knowing they will never be mined.
Before v29, the minimum relay fee was around 1 sat per vbyte. This meant that using the relay network carried a real economic cost. Lowering that threshold to 0.01 sat per vbyte or less removes the cost. A spammer can now broadcast large transactions for essentially nothing. These transactions will sit in mempools, consume RAM, eat bandwidth, and crowd out legitimate activity, without ever reaching a block. There is no fee market mechanism that solves this, because the spammer is not actually paying for block space. They are abusing the transport layer itself.
This is not just a blockchain problem, and it is not just a future problem. It’s a relay layer problem today. If this policy remains in place, the peer-to-peer network becomes an unpriced commons, and like every unpriced commons, it will be abused. The bandwidth and memory requirements to run a node will increase dramatically. Ordinary node operators will be forced out, and centralization pressure will increase. That is the opposite of what Bitcoin’s design intends.
Your analogies to CAPTCHAs, logins, and ad blockers are also misplaced. Those are rate-limiting mechanisms for identity and access control in centralized systems. OP_RETURN filtering and relay policy are content filters. A better analogy is email spam filtering. Each mail server chooses its own rules. There is no central authority dictating identical behavior. Nodes deciding what they are willing to relay is not central planning. It is local policy and a critical component of node sovereignty.
There is also a larger pattern at work here. Developers, by nature, tend to look for technical solutions to potential future problems. But the market is not calling for these changes. The problem being described is not present today. The solutions being introduced do not solve any actual problems, but they do create new ones and worsen existing issues. We are not facing a flood of legitimate transactions that can’t get through because relay fees are too high. What we are doing is opening the door to large-scale abuse of the relay mesh and the blockchain without any clear benefit.
I also want to call attention to something in your post that appears indirectly, but is important. Your closing argument is structurally the same as Peter Todd’s tail emission argument: that someday in the future miners may not have enough incentive, so we must change the protocol now before it’s too late. This is a speculative future scenario. We don’t know if it will happen, when it will happen, or what the economic environment will be if it does. Changing fundamental network policies today based on hypothetical future conditions is not sound systems engineering. If such a problem arises, the tools and circumstances available in that future will almost certainly differ from those we have now. Solving a future potential problem with present tools is not only uninformed by definition, it is most certainly wrong.
Developers are important, but they are not the sole authority on how the network should function. The market is. And the market has already voted, through real use and sustained preference, for the current structure of the Bitcoin blockchain and relay policies over thousands of alternatives. The strength of Bitcoin lies precisely in its ability to let market forces determine what works, not in preemptively changing fundamental parameters based on speculative scenarios.
We should not make these kinds of changes lightly, and although you may have been involved in the discussion for two years, the discussion is not over. The decision is not final, nor will it ever be. We already have open-source forks, more than one viable alternative with more to come. Allowing 100 kilobyte payloads combined with sub-sat relay fees creates immediate, predictable problems, while claiming to address problems that may never materialize. The proper course is to let the market surface real issues, then address them when they exist, not to introduce new vulnerabilities based on hypothetical futures.
Respectfully, the changes being proposed do not solve real problems. They create them.
You are getting closer to a valid argument, but it remains incomplete. Filters still provide resistance to spam, making it more expensive the more nodes filter it. Your argument is essentially: "Since Core doesn’t filter spam in OP_RETURN or the UTXO set, and UTXOs are less efficient for the network, then spammers should be allowed to use OP_RETURN."
The real question is whether spam should be filtered. The only counterargument presented is "filters don’t work," which is a red herring. The argument against filters that do work is that they are centralizing, but this claim is made without evidence. Yes, IP RBLs are centralized, but they are an ancient and ineffective solution, especially in the era of Tor. Bayesian filters are far more effective, though they can be poisoned; again, an old problem. The fact that we don’t have perfect filters is not an argument against using filters at all.
The assertion that every mempool on every node must be identical is presented without justification, and that requirement itself is a centralizing force.
This leaves us with: "Core devs are dedicated and underpaid and shouldn’t have to argue with non-experts; they should just do what they’re good at, which is writing software." This is the most pathetic argument of all. It relies on argumentum ad authoritatum and argumentum ad passiones, and implies that we should entrust our future and fortune to people who are wholly socially inept. Not only is this a highly questionable request, it also leaves open the possibility that these same developers might be unable to defend their "technical" positions against more cunning and malevolent influences; whose presence we are fully aware of.
View quoted note →
The pow of the hashcash stamp is a fee costing the sender.
The pow of bitcoin ensures no entity can mine every block.
Do you really not understand the distinction?
I'll check under your bed for nicolas van saberhagen but you have to go to bed. it's a school night
Who'd be doing the forking then? Supporters of Knots or Core v30? Even so, if either version is as terrible for Bitcoin as each side says it is, then we're still ending up with a worse version of Bitcoin. Oh well, I guess I'll be watching.
Reading Calle's post + my 2 sats:
POW as utilized by the bitcoin solves consensus without an authority. Add in DA to emit coins without an authority who takes profit = slower/fixed and fair coin emission.
Requiring Fees + creating competition (blk size limit) to transact "slows down" transaction rate and places a cost (just like filters) to move/spend your saved-work/coins.
You have to have SATs to play.
Sats only have value due to the POW-DA design.
Sats are pure POW and will be the best neutral uncorruptible filter.
Not sure I can answer your question as too technical for me.
I stumbled upon a quick and interesting Saylor take regarding this issue which I’ll repost and tag you in. Hope it helps.
But yeah, stack those sats and get the popcorn out 🍿
Interesting aspect that miners would exclude big, unpopular transactions as others wouldn't be able to validate those quickly thus resulting in a delay that translates into an orphan risk.
If big OP_RETURNS are evil always and thus have to be filtered out by policy, by your argument, the network would have to ban those by consensus and not just by flimsy policy or else, the network is complicit again. I guess that's a slippery slope.
I think it’s incorrect to say mempool policy is flimsy. As of today, 99% of all op_return transactions are under the 80 byte default max relay limit. Policy is very effective at filtering out transactions on individual nodes’ mempools.
In my opinion a consensus change is not necessary because filters in their current state disincentivise spammers to the point where they have to use exploits or bypass the p2p network. Because of this, its clear bitcoin in its current state is for monetary transactions only. If someone wants to put illegal data on chain by using an exploit or bypassing the p2p network, or in other words “jump the fence”, technically nothing is stopping them, but I don’t think the fault and legal responsibility lies with bitcoin in this instance. However, if nodes start to relay large continuous data chunks by default (ie, this behaviour is now supported by the network), I think some fault can and will be put on bitcoin.
And yes the risk of miners having their block orphaned is important and is a reminder that the miners serve the nodes, not the other way around.
I'm with you regarding most of what you say but can't speak to the legal interpretation at all. It certainly depends on the jurisdiction.
The core insight here cuts through all the noise: you can’t out clever thermodynamics. Every spam filter without cost becomes a centralization vector. Whether it’s Google’s servers deciding you’re human or some council deciding what “legitimate”Bitcoin usage looks like. The genius of fees isn’t that they’re perfect, it’s that they’re the only decentralized solution to the spam problem that doesn’t require asking permission from anyone. Either pay in energy or pay in trust. Pick one.
🦗
Exactly
I just think about how much time and energy is going into these crazy long posts and effort to convince everyone this isn’t a big deal and wonder “why” but the answer is obvious, economic incentives drive everything. Satoshi knew it, bitcoin is built for it, so what economic incentives are driving all of these posts and energy expenditures?
IMHO, it’s some Venture capital business plans that require ubiquitous lenient mempool policy standards.
they don't under the difference between spam prevention and rate limiting.
i can get a spam email once a year. spam has nothing to do with rate im getting emails. i can also get one thousands of non-spam emails per day.
Fees don't clean mempools.
Fees absolutely clear mempools. That’s literally how block space markets work. If the price isn’t clearing it fast enough for your preference, that’s not a market failure, that’s you wanting price controls.
I've read all that carefully, but I want to focus on one detail that's important to me: You claim that lowering the minimum relay fee from 1sat/vB to 0.01sat/vB will allow spammers to "crowd out legitimate transactions"
Any legitimate transactor will happily pay 1sat/vB if necessary. Hence there is no "crowding out"
Making it 100 times cheaper is 'no "crowding out"'?
Filters, chich are second layer of defense against spam, can't be corrupted (or overpaid).
Like I am pretty sure, like, this white paper like, was the intent of Bitcoin, and, like, that’s why I’m like, here. like oh my god, like, duh.


No bro, you need to think when reading. Try again.
It allows flooding of large and negligible-monetary-committment OP_RETURN transactions over the relay network, increasing the load on the internet connection.
The three main design constraints making bitcoin accessible to node runners are:
1) hard drive space limitations
2) computational and RAM demands
3) network connection limitations.
The node-runner constraint these changes to relay policy attack primarily are that of item (3)
Some types of centralization are good. Would you like people to throw garbage all over the street (including your front lawn - where you need to deal with it) or use “centralized” garbage cans?
Is there a tldr?
The mature tone is an improvement.
Since people keep saying Bitcoin is digital gold, I don't see why we treat it as SoV and use something like Monero or Goldbacks as the MoE for buying and selling it with.
MoE mostly refers to buying coffees, paying the plumber, going on vacation to Bali, that kind of stuff. Exchanging money for goods and services, not for other money.
one day i would like to spend an entire week trying to comprehend this. worth it to me.
8 days past and no answer from calle ...


