691f066e (main)
and
9d72239c (PR)
[ADDED]
etherfi
+2337 -0
+1 -0
"etherfi"
+1 -0
"etherfi"
+1 -0
"ether.fi"
+1 -0
"weETH"
+1 -0
null
+1 -0
0
+3 -0
{
"unverifiedContracts": []
}
+25 -0
{
"badges": [],
"description": "ether.fi is a liquid staking and restaking protocol. Deposit ETH for eETH (rebasing) or weETH (1.103282 ETH each), and the pool stakes it both through ether.fi's own permissioned operators and through third-party liquid staking tokens it accepts, with restaking in EigenLayer. A 3-of-3 committee sets the exchange rate under hard caps of at most 0.25% per report. To exit, holders burn eETH for a withdrawal NFT the oracle must finalize, or swap instantly through a buffer for a fee up to 5%, though only 0.03% of the 2,207,934 ETH pooled is instantly liquid. Upgrades and roles sit behind a 10 days timelock, with multisigs for day-to-day pausing and parameters.",
"detailedDescription": "ether.fi is a liquid staking and restaking protocol for ETH. Deposit ETH for eETH (rebasing) or its wrapper weETH (1.103282 ETH each), and the pool stakes it both through its own permissioned operators and through third-party liquid staking tokens it accepts. Operators are whitelisted, a committee sets the exchange rate, and privileged functions are controlled by multisigs behind timelocks.\n\n\n\n### The exchange rate\n\nA 3-of-3 oracle committee reports staking rewards and EtherFiAdmin applies them. Hard caps bound every report: at most 0.25% up per report and 5% implied APR, with negative moves capped tighter. Each report executes only after a delay of 10 minutes past consensus, in which the operating multisig can cancel it.\n\n### Custody and exit\n\neETH is a staking aggregator rather than a single validator set. ETH deposits fund 32-ETH validators run by ether.fi's permissioned operators, whose withdrawal credentials are fixed in code to protocol-controlled EigenLayer pods, so operators run the keys but cannot redirect the stake. The Liquifier accepts already-staked liquid staking tokens from other providers against a governance-set whitelist and mints eETH for them, and EtherFiRestaker can hold them, restake them in EigenLayer, or unwind them to ETH through the provider's own exit. To exit, burn eETH for a withdrawal NFT that the oracle must finalize before the pool pays, or swap instantly through a buffer for a fee up to 5%. On-chain finalization depends on the 3-of-3 committee, and the permissionless stale-oracle backstop only opens if the committee stops reporting entirely. Only 0.03% of the pool is instantly liquid, so large exits wait for validators to unwind.\n\n### Who holds the keys\n\nUpgrades and every role grant sit behind a 10 days timelock. A shorter 2 days timelock and a set of multisigs run day-to-day operations: pausing, blacklisting, approving operators, and tuning parameters within fixed ceilings.",
"links": {
"websites": [
"https://ether.fi/"
],
"documentation": [
"https://etherfi.gitbook.io/etherfi"
],
"repositories": [
"https://github.com/etherfi-protocol/smart-contracts"
],
"socialMedia": [
"https://x.com/ether_fi"
]
},
"references": [
{
"title": "Deployed Contracts — ether.fi docs",
"url": "https://etherfi.gitbook.io/etherfi/developers/contracts-and-integrations/deployed-contracts"
}
]
}
+1 -0
null
+1 -0
null
+1 -0
null
+1 -0
null
+1 -0
null
+1 -0
null
+1 -0
null
+1 -0
null
+1 -0
null
+1 -0
null
+1 -0
null
+1 -0
null
+1 -0
null
+1 -0
null
+1 -0
null
+1 -0
null
+1 -0
null
+1 -0
null
+1 -0
null
+42 -0
{
"category": "Liquid Staking",
"liquidStaking": {
"token": "eETH, weETH",
"minting": {
"value": "Permissionless",
"secondLine": "gated by ether.fi ops",
"sentiment": "good",
"description": "Anyone can deposit ETH for eETH with no cap or fee; the Liquifier also mints against stETH. Staking needs ether.fi's operations roles: a spawner registered via the 2-day timelock registers keys for a whitelisted operator and the oracle-operations role (an EOA and the 4/7 Safe) funds each validator, with credentials hard-coded to a protocol EigenPod. weETH wraps eETH shares."
},
"operators": {
"value": "Whitelisted",
"secondLine": "no bond",
"sentiment": "warning",
"description": "Operators are whitelisted by the 4/7 Safe (whitelist on); bids (0.0011 to 5 ETH) go to the treasury, not a loss bond. Slashing is socialised via the rebase, capped at 3 bps per report; native stake is also restaked in EigenLayer, where AVS slashing can cut principal."
},
"backing": {
"value": "EigenPods, stETH",
"secondLine": "creds: EigenPod",
"sentiment": "warning",
"description": "0x02 credentials point at EigenPods owned by EtherFiNode contracts, so the ETH sits in EigenLayer (upgradeable by its governance, 14-day withdrawal delay). 23.5% of backing is stETH in EtherFiRestaker; 0.03% is in the liquid buffer."
},
"exchangeRate": {
"value": "3 of 3",
"secondLine": "~4h · ≤0.25%",
"sentiment": "warning",
"description": "All 3 members must submit an identical report every 4 hours 16 minutes; EtherFiAdmin applies it after 10 minutes (cancellable by the operating multisig) within caps of +0.25% per report, 5% APR and −3 bps. A permissionless fallback opens after 14 days of silence."
},
"exit": {
"value": "Oracle-gated",
"secondLine": "~1 day · pausable",
"sentiment": "warning",
"description": "Burn eETH for a WithdrawRequestNFT finalized from oracle reports (at most 80,000 ETH a day), claimed at the lower of request and finalization rate; a committee finalizing nothing stalls the queue until 14 days of silence. Instant redemption pays from the buffer for up to 5%; the 4/7 Safe can pause everything."
},
"upgrades": {
"value": "6/10 Safe",
"secondLine": "10d · no veto",
"sentiment": "warning",
"description": "Upgrades go only through the 10-day Upgrade Timelock, proposed by a 6-of-10 Safe, which also owns the RoleRegistry (role grants take 10 days). A 2-day Operating Timelock (4/7 Safe) tunes parameters within immutable ceilings. Holders have no veto."
}
}
}
+19 -0
[
{
"type": "not-tracked",
"name": "EigenLayer",
"icon": "eigenlayer",
"description": "Holds the native stake. Every validator's withdrawal credentials point at an EigenLayer EigenPod, so ether.fi's own ETH sits inside EigenLayer contracts. Its DelegationManager, EigenPodManager and StrategyManager are upgradeable by EigenLayer governance, and since the slashing release an AVS can slash delegated stake. Exits also wait out EigenLayer's roughly 14-day withdrawal delay."
},
{
"type": "tracked",
"projectId": "lido",
"description": "About a quarter of the backing is stETH taken through the Liquifier and held by EtherFiRestaker rather than native ETH. A stETH depeg or a Lido failure directly impairs that share of eETH."
},
{
"type": "not-tracked",
"name": "LayerZero",
"icon": "layerzero",
"description": "weETH crosses chains as a LayerZero OFT. The mainnet lock-box holds ~110k weETH, and an L1 sync pool anticipatorily mints weETH against a dummy placeholder when a LayerZero message reports an L2 deposit, before the bridged ETH arrives (live unbacked ~45 weETH). A compromise of the LayerZero endpoint or its verifiers could forge inbound messages to unlock real weETH from the lock-box or mint against shared backing, and a messaging halt would strand cross-chain holders. Cross-chain integrity depends on LayerZero, bounded by the lock-box balance and the dummy token's Liquifier cap."
}
]
+1 -0
null
+1 -0
null
+1 -0
null
+1 -0
null
+1 -0
null
+1 -0
null
+1 -0
null
+1 -0
null
+1 -0
null
+1 -0
null
+251 -0
{
"ethereum": {
"roles": [],
"actors": [
{
"id": "EtherFiTimelock",
"name": "EtherFiTimelock",
"accounts": [
{
"address": "eth:0x9f26d4C958fD811A1F59B01B86Be7dFFc9d20761",
"type": "Contract",
"isVerified": true,
"name": "0x9f26…0761",
"url": "https://etherscan.io/address/0x9f26d4C958fD811A1F59B01B86Be7dFFc9d20761"
}
],
"chain": "ethereum",
"description": "OpenZeppelin TimelockController governing contract upgrades and privileged operations. Two instances: a longer Upgrade timelock and a shorter Operating timelock.\n* Can upgrade **with no delay**\n * AvsOperatorManager \n * MembershipManager \n * RoleRegistry \n * MembershipNFT \n * EtherfiOFTAdapterUpgradeable [via: ProxyAdmin]\n * EtherfiL1SyncPoolETH [via: ProxyAdmin]",
"discoveryDrivenData": true
},
{
"id": "Safe",
"name": "Safe",
"description": "A Multisig with 3/7 threshold. \n* Can upgrade **with no delay**\n * CumulativeMerkleDrop ",
"accounts": [
{
"address": "eth:0xA000244b4a36D57Ea1ECB39b5F02f255e4C8cd52",
"type": "Contract",
"isVerified": true,
"name": "0xA000…cd52",
"url": "https://etherscan.io/address/0xA000244b4a36D57Ea1ECB39b5F02f255e4C8cd52"
}
],
"chain": "ethereum",
"references": [],
"participants": [
{
"address": "eth:0x9eaC7114D1a1EaBc4732A886795cFD9E6E35843f",
"type": "EOA",
"isVerified": true,
"name": "0x9eaC…843f",
"url": "https://etherscan.io/address/0x9eaC7114D1a1EaBc4732A886795cFD9E6E35843f"
},
{
"address": "eth:0x0fCe5cd3FB6F3b3FB7f0f707070A0A7e2442f444",
"type": "EOA",
"isVerified": true,
"name": "0x0fCe…f444",
"url": "https://etherscan.io/address/0x0fCe5cd3FB6F3b3FB7f0f707070A0A7e2442f444"
},
{
"address": "eth:0x95A2115018b84cfe0630C16CCA277E1569a84BEf",
"type": "EOA",
"isVerified": true,
"name": "0x95A2…4BEf",
"url": "https://etherscan.io/address/0x95A2115018b84cfe0630C16CCA277E1569a84BEf"
},
{
"address": "eth:0x544bDcBb88F2756000De227580aaad7376f3794E",
"type": "EOA",
"isVerified": true,
"name": "0x544b…794E",
"url": "https://etherscan.io/address/0x544bDcBb88F2756000De227580aaad7376f3794E"
},
{
"address": "eth:0x000D4FdD11B99abD59a9463027F55897aE6523B2",
"type": "EOA",
"isVerified": true,
"name": "0x000D…23B2",
"url": "https://etherscan.io/address/0x000D4FdD11B99abD59a9463027F55897aE6523B2"
},
{
"address": "eth:0xeF01c0D205961f792b72C568B6209872d0e82807",
"type": "EOA",
"isVerified": true,
"name": "0xeF01…2807",
"url": "https://etherscan.io/address/0xeF01c0D205961f792b72C568B6209872d0e82807"
},
{
"address": "eth:0x9506429A421757711806c5cAF25ba1830E349B09",
"type": "EOA",
"isVerified": true,
"name": "0x9506…9B09",
"url": "https://etherscan.io/address/0x9506429A421757711806c5cAF25ba1830E349B09"
}
],
"discoveryDrivenData": true
},
{
"id": "GnosisSafe",
"name": "GnosisSafe",
"description": "A Multisig with 4/7 threshold. \n* Can upgrade **with no delay**\n * EtherFiOperationParameters ",
"accounts": [
{
"address": "eth:0x2aCA71020De61bb532008049e1Bd41E451aE8AdC",
"type": "Contract",
"isVerified": true,
"name": "0x2aCA…8AdC",
"url": "https://etherscan.io/address/0x2aCA71020De61bb532008049e1Bd41E451aE8AdC"
}
],
"chain": "ethereum",
"references": [],
"participants": [
{
"address": "eth:0xDE3bf1FA3B3829342bC4356592Bb7CF3BAAD8264",
"type": "EOA",
"isVerified": true,
"name": "0xDE3b…8264",
"url": "https://etherscan.io/address/0xDE3bf1FA3B3829342bC4356592Bb7CF3BAAD8264"
},
{
"address": "eth:0xE63794CF405678382764A4dEc1e56C43B45605C9",
"type": "EOA",
"isVerified": true,
"name": "0xE637…05C9",
"url": "https://etherscan.io/address/0xE63794CF405678382764A4dEc1e56C43B45605C9"
},
{
"address": "eth:0x566E58ac0F2c4BCaF6De63760C56cC3f825C48f5",
"type": "EOA",
"isVerified": true,
"name": "0x566E…48f5",
"url": "https://etherscan.io/address/0x566E58ac0F2c4BCaF6De63760C56cC3f825C48f5"
},
{
"address": "eth:0x71b67AC997056c9935f8AA98F3344432Ea2ec15c",
"type": "EOA",
"isVerified": true,
"name": "0x71b6…c15c",
"url": "https://etherscan.io/address/0x71b67AC997056c9935f8AA98F3344432Ea2ec15c"
},
{
"address": "eth:0x5dfb8BC4830ccF60d469D546aEC36531c97B96b5",
"type": "EOA",
"isVerified": true,
"name": "0x5dfb…96b5",
"url": "https://etherscan.io/address/0x5dfb8BC4830ccF60d469D546aEC36531c97B96b5"
},
{
"address": "eth:0xFa238cB37E58556b23ea45643FFe4Da382162a53",
"type": "EOA",
"isVerified": true,
"name": "0xFa23…2a53",
"url": "https://etherscan.io/address/0xFa238cB37E58556b23ea45643FFe4Da382162a53"
},
{
"address": "eth:0x5c8c76F2e990F194462dC5f8a8c76Ba16966Ed42",
"type": "EOA",
"isVerified": true,
"name": "0x5c8c…Ed42",
"url": "https://etherscan.io/address/0x5c8c76F2e990F194462dC5f8a8c76Ba16966Ed42"
}
],
"discoveryDrivenData": true
},
{
"id": "Safe",
"name": "Safe",
"description": "A Multisig with 3/8 threshold. ",
"accounts": [
{
"address": "eth:0x0c83EAe1FE72c390A02E426572854931EefF93BA",
"type": "Contract",
"isVerified": true,
"name": "0x0c83…93BA",
"url": "https://etherscan.io/address/0x0c83EAe1FE72c390A02E426572854931EefF93BA"
}
],
"chain": "ethereum",
"references": [],
"participants": [
{
"address": "eth:0x566E58ac0F2c4BCaF6De63760C56cC3f825C48f5",
"type": "EOA",
"isVerified": true,
"name": "0x566E…48f5",
"url": "https://etherscan.io/address/0x566E58ac0F2c4BCaF6De63760C56cC3f825C48f5"
},
{
"address": "eth:0x5c8c76F2e990F194462dC5f8a8c76Ba16966Ed42",
"type": "EOA",
"isVerified": true,
"name": "0x5c8c…Ed42",
"url": "https://etherscan.io/address/0x5c8c76F2e990F194462dC5f8a8c76Ba16966Ed42"
},
{
"address": "eth:0xD31074937B28f65db4eeB243916883E335261650",
"type": "EOA",
"isVerified": true,
"name": "0xD310…1650",
"url": "https://etherscan.io/address/0xD31074937B28f65db4eeB243916883E335261650"
},
{
"address": "eth:0x781C3EF0C0F5DCEae69D7e1e164F82b2F8e47d18",
"type": "EOA",
"isVerified": true,
"name": "0x781C…7d18",
"url": "https://etherscan.io/address/0x781C3EF0C0F5DCEae69D7e1e164F82b2F8e47d18"
},
{
"address": "eth:0x0e706A98F414F49A412107641c0820b0153Ff5Dc",
"type": "EOA",
"isVerified": true,
"name": "0x0e70…f5Dc",
"url": "https://etherscan.io/address/0x0e706A98F414F49A412107641c0820b0153Ff5Dc"
},
{
"address": "eth:0x2f2806e8b288428f23707A69faA60f52BC565c17",
"type": "EOA",
"isVerified": true,
"name": "0x2f28…5c17",
"url": "https://etherscan.io/address/0x2f2806e8b288428f23707A69faA60f52BC565c17"
},
{
"address": "eth:0x173286FaFABEA063eeB3726Ee5eFD4ff414057B9",
"type": "EOA",
"isVerified": true,
"name": "0x1732…57B9",
"url": "https://etherscan.io/address/0x173286FaFABEA063eeB3726Ee5eFD4ff414057B9"
},
{
"address": "eth:0x4024380A7c52328a0BB2B608846dCf2E4621f049",
"type": "EOA",
"isVerified": true,
"name": "0x4024…f049",
"url": "https://etherscan.io/address/0x4024380A7c52328a0BB2B608846dCf2E4621f049"
}
],
"discoveryDrivenData": true
},
{
"id": "EOA-1",
"name": "EOA 1",
"accounts": [
{
"address": "eth:0xf8a86ea1Ac39EC529814c377Bd484387D395421e",
"type": "EOA",
"isVerified": true,
"name": "0xf8a8…421e",
"url": "https://etherscan.io/address/0xf8a86ea1Ac39EC529814c377Bd484387D395421e",
"displayName": "EOA 1"
}
],
"chain": "ethereum",
"description": "* Can upgrade **with no delay**\n * EtherFiViewer ",
"discoveryDrivenData": true
}
]
}
}
+1937 -0
{
"addresses": {
"ethereum": [
{
"name": "AuctionManager",
"isVerified": true,
"address": "eth:0x00C452aFFee3a17d9Cecc1Bcd2B8d5C7635C4CB9",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x0000000000000000000000000000000000000000"
],
"implementations": [
"eth:0x3311c72A04D2779f4425c036dBC40d14fEc0162b"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1683046907,
"transactionHash": "0xe2146259cafb8d6221b45a05e00c71a5e78fbbc4cac7ac7954e5835ce5a85537",
"implementations": [
"eth:0xBdFadd8fb6d5011A5a3528cA76AB28e4D9686281"
]
},
{
"timestamp": 1689013571,
"transactionHash": "0xee2cc7975bab551cbd50d6be9f78abffd8edf7d0c0432149f03569aeb8256ce2",
"implementations": [
"eth:0xcBF18F68e2aBd480231241fa97BD41aE556433A0"
]
},
{
"timestamp": 1699569635,
"transactionHash": "0x326cb1804e8cf14873823c55f1a2c6114da5bb472c23d9f4e84b8dc74d3d6bc3",
"implementations": [
"eth:0x68FE80C6e97E0c8613e2FED344358c6635ba5366"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0x3311c72A04D2779f4425c036dBC40d14fEc0162b"
]
}
],
"description": "Node-operator bid auction: operators post bids that are consumed when validators are assigned to them.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x00C452aFFee3a17d9Cecc1Bcd2B8d5C7635C4CB9#code"
},
{
"name": "EtherFiRestaker",
"isVerified": true,
"address": "eth:0x1B7a4C3797236A1C37f8741c0Be35c2c72736fFf",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x0000000000000000000000000000000000000000"
],
"implementations": [
"eth:0x51357a700B309637F109A897a6479A563D5AFb8E"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1730091995,
"transactionHash": "0xd77b56cac3d8cdfd4c5976558e51e689ddd80a8a7486782b5cf71b93cd14a219",
"implementations": [
"eth:0x3dBe6B40e3b65f2D1f60Ea118cCB35DF61a6d4E2"
]
},
{
"timestamp": 1744948259,
"transactionHash": "0xe7e323bb61abb34624c411611c18f6e0ae38d0fcb92ae6e3e4d9011229d7751a",
"implementations": [
"eth:0x0052F731a6BEA541843385ffBA408F52B74Cb624"
]
},
{
"timestamp": 1761867083,
"transactionHash": "0x1c76b07c7e41440a0fa3ef3d34843ef9cb96fb683844caebe8322d86f0c17e0a",
"implementations": [
"eth:0x71bEf55739F0b148E2C3e645FDE947f380C48615"
]
},
{
"timestamp": 1765810847,
"transactionHash": "0xd7e028c41ac9c95718679a6d026b0471df56c895c15f53af0db46ea98ec3ab54",
"implementations": [
"eth:0x3905b79B1c9D5424921f50286b4782527217F10f"
]
},
{
"timestamp": 1770938747,
"transactionHash": "0xa8fb51d6316fdc5c43a2869e110372235017501d2377ec3f39e5324033cbb87d",
"implementations": [
"eth:0x9D795b303B9dA3488FD3A4ca4702c872576BD0c6"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0x51357a700B309637F109A897a6479A563D5AFb8E"
]
}
],
"description": "Routes protocol ETH/LSTs into EigenLayer restaking and Lido withdrawals. EigenLayer and Lido contracts are external dependencies.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x1B7a4C3797236A1C37f8741c0Be35c2c72736fFf#code"
},
{
"name": "AvsOperatorManager",
"isVerified": true,
"address": "eth:0x2093Bbb221f1d8C7c932c32ee28Be6dEe4a37A6a",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x9f26d4C958fD811A1F59B01B86Be7dFFc9d20761"
],
"implementations": [
"eth:0xA4C83200e0c9a61296C63333F2Bd22559058852E"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1712588927,
"transactionHash": "0xd2d386ae01d16c356d020ba7c45ef879503fbd2475829015b7dea9d5727289e2",
"implementations": [
"eth:0x7c37CD26F0E534d87e195BdC6319b56dBDbCF63F"
]
},
{
"timestamp": 1712826083,
"transactionHash": "0xc8fc7d108a9578d0ddfcbb2f05bab3216260adbf315fcf431b9d4eacb520de1f",
"implementations": [
"eth:0x176bFD9863C349cc8b21e6CfEB7AE01F33E18bBB"
]
},
{
"timestamp": 1713067103,
"transactionHash": "0x75a32f672c7ab36ab94668266ae85b53cb8a4d074e3cfe25d6d91bc2cba037ea",
"implementations": [
"eth:0x642fb929257071249d9F1E33663B4b6ac00B6583"
]
},
{
"timestamp": 1713222071,
"transactionHash": "0xba24047c00fde29d8251bab2763736357bbff2e4c4975fd32edfaa34c0a15eaf",
"implementations": [
"eth:0xc2709A091c5C56009472B6f1cde2daa936A3d321"
]
},
{
"timestamp": 1713436703,
"transactionHash": "0xfb21ea8c42a7ec8e857f290946abcb6b0eff376696939dd4a9dab826d8b01b51",
"implementations": [
"eth:0x2261ef65a61b2E3dcdE68D74536E9BE096280138"
]
},
{
"timestamp": 1713487691,
"transactionHash": "0xb1a411b26de60d3ebcc79302c8c91ae4dff65d2a1c3e0988e3bdb070a2da65f8",
"implementations": [
"eth:0x2261ef65a61b2E3dcdE68D74536E9BE096280138"
]
},
{
"timestamp": 1713488747,
"transactionHash": "0x32d0626aab1365ae2da162f49efae3c8e43b5d94a4bcc16ba9ec66b0c39f25a3",
"implementations": [
"eth:0x91121c0404EC13Af4279eD90ba929e26C575EdCb"
]
},
{
"timestamp": 1718075183,
"transactionHash": "0xcbbdb6e46b384ba2f88981ce6858d83abe7f82c0b1b76cfcedde97003fa41fe4",
"implementations": [
"eth:0xeda445E67Be1898296C3751Ec75D37aF51419e55"
]
},
{
"timestamp": 1737681179,
"transactionHash": "0xd3f288221e856c9a9fc29182411a7306f398f8a023c4f23e27ac2b04ff9526f8",
"implementations": [
"eth:0xDC9E0d46Bd75aA2837B266715d870B497104Fae7"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0xA4C83200e0c9a61296C63333F2Bd22559058852E"
]
}
],
"description": "Deploys and controls per-AVS operator contracts (behind a beacon) for EigenLayer AVS registration. EigenLayer core is external.\n* Roles:\n * **admin**: EtherFiTimelock",
"upgradableBy": [
{
"name": "EtherFiTimelock",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x2093Bbb221f1d8C7c932c32ee28Be6dEe4a37A6a#code"
},
{
"name": "StakingManager",
"isVerified": true,
"address": "eth:0x25e821b7197B146F7713C3b89B6A4D83516B912d",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x0000000000000000000000000000000000000000"
],
"implementations": [
"eth:0x66e1C53e846eF3E9f3722591868AfcFfB7f39800"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1683046943,
"transactionHash": "0x190cd406ac50af3f5154196d5017f5dc49769919cbe3eb88193dd7051caab897",
"implementations": [
"eth:0x26c64a915Bc24B228dc0890E6431a1E32A3771cD"
]
},
{
"timestamp": 1683571979,
"transactionHash": "0x395502e8b14b097a32f55d9d728d02c805c8b937d84cebce5327d1868d2a7938",
"implementations": [
"eth:0x733015E8606F4f079828f0bf71A2FC7135F9d119"
]
},
{
"timestamp": 1683748907,
"transactionHash": "0x94d8c3978508ea739ed5dd2857245491a55ccb46f9c6bfb8f86fe06751184ed5",
"implementations": [
"eth:0xbCd9e3FaF68DEA61b90E64c29881B711559e8a15"
]
},
{
"timestamp": 1689013511,
"transactionHash": "0x8a1a58932ae1b02bab861f66d444180a590cb63999422091c383fa95c184b036",
"implementations": [
"eth:0xE55eacdC1EC9dA0f33B9CEa7D136a47CC6008C69"
]
},
{
"timestamp": 1699569635,
"transactionHash": "0x326cb1804e8cf14873823c55f1a2c6114da5bb472c23d9f4e84b8dc74d3d6bc3",
"implementations": [
"eth:0x4aD639Fc9c73F547bffF8b28D091D86d2472FA1e"
]
},
{
"timestamp": 1711325927,
"transactionHash": "0xf32d13d78ca8250c622ee5c7135b50e4a41144c39aa0161a390f95ac818b33dc",
"implementations": [
"eth:0xB27d4e7b8fF1EF21751b50F3821D99719Ad5868f"
]
},
{
"timestamp": 1754575799,
"transactionHash": "0x81977c7d00c267257dbf721981abc745d5f39a7bfee2f0d1fc85f4dd6b67e200",
"implementations": [
"eth:0x433d06fFc5EfE0e93daa22fcEF7eD60e65Bf70b4"
]
},
{
"timestamp": 1760629595,
"transactionHash": "0x680252e61a9aefec07d38525e57222d0cf484659dc2f98c0937a0c939caec94f",
"implementations": [
"eth:0xa38d03ea42F8bc31892336E1F42523e94FB91a7A"
]
},
{
"timestamp": 1765810847,
"transactionHash": "0xd7e028c41ac9c95718679a6d026b0471df56c895c15f53af0db46ea98ec3ab54",
"implementations": [
"eth:0xd3985048Bf1Cb613F5E199713a86B2aD3954F82A"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0x66e1C53e846eF3E9f3722591868AfcFfB7f39800"
]
}
],
"description": "Registers validators and creates EtherFiNode instances (behind a beacon). Batches beacon-chain deposits from LiquidityPool ETH.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x25e821b7197B146F7713C3b89B6A4D83516B912d#code"
},
{
"name": "EtherFiViewer",
"isVerified": true,
"address": "eth:0x2ecd155405cA52a5ca0e552981fF44A8252FAb81",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xf8a86ea1Ac39EC529814c377Bd484387D395421e"
],
"implementations": [
"eth:0x19C10a7E39D5457C4A3cB2c8909297D6020594d7"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1711588595,
"transactionHash": "0x2458e61adc4a609f7965e1c5301174a8d5efa848a0ffdfb5df48daab0eac93c6",
"implementations": [
"eth:0x83DD4Bd90A36FD93201B4a9e938078D5d6C43c7f"
]
},
{
"timestamp": 1712711471,
"transactionHash": "0xa0aaabd831c79c2dfb0822a4e02fe6198337f0131905f41a75a157b6e276c904",
"implementations": [
"eth:0x97176e3719ad43be1C67C218d4B44ca056dE57e9"
]
},
{
"timestamp": 1723169327,
"transactionHash": "0x6127737f8045eeb79d57cbd9c1e48d2477c81b410e434d5bdf3e207c8d86db7d",
"implementations": [
"eth:0xb619F9Aa69ad5ee6C40F96d3eac87572dc6dd42C"
]
},
{
"timestamp": 1723527479,
"transactionHash": "0xaba8d460df1da8dbe45dbbb95e045861039a6528cd800f7d6d59fae887e1c426",
"implementations": [
"eth:0x6827Bf34b86e5332c449744b048ED883E609b710"
]
},
{
"timestamp": 1723528703,
"transactionHash": "0x237d600dd7757b811b10fb405a2acf953a5891b73ef328bd7cb8a9b3670c9c7e",
"implementations": [
"eth:0x5573d63C3e6df33f82497d1B58dbF63eE3E77fA8"
]
},
{
"timestamp": 1723538375,
"transactionHash": "0xa5d5c1b10663e67457a549b47017bc8c52d5c341b71082e9f50b6276080b52b3",
"implementations": [
"eth:0xA9094E33585bB1b4F82F9BB0CfF1862173acb147"
]
},
{
"timestamp": 1741592015,
"transactionHash": "0xe838832152625bb195aed13e3121d348529904b94c73512f5373e61a334af898",
"implementations": [
"eth:0x0fb6CcBae1360dC1c3c256349D56A3d3F4F85fE7"
]
},
{
"timestamp": 1741592315,
"transactionHash": "0x797a02db89328a655640ac34401e50a7afa38cc0fcbaf960e414f467c3aebc5d",
"implementations": [
"eth:0xa6C7065D345CB4E24A904E8c9B02B54a5698f223"
]
},
{
"timestamp": 1745015063,
"transactionHash": "0x916886a798fd435d3e3e1e1d1f6740829d8b43ac8639dec56763f945a486e10d",
"implementations": [
"eth:0x68384037D671a7e897aB9b37e2b48530172430C1"
]
},
{
"timestamp": 1750368887,
"transactionHash": "0x841fbece8589b04e4f36cdc6ee7f084aa4615a1f2ea968a8291ce02c12b0e93d",
"implementations": [
"eth:0xD88F3F593a616dA662275Aa201b204299189FeD3"
]
},
{
"timestamp": 1750393907,
"transactionHash": "0xdee8747f87eaafae0413b0d194ae888bc7fa9ec21bf8218745232d144e851012",
"implementations": [
"eth:0x26A2ca0164D27F5d9dd1bCe94B2b3b5B5179C22A"
]
},
{
"timestamp": 1751501519,
"transactionHash": "0x274597270f39ebaaef61be9ec6a7dd116d2184abd7d3ee28b2987268e00ee9ec",
"implementations": [
"eth:0x19C10a7E39D5457C4A3cB2c8909297D6020594d7"
]
}
],
"description": "Stateless read-only aggregator for off-chain interfaces. Holds no funds or permissions.\n* Roles:\n * **admin**: EOA 1",
"upgradableBy": [
{
"id": "EOA-1",
"name": "EOA 1",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x2ecd155405cA52a5ca0e552981fF44A8252FAb81#code"
},
{
"name": "LiquidityPool",
"isVerified": true,
"address": "eth:0x308861A430be4cce5502d0A12724771Fc6DaF216",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x0000000000000000000000000000000000000000"
],
"implementations": [
"eth:0x17A16747D03006c9754548AC0d0afF48783A4a45"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1689004931,
"transactionHash": "0x491b823bc15ced4c54f0ed5a235d39e478f8aae3ad02eb553924b40ad9859e10",
"implementations": [
"eth:0xe869222529075639CbBC7b637001054195A5Eb79"
]
},
{
"timestamp": 1689812555,
"transactionHash": "0x1382dd9cce1b0ffb4e6489dd1b20f21e3ce2cf450d5d4be0d4e356f8ff637120",
"implementations": [
"eth:0xCEf4286E4274433f167320dB9AE81073AccfC474"
]
},
{
"timestamp": 1699569635,
"transactionHash": "0x326cb1804e8cf14873823c55f1a2c6114da5bb472c23d9f4e84b8dc74d3d6bc3",
"implementations": [
"eth:0x4D784Aa9eacc108ea5A326747870897f88d93860"
]
},
{
"timestamp": 1701990071,
"transactionHash": "0xf6ec6eb3c9d8bc0f1db17fefef0dabe33f26e689c0374176af350f1bb521f980",
"implementations": [
"eth:0x72481fB01EedE2093Af919f2Fe29334527B97f4A"
]
},
{
"timestamp": 1705621799,
"transactionHash": "0x91867318df51701729eeb1085d5228b8c13b30d6fa10d6aeab4b7549080b3a2c",
"implementations": [
"eth:0x833514B6D9BaFDdA9B45669C1f15Dc0Cd33cc0B8"
]
},
{
"timestamp": 1707181331,
"transactionHash": "0x072e16fd0ed21041860f110d64b6aab783044899a4bfd83f6dd6e53545114153",
"implementations": [
"eth:0x11858bCaC85832aCDda0BDe9B867830f7D21cF63"
]
},
{
"timestamp": 1708523723,
"transactionHash": "0x734ddfc3a9568d718f7ea10475a20d9cad3decd3849121e520ac56a3485b1517",
"implementations": [
"eth:0x403ba4cd327293A4d23beE172982509d37310cEF"
]
},
{
"timestamp": 1711325927,
"transactionHash": "0xf32d13d78ca8250c622ee5c7135b50e4a41144c39aa0161a390f95ac818b33dc",
"implementations": [
"eth:0x605F17E88027e25E18C95be0d8011aC969426399"
]
},
{
"timestamp": 1719957887,
"transactionHash": "0x1c3a292123bc0fc8ba38c673912c09481b0952d2dbed0c989d57bf97ed497b5a",
"implementations": [
"eth:0x02656fe285FAC5d5c756C2F03C17277Df9BAc65B"
]
},
{
"timestamp": 1728343199,
"transactionHash": "0xc271ccc7b8f101d0cf2f728b81476181432a14bae2772b2ef7cdb045643f1482",
"implementations": [
"eth:0xa8A8Be862BA6301E5949ABDE93b1D892C14FfB1F"
]
},
{
"timestamp": 1742995739,
"transactionHash": "0x3bd34099cfa575d25c80264e55e46c47aeec28ba3088bdcdae76075b41015389",
"implementations": [
"eth:0xA6099d83A67a2c653feB5e4e48ec24C5aeE1C515"
]
},
{
"timestamp": 1754575799,
"transactionHash": "0x81977c7d00c267257dbf721981abc745d5f39a7bfee2f0d1fc85f4dd6b67e200",
"implementations": [
"eth:0x025911766aEF6fF0C294FD831a2b5c17dC299B3f"
]
},
{
"timestamp": 1761867083,
"transactionHash": "0x1c76b07c7e41440a0fa3ef3d34843ef9cb96fb683844caebe8322d86f0c17e0a",
"implementations": [
"eth:0xA5C1ddD9185901E3c05E0660126627E039D0a626"
]
},
{
"timestamp": 1765810847,
"transactionHash": "0xd7e028c41ac9c95718679a6d026b0471df56c895c15f53af0db46ea98ec3ab54",
"implementations": [
"eth:0x45c2fB84E35a097055716A2d92e3ED499c519b98"
]
},
{
"timestamp": 1770052751,
"transactionHash": "0x9eeb5acafb20ce0b6955e72a2244d41e4253361b841550b344d23e4f15dede6c",
"implementations": [
"eth:0x8765bb2f362a4b72e614DF81E2841275b9358f8b"
]
},
{
"timestamp": 1773682163,
"transactionHash": "0x475ff56ea5e3767e64a38d41c9395e116e4432f44157473542684a9e8deff45d",
"implementations": [
"eth:0x83bc649fCdb2c8DA146b2154a559ddEDf937eF12"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0x17A16747D03006c9754548AC0d0afF48783A4a45"
]
}
],
"description": "The protocol hub and ETH custodian. Holds pooled ETH, mints/burns eETH, prices shares, routes deposits to validators via StakingManager and serves withdrawals through the WithdrawRequestNFT queue and the EtherFiRedemptionManager buffer.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x308861A430be4cce5502d0A12724771Fc6DaF216#code"
},
{
"name": "PriorityWithdrawalQueue",
"isVerified": true,
"address": "eth:0x35e7D6feF6f72aDd3c3e39dEc6d9CCc29e3345FA",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x0000000000000000000000000000000000000000"
],
"implementations": [
"eth:0x77b929bEFe793367712C0c28Ca8E857bf23A2296"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1772742191,
"transactionHash": "0xb58a7c2b2766b709bf21a4397b2d496637de41b911bc23bc213a40cdcd49d1c7",
"implementations": [
"eth:0x554B2a0c78840bBD4fDB24e198cdD93f99E29456"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0x77b929bEFe793367712C0c28Ca8E857bf23A2296"
]
}
],
"description": "Priority lane of the withdrawal system for privileged/large redemptions.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x35e7D6feF6f72aDd3c3e39dEc6d9CCc29e3345FA#code"
},
{
"name": "eETH",
"isVerified": true,
"address": "eth:0x35fA164735182de50811E8e2E824cFb9B6118ac2",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x0000000000000000000000000000000000000000"
],
"implementations": [
"eth:0xd1901dD36CBf4a81386d0162DF2707f7dDb60527"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1689005015,
"transactionHash": "0xf6763c707b90b260bba114fce9a141aa4a923327539ded9d4d4ae4395b2200ff",
"implementations": [
"eth:0x5e9035F3f4b5Ce6BCcb45010B4aeCCeB639E5242"
]
},
{
"timestamp": 1699569635,
"transactionHash": "0x326cb1804e8cf14873823c55f1a2c6114da5bb472c23d9f4e84b8dc74d3d6bc3",
"implementations": [
"eth:0xe8e55a0734F81fd8cfFCB14447Bf52054722E3E6"
]
},
{
"timestamp": 1699720175,
"transactionHash": "0x948619778c0518e9348d3d68e7e87686935d6d64e0b2bb4695bf11369f4f637d",
"implementations": [
"eth:0x1B47A665364bC15C28B05f449B53354d0CefF72f"
]
},
{
"timestamp": 1737388499,
"transactionHash": "0xcd3df37e52936ec0b941cf99217f4ace487c7e3335c14a6bcb384b0c3c9e981a",
"implementations": [
"eth:0x46c51d2E6d5FEF0400d26320bC96995176c369DD"
]
},
{
"timestamp": 1754575799,
"transactionHash": "0x81977c7d00c267257dbf721981abc745d5f39a7bfee2f0d1fc85f4dd6b67e200",
"implementations": [
"eth:0xCB3D917A965A70214f430a135154Cd5ADdA2ad84"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0xd1901dD36CBf4a81386d0162DF2707f7dDb60527"
]
}
],
"description": "Rebasing liquid staking token. Balances are shares × the LiquidityPool exchange rate and total supply tracks pooled ETH. Only the LiquidityPool can mint and burn.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x35fA164735182de50811E8e2E824cFb9B6118ac2#code"
},
{
"name": "EtherFiNode",
"isVerified": true,
"address": "eth:0x556Db8c611FE63e694413F718d795f976dcF5881",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "Per-node implementation (behind a beacon) that holds an EigenLayer EigenPod and splits validator rewards. EigenLayer contracts are external.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x556Db8c611FE63e694413F718d795f976dcF5881#code"
},
{
"name": "EtherFiRateLimiter",
"isVerified": true,
"address": "eth:0x6C7c54cfC2225fA985cD25F04d923B93c60a02F8",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x0000000000000000000000000000000000000000"
],
"implementations": [
"eth:0x9Ea4D0Fd09B628E23B1998F2153e27E5261B1B67"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1758756431,
"transactionHash": "0x178f4d3c8bea157cb9d4e6bccb0eb9c324dd5e1299a05927eeaa650e2105b417",
"implementations": [
"eth:0x1dd43C32f03f8A74b8160926D559d34358880A89"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0x9Ea4D0Fd09B628E23B1998F2153e27E5261B1B67"
]
}
],
"description": "Shared rate limiter that bounds sensitive flows (e.g. withdrawals) per epoch.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x6C7c54cfC2225fA985cD25F04d923B93c60a02F8#code"
},
{
"name": "CumulativeMerkleDrop",
"isVerified": true,
"address": "eth:0x6Db24Ee656843E3fE03eb8762a54D86186bA6B64",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xA000244b4a36D57Ea1ECB39b5F02f255e4C8cd52"
],
"implementations": [
"eth:0x5E226B1De8b0F387d7C77f78CBa2571D2a1be511"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1728538295,
"transactionHash": "0x5ea77daf54e29d425b605f326cb9673487f13dbf45d9629b2a8fb885093fca7c",
"implementations": [
"eth:0x26542fbE5f320f25747e80831ACdD1f27CDd0c65"
]
},
{
"timestamp": 1743559007,
"transactionHash": "0x1c760df67bd742b8463109f4feb9b5e1229b0378e2c75111292bcd687beaf4d4",
"implementations": [
"eth:0x5E226B1De8b0F387d7C77f78CBa2571D2a1be511"
]
}
],
"description": "Distributor for cumulative Merkle-based claims of KING reward tokens.\n* Roles:\n * **admin**: Safe",
"upgradableBy": [
{
"name": "Safe",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x6Db24Ee656843E3fE03eb8762a54D86186bA6B64#code"
},
{
"name": "EtherFiRewardsRouter",
"isVerified": true,
"address": "eth:0x73f7b1184B5cD361cC0f7654998953E2a251dd58",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x0000000000000000000000000000000000000000"
],
"implementations": [
"eth:0xCB9614b005F11F7781e92fF2B4a9AEBfAEB33E76"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1729271135,
"transactionHash": "0x8c61c92747f0185b85a76aeb4796c383b1aee355bc7c4eb3da93ab14210526d1",
"implementations": [
"eth:0xCB160aF093564E44Dc4c07bc03b828354E0fee77"
]
},
{
"timestamp": 1742995739,
"transactionHash": "0x3bd34099cfa575d25c80264e55e46c47aeec28ba3088bdcdae76075b41015389",
"implementations": [
"eth:0xe94bF0DF71002ff0165CF4daB461dEBC3978B0fa"
]
},
{
"timestamp": 1770938747,
"transactionHash": "0xa8fb51d6316fdc5c43a2869e110372235017501d2377ec3f39e5324033cbb87d",
"implementations": [
"eth:0x408de8D339F40086c5643EE4778E0F872aB5E423"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0xCB9614b005F11F7781e92fF2B4a9AEBfAEB33E76"
]
}
],
"description": "Routes execution-layer/consensus rewards ETH back to the LiquidityPool and treasury.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x73f7b1184B5cD361cC0f7654998953E2a251dd58#code"
},
{
"name": "WithdrawRequestNFT",
"isVerified": true,
"address": "eth:0x7d5706f6ef3F89B3951E23e557CDFBC3239D4E2c",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x0000000000000000000000000000000000000000"
],
"implementations": [
"eth:0x41617D01362770ebAAC10311aB899FBc8a4E4A7E"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1699344455,
"transactionHash": "0x15b45ce09ec6674e018aa96847e690c058857a295f4b44f68550bdcd461e9b38",
"implementations": [
"eth:0xdaaAC9488f9934956B55FcDAEF6F9D92F8008Ca7"
]
},
{
"timestamp": 1719957887,
"transactionHash": "0x1c3a292123bc0fc8ba38c673912c09481b0952d2dbed0c989d57bf97ed497b5a",
"implementations": [
"eth:0x3Ed97C79dEd8894036DA095B2E2f79F8080a9CD4"
]
},
{
"timestamp": 1742995739,
"transactionHash": "0x3bd34099cfa575d25c80264e55e46c47aeec28ba3088bdcdae76075b41015389",
"implementations": [
"eth:0x685870a508b56c7f1002EEF5eFCFa01304474F61"
]
},
{
"timestamp": 1750979339,
"transactionHash": "0x3b8ae9db991a6c0fea3cf69def8bba40c2ce1123b2c10187bf83fc47c66db0f7",
"implementations": [
"eth:0xC227640C2FFE6568D02A18B95F83fE5bCcE9EAd1"
]
},
{
"timestamp": 1770938747,
"transactionHash": "0xa8fb51d6316fdc5c43a2869e110372235017501d2377ec3f39e5324033cbb87d",
"implementations": [
"eth:0x2f4A5921FcAB46F1F3154e8b42Fc189e08fae3Ed"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0x41617D01362770ebAAC10311aB899FBc8a4E4A7E"
]
}
],
"description": "The eETH withdrawal queue. Burning eETH mints an NFT claim that the oracle and admin finalize, after which holders redeem it for ETH.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x7d5706f6ef3F89B3951E23e557CDFBC3239D4E2c#code"
},
{
"name": "AddressProvider",
"isVerified": true,
"address": "eth:0x8487c5F8550E3C3e7734Fe7DCF77DB2B72E4A848",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "Legacy address registry mapping protocol contract names to addresses.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x8487c5F8550E3C3e7734Fe7DCF77DB2B72E4A848#code"
},
{
"name": "RestakingRewardsRouter",
"isVerified": true,
"address": "eth:0x89E45081437c959A827d2027135bC201Ab33a2C8",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x0000000000000000000000000000000000000000"
],
"implementations": [
"eth:0x6BF6AcD4b22795080c719D987BAa8F4FCb1Ab3F8"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1768856471,
"transactionHash": "0xd9d792267a42117b15359d51e57eaaa6d0e989f0358592fa1fcf872cbbb6dfdd",
"implementations": [
"eth:0xcB6e9a5943946307815eaDF3BEDC49fE30290CA8"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0x6BF6AcD4b22795080c719D987BAa8F4FCb1Ab3F8"
]
}
],
"description": "Routes EigenLayer restaking rewards to their recipients. The reward token is external.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x89E45081437c959A827d2027135bC201Ab33a2C8#code"
},
{
"name": "EtherFiNodesManager",
"isVerified": true,
"address": "eth:0x8B71140AD2e5d1E7018d2a7f8a288BD3CD38916F",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x0000000000000000000000000000000000000000"
],
"implementations": [
"eth:0xcF5928EA7d7F164ec868cEdA7a69E08a102B5e05"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1683047087,
"transactionHash": "0xd5b05866756d433eb6a77e0a83d3e206c22f78c3d5ce69b012d8f1fece82c2d8",
"implementations": [
"eth:0x86a464220EE781361822910D4403DC8F94c529Cb"
]
},
{
"timestamp": 1685985851,
"transactionHash": "0x246eb8f7ee1b8a47d8863c36b79f24a0b46f41da8326d8f5b151aa8b3e80a3b9",
"implementations": [
"eth:0xa198b536a92d9E8696c5c76e7298f09D18a270b5"
]
},
{
"timestamp": 1689013811,
"transactionHash": "0x683ca2e04e955ac31446f03a84e49b9f4c2bdae061d4553c21b89d103ebf2b8e",
"implementations": [
"eth:0x0C5631727ECF13f3e726Bc3301E364Af51b69295"
]
},
{
"timestamp": 1699569635,
"transactionHash": "0x326cb1804e8cf14873823c55f1a2c6114da5bb472c23d9f4e84b8dc74d3d6bc3",
"implementations": [
"eth:0x812e3D5Af654042F7435DE477594D20Bb457BFaa"
]
},
{
"timestamp": 1700017871,
"transactionHash": "0xfe2851a8df2d4b10013248d29ee0d5ed72879fb31db6f1a685f3e1bf73b0b2fe",
"implementations": [
"eth:0x997c5422f9F9086ED59Fe4c703387BB4FD1009f7"
]
},
{
"timestamp": 1711325927,
"transactionHash": "0xf32d13d78ca8250c622ee5c7135b50e4a41144c39aa0161a390f95ac818b33dc",
"implementations": [
"eth:0xD90C5624A52a3BD4aD006d578b00c3Ecf8725fDa"
]
},
{
"timestamp": 1712664515,
"transactionHash": "0x5d218923a85373fe816df60eaaff725ff813b0b6f072fb346ad19f8cd318c12d",
"implementations": [
"eth:0xf710E95a8F9eed9131b2700f885fAd77aC8F5142"
]
},
{
"timestamp": 1719957887,
"transactionHash": "0x1c3a292123bc0fc8ba38c673912c09481b0952d2dbed0c989d57bf97ed497b5a",
"implementations": [
"eth:0x2b7790032F56BB9555E7762b5478c246d7120655"
]
},
{
"timestamp": 1721748503,
"transactionHash": "0x16e325677e85b37e3cb597e46efea1468463be5b1c667d1e8a91d87c1eeb3672",
"implementations": [
"eth:0x8e35D625b889b12b858AF6b6d13089c15daa26f5"
]
},
{
"timestamp": 1722820775,
"transactionHash": "0x74225560cea6390c4821b96d67132339a0c8e5f727b4bdb13662ba611bb27774",
"implementations": [
"eth:0xfA7Ab36382788EEe3aDbE8Da566E58a4DaA1c319"
]
},
{
"timestamp": 1725477215,
"transactionHash": "0x9b2c8e9dc239203d70c0763179aaf07a9112e31d6573c580c3503af2344542bb",
"implementations": [
"eth:0x20f2A7a3C941e13083b36f2b765213dec9EE9073"
]
},
{
"timestamp": 1742995739,
"transactionHash": "0x3bd34099cfa575d25c80264e55e46c47aeec28ba3088bdcdae76075b41015389",
"implementations": [
"eth:0x572E25fD70b6eB9a3CaD1CE1D48E3CfB938767F1"
]
},
{
"timestamp": 1744948259,
"transactionHash": "0xe7e323bb61abb34624c411611c18f6e0ae38d0fcb92ae6e3e4d9011229d7751a",
"implementations": [
"eth:0xE9EE6923D41Cf5F964F11065436BD90D4577B5e4"
]
},
{
"timestamp": 1754575799,
"transactionHash": "0x81977c7d00c267257dbf721981abc745d5f39a7bfee2f0d1fc85f4dd6b67e200",
"implementations": [
"eth:0x158B21148E86470E2075926EbD5528Af2D510cAF"
]
},
{
"timestamp": 1760629595,
"transactionHash": "0x680252e61a9aefec07d38525e57222d0cf484659dc2f98c0937a0c939caec94f",
"implementations": [
"eth:0x0f366dF7af5003fC7C6524665ca58bDeAdDC3745"
]
},
{
"timestamp": 1765810847,
"transactionHash": "0xd7e028c41ac9c95718679a6d026b0471df56c895c15f53af0db46ea98ec3ab54",
"implementations": [
"eth:0x3affACEBBb25ba122295bef4E1083989fEFAf003"
]
},
{
"timestamp": 1770052751,
"transactionHash": "0x9eeb5acafb20ce0b6955e72a2244d41e4253361b841550b344d23e4f15dede6c",
"implementations": [
"eth:0x789CbBe0739F1458905C9Ca6d6e74f7997622A9B"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0xcF5928EA7d7F164ec868cEdA7a69E08a102B5e05"
]
}
],
"description": "Manages the fleet of EtherFiNode contracts: withdrawal credentials, rewards distribution and validator lifecycle.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x8B71140AD2e5d1E7018d2a7f8a288BD3CD38916F#code"
},
{
"name": "CumulativeMerkleRewardsDistributor",
"isVerified": true,
"address": "eth:0x9A8c5046a290664Bf42D065d33512fe403484534",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x0000000000000000000000000000000000000000"
],
"implementations": [
"eth:0x9eb91bD087Ff6381E2497e54Fd796c6a166e6a8a"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1744238579,
"transactionHash": "0x7b86fd8dbef3f4cbd2316a1bed7e213d89c5da49aeffbddae7d2b6c8d7c43de3",
"implementations": [
"eth:0xD3F3480511FB25a3D86568B6e1eFBa09d0aDEebF"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0x9eb91bD087Ff6381E2497e54Fd796c6a166e6a8a"
]
}
],
"description": "Cumulative Merkle distributor for protocol rewards.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x9A8c5046a290664Bf42D065d33512fe403484534#code"
},
{
"name": "Liquifier",
"isVerified": true,
"address": "eth:0x9FFDF407cDe9a93c47611799DA23924Af3EF764F",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x0000000000000000000000000000000000000000"
],
"implementations": [
"eth:0x263A74E56EB07C2A2A84FD510615a17b66e10E70"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1705475147,
"transactionHash": "0x0d5a6cc3411ad9963e904f5d1539942dd95604c08aecd0014c940689f849af65",
"implementations": [
"eth:0x48276D17Cca7AFc3052F195b7CceEbC2179f78F8"
]
},
{
"timestamp": 1712664515,
"transactionHash": "0x5d218923a85373fe816df60eaaff725ff813b0b6f072fb346ad19f8cd318c12d",
"implementations": [
"eth:0x2225c97928934625e8382e6636D30f94C46B6Ed3"
]
},
{
"timestamp": 1713472583,
"transactionHash": "0x49c51942bbc4ed6c0dae95b589c20f33bc628d62f424d0e89b22ea5551cc91b2",
"implementations": [
"eth:0x61e2cA79cA3d90Fd1440976a6C9641431b3F296a"
]
},
{
"timestamp": 1729546187,
"transactionHash": "0x9ecc0dccb958e242f720dcb3bf0cdaca38e5be6431e43ec4c248a53c323783b7",
"implementations": [
"eth:0x5769ff35545B0BBFA27cc97C9407C5ed9d395455"
]
},
{
"timestamp": 1731409715,
"transactionHash": "0x1a49e9a2a8332d64b24e7002efc452e073b45667d04213d2af5d91e6f7e99f9c",
"implementations": [
"eth:0xB27b1dc838898368E9a81F69c626AEC7e71f02c1"
]
},
{
"timestamp": 1734912191,
"transactionHash": "0x4768ebfe4a28e5595a75103269fd73193b7a83dcecb743645bf1cb9128ec8aae",
"implementations": [
"eth:0xA1A15FB15cbda9E6c480C5bca6E9ABA9C5E2ff95"
]
},
{
"timestamp": 1770938747,
"transactionHash": "0xa8fb51d6316fdc5c43a2869e110372235017501d2377ec3f39e5324033cbb87d",
"implementations": [
"eth:0x0E7489D32D34CCdC12d7092067bf53Aa38bf2BF6"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0x263A74E56EB07C2A2A84FD510615a17b66e10E70"
]
}
],
"description": "Accepts whitelisted liquid staking tokens and restaked positions in exchange for eETH, later unwinding them to ETH.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x9FFDF407cDe9a93c47611799DA23924Af3EF764F#code"
},
{
"name": "EtherfiOFTAdapterUpgradeable",
"isVerified": true,
"address": "eth:0xcd2eb13D6831d4602D80E5db9230A57596CDCA63",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xa9E9bBf04F95688D7fd82036f83544630E463CAc"
],
"implementations": [
"eth:0xA82cc578927058af14fD84d96a817Dc85Ac4F946"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1727721791,
"transactionHash": "0x6f944ee740287bf0acf6a458ef101e5583bc9e75a0b89b6a7046a0d61493ce77",
"implementations": [
"eth:0xFF657DC4CF60838ED09392cCf67c1839BbB123E4"
]
},
{
"timestamp": 1733763191,
"transactionHash": "0x0ae2d6c598e722b5d31b44dd6bc9f0fe2cf711778ecbfc849d4e1266ae83db10",
"implementations": [
"eth:0xA82cc578927058af14fD84d96a817Dc85Ac4F946"
]
}
],
"description": "LayerZero OFT lock-box for weETH: locks mainnet weETH against cross-chain mint/burn. The LayerZero endpoint is external.\n* Roles:\n * **admin**: ProxyAdmin; ultimately EtherFiTimelock",
"upgradableBy": [
{
"name": "EtherFiTimelock",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xcd2eb13D6831d4602D80E5db9230A57596CDCA63#code"
},
{
"name": "weETH",
"isVerified": true,
"address": "eth:0xCd5fE23C85820F7B72D0926FC9b05b43E359b7ee",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x0000000000000000000000000000000000000000"
],
"implementations": [
"eth:0xA6Ca0607190d03CF16fe6F2865Cf40c3D160ccf3"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1689005159,
"transactionHash": "0xa034bdf7ec3b407125fcfbb786d908b0bcfd9976f2fbaf489776ba58b9db61ac",
"implementations": [
"eth:0xDd78355BcF9a9435BFcDd9C1482C0e72E7b08F79"
]
},
{
"timestamp": 1699569635,
"transactionHash": "0x326cb1804e8cf14873823c55f1a2c6114da5bb472c23d9f4e84b8dc74d3d6bc3",
"implementations": [
"eth:0xe629ee84C1Bd9Ea9c677d2D5391919fCf5E7d5D9"
]
},
{
"timestamp": 1742995739,
"transactionHash": "0x3bd34099cfa575d25c80264e55e46c47aeec28ba3088bdcdae76075b41015389",
"implementations": [
"eth:0x353E98F34b6E5a8D9d1876Bf6dF01284d05837cB"
]
},
{
"timestamp": 1754575799,
"transactionHash": "0x81977c7d00c267257dbf721981abc745d5f39a7bfee2f0d1fc85f4dd6b67e200",
"implementations": [
"eth:0x2d10683E941275D502173053927AD6066e6aFd6B"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0xA6Ca0607190d03CF16fe6F2865Cf40c3D160ccf3"
]
}
],
"description": "Non-rebasing wrapper of eETH. wrap() and unwrap() convert at the LiquidityPool rate. getRate() returns the eETH-per-weETH price.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xCd5fE23C85820F7B72D0926FC9b05b43E359b7ee#code"
},
{
"name": "DepositAdapter",
"isVerified": true,
"address": "eth:0xcfC6d9Bd7411962Bfe7145451A7EF71A24b6A7A2",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x0000000000000000000000000000000000000000"
],
"implementations": [
"eth:0xE774E19f087523EA316fCCb4B156169153f18b9d"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1726696091,
"transactionHash": "0x8eaecfc5a6cd4169c07e11f2e171f35e2d01fb3171daa6ea1a4de6df3b300ddc",
"implementations": [
"eth:0xE87797A1aFb329216811dfA22C87380128CA17d8"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0xE774E19f087523EA316fCCb4B156169153f18b9d"
]
}
],
"description": "User-facing helper that wraps ETH and accepted liquid staking tokens into weETH in one call.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xcfC6d9Bd7411962Bfe7145451A7EF71A24b6A7A2#code"
},
{
"name": "NodeOperatorManager",
"isVerified": true,
"address": "eth:0xd5edf7730ABAd812247F6F54D7bd31a52554e35E",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x0000000000000000000000000000000000000000"
],
"implementations": [
"eth:0x2474d68d6E9f7Be77C9A343ce21DBE16F0743BD3"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1699558067,
"transactionHash": "0xe4c38a7795a85b1d96eca5aa5bd791f613d5dfeb18ae246ac659ff2fc917428c",
"implementations": [
"eth:0xfcC674Fc9A0602692D2a91905E7e978aE6EE2cAF"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0x2474d68d6E9f7Be77C9A343ce21DBE16F0743BD3"
]
}
],
"description": "Registry of permissioned node operators and their key/bid allowances.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xd5edf7730ABAd812247F6F54D7bd31a52554e35E#code"
},
{
"name": "EtherfiL1SyncPoolETH",
"isVerified": true,
"address": "eth:0xD789870beA40D056A4d26055d0bEFcC8755DA146",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xDBf6bE120D4dc72f01534673a1223182D9F6261D"
],
"implementations": [
"eth:0x5d310451276d28A90cC6910449052D29A41e3aBD"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1712810903,
"transactionHash": "0x755187b46903a4b3ef55d3cfae52cc68ad171e4f5f274440ec0f16ad16e5804c",
"implementations": [
"eth:0x5Cb960F010CeedAA7D458F33D0a5F5278d648a39"
]
},
{
"timestamp": 1713507911,
"transactionHash": "0x8958cfe7014b42c53f0673817f8716220f9ee796c6f914b63a9802670d6f07f9",
"implementations": [
"eth:0x2E346C302925148c4b01625398D40faf8961085E"
]
},
{
"timestamp": 1713508055,
"transactionHash": "0x1e6e47df5782a750c131f7e02aaa20f0f6cd0a7b901d4f0fa42900ae5d36a8e6",
"implementations": [
"eth:0x2c28AeD76D1fA85E1AfE42ed476593D6cEf50155"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0x5d310451276d28A90cC6910449052D29A41e3aBD"
]
}
],
"description": "L1 side of the cross-chain deposit sync pool: mints eETH against ETH bridged from L2s via LayerZero. The endpoint is external.\n* Roles:\n * **admin**: ProxyAdmin; ultimately EtherFiTimelock",
"upgradableBy": [
{
"name": "EtherFiTimelock",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xD789870beA40D056A4d26055d0bEFcC8755DA146#code"
},
{
"name": "EtherFiRedemptionManager",
"isVerified": true,
"address": "eth:0xDadEf1fFBFeaAB4f68A9fD181395F68b4e4E7Ae0",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x0000000000000000000000000000000000000000"
],
"implementations": [
"eth:0x5D53B303D62a7861f88650045b8D5DeB59dfb3Dc"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1742501699,
"transactionHash": "0xd9f97b2ed706d46f0fd79f9eb173fe6373488fbdb1c80299f30e65459961ae9f",
"implementations": [
"eth:0xe6f40295A7500509faD08E924c91b0F050a7b84b"
]
},
{
"timestamp": 1761867083,
"transactionHash": "0x1c76b07c7e41440a0fa3ef3d34843ef9cb96fb683844caebe8322d86f0c17e0a",
"implementations": [
"eth:0x590015FDf9334594B0Ae14f29b0dEd9f1f8504Bc"
]
},
{
"timestamp": 1761867083,
"transactionHash": "0x1c76b07c7e41440a0fa3ef3d34843ef9cb96fb683844caebe8322d86f0c17e0a",
"implementations": [
"eth:0xE3F384Dc7002547Dd240AC1Ad69a430CCE1e292d"
]
},
{
"timestamp": 1770938747,
"transactionHash": "0xa8fb51d6316fdc5c43a2869e110372235017501d2377ec3f39e5324033cbb87d",
"implementations": [
"eth:0xb4fed2BF48EF08b93256AE67ad3bFaB6F1f5c13a"
]
},
{
"timestamp": 1773682163,
"transactionHash": "0x475ff56ea5e3767e64a38d41c9395e116e4432f44157473542684a9e8deff45d",
"implementations": [
"eth:0x6BD191582F40012b2f2cdf66bD3D32bDe41191F7"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0x5D53B303D62a7861f88650045b8D5DeB59dfb3Dc"
]
}
],
"description": "Instant-redemption buffer: swaps eETH/weETH for ETH from a liquidity buffer at a fee, bypassing the withdrawal queue up to available liquidity.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xDadEf1fFBFeaAB4f68A9fD181395F68b4e4E7Ae0#code"
},
{
"name": "WeETHWithdrawAdapter",
"isVerified": true,
"address": "eth:0xFbfe6b9cEe0E555Bad7e2E7309EFFC75200cBE38",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x0000000000000000000000000000000000000000"
],
"implementations": [
"eth:0xbe386B1Fb51ffAcAE0522a5dA099371cd4a2AAeA"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1760532923,
"transactionHash": "0x884ad34345c5df9c0035b3c1dc2ca38d693c3a8186e3acbf699341873afd7851",
"implementations": [
"eth:0x3f313F0A856aE12b0A16178e29B6Ada84c256952"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0xbe386B1Fb51ffAcAE0522a5dA099371cd4a2AAeA"
]
}
],
"description": "Helper that lets a holder go from weETH directly into the eETH withdrawal queue in one transaction.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xFbfe6b9cEe0E555Bad7e2E7309EFFC75200cBE38#code"
},
{
"name": "AvsOperator",
"isVerified": true,
"address": "eth:0xf4718766a7fc8c81F788669B0985FAC03D064D29",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xf4718766a7fc8c81F788669B0985FAC03D064D29#code"
},
{
"name": "EtherFiAdmin",
"isVerified": true,
"address": "eth:0x0EF8fa4760Db8f5Cd4d993f3e3416f30f942D705",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x0000000000000000000000000000000000000000"
],
"implementations": [
"eth:0x5b083DDe26FBA0E43940b2e161FCd129903FC27d"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1699344551,
"transactionHash": "0xf7500aa70c5159b2ca57bdfd62c7ab6cc71e2dafda37eb5a1d946560b89ace7f",
"implementations": [
"eth:0x9D6fC3cBaaD0ef36b2B3a4b4b311C9dd267a4aeA"
]
},
{
"timestamp": 1709073911,
"transactionHash": "0xa1742e58f540e8805e502c689994d7ba74d20f27a957509cede29aa21267cb2f",
"implementations": [
"eth:0x92E2bdC0A4b2ad593DFC66698FfC7C3052e5927E"
]
},
{
"timestamp": 1728343199,
"transactionHash": "0xc271ccc7b8f101d0cf2f728b81476181432a14bae2772b2ef7cdb045643f1482",
"implementations": [
"eth:0x92c27bA54A62fcd41d3df9Fd2dC5C8dfacbd3C4C"
]
},
{
"timestamp": 1742995739,
"transactionHash": "0x3bd34099cfa575d25c80264e55e46c47aeec28ba3088bdcdae76075b41015389",
"implementations": [
"eth:0x683583979C8be7Bcfa41E788Ab38857dfF792f49"
]
},
{
"timestamp": 1754575799,
"transactionHash": "0x81977c7d00c267257dbf721981abc745d5f39a7bfee2f0d1fc85f4dd6b67e200",
"implementations": [
"eth:0xd50f28485A75A1FdE432BA7d012d0E2543D2f20d"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0x5b083DDe26FBA0E43940b2e161FCd129903FC27d"
]
}
],
"description": "Executor that validates and applies EtherFiOracle reports (rebase, withdrawal finalization, validator approvals) subject to per-task bounds.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x0EF8fa4760Db8f5Cd4d993f3e3416f30f942D705#code"
},
{
"name": "MembershipManager",
"isVerified": true,
"address": "eth:0x3d320286E014C3e1ce99Af6d6B00f0C1D63E3000",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x9f26d4C958fD811A1F59B01B86Be7dFFc9d20761"
],
"implementations": [
"eth:0xa9DbE5C7C8172ef83a30c143892E0010420e6307"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1689005111,
"transactionHash": "0xab2367630100ac08362b8add5df951c05d5c89395cf98cc06a57985accb17530",
"implementations": [
"eth:0x190F44c7a5e06ad5A5fD5e17522Fe243B9a3cFeE"
]
},
{
"timestamp": 1689811787,
"transactionHash": "0xe9f97fff9699f255a434251fde55087603c4e0cfd7717b5def2008d7254b2dff",
"implementations": [
"eth:0xb27e1b2c43803fF063184B8ae03791ea36De3B84"
]
},
{
"timestamp": 1699569635,
"transactionHash": "0x326cb1804e8cf14873823c55f1a2c6114da5bb472c23d9f4e84b8dc74d3d6bc3",
"implementations": [
"eth:0x047A7749AD683C2Fd8A27C7904Ca8dD128F15889"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0xa9DbE5C7C8172ef83a30c143892E0010420e6307"
]
}
],
"description": "Manages membership NFTs recording loyalty points and tiers for depositors.\n* Roles:\n * **admin**: EtherFiTimelock",
"upgradableBy": [
{
"name": "EtherFiTimelock",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x3d320286E014C3e1ce99Af6d6B00f0C1D63E3000#code"
},
{
"name": "RevokeAdmin",
"isVerified": true,
"address": "eth:0x4A84BA0b5e716b37C78D0F5094757205626C7C1e",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x0000000000000000000000000000000000000000"
],
"implementations": [
"eth:0x5a765826700CF3a918eB713b3a7978e9333085Df"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1782512291,
"transactionHash": "0xf8cf676f98a325093b7d473787d3a9943a74ee91eceb50413a2f3aeb7a983ac5",
"implementations": [
"eth:0x5a765826700CF3a918eB713b3a7978e9333085Df"
]
}
],
"description": "Contract that can revoke admin and other roles in an emergency.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x4A84BA0b5e716b37C78D0F5094757205626C7C1e#code"
},
{
"name": "Blacklister",
"isVerified": true,
"address": "eth:0x5585996E7cFE95f2D99e61168B8b35C66Ff99B18",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x0000000000000000000000000000000000000000"
],
"implementations": [
"eth:0xBC870C47c6eB10009A0720e76F166f104C124ecF"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1782512243,
"transactionHash": "0x43de8fa0b7326654acfbdfdc64c182a3fe7a5fe57293e1f5656a7689ffe36f13",
"implementations": [
"eth:0xBC870C47c6eB10009A0720e76F166f104C124ecF"
]
}
],
"description": "Holds the blacklist consulted by eETH/weETH transfers.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x5585996E7cFE95f2D99e61168B8b35C66Ff99B18#code"
},
{
"name": "EtherFiOracle",
"isVerified": true,
"address": "eth:0x57AaF0004C716388B21795431CD7D5f9D3Bb6a41",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x0000000000000000000000000000000000000000"
],
"implementations": [
"eth:0x0565c8Ea133fF27ba9D471330A52068a268A2b9e"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1699344503,
"transactionHash": "0x6fd7bc121fd95c61cbffb87d4036883aacce58ab5f2bb5accf75ac10904fc9b8",
"implementations": [
"eth:0x698cB4508F13Cc12aAD36D2B64413C302B781d9A"
]
},
{
"timestamp": 1709073911,
"transactionHash": "0xa1742e58f540e8805e502c689994d7ba74d20f27a957509cede29aa21267cb2f",
"implementations": [
"eth:0x9B9608844275e186C92AAfF115e5025fca9f22F4"
]
},
{
"timestamp": 1728343199,
"transactionHash": "0xc271ccc7b8f101d0cf2f728b81476181432a14bae2772b2ef7cdb045643f1482",
"implementations": [
"eth:0x99BE559FAdf311D2CEdeA6265F4d36dfa4377B70"
]
},
{
"timestamp": 1754575799,
"transactionHash": "0x81977c7d00c267257dbf721981abc745d5f39a7bfee2f0d1fc85f4dd6b67e200",
"implementations": [
"eth:0x5eefE6f65a280A6f1Eb1FdFf36Ab9e2af6f38462"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0x0565c8Ea133fF27ba9D471330A52068a268A2b9e"
]
}
],
"description": "Committee oracle: members submit periodic reports (beacon balances, rewards, withdrawal amounts) that reach consensus before EtherFiAdmin applies them.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x57AaF0004C716388B21795431CD7D5f9D3Bb6a41#code"
},
{
"name": "RoleRegistry",
"isVerified": true,
"address": "eth:0x62247D29B4B9BECf4BB73E0c722cf6445cfC7cE9",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x9f26d4C958fD811A1F59B01B86Be7dFFc9d20761"
],
"implementations": [
"eth:0x3B44A093b9736af765f98F3245998f63bc757970"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1741893083,
"transactionHash": "0x8440ab76fede5a0aced10798d2757477cea4cf4e9a3941603dc2fca164080dfa",
"implementations": [
"eth:0x3A75019F8b09c278D152279d446c97d009E064f3"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0x3B44A093b9736af765f98F3245998f63bc757970"
]
}
],
"description": "Central access-control registry: named roles gate privileged functions across the protocol. Role membership is read live.\n* Roles:\n * **admin**: EtherFiTimelock",
"upgradableBy": [
{
"name": "EtherFiTimelock",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x62247D29B4B9BECf4BB73E0c722cf6445cfC7cE9#code"
},
{
"name": "MembershipNFT",
"isVerified": true,
"address": "eth:0xb49e4420eA6e35F98060Cd133842DbeA9c27e479",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x9f26d4C958fD811A1F59B01B86Be7dFFc9d20761"
],
"implementations": [
"eth:0xD43D99Df3D42675ce126a7CfF8F7DfF037620851"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1689005063,
"transactionHash": "0x91ead36d1f684c35f6e32ea70cff333a60b3e2985b4ad62f4670319a52ca2306",
"implementations": [
"eth:0x79Ef32C314a68B3bf80Fb25697dC9cD07EF98C0A"
]
},
{
"timestamp": 1689032279,
"transactionHash": "0x3440c1094672739d4cdd3a09e86bd267af6f97a374d9f5695ec5d262db25e560",
"implementations": [
"eth:0x7106e8D7f272BAa57dbB99372FBBC7FDD06D29DC"
]
},
{
"timestamp": 1689812171,
"transactionHash": "0x3e2550609c6fef5a01b0f8f29a0163f7eccd3ed4fd8260f980fe9228771ba68d",
"implementations": [
"eth:0xe6179dbFBb0ACDaa5c778Cb795324D9d51B144DD"
]
},
{
"timestamp": 1699569635,
"transactionHash": "0x326cb1804e8cf14873823c55f1a2c6114da5bb472c23d9f4e84b8dc74d3d6bc3",
"implementations": [
"eth:0x290d981b41B713437265Cd7846806D7500307106"
]
},
{
"timestamp": 1784061383,
"transactionHash": "0xc9c80e5bc8a3f2eedfca80030eba7a5531bcb23774ca9da3e29a591032570314",
"implementations": [
"eth:0xD43D99Df3D42675ce126a7CfF8F7DfF037620851"
]
}
],
"description": "ERC-1155 membership NFT recording loyalty and tier points.\n* Roles:\n * **admin**: EtherFiTimelock",
"upgradableBy": [
{
"name": "EtherFiTimelock",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xb49e4420eA6e35F98060Cd133842DbeA9c27e479#code"
},
{
"name": "EtherFiTimelock",
"isVerified": true,
"address": "eth:0xcD425f44758a08BaAB3C4908f3e3dE5776e45d7a",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "OpenZeppelin TimelockController governing contract upgrades and privileged operations. Two instances: a longer Upgrade timelock and a shorter Operating timelock.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xcD425f44758a08BaAB3C4908f3e3dE5776e45d7a#code"
},
{
"name": "EtherFiOperationParameters",
"isVerified": true,
"address": "eth:0xD0Ff8996DB4bDB46870b7E833b7532f484fEad1A",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x2aCA71020De61bb532008049e1Bd41E451aE8AdC"
],
"implementations": [
"eth:0xd6E217bf5083e4AF4046979E926DC486BaFd1C6a"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1734596195,
"transactionHash": "0x678e8ffef8c2503cc909eeedafd078def10f128fa80297eb3c4c9bae75d4a3d3",
"implementations": [
"eth:0x901043448d918Af3761d6B04E6f6882733605945"
]
},
{
"timestamp": 1734655079,
"transactionHash": "0x037fd4468af10b873eb35b7c5e0ba0806f1a341266f7fea97cac4a89b83c55d4",
"implementations": [
"eth:0xd6E217bf5083e4AF4046979E926DC486BaFd1C6a"
]
}
],
"description": "Holds tunable operational parameters and per-role operator addresses.\n* Roles:\n * **admin**: GnosisSafe",
"upgradableBy": [
{
"name": "GnosisSafe",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xD0Ff8996DB4bDB46870b7E833b7532f484fEad1A#code"
},
{
"name": "DepositContract",
"isVerified": true,
"address": "eth:0x00000000219ab540356cBB839Cbe05303d7705Fa",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "Ethereum Beacon Chain deposit contract.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x00000000219ab540356cBB839Cbe05303d7705Fa#code"
},
{
"name": "UpgradeableBeacon",
"isVerified": true,
"address": "eth:0x29b1C223be35CCB6bfBd43154528cD0B881756e9",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "A beacon with an upgradeable implementation currently set as AvsOperator. Beacon proxy contracts pointing to this beacon will all use its implementation.\n* Roles:\n * **owner**: AvsOperatorManager",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x29b1C223be35CCB6bfBd43154528cD0B881756e9#code"
},
{
"name": "UpgradeableBeacon",
"isVerified": true,
"address": "eth:0x3c55986Cfee455E2533F4D29006634EcF9B7c03F",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "A beacon with an upgradeable implementation currently set as EtherFiNode. Beacon proxy contracts pointing to this beacon will all use its implementation.\n* Roles:\n * **owner**: StakingManager",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x3c55986Cfee455E2533F4D29006634EcF9B7c03F#code"
},
{
"name": "ProxyAdmin",
"isVerified": true,
"address": "eth:0xa9E9bBf04F95688D7fd82036f83544630E463CAc",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "* Roles:\n * **owner**: EtherFiTimelock",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xa9E9bBf04F95688D7fd82036f83544630E463CAc#code"
},
{
"name": "ProxyAdmin",
"isVerified": true,
"address": "eth:0xDBf6bE120D4dc72f01534673a1223182D9F6261D",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "* Roles:\n * **owner**: EtherFiTimelock",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xDBf6bE120D4dc72f01534673a1223182D9F6261D#code"
}
]
},
"risks": []
}
+7 -0
{
"baseTimestamp": 1788954474,
"contractsDiscoDriven": false,
"hasDiscoUi": false,
"isDiscoDriven": false,
"permissionsDiscoDriven": false
}
+16 -0
[
{
"id": "fb67fb10",
"date": "Thu, 10 Sep 2026 12:48:31 GMT",
"timestamp": 1788954474,
"description": "Initial discovery of ether.fi (eETH/weETH): tokens, LiquidityPool custody, staking/validator ops, oracle+admin report pipeline, withdrawal queue and redemption buffer, restaking and cross-chain adapters. External protocols (Lido, EigenLayer, LayerZero, Curve) and per-validator node clones are treated as out-of-scope boundaries.",
"isHighSeverity": false,
"changeCount": 44,
"sections": [
{
"kind": "initial-discovery",
"body": "```diff\n+ Status: CREATED\n contract DepositContract (eth:0x00000000219ab540356cBB839Cbe05303d7705Fa) [global/DepositContract]\n +++ description: Ethereum Beacon Chain deposit contract.\n```\n\n```diff\n+ Status: CREATED\n contract AuctionManager (eth:0x00C452aFFee3a17d9Cecc1Bcd2B8d5C7635C4CB9) [etherfi/AuctionManager]\n +++ description: Node-operator bid auction: operators post bids that are consumed when validators are assigned to them.\n```\n\n```diff\n+ Status: CREATED\n contract Safe (eth:0x0c83EAe1FE72c390A02E426572854931EefF93BA) [GnosisSafe]\n +++ description: None\n```\n\n```diff\n+ Status: CREATED\n contract EtherFiAdmin (eth:0x0EF8fa4760Db8f5Cd4d993f3e3416f30f942D705) [etherfi/EtherFiAdmin]\n +++ description: Executor that validates and applies EtherFiOracle reports (rebase, withdrawal finalization, validator approvals) subject to per-task bounds.\n```\n\n```diff\n+ Status: CREATED\n contract EtherFiRestaker (eth:0x1B7a4C3797236A1C37f8741c0Be35c2c72736fFf) [etherfi/EtherFiRestaker]\n +++ description: Routes protocol ETH/LSTs into EigenLayer restaking and Lido withdrawals. EigenLayer and Lido contracts are external dependencies.\n```\n\n```diff\n+ Status: CREATED\n contract AvsOperatorManager (eth:0x2093Bbb221f1d8C7c932c32ee28Be6dEe4a37A6a) [etherfi/AvsOperatorManager]\n +++ description: Deploys and controls per-AVS operator contracts (behind a beacon) for EigenLayer AVS registration. EigenLayer core is external.\n```\n\n```diff\n+ Status: CREATED\n contract StakingManager (eth:0x25e821b7197B146F7713C3b89B6A4D83516B912d) [etherfi/StakingManager]\n +++ description: Registers validators and creates EtherFiNode instances (behind a beacon). Batches beacon-chain deposits from LiquidityPool ETH.\n```\n\n```diff\n+ Status: CREATED\n contract UpgradeableBeacon (eth:0x29b1C223be35CCB6bfBd43154528cD0B881756e9) [global/UpgradeableBeacon]\n +++ description: A beacon with an upgradeable implementation currently set as eth:0xf4718766a7fc8c81F788669B0985FAC03D064D29. Beacon proxy contracts pointing to this beacon will all use its implementation.\n```\n\n```diff\n+ Status: CREATED\n contract GnosisSafe (eth:0x2aCA71020De61bb532008049e1Bd41E451aE8AdC) [GnosisSafe]\n +++ description: None\n```\n\n```diff\n+ Status: CREATED\n contract EtherFiViewer (eth:0x2ecd155405cA52a5ca0e552981fF44A8252FAb81) [etherfi/EtherFiViewer]\n +++ description: Stateless read-only aggregator for off-chain interfaces. Holds no funds or permissions.\n```\n\n```diff\n+ Status: CREATED\n contract LiquidityPool (eth:0x308861A430be4cce5502d0A12724771Fc6DaF216) [etherfi/LiquidityPool]\n +++ description: The protocol hub and ETH custodian. Holds pooled ETH, mints/burns eETH, prices shares, routes deposits to validators via StakingManager and serves withdrawals through the WithdrawRequestNFT queue and the EtherFiRedemptionManager buffer.\n```\n\n```diff\n+ Status: CREATED\n contract PriorityWithdrawalQueue (eth:0x35e7D6feF6f72aDd3c3e39dEc6d9CCc29e3345FA) [etherfi/PriorityWithdrawalQueue]\n +++ description: Priority lane of the withdrawal system for privileged/large redemptions.\n```\n\n```diff\n+ Status: CREATED\n contract eETH (eth:0x35fA164735182de50811E8e2E824cFb9B6118ac2) [etherfi/eETH]\n +++ description: Rebasing liquid staking token. Balances are shares × the LiquidityPool exchange rate and total supply tracks pooled ETH. Only the LiquidityPool can mint and burn.\n```\n\n```diff\n+ Status: CREATED\n contract UpgradeableBeacon (eth:0x3c55986Cfee455E2533F4D29006634EcF9B7c03F) [global/UpgradeableBeacon]\n +++ description: A beacon with an upgradeable implementation currently set as eth:0x556Db8c611FE63e694413F718d795f976dcF5881. Beacon proxy contracts pointing to this beacon will all use its implementation.\n```\n\n```diff\n+ Status: CREATED\n contract MembershipManager (eth:0x3d320286E014C3e1ce99Af6d6B00f0C1D63E3000) [etherfi/MembershipManager]\n +++ description: Manages membership NFTs recording loyalty points and tiers for depositors.\n```\n\n```diff\n+ Status: CREATED\n contract RevokeAdmin (eth:0x4A84BA0b5e716b37C78D0F5094757205626C7C1e) [etherfi/RevokeAdmin]\n +++ description: Contract that can revoke admin and other roles in an emergency.\n```\n\n```diff\n+ Status: CREATED\n contract EtherFiNode (eth:0x556Db8c611FE63e694413F718d795f976dcF5881) [etherfi/EtherFiNode]\n +++ description: Per-node implementation (behind a beacon) that holds an EigenLayer EigenPod and splits validator rewards. EigenLayer contracts are external.\n```\n\n```diff\n+ Status: CREATED\n contract Blacklister (eth:0x5585996E7cFE95f2D99e61168B8b35C66Ff99B18) [etherfi/Blacklister]\n +++ description: Holds the blacklist consulted by eETH/weETH transfers.\n```\n\n```diff\n+ Status: CREATED\n contract EtherFiOracle (eth:0x57AaF0004C716388B21795431CD7D5f9D3Bb6a41) [etherfi/EtherFiOracle]\n +++ description: Committee oracle: members submit periodic reports (beacon balances, rewards, withdrawal amounts) that reach consensus before EtherFiAdmin applies them.\n```\n\n```diff\n+ Status: CREATED\n contract RoleRegistry (eth:0x62247D29B4B9BECf4BB73E0c722cf6445cfC7cE9) [etherfi/RoleRegistry]\n +++ description: Central access-control registry: named roles gate privileged functions across the protocol. Role membership is read live.\n```\n\n```diff\n+ Status: CREATED\n contract EtherFiRateLimiter (eth:0x6C7c54cfC2225fA985cD25F04d923B93c60a02F8) [etherfi/EtherFiRateLimiter]\n +++ description: Shared rate limiter that bounds sensitive flows (e.g. withdrawals) per epoch.\n```\n\n```diff\n+ Status: CREATED\n contract CumulativeMerkleDrop (eth:0x6Db24Ee656843E3fE03eb8762a54D86186bA6B64) [etherfi/CumulativeMerkleDrop]\n +++ description: Distributor for cumulative Merkle-based claims of KING reward tokens.\n```\n\n```diff\n+ Status: CREATED\n contract EtherFiRewardsRouter (eth:0x73f7b1184B5cD361cC0f7654998953E2a251dd58) [etherfi/EtherFiRewardsRouter]\n +++ description: Routes execution-layer/consensus rewards ETH back to the LiquidityPool and treasury.\n```\n\n```diff\n+ Status: CREATED\n contract WithdrawRequestNFT (eth:0x7d5706f6ef3F89B3951E23e557CDFBC3239D4E2c) [etherfi/WithdrawRequestNFT]\n +++ description: The eETH withdrawal queue. Burning eETH mints an NFT claim that the oracle and admin finalize, after which holders redeem it for ETH.\n```\n\n```diff\n+ Status: CREATED\n contract AddressProvider (eth:0x8487c5F8550E3C3e7734Fe7DCF77DB2B72E4A848) [etherfi/AddressProvider]\n +++ description: Legacy address registry mapping protocol contract names to addresses.\n```\n\n```diff\n+ Status: CREATED\n contract RestakingRewardsRouter (eth:0x89E45081437c959A827d2027135bC201Ab33a2C8) [etherfi/RestakingRewardsRouter]\n +++ description: Routes EigenLayer restaking rewards to their recipients. The reward token is external.\n```\n\n```diff\n+ Status: CREATED\n contract EtherFiNodesManager (eth:0x8B71140AD2e5d1E7018d2a7f8a288BD3CD38916F) [etherfi/EtherFiNodesManager]\n +++ description: Manages the fleet of EtherFiNode contracts: withdrawal credentials, rewards distribution and validator lifecycle.\n```\n\n```diff\n+ Status: CREATED\n contract CumulativeMerkleRewardsDistributor (eth:0x9A8c5046a290664Bf42D065d33512fe403484534) [etherfi/CumulativeMerkleRewardsDistributor]\n +++ description: Cumulative Merkle distributor for protocol rewards.\n```\n\n```diff\n+ Status: CREATED\n contract EtherFiTimelock (eth:0x9f26d4C958fD811A1F59B01B86Be7dFFc9d20761) [etherfi/EtherFiTimelock]\n +++ description: OpenZeppelin TimelockController governing contract upgrades and privileged operations. Two instances: a longer Upgrade timelock and a shorter Operating timelock.\n```\n\n```diff\n+ Status: CREATED\n contract Liquifier (eth:0x9FFDF407cDe9a93c47611799DA23924Af3EF764F) [etherfi/Liquifier]\n +++ description: Accepts whitelisted liquid staking tokens and restaked positions in exchange for eETH, later unwinding them to ETH.\n```\n\n```diff\n+ Status: CREATED\n contract Safe (eth:0xA000244b4a36D57Ea1ECB39b5F02f255e4C8cd52) [GnosisSafe]\n +++ description: None\n```\n\n```diff\n+ Status: CREATED\n contract ProxyAdmin (eth:0xa9E9bBf04F95688D7fd82036f83544630E463CAc) [global/ProxyAdmin]\n +++ description: None\n```\n\n```diff\n+ Status: CREATED\n contract MembershipNFT (eth:0xb49e4420eA6e35F98060Cd133842DbeA9c27e479) [etherfi/MembershipNFT]\n +++ description: ERC-1155 membership NFT recording loyalty and tier points.\n```\n\n```diff\n+ Status: CREATED\n contract EtherfiOFTAdapterUpgradeable (eth:0xcd2eb13D6831d4602D80E5db9230A57596CDCA63) [etherfi/EtherfiOFTAdapterUpgradeable]\n +++ description: LayerZero OFT lock-box for weETH: locks mainnet weETH against cross-chain mint/burn. The LayerZero endpoint is external.\n```\n\n```diff\n+ Status: CREATED\n contract EtherFiTimelock (eth:0xcD425f44758a08BaAB3C4908f3e3dE5776e45d7a) [etherfi/EtherFiTimelock]\n +++ description: OpenZeppelin TimelockController governing contract upgrades and privileged operations. Two instances: a longer Upgrade timelock and a shorter Operating timelock.\n```\n\n```diff\n+ Status: CREATED\n contract weETH (eth:0xCd5fE23C85820F7B72D0926FC9b05b43E359b7ee) [etherfi/weETH]\n +++ description: Non-rebasing wrapper of eETH. wrap() and unwrap() convert at the LiquidityPool rate. getRate() returns the eETH-per-weETH price.\n```\n\n```diff\n+ Status: CREATED\n contract DepositAdapter (eth:0xcfC6d9Bd7411962Bfe7145451A7EF71A24b6A7A2) [etherfi/DepositAdapter]\n +++ description: User-facing helper that wraps ETH and accepted liquid staking tokens into weETH in one call.\n```\n\n```diff\n+ Status: CREATED\n contract EtherFiOperationParameters (eth:0xD0Ff8996DB4bDB46870b7E833b7532f484fEad1A) [etherfi/EtherFiOperationParameters]\n +++ description: Holds tunable operational parameters and per-role operator addresses.\n```\n\n```diff\n+ Status: CREATED\n contract NodeOperatorManager (eth:0xd5edf7730ABAd812247F6F54D7bd31a52554e35E) [etherfi/NodeOperatorManager]\n +++ description: Registry of permissioned node operators and their key/bid allowances.\n```\n\n```diff\n+ Status: CREATED\n contract EtherfiL1SyncPoolETH (eth:0xD789870beA40D056A4d26055d0bEFcC8755DA146) [etherfi/EtherfiL1SyncPoolETH]\n +++ description: L1 side of the cross-chain deposit sync pool: mints eETH against ETH bridged from L2s via LayerZero. The endpoint is external.\n```\n\n```diff\n+ Status: CREATED\n contract EtherFiRedemptionManager (eth:0xDadEf1fFBFeaAB4f68A9fD181395F68b4e4E7Ae0) [etherfi/EtherFiRedemptionManager]\n +++ description: Instant-redemption buffer: swaps eETH/weETH for ETH from a liquidity buffer at a fee, bypassing the withdrawal queue up to available liquidity.\n```\n\n```diff\n+ Status: CREATED\n contract ProxyAdmin (eth:0xDBf6bE120D4dc72f01534673a1223182D9F6261D) [global/ProxyAdmin]\n +++ description: None\n```\n\n```diff\n+ Status: CREATED\n contract AvsOperator (eth:0xf4718766a7fc8c81F788669B0985FAC03D064D29) [eigenlayer/AVSOperator]\n +++ description: None\n```\n\n```diff\n+ Status: CREATED\n contract WeETHWithdrawAdapter (eth:0xFbfe6b9cEe0E555Bad7e2E7309EFFC75200cBE38) [etherfi/WeETHWithdrawAdapter]\n +++ description: Helper that lets a holder go from weETH directly into the eETH withdrawal queue in one transaction.\n```"
}
]
}
]
+1 -0
null
+1 -0
null
+40 -1
+40 -1
{
"category": "Liquid Staking"
"category": "Liquid Staking",
"liquidStaking": {
"token": "stETH, wstETH",
"minting": {
"value": "Permissionless",
"secondLine": "gated by DSM 4/6",
"sentiment": "good",
"description": "Anyone can submit ETH for stETH under a rolling 150,000 ETH limit (refills over 6,400 blocks). Validator deposits need 4 of 6 DSM guardian signatures; any guardian can pause them. The StakingRouter sets withdrawal credentials. wstETH is an immutable non-rebasing wrapper."
},
"operators": {
"value": "Hybrid",
"secondLine": "no bond; CSM bonded",
"sentiment": "neutral",
"description": "Curated modules (39 operators in the registry, 82 in SimpleDVT) post no bond, so their slashing shrinks every holder's rebase; the permissionless CSM (622 operators, 9% share) and the curated MaxEB module (46) post a stETH bond burned on penalties. Anyone can force a requested exit via EIP-7002."
},
"backing": {
"value": "Protocol vault",
"secondLine": "creds: protocol",
"sentiment": "good",
"description": "Credentials point at the WithdrawalVault, set by the StakingRouter. Balances come from the oracle committee, validator facts from EIP-4788 proofs. stVaults may mint stETH against their own collateral, capped at 30% of supply (0.05% today)."
},
"exchangeRate": {
"value": "5 of 9",
"secondLine": "daily · ≤0.075%",
"sentiment": "warning",
"description": "Rebases daily on a 5-of-9 report, capped at +0.075% per report, 10% a year and 360 bp down over 36 days. A silent committee stops rebases and finalization."
},
"exit": {
"value": "Oracle-gated",
"secondLine": "≤1 day · pausable",
"sentiment": "warning",
"description": "Requests (100 wei to 1,000 stETH) mint an unstETH NFT finalized only in the daily report, at the lower of request and report rate. A 3/6 committee can pause the queue for 21 days; the 5/6 Reseal Committee can make that indefinite."
},
"upgrades": {
"value": "Lido DAO",
"secondLine": "4d min · stETH veto",
"sentiment": "neutral",
"description": "The Aragon Agent, proxy admin of every core contract, acts only through Dual Governance: 3 days plus 1 day. 1% of stETH locked blocks scheduling for 5 to 45 days; 10% triggers a rage quit. Until 2027-06-20, 4/7 and 5/7 committees can freeze execution for 30 days or reset to a no-veto fallback."
}
}
}
+48 -1
+48 -1
{
"category": "Liquid Staking"
"category": "Liquid Staking",
"liquidStaking": {
"token": "rETH",
"minting": {
"value": "Permissionless",
"secondLine": "ungated FIFO queue",
"sentiment": "good",
"description": "Deposits (minimum 0.01 ETH, 0.05% fee) mint rETH at the stored rate, up to 6,000,000 ETH unassigned. ETH is matched to the next queued validator first-in-first-out; anyone can trigger assignment. The 2/3 security council or RPL governance can switch deposits off."
},
"operators": {
"value": "Permissionless",
"secondLine": "ETH bond",
"sentiment": "good",
"warning": {
"value": "Registration of new node operators is currently switched off.",
"sentiment": "warning"
},
"description": "Registration is permissionless (currently disabled); operators bond part of each validator's 32 ETH and an exit shortfall hits their share first. The oracle set can fine up to 612 ETH per penalty. No EIP-7002: stake returns only when the operator exits or is slashed."
},
"backing": {
"value": "Minipools",
"secondLine": "creds: minipool",
"sentiment": "good",
"description": "Credentials point at the validator's own minipool or megapool, fixed at funding. Returned balances split on-chain between operator bond and pool share, exits are proven against beacon-chain state, and the vault and token contracts are not upgradeable."
},
"exchangeRate": {
"value": "6 of 10",
"secondLine": "daily · ≤2%",
"sentiment": "warning",
"description": "Price is reported total ETH over supply, written by 6 of 10 oracle DAO members daily, at most 2% per report. Reports never expire, so a silent oracle leaves the stale price in force. The security council can switch submission off."
},
"exit": {
"value": "Burn anytime",
"secondLine": "instant · no pause",
"sentiment": "good",
"warning": {
"value": "Pays only from the liquid buffer and reverts when it is empty; there is no forced validator exit.",
"sentiment": "warning"
},
"description": "Burn rETH for ETH at the stored rate with no queue, delay or pause switch, but only from the contract buffer plus deposit-pool surplus (target 1% of backing). When that is empty the burn reverts."
},
"upgrades": {
"value": "Oracle DAO (6/10)",
"secondLine": "≥14d · council veto",
"sentiment": "warning",
"description": "Only the oracle DAO (10 bonded operator accounts, 1,750 RPL each, 6-of-10 majority) can change code: 7 days before voting opens, then 7 days in which the 2/3 security council can veto at 33% quorum. Vault and tokens are not upgradeable; RPL governance sets parameters only."
}
}
}
+45 -2
+1 -1
"Binance Wrapped Beacon ETH"
"Binance"
+44 -1
{
"category": "Liquid Staking"
"category": "Liquid Staking",
"liquidStaking": {
"token": "wBETH",
"minting": {
"value": "Permissionless",
"secondLine": "swept by Binance",
"sentiment": "bad",
"warning": {
"value": "About 99% of wBETH was minted by Binance against exchange balances, with no ETH deposited on-chain.",
"sentiment": "bad"
},
"description": "Anyone can deposit ETH for wBETH at Binance's rate, no cap or fee. Binance's OperatorWallet, the only minter, issues wBETH against exchange balances with no ETH: about 99% of supply. An operator key sweeps deposited ETH to Binance at will."
},
"operators": {
"value": "Binance",
"secondLine": "no bond",
"sentiment": "bad",
"description": "No contract tracks validators, balances or slashing. Binance says wBETH is backed by BETH and its validators; the only on-chain trace is a withdrawal-credential account sweeping to a Binance wallet. Passing losses to holders is Binance's policy, not code."
},
"backing": {
"value": "Off-chain custody",
"secondLine": "creds: Binance",
"sentiment": "bad",
"description": "The operator key moves deposited ETH to an externally owned account that forwards to a Binance wallet. The token contract holds about 0.04% of the ETH the supply represents; the rest is an unverifiable exchange balance."
},
"exchangeRate": {
"value": "1 of 1",
"secondLine": "daily · ≤15%/yr",
"sentiment": "bad",
"description": "One Binance key writes the rate through a relay capped at 15% over 1 year with no per-update cap; the token only checks it is at least 1. The owner can repoint the oracle and set any rate at once. Nothing on-chain ties the rate to validators."
},
"exit": {
"value": "Binance-funded",
"secondLine": "10 days · pausable",
"sentiment": "bad",
"description": "Burning wBETH records a claim paid after a 10-day lock (operator-set, minimum 2 days) and only once Binance funds the queue, at its discretion. Binance keys can pause or blacklist. About 11,500 ETH paid since 2023 against 3,175,308 wBETH."
},
"upgrades": {
"value": "Single EOA",
"secondLine": "no delay · no veto",
"sentiment": "bad",
"description": "One externally owned key is proxy admin of both contracts and can replace their code instantly; a second holds owner, master-minter, pauser and blacklister and owns the rate relay. No multisig, timelock or governance contract exists."
}
}
}