Committed to becoming the most efficient executive layer, what did Fuel do right?

This article is machine translated
Show original

Source: Fuel Network

Modular blockchain aims to split blockchain functions into independent and specialized modules and ensure that each module can complete its specific tasks efficiently while outsourcing other tasks. It is also seen as one of the narratives worth paying attention to in the crypto field in 2024. However, compared with other modules, market attention seems to have been focused on the data availability layer module, such as Celestia, EigenDA and other projects, while modules such as the execution layer and settlement layer have not received much attention. However, with the recent rise of the parallel EVM narrative, the execution layer has gradually attracted attention.

The main responsibility of the execution layer is to process and execute smart contracts and transactions, providing a high-throughput environment for Rollups and applications. Fuel is a very interesting project that focuses on avoiding state growth and is not limited to any one configuration, whether it is a sovereign Rollup, a settlement chain, or a monolithic chain.

From V1 to V2: What are the evolutions?

In December 2020, Fuel Labs released Fuel V1, the first Optimistic Rollup solution for the Ethereum mainnet. Initially, Fuel v1 was just a simple solution to the Ethereum scaling problem, which achieved scalability by adopting a different execution model from the Ethereum virtual machine. The main use case of Fuel V1 is to handle payment-centric applications, and it also supports atomic swaps with hashed time-locked contracts (HTLCs), OP_RETURN-style outputs, payment of fees with any token, and withdrawals within 10 minutes.

However, due to the fact that Fuel V1 had too few examples and did not support the limitation of smart contracts, it did not gain widespread favor among users after its launch. Therefore, shortly after its launch, Fuel Labs, the Fuel development team, shifted all its development focus to the V2 version and positioned it as a modular execution layer. Through modular design, Fuel can choose plug-and-play tools for other modular layers according to needs, thus having greater flexibility. In addition, Fuel adopts a fraud proof mechanism to ensure the correct consensus of the L2 network. Although this may require more resources for verification, Fuel allows users to verify the chain through a light client, thereby reducing the demand for full node resources. Recently, Fuel has announced that it will migrate its staging network to Beta-5, and developers can use the new npm create fuels package to simplify the process of building a full-stack DApp. Fuel also stated that an incentive test network will be launched in the future.

Fuel team and investment background

Fuel's team is very interesting. Its co-founder John Adler is also the co-founder of the modular blockchain network Celestia. He also worked on second-layer scalability research at ConsenSys and created the Optimism Rollup design paradigm. This makes people curious about what kind of synergy Fuel will have with Celestia as the execution layer in the future. In addition, Fuel CEO Dodson is an early Solidity developer of Ethereum.

According to public information, Fuel has completed two rounds of financing so far. In September 2021, Fuel Labs completed a $1.5 million financing round led by CoinFund. Subsequently, in 2022, it completed an $80 million financing round led by Blockchain Capital and Stratos Technologies, with participation from Alameda Research, CoinFund, Bain Capital Crypto, TRGC, Maven 11 Capital, Blockwall, Spartan, Dialectic and ZMT.

Technology Stack Explanation

Fuel's vision is to become the fastest execution layer in the modular blockchain stack, providing the highest security and flexible throughput. In order to achieve this vision, Fuel's technical architecture has made a number of design choices, the core of which is the innovation of the UTXO model, virtual machine and programming language.

UTXO Model

Compared to other Rollups that accommodate EVM compatibility for performance, Fuel chooses to inherit Bitcoin's UTXO model as its accounting model. Unlike the account model, there is no concept of wallet or account in the UTXO model. Each UTXO represents a certain number of tokens, and the purpose of the transaction is to consume previously created UTXOs and create new UTXOs. But unlike the traditional UTXO model, Fuel's UTXO model is more general and can not only represent the transfer of tokens, but also the status of smart contracts. Each contract UTXO of Fuel carries the status and balance of the contract and is uniquely identified by the contract ID.

Compared to the account model, the advantage of the UTXO model is that transactions do not need to be processed in a specific order, so that transactions can be executed in parallel. Fuel uses UTXO to manage access to the state, and by building a strict access list to ensure that the execution order of transactions complies with the specification, it realizes parallel processing of transactions. This parallel execution technology enables Fuel to utilize multiple CPU threads and cores at the same time, improving computing, state access, and transaction throughput when processing transactions.

But the traditional UTXO model has concurrency issues because each UTXO can only be used once. This results in the successful execution of one transaction meaning the failure of other transactions, especially in DeFi applications. In Fuel, users do not sign UTXO directly, but instead sign the contract ID to indicate their intention to interact with the contract. This means that users do not change the state directly, thus avoiding the UTXO being consumed. Ultimately, it is the block producer who decides which UTXO the transaction will spend and the resulting state of the associated contract.

In addition, on Fuel, the spending conditions of UTXO are predicates. Predicates evaluate whether a transaction will occur. If it is found that it does not match its authorization conditions, the transaction will not be included in the block. More importantly, predicates do not store data like smart contracts, so they will not cause state growth problems. Moreover, this design not only minimizes state growth, but also introduces stateless account abstraction functions for Fuel, avoiding problems caused by long-term storage of account status on the chain. Fuel's account abstraction supports various application scenarios, such as social recovery, transaction fee subsidies, etc., making it widely applicable in diverse blockchain applications.

New VM architecture FuelVM

In order to get rid of the limitations of EVM internal construction, Fuel created its own virtual machine FuelVM. As a compatible and simplified implementation of EVM, FuelVM improves EVM performance while not bringing additional learning costs to developers. FuelVM adopts a global shared memory architecture, and all contract calls can share global memory, which can realize cross-contract data transmission without storage space.

In addition, FuelVM also brings many advantages. For example, FuelVM allows users to specify the contracts involved in the transaction, so that the virtual machine can process other transactions while executing non-contentious state access transactions, realizing the complete parallelization of the verification process without being affected by state contention. At the same time, FuelVM supports the native asset system, and casts UTXO-based native assets through opcodes, gaining the advantages of native-level calls and optimizations.

Moreover, FuelVM adopts a multi-dimensional resource pricing model, allowing dApps to set prices based on the resource requirements of different smart contracts, thereby incentivizing node operators to optimize the underlying hardware and maximize block utility. In addition, FuelVM combines resource pricing with the UTXO system for state pruning, which can control the state, reduce the operating costs of nodes, and promote the decentralization of the network. Moreover, the design of FuelVM does not care about consensus or unified transaction ordering, but is only responsible for execution, which helps to achieve decentralized block production and further improve the degree of decentralization of the network.

Through FuelVM, Fuel has improved the inefficient execution environment of EVM. And FuelVM is built from the perspective of modular execution layer, focusing on achieving efficient computing power while reducing the use of state.

Domain-Specific Language Sway

Sway is built for the high-computing Fuel environment, aiming to provide developers with a simple development experience. It is built on Rust and incorporates the characteristics of the Solidity language. Among them, Sway inherits Rust's syntax, making it easier for developers to write secure and efficient smart contract code. It also draws on the smart contract paradigm in Solidity, with built-in top-level contract storage and blockchain mechanisms, providing a safer environment for contract programming.

To support developers using Sway, the Fuel team also developed the Sway toolchain Forc for building, deploying, and testing Sway code, including a package manager for easy access to Sway tools. Other integrated tools include VSCode extensions, testing infrastructure, and block explorer.

However, Sway is more suitable for EVM chains rather than chains built using the UTXO model. This also means that if these chains want to develop smart contracts on Fuel, they need to build dedicated smart contracts, which may increase the workload of developers.

What's in store for the future?

As Fuel said, Ethereum is committed to solving the coordination problem, while it aims to solve the collaboration problem. Compared with coordination, collaboration requires more goals and responsibilities to achieve longer-term goals. Based on this concept, Fuel makes it possible to build a scalable and robust economic system on a decentralized trust layer. However, the Fuel mainnet has not yet been launched, and it will take time to verify whether it can really occupy a certain share in the Rollup competition market. It is worth noting that Fuel has been actively building an ecosystem. As early as 2022, it launched an ecological funding program to provide developers built on Fuel with funding ranging from 10,000 to 150,000 US dollars. So far, there are more than 40 Fuel ecological projects. In addition, Fuel also plans to launch an incentive test network to promote the further development of the ecosystem.

Source
Disclaimer: The content above is only the author's opinion which does not represent any position of Followin, and is not intended as, and shall not be understood or construed as, investment advice from Followin.
Like
Add to Favorites
Comments