What is the blockchain?
We’ve managed to get this far without talking about blockchain. However, it is really this new technology that has been responsible for the recent explosion in interest in the decentralised web and decentralised organisations.
What is a blockchain?
A blockchain is a type of database or ledger in which the information, rather than being stored on one particular computer or server, is duplicated thousands of times across a network of computers. As with other peer-to-peer file-sharing, this means that there is no single centralised ‘original’ – it is a decentralised system, or ‘distributed ledger’. Whenever a new record is added to the database or ledger, every computer on the network updates its blockchain to reflect the change. This much is common to many other peer-to-peer file-sharing systems. However, the other crucial feature of blockchains is that information is only ever added, never deleted, with new data being added in ‘blocks’ that are cryptographically ‘chained’ to old ones. This means that once data is recorded in a block, it can never be changed. Blockchains are thus said to be ‘immutable’. The fact that the information stored on a blockchain is public and verifiable means that it can be trusted (or as some people say, it is ‘trustless’, meaning no trust is required). In addition, since the information exists simultaneously in multiple places, it is secure and reliable.
The first ever application of blockchain was Bitcoin, which used the technology for monetary transactions. However, blockchain is useful for much more than currency. In 2015, the range of applications was significantly expanded by the creation of Ethereum. Rather than just holding information on financial transactions, in the Ethereum system, the blocks can contain computer code that executes on every computer in the network. This means that Ethereum can be thought of not just as a decentralised ledger, but a decentralised operating system – a globally distributed ‘virtual machine’.
Importantly, this has allowed the creation of ‘smart contracts’ – irrevocable computer programs that automatically execute when specific conditions are met. It is this ability to deploy smart contracts that is at the heart of the majority of suggested use cases for blockchain technology, including the development of DAOs.
What are smart contracts?
Smart contracts are simply computer programs. However, they can be linked to digital assets via cryptographic keys, thus allowing digital assets to be controlled by arbitrary rules. Moreover, because of the immutable nature of the Ethereum blockchain (and similar systems), their execution can be guaranteed.
As an example, a smart contract might be established to run a virtual casino. Because the contracts are transparent – that is, anyone can inspect the code and verify that the transactions took place – such a casino would be provably fair.