Can we reach consensus on blockchain?
In financial services technology circles it would not be surprising to get involved in conversations about cryptocurrencies, Bitcoin, and underlying technologies, but these discussions have now gone mainstream. Bitcoin took a step closer to legitimacy with an EU ruling in October that it must be treated like a currency, not a commodity, for tax purposes and there is a real buzz with frequent articles featuring in Financial Times, Forbes, and the Economist. This has however been overshadowed by the recent terror attacks in Paris with the EU looking to clamp down on bitcoin and anonymous payments to curb terrorism funding according to Reuters.
Very important discussions to be had, but they will mainly focus on bitcoin’s use as an alternative currency and there is something else that has got the market buzzing. What many people talk about is the blockchain, a continually growing public ledger of all bitcoin transactions that have ever been executed and the technology backbone that underpins Bitcoin. This is hardly surprising considering how much money is being invested – according to CoinDesk, blockchain-related startups have raised over $285m in venture capital to date and expanding to cover Bitcoin-related startups, this number grows to over $1B.
The conversations around bitcoin and blockchains are all very exciting, but there is also a great deal of confusion as people have different beliefs and look at this from very different perspectives. Some say bitcoin will wipe out the US dollar and blockchains could be as disruptive as the Internet 20 years ago while others take a more cautious stance. In a recent article, the Financial Times reports that Christine Lagarde, chief of the International Monetary Fund (IMF), advised bankers worrying about being disrupted by bitcoin and blockchain to "pause for a second," citing the potential for abuse of the technology.
I’m only going to dip a toe in this hotly debated topic in this blog and go over some of the main concepts, particularly the decentralised consensus process, with the hope it starts clearing the muddy waters. Starting off with a small detail, Bitcoin with capital “B” is associated with Bitcoin the protocol and when written with a lowercase “b” it is associated specifically with bitcoin as the currency. Who would have guessed?
Just another technology hype?
It wouldn’t be the first time a new technology has been hailed as the next big thing and once the hype settles little has changed so why not wait? It is still very early days, but one thing is clear – banks and other financial institutions are already innovating with blockchain technology because the risk of getting left behind is simply too high. Banks collaborate with each other and with numerous startups in areas such as cross-border payments, money transfers, FX, securities and to address increasing compliance demands from financial services regulators.
It’s not only within the financial services sector that blockchain-related startups are emerging and they are not just going after the “dinosaurs” in the market. Take La'Zooz as an example, a decentralised Uber-like service that provides real-time ride sharing, but without the company.
Like with all emerging trends and technologies many of these startups will fail and there will be plenty of ideas that never take off, but the question is, can organisations afford to ignore what is happening? Banks certainly feel they can’t and there is an opportunity for other organisations to learn from them or one of the many emerging startups out there. Far from exhaustive, but the list below provides a flavour of some of the non-financial services use-cases currently being explored.
- Prediction platform for politics, commerce, entertainment etc. – Augur
- Proof of existence, integrity and ownership – Stampery
- Distributed library for sharing art, history and culture – Alexandria
- Digital Rights Management – Bisantyum,
- Media digital distribution – Blockparti and BlockCDN
- Fraud and anti-counterfeit measures – Everleger, The Real McCoy and Blockverify
If blockchains are set to change the world, what are they?
A search on the Internet for “blockchain definition” will give you a long list, but the results vary so how do you choose? Bitcoin Wiki states that “a block chain is a transaction database shared by all nodes participating in a system based on the Bitcoin protocol”, which implies that all blockchains would have to be based on the Bitcoin protocol.
The problem with this is that solutions from Ethereum, Paycoin and BitShares all have blockchains but they don’t use the Bitcoin protocol. Some will argue that these solutions haven’t stayed true to the ideology behind Bitcoin and therefore are not “real” solutions, which goes back to my point earlier – people talk about very different things making it near impossible to reach consensus.
Let’s go back to the very basics and look at a blockchain as a “database” that maintains a continuously growing list of blocks of data records linked together. Bitcoin calls this a ledger because it contains a collection of financial accounts, but other blockchains contain different types of records making the term “ledger” less suitable.
The illustration above shows a very simple blockchain. A block of one or more new transactions is collected into the transaction data part of a block. Each block stores the hash of the previous block, chaining the blocks together. This ensures a transaction cannot be modified without modifying the block that records it and all following blocks.
I bet that this doesn’t excite anyone, definitely not to the tune of $285m, so what is it that makes blockchains so interesting?
Distributed blockchains
While there is a heated debate about various types of blockchains, there is one characteristic that they all share: they are all distributed. Anyone that has worked with database technologies knows about the challenge, and various solutions, to update and keep data records in sync across a distributed network of nodes.
The problem is that none of the “normal” database techniques work particularly well for the highly distributed, and often untrusted, network of nodes that blockchains are deployed across.
In the case of the Bitcoin blockchain we’re talking a large public network that anyone can join so how can everyone in the network agree on the state of the ledger without any trust between nodes? Traditional payment systems depend on a trust model that has some form of central authority providing a clearinghouse service. Bitcoin has no central authority, yet every full node has a complete copy of the ledger that can be trusted as the authoritative record. Acting on information transmitted across the Internet, every node in the network can somehow arrive at the same conclusion and assemble a copy of the same public ledger as everyone else.
What makes this possible and what many see as the main “invention” behind Bitcoin’s blockchain is its decentralised consensus process.
Decentralised consensus
So what has actually got the industry excited is not the blockchain itself, but the decentralised process where consensus can be achieved through asynchronous interactions between independent nodes across a distributed network, all following simple rules.
While the internal workings of Bitcoin’s consensus process would be a very interesting read I will not dive down in the details in this blog for a couple of reasons – there are already many detailed explanations available on the Internet, one I personally like is found in O’Reilly’s Bitcoin & Blockchain Ebook, and the consensus process varies between implementations so it would be too much to cover in this blog.
As mentioned earlier there is a growing range of distributed platforms emerging, but generally they can be classified into two different types – permissionless and permissioned. Because of the different characteristics of the two types, their associated consensus processes will vary quite significantly.
Permissionless
Bitcoin’s open source blockchain belongs in the permissionless category, which means it is accessible and open to anyone. The integrity of the blockchain on a permissionless network is generally ensured by a computational-heavy process known as “proof of work”, through which transactions are verified and recorded by a network of anonymous nodes.
Because the process is compute intense, nodes need to get incentivised to complete the proof of work. You may have heard about bitcoin “miners”? They are essentially nodes that work to complete the proof of work and for this they are paid using bitcoin. There are other blockchains that also use bitcoin to compensate their “miners” but many use alternative tokens as compensation.
Permissioned
Despite the many references to Bitcoin and its blockchain most financial institutions are more interested in operating permissioned, or private, blockchains with known, legally accountable parties (i.e. nodes). Participants in these networks are known (via KYC or KYB) and have legal or contractual obligations with the other participants.
Because participants are known there is no need for a proof of work and there isn’t necessarily a need for tokens to incentivise validation or secure the network. Instead, validation can be done by entities with contractual obligations that are legally enforced with governance of both network and software components clear and explicit.
Conclusion
Initially strongly linked with Bitcoin, blockchain has become a catch-all term for a new type of distributed systems covering a wide range of different use-cases. This inevitably leads to confusion and misunderstandings, especially as permissionless and permissioned systems handle very different types of activities and consequently have different ways to secure their respective networks and validation processes.
There is room for both permissionless and permissioned systems to coexist and grow as they address different needs, but to refer to them all as blockchain technologies isn’t particularly helpful – especially when you have leading technologies in this space such as Ripple that don’t even use blockchains. To be fair to Ripple, they don’t talk about blockchains themselves, they talk about a distributed ledger.
Unfortunately, many startups seem happy to ride the wave of the blockchain hype selling themselves simply on the fact that they use “blockchain technology”, whatever that means. This is where things need to change and the focus needs to shift from the underlying technology to why a decentralised approach will disrupt, or significantly improve, the way things are done today.
So while I think it is very important for organisations to get involved and understand potential use-cases and how blockchains work, don’t get carried away by the hype and don’t get bogged down in the technology itself – unless you’re a technologist that loves to lift the bonnet and get your hands dirty.