Technical Documentation

ether.fi is a - truly - non-custodial and decentralized staking protocol where stakeholders retain complete control of their assets while leveraging the power of permissionless decentralization. Our protocol provides a secure and seamless delegated staking service while offering higher returns and fewer costs through innovative revenue streams and aggressive operational efficiency optimizations.

Project Roadmap

Ether.fi began as a delegated‑staking service and is maturing towards a fully permissionless restaking protocol on Ethereum. Today, users deposit ETH into a LiquidityPool, which creates and funds validators while allowing users to retain control over their withdrawal credentials. Depositors receive eETH shares that automatically rebase to include staking and restaking rewards; they may wrap these shares into weETH for a fixed‑supply token. Validators are operated by node‑operator clusters using Distributed Validator Technology (DVT), and the protocol restakes its pooled ETH on EigenLayer.

Phase 1. [Deleg8] Delegate Staking

  • Release of ether.fi Desktop App

  • Delegated staking via an auction mechanism

  • Withdrawals of the staking rewards and the unstaked ETH

  • ether.fi Transferrable NFT (T-NFT) and Bond NFT (B-NFT)

  • ether.fi protocol treasury contract

Phase 2: [Pool Fiesta] Pooled Liquid Staking

  • Integration of Oracle for validator nodes information

  • Integration with EigenLayer's ReStaking

  • ether.fi Liquid ReStaking Token (LRT) token, eETH and weETH

  • ether.fi protocol treasury management contract

  • DeFi integrations

🚀 Phase 3: [Permission-less] Node Staking

  • Integration of Distributed Validator Technology

  • ether.fi institutional-grade permission-less node staking

  • Add the permissioned DVT validators

User Roles

  • Depositors/ Stakers:

    • Users who deposit ETH (or other supported assets) into the LiquidityPool.

    • Depositors receive eETH shares and may mint Membership NFTs to track their stake, loyalty points and tier level.

  • Node operators:

    • Independent or permissioned entities who operate validators using DVT clusters.

    • They earn a share of protocol rewards in exchange for maintaining validator uptime and security.

  • Restaking services:

    • Actively Validated Services (AVSs) on EigenLayer that use ether.fi’s pooled stake for additional applications.

    • Rewards and slashing penalties from restaking are socialized across depositors.

Validator Keys

Ownership

"Stake your ETH and retain complete control over your funds with ether.fi."

ether.fi has a delegated staking service that distinguishes itself from others, such as Rocket Pool and Lido, by giving stakers complete control over their validator keys. These keys are necessary and sufficient to trigger the exit of validator nodes.

Secure Transfer to Node Operators

For a node operator to run the validator node on behalf of the staker, they must have access to the staker's validator keys. That is, the validator keys generated by the stakers should be shared with the corresponding node operator. However, if the validator keys are compromised, the validator nodes are exposed to slashing attacks and potential losses.

Figure 1. Secure exchange of validator key from Staker to Node Operator.

ether.fi uses a secure and unique implementation of ECIES for the stakers to share the validator keys while retaining control of them. Figure 1 depicts the overall process. Before a node operator can participate in the auction, they must generate ECC keypairs and register their public keys. The stakers generate their validator keys and encrypt them via a shared secret generated using the node operator public key associated with the winning bid. To ensure forward secrecy, the node operator can make one bid for each public key they register. The encrypted message can be decrypted only by the private key of the corresponding public key. The encrypted message is submitted as an on-chain transaction for the node operator to locate, obtain, and decrypt the keys for running the validator nodes.

For cost efficiency, we use off-chain IPFS storage for key exchange. Node operators store their public keys on IPFS. Similarly, stakers store their encrypted validator keys on IPFS. Their hashes of the IPFS storage are uploaded on-chain.

A shared validator key, while an improvement for most stakers, remains unsatisfactory. In the future, ether.fi plans to further enhance security and improve the user experience by leveraging the EIP-5630 or sharded keys with Distributed Validator Technology (DVT).

ether.fi Desktop Application

ether.fi provides a user-friendly GUI desktop application for secure key management. Upon deployment to mainnet, it will be a fully open-sourced here: etherfi-desktop. The ether.fi desktop application is a React app running in Electron. It uses the official version of the eth2.0-deposit-cli tool to generate validator keys. For secure encryption/decryption, it uses the ECIES encryption scheme.

With the ether.fi Desktop Application:

  • Node operators generate their public/private keys

  • Stakers generate their validator keys

  • Stakers encrypt the validator keys with the public key of their matched node operators

  • Node operators decrypt the encrypted validator keys with their private keys

You can find the detailed guide here.

ether.fi Node Client

The ether.fi Node Client offers a seamless setup process for running validator nodes. Furthermore, it provides exceptional opportunities for node operators to enhance their earnings. By combining the ether.fi Node Client with staking clients, node operators can significantly increase their revenue streams within the ether.fi ecosystem.

Through ether.fi Node Client, Node operators can:

  • Run validator nodes

  • Monitor validator nodes

  • Powering ether.fi and Ethereum's distributed infrastructure with RPC endpoints, Custom On-Chain Data APIs, and Dedicated nodes

You can find the detailed guide here.

ether.fi Protocol Design

ether.fi Smart Contracts, upon deployment to mainnet, will be fully open-sourced and audited. This smart‑contract system enables non‑custodial staking and restaking in a permissionless way.

Overview

The core components are:

  • Node‑operator registration:

    • Node operators register their DVT cluster identities and network endpoints with the protocol’s role registry.

    • Operators must meet performance requirements and, once approved, are added to the pool of available DVT cluster participants.

  • Depositor/Stake flows:

    • When a user deposits ETH into the protocol, the LiquidityPool contract handles the validator lifecycle.

    • It sends a 1 ETH seed deposit to Ethereum’s deposit contract for each new validator.

    • After the protocol’s oracle verifies that the withdrawal credentials are correctly set, the pool automatically tops up the remaining ETH needed to reach 32 ETH and activates the validator.

  • Tokenization:

    • Depositors receive eETH shares representing their claim on the total pooled ETH.

    • Users can opt to wrap their eETH into weETH (a non‑rebasing ERC‑20 token) or mint a Membership NFT that records the deposit amount, share balance and loyalty/tier points.

  • Validator operation:

    • Validators created by the LiquidityPool are assigned to node‑operator clusters running Distributed Validator Technology (DVT) via SSV Network.

    • Operators run the validators and earn a share of staking and restaking rewards as compensation.

  • Reward distribution and upgrades:

    • The EtherFiOracle reports accrued consensus and restaking rewards.

    • When a new report is published, the LiquidityPool rebases the supply of eETH and the MembershipManager updates reward indices for each tier.

    • Upgrades to any contract are governed by a timelock and require appropriate roles via the RoleRegistry.

Detailed Mechanisms

Validator Creation

When ETH is deposited into the LiquidityPool, the pool sends 1 ETH per validator to Ethereum’s deposit contract to reserve a validator index.

After the protocol’s oracle confirms that the withdrawal credentials are correctly set, the pool tops up the remaining ETH (to reach 32 ETH) and activates the validator.

Node operators—either permissioned or solo—join DVT clusters via SSV Network and operate the validators. The protocol does not require bids or bonds from node operators; validator assignments are handled automatically based on available cluster capacity.

Membership NFTs

Users can choose to wrap their eETH deposits into Membership NFTs that record the amount of ETH staked, the number of eETH shares and the user’s loyalty and tier points.

These NFTs are transferable and confer reward boosts based on tier. Legacy T‑NFT and B‑NFT mechanics were retired with the protocol’s migration to the LiquidityPool model.

Permissionless Withdrawals

After the Shanghai upgrade for the Ethereum Execution Layer and the Capella upgrade for Consensus Layer, EIP-4895 will enable withdrawals of staked ETH and validator rewards.

  • Partial withdrawals (reward skimming): When a validator’s balance exceeds 32 ETH, the excess represents accrued rewards. Anyone can call the withdrawal manager to skim these rewards and transfer them to the LiquidityPool, where they are redistributed to depositors by increasing the eETH share price. This process is permissionless and does not rely on NFT holders.

  • Full withdrawals (unstaking): If a validator is exited—either because the LiquidityPool needs liquidity for redemptions or because of operator performance issues—the entire stake (principal plus rewards) is withdrawn to the protocol. Once the withdrawal is finalized on the beacon chain, anyone can call a function to distribute the ETH to the correct parties (depositors and node operators) according to their eETH shares and reward entitlements.

  • Slashing penalties from misbehaving validators or restaking services are shared across all depositors; there is no dedicated bond. Exits and withdrawals do not require action from any individual NFT holder and are executed in a fully permissionless manner.

eETH and weETH

eETH is ether.fi's liquid staking token. eETH is a rebasing ERC-20 token. The eETH token represents a claim on the same amount of ETH which is held by the ether.fi liquidity pool or being staked earning rewards within the Ethereum Proof-of-Stake system. The staking rewards are distributed to the eETH holders by the rebasing mechanism where its balance is updated automatically on all the addresses. The rebase mechanism is implemented via shares where the share represents the eETH holder's share in the total amount of ether controlled by the ether.fi protocol.

The eETH balance of an account is computed as follows:

BalanceOf(account)=TotalPooledEthShares[account]TotalShares BalanceOf(account) = TotalPooledEth * \frac {Shares[account]}{TotalShares}

- TotalPooledEth = the total amount of ETH controlled by the protocol - Shares[account] = the account's share of eETH - TotalShares = the total shares of eETH

Here, TotalPooledEth = (D + P + R) as reported by the Oracle: -D = the total ETH deposits in the liquidity pool -P = the total ETH claims on principals for the T-NFTs in the liquidity pool -R = the total ETH claims on rewards for the T-NFTs in the liquidity pool

Users may wrap their eETH into weETH to obtain a non‑rebasing ERC‑20 token. Converting between eETH and weETH is done through the LiquidityPool at the current share rate.

Liquidity Pool

The LiquidityPool contract aggregates ETH deposits and manages validator creation, rewards accounting and redemptions. Its key functions are:

  • Minting eETH: When users deposit ETH, the pool calculates the number of eETH shares to mint based on the current total pooled ETH and total eETH shares. The formula ensures that each share always represents an equal claim on the pool’s assets.

  • Wrapping and Unwrapping: Depositors can wrap eETH into weETH via the WeETH contract to obtain a non‑rebasing ERC‑20 token. Unwrapping weETH returns the corresponding amount of eETH.

  • Membership NFTs: Users may choose to wrap their deposit into a Membership NFT instead of holding eETH directly. The NFT records the user’s share balance and accrues loyalty and tier points that may boost future rewards.

  • Redeeming eETH/weETH: To withdraw ETH, a user burns their eETH or weETH. The pool attempts to fulfill the redemption from its unbonded ETH. If insufficient ETH is available, it will queue full validator exits and process redemptions once the ETH is released from the beacon chain.

  • Reward accrual: When the EtherFiOracle publishes a new reward report, the pool increases the total pooled ETH without increasing the number of eETH shares. This raises the value of each share and automatically distributes rewards to all holders.

Oracle

The EtherFiOracle is a decentralized reporting mechanism that aggregates data about the protocol’s validators and restaking positions. A committee of oracle members monitors the beacon chain and EigenLayer, then periodically submits reports containing:

  • The total amount of ETH staked through ether.fi and the rewards accumulated since the last report.

  • Any slashing events or penalties applied to validators or restaking AVSs.

Once a report achieves the required quorum, it is published on‑chain. The LiquidityPool uses this data to update the total pooled ETH, and the MembershipManager uses it to adjust reward indices for each tier. This process triggers the rebase of eETH and corresponding changes to weETH and membership NFTs.

In the future, the dependency on the Oracle can be removed once the required infrastructure is added to Ethereum (e.g., EIP-4788, EIP-7002).

Sharing Protocol Revenue

Ether.fi’s revenue comes from consensus and execution rewards, EigenLayer restaking rewards and a protocol fee (taken as a percentage of accrued rewards). When the oracle report is published:

  • Depositor rewards: The rebase function increases the value of each eETH share, delivering the majority of rewards to depositors. Users holding Membership NFTs may receive additional rewards according to their tier weight.

  • Node operator rewards: A portion of rewards is allocated to node operators who run the validators. This share compensates them for maintaining infrastructure and participating in DVT clusters.

  • Protocol fee: A small percentage of rewards is directed to the protocol’s treasury. These funds support development, audits and ongoing operations and are governed by ETHFI token holders.

The exact percentages are encoded in the protocol’s smart contracts and can be adjusted through governance. There is no separate bond or higher‑yield NFT product; all participants earn rewards in proportion to their shares and roles.

Last updated