Even though open sourcing cryptocurrency wallets is the current trend, this may not be the best option. Let’s take a look.
Cryptocurrency has benefited greatly from open source coding, no doubt. Since cryptographic libraries must be written by developers, progress would have been much slower if not for open source. Cryptocurrencies are difficult for software programmers who don’t have rich mathematical backgrounds.
Despite the simplicity of laying out the math in practice, writing the code to implement it is still not as straightforward. It is probable that there are fewer bugs and vulnerabilities due to coding errors because open source is widely used.
In addition to their popularity, open-source Bitcoin wallets also have the advantage of being able to be checked by anyone for ‘backdoors’, ‘spyware’, or other malicious software.
Theoretically, this is also great, but it does not provide a 100% guarantee that there won’t be issues. Why is that? It’s because 99.9% of the users of the software don’t inspect the code themselves and instead rely on others to do it for them. Despite the fact that other people check it, issues can still be overlooked.
Taking the recent Ethereum hack, where a rogue programmer created a smart contract that drained 3.6 million ether out for himself, as an example, many people relied on open source code. Since the code in that case was open source, many people mined it for information.
You will often see members of the ‘core’ team of a cryptocurrency advising people not to modify code produced by someone other than the ‘core’ itself (see here as an example). However, they expect you to trust ‘core’ 100 percent, when core teams themselves are often anonymous groups of people without any inherent responsibilities. The majority of ‘hacks’ are actually ‘inside jobs’. It was believed the Ethereum hack, the Shapeshift hack as well as the Mt. Gox hacks were inside jobs.
However, you might argue that we still need open source, since the whole point of Bitcoin and cryptocurrencies in general is to avoid relying on third parties. It means not relying on counterparties and acting as one’s own bank. However, most people do not have the time or experience to write their own software or to review open source code in order to create their own applications.
What makes open-source important
The functionality that cryptocurrencies and open blockchain networks provide may be regulated if provided by one company. As a money services business, Liberty Reserve or E-gold are centralized issuers of digital currency, and must register with FinCEN and be licensed to operate in every state. As securities, those tokens may need to be registered with the SEC if the issuer decides to market them as investments. Having such regulations is a sensible idea because centralized services pose the risk of the party in the middle falling short of her promises or failing to test and secure her products.