Bitcoin may have generated countless salacious news headlines, but it’s a cameo player in a much bigger act. The blockchain is the real innovation that that makes Bitcoin work, and could well outlast the upstart currency. But it’s in trouble – and Silicon Valley has forked out millions to try and save it.
The blockchain is a regularly updated ledger detailing all of the transactions on the Bitcoin network. It doesn’t run on any one server, though: it’s decentralized, with countless copies distributed around the network. It’s also cryptographically sealed, so that no one can change it. That’s what stops someone spending Bitcoin, claiming that they didn’t, and trying to spend it again.
Every ten minutes, a new block of data is added to the blockchain, detailing the latest transactions that have taken place. Each block includes a cryptographic hash of all its transactions.
A hash is unique, and is computed based on the transaction data that it represents. If any part of the underlying data changes, the hash changes too. Any fraudster wanting to tamper with a block’s transactions would need to also alter the hash recorded for that block to match the new, fraudulent set of transactions. Given that the computing power distributed around the whole Bitcoin network takes ten minutes to produce the hash, that’s a tall order.
The blockchain uses another trick to further secure itself: every block’s hash also uses the previous block’s hash as an input.
This means that to alter transactions in a block, the fraudster would also have to recompute the hash of the next block, and the block after that, all the way down the chain. That’s practically impossible. Technologically speaking, it’s a beautiful system.
There’s just one problem with the blockchain: it’s huge. At the time of writing, there are around 120,000 transactions each day, and all of them must be hashed into the blockchain. Each block in the blockchain is currently limited to 1Mb in size. This is enough right now, but it won’t be for long.
Mike Hearn, one of the core developers of the software underpinning Bitcoin, predicts that the number of transactions will exceed the network’s current capacity in winter 2016.
Gavin Andresen, chief scientist at the Bitcoin Foundation, has lobbied to increase the maximum size of each block – but changing the code takes time, and getting everyone to update their Bitcoin software will take longer still. Such is the debate about it that he has threatened to work on an alternative version of Bitcoin with Hearn if people don’t agree to increase the size of each Bitcoin block to accommodate more transactions.
The problem may get worse, in part because people are starting to use Bitcoin’s blockchain for far more than just sending money. Businesses drawn by its decentralized transparency and trustworthiness are embedding other information inside Bitcoin transactions to support their own applications. They’re using it to prove that documents exist, to carry document signatures and to build new businesses that let you create and trade your own custom assets.
This is all very innovative but the Bitcoin blockchain was supposed to be a payment network, not a messaging bus for commercial businesses. How damaging this is depends on how companies insert that information, but they’re all bending the network in a way not originally intended.
One of the most common ways for people to use the Bitcoin blockchain for things other than sending money is to send a tiny fraction of a Bitcoin, creating a transaction on the blockchain. They then write a message in a particular part of the transaction’s record, known as OP_RETURN.
If people program their applications to read and act on OP_RETURN messages, then the transaction could be used to represent something else, like the notarisation of an online document, or a blockchain-based secure messaging system.
If these businesses start gaining significant traction, and add transactions irresponsibly, then it could contribute to the crippling of the Bitcoin blockchain.