EigenLayer, a cutting-edge security marketplace connecting restakers, operators and builders, offers an array of advantages that can empower ETH holders, including enhanced scalability, heightened security, and the potential for increased rewards, all while actively contributing to the decentralization of the network. This innovative solution offers a unique perspective on maximizing the benefits of Ethereum staking and network participation.
This guide is for ETH holders that custody their ETH with Fireblocks and want to natively restake through EigenLayer. Restaking ETH allows ETH holders to earn restaked points from early on.
ETH Native Restaking
If you are already staking ETH with Figment and wish to restake through EigenLayer, you will first have to exit your existing validators. The reason for being required to do so is that, since the Shapella upgrade, all Figment validators have been provisioned with 0x01 withdrawal addresses. It is technically not possible to repoint existing 0x01 withdrawal credentials to an EigenPod address, which is a prerequisite for ETH restaking through EigenLayer. It’s worth noting that less than 3% of the active validators have the ability to repoint their withdrawal credentials to an EigenPod address, given that these validators still happen to have 0x00 addresses (which permit repointing).
To exit your active validators, you can either click the Unstake button within the Fireblocks UI (in the case of those validators having been initially provisioned and staked from within your Fireblocks workspace) or alternatively click the Unstake button in your Figment account. Please refer to the Figment dashboard network values to get the most up-to-date withdrawal period which your validators will need to go through for the eventual withdrawal.
Follow the below instructions to natively restake ETH held within Fireblocks today.
Create an EigenPod through the EigenLayer UI by connecting your Fireblocks ETH Vault via WalletConnect. A certain EigenPod can be created by connecting to one wallet only (1:1 mapping between EigenPod and wallet address)
Click “Connect Wallet” in the upper right corner of the EigenLayer UI then click WalletConnect. You’ll see an option to connect to Fireblocks as shown below.
Navigate to the EigenLayer UI
Click on Connect Wallet and connect to Fireblocks
Clicking on the Fireblocks icon will bring you to your Fireblocks workspace, where you can choose the vault from where ETH will be restaked through EigenLayer.
Navigate to the Vault from where you wish to restake your ETH
Sign the Terms of Service in EigenLayer
Once you’ve approved and signed the message, check again in the upper right hand corner of the EigenLayer UI to confirm the right address is connected.
Confirm that the vault address is displayed correctly on the EigenLayer UI
Now that your Fireblocks vault is correctly connected, you are ready to create your EigenPod. Drill into the Restake Your Tokens view and select Create EigenPod as shown below.
Drill into Restake your Tokens to create the EigenPod
Proceed with the EigenPod creation via the EigenLayer UI.
After this step you will need to sign the Create Pod transaction popping up in your Fireblocks workspace.
Approve incoming request to create EigenPod
Upon approval, you should see a successful contract call to create the EigenPod. This transaction costs 0 ETH plus a transaction fee. This EigenPod is where all consensus layer rewards will accrue and principally staked ETH will end up once a validator is exited. Balance can be claimed by the EigenPod owner.
Approved Create Pod Request in Fireblocks
Details of the Create Pod Transaction within the Fireblocks workspace
Etherscan view of the Create Pod transaction
Now that the EigenPod was successfully created, locate the address of the newly deployed EigenPod. Copy this address—you will need it once you stake your ETH.
Drill into Native Restaking to locate the EigenPod address
Copy the EigenPod address
Sign up or log into Figment, enable Testnet Mode (for Mainnet ETH, stay on Mainnet) and click Stake ETH. Change the Withdrawal Address to the EigenPod address and insert the Fee Recipient Address. The Fee Recipient must be your Fireblocks vault address managed and controlled by you. Execution layer rewards will accrue at the Fee Recipient address and do not need to be claimed—these are instead automatically swept. Consensus Layer rewards will accrue at the EigenPod address itself.
Stake ETH in the Figment
Make sure to update the withdrawal address to the EigenPod address and the Fee Recipient to your Fireblocks ETH vault address as shown below. Save the values.
Update the withdrawal and fee recipient addresses
Complete the staking operation via the Figment UI by clicking Continue and Confirm Stake.
Figment is provisioning fresh ETH validators with given withdrawal and fee recipient addresses
Approve the transaction in your Fireblocks workspace.
Approve incoming staking transaction in your Fireblocks workspace
Upon approval you will get a notification your validators have been successfully provisioned, those will also be displayed in your Figment dashboard as “Activating” validators and will need to go through the activation queue. Once the validators become active, you will get another email notification from Figment. The status will also be accordingly reflected in the status within the Figment dashboard.
At this point, you can go ahead and restake the ETH through the EigenLayer UI by clicking Restake.
Restake ETH through the EigenLayer UI
Once you click restake, the EigenLayer app will be fetching beacon chain proofs and validating them on-chain as shown below. You will need to approve the incoming transaction in your Fireblocks workspace.
Proofs generated successfully
Approve the incoming transaction in your Fireblocks workspace.
Confirm the restake operation in your Fireblocks workspace
Upon confirmation, observe that the Beacon Chain Restaked and Total Restaked balances have increased accordingly.
Updated balance for total restaked
You have now successfully restaked your ETH and will start earning staking points!
An example of the EigenLayer dashboard, restaked points here are captured after some time from the restaking operation
In the future, upon the successful native restaking of your ETH, you will have the option to delegate your restaked balance to the Figment operator and earn EigenDA fees. These are currently in testnet and not live on mainnet. Please refer to the EigenLayer docs for further details.
If you want to exit your EigenPod-linked Figment validator, you can do so through the Unstake button within the Figment dashboard and wait for the validator to withdraw (status will be updated in the validator dashboard within your Figment account). Once the validator has gone through the exit queue, the staked ETH will go to the EigenPod, from where you can then Unstake. For security reasons, all funds unstaked from EigenLayer Mainnet go through a 7-day escrow period before being able to be withdrawn. Thus after the unstake operation is initiated, you must wait 7 days before being able to withdraw your assets. Please find more details about the full principal withdrawal and partial withdrawals in the EigenLayer docs as outlined here.
Unstake button within the EigenLayer UI to get your ETH back to your Fireblocks ETH vault
The information herein is being provided to you for general informational purposes only. It is not intended to be, nor should it be relied upon as, legal, business, tax or investment advice. Figment undertakes no obligation to update the information herein.