A few years ago I got interested in the path being cut by blockchain technology. My initial interest was due to one of its most obvious and immediate applications: Voting. Over the last year the hype machine around it has projected the path going through the woods, over a hill, and onwards to the moon. A lot of people are letting their imaginations run wild on a technology which isn’t the right tool for the job at present and may never be.
What It Is
So let’s start off what Blockchain is and what it does well.
Right now the blockchain is what it says on the tin. It is a connected chain of blocks of information. In the case of the bitcoin’s blockchain, every 10-15 minutes a new block is added by the thousands of miners working on making it at any one time. These blocks of information can be made to store almost anything, but for right now we’re almost exclusively storing a ledger of who has what. This ledger is leger-andary, the most famous ledger is called bitcoin. Part of what makes cryptocurrencies such a steep learning curve is that it takes two complex ideas working in tandem to make them it happen. Explaining cryptocurrencies is kind of like explaining a car to a neanderthal. First you have to explain how a wheel works to move stuff around with less effort, and then you have to explain how an engine moves the things with wheels around. For us the first part of the technology is the mining and building of the blockchain, the second is the ledger which decides who has what cryptocurrency.
Cryptocurrencies are particularly awesome because they fill a gap in the market that nothing has ever filled before. Now two anonymous people in the world can exchange massive amounts of money between each other without relying on any central authority like a government or bank. There’s no heavy gold bars, or wads of cash taped to people going through airport security. The extra-governmental revolution is here, you can now send me $15 million dollars! In... 15 minutes. It’s basically like cash for the internet age, allowing a certain level of anonymity, tax avoidance and freedom from institutions but now with a lot more convenience.
What Doesn’t Work
So what is wrong with the blockchain world? We discussed the hype in the last article, where people people throwing around the word “blockchain” to get more investment into the things that they’re doing. We have ICOs for blockchain social networks, blockchain advertising platforms and even blockchain flying cars.
The trigger for a lot of the tech hype got started with one of the new arrivals on the block: Ethereum. I went to one seminar recently where the presenter claimed he would be finished building an Ethereum general AI by the end of the summer. I don’t often say this, but that has not and will not happen. Only one person in the audience questioned him.
Data Size Problems
As A User
So the first issue with blockchain relates to the size of data in a block. Each block in the blockchain contains data. Although primarily built for the purpose of a ledger you can get almost anything into the OG bitcoin blockchain. You could put an image in there, you could put some text in there, but the reason we usually put a ledger in there is because of the block size. Each block is only a certain number of megabytes so if you put an image in there it uses a lot of data, and could easily fill the entire block. Sure, it would be great to be able to store an image in there because it would be securely stored and kept intact across thousands of computers forever but to do so you would have to pay a lot of money.
Cryptograffiti lets you store images on the bitcoin cash blockchain by cleverly loading data into tags, at the time of writing a tiny little rabbit and heartfelt message costs around $5 to store. If bitcoin was the blockchain and you wanted to store a 1 megabyte image (the size of an average quality JPEG) the whole network would be working for 15 minutes just to store your single image. This means it would cost you a ton to do so. The price varies, but if you timed it badly you could easily spend $30,000 to get an average quality image on there.
As a side note: If you tried to get an entire block to yourself it would probably be impossible, because you would drive the bid up and some people (paying ransoms for family members) would be willing to pay hundreds of dollars for their transaction. You would probably have to buy it over the course of a day or two.
So if we want to store 100 images on each of the blocks, couldn’t we just increase the size of each block to 100 megabytes? To answer that we need to look at the other side of the bitcoin, and see things from the perspective of bitcoin developers and services.
As A Developer
The reason that the blockchain can’t have massive blocks is complex, but primarily it's because blockchain by its very nature stores a record of every transaction dating back to the beginning of the chain. If every block was large enough to store people’s music, files and documents, less and less people would have a full copy of the data (full nodes) and the few remaining full nodes would be overtaxed by people simply retrieving that data. If you are a normal bitcoin miner with a light node you only have the last 550 blocks, so the guy with his birth certificate in the blockchain can’t come to you for a copy of it. As it is currently setup, all those people have to retrieve their data from full nodes and to keep the number of full nodes large enough the network has to realistically keep the blockchain fitting on a standard web server.
When you download to work with any popular blockchain you have lots of other people's stuff in it including transactions for the coins driving it, other startups making bullshit apps, someone keeping a ledger of fantasy football scores and people trading virtual cats. To work with the blockchain you have to keep a copy of all their data too if you have a copy of the blockchain to work on. It’s true that you can process that chain for data that is just relevant to you or you could pay a service setup to query the blockchain for you, but both those solutions carry costs and somewhat defeat the purpose of using blockchain in the first place.
The blockchain isn’t a good place to store large amounts of data. At this point it is good as a secure ledger but it is not good for storing files or the data required for millions of transactions a second. If it had to store the data that Visa stores each block would be half a gigabyte which is about a hundred times larger than most currently are. Visa could pay for storing a full copy of their data, but you probably wouldn’t want to be on that block chain if you were running a business that needed to compile data or participate in that chain.
The second issue is the rate that the blocks are being “mined” limits the rate of data going into the chain. The speed of mining is intentionally set up at a certain timespan to provide a predictable release of reward coins to the successful miner who mined a block, and also as a way to prevent the ballooning data discussed above. When people are solving the cryptographic problem too quickly, the difficulty increases to maintain a regular interval (at least on every blockchain I’ve come across). Because of this you can easily be waiting 15 minutes before other people can confirm that money has been transferred let alone see a verified document that you have decided to share to a blockchain. We’ve grown accustomed to the instant availability of shared data on services like drive and dropbox. Again, only in the most special cases like locking in a land title would people want to use the blockchain.
The speed issue has solutions that work for some things, but the solutions that involve fixing the speed issue so far also reduce the "distributed+permanent" factor that blockchain has, which does make it less attractive when you compare it to compeditors.
The third issue is energy usage which is finally getting a lot of press coverage. If the data centers that power the internet weren’t bad enough the energy poured into generating the world's blockchains is astounding and bordering on irresponsible. With people worried about carbon emissions and climate change it’s pretty unfortunate that every bitcoin transaction uses the equivalent to 9 days of household energy usage and climbing. The chain could be just as secure with a tiny fraction of its current energy usage. All those millions of machines mining give the blockchain its integrity and its intrinsic value (someone must have spent $1000 to make this bitcoin) but our societies has to cover the cost of that energy.
I can see a totally different angle of attack here for anyone opting out of using cryptocurrencies, putting the money laundering and tax avoidance aside the insane waste of energy make the ethics of the blockchain questionable. This issue is quite likely to politicize cryptocurrencies, I could see the environmentalist parties of the world starting to push for a tax on cryptocurrencies. I could also see people refusing to accept currencies that are built on proof of work and people being shamed for using certain currencies which would really undermine the effort to make these things accepted and normal alternatives to dollars and yuan.
It’s interesting to note that a year ago it was common for people to say “Bitcoin can’t compete with Visa, because that can handle 4000 transactions a second while bitcoin can handle 4”. That problem has a very solid theoretical solution that should be implemented in 2018 called the lightning network which both speeds up transactions and reduces the amount of data on the chain. This re-enforces blockchain technology as being good at ledgers and very useful to the financial system where the security might be worth the price. However this still doesn’t mean “replacement for the financial system” and it definitely doesn’t mean “replacement for data storage”. For now the blockchain might be secure and anonymous, but it is expensive, slow and energy intensive even at the thing that it’s best at let alone the crazy things that it’s being imagined for. Companies doing all sorts of things like to drop the “blockchain” buzzword in but you have to look at what the blockchain is competing with for the foreseeable future. On one hand you can have a well configured and secure server storing your information. These existing servers are cheap, fast and far less damaging to the environment. They are also rapidly improving in their own right and dropping in price every year. What is being proposed by blockchain is a huge network of computers grinding away to store a small amount of information in a secure, anonymous and distributed format. Blockchain isn’t going anyway anytime soon, but it also might not being going any further. It’s quite possible that it becomes a popular way to transfer assets between entities, and that is where it ends.