Blockchain 101 for Blockheads — the Usefulness and Uses of Blockchain
The emergence of Bitcoin in 2009 piqued the world’s interest in blockchain’s application in cryptocurrency. Since then, blockchain has been used for diverse applications by many organizations, companies and governments — in ways we never even considered back when Bitcoin started.
Before we examine how blockchain is used, it is important to understand why is blockchain so useful — what important features make it so?
Useful features of blockchain
It is useful to keep in mind thesekey characteristics of blockchain when exploring the various uses of blockchain technology, because they are recurring themes when examining why blockchain is used for each of these applications. Blockchain is:
Decentralized: No single user has control over the blockchain — instead, all users of the blockchain collectively retain control. Why?
Because all nodes in the blockchain need to reach consensus on the current state of the blockchain. This means that majority of blockchain nodes (>50%) must agree to and execute the same transaction/action to avoid failure of the blockchain.
This not only functions as a trust mechanism (without the need of a single central authority — becoming a trustless system), but also makes blockchain a Byzantine Fault Tolerant System, i.e. a system which is able to continue functioning even if one/some nodes fail to communicate or start to act maliciously.
Immutable: once data is entered into blockchain, it is “immutable” or “irreversible” — i.e. it is prohibitively difficult or almost impossible to amend the data. Why?
(1) Majority consensus:Each node (i.e. computer) has a full record of all the data stored on the blockchain since the blockchain was first established (e.g. each node in the Bitcoin blockchain possesses data of the full history of all Bitcoin transactions). An individual node cannot modify the information held in it unilaterally, because the data stored on allother nodes remain unaltered. When one node is individually modified, every other node will cross-reference each other and identify what is the “consensus” and which node has the inconsistent information (i.e. the outlier). The outlier node with inconsistent information will thus be disregarded as illegitimate. Hence, for the blockchain’s data to be changed, a majority of the blockchain network’s nodes must agree to the change, so someone seeking to do so will have to change the data on majority of the nodes (i.e. more than 50%) to successfully change the blockchain’s data. Looking at it simply, this makes it very, very difficult to tamper with the data stored on the blockchain, because there can be so many nodes and users all over the world, hence making it “immutable” or “irreversible”.
(2) Security mechanism — hash: Each block in the blockchain possesses its own hash and the hash of the previous block. A hash is basically a “fingerprint” which uniquely identifies each block and its contents. If the data in a block is changed, the block’s hash will change as well. Thus, if you amend any single block, its hash will change, and all the subsequent blocks in the blockchain will also have to be amended as they each need to have the correct hash of the previous block. It is thus prohibitively costly/difficult to redo all the blocks, especially if a blockchain is very large or if it is growing rapidly.
Transparency: Each node has its own copy of the blockchain — i.e the full record of all the data stored on the blockchain since the blockchain’s inception. Additionally, as new blocks are constantly added to the blockchain, this copy/record gets updated. Thus, anyone on the blockchain can see any transaction that has been recorded and that any transaction that gets recorded onto the blockchain.
Privacy/anonymity: While anyone on the blockchain can see any transaction made on the network, the identities of users are protected. Although each node/user has the entire transaction history of the blockchain, you would not be able to match it to an actual individual/person. This is because transaction parties are represented only by their addresses (derived from their public keys using a hash function), which does not reveal users’ identities or personal information. What you will see is only a long string of letters and numbers (i.e. the addresses/hashes). A downside may be that this anonymity may encourage hacking — since you can only track the address where the funds are transferred to, but not identify who is the exact person responsible for the hacking.
Applications of Blockchain
How has blockchain been used, and what other possible ways can it be used?
(1) EXCHANGING DIGITAL ASSETS: Blockchain technology can be used to transfer ownership of digital assets, e.g. cryptocurrency without central authorities/intermediaries like banks, stock exchanges, payment processors.
Cryptocurrency: This is one of the most commonly known uses of blockchain.Cryptocurrency (“crypto”) is a medium of exchange (like an electronic cash system), created and stored electronically on a blockchain. Crypto is not blockchain — it is a digital asset which is built on blockchain technology (thus, Bitcoin is NOT blockchain!).
For example, Bitcoin (a cryptocurrency) uses blockchain technology as a tool to record Bitcoin transactions made between users (like a ledger). In contrast to fiat currencies — simply put, currencies issued by central banks of countries, Blockchain allows cryptocurrencies to operate without the need for a central authority (i.e. the central bank) due to its decentralized “trustless” system (see above).
(2) STORING DIGITAL RECORDS/LEDGERS: This could be applied in various ways/industries.
Healthcare: Healthcare providers (hospitals, clinics etc.) can use blockchain to store their patients’ medical records securely. When a medical record of a patient is created and authenticated (signed), it can be added onto the blockchain. This assures patients that their medical records cannot be altered, due to the immutable nature of blockchain. Patients also enjoy privacy because these personal medical records can be encoded and stored on the blockchain using a private key, such that only certain individuals (e.g. the doctors, hospital administrative staff) can access the data.
Property: Blockchain can also be used as a registry of property titles or rights. For example,you can buy a house and add documentation/proof of your property rights to the blockchain, so that you can always prove that you owned such property rights at that point of time. It is almost impossible for someone to change that information on the blockchain due to its immutable nature.
Elections: Blockchain can be used for elections and as a record of candidates’ votes. For example, once votes (data) are entered onto the blockchain, it is almost impossible to tamper with them because of the immutability of data recording on a blockchain. Everyone can also see the number of votes given to each candidate, updated constantly, due to the transparent nature of the blockchain.
(3) SMART CONTRACTS: A smart contract is an agreement between 2 parties in the form of computer code — completely digital. The terms and conditions of the contract are written into the lines of code, which exists on the blockchain. This code controls the execution of the contract.
Smart contracts are only carried out when its conditions are satisfied, i.e. the occurrence or non-occurrence of an action or event. For example, when item A is transferred to Party 1, then the smart contract releases Party 1’s money to Party 2. If Party 2 fails to transfer item A to Party 1, then the smart contract returns the money back to Party 1. Or when event B occurs, then the smart contract releases Party 1’s money to Party 2. If event B fails to happen, then the smart contract returns the money back to Party 1.
If this condition (e.g. occurrence of a certain event or action) is dependent on external information or data outside of the blockchain network, then what or who determines whether this condition is satisfied?
Oracles: an external third-party data provider (not part of the blockchain network) which is mutually agreed upon by the blockchain users. It provides information on whether the action or event has occurred, e.g. commodity prices, weather data, accident occurrence etc. This determines the outcome of the smart contract, i.e. whether the condition has been satisfied.
Such transactions can be carried out without a central authority or third-party intermediary because they are processed by the blockchain itself once the requisite requirements are met (i.e. “self-executing”). If the requirements are not met by either party (e.g. failing to transfer the purchase price), they will not receive whatever they were promised by the other party. Hence, transacting parties can be assured they will not give something up without getting what was promised in return.
Usually, for many transactions, a third party is often required to facilitate the transaction and create trust between the two transacting parties. However, due to their self-executing nature, smart contracts on a blockchain do not require such a central intermediary. Transacting parties are not required to trust or even know each other for the transaction to be facilitated. This creates a trustless system, and allows blockchain to essentially function like an “escrow”, just without the third-party entity.
Additionally, because smart contracts are stored on the blockchain, they possess all the important traits of blockchain. Transactions are trackable (can be seen by all blockchain users — transparent) and irreversible (once smart contract is created, it cannot be changed or tampered by someone who wishes to change the terms — immutable). Smart contracts are also decentralized — meaning that once the smart contract is validated by users on the network, it makes it difficult for somebody to tamper with the smart contract.
Simplified examples of smart contracts include:
Selling and Buying Goods: Tom wants to purchase a motorcycle from Jane, e.g. for 1 Bitcoin. This agreement is formed on a blockchain using a smart contract, containing an agreement between Tom and Jane. This agreement would look something like: “WHEN Tom pays Jane 1 Bitcoin, THEN Tom will become the owner of the motorcycle” in computer code. Once the smart contract has been entered into the blockchain, it cannot be amended unilaterally by either Tom or Jane. Only when Tom transfers Jane the 1 Bitcoin, then ownership of the motorcycle will be recorded as being transferred to Jane. Tom and Jane do not need to use a third-party (e.g. lawyer, broker, bank etc.) as a trust mechanism, to ensure that Tom pays Jane the 1 Bitcoin and that he receives the motorcycle from Jane.
Insurance: Adam wishes to purchase property insurance for 1 year and for a coverage of 1 Bitcoin. He transfers 0.001 Bitcoin to an insurance company’s smart contract and provides his property details. The insurance company then transfers 9.999 Bitcoin to the smart contract — making a total of 10 Bitcoin in the insurance smart contract. If Adam’s property is destroyed by fire within the 1 year, the smart contract automatically sends 10 Bitcoin to Adam. However, if nothing happens to Adam’s property and the coverage period of 1 year expires, the smart contract automatically sends the insurance company 10 Bitcoin. Technically, Adam does not have to worry whether the insurance company will make the insurance payout to him if his property is destroyed within the coverage period of 1 year, because the payout of 10 Bitcoin is stored in the smart contract on the blockchain, and will automatically be disbursed to Adam if the condition is fulfilled (i.e. his property is destroyed in the 1 year coverage period).
Payroll: Businesses can simply enter a smart contract on the blockchain, e.g. stating that “WHEN the date is [1st of every month], the company transfers [employee x] 0.01 Bitcoin”. Thus, the employees can be assured they will be paid automatically — on time and with the correct sum — according to the conditions in the smart contract. This will also save the company costs because it does not need to hire staff to run payrolls.
Tenancy: An apartment can be leased using a smart contract, e.g. “WHEN tenant transfers security deposit of X dollars to landlord, THEN landlord will send the apartment door code to the tenant (latest by xxx date)”. If the landlord does not send the door code by the stipulated date, the smart contract will automatically return the tenant the security deposit.
Fun fact: one of the biggest blockchain systems which supports smart contracts is the Ethereum blockchain network.
Conclusion
We have examined what features makes blockchain technology so useful and revolutionary, as well as several ways of how blockchain can be applied in the real world. Of course, there are just so many other potential applications of blockchain waiting to be discovered — and the sky’s not even the limit!
Did you know that 16% of the global population does not have access to mobile broadband networks? Infrastructure for communications is one area that still has improvements to be made. In the ninth infographic of our Sustainable Development Goals (SDGs) series, we explain the challenges behind SDG #9 – the goal to build resilient infrastructure, […]