Blockchain as a ledger
Blockchains are distributed digital ledger, or a transaction ledger. This means that they record transactions involving two or more parties. An example of a transaction could be sending coins from one account to another. In any case, the transaction is written to the ledger and cannot be tampered with. The ledger is divided into blocks, hence the name blockchain, but for the moment we are not going to worry about that. Let’s start by understanding the blockchain as a transaction ledger.
A transaction is some kind of record that must be stored on the blockchain and will change its state. As blockchains became popular with Bitcoin, and Bitcoin’s sole purpose is to serve as digital money, Bitcoin transactions are intended to transfer money between accounts. Let’s think about how a ledger can be used for this purpose.
Let’s think about a bank, where Alice and Bob have an account. Let’s say that Alice currently has 30 coins in her account, and Bob has 10 coins. So Alice wants to send Bob 12 coins. What she needs to do is go to the bank, identify herself, and notify the bank clerk that she intends to send Bob 12 coins.
The employee’s first step at our hypothetical and somewhat technologically backward bank is to open the ledger and record a transaction: Alice transfers 12 to Bob. After that, he changes Alice and Bob’s accounts, deducting 12 coins from the balance of the first, and adding 12 coins to the balance of the second.
That’s not how Bitcoin works, but that’s basically the idea of a ledger; record transactions. Let’s continue.
The problem of centralization
The problem in the above scheme, from the point of view of a decentralized system, is the need for a bank and a bank employee to write to the ledger. Unlike Alice and Bob, the employee plays a central role in the story: he, and he alone, has the power to alter the ledger. This means that this is not a system where everyone is equal.
This is exactly the problem that Bitcoin aims to solve: create a ledger that does not need a central power to update it, and that can be maintained only by its participants in a fully peer-to-peer and decentralized system.
So it is necessary to maintain a ledger that both Alice, Bob, and everyone else in the network agree is correct, up-to-date, and unique. The rules on how to update the ledger must be in the and allow everyone to participate in the process. In other words, there must be a among all participants on a single truth of the network. This requires a consensus mechanism.
Satoshi solved this problem with the so-called Nakamoto consensus, which includes a mechanism we’ve already mentioned: proof-of-work. Combining a distributed ledger with a consensus mechanism that allows pseudo-anonymous participants, Satoshi was able to create the first fully peer-to-peer payment network, Bitcoin.