The miner's interests are purely profit based, so they will not adopt changes which reduce their chance of profit.
The miner's interests are purely profit based, so they will not adopt changes which reduce their chance of profit.
Incorrect, I can sign or construct any type of cryptographic payment I wish. Miners trade their Proof of work to prevent double spends in exchange for coinbase (currency issuance) that the market values. If miners chose to mine on a chain that no one wants, no one will trade for their coinbase.
The game theory nuance is, how do you organize an economy around changes to blockchain consensus? The only guaranteed way to ensure that that happens (from a game theory perspective) is to have miners lead the change. If user wish to lead the change, they still can but they take a risk in that no one will join them on the new consensus chain ("hey you guys said you'd construct payments like this and now no one is!"). There are more improved ways of rolling out these changes.
At worst miners can execute a denial of service for new transactions entering into the UTXO or attempt to double spend funds, or release blocks in a manner that negatively affects the profitability of other miners but they have _no control_ over how users handle their UTXO.
Bitcoin is anti fragile, each time it goes through a market challenger it gets better at handling it, not weaker.
The longest chain is always the most valuable.
From the perspective of people transacting on Bitcoin's infrastructure I suspect they'd call it "an attack."
You grossly underestimate the hashing capacity of the bitcoin network. The hashing capacity, at time of posting, is approximately 5,000,000,000 Gigahashes/second[1]. Spot measurement of the hashing capacity of an EC2 instance is 0.4 Gigahashes/second[2]. You would need 12 BILLION EC2 instances to 51% attack the bitcoin network.[3] Using EC2 to attack the network is impractical and inefficient.
[1] https://bitcoinwisdom.com/bitcoin/difficulty
[2] https://www.reddit.com/r/Bitcoin/comments/1btgl1/i_was_curio...
[3] x/(5e18+x)=.51 y=x/.4e8
Even most BTC users do not run actual clients anymore but use exchanges or wallet services which bundle huge numbers of users behind few actual Bitcoin network nodes.
I don't need to overcome the network, I need to invite the network to have arguments with itself, by finding a way to introduce widespread partitioning of the network.
In this, the preference to longer hash chains seems like a good idea in a unified clock model but a somewhat optimistic decision in a split clock world.
To do this you would need to have the equivalent hashing power of the network. Peers expect an nominally equivalent amount of Proof of Work for the difficulty adjustment. You would also need to guarantee that the peer connects to _no other_ peers
Your thinking is good adversarial thinking but it's already covered in the protocol.
No, if the miners mine on a chain that doesn't meet consensus rules, users will not follow it. If miners decide that the coinbase issuance schedule isn't to their liking, and decide to revert it back to 50 bitcoins per block, users will reject those blocks. This is a fundamental governance property of a blockchain.
Yes, users can reject Hard Forks.
But the problem is that soft forks can do basically anything. Yes, even increase the block reward, in a roundabout way, (by using added extension blocks that have special rules, and then requiring all transactions to go through the extension blocks.)
Although from the perspective of a non-conforming Node, this would just look like a DDOS style mining empty blocks attack.
At this point the only thing that users can do is change the Proof of Work algorithm. .... But, if the big players in mining have a bunch of GPUs on standby... well, it is not even guaranteed that this will work.
Only the longest chain that users consider legitimate. If users reach consensus on using rules that have lower transaction costs, it won't matter how long miners mine their higher transaction cost chain.
The big question is: can users achieve such consensus politically, or in practice do the miners lead the users because they need less organization to do so?
Besides the other response you received, there also seems to be a shift to PoS simply because PoW mining wastes a lot of electricity.
1. Politics. Ethereum has a leadership team which functions very differently from Bitcoin Core. For one, the creator of Ethereum is well known and outspoken. He and the other members of the Ethereum Foundation made it clear that their intention was always to move to Proof of Stake. Though there are some who may not support this move, the general community bought into the project knowing that this was the plan from the beginning. And there's a lot of trust of Vitalik.
2. Technology. Ethereum adapts much more quickly to mining difficulty than Bitcoin. Bitcoin can't survive with 90% of the hash power on one chain and 10% of the hash power on another chain. The smaller chain would take 10 hours to mine a single block and months to readjust the difficulty. It would be unusable. Ethereum has already shown its resiliency to a split during the DAO hard fork. The smaller chain adjusted quickly and survived. What this might mean is that with the change to PoS, there could be a dissenting faction that remains on PoW, and both chains will survive. This will allow the PoS chain to go ahead and push through with a split easily even without 100% support.
how is that any different to the existing currency system like credit cards and banking?
And users _do_ have a say in bitcoins. Namely, they can vote with their wallet (literally and figuratively).
Fiat currency is governed by central banks, which are arms of government, and are accountable to the public in the same way as the issuing government. Obviously, the degree of accountability varies from government to government.
And I say that as someone who voted Remain in the Brexit referendum (note that Varoufakis actually campaigned on the Remain side in the UK).
It's roughly similar to buying shares in a publicly-traded bank, which you can do as well as electing candidates for public office to whom the central bank, which is the entity making monetary policy decisions, is accountable.
So it gives you more relative power with altcoins only to the extent that those with more wealth are relatively uninterested in the altcoins in question compared to traditional banking; were a digital currency to succeed beyond a small niche, that would change and you would find yourself as drowned out by moneyed interests as you are in traditional banking on that avenue of leverage, and without the other avenues of accountability that exist with the governance of fiat currencies.
i dont believe that even owning a bank could you directly control monetary policy or procedures that the gov't legislates. You'd have to own either the majority of all banks, or own the gov't yourself (i.e., dictatorship), and even then, it's a hardsell.
Consider that miners also lose money if the thing they are mining loses value. Therefore, if enough economic actors (besides miners) switch to version B that has some new feature, everyone will want to use version B instead of version A. The miners who are stuck mining version A lose money because the currency they're mining is no longer as valuable.
Realistically, the economics of cryptocurrency features work out quite nicely. You can't just say "oh, the miners make the blocks, so they have absolute control".
He mentioned that.
Incorrect. Nodes enforce consensus in bitcoin, not miners. It is thus. It has always been thus.
Nodes have no say in consensus, the miners can ignore them and decide which transactions they want to include. All a node can do about it is complain to itself.
First, you have to understand what 'consensus' actually means :
> https://en.wikipedia.org/wiki/Consensus_%28computer_science%...
> A fundamental problem in distributed computing and multi-agent systems is to achieve overall system reliability in the presence of a number of faulty processes. This often requires processes to agree on some data value that is needed during computation. Examples of applications of consensus include whether to commit a transaction to a database (or, for example, committing blocks to a blockchain), agreeing on the identity of a leader, state machine replication, and atomic broadcasts. The real world applications include clock synchronization, PageRank, opinion formation, smart power grids, state estimation, control of UAVs, load balancing and others.
Nodes are the agents in a multi-agent system enforcing consensus.
Nodes accept incoming transactions and validate them. Miners don't. Nodes replicate transactions to other nodes. Miners don't. Miners take transactions from nodes, and order them in a block, and perform a hashing function on them (the only thing they do). Miners pass the new block to the node. The node validates the transactions in the block. Miners don't. The node validates the block. Miners don't. The node replicates the block to other nodes. Miners don't.
There is only one function that miners do. They take transactions, put them in a block, and hash them. As soon as a miner produces a block that any node determines does not obey consensus rules, it is rejected. It doesn't even matter if another node has already accepted, because consensus is aligned with all nodes. Any node that replicates non-consensus blocks or transactions is itself rejected.
So nodes accept the transactions, validate the transactions, replicate the transactions, maintain the mempools, validate the blocks, replicate the blocks, serve the blockchain, and store the blockchain. Nodes even define the PoW algorithm that miners have to employ.
Nodes maintain the protocol, not miners. It is thus. It has always been thus.
See for yourself. Download it.
https://bitcoin.org/en/download
It's currently at 0.14.2
https://bitcoin.org/en/full-node
> A full node is a program that fully validates transactions and blocks. Almost all full nodes also help the network by accepting transactions and blocks from other full nodes, validating those transactions and blocks, and then relaying them to further full nodes.
You should probably question how such a fundamental misunderstanding of how bitcoin works comes about. Is there a source for your opinion?