Author: jolestar, Founder of Rooch Network
Source: X, @jolestar
Bitcoin’s programmability expansion can be divided into two main directions: on-chain expansion and off-chain expansion.
Bitcoin On-Chain Expansion
This direction has always been limited by the programmability of Bitcoin scripts. Solutions like Bitvm attempt to simulate circuits using the Taproot tree to achieve Turing-complete computation. However, the larger limitation of Bitcoin L1 is that Bitcoin scripts are stateless. No matter how complex the computation is, ownership of the state can only be expressed as time locks, hash locks, and private key locks. It cannot express a “state lock,” which is a prerequisite for implementing complex applications.
To understand this limitation, let’s consider replacing Bitcoin’s script with a Turing-complete virtual machine while keeping other conditions unchanged. Design a counter that can be incremented by any user sending a transaction. This scenario demonstrates the usefulness of a counter. In typical inscription scenarios, a counter is needed to calculate the total amount of assets. If the counter can be expressed on-chain, there would be no need to waste inscriptions.
To explain “state lock” with a common analogy: If we understand Bitcoin scripts as intelligent locks for UTXOs, these locks can be unlocked with passwords or fingerprints, but they cannot internally record the results of script execution. Therefore, they cannot implement the functionality of being unlocked a certain number of times and then no longer being unlockable.
Therefore, if on-chain expansion can be combined with one-time signatures to create an arbitration and challenge mechanism, it would already be very groundbreaking.
Bitcoin Off-Chain Expansion
Since on-chain expansion has limitations, we can only seek off-chain expansion. To avoid ambiguity between L2/sidechains and on-chain/off-chain, they are collectively referred to as off-chain expansion.
Off-chain expansion requires making choices among several options:
– What smart contract and virtual machine to use.
– How to read and write the state (data and assets) on Bitcoin in smart contracts.
– Where to write the transactions and how to ensure availability.
For example, in the AVM scheme:
– Bitcoin Script is chosen.
– New OP codes are added to achieve this.
– Transactions are written back to Bitcoin L1.
On the other hand, EVM sidechain schemes generally involve:
– Using EVM.
– Bridging assets to the sidechain.
– Ensuring with an independent consensus network.
The article mentions Rooch Network, and its solution is described as follows:
– Smart contract and virtual machine: Move and MoveVM.
– How to read and write the state on Bitcoin: Execute all transactions on L2 and express the state (UTXO/Inscription, etc.) of Bitcoin as Move Objects.
This approach has several advantages:
– Smart contracts can read all states (UTXO/Inscription, etc.) on Bitcoin, including transactions and block headers.
– L2 states can be bound to Bitcoin states through dynamic fields in Objects (atomic binding), with ownership belonging to the owner of Bitcoin assets. Some typical scenarios are expressing land on L1 and building a house on L2, or expressing a domain name on L1 and resolving it on L2.
– By generating Bitcoin Scripts and Bitcoin transactions in L2 smart contracts, programmability is provided to transactions.
Ensuring Availability
Rooch Network’s transaction availability relies on third-party DAs. In Rooch’s solution, since L2 includes all L1 transactions, they cannot be written back to L1. Only the root of the L2 state tree needs to be written back to Bitcoin periodically. This also ensures that the transaction costs on L2 are low enough to provide infrastructure for more complex applications.
In summary, the Bitcoin ecosystem has long awaited programmability expansion solutions, with various routes and attempts. While the programmability of Bitcoin L1 is limited, its advantage is that all states are global, and there is no fragmentation between contracts. Therefore, any expansion solution that writes data on Bitcoin can be combined with other solutions to complement each other and ultimately create a unique ecosystem.