"I’m reasonably confident... that the blockchain will change a great deal of financial practice and exchange,” he said Tuesday from the Consensus 2016 event in midtown Manhattan, adding that his bet on the future of finance would see “40 years from now, blockchain and all that followed from it will figure more prominently in that story than will bitcoin."
- Larry Summers, former US Treasury Secretary
Some of the properties of blockchain and the reasons for its popularity are:
- Immutability: Information within a block cannot be altered without producing a change in the subsequent blocks, thus creating a mismatch in the embedded digital signatures.
- Decentralized: The entire blockchain (record of transactions) is shared among all the computers of the network. No single authority controls it.
- Digital currency: Actual currency is not exchanged, only data concerning the sender and recipient is exchanged and verified among blocks.
- No third party fees.
- Anonymous yet public: The blocks are anonymous (due to hashing) yet public (produces copies on all the nodes of the network). Public nature means anyone can check the transactions using mining, promoting transparency.
- Frequent verification of transactions: Transactions are verified every 10 minutes through mining.
The following are some of the important terms associated with blockchain technologies related to their use in cryptocurrencies.
Blockchain is a public digital ledger of past transactions in order. For the rest of the article, we will consider this to be a ledger of bitcoin transactions. The blockchain is called so because it is a chain of blocks. A blockchain is a hash-linked data structure.
This ledger is stored on a decentralized network where all the hashing is enabled though cryptography.
It is imperative that all the peer computers in the network agree upon the order of the transactions. Hence, every 10 minutes, a random computer is chosen for verify the authoritative order of transactions that occurred during that period of time; after the next 10 minutes, another computer is chosen for this purpose.
Every blockchain technology is composed of 3 parts: peer-to-peer networking, the consensus mechanism (software rules to agree on the state of shared data) and the blockchain.
Bitcoin, invented in 2008, is the world’s first decentralized cryptocurrency. It is decentralized because control is shared by all the computers on the network; it is a cryptocurrency because it is a subset of ‘digital currency’ (no physical currency) that uses cryptography as a method to verify transactions and regulate the generation of further units. A series of bitcoin transactions is created when bitcoins are exchanged between users.
Bitcoin introduced a technology called Blockchain. There are various blockchain technologies apart from the bitcoin, eg: Ethereum. They remain blockchain technologies in the sense that all the connected computers have consensus techniques (software rules) to reach an agreement over the state of the shared data, however, instead of being a list of bitcoin transactions, the data could be other data such as the real-time monitoring of the number of votes in an election.
Transactions are combined into single blocks and every 10 minutes, a new block of about 1MB is size is created. Every block in a blockchain contains 4 components: a timestamp, a reference to the previous block, a summary of the included transaction and the Proof of Work (see ‘6’ below) that went into creating the secure block.
Secure hashing implies that editing a block without causing a change in the subsequent blocks is impossible. No entity can simply enter the bitcoin network and perform a successful transfer worth millions of dollars because of 2 reasons: a) each block requires several independent confirmations, and b) solving the mathematical equations for the cryptographic problems is difficult, requiring special miners.
Mining means adding transaction records to the blockchain ledger after confirming the validity of the transactions. It involves using complex hardware to perform mathematical calculations in order to verify transactions. Computer Miners verify the validity of transactions and only then, put them into a secure block. These blocks are combined to form a blockchain that represent in-sync information among all blocks. After creating a new hash for every secure block, miners are rewarded with incentives like bitcoins and collecting transaction fees for every transaction that they confirm. Mining is needed so that bitcoins are not double spent (see ‘5’ below).
5. Double Spending
Sending a bitcoin transaction to two different recipients at the same time is called double spending. This must be avoided at all costs.
6. Proof of Work (POW)
A Proof of Work is a requirement that expensive computations be performed in order to facilitate transactions. POW exists to enable trustless consensus. A hashed block is considered as a POW.
Hashcash is an example of a POW. Bitcoin uses the hashcash POW function.
Hashcash is a POW algorithm that results in data that is difficult to produce in terms of computational work but is easy for others to verify. Miners are supposed to create a hash and a ‘nonce number’ for every block - to produce a hash with a sufficient number of leading zero bits to meet the difficulty requirement.
Nodes are distributed computers in the network that all have a copy of the entire blockchain. As new users enter the blockchain network, copies of the blockchain and the access to it is distributed. The data is replicable, synchronized and shared across all the nodes in the across multiple networks. The data is not controlled by a singular node or network.
A bitcoin address is a long string of alphanumeric characters used to send, receive or hold currency. To confirm a transaction, a bitcoin wallet holder needs two encrypted keys- a wallet address and a private key. For a bitcoin wallet, the wallet address is public but the private key is needed to verify with the whole network that a digital signature matches and the transaction is valid.
10. Smart Contract
A smart contract is a digital agreement stored on the blockchain that is unalterable, once signed. It defines certain logic operations that have to be fulfilled in order to perform tasks such as deposit money or data. As an example: Conditions of releasing money to a third party delivery team. Suppose a sender wants to send goods to the receiver using a third party, but wants to pay money for delivery only after the delivery is successful. Then, a smart contract could be as follows: The sender pays the shipment money on the day of loading of goods. The smart contract will hold payment to the delivery team until the recipient confirms to the sender, the receipt of goods. Only then will the smart contract release the payment and automatically transfer the money to the delivery team.
- Introduction to Blockchains & what it means to Big Data
- Is Blockchain the ultimate enabler of Data Monetization?
- Mark van Rijmenam’s Top 7 Big Data trends for 2017