# Fuel v1 Markdown version of https://ethbeat.org/layer2s/projects/fuelv1 ## Summary **Warning:** This project is archived and no longer maintained. - Total Value Secured: $1.83 K (+201% compared to seven days ago; canonically bridged $1.83 K, natively minted $0.00, externally bridged $0.00; 0.00% with additional trust assumptions compared to the tokens involved and the Stage assigned to the project's canonical messaging bridge) - TVS by asset: ETH & derivatives $1.81 K (99.0%), Stablecoins $18.01 (0.98%) - Past day UOPS: No data - Stage: Stage 2 (Appchain: Fuel v1 provides the infrastructure to support token transfers and HTLC swaps. Arbitrary contracts are not supported.) - Type: Optimistic Rollup - Purpose: Payments - Host chain: Ethereum ### Risks - Sequencer failure: Self sequence (sentiment: good) - State validation: Fraud proofs (1R) (sentiment: good) - Data availability: Onchain (sentiment: good) - Exit window: ∞ (sentiment: good) - Proposer failure: Self propose (sentiment: good) ### About Fuel v1 is the first Optimistic Rollup live on Ethereum, supporting payments. ### Links - Website: https://github.com/FuelLabs/fuel-v1-contracts/tree/master - Docs: https://github.com/FuelLabs/docs/tree/c0266db9cfdbf420cccf46eccaa937bab96a2bd0/src/v1.0.0 - Explorer: https://mainnet.fuel.sh/network/ - Repository: https://github.com/FuelLabs/fuel-core, https://github.com/FuelLabs/fuels-rs, https://github.com/FuelLabs/fuels-ts, https://github.com/FuelLabs/fuel-v1-contracts - Social: https://discord.gg/xfpK4Pe, https://twitter.com/fuellabs_, https://linkedin.com/company/fuel-labs, https://youtube.com/@fuelnetwork, https://hey.xyz/u/fuelnetwork - Contracts explorer (Disco): https://disco.ethbeat.org/ui/p/fuelv1 ### Badges - Application-specific chain: This project is built to operate a specific application - Ethereum with calldata: This project is posting its data to Ethereum as calldata ## Value Secured The interactive TVS charts are shown on [the HTML page](https://ethbeat.org/layer2s/projects/fuelv1#tvs). Token by token: [TVS breakdown](https://ethbeat.org/layer2s/projects/fuelv1/tvs-breakdown). - [TVS chart (JSON)](https://ethbeat.org/api/scaling/tvs/fuelv1?range=max) - [TVS breakdown by token (JSON)](https://ethbeat.org/api/scaling/tvs/fuelv1/breakdown) ## Milestones & Incidents - 2020-12-31: [Fuel v1 is live on Mainnet](https://twitter.com/fuellabs_/status/1344707195250896899). First trustless Optimistic Rollup is live on Mainnet. ## Risk summary ### Funds can be stolen if 1. there is no one that checks the published state. Fraud proofs assume at least one honest and able validator. ### Funds can be frozen if 2. the operator refuses to include their transactions and users lack resources to propose blocks themselves. ### MEV can be extracted if 3. the operator exploits their centralized position and frontruns user transactions. ## Risk analysis ### Sequencer failure Self sequence (sentiment: good) In the event of a sequencer failure, users can force transactions to be included in the project's chain by sending them to L1. ### State validation Fraud proofs (1R) (sentiment: good) Fraud proofs allow actors watching the chain to prove that the state is incorrect. Single round proofs (1R) only require a single transaction to resolve. ### Data availability Onchain (sentiment: good) All of the data needed for proof construction is published on Ethereum L1. ### Exit window ∞ (sentiment: good) Users can exit funds at any time because contracts are not upgradeable. ### Proposer failure Self propose (sentiment: good) Anyone can be a Proposer and propose new roots to the L1 bridge. ## Stage Fuel v1 is a Stage 2 Appchain Optimistic Rollup. **The project passes the walkaway test**: users can exit in the presence of malicious operators even if the Security Council disappears. ### Scope of assessment #### In scope - L1 core contracts - Gas token #### Not in scope - Source code implementation of the spec - Non-gas tokens - Derivation logic spec Rollup operators cannot compromise the system, but being **application-specific** might bring additional risk. Fuel v1 provides the infrastructure to support token transfers and HTLC swaps. Arbitrary contracts are not supported. **Note:** We're still in the process of formalizing how to properly integrate appchains in the Stages framework. ### Stage 0 6 requirements met. - Met: A complete and functional proof system is deployed. - Met: There are at least 5 external actors who can submit fraud proofs. - Met: The project calls itself a rollup. - Met: State roots are posted to Ethereum L1. - Met: Inputs for the state transition function are posted to Ethereum L1. - Met: A source-available node exists that can recreate the state from Ethereum L1 data. Please note that the ETHBEAT team has not verified the validity of the node source code. [View code](https://github.com/cartesi/rollups/tree/v1.0.2/offchain) ### Stage 1 2 requirements met. **Principle** - Met: Compromising ≥75% of the Security Council is the only way (other than bugs) for a rollup to indefinitely block an L2→L1 message (e.g. a withdrawal) or push an invalid L2→L1 message (e.g. an invalid withdrawal) with a <7d exit window. **Guidelines** - Met: Users are able to exit without the help of the permissioned operators. ### Stage 2 2 requirements met. - Met: Fraud proof submission is open to everyone. - Met: Users have at least 30d to exit as the system cannot be upgraded. [Learn more about Stages](https://ethbeat.org/stages). Please keep in mind that these stages do not reflect project security, this is an opinionated assessment of project maturity based on subjective criteria, created with a goal of incentivizing projects to push toward better decentralization. Each team may have taken different paths to achieve this goal. ## Data availability ### All data required for proofs is published onchain All the data that is used to construct the system state is published onchain in the form of cheap calldata. This ensures that it will always be available when needed. **References** - [Background - Fuel documentation](https://docs.fuel.sh/v1.1.0/Concepts/Fundamentals/Fuel%20Overview.html#background) Learn more about the DA layer here: [Ethereum](https://ethbeat.org/projects/ethereum) ## State derivation ### Node software The node software source code can be found [here](https://github.com/FuelLabs/fuel-js). ### Genesis state The bridge contracts deployments are the genesis state of the rollup chain. The bridge contracts of mainnet and testnet (rinkeby) deployment block number are available [here](https://github.com/FuelLabs/fuel-js/blob/master/packages/logic/src/genesis.js). ### Data format The data format details are documented in the Data Structure subsection [here](https://docs.fuel.sh/v1.1.0/Concepts/Fundamentals/System%20Description%20Primer.html). ## State validation ### Fraud proofs After some period of time, the published state root is assumed to be correct. For a certain time period, usually one week, anyone can submit a fraud proof that shows that the state was incorrect. **Risks** - Funds can be stolen if there is no one that checks the published state. Fraud proofs assume at least one honest and able validator. **References** - [Background - Fuel documentation](https://docs.fuel.sh/v1.1.0/Concepts/Fundamentals/Fuel%20Overview.html#background) ## Updates Each date links the update on the HTML page, which also shows its contract diffs. ### [2025-07-14 12:45 UTC](https://ethbeat.org/layer2s/projects/fuelv1?update=3de107e9) (1 change) Discovery rerun on the same block number with only config-related changes. ### [2025-01-10 15:24 UTC](https://ethbeat.org/layer2s/projects/fuelv1?update=56e234f1) (1 change) Provide description of changes. This section will be preserved. ## Operator ### The system has a centralized sequencer While forcing transaction is open to anyone the system employs a privileged sequencer that has priority for submitting transaction batches and ordering transactions. **Risks** - MEV can be extracted if the operator exploits their centralized position and frontruns user transactions. **References** - [Architecture: A High-Level View - Fuel documentation](https://docs.fuel.sh/v1.1.0/Concepts/Fundamentals/Fuel%20Overview.html#architectureahighlevelview) - [Mainnet deployment parameters - Fuel documentation](https://docs.fuel.sh/v1.1.0/Concepts/Fundamentals/Deployment%20Parameters.html#mainnet) ### Users can force any transaction Because the block production is open to anyone if users experience censorship from the operator they can propose their own blocks which would include their transactions. **Risks** - Funds can be frozen if the operator refuses to include their transactions and users lack resources to propose blocks themselves. **References** - [Architecture: A High-Level View - Fuel documentation](https://docs.fuel.sh/v1.1.0/Concepts/Fundamentals/Fuel%20Overview.html#architectureahighlevelview) ## Withdrawals ### Regular exit The user initiates the withdrawal by submitting a regular transaction on this chain. When the block containing that transaction is settled the funds become available for withdrawal on L1. The process of settling a block usually takes several days to complete. Finally the user submits an L1 transaction to claim the funds. **References** - [Withdraw.yulp#L40 - Fuel documentation](https://github.com/FuelLabs/fuel-v1-contracts/blob/master/src/Withdraw.yulp#L40) ## Smart contracts Explore these contracts and permissions in Disco, ETHBEAT's contract explorer: https://disco.ethbeat.org/ui/p/fuelv1 ### Ethereum #### Fuel Addresses: [0x6880f6Fd960D1581C2730a451A22EED1081cfD72](https://etherscan.io/address/0x6880f6Fd960D1581C2730a451A22EED1081cfD72#code) **References** - [Source Code](https://github.com/FuelLabs/fuel-v1-contracts/blob/master/src/Fuel.yulp)