It's rich to see someone lecturing andytoshi about the benefits of replacing block content with succinct proofs. To be clear, pruning is not the same thing as replacing blocks with proofs. Schemes like mimblewimble or whatever else came after that he worked on are not SPV style abandonment of verification. Or maybe we have forgotten?
Anyway, let's keep in mind that nobody is saying you cannot run a filter or install one yourself. Anyone can run any software on their machine they want. But you cannot force others to run it... or at least developers around here won't go along with trying to force unremovable auto updates etc.
The question at hand isn't the existence or possibility of filters, nor of existence of bitcoin p2p protocol users that choose to filter, it's instead about pressuring Bitcoin Core developers to release and endorse software that includes certain filters--- which sets bad precedent against bitcoin ethos (by which I mean "these transactions are argued to be harmful to bitcoin so Core should do something even more harmful to bitcoin" is bad precedent), also these people either don't want to do it or don't agree with doing so and have been refusing to go along with the demands; going along with the demands is itself another way to set a bad precedent. Such pressure should first before all else be unilaterally rejected, as there is no obligation expressed or implied, not to mention the coercive nature of trying to force someone to act against their personal judgement or values....
My reply below.
I fail to understand how we come from "filters do not work" to "filters adopted by a majority is censorship".
If the goal of your mempool transaction filters is to prohibit certain content on your node, then filters do not work because filters are not applied to received blocks. You might not want to run bitcoin at all, even in blocksonly mode + pruning, if you don't want bitcoin data on your machine, actually.
If the goal of your filters is to prohibit content in other people's mempools, then your local filters cannot achieve that because anyone can put anything they want into their mempool even without your knowledge. This is even true if a Bitcoin Core release was to ship new, overbearing default filters etc.
Yes, even with a Core release, still developers around the world cannot dictate what software or rules the protocol users choose to run themselves, nor the contents of their mempools.
For those purposes it is clear that your filters do not work. They don't achieve those goals, in answer to your question.
If you want to run a mempool with filters, then you have not been unable to do that. If you want to run a node that does not gossip transactions or run a mempool, then you are again not restricted from doing so. Use blocksonly, use pruning, or even write your own software and place it on a webpage for others to voluntarily download. For people who want to extra filter this should be fantastic news because if they previously believed filters must be distributed by a Core release, then now they are free from the burden of that false belief and should feel relieved.
Even if relay filters are adopted by a majority of the p2p network, it still doesn't work to stop the transactions because the transactions get encoded into blocks, and then you receive blocks.... unless you don't download blocks or run bitcoin.
As for the censorship question, perhaps instead ask what the purpose and function of a mempool is. Why might a node have a mempool? After all, if what you want is to see or have a history of transactions, then you have the blocks of executed transactions. What then is the purpose of a node having a mempool? It should seem absurd to you.
Maybe even the answers to these questions might help us to understand the motivations or goals of developers as to what is included or not in the software they write?
It's a possibility.
There seems to be a confusion too regarding filtering arbitrary data and censorship of consensus valid tx, like OFAC compliant block. Those two are different.
They aren't different; anyone is free to filter just as anyone is free to mine your-so-called compliance block, which by the way leaves valuable fees to others.
Also the thinking that miners control the network is also bad as its
Who has argued that? What does control even mean here?
miners are the one that should take notice of what the relay network homogeneous mempool is.
What?
This BIP proposal move in the right direction in regards to finding a compromise while not disparaging anyones right as a free agent node runner.
If you honestly believe that, then I have very good news for you: you don't need a BIP or Core release: users can simply download, write or use whatever software with whatever filters they want. Mom compromise is needed, because the bitcoin status quo already enables the freedom-nondisparagement you seek. In fact, I would argue that you should prefer that it does not need to be a default or a BIP, because enabling the coordination and distribution of the tools of censorship seems contrary to the purpose and goals of bitcoin.
- Bryan
-------- Original Message --------
On 9/26/25 2:03 PM, Garlo Nicon
wrote:
> You cannot pick and choose which parts of a block you like and which parts are "abusive".
In the current implementation, yes. But if you accept a proof, that a block is valid, instead of accepting a block in plaintext, then you can land on the same chain. Because after all, pruned nodes care only about the last 288 blocks, or something like that. If they can update their UTXO set, and always land on a valid chain, then they don't need transaction data in plaintext. They just need to update their UTXO database in a way, where attacking it would require breaking ECDSA, SHA-256, or similar things (a proof-based system, which would not weaken existing cryptographic assumptions, would be sufficient).
And the same is true about Initial Blockchain Download. Only today, you have to download hundreds of GBs, to synchronize the new node from scratch. But it can be changed, and as the size of the whole chain will grow, people will be pushed, to start deploying some optimizations. Otherwise, there will be even less nodes, if node operators will decide to trust centralized solutions instead, or do things, which already happened in some altcoins, where people passed around an already synced node data, and trusted, that it is valid (especially in CPU-mined coins, where verifying thousands blocks required similar effort, than mining a new block).
On Thu, Sep 25, 2025 at 11:52:02AM -0600, Chris Guida wrote:
>
> Anyway, forcing users to relay transactions they consider abusive if they
> want to relay any transactions at all does not seem in keeping with
> bitcoin's ethos, not to mention that it obviously would never work.
>
Once a transaction is in a block, you need to relay the transaction if
you want to relay a block. You cannot pick and choose which parts of a
block you like and which parts are "abusive". This is what it means for
something to be a consensus system.
The purpose of the mempool is to approximate the contents of blocks,
both to help individual node operators (who would otherwise get large
quantities of "surprise transactions" with every block) and to help the
network (which would otherwise have poor propagation properties).
Any sort of filtering beyond that done by miners is contrary to this
purpose of the mempool. This is a technical fact. It has nothing to do
with "bitcoin's ethos", except its ethos as a consensus system, which
directly contradicts your point.
--
Andrew Poelstra
Director, Blockstream Research
Email: apoelstra at wpsoftware.net
Web: https://www.wpsoftware.net/andrew
The sun is always shining in space
-Justin Lewis-Webster