All this buzz regarding how blockchain, cryptocurrencies, ICOs, and asset-tokenisation will change the world, needs sorting out. In my humble opinion, all those leading the buzz – including industrial experts and opinion leaders – intermix a lot of different and independent things together, freely assign their properties to each other, and from this, we have a plethora of prognoses, recommendations, and in some cases, dramatic investment advice.
Following initial interest in Bitcoin, the business and banking world decided they could somehow take some of the blockchain ‘backbone’ out of the Bitcoin ‘body’, dissect from it consensus protocol (the infamous Proof of Work, or PoW) – which will be replaced with some decades-old technology from telecommunications and distributed databases industries – kill decentralisation and free participation in the network, then remove economic incentives, and as a result create some ‘magic’ technology that will solve industrial problems. But no, instead they have created a modern Frankenstein, and we can see that R3CEV, EEA and other ‘blockchain enterprise alliances’, are not delivering on their promises. The last citadel of ‘enterprise blockchains’, Hyperledger, is doing nothing more than what can be done with simple business process digitalisation, and distributed databases.
So let’s take this modern Frankenstein, made out of bitcoin and blockchain parts, back to its roots, and see how it can be fixed and made into something useful.
Blockchain appeared in Bitcoin just as a way to order transactions, nothing more. Saying “blockchain can help industry N”, is ridiculous. The ordering of transactions or state changes can’t solve problems in any industry by itself. The question is not how to order transactions into a sequence of blocks (blockchain), but how to define who, at each point in time, has the right to order transactions within a large peer network. This is about consensus protocol, not blockchain. The most significant innovation of Bitcoin was not blockchain, but PoW consensus, which was the first protocol defining an unchallengeable way to update distributed databases (account balances) in P2P networks without trust between nodes. Consensus protocol, not blockchain technology, is what really matters. From this point of view, many things in the industry can be seen quite differently.
What is a consensus protocol? Suppose we have a distributed system, consisting of independent actors (i.e. ‘decentralised’). Consensus protocol is used to get an answer to the core questions: “How do you update the state of the system? Who has the right to do it?” Three options are available.
First, anybody. The industry calls this option DAG (directed acyclic graph). It provides high resistance to network failures, an unlimited number of participants while remaining very fast, and the absence of a notion of the ‘current state of the system’ as a whole. Each participant has his own view on the state of affairs. Such a protocol is not very useful to find an agreement on the state of the system, so we need to look elsewhere.
Second, participants must agree on each update. This is a group of Byzantine fault tolerant (BFT) protocols, from the last century telecommunications industry. They provide low resistance to network failures, a slow system and very restricted number of participants (the time required to reach an agreement grows exponentially with the number of participants), and a notion of the current state of the system at any moment in time (so-called ‘finality’).
Essentially, Delegated Proof of Stake (DPOS) consensus protocols – used in the family of Graphene-based blockchains, i.e. BitShares, Steem, Golos and recently EOS – which have a very strict number of participants (called their ‘witnesses’), that can update the global state of a system, also belong to this second group. The witnesses need to agree upon the order of the blocks. The dramatic speed of DPOS consensus is achieved only by significantly compromising with decentralisation.
The third option, some ‘objective randomness’ randomly selects participants who can update the state at some point in time. This approach provides moderate resistance to network failures, moderate speed with sub-linear dependence on the number of participants, and quasi-finality. A recent historical state can be considered as final with some calculable (or nearly-calculable) probability
Seems like the golden ratio! But wait, here is the problem. How can a common view of the randomness be achieved in a system with independent actors? If there were some random deterministic process that could be reproduced by all of the participants, it would not be random by the very definition of ‘randomness’. A truly random process would give a different (i.e. random) result for each participant.
Adam Back proposed an elegant solution to this problem. Instead of getting some common randomness, we should use some random process that will give different random numbers to all of the participants, and we’ll define some criteria by which only one (or very few) participant(s) will be selected. How is that achieved? Let’s use radioactive decay as a sample random process. Each of the participants will take some small radioactive probe of a given size and will calculate the number of alpha-particles each second, the one who gets the lowest number wins. It’s a kind of dice.
But here is another problem. How do you prove that you really had the smallest number and that you didn’t cheat? This is where Adam Back’s solution comes in. He invented a process, called hashcash, where no participant can cheat with their dice. Those who are familiar with cryptography know about the existence of ‘hash functions’, which can be easily computed one way, and require really big efforts to compute the other way. If we ask all of the participants to find some number where the hash can be smaller than some pre-defined value, all of them will spend a lot of time doing that, the one who finds the answer first will have done so by chance – which is strictly proportional to his efforts – and it can be easily proven that there is no cheating, since it’s very simple to re-check the result of the hash function once the solution is found. This protocol became the famous Proof of Work used in bitcoin.
Since Bitcoin PoW, the industry hasn’t created any other type of consensus that can better solve the problem of updating the state of the system in a trustless P2P network, without sacrificing censorship resistance or decentralisation. Many think blockchain can replace trust in central parties in many industries, with accountability and auditability. But without trustless consensus, history in blockchain can be easily falsified, and there is no other working consensus except PoW. Asymmetric cryptography and distributed databases have been present on the market for decades. Blockchain adds nothing on top.
Businesses can’t achieve with private blockchains more than they could before. Consensus protocols used in corporate blockchains are just different modifications of BFT algorithms that have been known for decades. They do not add trustlessness to distributed databases, and are worth nothing compared to what existed before.
As everything above has shown, blockchain is simply a buzzword giving corporate managers the ability to report about innovation, create hype, attract attention from the press, and increase the price of company shares. If corporations and industries want to build decentralised trustless solutions, they have to look into, not blockchain technology, but instead better consensus protocols, or utilise existing PoW, ensuring sufficient network size for security.
Is it possible to replicate PoW, and find some other type of randomness that is suitable to select a player in the multi-agent system, but without doing a lot of unnecessary computations? The past years have shown that it is not an easy task. At the moment, there are no solutions for distributed randomness on the market that are succinct, and provably secure and resistant against adversary protocols. Not yet at least. At Pandora Foundation, we are backing extensive academic research on the topic, and have developed provably secure Proof of Stake (PoS) consensus with distributed randomness. The protocol papers will be published this Autumn, so we hope the industry will finally have access to a much more efficient and lightweight solution for building decentralised systems, compared to PoW.
It’s quite clear that the original ‘blockchain’ term coined by Satoshi Nakamoto was referencing a bunch of things together – PoW, cryptography, etc. – but these days it has become so cluttered by the enterprise and hype around, that it’s time to distinguish the marketing buzz from real decentralisation.