Hahaha. Another clown that thinks *hashpower* defines the consensus rules. Explain to us all how that works. Does ___ PH hash = 21 million coin limit?
No. But nice try at reductio al stupido. Hashpower is a pretty good measure of economic resources.
LOL. Pretty good? How about all the wealth stored on the network? Miners cannot alone dictate the rules; they merely order transactions. Miners are meaningless on a dead network.
As are anybody else. Miners, nodes, users, … all adrift on a dead network. You’re not supporting your point that nodes determine consensus.
Actually, I did. In this example, miners who change the rules without node consensus are simply forked off the network. They can continue to build blocks on that dead network, but no one will accept payments on that chain as valid.
In this world where chicken littles are cluck-clucking about how expensive a 2MB node is to run, a mid-size miner can spin up any number of nodes.
How do you not understand that a miner (or Coinbase or Roger Ver) spinning up a bunch of nodes has
absolutely nothing to do with the software
users are running? How useful are miners communicating with themselves + a bunch of datacenter nodes with no economic activity behind them? Miners need people to sell their coins to..... so if you think they can ignore the network of users by spinning up nodes...... LOL.
I fail to detect a point here. Correct, miners spinning up nodes does not directly impact users. I was pointing how silly your claim was that
miners have to abide by what nodes want. Again, even if miners were somehow magically barred from spinning up their own nodes, nodes are powerless.
Nodes are only significant insofar as the economic activity they represent. 1000 nodes with no users transacting on them are insignificant--this is what "miners spinning up nodes" equates to. Miners need users and services to sell their coins to.
So again, miners can hard fork the rules and spin up thousands of nodes that enforce those rules, but
how do they force users to reinstall their software to recognize this network as valid?Consider the extreme example: 75% of miners quadruple the supply of coins to 84 million a la Litecoin with a hard fork. If those miners "spin up some nodes" that no users connect to, are those new coins spendable? Only amongst themselves--not among anyone who enforces the 21 million coin limit. This is true of any consensus rule, such as block size limit.
To such a miner, the cost of operating nodes is less than chickenfeed. For a mere two chicks. The non-mining nodes have cluck-all to do with consensus. But they do make the impotent feel good about their 'power'.
That's only true if they are merely concerned with communicating amongst themselves, as opposed to the network of users, who may have forked them off.
Yes, the network of users may have forked off the non-mining nodes. Agreed. You’re not supporting your point very well.
You seem very confused. How does the network of users fork off non-mining nodes? Non-mining nodes don't mine--so there is no block to fork. And if consensus rules are removed, the offending miners (e.g. >1MB block violation) are forked off, not the nodes on the original network. Users don't necessarily run a node; node software is the only mechanism by which rules are enforced (hence the only mechanism by which forks occur). So again..... miners can break the rules all they want, and they can spin up nodes to give the perception that a network exists. But you haven't proven the basic premise that these miners won't be mining on a dead network with no users.
The network of users may also fork off the miners. This is not in the interests of the miners. Which is why adhering to a single codebase is not important for maintaining consensus. Economic interest is what is important for maintaining consensus.
The bolded does not follow from its premise. To your example: if users are split 50-50 enforcing a 1MB rule, and miners are split 50-50 enforcing a 2MB rule--how the hell are they going to maintain a single ledger? If the 2MB chain becomes the longest chain at any point, the networks would split. How does this achieve "consensus?"
How about if 75% of users are enforcing a 1MB rule, and 75% of miners are enforcing a 2MB rule? Once the 2MB chain becomes the longest chain, the networks would split. How does this achieve "consensus?"
How's it going to work if 75% of miners fork to another network, and the majority of nodes do not follow? Miners don't make the rules. Nodes do.
Absolutely false. The only entities that control the rules
by which the miners operate are the miners themselves.
Uh, okay. That's not actually meaningful. I too can enforce rules that the rest of the network ignores. So what? Makes no difference to anyone.
Your logic suggests that miners can quadruple the 21 million coin supply, and that the network will simply accept those new coins. Of course they won't. The network of nodes will fork off the offending miners.
You wrongly believe this consensus mechanism is a result of the idea that "miners always act not only rationally but correctly, because economics." The reality is that the protocol rules written into the node software prevent the possibility.
They determine whether the blockchain is extended by any given block, and they determine whether or not economic transactions will be carried out upon that blockchain. The rules that any given node adheres to, OTOH, has essentially zero impact upon the network.
Nope. Miners have the power to order transactions. That is all. Again, apply your logic to the premise that miners could collude to quadruple the supply of bitcoins, and you will find that nodes have all the power over consensus rules. Those new "coins" are completely worthless and no node will accept them as valid payment.
Still pushing this disinformation that spinning up nodes forces the rest of the network to install some foreign software?
I never made any such claim.
Then if miners break consensus rules (e.g. quadrupling the 21 million coin supply), why would the network follow them? They wouldn't. Yet you claim that miners have power over the consensus rules. They don't.
Shame on you.
Shame on _you_ for attributing to me a false quote.
I didn't quote you there. I pointed out that you imply that miners can force users to install foreign software simply by virtue of mining invalid blocks. You continue to do so. If that is not your implication, I suggest that you do not understand what a hard fork entails.
if the miners build a chain with whatever rules they care to, and the transactionators keep transactionating upon that blockchain
Why would you assume that?
Because I would assume that miners would only build a chain adhering to rules that users would accept. It is against their economic interest to do otherwise.
Ah, so you assume miners are
correct in all their assumptions? What a dumb idea. Bitcoin depends on actors acting
rationally; it does not depend on rational actors being
correct in their assumptions.
It may be against their economic interests to fork the network. But they are working with incomplete information about user preferences, and they very well may be wrong.
If miners violate the inflation controls that prevent > 21 million coins from being produced (these are consensus rules) why would anyone be transacting on their blockchain? No one would accept payment on that chain as legitimate.
Duh. Going for the reductio al stupido card again?
No. Why don't you actually respond by applying this case to your own logic? You make all these baseless assumptions about what users would do (blindly follow 75% of miners who violate consensus rules) and yet you can't provide any evidence for it.
that chain defines Bitcoin. The nodes have fuck-all to say about it. What are they gonna do, just drop all the incoming transactions on the floor?
What the hell are you talking about? "Drop all the incoming transactions on the floor?"
Let me refresh your memory. Upon receiving a transaction, a node has exactly two options to it:
1) Forward the transaction
2) Not forward the transaction
Yeah. So that's exactly what they do--don't forward invalid transactions........
Do you even bitcoin? No one accepts confirmed payments on that chain if they break the rules they enforce. That goes for any node on the network.
Do you even bitcoin? If any given node does not forward a given transaction, it matters not to the network.
If it breaks the consensus rules that the network enforces, of course it does. The transaction would be rejected by the network.
As long as the transaction finds its way from the creator of that transaction to a miner that mines it into a block that is subsequently accepted by the bulk of the miners, then that is a valid transaction, and any number of nodes can stamp their metaphorical feet, but that transaction has been conducted.
Sure, and that transaction could be conducted across many different incompatible forks with the same beginning UTXO set. So what? You haven't proven that these miners aren't mining on a dead network absent of the majority of economic activity. The only thing you can establish is that these miners "assume they are correct."
Yes, this all presumes that this transaction adheres to the rules set by the miners that accept it. But if so, it will be included in the blockchain. Users that do not agree with these rules are free to abandon the chain as well. So what?
It will be included in
a blockchain. This says nothing about which chain users and the majority of economic activity will remain on.
Miners unaffected - they'll just reach down and pick up the dropped transactions, and mine 'em in the next block. Or the next...
And no one will necessarily care about the blockchain those miners are mining on....
Not necessarily. Agreed. Which is why miners are incentivised to implement rules that will be accepted by the majority. Of other miners, and of users. Again, nodes have no power here.
Sure, they are incentivized. And they can easily be wrong. No skin off my hide. They're the ones who will lose money, not me. As a user, I can sit back and let miners worry about how much money they may lose.
Nodes have the power to fork those miners off the network. Nodes have the power to ensure that those miners are mining on a dead network with no economic activity except the mining of invalid coins.
Bullshit. Miners enforce rules as well. Any miner that mines on a block that contains transactions that are invalid will eventually go broke.
Yes. That's the point. If they enforce rules that are more relaxed than the rest of the network, the network will fork off their invalid chain.
Try all you want to ignore that fact, but it is not merely an indication of will. If 75% of miners are mining on another chain, and 75% of users exist on the original chain, 75% of users simply ignore the invalid chain. It's very simple.
Thanks for the tautology. If those users accept that chain however…
Okay..... the whole point of my responses to you was to establish that 75% miner agreement says nothing about whether users will accept that chain. And yet you continue to suggest that 75% miner agreement is meaningful.
Though to answer your question directly, the miners are interested in what 75% of those making transactions will choose.
How the hell does 75% miner agreement equate to "75% of those making transactions?" What connection do they have at all?
I did not say that it equates. I stated that the miners are incentivized to follow the will of the majority of users. Again, no mention of nodes in this calculus, as nodes are powerless.
You certainly suggested they were equal--why else would you say that "miners are interested in what 75% of those making transactions will choose?"
Clearly nodes are not powerless, since you have conceded that they will fork off miners who break the rules. So, powerless in comparison to who? Miners? Clearly miners can't change the rules without node operators consenting and upgrading.
Users = nodes and connections to nodes (SPV users). And SPV users have no say over the rules; they accept whatever nodes tell them as truth. So how is it that users have power, but nodes don't?
As those making transactions are the power that keep miners in check.
Indeed. And they will fork off miners who publish invalid blocks.
While I’d like to inquire what it means for ‘users to fork off miners’, I think I agree with your implied statement. Although I would phrase it somewhat more precisely. Maybe ‘users will not transact upon a blockchain that contains transactions that violate rules that those users accept’. I don’t see what point you’re making by this though.
Seriously? You don't see the point? You're suggesting that miners can remove a consensus rule from the protocol, which will result in previously invalid transactions becoming valid. But.....users can simply fork off those miners if they don't agree with the rule change (and without changing software, they will do so).
They have no need to worry about amassing 75% of nodes. Nodes are powerless.
Then why did Gavin solicit pledges for people to spin up thousands of nodes?
I would suggest that if you are seeking insight as to Gavin’s motives, you might want to ask Gavin. Anything I could provide would be speculation. Though maybe if I read his words, I might infer something. Care to provide a link?
People are committing to spinning up thousands of supports-2mb-nodes
https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2016-February/012364.htmlWhy are services like classic-cloud spinning up nodes?
Again, you’d have to ask ‘classic-cloud’. Actually, I am unaware of any entity called ‘classic-cloud’. Is there one? Or are you just making stuff up in order to have a false talking point?
I'm talking about the service that has brought thousands of Classic nodes online and is being promoted by companies like Coinbase:
https://www.reddit.com/r/btc/comments/47rpdf/classiccloudnet_looks_great_run_your_own_classic/The simple answer is to try to indicate that there is a network of users behind these nodes. (Of course, we know that is largely untrue simply based on the facts)
What is untrue? That there is a network of Classic nodes? Objectively, I know that there is a network of Classic nodes. I have at times run a Classic node. It has connected to at least one other Classic node. The existence of more than one Classic node is a priori evidence of a Classic node network.
That's adorable. The assertion was that the number of nodes vastly overstates the number of users on the network. That classic-cloud openly states that it is running over 800 nodes across six datacenters suggests this. So does this:
Great! Orwellian doublespeak! The SegWit Omnibus Changeset purports to make all current full nodes incapable of validating all transactions. This is the very antithesis of ‘compatible’.
Sorry, but "incompatible" would imply a network split. Please explain how that would occur with Segwit.
Any statistics, risk and game theory analysis to support the contention that 75% is remotely safe to ensure not only that miners, but network nodes upgrade? "Somewhat south?" What the hell does that mean? Please supply more than "who would want to stay on a dead chain?" as this is not evidence that 75% miner agreement would result in a dead chain rather than 2+ surviving chains.
Any statistics, risk and game theory analysis to support the contention that 75% is unsafe? Put up or shut up.
Sorry, but you're the one suggesting that we fork the protocol. The burden is on you. There's been plenty of analysis done in this field, but I'm not really interested in wasting the time when you can't support your own arguments.
In other words, you are telling me "we can fork the protocol any way we want, and it's assumed safe unless someone can prove otherwise." Nice logic.
You are right. We do not have hard evidence that 75% agreement will necessarily result in essentially all economic value on a single chain. Indeed the only way to prove that proposition, even with 99%, is to run the experiment. I feel confident that 75% is sufficient. Which is why I am working towards that goal.
That's like constructing a building without blueprints. No, subjecting the system to your new rules based on an untested "consensus" mechanism is not the only way forward. One could begin by formulating economic and game theoretical arguments that support his case. Unfortunately this has been entirely neglected by Classic supporters, and XT supporters before them. They just took Gavin's word that "75% is good enough."
Nope - you're still not getting it. We do not seek a version that no one uses. We seek multiple interoperating versions, all adherent to the same protocol based upon emergent consensus.
Cool story. What you seek =/= what will happen. If you contend that 75% miner agreement will not break the consensus that defines what bitcoin is, then provide evidence rather than passing it off as truth.
Cool retort. What I seek is also =/= what will not happen.
That just proves that "what you seek" = irrelevant. So, back to square one.
No I’m done with evidence.
Yeah, that's what your endless repetition of refuted arguments amounts to. And at the end, you refuse to provide any evidence for your contentions or even establish a logical case for your beliefs.
Your group have not provided any evidence not only that 75% is insufficient, but neither any evidence that Core’s scaling path is free of fatal flaws.
The problem is that we don't know. Which means, err on the side of conservatism. 95% worked well several times to implement soft forks. The definition of "consensus" (from "consensus mechanism" in the whitepaper) is "general agreement"; not "75%/25% disagreement." In the words of Peter Todd:
When you’re working with billions of dollars, you don’t take risks lightly.
To be frank, I suspect that Classic supporters generally do not hold very much bitcoin at all. Otherwise I suspect they would be much more conservative in their approach to consensus issues. As someone who has a significant amount of my net worth tied into bitcoin, I am just appalled at the "caution to the wind" attitude here.
We seek a coin guided by Nakamoto Consensus, rather than one restricted by the few.
Nakamoto Consensus says nodes can and will simply fork off such a "75% miner attack" on the network. Because hashpower has fuck all to do with the rules.
There is no “75% miner attack”. We measure miners, as hash power cannot be faked. We believe that 75% of all hash power is as good a proxy as can be measured for majority user support. 75% of the hash power plus the majority of users is not an attack - it is consensus.
So, you use "hash power" as a measure for "user support" even though it has absolutely no relationship to it? Great logic. 75% is "consensus?" I guess we're redefining dictionary definitions too!
Again, please respond to this, specifically, with regard to miner's ability to force users to install adversarial software:
Again, my response is that I have no idea what you're talking about when you say “miner's ability to force users to install adversarial software”. I have certainly made no such claim.
We are talking about the removal of a consensus rule. That = hard fork. You claim that miner support = user support. Well, for users to actually support the new rules, they need to enforce them. They can only do that by uninstalling their node software and reinstalling new node software with a relaxed or removed limit. If no one besides miners updates their rules, and those miners violate the original rules, they are simply on a different network. In order for users to recognize those miners' network, they need to install compatible software that will stop rejecting their blocks....
Again, Miners determine what rules they will follow. Just as nodes determine what rules they will follow, and users determine what rules they will follow.
"Users" have no say unless they run nodes. SPV users have no say since the nodes they connect to act as their proxy. Nodes are all that matter, whether run by miners or otherwise.
Node software is the only thing that enforces rules on the bitcoin network.
And again - utter twaddle. See above.
LOL. Still with this? What enforces the rules besides
node software?
So now BTCD = Bitcoin Classic? How can that be, when BTCD will reject 2MB blocks as invalid, and Classic will accept them?
I have no idea what you’re talking about here. AFAIK, BTCD = the symbol used to refer to BitcoinDark. What the heck does BitcoinDark have to do with anything? As BitcoinDark is a completely separate blockchain, Classic will not accept BitcoinDark blocks.
Since the context was "alternative
compatible implementations" maybe don't assume we're talking about altcoins....
https://github.com/btcsuite/btcd