Bitcoin isn't decentralized
medium.com
medium.com
If they tried to exploit their 'power' in any way, people would just fork the chain and move on. They have no ability to actually take advantage of their position in any meaningful way.
You can't prevent someone from trying to mine, though. Bitcoin would have to develop some sort of defense or constantly be correcting whatever fork was the accepted truth.
Not only that, but if bitcoin dumps its miners as unceremoniously as you describe, it will create a lot of distrust between miners in general and the bitcoin users. I don't know what alternative hashing algorithm you had in mind, but if it becomes mineable by miners of another coin, they may see an opportunity to attack. Without a large community of miners protecting bitcoin, you will have thrown bitcoin to the wolves so to speak. And there is little reason for miners to protect bitcoin against such an attack, after they showed such disregard to the original community of miners.
So, no, miners are not as impotent as you make out.
If tomorrow the miners started freezing transactions and abusing their power, then 24 hours hence at least 10 new forks of Bitcoin would emerge with different hashing algorithms, all vying for dominance. And the next day another 100 would emerge. Which one would win? I don't know, but it'd likely converge relatively quickly.
Now, is this a bad outcome? Ya, it'd cause some short term disruption. No question about it. However, the miners know they can be routed around. And because they know that, they know they can't abuse their power without risking being cut out of the equation entirely. They are very strongly incentivized not to fuck with the network.
It's not quite that simple - the chain will need to be forked with a protocol whose algorithm doesn't allow these miners to continue to dominate. And achieving consensus on that in the heat of the moment will be non-trivial.
Any fork that continues to use SHA-256 will be a trivial target for attack by these miners; they won't blindly continue to mine the "defunct" chain.
1) As other posters have already noted, these miners have economies of scale already set up to dominate any fork that still utilizes the SHA hash. Changing the hashing algorithm would be akin to creating a whole new coin.
2) All sufficiently de-centralized crypto mining eventually devolves into an electricity arbitrage game. ASICs are way too easy and cheap to build to give anyone a lasting advantage via computing efficiency, and once you normalize for capital costs whoever has the cheapest energy wins. For scale you also need access to lots of bandwidth and proximity to fabrication of the hardware begins to matter since mining is a zero sum game. Given those needs China will probably end up dominating most sufficiently de-centralized crypto mining.
3) You drastically underestimate the political, economic, and social cache of the Chinese miners in both the Bitcoin and general cryptocurrency world. Not only do these guys underpin a niche industry (that's worth lots of $$$), but they have their own network effects at this point.
I think the main takeaway, which forking can never solve, is that the second any kind of decentralized currency shows any kind of value the powers that be will seek to centralize it. This is a problem with TOR just as much as it is a problem with Bitcoin, and one that I'm not sure we can solve today. Maybe one day we'll get another paper from Satoshi solving it for us.
No it wouldn't. The hashing algorithm is not intrinsic to Bitcoin. Changing it doesn't need to impact anything else.
> 2) All sufficiently de-centralized crypto mining eventually devolves into an electricity arbitrage game. ASICs are way too easy and cheap to build to give anyone a lasting advantage via computing efficiency, and once you normalize for capital costs whoever has the cheapest energy wins. For scale you also need access to lots of bandwidth and proximity to fabrication of the hardware begins to matter since mining is a zero sum game. Given those needs China will probably end up dominating most sufficiently de-centralized crypto mining.
That is true for PoW based mining, sure. Proof of stake doesn't have that problem, though.
> 3) You drastically underestimate the political, economic, and social cache of the Chinese miners in both the Bitcoin and general cryptocurrency world. Not only do these guys underpin a niche industry (that's worth lots of $$$), but they have their own network effects at this point.
I agree that they dominate and will continue to dominate hashrate. I disagree that that is a significant problem.
Same thing with PoS you can have individuals using shells to buy a large stake in the currency sure it would take a while but it's not impossible.
AOL's hostile takeover over of Time Warner was valued at ±160 billion dollars at the time, the total market cap of Bitcoin is now 200 billion, if it would be a PoS coin it could be a target of a takeover by corporations yet alone governments.
PoW is also more resilient to hostile take over since you can counter it by investing in more miners, while with PoS if some one gets 51% or w/e number is needed to control the consensus it’s game over and there is nothing to do about it.
So while you might think China can just take over all the mining pools it’s true but it’s reversible whilst if the Chinese population would come to own 51% of any currency and China would say comrades would you kindly turn over your ECoins there is nothing you can do about it other than fork over which would devastate the currency.
So yeah both cases with stake/hashrate are deadly enough with no plan B.
My biggest concern with Bitcoin is that atm we have no guarantee that the Chinese mining cabal doesn’t have 51% already.
With PoS you can’t use the same strategy without negative consequences since you would harm the liquidity of the currency in the process.
You can have some PoS system which would tie the number of new coins created to the liquidity of the network and a few other attributes but I don’t see how this could not be fooled by simple moving currency around the network within wallets in your control or to side channel attacks (primarily gaining controls over wallets in the real world rather than only on the block chain).
That's why we came up with a way to prevent double spending WITHOUT GLOBAL CONSENSUS.
Feedback welcome!
So screw over all the people that made transactions with the hacked bitcoins before the hack was found.
Holy fucking shit! Now that I think about this, it is a massive timebomb waiting to happen! Once you have hacked the bitcoins, you can tumble them with other bitcoins, exchange them to other cryptocurrencies (which are also 1 way transactions so the person exchanging with the hacked coins is completely SOL), or exchange to fiat currencies (although that would probably be the most traceable so probably not). As you tumble and exchange the cryptocurrencies more and more, it becomes more and more difficult to hard fork the currencies to undo the hack.
My wild prediction. At some point:
1: Some black hat will gain a controlling compute share of a cryptocurrency (either the chinese ASIC companies or a massive AWS/google cloud/azure... cloud mining to override the majority share and convince the network that some illegal transactions occurred).
2: They will then proceed to massively tumble the hacked coin through different exchanges through multiple different cryptocurrencies so that hard forking is nigh impossible to undo the hack.
3: Cryptocurrencies all crash because they are susceptible to mining takeovers which cannot be detected quickly enough to hardfork to undo the hack which render their whole design impractical.
digiconomist [0] estimates that current etherum mining cost is 1.3 billion a year, or 3.6 million a day, or 151,000 an hour, or 2,500 a minute.
Multiply by 5 for cloud on demand premiums and you could dominate the etherum network for an entire day for 18 million. You could also do it for free if you can manage do to it with stolen credit cards.
What you see is higher transaction fees. It's no 0% or 100% denial of service.
[1] https://medium.com/@VitalikButerin/the-meaning-of-decentrali...
You managed to got two things wrong in one short sentence: it's not single ledger (everybody at each point have their own version, only to some degree compatible with anybody else), and it's not consensus ledger, as in consensus problem a.k.a. Byzantine generals.
Bitcoin never aimed at consensus, it was always about timestamping the documents (transactions).
The important point that he's missing is that, even though the pools are centralized, the individual miners are not! And this is really the main difference.
As ASIC chips get faster and faster we'll reach a physical point that it won't be beneficial to keep large rigs running in a central location - because of the economy of energy distribution.
I'd love it if there was a greener solution for decentralization than energy, but there isn't, otherwise we'd be using it! It's as simple as that.
Look at everything out there:
Git
The Web
IRC
Usenet
IPFS
The author assumes that all Chinese miners are controlled by the same entity. Which, while I do believe that the Chinese govt. can shutdown any miner they want to, I don't believe that 100% of the miners are operated by the Chinese govt. If you break down the pie chart into the different Chinese entities that actually operate the miners it begins to look more decentralized.
After reading the paper that was posted here the other week about forking the network using BGP to effectively create two sepereate Internets, I think that if a country did go rouge, we could all just set our firewalls to drop all connections from Chinese nodes and that would be that.
Let them run their own chain where they can manipulate their coins price like the do the yuan.
"If paypal wanted to ban my account they would do it already. Must be secure to store all my money there then".
>If you break down the pie chart into the different Chinese entities that actually operate the miners it begins to look more decentralized.
The 4th chart is actually the official hashrate distribution from https://blockchain.info/pools
I never said they are operated by the gov, __they are under its authority__. Because that's how govs worked for ages.
>I think that if a country did go rouge, we could all just set our firewalls to drop all connections from Chinese nodes and that would be that.
"We would just change PoW". "We would just cut off China from Internet". Just do a thought experiment - those are not solutions
Why wait for a longer chain? What do they stand to gain? Act now and secure control. If the network is a vulnerable as you say, why has China not made their move? They control a majority of miners, they control their country completely and even manipulate their traditional currency to stay competitive economically, why would they not seize control over the network before it the US govt. becomes interested in protecting it?
>"The 4th chart is actually the official hashrate distribution from https://blockchain.info/pools"
Right, but pool membership is voluntary. If a pool doesn't act in support of its miners then the miners will go elsewhere. Pools are like political parties, centralized in appearance, but if you ask the members of a party what they think you quickly see that they never agree on everything.
>I never said they are operated by the gov, __they are under its authority__. Because that's how govs worked for ages.
Which is the crux of the issue. As long as the Chinese person running the miner can point their miner at a different pool or switch software then the government does not control the miners. I'm not current on the state of Chinese political affairs, but I was under the impression that they are not that authoritarian. Knowing that, you cannot count all those pools as agents of the Chinese govt. and can't make an argument that they are centralized. Just because their best financial interests align currently does not mean they will be aligned in the future. In my estimation, the Chinese govt. is losing its grip on the Chinese economy, which leads me to believe that in the future the contral govt. will have even less ability to manipulate like they do now.
>"We would just change PoW". "We would just cut off China from Internet". Just do a thought experiment - those are not solutions
Except the "cut China off from the internet" is feasible, see this paper on the impact BGP hijacking could have on the network: https://btc-hijack.ethz.ch/. By your definition, nothing is a solution until implemented, which I think is a bit silly.
Of course we couldn't completely separate the Chinese miners from the wider Internet, but we could make any attacks on the wider network so hard to achive that the electricity they would waste trying to attack us would cost them more than being a good cryptocitizen would make them.
But then again, this is just an artifact of democracy when you replace citizens with CPUs. If more miners support one chain, that is the legitimate chain. That's what's outlined in the Bitcoin paper. This seems more like a political issue than a technological one.
Would I be wrong to think that every miner (or at least every entity who is mining, not nessesarily every computer that is mining) would have a vested interest in running a full node as well? That would put control of the nodes in roughly the same hands as those who control the miners right?
That's not how it works. All it takes is a single connection bridging the partition for a chain with more work to replace your chain. That connection could be through a VPN, Tor, a satellite (https://blockstream.com/satellite/), or someone physically carrying a USB drive containing a better chain across the border and starting up a node.
Honeybadger chain don't give a shit.
I guess if a country wanted to they could jam satellite communications, close their borders and cut all major fiber lines, but that still wouldn't stop the ham radio folks from running pirate stations broadcasting blockchain updates lol.
Thanks for the correction!
Increase the diversity of node connections.
The more connected an AS is, the harder it is to attack it. We therefore encourage Bitcoin node owners to ensure they are multi-homed. Observe that even single-homed Bitcoin nodes could benefit from extra connectivity by using one or more VPN services through encrypted tunnels so that Bitcoin traffic to and from the node go through multiple and distinct ASes. Attackers that wish to deny connectivity through the tunnel would need to either know both associated IP addresses or, alternatively, disrupt all encrypted traffic to and from nodes— making the attack highly noticeable.
Ham radio is another great idea. It’s a bit of a gray area, at last in the US where commercial use and encryption (but not digital signatures) is prohibited. Transmitting block headers may not strictly be against the letter of the law. The transactions themselves though probably would be.
I’ve been meaning to set up a service listening on APRS-IS (http://www.aprs-is.net/) that rebroadcasts transactions to the Bitcoin network. I don’t think such a service would violate the regulations, but users who wish to use it would be responsible for ensuring their transactions did not (if that’s even possible)
p2p cash! => ok, store of value
decentralized => ok, let's just hope China will be good to us
I hold quite a few BTC, but I prefer to remain realist.
Change the PoW algorithm. Do you follow bitcoin, or a dead algorithm?
It is always best to understand a subject before commenting on it.
And that argument is getting tired. You need to update your script.
"Each node works on finding a difficult proof-of-work for its block."
Quite clear that nodes look for the proof-of-work solution (aka: mining).
You can also see there is a whole section in the paper, section 8, that talks about verifying payments w/o running a node.
So let's talk about nodes and consensus as defined in the whitepaper and implemented in nodes.
Let's start with the bitcoin white paper (https://bitcoin.org/bitcoin.pdf) :
> Satoshi from the Bitcoin white-paper chapter 12 'Conclusion' : The network is robust in its unstructured simplicity. Nodes work all at once with little coordination. They do not need to be identified, since messages are not routed to any particular place and only need to be delivered on a best effort basis. Nodes can leave and rejoin the network at will, accepting the proof-of-work chain as proof of what happened while they were gone. They vote with their CPU power, expressing their acceptance of valid blocks by working on extending them and rejecting invalid blocks by refusing to work on them. Any needed rules and incentives can be enforced with this consensus mechanism.
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.
What does this mean if you are but an intrepid traveler amongst the erstwhile numpty-folk?
Nodes are agents in a multi-agent system with an agreed set of consensus rules (https://www.cryptocompare.com/coins/guides/how-does-a-bitcoi...), which they and they alone enforce, that ensure that the system functions. Transactions are propagated through the multi-agent network based upon the agreed consensus rules by nodes, which are agents in a multi-agent system. Miners retrieve valid transactions from any of these nodes, which are agents in a multi-agent system. They then order the transactions, and perform a hashing function on them until the hashing function returns a value that is suitable to the nodes, which are agents in a multi-agent system. They then pass the new block that they've created to the nodes, which are agents in a multi-agent system. The nodes, which are agents in a multi-agent system, then validate the block to ensure that each of the transactions within the block agree with the consensus rules. Then the node, which is an agent in a multi-agent system, extends the block-chain by attaching the new block to it. They then pass the new block, if it is valid, to other nodes, which are agents in a multi-agent system. Then each of these other nodes, which are agents in a multi-agent system, each do the same validation on every block.
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 extends the blockchain. Miners don't. The node replicates the block to other nodes. Miners don't. It is the validation of the nodes, and their CPU's, that define and police consensus in bitcoin.
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 nodes don't want, it is rejected. Miners work. Nodes validate. So nodes are the proof in proof-of-work.
Nodes accept the transactions, validate the transactions (using their CPU), replicate the transactions, maintain the mempools, validate the blocks (using their CPU), extend the blockchain (using their CPU), replicate the blocks, serve the blockchain, and store the blockchain. Nodes even define the PoW algorithm that miners have to employ. If you can't convince these node owners that are using their node on a day-to-day basis, to uninstall their node software and install your new node client, especially when that node client decreases their node security and decreases the network security, any change you have is going to go exactly nowhere.
So nodes maintain the protocol, not miners. It is thus. It has always been thus. If you can't convince all of those node owners running their node clients to uninstall one client and re-install another, any change you have to consensus is DOA.
See for yourself. Download it. (https://bitcoin.org/en/download) It's currently at 0.15.1
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.
Ya need to turn off that rbtc tap. It makes ya stoopid.
Thus endeth thy lesson.
"Decentralized credit rating on the Blockchain" https://us.teamblind.com/article/decentralized-credit-rating...
Wouldn't exchanges (who are holding all the money and are not (explicitly NOT) based in China still have the cash to fund withdrawals? Wouldn't the rest of the world STILL be free to fork the chain to a good faith ecosystem? Isn't Bitcoin Core largely made up of non-Chinese?
Security derives not from hashrate but from energy consumption. E.g. Ethereum has a many orders of magnitude lower hashrate but its energy consumption is a significant fraction of bitcoin's.
That would cause minimal disruption while giving the Chinese government a massive payout. There's a lot of value for China to push that.
EDIT: This would actually cause a hard fork. Any non-Chinese node doing verification would pick up the illegal block and discard it, creating a fork between Chinese and non-Chinese -- with the Chinese fork having the majority of processing power behind it. At that point, you'd just need a Bitcoin client change to exclude the Chinese fork, I'd guess?
But miners don't have the power to cause an invalid transaction to become valid, if they were to insert an invalid transaction in a block, the block would be rejected by the rest of the network.
There is no single one point of failure. None. Why? because this isn't about 'one ring to rule them all' nor 'one token to use'. Look at this entire ecosystem of crytpocurrencies, as a whole.
Sure the code has had some issues but...those were ironed out many years ago. Even if multiple people own 1M tokens...guess what? It's distributed....many....many more times than our current oligarchy system from central banking and fiat currency. Where the USA prints money and accounts to no one but themselves.
Anyone could look up how systems create points of failure. The crypto network, as a whole, has more computational power than numerous supercomputers. They aren't just 'solving puzzles', as Bitcoin 101 people are saying. These are built on-chain and off. Online and off. This thing, should be seen as a biological wonder. This is like a virus, trying to consume us all. I strongly doubt our, current and imperfect, society can stop this new paradigm shift. We are entering a phase of our history that will change how we value and interact with one another.
It's here, it's incentives are ingenious. No war, bombs nor law can stop it. It is has no weakpoints. Those weakpoints that exist, are mitigated by other areas of the network being able to offload that risk.
Or after skimming this guys article. It DOES NOT MATTER that 3-4 companies try to game the 'mining hashpower'. Why? because ~17M tokens already exist. Many of those earlier adopter CAN and DO shift the entire market, as they should. This isn't about 'hashpower'. This isn't about thinking about Bitcoin in a very traditional sense. Think of every aspect as a weakpoint and stakeholder. With all aspects being attributed a value. Sure, an exploit can be found, but over time, those exploits decrease exponentially because more brain, computational, and social dynamics have been 'attacking' the system. This system grows and evolves and it's adaptable based on the behavior of humanity. People choose the value and the system adjusts.
P.S. I know I sound weird and maybe esoteric but...I've been watching this space almost since the beginning. I wish I entered sooner but I just didn't believe anyone would ever adopt it. The early days of bitcoin, these tokens were given away, proud and free. Now, 50 of them (one early block) could pay for most, if not all, 1st world college tuition. Or a home. The cost? Being socially crazy and weird. Well...things are a bit different now. Why? What is the math about? What are the social dynamics about? Why are 'splits' so contentious? What are those social dynamics about? There is SO much going on here that 90% of people don't know, let alone don't get. 20 years from now, we'll wonder why we/humanity didn't think of this sooner.
P.P.S. I'm not resting on my own opinion but instead have been challenging my own throughout this 'bitcoin experiment' and I am open to changing my mind but...the math is decent, the software is decent...I look forward to when someone can articulate 'major' flaws that can 0 day the system. Or even 30 day the system. It's too ironclad but feel free to 'enlighten me'.
People are trying to figure out how to make mining less centralised. None of these growing pains are some kind of fundamental flaw that cannot be overcome.
Without consensus, the best-case scenario would be that it results in a fork.
No it isn't actually.
It will show likely 99% male.
Red hashes no! Pink hashes yes!