Demystifying Bitcoins – Pt.1 Decentralized Ledgers

I was quite late to the whole Cryptocurrency bandwagon and struggled a lot with the original Bitcoin white paper trying to understand what Bitcoins are. It took me a while to realize I needed to approach the subject in a different manner to understand it better. Instead of trying to understand the entire Bitcoin world as a single entity, it made more sense to look at it as a culmination of multiple protocols and philosophies coming together. Once each of those is understood in isolation, Bitcoin technology as a whole becomes much clearer and simpler to grasp. This multi-part guide aims to do exactly this by providing ‘bite-sized’ morsels simplifying these philosophies without going too deep into implementation details.

Let’s start this journey, shall we? Although some terms may sound scary initially, I assure you that they’re really quite simple to grasp.

Terminology

Ledger – A simple list of records showing financial transactions of who gave money to whom. This is to keep track of how money moves.

So theoretically, with the help of ledger entries, we can easily figure out the total number of coins owned by a person. This can be calculated as total incoming coins – total outgoing coins. So from the above example, Snape has an account balance of 10 coins calculated as 30(received from Harry) – 10(sent to Hagrid) – 10(sent to Lupin).

Centralized Ledgers

Before trying to understand Decentralized Ledgers, let’s just have a look at how our traditional currency moves between two people in the current system. Imagine Jack has a total balance of 120 coins and wants to transfer Danny some money through online transfer.

By the traditional way, Jack will log in to his Net-banking account and put in a request to send 100 coins to Danny’s account. The bank first checks if it really is Jack making the request (by asking for his Net-banking credentials to authenticate him), and then proceeds to check his account balance within their ledger book to see if he has enough funds. If both these steps pass, the bank proceeds to transfer the money and notes this down as a new ledger entry. All this happens in the virtual world so there is no physical transfer of cash. Appropriate ledger entries will ensure one person’s account is debited and the other’ is credited and the account balances are updated.

This will all work well provided a very basic assumption is made, which is – the third party involved (the bank in this case) is honest and the ledger entries are proper and religiously updated. We do trust the banks with our money, don’t we? Banks never inconvenience us with hidden charges, or make mistakes and mess up account balances right? Am I right? Hello?

The current state of affairs got people thinking – Do we really need a third party to take care of our money, and carry out transactions for us? From the above example, two things are quite clear

  • It is vital for the third-party to be trust-worthy in order to ensure your money is safe
  • It is an expensive affair if we need to involve a third party for all our transactions

With increasing number of examples in the recent past, of financial mismanagement by third parties, it is not surprising that a lot of people don’t trust them 100% when it comes to managing money. This gave rise to the next question – What now?

Hello Decentralized Ledgers!

The most obvious way forward was to get rid of the third party and let everyone maintain his or her own balances through personal ledgers. This will ensure expenses are lowered. So now Jack and Danny are now quite happy that the bank is not involved. They try to transfer funds, but Danny now has no idea how much funds Jack has in his account. Since there’s no bank, there’s no central ledger which she can check to see Jack’s account balance. The only way here would be for Jack to pass on his ledger which Danny could cross-verify. Once this is done she’s happy to go ahead with the transaction and updates her personal ledger with a credit entry for 100 coins.

Now Jack being the sneaky guy he is, does not record the corresponding debit entry into his ledger. This means as per his incorrect ledger, he is still in possession of the 100 coins he gave to Danny. Since there’s no one to keep a check on Jack and his ledger entries, he then proceeds to transfer 50 coins as a gift for Lara when his account balance should have only shown 20 coins (120-100). This phenomenon of reusing money since no one is keeping track, is called ‘Double Spending’. So now we’ve arrived at a new problem – How do we ensure someone keeps a check on Sneaky Jack?

This is where Decentralized ledgers come in. Here, a copy of the main ledger book updated with all existing transactions is maintained by EVERY user in the network and the onus is on them to keep it updated. So when a transaction is initiated, this is broadcast to the entire network so that every user is aware of the request. In our case, once Jack’s transaction request is received by other users in the network, they then individually authenticate and verify if Jack has enough funds to carry out the transfer or not.

After establishing Jack has enough balance by checking their ledger, they approve of the request. Once a majority of the users approve, the transaction is carried out and every user records this entry against Jack’s name in their copy of the ledger book.

In the second scenario, when Jack tries to carry out a fraudulent transaction with insufficient funds, the members in the network can individually look at their ledgers and reject this request as they can see that Jack has a balance of only 20 coins, which is not enough to carry out the new transaction.

Let’s also consider a case where Jack has managed to convince Groot to lie for him and approve the transaction to transfer 50 coins to Lara. In this case, we have one approval from Groot and everyone else has declined the transaction. In such cases, the network favours verdict given by the majority of the users and goes ahead with that. This way even if there are a few fraudulent or non-responsive users, network discards their vote and goes ahead with the majority vote. In real life, there will be a lot of these cases happening as all transactions may not propagate down the network fast enough for every member to authenticate and accept. The transaction will however still go ahead if it has backing from enough users in the network.

51% Takedown

Imagine Jack gets some of his villainous friends to come in and support him in carrying out false transactions. If the number of friends is less than the number of honest users, then we will not have an issue as mentioned above. However, if the villains outnumber the existing honest user-base, this will result in the network getting poisoned and will start accepting the fraudulent transactions as it has a majority vote.This scenario is called the 51% takedown where a specific group who has more than half the strength in the existing user base, essentially takes control of the network. Fear not, as carrying out this attack in real life needs an ungodly amount of computing power and is quite unlikely to happen.

This, in a nutshell, is the philosophy of Decentralized Ledgers, one of the biggest differentiating factors between Bitcoins and normal currencies. I hope this guide helped in throwing some light on the same, as understanding this will bring a lot of clarity in gaining a better grasp on Bitcoins as a whole. In the next part, I’ll be describing Blockchains and Bitcoin mining.

Part 3 will be a step-by-step guide on how you can get Bitcoins in India.

1 thought on “Demystifying Bitcoins – Pt.1 Decentralized Ledgers”

Leave a Reply

Your email address will not be published. Required fields are marked *