pull down to refresh

: if filters are that powerful, what will we do when a government decides to use filters to prevent transactions they don't like?
Explain the mechanism of co-opting all of the nodes. Its not enough to overwhelm the nodes by number, if that were feasible.
What percent of nodes on the relay network do you believe a government would need to successfully prevent a transaction from getting to miners?
reply
Its a bad question, it's not a matter of percentages.
If a government or other bad actors spun up 10% or 900% of the current node count using a Bitcoin Core fork it would identifiably be considered a sybil attack, by overwhelming the policy settings of existing nodes. Countermeasures would be deployed to mitigate the damage and demonstrate hostility to spam and CSAM in particular.
But by getting rid of policy settings entirely via Bitcoin Core software it gets rid of the idea that policies are part of the consensus mechanism and security of the network. You can believe that is the case, and other people disagree, and so we fight it out in public discourse.
Dismissing knots advocates with rhetorical techniques is just the strategy of people who want to change Bitcoin by getting rid of a core function of nodes within the system.
reply
the idea that policies are part of the consensus mechanism and security of the network.
This is what I'm struggling with. Eg. There are some valid transactions that could lead to quadratic hashing and that could cause nodes to get stuck or slow down.
But the only real solution to it is probably to do something to consensus code that fixes this.
Just hoping no one mines such transactions seems like a not very rigorous way to go about making a censorship resistant network.
I think the same thing applies to "spammy" transactions.
reply
102 sats \ 0 replies \ @Murch 20h
Bitcoin Core 30.0 includes a new mempool policy against legacy transactions with an excessive signature operation count (see https://github.com/bitcoin/bitcoin/issues/32521).
via Optech newsletter #364:
reply
Just hoping no one mines such transactions
Who is doing that though? Knots advocates? Bitcoin is 15 years old and the quantity of those transactions as a percentage of the overall compared to other blockchains is vanishingly small. Changing default policies by sneaking in an upgrade via the inertia and the apathy of node operators, and the trust they have for the long standing credibility of Core developers, is what will invite content rich transactions to a degree that makes Bitcoin a useful tool for non-monetary data transmission and storage.
Basic information theory prevents a rigorous absolute solution, so we are left with the sufficient policy and cultural layer.
reply
0 sats \ 18 replies \ @ek 8 Sep
Dismissing knots advocates with rhetorical techniques is just the strategy of people who want to change Bitcoin by getting rid of a core function of nodes within the system.
Afaict, @Scoresby simply asked you questions. What rhetorical techniques did he use?
reply
Fair point. I was alluding to the post and thread and wider discourse rather than a specific comment of Scores by. If I could point at a rhetorical technique it would be to repetitively ask questions that have been answered clearly over the past few months as though Scoresby were just entering the discussion today, which they haven't.
Scoresby knows that Bitcoin Core default policy settings are there by demand from the earliest days of Bitcoin development, rather than a temporary artefact, and that spinning up an alternative implementation, a fork of Bitcoin Core, in order to overwhelm the current policies of nodes would be an obvious sybil attack. They are two entirely different things. Pretending to not see the distinction is a rhetorical trick in a zero sum game, not a legitimate argument in a good faith debate.
reply
I don't believe filters are effective when there is a strong desire to get filtered transactions confirmed. I suggested that if they were effective an attacker (such as a state) could use them against us. (#1212554)
You asked me to explain "the mechanism of co-opting all of the nodes" because "it's not enough to overwhelm the nodes by number" (#1212571)
I agree with this. Which is why I asked you, what percent of nodes is needed to effectively filter. (#1212575)
You told me this was a bad question. (#1212588) Even though you were just implying that it was a relevant question (It's not enough to overwhelm the nodes by number -> implies either you need a threshold percentage or you blieve that as long as there are some small number of nodes relaying certain kinds of transactions, they cannot be stopped).
If you can use filters to do what you say they can do (stop "spam"), then a government can use them to stop any particularly disliked transaction. If a government cannot do this, then neither can a group who wishes to stop spam.
As far as rhetorical techniques go, I believe bringing up csam is a an argument entirely done for rhetorical effect. No one was talking about that in this post or comment thread until you brought it up. If you think I'm being dodgy with my arguments, consider that the same argument applies to yourself.
reply
Which is exactly why I think that the "number of nodes" with various software versions running...
Doesn't really mean anything.
If the node isn't used for anything, if it never broadcasts a transaction, or verifies a user's balance of received sats...
Its impact on the network is very small/negligible. This is because in the event of a consensus change/fork/disagreement a node that isn't associated with 'hard-purchased-value' AKA Bitcoin and energy isn't really worth anything.
All the more reason why a government-sponsored series of nodes, that run a certain version of software or certain filters cannot really have an censorship-like impact on the network.
How do we know that all the Core nodes... or even all the Knots nodes aren't running on Amazon AWS? Any number of nodes can be spun up in the cloud and make it 'look' like they are "more of the network". Otherwise a government could spin up their own nodes with their OWN filters and somehow that would censor the Bitcoin network? Really??? That doesn't make sense.
I find it nonsensical that this "percentage of nodes" metric keeps getting repeated... many of the Knots nodes (or Core nodes) could just be AWS and verify... nothing.
What matters is fees and demand for blockspace.
reply
exactly. i asked the percentage question because in my mind it either demonstrates that a government could use filters or that filters are ineffective.
reply
If "run Knots" would meaningfully impact the ability of certain transactions to get confirmed...
What's to keep a government from spooling up their OWN nodes, and lots of them in a cloud with their own relay policies that start to censor certain kinds of transactions?
If "run knots" will effectively filter... What about "run government"???
So why haven't they done it?
The answer is that unless Bitcoin Core changes default policies this sybil attack would be expensive and ineffective. If Bitcoin Core decides that the policy level is irrelevant to consensus then it's a trivial attack
A sybil attack via Bitcoin Core policy defaults compared to a bad actor with an alternative implementation is like the difference between being stabbed in the eye and stabbing yourself in the eye.
If someone tries to stab you in the eye you can engage in countermeasures. If you stab yourself in the eye then who is there to deploy countermeasures?
reply
why do you keep saying alternate implementation? the same implementation can have different policies. A bad actor does not need to deploy an alternate implementation to do this. They could run their Bitcoin Core nodes in blocksonly mode with -whitelistrelay, which would allow them to "filter" by only transactions that come from nodes they like.
If you can use filters to do what you say they can do (stop "spam"), then a government can use them to stop any particularly disliked transaction. If a government cannot do this, then neither can a group who wishes to stop spam.
You still haven't answered this question.
If someone tries to stab you in the eye you can engage in countermeasures. If you stab yourself in the eye then who is there to deploy countermeasures?
I like your eye stabbing metaphor. Nice rhetorical touch. Let me tell you how I use this metaphor: Bitcoin is a permissionless network. There are no sides. There are only valid transactions and invalid transactions. As far as I see it, all transactions are enemies trying to stab me in the eye. Every single transaction in Bitcoin is something I have to contend with, it's a transaction that might want blockspace more than me. It's my enemy. I put up with it because in order to use this network, I have to follow the rules. But I'm not happy about it.
reply
There are valid transactions, and invalid ones, and between them there are users and a policy layer, with defaults. That is the case today, and you're advocating removing that layer, pretending it has never existed or had a meaningful impact on the monetary value of the network, when it obviously has because so many other blockchains emerged to service the demand for spam.
why do you keep saying alternate implementation? the same implementation can have different policies. A bad actor does not need to deploy an alternate implementation to do this. They could run their Bitcoin Core nodes in blocksonly mode with -whitelistrelay, which would allow them to "filter" by only transactions that come from nodes they like.
100%. I think of blockspace as an information battlefield... based on fees and energy. If you want in the blocks you have to 'outbid' your adversary. How else could a similar "fair" system function???