Pages:
Author

Topic: Question regarding the role of miners vs nodes in securing the network - page 2. (Read 487 times)

legendary
Activity: 1512
Merit: 7340
Farewell, Leo
Obviously it is not Bitcoin the way it was originally designed, documented, and presented in the White Paper.

But, it's the way it was visioned;

If the network becomes very large, like over 100,000 nodes, this is what we'll use to allow common users to do transactions without being full blown nodes.  At that stage, most users should start running client-only software and only the specialist server farms keep running full network nodes, kind of like how the usenet network has consolidated.

For now, everyone just runs a full network node.

I anticipate there will never be more than 100K nodes, probably less.  It will reach an equilibrium where it's not worth it for more nodes to join in.  The rest will be lightweight clients, which could be millions.

At equilibrium size, many nodes will be server farms with one or two network nodes that feed the rest of the farm over a LAN.

The current system where every user is a network node is not the intended configuration for large scale.  That would be like every Usenet user runs their own NNTP server.  The design supports letting users just be users.  The more burden it is to run a node, the fewer nodes there will be.  Those few nodes will be big server farms.  The rest will be client nodes that only do transactions and don't generate.




Centralized pools push miners out of the bitcoin ecosystem by enslaving them, making them work blindly on their stupid 80 bytes block header templates which point to an unknown set of transactions they have no clue about.
I think calling miners slaves is a little bit excessive. Miners can leave and rejoin the pool at their own willing. They're also free to move on a different pool. As for the block header, that's what they've agreed upon. If you don't like these rulings, you can try solving a block yourself or work for a pool with much less effort.
legendary
Activity: 1456
Merit: 1175
Always remember the cause!
Bitcoin, the way Satoshi Nakamoto designed it originally, was not supposed to face such a situation in which nodes and miners are almost two different, sometimes conflicting, groups of actors.
I don't think so.
It is obvious that you can never prevent people from sharing a "computational work", and that's exactly what pools are meant to do. This is not specific to bitcoin or any specific algorithm, anything that can run in parallel (multiple threads) can also be expanded to run on multiple systems.
Satoshi also touched on this matter indirectly in his Email back in 2008 (before Bitcoin was launched) predicting that people will mostly run SPV clients instead of running full nodes and be mining bitcoin while it will be left to "specialized server farms" to do so.
I knew about Satoshi's 2008 e-mail, it is Satoshi, not the White Paper, not Bitcoin to be specific.
In the paper, Bitcoin is discussed and justified as a network composed of nodes incentivized to act loyally because of the rational cost/benefit assessment they could make, costs being the work and benefits being the reward, hence they are ALL mining full nodes. It is Bitcoin the way it is presented and documented, not the way it is discussed loosely by the inventor.

As of your sharing argument:
Sharing is good, I used to be a socialist for a long time, I love sharing, but not the centralized way, I hate centralization and pools are centralized, simple.
Other than personal ambitions and judgements, there is strict mathematical reasons for avoiding centralized sharing of computational work: Collusion resistance is linearly dependent on the cardinality of the set of actors. Once you got 3 huge players possessing like 75%+ of votes, you are doomed simply because they could easily collide, like by setting up a meeting or calling each other, couldn't they?

And there is more:
Centralized pools push miners out of the bitcoin ecosystem by enslaving them, making them work blindly on their stupid 80 bytes block header templates which point to an unknown set of transactions they have no clue about. It is literary, an alienation process by which actual miners, are kept out from the network as they have no single reason to run a full node.

Obviously it is not Bitcoin the way it was originally designed, documented, and presented in the White Paper.
legendary
Activity: 3472
Merit: 10611
Bitcoin, the way Satoshi Nakamoto designed it originally, was not supposed to face such a situation in which nodes and miners are almost two different, sometimes conflicting, groups of actors.
I don't think so.
It is obvious that you can never prevent people from sharing a "computational work", and that's exactly what pools are meant to do. This is not specific to bitcoin or any specific algorithm, anything that can run in parallel (multiple threads) can also be expanded to run on multiple systems.
Satoshi also touched on this matter indirectly in his Email back in 2008 (before Bitcoin was launched) predicting that people will mostly run SPV clients instead of running full nodes and be mining bitcoin while it will be left to "specialized server farms" to do so.
legendary
Activity: 1456
Merit: 1175
Always remember the cause!
I think there is an important point overlooked in this thread:
Bitcoin, the way Satoshi Nakamoto designed it originally, was not supposed to face such a situation in which nodes and miners are almost two different, sometimes conflicting, groups of actors. Nodes and miners started to deviate only after the invention of pools and SHA256 ASICs, both taking place in the ecosystem when there was no Satoshi anymore. So, it is not a normal or pre-planned situation, furthermore it happened without getting any proper treatment. Bitcoin was great enough to absorb these events and adopt, yet it is very important to recognize both pools and ASICs as major open topics to be addressed.

Back to Op's question about the roles of each group in securing the network against 50%+1 attack:
It is hardly considered an 'attack' for an entity to put her hands on such a majority of hash power, unless s/he attempts a re-org for scamming specific victim(s) who didn't have enough patience to wait for a safe number of confirmations before accepting the attacker's payment as being finalized and releasing their assets.
Actually, an in-depth analysis of the problem could prove that there is always a threshold of safety for a receiver of bitcoin transaction, while this threshold is proportional to the total value of transactions that the sender is trying to convince the user to accept as being legitimate and finalized.

In practice, users adjust this threshold by applying factors derived from real-world information about the costs of re-org attempts, it is why even the most cautious users do accept payments in bitcoin after few confirmations, nowadays, and it is why bitcoin is the king in cryptocurrency for the time being, considered to be 'the most secure', it is VERY hard, hence costly, to run a scamming double-spend scheme by re-writing just a handful of blocks.

Obviously, non-mining Bitcoin nodes have nothing to do  in terms of 'helping' the victim(s) because they experience the hypothetical re-org event all the same as the victim(s), though they are not scammed in a double-spend scheme.

Now, let's take a closer look:
As I said, in Bitcoin, users are safe against double-spend even though there could be an evil spender with unlimited access to huge hash powers, but doesn't it look odd or somehow counterintuitive or at least surprising?
Sure it is, and it is what makes Bitcoin the invention of the century as the ultimate solution to double-spending problem in cryptocurrencies. Bitcoin is absolutely safe against double-spending attack, it has always been and will be existentially double-spend proof, forever.

The rest of OP's security concerns about malicious counter-protocol blocks, with malicious txns injected in, are irrelevant because they are not categorically security issues. Full nodes are sovereign entities that follow the protocol and consensus rules independently, comparing work load of competing chains takes effect AFTER imposing consensus rules, chains have to pass the consensus test to be qualified for the race, although the client software does it somehow in a reverse order, ultimately it is what the code does.

legendary
Activity: 1512
Merit: 7340
Farewell, Leo
What's your view on that?
You have to see things a little more differently and maybe get away of the network thinking.

Regulating Bitcoin doesn't necessarily mean that governments will destroy it by establishing a 51% attack or they'll forbid you to be part of the peer-to-peer network. No, currently, you have every right to run full nodes and verify the validity of the block chain. So, in theory Bitcoin works. No one can stop this movement unless strict authoritarianism prevailed in the whole world.

But will the cryptopunks' dream come true? To sum their dream up, they supported anarchy and so, Bitcoin began with this ideology. They were visioning a currency that will not be regulated by anyone nor controlled. While it does, indeed, work decentralized, don't you see that the society's permission is required to adopt it officially? There are already many exchanges asking for KYC which ruin one of its principles; anonymity. So, besides its deflationary nature, how does it differ from fiat?

As time goes on, it'll be seen more as a weapon from the side of the governments.
legendary
Activity: 2450
Merit: 4415
🔐BitcoinMessage.Tools🔑
And I wonder... How can one see it as a symbol of freedom since it's regulated by the governments? They may not achieve on destroying the network, but making its purpose meaningless is worse and they already do it by regulating it. The crypto-anarchists' dream doesn't seem to come true. 

With Bitcoin you're neither free or besieged. You're a free besieged.  Smiley

I don't quite understand what you are trying to say. Can you enumerate some of the government regulations that succeeded in making bitcoin's purpose "meaningless"? In your view, what are the main purposes of bitcoin? Can the government effectively prevent you from transacting with anyone they consider a bad person? Can the government meddle with the rules of the network by forcing miners to comply with the law? Wouldn't miners go to another place if the law they were coerced to comply with considerably reduced their profits or even made their business lossmaking? Can the government overwrite the rules of the network by running nodes with incompatible software? Because I personally consider consensus rules are what governs and regulates the network. If you can't change them, you can't regulate bitcoin. The only power you have is verify for yourself transactions and blocks comply with the rules, which you previously agreed with when joined the network for the first time, by running your own full node. What's your view on that?
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
In big block scenario regular users can't run their full nodes
I think the correct phrasing is that it discourages them to run a full node. You should always have the right to run a full node, but if you're making it hard and expensive for a person, which would happen in other block chains if they had the same amount of transactions as Bitcoin's, calling it decentralized is highly ironic.

Bitcoin is a symbol of freedom, it is a means to express one's opinion and disagreement regarding the government's monopoly on money issuance.
And I wonder... How can one see it as a symbol of freedom since it's regulated by the governments? They may not achieve on destroying the network, but making its purpose meaningless is worse and they already do it by regulating it. The crypto-anarchists' dream doesn't seem to come true. 

With Bitcoin you're neither free or besieged. You're a free besieged.  Smiley
legendary
Activity: 2450
Merit: 4415
🔐BitcoinMessage.Tools🔑
Right now the network is a decentralized entity. But in big block scenario it's a centralized entity that can be regulated, which means Bitcoin itself gets regulated. Today we have some tiny percent of hasing power that wants to enforce some government blacklists, but in case of centralized network it can easily be more than 50%.

Many people demand regulation for the decentralized bitcoin network, but they still fail to realize that "regulated bitcoin" is nothing else but an oxymoron. If there is only one node or several nodes in the bitcoin network, it won't become a centralized entity, nor it is going to be regulated. The first thing governments will do when they know that bitcoin is no longer decentralized is destroy it out of existence. Bitcoin is a symbol of freedom, it is a means to express one's opinion and disagreement regarding the government's monopoly on money issuance. It is a symbol of disobedience to tyranny. If it loses its ability to maintain decentralization, it will stop being a symbol, it will stop being.
legendary
Activity: 3024
Merit: 2148
KYC will be demanded by centralized entities regardless if network security is overshoot, or undershoot. The point of debating for smaller blocks is to overshoot network security, to keep the network more decentralized, and to let the network scale out.

Right now the network is a decentralized entity. But in big block scenario it's a centralized entity that can be regulated, which means Bitcoin itself gets regulated. Today we have some tiny percent of hasing power that wants to enforce some government blacklists, but in case of centralized network it can easily be more than 50%.
legendary
Activity: 2898
Merit: 1823
Miners secure the network by keeping the cost of attack high. If many miners suddenly leave, the hashrate drops and it becomes cheaper to launch a 51% attack.

Nodes keep the network big, so it's harder to launch sybil-based attacks and not one can monopolize the network. In big block scenario regular users can't run their full nodes and have to rely on big servers that could be run by mining companies and be easily regulated, like for example demanding KYC.


KYC will be demanded by centralized entities regardless if network security is overshoot, or undershoot. The point of debating for smaller blocks is to overshoot network security, to keep the network more decentralized, and to let the network scale out.
legendary
Activity: 3024
Merit: 2148
Miners secure the network by keeping the cost of attack high. If many miners suddenly leave, the hashrate drops and it becomes cheaper to launch a 51% attack.

Nodes keep the network big, so it's harder to launch sybil-based attacks and not one can monopolize the network. In big block scenario regular users can't run their full nodes and have to rely on big servers that could be run by mining companies and be easily regulated, like for example demanding KYC.
legendary
Activity: 2898
Merit: 1823
The miners can’t change the consensus rules, they can’t control coins from wallets other than their own.

They can change the rules, but the important thing is not about their ability to make those changes but it is about getting others to accept that change. For example there was a change which introduced the ability to spend the old unspent coins (falsely referred to as Satoshi's coins) by the miners. Obviously no bitcoiner followed that change so it became a shitcoin that failed in its early days.


“They can”, is different from They Truly Can from the standpoint of Bitcoin. But you’re right, technically any miner or group of miners “can” change the rules, but it’s not Bitcoin. From Bitcoin’s standpoint nothing changed. Plus they would go back to Bitcoin because it’s more profitable. Why change the rules to fork to shitcoin?
Ucy
sr. member
Activity: 2674
Merit: 403
Compare rates on different exchanges & swap.
The 51% attack shouldn't be possible without all participants involved in running and taking part in network consensus... I sometimes wonder what happened at that particular point in time when miners became more powerful than all participants to the extent of having the ability to attack the network with higher hash power.
I think 51% of all network participants should have that kind of power to change things. That will likely make attack more difficult especially if you have clear rules how the power can be used by 51%.

Well, Bitcoin isn't perfect, I have noticed vulnerabilities that can be exploited but they're few compare to other cryptos I know about well. Infact it's probably the only true cryptocurrency as far I can tell, because it's well built (according to worlds standard), with principled developers.
legendary
Activity: 2450
Merit: 4415
🔐BitcoinMessage.Tools🔑
They can change the rules, but the important thing is not about their ability to make those changes but it is about getting others to accept that change. For example there was a change which introduced the ability to spend the old unspent coins (falsely referred to as Satoshi's coins) by the miners. Obviously no bitcoiner followed that change so it became a shitcoin that failed in its early days.
In other words, the moment they change the rules, they stop being bitcoin miners, instead, they're becoming the miners of "better version of bitcoin", which is also referred to as bitcoin fork or shitcoin.

And I repeat, saying that you can “merely” censor the transactions is ironic the least.
Paradoxically, but the "censorship-resistance" feature of the bitcoin blockchain implies that as long as you are following protocol rules you can do whatever you want including censor of the transactions you don't like. For example, you can put into blacklist the node that, in your opinion, has been propagating only FATF compliant transactions. You can't censor the censors, however, and you can't drive them out of the network if you both are part of the network.

legendary
Activity: 3472
Merit: 10611
The miners can’t change the consensus rules, they can’t control coins from wallets other than their own.
They can change the rules, but the important thing is not about their ability to make those changes but it is about getting others to accept that change. For example there was a change which introduced the ability to spend the old unspent coins (falsely referred to as Satoshi's coins) by the miners. Obviously no bitcoiner followed that change so it became a shitcoin that failed in its early days.
legendary
Activity: 2898
Merit: 1823
They can merely censor transactions.

And why would the bold part be important? It seems insignificant to me. The word “merely” should be meant ironically here. If they can “merely” censor transactions, they can also delete the whole transaction history and make the whole system useless.


Compared to what newbies might assume if a cartel of miners, or a state-backed entity, successfuly controls more than 51% of the total hashing power, yes “merely” that’s all they can do. The miners can’t change the consensus rules, they can’t control coins from wallets other than their own.
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
That is the whole point of PoW, isn't it?
That's the point of PoW, but Bitcoin is more than just a mechanism. I find its point lost if we assume that someone holds more than the majority of the hash rate. Whether they attack it or not; whether they replace the current chain with an empty one; whether they reverse a bunch of their transactions or not. Just because someone has more power than everyone else combined is enough for me to stop using it.

And I repeat, saying that you can “merely” censor the transactions is ironic the least.
legendary
Activity: 3038
Merit: 4418
Crypto Swap Exchange
In any case, it's in the entity's decision, not in the community's. We'll all be dependent on what they'll decide and we can do nothing in order to prevent it. The system will suddenly have a central point of failure.
That is the whole point of PoW, isn't it? If someone is willing to spend that much resources to do so, then I concede. PoW didn't fail and it has function as it should. The whole point of PoW is for those who wield the most power (PoW in this case) to decide whatever they'd like to do with the chain. Even if you throw out the economics of doing so, the effects of the attack is easily nullified by switching to a different algorithm.


An empty chain wouldn't weight that much. If we assume that each empty block is 80 bytes and the new chain's height is 700,000 whose work is greater than this one's, then it'll be a matter of 56MBs to completely destroy it.
Ahh okay. Though the node will throw loads of warning if a major re-org happens. It is very difficult to re-org those blocks though, your commulative proof-of-work is proportional to the amount of time that has passed, which means it is extremely expensive and time consuming to do so. If you're going to start today, then re-organizing the entire blockchain would probably take years at the very least (assuming >100% of the current mining hashrate). The impacts of it would be pretty limited, and honestly no one would even think about doing it.
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
If we are talking about a malicious actor with the intent to destroy the Bitcoin system at any cost, then you are correct. The entity with more than 50% of the global hashpower can do that regardless of what the nodes can or can't enforce.  This would be a VERY expensive attack, but is theoretically possible.
In any case, it's in the entity's decision, not in the community's. We'd all be dependent on what they'd decide and we could do nothing in order to prevent it. The system would suddenly have a central point of failure.

You cannot really delete the chain either, that is possible in theory, given that nodes only function the way that do. It is impossible for a whole chain of 300GB to be propagated over the network, it would literally take hours.
An empty chain wouldn't weight that much. If we assume that each empty block is 80 bytes and the new chain's height is 700,000 whose work is greater than this one's, then it's a matter of 56MBs to completely destroy it.
legendary
Activity: 3038
Merit: 4418
Crypto Swap Exchange
Yes, they indeed cannot force anyone to change the total amounts of coins ever issued, or increase their wealth from other people's money, but they can force the nodes to accept their defeat; to accept that their system is no more secure; that they essentially dug their own holes with the rules they all agreed to follow.
If that ever happens, then the game theory of it would've failed. Where there is a far more incentive to be dishonest than to be honest, and they can't force the community or the nodes to accept their defeat. Any attacks of this sort will always be one-off. 51% attacks or majority attack is a byproduct of a feature and the game theory aspect of it would've failed. It would be less of a 'defeat', but rather we can acknowledge that someone was willing to sacrifice a huge, huge sum of money to attack the network.

You cannot really delete the chain either, that is possible in theory, given that nodes only function the way that do. It is impossible for a whole chain of 300GB to be propagated over the network, it would literally take hours.

Pages:
Jump to: