pull down to refresh
102 sats \ 39 replies \ @Undisciplined 23 Oct \ on: "Quasi-consensus": help me understand this conversation with Chris Guida bitcoin
"Zero imagination"? Has he seen your posters?
As an academic, confusing jargon is par for the course. Oftentimes technical terms, like "consensus", also have more colloquial uses. I get what he's trying to do by saying there's been a sort of social agreement around this mempool policy.
I hadn't thought about this in the way you lay it out: i.e. the tension between censorship resistance as a feature and spam resistance as a capacity. I don't think there's a contradiction, though. It is still possible to make a consensus valid transaction, even if filters aren't transmitting most transactions of that type.
I don't see why the network has to make all consensus valid transactions easy or cheap. They just need to be possible. It's fine for the users of the network, acting in aggregate, to make certain types of transactions difficult or expensive.
It's fine for the users of the network, acting in aggregate, to make certain types of transactions difficult or expensive.
Is it also fine if a nation state does that as a “user of the network”? They can spin up as many “users of the network” as they want.
reply
as far as my node is concerned, it is very difficult to tell the difference between a node and bot.
I once brought this up to Mechanic and he said it would be trivial to notice a government spinning up a large quantity of nodes.
and when I asked how he knew that this hadn't already happened, he stopped talking to me, like Chris.
reply
So, have you found out yourself or just posted your story to mock a person?
reply
No, but that's not because of how they're using the network. It's because they shouldn't exist in the first place.
Does spinning up tons of nodes reduce the ability of existing nodes to broadcast to miners? I'm not sure why it would, at least not to a significant extent.
Let's say that literally every person who runs a node voluntarily opted for a mempool policy that doesn't transmit certain consensus valid transactions. Why am I supposed to care that this is possible?
reply
Does spinning up tons of nodes reduce the ability of existing nodes to broadcast to miners?
Yes, if they are maliciously used to eclipse nodes.
reply
isolated from all honest peers but remains connected to at least one malicious peer
That seems like a pretty extreme condition, and doesn't seem like something that would come about simply by spinning up a bunch of nodes. They'd also have to prevent connections to any honest peer.
reply
doesn't seem like something that would come about simply by spinning up a bunch of nodes
Your node connects to random peers. If most peers are malicious, the chance is higher that all of your 8 outbound connections (default) will be consumed by only malicious peers.
They'd also have to prevent connections to any honest peer.
You don’t know who is a honest peer or not.
reply
Sure, but why am I only connecting to these newly spun up malicious peers?
Are you talking about long-term dynamics or immediate impact of spinning up a ton of nodes? I was thinking about the latter.
reply
reply
I certainly don't, but I don't know whether it's something people can know. Either way, it's not my point.
At t1, I'm connected to whomever I'm connected to. If they're all malicious, sucks for me. If some are honest, apparently I don't have to worry about an eclipse attack.
At t2, some dick spins up a ton of malicious nodes. My previous condition is unchanged.
Let's say that literally every person who runs a node voluntarily opted for a mempool policy that doesn't transmit certain consensus valid transactions.
I suspect new ways of reaching miners would emerge.
If not, why wouldn't this aligned group of node runners just use their mempool polices to determine the block validation rules (I think this is a better term for consensus rules, courtesy of #1263085) of Bitcoin?
Does spinning up tons of nodes reduce the ability of existing nodes to broadcast to miners? I'm not sure why it would, at least not to a significant extent.
Isn't this your contention from earlier? (#1262882)
It's fine for the users of the network, acting in aggregate, to make certain types of transactions difficult or expensive.
How could users of the network make certain types of valid transactions difficult or expensive except by impinging on the ability to nodes that disagree with them via having many many more nodes?
Personally, I don't believe the relay network is an effective way to increase the costs of getting a valid transaction confirmed. Possibly it achieves this effect in the very short term, but the incentives are such that it will quickly get routed around.
reply
Isn't this your contention from earlier?
No. Or, it wasn't my intention to make that contention.
I suspect new ways of reaching miners would emerge.
As do I, but I chose an intentionally extreme example to help articulate my thoughts.
How could users of the network make certain types of valid transactions difficult or expensive except by impinging on the ability to nodes that disagree with them via having many many more nodes?
Maybe it's been answered in the other comments, but number of nodes doesn't seem like the driving factor. It's about paths to successful miners, which will typically be related to number of nodes, but might not be in some extreme cases.
reply
we are mostly in agreement.
I know that there has been a lot of work done on the p2p network part of bitcoin software. In general, I believe this has been aimed at making it difficult to eclipse a particular node or prevent a node form learning about new blocks.
I brought up the number of nodes ("many many more nodes") because it's the only thing I've heard put forward as a reason that filtering is useful at all. I, too, disagree that numerical eclipse is ineffective, but I've never heard anyone provide another reason why running filters is important.
reply
If filters don't work (and I'm not arguing that they do), why is there such a stark cutoff at the old OP_RETURN limit?
This is why I was bringing up the case of everyone on the network opting for a particular policy. As I understand it, basically all nodes had the same policy in that regard and we hardly ever saw transactions that didn't conform to it.
reply
This was a point Chris brought up and that I did not respond to.
I'd sat that chart he presented showing a clear absence of OP_RETURNs is evidence that there really hasn't been much economic demand for op returns that are bigger.
As I understand it, basically all nodes had the same policy in that regard and we hardly ever saw transactions that didn't conform to it.
Mempool policy can nudge one way or the other, but I believe it is very gentle and as soon as there is any kind of sustained demand for transactions that go against policy, it will quickly crumble.
reply
The drop off is so steep, though.
Unless there's a particular reason for demand in the 80-83 range but not in the 84-87, it seems ludicrously coincidental that it just happens to perfectly match the default Core policy.
It's fine for the users of the network, acting in aggregate, to make certain types of transactions difficult or expensive.
If this is possible, then Bitcoin really is ineffective at the only thing it does: censorship resistance.
Nodes can be spun up without any real proof of work. I can run several nodes on my computer. If the relay policies enacted by these nodes can effect the difficulty of getting transactions confirmed, what's the point of proof of work?
The reason we don't assign every node a number and then randomly pick a number and have that node sign a new block is that nodes can be easily created. If Bitcoin relied on such a system, whoever had the most AWS servers would control the network. We use proof of work because it prevents such a dynamic.
Relay policies aren't part of consensus and therefore no different than a jurisdiction passing a law saying "don't do these kind of transactions" -- neither should be effective at preventing consensus valid transactions from getting confirmed.
reply
You’ve written about how being an economic node is what matters.
How can that be true without implying any shared policies amongst those nodes are impactful?
We still have censorship resistance because there’s no stopping someone from mining their own blocks, right?
reply
As far as relay policies go, a node's economic weight doesn't matter.
Think about it this way: a node can relay transactions even if it's never been used to verify coins in any particular wallet. A node can refuse to relay transactions even if all it has ever done is download and verify the chain. In fact the "amount" of relaying a node does is the same no matter how it is used. It either relays a transaction or it doesn't.
When people (also including me) talk about economic nodes, they mean that you are using your node to say: "Yes, these coins I accept follow the consensus rules of bitcoin. I will accept them." An economic node with a lot of weight is able to say this about a lot of coins.
The reason relay policy is different is that you and I can have completely different relay policies and still agree on the state of the chain. This is not the case of consensus rules.
A big economic node will still have to accept as valid a block that includes transactions it refused to relay (transactions that it filtered or that it never allowed in it's mempool in the first place).
I suppose the economic node could refuse to accept any block that had transactions it didn't like, but if that was the case, the node would effectively be creating new consensus rules...and it would need to be sure that at least 51% of the hashrate followed the same rules.
reply
Thanks for straightening me out there. Economic node isn't the right term for this.
Still, if your transaction has some feature that goes against the mempool policy of every single miner, there's no way that transaction is going through. Spinning up nodes on AWS that will store and relay your transaction obviously wouldn't help with that.
On the flip side, if your transaction conforms to the policies of miners then it will go through, regardless of how many AWS nodes are spun up that would reject it.
It's about connectedness to successful miners. The censorship resistance comes from how difficult it is to block the path to miners and from having free entry into mining.
reply
if your transaction conforms to the policies of miners
yes! but this is the same as saying "if your transaction is a transaction a miner wants to mine", the mempool policy part is unimportant.
And this was the point I was trying to get to: in the case where many or almost half of all miners don't like your transaction, Bitcoin is designed to incentivize new miners to enter the game or current miners to change their mind. That's what's so great about it!
The censorship resistance comes from how difficult it is to block the path to miners and from having free entry into mining.
I believe my position is that only the latter matters. Free entry into mining is the important part.
Mempool policies really have very little to do with it. Due to the nature of electronic communication, it's pretty easy to get to a miner who is interested in mining your transaction (although how might look very different from a relay network run y nodes).
reply
If it were easy to block someone's path to a miner, you wouldn't consider that a censorship issue?
reply
I don't think it is possible to make it difficult.
If it was, then this would be a major vulnerability to bitcoin, and many of our previous assumptions about its usefulness would be in serious trouble.
see your point: #1263232
reply
We're saying the same thing.
I'm just pointing out that in the abstract this property matters for censorship resistance and you're saying that we have this property, which I'm not questioning.
We still have censorship resistance because there’s no stopping someone from mining their own blocks, right?
No, see #1222210:
Sure, it only takes one block, but if everybody else can get into each block while I can only get into one block a year, I would consider myself censored, not very unlike a bank closing my account.
In reality, if you’re really mining your own tx, it’s more like never though.
Bitcoin’s censorship resistance relies on miners acting in their own interest, not that everyone is mining their own tx, that would be ridiculous.
Chris Guida & Co. are suggesting miners to not be selfish, see debate in the linked post.
This is absolutely crazy to me.
You should really watch the debate.
reply
reply
I get that. I articulated my thoughts better here #1263201
Free entry into mining, means profit seekers will come in and accept those censored transactions, but just that threat of entry will keep miners from engaging in widespread censorship.
reply