While respecting the sovereignty principle established by Bitcoin, Arch enhances the functionality of BTC's native layer through Turing-complete programmability and unlocks the programmability of BTC's layer.
The topic of why BTC cannot run smart contracts has been discussed many times. There are three main reasons:
1. Limited scripting language: Bitcoin’s scripting language, Script, is intentionally limited in its functionality to ensure security and simplicity. It lacks the Turing completeness found in languages used by platforms such as Ethereum, which limits the types of logic and conditions that can be executed in Bitcoin smart contracts.
2. Data and state storage: Bitcoin’s blockchain is optimized for storing transaction data rather than the state information required by complex smart contracts. The lack of statefulness in Bitcoin’s design makes it challenging to implement dynamic smart contracts that can interact and update based on different conditions.
3. Execution Environment: Bitcoin does not have a native execution environment that can run complex smart contracts. Platforms that support advanced dApps, such as Ethereum, have virtual machines (EVMs) that provide a controlled environment for executing smart contracts. Bitcoin’s architecture does not include similar components for handling complex decentralized applications.
So far, the BTC ecosystem has had quite a few Layer 2 solutions that attempt to address the lack of these basic pillars, but these solutions require users (receivers) to be unilaterally forced to bridge their assets to a trusted environment, which is usually a multi-signature account. This violates the first rule of Bitcoin: do not hold private keys, do not own Bitcoin.
Arch Network is a Bitcoin native application platform. It brings smart contract functionality directly to Bitcoin through a novel architecture that leverages the Rust-based zero-knowledge virtual machine ArchVM and pairs it with a decentralized network of validators, collectively known as the Arch Network. ArchVM is an SVM-inspired virtual machine (i.e. designed for parallel execution) that combines zero-knowledge proofs (ZKP) for transaction verification, enabling native programmability on BTC.
Next, let’s take a look at how Arch gives BTC a layer of programmability.
Arch is structured as a two-part layer designed to enhance the functionality of Bitcoin, consisting of ZKVM and a decentralized verification network. Together, these two parts form a trustless execution layer directly on Bitcoin. This integration not only preserves the security and liquidity of Bitcoin, but also significantly enhances its functionality, enabling fast, secure, and fully verifiable smart contracts on Bitcoin.
The core of how this is done is actually in one sentence, by enabling the storage of additional data in transactions. This increased data availability opens up new possibilities for embedding state information and metadata directly on the chain, which is critical for applications such as smart contracts that require accessible and verifiable state data.
The Arch network takes an innovative approach to state management on top of Bitcoin’s layer 1, leveraging ordinals through a unique “statechain” process where state changes are committed in a single transaction, thereby reducing fees and ensuring atomic execution.
What is a "state chain"?
UTXO maintains the state within the smart contract address, separating it from execution to improve efficiency and security. The separation of state from execution allows for more expressive smart contracts, facilitating a flexible development environment.
The protocol implements a prover-verifier model where serialized smart contract transactions wait in a pool for execution. Provers retrieve and execute transactions, generating receipts used by verifiers, who verify them using a threshold signature mechanism similar to the proof-of-stake model.
u Decoupling of state and execution: This design choice allows for more expressive smart contracts and innovative use cases, facilitating a flexible development environment.
u Use of Zero-Knowledge Virtual Machine (ZKVM): Arch Network utilizes RISC Zero, a leading general-purpose ZKVM similar to the RISC-V microprocessor that supports languages such as Rust, C, and C++.
u Contract-specific keys: Each contract has a unique key to prevent vulnerabilities. A random key pair is generated at deployment time to ensure that contracts do not share keys and maintain their integrity.
What is the transaction process of Arch?
Step 1: Call the smart contract through a Bitcoin transaction, which includes the basic information required for execution, such as the latest state, partially signed Bitcoin transactions (PSBT), and smart contract inputs. At the same time, there is an Arch Indexer that constantly monitors new Bitcoin blocks and checks the transactions in each new Bitcoin block to see if it meets this call.
Step 2: After detecting the transaction, Arch parses the relevant details and continues to execute the smart contract. The smart contract then generates a result state and an unsigned transaction reflecting the asset transfer in execution, as well as a proof verifying the execution of the smart contract.
Step 3: Everything is transmitted to the validator network, specifically a leader node. During each Arch epoch, a leader is randomly selected based on stake. The leader node propagates the received information to all other nodes in the network.
Step 4: Each node verifies the proof and incorporates the state change into the transaction, then endorses the transaction. The leader collects signatures from these nodes until a predefined threshold is reached.
Step 5: Once the transaction is signed by a sufficient number of nodes, it can be broadcast on the Bitcoin network.
In summary, Arch solves two core problems of how BTC layer1 can be programmable:
First: How to generate signatures without private keys on the first layer of Bitcoin? (For example, Ethereum’s solution is: asset transfers supported by contracts, which are trusted)
- Arch uses a threshold signature scheme (TSS) to enable a network of validators to share keys and sign transactions on behalf of users.
Second: The actual role of Indexer is actually like a module responsible for calculation. After the index completes the calculation, who will match the entire trade?
- Once a user signs a Bitcoin transaction, it is also a smart contract call transaction. The Bitcoin transaction contains all the information captured by the Arch virtual machine, and passes the data input and smart contract call information to the zkvm for processing to generate output (result status, unsigned transaction and validity proof)
With this set of processes, programmability can be achieved at Layer 1. In addition, Arch implements that smart contracts can call other smart contracts and temporarily suspend the execution of the calling smart contract until the called smart contract completes its processing. This mechanism can achieve seamless interaction and coordination between different smart contracts.
Arch Ecosystem and Opportunities:
Arch already has quite a lot of ecosystems, such as layer1 native stablecoins, the decentralized bridge between sol and BTC, layer1 native Dex, etc. We welcome more developers to join the Arch network.
Arch is currently focused on unlocking programmability and execution capabilities at layer 1. Layer 2 and Layer 3 will become venues for smaller, frequent transactions, while layer 1 will handle more expensive Bitcoin assets. Once Arch unlocks programmability for DeFi on BTC layer 1, they will solve the scalability problem, whether it is layer 2 or layer 1.5 or app chain.
At the same time, Arch aims to expand its network by building a decentralized network of validator nodes. Initially, this may start with a selected group of trusted nodes to ensure stability and security. Over time, the strategy involves expanding the network by incentivizing participation from the wider community, transitioning to a fully decentralized model. This expansion will enhance the resilience, decentralization, and credibility of the network, making it more attractive to developers and users. Developers can pay attention to more opportunities for participation at that time.
About ABCDE
ABCDE is a VC focused on leading top Crypto Builders. It was co-founded by Huobi Cofounder Du Jun, who has worked in the Crypto industry for more than 10 years, and former Internet and Crypto entrepreneur BMAN. The co-founders of ABCDE have built a multi-billion dollar company in the Crypto industry from scratch. Because we are entrepreneurs, we understand entrepreneurs better. We have built an end-to-end ecosystem for ABCDE's Builders, including listed companies (1611.HK), exchanges (Huobi), SAAS companies (ChainUP), media (CoinTime.com), developer platforms (BeWater.xyz), etc.
Twitter: https://twitter.com/ABCDLabs
Website: www.ABCDE.com