Devil’s blockvocate — what’s wrong with blockchain technology
Let’s take a moment to play Devil’s advocate. Blockchain as a concept right now is far from perfect. There, I said it. There are problems under the hood that need to be resolved. From developer wars to uncertainty in technological aspects. These need to be solved as development moves forward, otherwise blockchain will not become the game changer that I and many others expect it will.
Here I’ve split these into three main categories: technology; ethical and usability.
Let’s talk about tech, baby
Tech problem #1
Smart contracts are supposed to be smart because they automatically complete a predefined task once a predefined input is registered. In many cases this works fine. For example on the Photochain platform, smart contracts control the sales process. A photographic work is delivered to the buyer once the exact amount of Photon tokens is sent for the purchase.
However in some touted use cases, for example a car insurance contract, an input to a smart contract would be whether or not a car accident has occurred. A smart contract (at least not currently) cannot be monitoring a car at all times for damage. Therefore a third party service is needed. In the blockchain world these are known as oracles.
The problem with oracles right now is how to trust the information that they provide. In the case of a car accident, someone would be needed to verify that an accident indeed has occurred.
Tech problem #2
Climate change is one of the biggest issues that humanity has faced. Whilst some blockchain projects aim to streamline the process of environmental management, on the other hand some blockchains require a lot of energy for their functioning.
A few cryptocurrencies, including bitcoin and ethereum (for now) require mining of blocks. Blocks are the groups of transaction that are secured by solving a highly complex algorithmic hash. Unfortunately the only way to solve this hash is by throwing a lot of computing power at it and hoping that the right answer is found.
This is known as Proof-of-Work, as the blocks are secured by the fact that computing power has been put to work to solve the hashing algorithm. The problem is that a lot of computing power is needed — and it is only increasing. In November, when bitcoin transaction volumes were at their peak, a single bitcoin transaction required as much power as an American household uses in a week.
As a keen environmentalist myself, this simply is unacceptable. I don’t believe we can put technological benefits over cost to our environment.
Tech problem #3
Next, comes the question of scaling. How can we achieve a reasonable number of transactions per second, so that blockchains can be truly functional on a global scale. For example, the bitcoin blockchain can only process up to 7 transactions per second. Ethereum is limited to about 15.
This is because each transaction on a blockchain requires each and every node on the network to reflect this information in order to have the most up to date record of the blockchain.
Now, as the number of nodes on blockchains have increased exponentially, it takes longer for a transaction to spread across the network. Think of it like this — a pond is the blockchain and a stone is the transaction. In a small pond, a dropped stone will cause the ripples to reach the edge very quickly. But in a bigger pond, the ripples take much longer to reach the edge. I.e. it takes longer for each node to know that a transaction has happened.
Going forward, the number of nodes is only expected to increase. If we really are to reach the crypto economy, a surefire scaling solution is needed to ensure that transaction times are practical for real world use.
Ethics and developer wars
Ethereum right now is embroiled in a serious ethical dilemma — essentially what stance to take on lost funds due to hacks and errors. Ethereum has suffered a number of large fund losses in the last few years. Most embarrassingly, a highly prominent ethereum development company, Parity Technologies, accidently let a user permanently lock away $300m of ether that belonged to their other users.
The current debate centres over the fact that we know how much funds have been lost and we know who they belong too, so why don’t we just credit the funds back. But while some users think it’s acceptable to return the lost funds, others believe that principles of the ethereum platform, “code is law”, are at stake.
Following the DAO hack in 2016, where 3.5 million ether were lost, the ethereum blockchain split into two. The new chain re-credited users’ lost funds and is the one now known as ethereum (as opposed to ethereum classic). There is no immediate threat of further forks, but we’ve seen dangerous precedent in the past.
We’ve also seen several forks in the bitcoin blockchain. Bitcoin Cash was forked from the original protocol due to the long running “scaling debate” amongst the bitcoin development team and wider community.
Without going into too much detail, the question we must ask is how can anyone trust a system that is continuously at war within itself.
Usability and public perception
User’s view #1
From a public point of view, blockchain technology still is not too well understood. Sending funds between online “wallets” using complicated long strings of alphanumeric characters is not ideal. The fact that these wallet addresses should be changed regularly as a security precaution doesn’t breed understanding either.
If cryptocurrencies and the crypto economy are to become mainstream, then there absolutely needs to be an improvement in the user interface side.
User’s view #2
Blockchain, and more specifically to outsiders, cryptocurrencies, are often bandied about as a way to make money. They are seen as a get rich quick scheme, without even explaining the underlying technology. Whilst this does help somewhat with publicity for blockchain, putting financial gains first can bring a bad reputation for the technology in the long term.
On top of this, with so many hacks happening, the threat of potentially losing your money is still there. How can we really trust a system that is still in its early stage of development and with no protection against fund losses.
The good news
Are we ready to put our trust in computer code to manage our money and our laws? As with any new technology we must be patient. The kinks are being worked out. The early internet took a long time to become what it is now, and despite “fake news” most of us can put trust in the web.
Governments and regulators must do their part in helping build belief and trust in the technology. This brings public confidence, that governments have approved the technology and they believe it will benefit our daily lives. Regulators also protect us in the case that something should go wrong. High level officials are discussing blockchain more and more, some governments have even taken the leap to create their own cryptocurrencies.
We cannot deny that the technology is brilliant. Only with blockchain could we create something like Photochain, where both the sales process and the copyright protection is built into the system. Users are empowered to keep control of their data and their funds, and without a single point of failure the system design is much securer overall.
As for building faith and understanding in the process of sending funds between wallets, several solutions are in development. This may be identity focused — that is everyone has an identity on the blockchain and funds are directly sent to a person rather than a wallet. This brings the benefit of preventing financial fraud in a way that the current banking system even cannot provide. And it also is much easier as a person’s identity does not change.
On the environmental front, ethereum is planning to switch its mining protocol from proof of work to proof of stake. Proof of stake, is much less energy intensive as brute force computing power is not needed to solve the hashing algorithm. The miners now must stake their own coins in the process of verifying a transaction is true. If they are lying, they stand to lose all of their staked coins.
Proof of stake is much safer and much less energy intensive that PoW and consequently much better for the environment. In addition, some blockchains, for example those that make use of data only (without any fiat value of the token) reach consensus by only using data that is known to be correct in the system, thus removing miners altogether. This will be key in blockchains used for governance.
To solve scalability, Ethereum is taking an approach known as sharding. Whilst fairly technical, so I won’t go into too much detail here, it is a brilliant approach. Essentially a transaction is split into smaller parts — shards — which are then processed by subsets of nodes. These processed shards are then communicated back to the network and as a whole, the transaction is recognised as complete.
So where do we go from here
Blockchain has its problems. As with any emerging technology, there are always kinks to iron out. But if we are to put our full trust and backing in the technology we need to know that firstly it works, secondly it is secure and thirdly is that it provides benefits to society.
The big positive is that there are solutions in research and development for all these issues. Some of the brightest minds in the world are working on blockchain solutions — as they all see it as the future of communications. For now we ride the waves uncertainty, but the end point only ever becomes closer and clearer.