Sidechains and Blockchains: How do they connect?

As mentioned in earlier posts, any Blockchain network is a distributed ledger maintained by multiple computers using a program that runs the network by a fixed set of rules. Most popular blockchain like Ethereum and Bitcoin encourage the people to run computers that support the operation of blockchain by offering rewards what can be won by competitive mechanism called mining. This competitive process ensures that all transaction are recorded only after proper validation and in an irrefutable manner.

However, the mining is an expensive process for the miner as well as the person ordering the transaction has to pay a fee to the miner. Not all applications of blockchain require this kind of security and in many cases the person using the application will not be willing to pay the miner for each transaction. This is especially the cases in application such as blockchain powered games or social networking sites, where the security of transaction is important but not be financially critical.

In such cases it is possible to make applications with security, transparency, relative decentralization and other features of the blockchain while having very high scalability, instant transaction validation without paying fees by running the application on a side-chain. The cryptoassets and tokens can also be transferred to and from the sidechain to the main blockchain as required. The sidechain can have its own different rules and mechanisms of operation while still being compatible with the main blockchain.

One popular exampleof sidechain  is the Loom network which runs as a sidechain to Ethereum blockchain. This sidechain used a system called delegated proof of stake mechanism to validate transaction. Instead of miners, designated group of validators are given the responsibility of validating the transactions. TO become a validator, one has to stake a very large amount of their Loom Tokens and if they are found to be engaging in illegal behaviour they stand to lose their tokens. The reward for validators is proportional to the Loom Token that they are able to stake.   Anyone who possess Loom token can stake their tokens to support the validators  who is ready to share more percentage of the reward or one that they consider trustworthy.

In the future, it may be possible for many applications to seamlessly integrate with blockchain and have many enhanced features of the blockchain while being compatible with many other platforms due to possibility of operating on sidechain and similar mechanisms.

Please click below to share this with your friends

Easiest way to get your hands Dirty with Ether & other CryptoCurrencies!

In my earlier post I highlighted the many useful features of the cryptocurrency and blockchain platforms and and why they are expected to be the future in many diverse areas such as banking, contracts, insurance, gambling and others as well as a few pointers to keep in mind while trying out using blockchain-based applications for the first time.

As mentioned earlier, you don’t need to spend any money, to see what is written on a blockchain, so if you’re just window shopping, you can login with an empty wallet. All wallets are empty to begin with, you can ask someone who already has cryptocurrency to transfer some to you or you can try to buy some using US Dollars on an online cryptocurrency exchange (doing this is currently difficult because of the the Indian government’s somewhat negative stand on cryptocurrencies but also positive outlook shown towards application of blockchain technology)

In this post, I’ll explain the easiest manner in which you can create a wallet to access and use Ethereum blockchain applications. You need a Chrome or Firefox browser installed  on your PC, and then download the MetaMask extension/add-on. You need to just search for MetaMask on google. Alternatively, you can also install MetaMask addon for Firefox app on Android.

Once installed you will be able to open the MetaMask extension by clicking on the small fox-head icon on top-right area besides the browser address bar. Now you need to make a new account. First step is to enter a password that you want to use for the account. Then the wallet will ask you to read through few terms and conditions and accept them to proceed. Then you will be given 12 random “seed words” that are automatically generated which can be used to recover the account. You need to store these 12 words in the correct order in a secure manner so even if you switch to another PC/ browser, you can transfer your wallet there.

Now your account is created. you can see your account id by clicking on the setting menu and then click on the account detail button to see the account id or “public key” (a  long alphanumeric string )and also a QR code for the same. If anyone wants to send ether to you that person needs to know your public key or to scan the QR code.

You will also see an option to view the “private key” (another long alphanumeric string). The private key allows you to send ether to anyone else via your wallet.  In case your PC/browser is no longer working and wallet seed is also lost, even then you can manage to transfer the balance if you know the private key. If someone somehow steals your private key that person can easily empty your account even without access to the wallet. Therefore it is advisable to store this private key in an even more secure manner.

Let us assume that you manage to get the ether transferred to your account. Buying a CryptoKitty is one of the easiest example by which you can learn to use  ether because of their easy to use website. Open the CryptoKitty website then press the Start button on top-right area of the webpage. Then the webpage will direct you to open your Metamask plugin and press sign-in confirmation.(In case the plug-in has been updated there is a small chance the website may have problem detecting the new plugin).

Now you can browse the site and select a CryptoKitty of your liking and confirm the transaction from Metamask window. Congratulations! You are now a proud owner of a CryptoKitty , the hottest collectible on blockchain. Get out there and let it multiply. Who knows you may breed the next million $$ kitty!!!

Please click below to share this with your friends

But, Where Do All these Cryptocurrencies come From?

In my earlier post, I explained in lesser detail from a new user’s perspective, how the transactions are created, processed and finally put up on the blockchain. I also explained with an example of how to set up a wallet and purchase a CryptoKitty for the whole world to see. With this newly purchased asset, its possible to rent or trade or sell them in the future or just breed them to create a cute family of kittens to make your friends jealous.

Now that you are no longer a beginner, want to get a better understanding of what is happening behind the scene. What is this bitcoin or ether or any other cryptocurrency that you are using actually worth? Where does it all come from and why is it considered valuable by majority of the people who use it for transactions? The answer to these questions are unfortunately not as simple as similar answers about real money. Real money gets printed by mints as per monetary policies of the country and gets it value because it is issued and backed by the government.

Similar to a government that designs its monetary policy, each blockchain may have its own objectives and policies to reach those objectives. Cryptocurrency that resides on the records of a blockchain is originally created by “mining”. Mining process for a particular blockchain network is designed in a way that stakeholders who contribute to achieve the objectives of the blockchain  are rewarded.

As mentioned in earlier posts, one of the main objective that public blockchains like Bitcoin try to attain is Trust via decentralized action of miners competing against each other to earn mining reward. In simple words, Blockchain creates new money to reward the miners for supporting the blockchain. The rules of creating new records are designed such that under normal circumstance, if certain miners try to manipulate system to create invalid transaction, remaining miners are able to detect the manipulations and reject the manipulated transaction. This process by which the acceptance or rejection of transactions, processed by a certain miner, by rest of the miners of the blockchain is called “Consensus”.

There have been a few extreme cases in the past where consensus was not attained between the miners and so the blockchain got split down two different paths, one which accepted certain changes and one which rejected the same changes. At a philosophical level, this can be seen as a democracy of the purest form in action.

Due to the very design of blockchain technology, there is always a threat of possibility where the miners can collectively act in a way that undermines the objective of the blockchain. In fact the blockchain community has coined a term called 51% attack where if a cooperating group of miners have more than  51% of the processing capacity of the blockchain, they can easily act in a malicious manner and force other miners to accept invalid transactions. Although there have been actual instances where group of miners have attained more than 51% processing power, they voluntarily reduced their processing capacity to prevent negative consequence to the reputation of  the blockchain.

I hope I have been able to give a glimpse (without getting too deep into the technicalities) of how the cryptocurrencies operate behind the scene, how this whole blockchain revolution has given birth to a totally new economy and why people consider the transactions recorded on the blockchain as trustworthy records that may be purchased using hard earned money and be exchanged for valuable goods and services.

I plan to write in greater detail in later posts, what are different kind of mechanism for reaching consensus and what implications it has for the miners and other participants on the blockchain. Stay tuned.

Please click below to share this with your friends

Blockchain Explained Simply

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?

Please click below to share this with your friends

Blockchain and Cryptocurrencies: Why bother?


Hello, This is the first post, of the series, which will explain in simple language with easy-to-relate examples, the many potential application, shortcomings and current state of the art of the blockchain and cryptocurrency technologies especially in Indian context.

Good information about these is already out there but most of it is written by very knowledgeable people, but in a very precise and technical manner which may be difficult for non-technical people to grasp. Then there is an marginally-more-understandable mixture of facts-fiction-speculation out there spread by people who know little of the technologies but try to impress by packing a lot of jargon and end up misinforming readers. And finally, there is the Media, which thrive on the controversies and loud statements issued by politicians, intellectuals and other bigwigs who either proclaim these technologies as the silver bullet to end all-problems-known-to-mankind or denounce them as largest fraud of the century.

Realistically speaking, you do not need to be an economist or an accountant or an engineer to understand the blockchain/cryptocurrency technologies out there . Hope you will find this blog a good way to venture forth towards the exciting possibilities in world of blockchain!

Lets Begin with Basics

Blockchain is a very broad term, used to describe a range of technological implementations, which in simple words is essentially:

shared-record-book that is maintained by an online group of computers (and people  owning these computers) spread across the world. The most obvious use case of  of the blockchain technologies are Cryptocurrencies which could serve as an alternative to the paper/coin money that we use today. And then there are lots of new, yet- unexplored possible applications of using this shared-record-book systems such as decentralized organizations, smart-contracts, tokens and many more.

So What?

Now you will wonder, what could be so new or great or exciting about a record-book that is stored online? What is so special about these cryptocurrencies that people are willing to exchange their hard earned money into some thing that may or may not be of any value in the long term? To answer these question in detail, you need to have an overview the history of money and the structure of current monetary systems. These topics are too broad to explain in this blog so I’ll try to explain in short with a recent example.

You must remember the evening of 8th November 2016 when suddenly the PM announced that the then-used 500 and 1000 Rs notes in circulation are to be phased out and replaced by newer 500 and 2000 Rs notes. The days and months that followed are also not easy to forget: the uncertainty, the long queue outside ATM and banks, the attacks and counter-attacks between political parties broadcasted on media. Without getting sidetracked by commenting on the motivation or logic or methodology or execution of the decision, I want you to focus on the core issue that was highlighted by the events:

The money that you have in your pockets and bank accounts is controlled by the government, which may be either printed/minted pieces of paper/metal or in case of money in a bank account, it is represented in books or computer databases. Group of few select people can make such decisions that can diminish or totally destroy your life saving.

Countries like America, Japan and EU are manipulating the supply of money continuously to maintain their economic stability. Their seemingly stable leadership is in a very precarious state. Economies of smaller countries have been ruined by inflation due to wars, unstable governments, incompetence of the people who make money-policy decision. In short, value of the money that you have, can be and is being, manipulated in ways that are subtle and , in some situations, not-so-subtle.

How do Blockchain and Cryptocurrencies come into picture?

All databases and records of companies, banks and governments, having a lot of sensitive information are susceptible to tampering either by authorized internal persons with vested interest or by external persons such as hackers without any trace.

However, the shared-record-book nature of the blockchain, which follows strict machine-implemented code to prevent historical tampering and  new transaction which are validated and updated by  large number of computers across the globe, makes tampering with the records in an undetectable/irreversible manner very difficult. Main feature of “irrefutably” recording information and transactions (including money-transfers) are due to cryptographic methods that are used during validation step.

Other than irrefutability, there are many other possible alternate features relating to anonymity, privacy, transparency, tracability etc. that  shared-record-books can choose to have depending on the application of the particular blockchain.

Each blockchain such as Bitcoin blockchain, Ethereum blockchain and many others, are independent record-book systems with their own set of internal rules, incentives for participation and tokens for exchanging information and values. The rules of these blockchains as well as most details are generally visible to all and generally everyone can make use of the blockchain as well as ,optionally, participate in maintaining the network of shared-record-book by running a programs on their computer to earn the incentive offered by the particular network .  Decisions regarding network-related issues in public blockchains are taken and implemented by cooperation between all people who maintain the network, not by select group of people.

Given that the internet, database systems, cryptography and related technologies has been available to public for more than 30 years now, the blockchain or cryptocurrencies are not new technologies but they are something new made using existing technology in a very unusual way to give rise to “decentralised” economy where people and entities can participate without interference from any single company or government.

Oh Wow, I want to join too, Where do I sign up?

Hold on, hold on. The details of how to get started are reserved for the next post. There are a few more things you need to know about the blockchain and cryptocurrencies to use them in a safe manner before you hop on to the bandwagon.

Storing and maintaining records of information and money transaction in a network of shared-record-books is lot more inefficient than storing all information in one server. Although reading from the shared-record-book is free, a small transaction fee has to be paid for storing information. Illustrating  the reason for the fee with an example, compared to the free services given by Facebook where you can store unlimited photos, links, likes, pokes and posts and whatnot for free, it is very important that people do not flood the already inefficient blockchains with useless records. This transaction fee also gives additional incentive for the people who contribute their computing equipment to validate transaction and maintain the shared-record-books.

This transaction fee has to be paid usually in form of the particular cryptocurrency used by the network. So you need to have a “wallet” or an account and then have some cryptocurrency in it if you want to record information and transactions. The account is protected by a very long software generated number called a private key which has to be guarded very strongly. It is NOT an ordinary password that can be changed or recovered. If the number gets lost the cryptocurrencies in that account are lost forever without chance of recovery. If someone else gets that number, they can empty the account without any secondary challenge like OTP or create records or transactions using your account.

Other than the cryptocurrencies, the applications running on blockchain can  give away for free or sell tokens that can be used later for some purpose. You should keep in mind that value of any particular cryptocurrency or token of a blockchain network is based on supply and demand. Price of these can fluctuate very largely in a short duration. Over time it is possible that a token or currency fall out of popularity same way websites fall out of fashion like Orkut, MySpace etc. All the tokens and cryptocurrencies can potentially become valueless (the same way the likes you get on any FB post is valueless). So you have to do adequate research on the cryptocurrency or token that you’re buying and understand the risks and benefits of investing in it.

Another point to note is that on Bitcoin blockchain, the rate at which block of transactions are entered on to the shared-record-book is fixed at 10 mins, so you must expect a delay of 20 mins after you have broadcast your transaction. Also, if feasible, you may want to wait for 60 mins or so, after which you can be assured that the transaction is surely registered on the blockchain. This wait time is set differently in different blockchains, which can be checked online.

Well this is a nice medium-sized summary covering all the basic points. I hope you find this post useful. I’ll post later all the useful and interesting things that are possible due to implementation of blockchain technology and how they can improve or change some of the systems we have used till now.

Please leave your feedback comments etc. Please watch this blog for new posts on  blockchain and cryptocurrencies.

Please click below to share this with your friends