Empowering the ledger
When someone wants to make a transaction, he or she has to go to the central place of the village and shout to everybody else what transaction he or she is willing to make. When hearing the transaction, the other villagers write it down on the first page of their book: Alice gives 2 Villagecoin to Bob, Chuck gives 5 Villagecoin to Dan, and so on. In this way, every transaction is recorded in everyone's book, as shown in the following diagram:
With this system, no one was entrusted to assert the accuracy of a central book but instead, everyone is responsible for their own book.
This organization allows two things:
- Transparency: The villagers can check whether a villager has enough money. Since all of the transactions are recorded, it's easy to check that Alice cannot send 15 Villagecoin to Dan, since she was given 10 Villagecoin on the first day and then sent 2 Villagecoin to Bob. She has therefore, only 8 Villagecoin remaining.
- A first level of security: Since everyone should have the same book and history of transactions, if Alice came to falsify a transaction in her book, it would turn invalid because everyone else (the majority) has the correct transactions recorded. Alice would just end up with an incorrect book and would need to retrieve a valid copy from another villager.
In this example, the book is what we call a database (or ledger), where all transactions and value transfers are logged. The village is the community that empowers the ledger; it is a network infrastructure where the villagers are the following:
- The nodes and the miners: They are the entities that validate the transactions and store the ledger (more on that later).
- They are the users of the service provided by the network. In this example, the service is the ability to use a decentralized means of payment (Villagecoin) to sell and purchase physical goods. It can be compared to Bitcoin.
So far, we have seen some quite interesting things. We already demonstrated the decentralization feature of the blockchain and how a database can be shared and track-recorded across a network without being altered.
Now comes the most important and hardest feature to understand: security.