Why Bitcoin will never be hacked
Sometimes it is claimed, that because it is digital, Bitcoin can be hacked in various ways, for example in order to steal money and/or alter its algorithm.
It is also said that if someone were to write a new Blockchain with new values, he or she would be able to reverse transactions or create new ones at will. Given that private Bitcoin keys are generated randomly and this can take place offline, there is evidently no mechanism to check whether or not a key has been used before. It is therefore possible to keep on generating new keys until such time as a so-called “key collision” occurs. That would mean that a key had been generated that was already in existence, with which Bitcoins could be stolen.
Bitcoin is a decentralized network comprising hundreds of thousands of Bitcoin nodes located on computers worldwide. They all operate according to the same rules, with which each node is in agreement. If a node is hacked – which is possible, but improbable – it at once become incompatible with the rest of the network.
If there are private codes located at a node that have access to Bitcoins, a hacker could steal these. But the hacker would have to use them in compliance with the rules adhered to by the rest of the network, otherwise the transaction would be declined.
As far as rewriting the Blockchain or writing a new one is concerned, Bitcoin mining uses a system entitled “proof of work”. This means that computing power and cost is required in order to create a new block with valid transactions and successfully attach this to the Blockchain. Since every block builds on the block before it, no one can successfully create a new block without recreating every block that comes after it. Writing a new block comes at huge computing cost. Rewriting the last valid block of 10 minutes ago would require the same computing power as that expended by all the other Bitcoin miners throughout the world. But even if this were to succeed, one would still be one block behind, since in the time taken to create the new false block, other miners will also have created another new block. If you go back several blocks, in the next ten minutes you will need as much electrical power as the rest of the mining world to make sure your newly written chain is valid.
The costs of such an attack would be extraordinarily high. Even if the transactions that were reversed were in some way so valuable as to make it worthwhile, it would be more practical to use this huge computing power to create new Bitcoin blocks “honestly”. On the one hand, this would yield a significantly higher reward. While on the other hand, a successful attack would at once destroy confidence in Bitcoin and whatever value that was derived from rewriting the chain would immediately be eliminated.
As for important collision attacks, the assumption that this is viable is based on a misunderstanding of the magnitude of the numbers concerned and therefore of the computing power and cost entailed in a key collision.