Blockchain was developed specifically to secure decentralised peer-to-peer electronic cash systems, also known as cryptocurrencies, writes Dylan Janeke, Head of Technology at Nimble Technologies. The security and other characteristics of blockchain have excited the industry around other potential uses for the technology.
In theory, it can be used everywhere, as it is fundamentally a database solution. In reality its application is limited and it is unlikely to be the tool that will revolutionise your business.
How it works
Essentially, blockchain is a means of creating digital assets which cannot be duplicated. Each ‘block’ contains data – in this case a transaction – as well as a ‘hash’ and a ‘previous block hash’. These hashes are unique identifiers for each block, and any changes to the block will change the hash, making them tamper-proof. The previous block hash is how each block is linked to other blocks to form a chain, hence the name.
In addition, it contains a proof of work algorithm that prevents new blocks from being easily or quickly created, which is used to confirm transactions and secure the blockchain. It’s the perfect solution for making cryptocurrencies possible.
The network is enormous and spread across the world, and every node validates the blockchain, ensuring it is not being tampered with. As a peer-to-peer network, it is open to the public, so anyone can join it, and any node can verify the chain from start to finish. When a new block is created it is sent to every node on the network for validation and verification before it is added to the ledger.
Consensus needs to be reached to verify a new block, so in order to tamper with any data in the system, an individual or organisation would need to control more than 50% of the nodes. This would take an extreme amount of processing power, which would be put to better use in mining more currency, so there is little incentive for such an attack.
Where blockchain does not work
The success of blockchain hinges of its reliance on public verification nodes spread across the globe in order to secure itself. Unless your business is a global network processing millions of transactions, the structure of blockchain will be cumbersome, slow and require inordinate amounts of processing power. To get around this performance issue, it is possible to create your own blockchain and tweak it to improve speed and performance. But then, it would be a private network which negates the biggest security feature of blockchain – its public nature.
Using blockchain for anything other than the securing and management of cryptocurrencies is just a slow, arbitrary way of storing and retrieving data. In most cases it is a far better option to use an existing database that has been optimised for performance, rather than blockchain.
You can also create ‘smart contracts’ that are small, very secure applications that run on top of blockchain that cannot be censored or tampered with. However, these are incredibly specialised and niche, requiring a serious amount of knowledge to create. They also have an inherent problem in that very popular smart contract could bog down the network, as all miners will be busy processing the contract’s inner workings, not leaving any miners to handle the transactions of other contracts. The CryptoKitties smart contract is an excellent example of this.
Blockchain is a revolutionary technology that is secure and cannot be shut down, tampered with or destroyed. However, it may be excellent and fit for the purpose it was created, but it is unlikely to be an effective solution to general business database management.