Tag: bitcoin transactions

  • Day 2 — Where Did My Bitcoin Actually Go?

    Earlier, we came across an astonishing idea. It is possible to send money through the internet without any banks being involved. Instead of financial institutions verifying and storing transactions, it is through a network of global computers that a public ledger known as the blockchain is formed. It is only natural to ask an obvious question: Where do transactions go when you send Bitcoin to someone?

    As the answer is clear for the banking systems, if you make a transaction with your bank it simply adds this record to its own database and decrements from your balance while incrementing the recipient’s balance, all on a central bank server. However, for the Bitcoin network it is quite different. When you send Bitcoins, the transaction is broadcast to thousands of global computers that communicate among each other to maintain synchronized database of transactions.

    You could better understand this if you compare it to a Google Sheet where every single transaction of Bitcoin ever is recorded and every participant of the Bitcoin network holds a copy. Whenever a new transaction takes place, it gets added to all thousands of copies of this Sheet. Thus, if you send Bitcoin to your friend Rahul, it is declared to everyone in the network who then updates their copy of the global ledger.

    This ledger of all transactions is what is known as the blockchain. There is really nothing fancy about this word other than it represents a chain of records where records containing transactions are added in chunks called blocks. When a block becomes full, it gets added to the previous chain of records which can be said as creating a sequence of entries.

    An easy way to conceptualize the blockchain is to consider it as a diary page containing a group of transactions which are recorded after the specific time period expires, it is sealed and another page is started. Collectively, pages form a complete transaction history of the Bitcoin network.

    Once a block is formed and added to the chain, it becomes nearly impossible to edit it as the transaction will affect all subsequent blocks too; and that too is practically impossible with so many users in the network to coordinate that change in all of the blocks in the network at the same time. The transactions thus added are made publicly visible, though not linked with actual identities, which means everyone can see the entries on the blockchain and verify its integrity, but not the identities of individuals behind each transaction, rather strings of characters called wallet IDs will be displayed in place of them.

    The entire process is completely contrary to banking which uses its own private databases to maintain records which are then verified and managed solely by them. Here, the blockchain, which is public and open to everyone to verify, ensures a network that is transparent yet maintains privacy through a unique system of identity.

    But there is a remaining question; how does a particular set of transaction get verified, collected and formed into a block, linked and then recorded into the global blockchain? Well this task is designated to a group of users called miners who in return for their services are given Bitcoin as a reward. They are the ones who collect pending transactions, pack them into blocks and make them accessible to the whole network in return of mining new bitcoins.

  • Day 1 — I Sent Money Without a Bank. Wait… How Did That Even Work?

    A few years ago, if you wanted to send money to somebody, there were very few options. You could go to a bank, use internet banking, or just send money through a mobile app like Paytm, Google Pay or UPI. Mobile apps these days look extremely sleek and fast, but they only give the illusion. In the backend, every transaction ends up going to a bank. No matter how fast it feels or how short the time it takes, there is a bank somewhere in the middle making sure things check out.

    Lets take the example where you send Rs 500 to a friend. To you it feels like money is going directly to him, but in reality it isnt. Instead, you are asking the bank to change its database. Firstly, your bank checks if you have enough money (Rs 500). It then checks the validity of the destination bank account, checks the legality of the transaction, and then decrements the amount from your bank account while crediting it to your friend. To sum it up, it is nothing more than asking the bank to update its database from having balance X in your account, to balance X-500, and in the bank of your friend having a balance Y, to balance Y+500. This is how digital money works in the real world today and it has been working this way for decades – a middleman with trusted power.

    But things became strange in 2009. A man (or group of people) known only by the pseudonym Satoshi Nakamoto created a system which looked like just another form of digital money, but one crucial difference; it enabled the sending of money from one individual to another without a third party.

    This sounds like a contradiction in terms. If there is no bank verifying the transaction, then how will we be able to detect cheating? How do we know if you actually own the money which you are sending? And how do we stop one person from using the same digital money for multiple transactions? This was where many people became bewildered and honestly still are bewildered by this day and age.

    Lets imagine an everyday situation where you have to send some Bitcoins to your friend Rahul. Instead of opening a banking app, you would open something called a ‘crypto wallet’. A crypto wallet, however, does not actually store money in the sense of a physical wallet does storing cash. What it does is store certain cryptographic keys that give you access to funds, without which they cannot be touched or moved by anybody else.

    Each crypto wallet is associated with an address, called the ‘public address’ which can be thought of like an email address, but for your digital cash. Anyone in the world can send Bitcoins to this address. This address is usually a very long string of numbers and letters, which look very peculiar the first time you see it, but represent a destination in the Bitcoin network.

    So, when you are going to send your friend Rahul Bitcoins, you punch in his public address, the amount of Bitcoins you wish to send and when you hit ‘send’, your wallet announces the transaction to thousands of computers all across the world which are interconnected in the Bitcoin network.

    The interesting part is that this is where we depart from how banks operate. Instead of having a single entity like a bank to verify transactions, in the Bitcoin network, there are many computers all over the world which collectively verify each transaction on the basis of whether the transaction is legitimate, and the person sending money actually possesses the Bitcoins, and these Bitcoins have not already been spent elsewhere. The system is therefore able to verify if the transaction is legitimate or not.

    Where is it verified? It is verified in what is called a blockchain.

    A blockchain can be seen like a massive notebook that records all Bitcoin transactions in existence. For example, there could be entries in the notebook which are like “Alankrit sent 1 Bitcoin to Rahul”, “Rahul sent 0.5 Bitcoin to Sneha”, “Sneha sent 0.2 Bitcoin to Aman”, etc. And over time, as and when transactions occur, the notebook grows larger and larger.

    The key attribute of a blockchain is that, instead of one single notebook residing somewhere, there are thousands of copies all around the world, and whenever a transaction is made, all these thousand notebooks get updated. This makes altering the blockchain almost impossible as you would have to simultaneously alter a thousands of ledgers at the same time, and all these copies would have to be agreed upon. For example, imagine you are in a classroom and you and every single student in the class are keeping track of all transactions made by all students in a notebook. If, later on, a student decides to cheat by altering an entry in his notebook, all the other thousands of students in the class would easily detect this as his ledger will not match the notebooks of any other student. The system is thus reliable as many individuals maintain its integrity.

    And this is what distinguishes Bitcoin and all its descendant cryptos. For the very first time, individuals can make digital transactions without anyone’s approval and without a bank in between them. The whole system is powered by open source software and maintained by the users.

    However, it is now natural for a new question to arise: If banks are not verifying the transaction then who is and why should they do it for free?

    The answer is through what is called Bitcoin mining.