Is bitcoin a completely trustless system?
Bitcoin is a decentralized digital currency. Many people praise its design such that users can make payments without trusting anyone. Is that true?
No, we still need trust in the bitcoin system unless you are an expert in many knowledge domains. The first thing a user needs before using bitcoin is a wallet which generates and manages private keys. Whoever controls the private key can move the fund away. Therefore, users trust wallet developers not to spend their bitcoins. Some may argue not all wallets allow developers to have access to users’ private keys. Developers often publicize the source code to prove their validity. However, how do users know if they don’t have any programming background? General users have to rely on other experts with solid computer science foundation to verify the source code. After the user obtains a wallet, it is still empty inside so the user buys bitcoin either from the online exchange or ATM. Regardless of which approach, the user suffers from counter-party risk. That means the seller doesn’t offer any bitcoin after receiving the money from the user. Without trusting the seller, users can hardly purchase any bitcoin.
Zealots may think my arguments cannot be justified because wallets and exchanges belong to third-party service providers. To fully utilize decentralized features of bitcoin, all trusted third-parties should be removed. Let’s assume a user downloads the entire blockchain, manages private keys and perform mining to obtain bitcoin on his computer. Yet, the user cannot download the blockchain without a proper software which is developed by Bitcoin Core team. The same problem happens as I mentioned in the second paragraph. Even if the user is a professional software engineer who has already inspected the source code of the Bitcoin Core software, the engineer still needs to trust mathematicians who developed the cryptography adopted in the source code. Although users cannot completely eliminate the trust, bitcoin system is highly transparent by comparison with the traditional financial institutions that the source code of their IT systems are not publicly available.
In short, bitcoin is not a completely trustless system. Instead, the design of bitcoin minimizes the trust on third-parties by creating a transparent environment allowing everyone to have the right to inspect and monitor.