You have probably heard of blockchains. The technique, strongly connected to cryptocurrencies like Bitcoin, is currently among the biggest trends in the tech industry. But what is a blockchain and how can it be used?
A blockchain is basically a growing list of blocks of data, where each block is connected to the previous one, using hash values. Blockchains are mainly used in peer-to-peer networks as a distributed, shared write-once-read-many database. Each active participant in the network stores a copy of the blockchain for reasons of availability and security. The main revolution of the technology is its proof-of-work approach, which means that a lot of computational work is required, to add blocks to the chain. This makes altering the data contained by a block extremely difficult, once the block is on the chain. The computational work is done by so-called “miners”, participants in the network who validate the block of data and compete against each other to find a specific value to be added to the block, such that its hash fulfils certain requirements. The first miner to find such a value gains a reward in the cryptocurrency of the system, consisting of the fees paid by the user sending the transaction and a certain amount that the miner is allowed to add to his balance, the latter being a means to circulate new cryptocoins.
Bitcoin block data, image source: Dr.-Ing. Matthäus Wander
If someone would want to make a change to blocks on the chain, he had to recalculate this value (a so-called “Nonce”) for the block and every one after that. Since the difficulty of this problem is designed in a way that it always takes around 10 minutes to solve it, it is practically impossible to make a change to previous blocks and even if someone would have control over such an amount of computing power he would still have to get around the second big feature of the blockchain, its consensus system. Since every participating node in the network has a copy of the blockchain, one node with a different chain would be outvoted and could not propagate its corrupted chain through the network.
Flow chart of adding a transaction to the chain, image source: Blockgeeks
Use of Blockchain in finance
Because of its advanced security, a blockchain can be used in environments where trust between the parties is not guaranteed, most prominently as a shared, distributed ledger in the context of cryptocurrencies, the most famous of them being Bitcoin. Here the blocks are used to store data of financial transactions between anonymous users. In addition to the immutability of the written blocks, the open accessibility of the chain data makes fraudulent use highly improbable. A multitude of financial institutions all around the world has started testing blockchain technology for cross-border transactions. Just in October, a group of banks in Southeast Asia and the Pacific area, including the Thai Kasikornbank and the National Australia Bank, partnered with IBM and the developers of the open-source payment protocol Stellar to launch a cross-border transaction platform, which will be the widest use of financial blockchain technology so far. The rise of independent, decentralized currencies is expected to be a major change for the whole financial sector.
Ethereum & Smart Contracts
But since a blockchain is basically a highly secured, distributed database, cryptocurrencies are only one application where it can be used. The possibilities are numerous. In 2015 Ethereum went live, a decentralized computing platform that uses its blockchain for storing scripts, so-called “smart contracts”, which are executed on the Ethereum Virtual Machine (EVM) under certain circumstances. Smart contracts can be used in multiple different ways, ranging from self-fulfilling, immutable contracts (e.g. to set up online casinos with provable fairness) to whole applications on the blockchain, called DApps (decentralized applications).The expenses for running code on the EVM are payed in Ether (ETH), their own cryptocurrency.
Another valuable application for smart contracts is found in the business sector. Contracts involving financial transactions can be written as smart contracts for the Ethereum blockchain and executed, when a certain agreement has been fulfilled, rendering a breach of contract virtually impossible. However, since the contracts are immutable, it is of utmost importance to keep the contract free of bugs and possible exploits. The Ethereum development team currently works on a decidable Python-based contract language to make contracts provable before writing them on the blockchain.
Another sector, where blockchains and especially smart contracts are used, is decentralized file storage. The Boston-based company Nebulous Inc. created a platform called Sia, competing with the cloud giants Google, Microsoft and Amazon. Its main selling point? All of the files to be stored get encrypted and redundantly distributed over the network of participants, making the data completely private, independent of other companies and, removing a single point of failure, available at any time. A blockchain is used to store metadata about the distributed files, as well as smart contracts that organize payments between customers and storage providers. The first stable version of the Sia network went online in June 2016 and this year, the popular open-source cloud storage client Nextcloud started supporting an option to upload folders comfortably to the Sia network. The decentralized nature of platforms like Sia is revolutionary and could lead to a major disrupt in the cloud business during the next few years.
Estonia: pioneer of E-government
Estonia is known to be one of the most advanced digital nations worldwide. In 2000, the small Baltic country was the first to pass a law, rendering digital signatures equal to handwritten ones. Since then a paperless and highly digital government has emerged, making it possible to its inhabitants to fill out official forms, file taxes or even vote online. 99% of the state services of so-called E-Estonia are online, including sectors like healthcare (“e-Health Records”), identity management (“e-identity”), finance (“e-Tax”), business (“e-Business Register”) and land registry (“e-Land Register”). Basis of E-Estonia is a blockchain called KSI (“Keyless Signature Infrastructre”), developed by the software security company Guardtime. Estonia is setting an example of how digital governments could work in the future. In the past year, many other nations have started research in the uses of blockchain technology. For example, Sweden, the United Kingdom and Russia announced plans to use blockchains for land registry and in October, Microsoft launched the Azure Government Secret cloud to be used by US government agencies to store confidential data.
By now, most of the world leaders in cloud technology jumped on the chain train. In May 2016 Amazon Web Services announced a collaboration with the Digital Currency Group to develop a financial platform and this year IBM, Oracle and Microsoft launched their own blockchain-powered enterprise services. The major opportunities of blockchain are undeniable and it will be exciting to follow the further developments of this technology in the following years.