Arch Network is a Bitcoin native application platform. It introduces smart contract functionality directly into Bitcoin through a novel architecture that leverages the Rust-based fog knowledge virtual machine ArchVM and pairs it with a decentralized network of validators, collectively referred to as the Arch Network: ArchvM is a virtual machine inspired by SVM (i.e. designed for parallel execution) E combines zero-knowledge proofs (ZKP) for transaction verification, completing native programmability on BTC
While respecting the sovereignty principle established by Bitcoin, Arch enhances the functionality of the native layer of BTC through Turing-complete programmability and unlocks the programmability of the BTC layer.
The topic of why BTC cannot run smart contracts has been discussed many times, and 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 for 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.
To date, the BTC ecosystem has had quite a few Layer 2 solutions that attempt to address the lack of these foundational pillars, but these solutions require users (receivers) to be unilaterally forced to bridge their assets into 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 introduces smart contract functionality directly into Bitcoin through a novel architecture that leverages the Rust-based zero-knowledge virtual machine ArchVM and pairs it with a decentralized validator network, 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, completing native programmability on BTC.
Next, let's take a look at how Arch specifically 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.
How it is done is actually a 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 state management approach on the Bitcoin layer, leveraging ordinals through a unique "state chain" process, where state changes are submitted 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 for greater 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. The prover retrieves and executes transactions, generating receipts used by the verifier, which validates 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 leverages RISC Zero, a leading general-purpose ZKVM similar to RISC-V microprocessors that supports languages such as Rust, C, and C++.
u Contract-specific keys: Each contract has a unique key to prevent vulnerabilities, and a random key pair is generated when deployed to ensure that the contract does not share keys and maintains its integrity.
What is the transaction process of Arch?
Step 1: Call the smart contract through a Bitcoin transaction. The transaction 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. Subsequently, the smart contract 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 the 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 approves 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 the Threshold Signature Scheme (TSS) to enable the verification network to share keys and sign transactions on behalf of users.
Second: The actual role of Indexer is actually like a module responsible for calculation, and 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 transactions, and validity proofs)
With this set of processes, programmability can be achieved at Layer 1. In addition, Arch has implemented 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 ecology, such as layer1 native stablecoins, the decentralized bridge between sol and BTC, layer1 native Dex, etc. More developers are welcome to join the Arch network.
Arch is currently focused on unlocking programmability and execution capabilities at Layer 1. Layer2 and Layer3 will become venues for frequent transactions of smaller amounts, 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 Layer2, layer1.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 broader community and 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.
Preview
Gain a broader understanding of the crypto industry through informative reports, and engage in in-depth discussions with other like-minded authors and readers. You are welcome to join us in our growing Coinlive community:https://t.me/CoinliveSG