Imagine there are two armies, each led by a different general, who are both preparing to simultaneously launch an attack on opposite sides of a fortified city. Both generals have agreed to attack the city, and must coordinate their armies to strike the enemy at the same time for the attack to be successful. Hence, they must communicate with each other to decide the time to launch their attack. The dilemma the generals face is that the enemy may have infiltrated their armies, and the messenger given the task of communicating the attack could be untrustworthy.
This interesting thought experiment illustrates the pitfalls and challenges of attempting to coordinate an action by communicating over an unreliable link. This scenario is commonly referred to as the Two General’s Problem or The Byzantine General’s Problem.
Before the invention of Bitcoin, sending money over a communications channel required the need for a trusted third party such as a bank, credit card company or Paypal. A trusted third party facilitates and controls the transfer of funds between two parties so that they don’t need to trust each other. When an individual sends funds through the banking system, what is actually happening is the bank is moving the funds on behalf of the individual. The banks involved maintain a private ledger which documents transactions and how much money is in each account.
Blockchain to the rescue
The Bitcoin Blockchain solves the Two General’s Problem. With Bitcoin, and the Blockchain that powers it, for the first time in history two individuals can settle trades without the need for a trusted third party. Two people are able to transact peer to peer in a trustless way, and each transaction is verified on a public ledger. In other words, because all transactions can be verified by the participants of the network, there is no need for a trusted third party. This is why Bitcoin is called a trustless system. The Blockchain doesn’t eliminate trust, rather it distributes trust across the entire network so that the integrity of all transactions can be validated.
The Bitcoin protocol is open source, meaning that its programming code is freely available to review and authenticate. This means the rules of the Bitcoin network, such as the number of coins in existence, or the emission schedule (the rate at which new coins are mined into existence) can be verified without the need to trust the network.
By comparison, the legacy banking system is completely built on trust. The trust in politicians and unelected central bankers to maintain a stable supply of new currency, trust in banks to safeguard our deposits and to move “our” money where we like, when we like.
Bitcoin eliminates the need for trust.
Trust vs Authenticating
So in order to benefit from this important characteristic of Bitcoin, holders need to be aware of when they are trusting and when they are authenticating. For example, storing Bitcoin on an exchange requires trusting a third party with the private keys. This defeats the point of holding Bitcoin in the first place. Furthermore storing Bitcoin in a wallet which isn’t open source requires trusting the ability and integrity of the wallet creators. Holding Bitcoin on closed source software which cannot be verified requires trust that no “back door” computer code can be written to steal your funds.
Therefore, when storing and using Bitcoin it’s important to ask the question “Am I trusting, or can I verify?”