This is the second article in this blog series where I’ll explain what block chain technologies are in simple language with easy-to understand examples. In the earlier article, we discussed in brief what blockchain technologies basically are, some of their common features and most importantly, why these technologies have captured the imagination of people worldwide. I also listed a few things to keep in mind before starting exploration of this new and exciting world of blockchain. In this post, we’ll continue the journey by taking a closer look at Bitcoin cryptocurrency and Ethereum smart contract platform, which are the two most widely used and different implementations of blockchain technology.
BitCoin: More than just a Currency
Bitcoin is the best known implementation of blockchain technology, to the extent that for most people, both are one and the same thing. Actually, Bitcoin in the uppercase is used to denote the cryptocurrency system where as bitcoin in lowercase is used to refer to a unit of the currency. These are virtual currency stored in form of transaction entries on the blockchain. So you need computer and internet connection and a Bitcoin account or wallet to do any transaction. You can use Bitcoins to buy goods and services, similar to how you use internet banking to transfer money.
In addition to normal transfer of bitcoins, there are a few more options available allowing people to execute simple conditional contracts. In these situation, these Bitcoin transaction can be thought of as a signed cheque. It is possible to pay bitcoins in a way that payee will only be able to use these after a certain time duration of receiving the amount. It is possible to create accounts and transactions that require signatures of multiple persons to operate. Creating these kind of transactions is much more complex but may be useful in cases where parties in the transaction require additional assurances.
However, even the simple Bitcoin transactions are very unlike transactions of regular currencies. Firstly, a person can create unlimited anonymous accounts. Unless you buy bitcoins from an exchange(where you have to provide your identification), your transactions are not traceable to you. You can send money to anywhere in the world much more quickly and cheaper that via banks. These two are the main reason people prefer to use bitcoins.
Its preferable that you have some general idea of how the system works before you start using bitcoins. Or you can scroll down three paragraphs, to skip the details to the fun part that is the Ethereum platform.
OK, you decided to read the details, here they are: Unlike the traditional systems comprising the banks of the payer and payee and other intermediaries, these are replaced by various thousands of computers run by people who are called “miners” who support the Bitcoin network by validating transactions. There are rules in place on the Bitcoin network on how these transactions are validated and stored and how the system decides which miner is successfully able to validate the transaction and collect the transaction fees as well as newly created bitcoins.
These rules are designed such that valid transactions are stored on the blockchain in a secure, irrefutable manner and the miners who validating these transactions are not able to manipulate or with tamper with the transactions. However, because of how the system is designed to have multiple miners competing against each other to validate transactions, there are chances that validation of a transaction may get delayed or in very rare cases even get reversed. It is preferable to wait for atleast half an hour to be reasonably sure that transaction has been permanently added to the blockchain.
Main factor that decides the time taken for a transaction to get added is the fees applied to the transaction. You can think of these as postage stamps you put on a letter, faster you want the letter to reach the recepient, the more stamps you have to apply.The person sending the bitcoin has to bear the transaction fees. More the transaction fee you apply to the transaction faster it gets processed, and paying bare minimum fees can lead to additional delay of 10-30 minutes since miners prefer to validate those transactions that have higher transaction fee. Another point to keep in mind is that although bitcoins can be counted in fractional values of upto 10 croreth of a bitcoin, it is not feasible to spend small amounts since the cost of transaction will be more than the amount.
Ethereum, the programmable blockchain platform
After Bitcoin, Ethereum is the most popular implementstion of blockchain technology. Ethereum also has its own cryptocurrency called ethers and which can be used by making transactions on the blockchain. However on this blockchain you can do much more than give and take cryptocurrencies, you can write programs and store data on the blockchain, similar to how people make websites on the internet and apps for smartphones. These programs on the blockchain, also called Decentralised Apps (DApps for short) or Smart Contracts, have immutablity and other features of the blockchain.
Users can interact with a Dapp by writing specific transactions allowed by the DApp, which are then validated and recorded on the blockchain. Any data or transaction written to this blockchain can be read by anyone with an internet connection but a transaction fee (called as “gas” on Ethereum platform, puchased using ether) needs to be paid to write data on the blockchain. Since the transactions can be much more complex than on Bitcoin blockchain, adequate gas has to be allocated for use by the transaction otherwise transaction will fail. Excess unused gas is returned to the user. Here one of the good points is that the network is designed to process a new batch of transactions every 10-15 seconds. So a few minutes are sufficient to be assured that any transaction is permanently committed on the blockchain.
Each DApp has its code written on the blockchain that everyone can see and is almost impossible to modify once it is published. Each DApp also has its own Ether account so it can receive ethers from users and also it can automatically create its own transactions based on its own programming to interact with other DApps and users as dictated in the program . Additionally DApps can issue its own tokens to users that can be traded or used. DApps can also be programmed to use functionalities and tokens of other DApps.
Since the code and data stored on the blockchain is immutable, as long as the smartcontract written on the blockchain doesnot have any loopholes or vulnerabilities, it can be trusted to work as specified in the smartcontract without bias or unexpected result. This trust-assurance property of smartcontracts can be used to implement many kind of applications such as auctions, voting, escrow, data-archiving and notarizing, insurance schemes, token trading games, lotteries, speculating, gambling, and many more.
Many people, companies and even governments, world over are excited by the potential application enabled by the flexibility of this blockchain. These are the early days and it will take a few years for these smart contract to become more mature, easily accessible and commonplace. So while you waiting for the world to be transformed into a more transparent and reliable place, you can maybe try out Ethereum for yourself by getting a CryptoKitty , issued by one of the most popular token trading application on Ethereum that has already taken the world by storm. Who knows, maybe you will be the one able to “breed” the next million dollar Kitty?