All the talk over the last few months has been about Bitcoin and the potential of Cryptocurrencies.
While it’s easy to see the power these digital currencies and the potential they hold for online transactions in the future, for me the most interesting item is the technology that powers them.
Blockchains are the engine that makes Cryptocurrencies work, and if they can change the way that transactions are performed on the web then imagine their potential when applied to other areas of business, such as Blockchain high frequency trading.
What I notice by researching Blockchains online is that as the tech is still in its early days the amount of information available can get pretty confusing.
The purpose of this post, therefore, is to try and filter through all of the content and try and provide a beginners guide to understanding the Blockchain.
This is by now means a programming manual. In fact much of the info that is available online is geared towards engineers which is what makes it so hard to understand.
Rather this is a guide from a businessman and marketer’s perspective on how to view and understand Blockchain in relation to business.
Of course, a discussion about Blockchain technology cannot avoid talking about programming on some level, but I promise that I will go deep but not too deep into programming language on the way….
Blockchain and Cryptocurrencies
Talk of Blockchain technology begins in the context of Cryptocurrencies.
This is because the best way to understand how Blockchains work is to understand how digital currencies such as bitcoin and ethereal work.
Here is a short video from the World Economic Forum which explains Blockchain technology in the context of financial transactions:
Notice how the video explains how, at the moment, two parties (A and B) have to trust a third party (C – a bank) to ensure transactions are valid, non-fraudulent and successful.
With Blockchains it will be possible to validate online transactions without the need for a third party (C – a bank).
With a digital currency backed up by cryptography (hence cryptocurrency) a trust less system is now possible.
How Cryptocurrency Transactions Work
Consider now that Person A wants to transfer 1 Bitcoin to Person B.
This is what the path of that transaction looks like:
Person A initiates a bitcoin transfer to Person B via a peer-to-peer network — called the bitcoin network. Each person must provide cryptographic proof of identity to the network to confirm that they are who they say they are.
The transaction is then presented for validation to all of the peers or nodes on the network. For each node this is akin to solving a complex mathematics problem. The incentive for nodes to validate transactions are new bitcoins and associated transaction fees are charged for ‘finding’ the new block. This process of validating transactions in a block is called bitcoin mining.
Each peer or node on the network then retains a copy of all of these “blocks” or transactions that have been verified previously. This “ledger” is what makes up the Blockchain.
Once a node or peer has solved the maths problem the transfer is verified and the newly verified “block” is added to the chain by the winning node. The node then broadcasts to the rest of the network that a block has been found.
Having received the new block each peer on the network checks the winning node’s broadcast and then confirms that the transaction can be validated. If all of the nodes on the network are satisfied each one updates their own copy of the blockchain.
The way that the Blockchain is constructed means that it becomes an immutable and transparent reality to everyone on the network. Any attempt to submit a fraudulent transaction, such as double spending Bitcoins, is logged on the Blockchain and updated by everyone on the network.
When all of the above steps have been completed, the transaction of 1 bitcoin from Person A to Person B is complete.
In order for the Blockchain to work there a few areas that require further explanation.
Cryptographic Proof of Identity
Simply defined this refers to proving the identity of an individual without making it public.
The following example should make this more clear:
Consider that you write a book and publish under the pseudonym John when your real name is Peter.
The book is a best seller, which prompts someone else, called James, to come along claiming to be John with the intention of taking all of the credit.
So how do you, Peter, prove that you are in fact the real author of the book and without revealing your own identity?
The answer is simple.
Before you publish the book you create a public key / private key pair, including the public key within the book.
Now anyone that reads the book can see the public key and can use that key to encrypt a chapter in the book.
You, Peter, then encrypt a chapter in the book and challenge the imposter, James, to decrypt it and read it.
As you are the only person that holds the corresponding public key / private key used for encryption the imposter will always fail.
In so doing you are able to prove that you are the author of the book without ever revealing your personal identity.
This is how nodes and peers operate to prove their identity to their identity to other peers on the bitcoin network without ever revealing their true identity.
Each node can generate as many public key / private key pairs as they like so ling as they use the right keys when carrying out transactions.
What is a Block?
A chain of multiple blocks is what constitutes the Blockchain.
Each block contains transaction data that is permanently recorded by the entire network.
Image Source : Esotera
Each block contains, among other things:
- Records of some or all recent transactions and their timestamps.
- A reference to the previous block, ensuring any tampering with a block is propagated throughout the entire blockchain.
- A “nonce” – the answer to the “complex maths problem we mentioned earlier” and that can only be solved randomly via trial and error — the answer to this problem is unique to each block.
Without the correct answer or “nonce” new blocks cannot be submitted to the network.
At the moment a new block of unverified transactions is generated every 10 minutes or so.
Mining and Distributed Consensus
The process of “mining” involves peers or nodes competing to be the first to find the answer that “solves” the latest unverified block.
Each participating node or “miner” on a cryptocurrency network runs special software and hardware set up for the nonce to verify that a block of transactions is valid.
The first peer to solves the problem announces the solution to the other peers on the network. The network then checks the validity of this new Blockchain, arrives at a consensus and then accepts the proposed Blockchain as the new source of truth.
The winning is rewarded with more bitcoins.
Such smart incentives are at the heart of bitcoin’s distributed consensus which is the bedrock of what makes the Blockchain so promising.
The consensus is based on game theory principle. It is in the interests of everyone on the bitcoin network to validate a correct Blockchain proposed by a winning node if the node shows that they indeed invested substantial resources to solve the math problem and got it correct.
All transactions can be traced back to the very first ‘genesis’ block.
They are tamper proof — any attempt to tamper with them is immediately broadcast to the entire network and detected.
That also means that once transactions are committed to the Blockchain, there is no going back to edit or delete it.
To run this kind of set up requires a large amount of computing resources.
This more or less sums up how Blockchains work. If you need to go deeper I recommend Satoshi’s paper on bitcoin mechanics so see the Blockchain process in greater detail.
Potential Applications of Blockchain Technology
With what is happening in the Cryptocurrency market now we are witnessing what can be achieved with Blockchain technology.
The logical question to ask then is how can Blockchain technology influence other product industries and markets?
Blockchains can function as exchange networks without the need for an intermediary .
It follows that other assets and transactions can be exchanged amongst peers on a network also without the need for a 3rd party (C) intermediary.
This is a hugely significant point as without the intermediary transaction costs are drastically reduced.
Image Source : TablesandTech.com
Consider that all of these features are available on a secure network with no downtime.
The potential impact of digital currencies to banking is being touted as the same as what the internet did to the music industry.
Having ignored Crytptocurrencies for some time banks are now realising that they must embrace the technology or be destroyed by it.
It’s not only the Financial Sector that stands to feel full impact of Blockchain technology.
Check out this video from Future Thinkers that lists 19 industries likely to be heavily disrupted by Blockchain:
Many large scale businesses are now incorporating experiments with Blockchain technology in an attempt to keep a competitive advantage.
Internet of Things (IoT) and Blockchain
The next implication of Blockchain technology is the potential to enhance the Internet of Things.
A future where machines and devices are interconnected and are able to communicate seamlessly to carry out various tasks with little or no human intervention is an area where human life can be enhanced considerably.
Here is a graphic form I-Scoop listing some of the advantages of Blockchain for the Internet of Things:
In order for the Internet of Things to function effectively it is essential that as well as being connected to the internet machines and devices must be able to communicate securely and whenever necessary.
The machines can then operate with full autonomy and make smart decisions based upon rules that cannot be tampered with.
As it stands present IoT architectures are prone to weak cybersecurity implementation in applications, networks, data and equipment have made IoT projects very challenging.
Blockchain technology would enable connected devices to operate independently whilst identifying themselves to other machines securely. They would then be able to perform micro-transactions based on rules or smart contracts that would be free from tampering.
An example could be a drinks vending machine that can monitor and report its own stock, whilst accepting bids from distributors and making payments automatically via micro transactions for delivery of new items.
Another could be smartphone applications that can automatically bid on electricity providers to find the best deal whenever you want to run your washing machines, irobot or thermostat at the most cost effective time for using electricity form the grid.
Some Blockchain startups have realised the potential here and have begun extending Blockchain technology beyond the digital currency market. Ethereum’s Blockchain network as well as providing a digital currency (ether) also provides secure and tamper proof smart contracts within the network enabling transactions to take place when certain conditions are met.
Shopping with Cryptocurrency
There are around 700 digital currencies being traded on different online exchanges, with Bitcoin being the most popular.
However, the infrastructure necessary for these kind of trustless transactions is limited. Bitcoin, for instance is restricted to only seven transactions per second, whereas Visa can run a peak of 56,000.
Consider that if you wanted to pay for your coffee using Bitcoin’s Blockchain the length of time you have to wait for the payment to be processed will depend on how many other users are attempting to payment payments with Bitcoin at that precise moment. At 7 transactions per second, you could be in for a fairly lengthy delay.
Despite this heavily restrictive limitation there is much being done to improve the User Experience from increasing the size of the transaction blocks to incentivising more nodes to validate blocks much faster.
What is significant is that at this moment Bitcoin is far from scalable. How the future will play out for Cryptocurrencies remains to be seen.
Public & Private Blockchains
We mentioned earlier that one of the essential benefits of Bitcoin is that it can ensure anonymity and transparency with its transactions.
Bitcoin’s Public Blockchain is what makes this possible.
However, for all of the peers to communicate and update all of the latest transactions the Blockchain must be duplicated locally. This massively lowers the bandwith and again slows down an already limited transaction speed.
That said, it an organisation does not require anonymous transactions it is also possible to create a Private Blockchain.
This can work well in the context of protecting user information whilst still maintaining authenticity and decentralisation. The risk of a cyber attack, looking to exploit the weakest link in the chain remains high however.
There is still much potential with Private Blockchains.
For instance, a consortium of companies could operate their own Private Blockchain, with each company within the consortium supporting it’s own node. Each company would then authorise their own transactions thus making processing time much faster and more cost effective since there are much less peers required.
While a Private Blockchain may not be suitable for a worldwide network or digital currency it could be used to support certain industry specific Internet of Things applications.
Vitalik Buterin, ethereum’s founder puts it in perspective.
The solution that is optimal for a particular industry depends very heavily on what your exact industry is. In some cases, public is clearly better; in others, some degree of private control is simply necessary. As is often the case in the real world, it depends.