did you know you can get the bitcoin whitepaper from your pruned node? Its stored in the utxoset permanently. Heres a one liner i created to extract it
seq 0 947 | (while read -r n; do bitcoin-cli gettxout 54e48e5f5c656b26c3bca14a8c95aa583d07ebe84dde3b7dd4a78f4e4186e713 $n | jq -r '.scriptPubKey.asm' | awk '{ print $2 $3 $4 }'; done) | tr -d '\n' | cut -c 17-368600 | xxd -r -p > bitcoin.pdf
This is why we prefer people use large OP_RETURNs instead of 947 outputs that can’t be pruned. OP_RETURNs are probably unspendable so they will never end up in your pruned nodes utxoset.
They also produce smaller blocks than inscriptions. Unfortunately they are 4x more expensive… but lifting the filter restriction is one small thing we can do to encourage it over other options that are much worse for bitcoin spam-wise.
You definitely don’t want illegal, unprunable stuff in your utxoset permanently, which is why i am running core v30 to do what i can to disincentivize this spam.
Thread
Login to reply
Replies (53)
That doesn’t make sense. You have no control over the child porn that will be shared in OP_RETURN over your node when running core. The same thing happens when you run a TOR relay.
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.
Kaspa solves this.
But it doesn't make it any more expensive because more nodes filter it... Nearly every node filters dust. I made a dust tx that paid normal fee to prove this and it went through just fine.
Brunswick
@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.
View quoted note →
View quoted note →
Not all one liners are the same.
Since you like arguments from authority, you should be aware that Nick Szabo disagrees. 

X (formerly Twitter)
Nick Szabo (@NickSzabo4) on X
@callebtc Fees protect the miners, but they don't provide enough disincentive to protect the full nodes. This has always been a problem, of course...
didn’t realize nick szabo was an authority on bitcoin core technicals
lol
lmao
Is Luke Dashjr an authority on bitcoin core technicals?
Szabo has a degree in computer science and a degree in law. He says:
"illegal content in a contiguous standard format, thus readily viewable by standard software, is more likely to impress lawyers, judges, and jurors, and thus is legally more risky, than data that has been broken up or hidden and thus requires specialized software to reconstruct. Such demos would be part of convincing these legal decision-makers that a defendant node operator had knowledge of the content."
And remember, this issue is not 100% technical and cannot be fully understood using technical arguments only.

X (formerly Twitter)
Nick Szabo (@NickSzabo4) on X
@_Checkmatey_ @OqqZinSmAiMYItG @crypt0e @callebtc A counter argument is that illegal content in a contiguous standard format, thus readily viewable...
he is wrong, my post above shows that its just as easy to extract data from non-contiguous sequences. the "readily viewable by standard software" is my one liner above. it doesn't require specialized software.
I guess my argument from authority didn't work
A lot of very complex software can be put into one line
i did not have custom or complex software in this line. everything here is readily available on any linux machine running bitcoin. this is such a weak argument.
Your line is gibberish to a lawyer.
Would an Op_Return extraction be simpler? Yes. Would it require fewer Linux utilities to extract? Yes. Is it easier for less technical person to accomplish? Yes. Case closed.
here is the equivalent op_return one liner
bitcoin-cli getrawtransaction 6ae4de7542bebb0884b08db8265d7567b27673034da179980c632b8d592ffe9b true \
| jq -r '.vout[] | select(.scriptPubKey.type=="nulldata") | .scriptPubKey.asm' \
| sed 's/^OP_RETURN //' \
| xxd -r -p
I don't think its much different.

Bitcoin Stack Exchange
Assurance blockchain will not suffer from illegal content with 100KB OP_RETURN
With the forthcoming lifting in Core v30 of the OP_RETURN data limit to 100KB one of the primary concerns of opponents of the change has been the d...
and even this one requires txindex, which most nodes don't enable. so you could argue the utxo one is simpler and more universal among nodes.
this argument just doesn't work man.
Ok, man. I guess we'll see what happens when v30 comes out, man.
Es un Spamer coñazo que no consiguió su objetivo con el spam de los Ordinals y sigue dando la turra, 🤡
He is a better authority than you, that’s for sure
How about we just keep Bitcoin as pure money. I can find the Bitcoin white paper in two seconds on the internet. In fact I have a copy saved to my hard drive.


this is the conundrum. to stop this multisig transaction would require you to censor a valid bitcoin transaction.
That doesn’t really respond to the preference that Bitcoin be a monetary transaction protocol for the peer-to-peer electronic cash transfers. If someone wants to play with blockchain file storage, Solana looks like a great option.
noone disagrees with this, except for some extreme degen gamblers and bad actors
You lost me with ‘this.’ Which ‘this’ are you referring to? 😂 I guess I’m too slow to keep up.
noone disagrees that bitcoin should be used mainly for monetary transactions.
Why not keep anything above 80 bytes on a Bitcoin Layer 2? Any reason this stuff must be included on Layer 1?
not really, unless you want something to be super censorship resistant and have it replicated across many computers across the world. you just have to pay a decent amount of coin to do this.
IMHO that means monetary transactions only. No image or other non-monetary data warrants the bloat created down the road on the main chain. Even the Bitcoin white paper doesn’t need to be imbedded in the Bitcoin time chain. Just because something can be done, doesn’t mean it should. It helps to think long-term and all users. Hardware requirements for node runners has already become much more expensive and 3rd world plebs deserve their financial sovereignty just as much as we do.
ok, thanks for sharing your opinion. unfortunately this doesn’t make any progress on the issue at hand
Agreed. And thank you for sharing yours.
Thank you for continuing to educate. It’s helped me as a non-technical understand this entire situation much more thoroughly.
Utreexo fixes this
Kaspa fixes this.
Woah Intresting
View quoted note →
did you know that the transaction was mined by Luke 12 years ago
did you know it would be filtered out by the current version of Knots and Core


Your technical arguments appear to me to be sound and worthy of very serious consideration and debate. However, it’s important to acknowledge that many in the community feel Core initially dismissed their concerns and then doubled down, which fostered division and mistrust. While the technical rationale holds and is reasonable, the perception of arrogance has fueled ongoing controversy. Many believe Core leaders could have done more to build consensus and dialogue before pushing a fracturing change. Core devs feel insulted, attacked and unappreciated, personally threatened. This is more a community, political, leadership and governance issue than it is a technical issue. IMHO.
Kaspa solves this and he knows it. He is just too prideful to admit it.
Let's recap:
- they were technically right
- misinformation campaign to discredit and shame them publicly was initiated
- this noise completely overwhelmed Bitcoin dev process and distracted people for months
if anything all this did was to further separate dev from angry mobs. not sure it accomplished it's intended goal you described.
best way to make change in the dev process is to become involved, gain credibility amongst current devs, and then put in your well informed technical review on these changes.
this is what everyone else involved in the dev process has done and will continue to do so, even in the presence of misinformed angry mobs.
Let me be clear, I have great respect for you and everything you’ve done for NOSTR and Bitcoin, as well as the other core devs and leaders in the bitcoin community.
You can be technically right and still struggle to manage perceptions. When perception and reality don’t equate, perception becomes reality.
I get that this Is far more personal and raw for you than it is for most and I understand why you feel attacked and betrayed by a large chunk of the community.
My only motivation is to try and encourage people to consider others perspectives and try to reconcile where possible. I understand that may not be possible in many cases and that people will do so on their own time.
I appreciate your willingness to engage with conversation. I hope that people will step up to help manage perceptions and that our community can come to a consensus soon.
The question is if there will be a significant demand for spam if you need to find workarounds like this because there is no standardized easy way to do so. Maybe it’s not a good idea to make spam more easy.
Kaspa solves this and he knows it. He is too prideful to admit it.
Kaspa has been here for a while now. This isn’t new.
View quoted note →
@Andy You see the irony here?
View quoted note →
The white paper is hidden on every Mac as well for those that didn’t know.
Where?
/System/Library/Image
Capture/Devices/VirtualScanner.app/Contents/Resources/simpledoc.pdf
Cool! 😎
Thanks Mr. Tea.
You’re welcome!
If everyone is using only pruned nodes, new nodes won't be able to download the blockchain, bitcoin will die
true but thats not a realistic scenario