For years, Ethereum has been the darling of the developer community. As decentralized applications (DApps) and non-fungible tokens (NFTs) have exploded on the Ethereum network, Bitcoin has struggled to match its popularity for this purpose.
It’s easy to see why developers preferred Ethereum to Bitcoin for building solutions. The higher network throughput and comprehensiveness of Turing meant that complex applications could be created and run seamlessly.
However, as Bob Dylan said, “times are changing.”
Thanks to massive advances in technology, building on Bitcoin has become easier than ever, and developers can enjoy all the benefits of the Bitcoin network: censorship resistance, access to liquidity, and huge network effects.
We’ll look at the basics of building on the Bitcoin blockchain and explore some of the best examples of Bitcoin-based applications.
What are the challenges of building on Bitcoin?
Compared to next-generation blockchain platforms like Cardano, Ethereum, or Solana, Bitcoin was never intended to host applications on its base layer. Satoshi Nakamoto, the creator of Bitcoin, simply envisioned it as a censorship-resistant peer-to-peer method of settling payments.
Bitcoin’s core architecture is as simple as it gets, which makes it difficult to build anything, at least until now. For example, Bitcoin uses an incomplete Turing system, which is different from the complete Turing systems found in most blockchains today.
Without getting too technical, Turing completeness is a concept that denotes a machine’s ability to solve complex calculations. According to Alan Turing, who proposed the theory, a complete Turing machine is a machine that can handle any task, no matter how complex—provided you have time, memory, and the correct instructions.
Bitcoin was deliberately scripted with incomplete Turing language. Why? Because it simplifies the functionality of Bitcoin. Additionally, increased complexity introduces more vulnerabilities and problems, as any programmer knows.
Ethereum uses a Turing-complete scripting language, which means it can be adapted for different uses. This is why developers have been able to program the Ethereum blockchain for different purposes, such as the execution of smart contracts.
Another problem with the development of Bitcoin is the low throughput of the base layer. While the proof-of-work (PoW) consensus mechanism used by Bitcoin ensures security, decentralization, and immutability, it reduces the number of transactions that can occur on the blockchain.
Currently, Bitcoin processes around five to seven transactions per second, in part due to its block size limits. This is small compared to the thousands that centralized payment systems like VisaNet can process in the same time frame.
These constraints have collectively made Bitcoin development difficult, so many developers forgo blockchain for newer platforms. However, these platforms cannot match the security, decentralization, and acceptance of Bitcoin, which creates even more problems for projects built on any other blockchain.
One solution would be to create a system that benefits from the qualities of Bitcoin, but extends the functionality of the base layer. This has been a concern for many in the Bitcoin community for years, and now the efforts are starting to bear fruit.
Can you rely on the Bitcoin blockchain?
The short answer is, “Yes, you can build on top of Bitcoin.” The longer answer is what we will discuss in the next section of this article.
Unless a drastic change occurs, the base layer of Bitcoin will not change to allow the development of complex applications. Given the bitcoin community’s cautious approach to upgrades, we can expect this to be the case for some time.
On the contrary, it is possible to build on the Bitcoin blockchain using scaling solutions that aim to improve the scalability and functionality of the system. Also known as Layer 2 technologies, scaling solutions take some tasks away from the base layer, but depend on it for security and immutability.
Let’s look at some of the layer 2 solutions to build on the Bitcoin blockchain.
Lightning Network is the most popular solution for scaling Bitcoin-based applications. The central idea behind the design of Lightning Network is that small transactions do not need to be recorded on the blockchain.
Lightning allows individuals to transact off-chain, increasing system throughput. However, the final state of these transactions is recorded on the blockchain to ensure security and immutability.
Here is a simple and popular explanation of how the Lightning Network works:
Imagine you had to buy coffee from Joe’s store downtown. You want to pay with bitcoins, but network fees and long confirmation times make it impractical.
With the Lightning Network, you can open a “channel” between you and Joe to process the payment. The payment channel connects your wallet address to Joe’s, so you can pay for your coffee. Since this transaction occurs off the main Bitcoin blockchain, payments are transparent and cheaper.
When the transaction completes, both parties can agree to close the channel and save the final state to the blockchain. Once this happens, all channel funds are automatically transferred to Joe – think of a payment channel as a smart contract.
Recording the final states of transactions on the main blockchain ensures security. Additionally, multiple transactions are bundled together for confirmation, reducing the number of unconfirmed transactions clogging the network.
The Lightning Network has many use cases, especially in building apps. Examples of apps built with Lightning Network include micropayment platforms like Tipping.me, a browser extension that lets users tip others on Twitter.
Another popular app built with Lightning Network is LightNite, a multiplayer battle royale game similar to Fortnite. LightNite is however a gambling game that rewards players with bitcoins based on their performance.
Other Bitcoin-based apps running on the Lightning Network include Strike, Sphinx, Bitrefill, and LN.Pizza.
Rootstock (RSK) is a layer 2 solution for creating smart contracts that can run on Bitcoin. The RSK blockchain connects to the Bitcoin blockchain via a two-way peg. Those familiar with sidechains will understand how Rootstock manages to interact with Bitcoin.
The Rootstock Virtual Machine (RVM) is similar to the Ethereum Virtual Machine, making it easier to execute smart contracts. Above all, Rootstock’s virtual machine is Turing complete, so developers can program complex logic into applications like they can with Ethereum.
Rootstock can tap into Bitcoin’s security through merge mining. It can also promote faster transactions through off-chain solutions. According to estimates, the Rootstock blockchain could be capable of handling up to 100 transactions per second, which is well above Bitcoin’s current throughput.
Stacks differs from the other solutions on this list because it is not a layer 2 scaling solution. Rather, it is a layer 1 blockchain connected to Bitcoin through its consensus mechanism , called proof of transfer (PoX).
Stacks builds on Bitcoin’s secure, open, and permissionless structure, but adds never-before-seen features like NFTs, decentralized finance (DeFi), and smart contracts.
With Stacks, you can build on Bitcoin without changing the base layer. All transactions made on Stacks or applications based on Stacks are settled on the Bitcoin blockchain, enhancing the security of Stack. Stacks applications can interact with the Bitcoin blockchain, so users can transact using Bitcoin.
Stacks is useful for building NFT markets, DeFi apps, wallets, and social networks. You can see this list for all bitcoin-based apps built with Stacks. If you want a detailed description of Stacks, read this article from the Stacks Foundation.
The benefits of relying on Bitcoin
If you’ve read the article so far, you might be wondering, “Why should I build on Bitcoin?”
It turns out you have plenty of reasons to consider running applications on the Bitcoin blockchain.
First, you need to consider Bitcoin’s network effects. In economics, the term “network effects” refers to a situation in which a product acquires higher value as its user base grows.
This article does a good job of explaining the mechanisms of Bitcoin’s network effects and the implications for its market dominance. However, here’s a TL;DR version if you’re too busy to read:
Bitcoin is the most popular blockchain and has the highest market capitalization of any cryptocurrency in the market. With bitcoin adoption expected to continue growing at an exponential rate, it makes financial sense to build services for bitcoin users.
Most holders chose to convert their bitcoin to other cryptocurrencies to interact with smart contracts and DApps on other platforms. Developers can easily tap into this huge market by enabling DApps, NFTs, DeFi markets, and smart contracts on the Bitcoin blockchain.
Another key reason to run DApps on Bitcoin is the security it offers users. Although considered clumsy and computationally intensive, Bitcoin’s proof-of-work consensus mechanism is arguably the hardest to break.
To gain control of the Bitcoin blockchain, hackers would need to control 51% of all nodes in the network. While not entirely impossible, the exploit would require an enormous amount of resources and time to pull off. And there are not many hackers willing to make this kind of investment, so we can rule out the possibility of a bitcoin hack.
Although Bitcoin has traditionally not been suitable for running complex applications, new solutions allow developers to easily run DApps on the platform. These applications can take advantage of Bitcoin’s impressive security and network effects. With such innovations, Bitcoin can give Ethereum applications a run for money and extend its long-term viability.