The idea of “open source” long predates cryptocurrency. The phrase caught on in the 1990s to describe the phenomenon of people posting code publicly on the internet. Though you may not realize it, a lot of what people do on the internet hinges on open source code. For instance, at least 37% of websites that people visit rely on Linux, the open-source operating system.
Open source is an essential ingredient in the Bitcoin and cryptocurrency realm, because like cryptocurrencies, open source is "decentralized," meaning there's no single leader or entity in charge of it. Cryptocurrencies need a decentralized way of managing the codebase, where it's public for everyone to view, change and even try out for themselves.
Open source is the opposite of proprietary code, where a company owns the code and keeps it private to make sure others – especially competitors – can't copy their innovations. Proprietary code is centralized under the control of one company or entity. Windows and Apple’s mobile iOS are prime examples.
Why is open-source code necessary in cryptocurrency?
Bitcoin and most major cryptocurrencies are decentralized, meaning they don't have a leader that can stop certain transactions or control the network. Users who custody their own bitcoin have full control over it, unlike today's major online financial systems where the only option for people is to trust third parties, such as banks, with their money.
To achieve the goal of removing the middleman while maintaining trust, Bitcoin needs to rely on a decentralized method of distributing the code. There can't be just one leader ruling over it because A) the leader could write any instructions they want in the code, and B) the leader could decide who is allowed to access the code and who isn't.
Open source in Bitcoin is important for a number of reasons:
- Anyone can run it: Because the code is public, anyone can download the Bitcoin software and run it for themselves – no permission from a company or government needed.
- Verifiability: Outside developers can scan the software and verify that the code actually does what the project's developers say it does.
- Security: Open source can lead to stronger security. Since more people can analyze the code than with proprietary code, openness can lead to more secure, battle-tested code.
- Encourages project evolution: Anyone who's interested in adding their own features can propose adding them to the project. In Bitcoin, this is done through BIPS.
- Allows efficient spin-offs: If the project's maintainers reject a developer's change for whatever reason, and the developer disagrees with this, the developer can "fork" (or create a copy of) the program code so that they can build their own project. Many cryptocurrencies modeled off of Bitcoin have done this, such as Litecoin.
Where is open source used in Bitcoin and Ethereum?
Open source is everywhere in the crypto universe, but let's focus on how the two biggest blockchains employ open source.
Since Nakamoto's release, Bitcoin Core has blossomed from a one-man project into a battle-tested codebase that developers from around the world contribute to full time. Because of the nature of open source, anyone who has the skills can contribute to the software. Since August 2009 more than 100 developers have contributed to Bitcoin Core, according to code hosting website GitHub, where the open-source code is published.
That's just the tip of the iceberg. Today there are hundreds of other projects with cryptocurrencies modeled off of Bitcoin, most of which also share their code publicly.
The second-largest blockchain, Ethereum, is made up of its own flourishing ecosystem of projects, from low-level clients underpinning the network to decentralized apps (commonly known as dapps) running on top of it. The ERC-721 token standard was created to support the unique structure of non-fungible tokens (NFT) that huge projects like the Bored Ape Yacht Club uses.
Ethereum's team is trying to take Bitcoin's goal to decentralize money one step further: It wants to decentralize everything on the Internet. Because most apps are controlled by one company, such as Twitter or Facebook, the goal of decentralized apps is to hand users more control of their data. So far hundreds of these apps have cropped up. Because they are all powered by open source, anyone can make their own app or contribute to one.
Crypto's deep-seated open-source nature has spawned thousands of projects, allowing widespread experimentation in the industry, and will continue fostering innovation and new technologies in the future.