f074cdff (main)
and
7653a3c2 (PR)
+1 -1
+1 -1
{
"baseTimestamp": 1774947622,
"baseTimestamp": 1775028964,
"contractsDiscoDriven": true,
"hasDiscoUi": true,
"isDiscoDriven": true,
"permissionsDiscoDriven": true
}
+58 -98
+2 -2
[
{
"projectId": "arenaz",
"sinceTimestamp": 1731366083,
"type": "liveness",
"subtype": "batchSubmissions",
"params": {
"formula": "transfer",
"from": "0x2b8733E8c60A928b19BB7db1D79b918e8E09AC8c",
"from": "0x47827645bA78EB18c3d64Fe2146EfdE66F74894B",
"to": "0x00f9BCEe08DCe4F0e7906c1f6cFb10c77802EEd0"
}
},
{
"projectId": "arenaz",
"sinceTimestamp": 1731366083,
"type": "l2costs",
"subtype": "batchSubmissions",
"params": {
"formula": "transfer",
"from": "0x2b8733E8c60A928b19BB7db1D79b918e8E09AC8c",
"from": "0x47827645bA78EB18c3d64Fe2146EfdE66F74894B",
"to": "0x00f9BCEe08DCe4F0e7906c1f6cFb10c77802EEd0"
}
},
{
"projectId": "arenaz",
"sinceTimestamp": 1731366083,
"type": "liveness",
"subtype": "stateUpdates",
"params": {
"formula": "functionCall",
"address": "0x658656A14AFdf9c507096aC406564497d13EC754",
"selector": "0x82ecf2f6",
"signature": "function create(uint32 _gameType, bytes32 _rootClaim, bytes _extraData) payable returns (address proxy_)"
}
},
{
"projectId": "arenaz",
"sinceTimestamp": 1731366083,
"type": "l2costs",
"subtype": "stateUpdates",
"params": {
"formula": "functionCall",
"address": "0x658656A14AFdf9c507096aC406564497d13EC754",
"selector": "0x82ecf2f6",
"signature": "function create(uint32 _gameType, bytes32 _rootClaim, bytes _extraData) payable returns (address proxy_)"
}
}
]
+1 -1
[
{
"type": "ethereum",
"daLayer": "ethereum",
"sinceBlock": 21167590,
"inbox": "0x00f9BCEe08DCe4F0e7906c1f6cFb10c77802EEd0",
"sequencers": [
"0x2b8733E8c60A928b19BB7db1D79b918e8E09AC8c"
"0x47827645bA78EB18c3d64Fe2146EfdE66F74894B"
]
}
]
+52 -92
{
"ethereum": {
"roles": [
{
"id": "Challenger",
"name": "Challenger",
"description": "Allowed to challenge or delete state roots proposed by a Proposer.",
"accounts": [
{
"address": "eth:0xA8447329e52F64AED2bFc9E7a2506F7D369f483a",
"type": "Contract",
"isVerified": true,
"name": "SaferSafes",
"url": "#SaferSafes"
},
{
"address": "eth:0x9BA6e03D8B90dE867373Db8cF1A58d2F7F006b3A",
"type": "Contract",
"isVerified": true,
"name": "OpFoundationOperationsSafe",
"url": "#OpFoundationOperationsSafe"
}
],
"chain": "ethereum",
"discoveryDrivenData": true
},
{
"id": "Guardian",
"name": "Guardian",
"description": "Allowed to pause withdrawals. In op stack systems with a proof system, the Guardian can also blacklist dispute games and set the respected game type (permissioned / permissionless).\n* SaferSafes has the role if the number of Optimism Security Council members falls below 8\n* OpFoundationUpgradeSafe has the role if the number of Optimism Security Council members falls below 8\n* Optimism EOA 1 has the role though restricted to the SuperchainConfig's `pause()` function",
"accounts": [
{
"address": "eth:0xA8447329e52F64AED2bFc9E7a2506F7D369f483a",
"type": "Contract",
"isVerified": true,
"name": "SaferSafes",
"url": "#SaferSafes"
},
{
"address": "eth:0x847B5c174615B1B7fDF770882256e2D3E95b9D92",
"type": "Contract",
"isVerified": true,
"name": "OpFoundationUpgradeSafe",
"url": "#OpFoundationUpgradeSafe"
},
{
"address": "eth:0xc2819DC788505Aac350142A7A707BF9D03E3Bd03",
"type": "Contract",
"isVerified": true,
"name": "Optimism Security Council",
"url": "#Optimism Security Council"
},
{
"address": "eth:0x352f1defB49718e7Ea411687E850aA8d6299F7aC",
"type": "EOA",
"isVerified": true,
"name": "Optimism EOA 1",
"url": "#Optimism-EOA-1"
}
],
"chain": "ethereum",
"discoveryDrivenData": true
},
{
"id": "Proposer",
"name": "Proposer",
"description": "Allowed to post new state roots of the current layer to the host chain.",
"accounts": [
{
"address": "eth:0x5f16E66D8736B689a430564a31c8d887ca357CD8",
"address": "eth:0xDA89371d5C940233B200f9a235bF0Ea8AB9fAe96",
"type": "EOA",
"isVerified": true,
"name": "EOA 2",
"url": "#EOA-2"
"name": "EOA 3",
"url": "#EOA-3"
}
],
"chain": "ethereum",
"discoveryDrivenData": true
},
{
"id": "Sequencer",
"name": "Sequencer",
"description": "Allowed to commit transactions from the current layer to the host chain.",
"accounts": [
{
"address": "eth:0x2b8733E8c60A928b19BB7db1D79b918e8E09AC8c",
"address": "eth:0x47827645bA78EB18c3d64Fe2146EfdE66F74894B",
"type": "EOA",
"isVerified": true,
"name": "EOA 1",
"url": "#EOA-1"
}
],
"chain": "ethereum",
"discoveryDrivenData": true
}
],
"actors": [
{
"id": "SuperchainProxyAdminOwner",
"name": "SuperchainProxyAdminOwner",
"description": "A Multisig with 2/2 threshold. \n* Can upgrade **with no delay**\n * L1CrossDomainMessenger [via: ProxyAdmin]\n * AnchorStateRegistry [via: ProxyAdmin]\n * DelayedWETH [via: ProxyAdmin]\n * SystemConfig [via: ProxyAdmin]\n * L1StandardBridge [via: ProxyAdmin]\n * DisputeGameFactory [via: ProxyAdmin]\n * SuperchainConfig [via: SuperchainProxyAdmin]\n * OptimismMintableERC20Factory [via: ProxyAdmin]\n * OptimismPortal2 [via: ProxyAdmin]\n * L1ERC721Bridge [via: ProxyAdmin]\n* Can interact with AddressManager\n * set and change address mappings [via: ProxyAdmin]\n* Can interact with AddressManager\n * set and change address mappings [via: SuperchainProxyAdmin]",
"accounts": [
{
"address": "eth:0x5a0Aae59D09fccBdDb6C6CcEB07B7279367C3d2A",
"type": "Contract",
"isVerified": true,
"name": "0x5a0A…3d2A",
"url": "https://etherscan.io/address/0x5a0Aae59D09fccBdDb6C6CcEB07B7279367C3d2A"
}
],
"chain": "ethereum",
"references": [],
"participants": [
{
"address": "eth:0x847B5c174615B1B7fDF770882256e2D3E95b9D92",
"type": "Contract",
"isVerified": true,
"name": "OpFoundationUpgradeSafe",
"url": "#OpFoundationUpgradeSafe"
},
{
"address": "eth:0xc2819DC788505Aac350142A7A707BF9D03E3Bd03",
"type": "Contract",
"isVerified": true,
"name": "Optimism Security Council",
"url": "#Optimism Security Council"
}
],
"discoveryDrivenData": true
},
{
"id": "SaferSafes",
"name": "SaferSafes",
"accounts": [
{
"address": "eth:0xA8447329e52F64AED2bFc9E7a2506F7D369f483a",
"type": "Contract",
"isVerified": true,
"name": "0xA844…483a",
"url": "https://etherscan.io/address/0xA8447329e52F64AED2bFc9E7a2506F7D369f483a"
}
],
"chain": "ethereum",
"description": "A Gnosis Safe module combining LivenessModule and TimelockGuard. Provides liveness checks where a fallback owner can challenge and take over if Safe owners are unresponsive, plus optional timelock delays for transaction scheduling.\n* A Challenger OpFoundationOperationsSafe\n* A Guardian OpFoundationUpgradeSafe → LivenessModule if the number of Optimism Security Council members falls below 8 → Optimism Security Council → Optimism Guardian Multisig",
"discoveryDrivenData": true
},
{
"id": "OpFoundationOperationsSafe",
"name": "OpFoundationOperationsSafe",
"description": "A Multisig with 5/7 threshold. It uses the following modules: SaferSafes (A Gnosis Safe module combining LivenessModule and TimelockGuard. Provides liveness checks where a fallback owner can challenge and take over if Safe owners are unresponsive, plus optional timelock delays for transaction scheduling).\n* A Challenger - acting directly",
"accounts": [
{
"address": "eth:0x9BA6e03D8B90dE867373Db8cF1A58d2F7F006b3A",
"type": "Contract",
"isVerified": true,
"name": "0x9BA6…6b3A",
"url": "https://etherscan.io/address/0x9BA6e03D8B90dE867373Db8cF1A58d2F7F006b3A"
}
],
"chain": "ethereum",
"references": [],
"participants": [
{
"address": "eth:0x6419F81580343DF023E68715C6e269aFb00a2cc7",
"type": "EOA",
"isVerified": true,
"name": "0x6419…2cc7",
"url": "https://etherscan.io/address/0x6419F81580343DF023E68715C6e269aFb00a2cc7"
},
{
"address": "eth:0x3041BA32f451F5850c147805F5521AC206421623",
"type": "EOA",
"isVerified": true,
"name": "0x3041…1623",
"url": "https://etherscan.io/address/0x3041BA32f451F5850c147805F5521AC206421623"
},
{
"address": "eth:0xC2Db495f5a1F91172A361AAFA6FdE47c41de6dF5",
"type": "EOA",
"isVerified": true,
"name": "0xC2Db…6dF5",
"url": "https://etherscan.io/address/0xC2Db495f5a1F91172A361AAFA6FdE47c41de6dF5"
},
{
"address": "eth:0xBF93D4d727F7Ba1F753E1124C3e532dCb04Ea2c8",
"type": "EOA",
"isVerified": true,
"name": "0xBF93…a2c8",
"url": "https://etherscan.io/address/0xBF93D4d727F7Ba1F753E1124C3e532dCb04Ea2c8"
},
{
"address": "eth:0x4D014f3c5F33Aa9Cd1Dc29ce29618d07Ae666d15",
"type": "EOA",
"isVerified": true,
"name": "0x4D01…6d15",
"url": "https://etherscan.io/address/0x4D014f3c5F33Aa9Cd1Dc29ce29618d07Ae666d15"
},
{
"address": "eth:0x69acfE2096Dfb8d5A041eF37693553c48d9BFd02",
"type": "EOA",
"isVerified": true,
"name": "0x69ac…Fd02",
"url": "https://etherscan.io/address/0x69acfE2096Dfb8d5A041eF37693553c48d9BFd02"
},
{
"address": "eth:0xc222ab08333109243B1f4E2a80e3D0A190714AB5",
"type": "EOA",
"isVerified": true,
"name": "0xc222…4AB5",
"url": "https://etherscan.io/address/0xc222ab08333109243B1f4E2a80e3D0A190714AB5"
}
],
"discoveryDrivenData": true
},
{
"id": "Gelato Multisig",
"name": "Gelato Multisig",
"description": "A Multisig with 4/9 threshold. \n* Can interact with SystemConfig\n * it can update the preconfer address, the batch submitter (Sequencer) address and the gas configuration of the system ",
"accounts": [
{
"address": "eth:0xBeA2Bc852a160B8547273660E22F4F08C2fa9Bbb",
"type": "Contract",
"isVerified": true,
"name": "0xBeA2…9Bbb",
"url": "https://etherscan.io/address/0xBeA2Bc852a160B8547273660E22F4F08C2fa9Bbb"
}
],
"chain": "ethereum",
"references": [],
"participants": [
{
"address": "eth:0x349f3839012DB2271e1BeC68F1668471D175Adb9",
"type": "EOA",
"isVerified": true,
"name": "0x349f…Adb9",
"url": "https://etherscan.io/address/0x349f3839012DB2271e1BeC68F1668471D175Adb9"
},
{
"address": "eth:0xB65540bBA534E88EB4a5062D0E6519C07063b259",
"type": "EOA",
"isVerified": true,
"name": "0xB655…b259",
"url": "https://etherscan.io/address/0xB65540bBA534E88EB4a5062D0E6519C07063b259"
},
{
"address": "eth:0x58edE8C66A15f23c61b8EadD1191FdaD904f7a87",
"type": "EOA",
"isVerified": true,
"name": "0x58ed…7a87",
"url": "https://etherscan.io/address/0x58edE8C66A15f23c61b8EadD1191FdaD904f7a87"
},
{
"address": "eth:0x28bB9385A588EF4747264D19B9A9F1603591680c",
"type": "EOA",
"isVerified": true,
"name": "0x28bB…680c",
"url": "https://etherscan.io/address/0x28bB9385A588EF4747264D19B9A9F1603591680c"
},
{
"address": "eth:0x691C2EF68e25E620fa6cAdE2728f6aE34F37aAD2",
"type": "EOA",
"isVerified": true,
"name": "0x691C…aAD2",
"url": "https://etherscan.io/address/0x691C2EF68e25E620fa6cAdE2728f6aE34F37aAD2"
},
{
"address": "eth:0x5bE3E96Cdc3A97628bD7308d3588B9a474F4A54d",
"type": "EOA",
"isVerified": true,
"name": "0x5bE3…A54d",
"url": "https://etherscan.io/address/0x5bE3E96Cdc3A97628bD7308d3588B9a474F4A54d"
},
{
"address": "eth:0x88De44422E1b1c30bc530c35aEdb9f5aD0e6fD52",
"type": "EOA",
"isVerified": true,
"name": "0x88De…fD52",
"url": "https://etherscan.io/address/0x88De44422E1b1c30bc530c35aEdb9f5aD0e6fD52"
},
{
"address": "eth:0x01a0A7BaAAca31AFB5b770FeFD69CE4917D9c32e",
"type": "EOA",
"isVerified": true,
"name": "0x01a0…c32e",
"url": "https://etherscan.io/address/0x01a0A7BaAAca31AFB5b770FeFD69CE4917D9c32e"
},
{
"address": "eth:0x547D0F472309e4239b296D01e03bEDc101241a26",
"type": "EOA",
"isVerified": true,
"name": "0x547D…1a26",
"url": "https://etherscan.io/address/0x547D0F472309e4239b296D01e03bEDc101241a26"
}
],
"discoveryDrivenData": true
},
{
"id": "OpFoundationUpgradeSafe",
"name": "OpFoundationUpgradeSafe",
"description": "A Multisig with 5/7 threshold. It uses the following modules: SaferSafes (A Gnosis Safe module combining LivenessModule and TimelockGuard. Provides liveness checks where a fallback owner can challenge and take over if Safe owners are unresponsive, plus optional timelock delays for transaction scheduling).\nMember of SuperchainProxyAdminOwner.\n* A Guardian LivenessModule if the number of Optimism Security Council members falls below 8 → Optimism Security Council → Optimism Guardian Multisig",
"accounts": [
{
"address": "eth:0x847B5c174615B1B7fDF770882256e2D3E95b9D92",
"type": "Contract",
"isVerified": true,
"name": "0x847B…9D92",
"url": "https://etherscan.io/address/0x847B5c174615B1B7fDF770882256e2D3E95b9D92"
}
],
"chain": "ethereum",
"references": [],
"participants": [
{
"address": "eth:0x6419F81580343DF023E68715C6e269aFb00a2cc7",
"type": "EOA",
"isVerified": true,
"name": "0x6419…2cc7",
"url": "https://etherscan.io/address/0x6419F81580343DF023E68715C6e269aFb00a2cc7"
},
{
"address": "eth:0x3041BA32f451F5850c147805F5521AC206421623",
"type": "EOA",
"isVerified": true,
"name": "0x3041…1623",
"url": "https://etherscan.io/address/0x3041BA32f451F5850c147805F5521AC206421623"
},
{
"address": "eth:0xC2Db495f5a1F91172A361AAFA6FdE47c41de6dF5",
"type": "EOA",
"isVerified": true,
"name": "0xC2Db…6dF5",
"url": "https://etherscan.io/address/0xC2Db495f5a1F91172A361AAFA6FdE47c41de6dF5"
},
{
"address": "eth:0xBF93D4d727F7Ba1F753E1124C3e532dCb04Ea2c8",
"type": "EOA",
"isVerified": true,
"name": "0xBF93…a2c8",
"url": "https://etherscan.io/address/0xBF93D4d727F7Ba1F753E1124C3e532dCb04Ea2c8"
},
{
"address": "eth:0x4D014f3c5F33Aa9Cd1Dc29ce29618d07Ae666d15",
"type": "EOA",
"isVerified": true,
"name": "0x4D01…6d15",
"url": "https://etherscan.io/address/0x4D014f3c5F33Aa9Cd1Dc29ce29618d07Ae666d15"
},
{
"address": "eth:0x69acfE2096Dfb8d5A041eF37693553c48d9BFd02",
"type": "EOA",
"isVerified": true,
"name": "0x69ac…Fd02",
"url": "https://etherscan.io/address/0x69acfE2096Dfb8d5A041eF37693553c48d9BFd02"
},
{
"address": "eth:0xc222ab08333109243B1f4E2a80e3D0A190714AB5",
"type": "EOA",
"isVerified": true,
"name": "0xc222…4AB5",
"url": "https://etherscan.io/address/0xc222ab08333109243B1f4E2a80e3D0A190714AB5"
}
],
"discoveryDrivenData": true
},
{
"id": "Optimism Security Council",
"name": "Optimism Security Council",
"description": "A Multisig with 10/13 threshold. It uses the following modules: LivenessModule (used to remove members inactive for 3mo 8d while making sure that the threshold remains above 75%. If the number of members falls below 8, the OpFoundationUpgradeSafe takes ownership of the multisig).\nMember of Optimism Guardian Multisig, SuperchainProxyAdminOwner.\n* A Guardian Optimism Guardian Multisig",
"accounts": [
{
"address": "eth:0xc2819DC788505Aac350142A7A707BF9D03E3Bd03",
"type": "Contract",
"isVerified": true,
"name": "0xc281…Bd03",
"url": "https://etherscan.io/address/0xc2819DC788505Aac350142A7A707BF9D03E3Bd03"
}
],
"chain": "ethereum",
"references": [],
"participants": [
{
"address": "eth:0xE61F12136bA47De67D15a1D59fE2f383ec5176aE",
"type": "EOA",
"isVerified": true,
"name": "0xE61F…76aE",
"url": "https://etherscan.io/address/0xE61F12136bA47De67D15a1D59fE2f383ec5176aE"
},
{
"address": "eth:0x652BC529E171847E2fFddCeA13567643C84ccB5f",
"type": "EOA",
"isVerified": true,
"name": "0x652B…cB5f",
"url": "https://etherscan.io/address/0x652BC529E171847E2fFddCeA13567643C84ccB5f"
},
{
"address": "eth:0x5c1f9E9384Ca9fE0499277F6a015a2ac0A317a81",
"type": "EOA",
"isVerified": true,
"name": "0x5c1f…7a81",
"url": "https://etherscan.io/address/0x5c1f9E9384Ca9fE0499277F6a015a2ac0A317a81"
},
{
"address": "eth:0x4A7322258c9E690e4CB8Cea6e5251443E956e61E",
"type": "EOA",
"isVerified": true,
"name": "0x4A73…e61E",
"url": "https://etherscan.io/address/0x4A7322258c9E690e4CB8Cea6e5251443E956e61E"
},
{
"address": "eth:0x3A53B4B081Eb7Cb00C46497b16Ea22e65E4Faa94",
"type": "EOA",
"isVerified": true,
"name": "0x3A53…aa94",
"url": "https://etherscan.io/address/0x3A53B4B081Eb7Cb00C46497b16Ea22e65E4Faa94"
},
{
"address": "eth:0xEF9A98511939eEe6Ec69af62082E3F2ff606877c",
"type": "EOA",
"isVerified": true,
"name": "0xEF9A…877c",
"url": "https://etherscan.io/address/0xEF9A98511939eEe6Ec69af62082E3F2ff606877c"
},
{
"address": "eth:0x6323ef2b80030f3fBc508bFc321Fc71fDB95c865",
"type": "EOA",
"isVerified": true,
"name": "0x6323…c865",
"url": "https://etherscan.io/address/0x6323ef2b80030f3fBc508bFc321Fc71fDB95c865"
},
{
"address": "eth:0xd5b735b676A043a53946C3b6F6BE28c1ECE6aC90",
"type": "EOA",
"isVerified": true,
"name": "0xd5b7…aC90",
"url": "https://etherscan.io/address/0xd5b735b676A043a53946C3b6F6BE28c1ECE6aC90"
},
{
"address": "eth:0x7ed8d9Af9eaA194D1A75C67c1475579E42289E39",
"type": "EOA",
"isVerified": true,
"name": "0x7ed8…9E39",
"url": "https://etherscan.io/address/0x7ed8d9Af9eaA194D1A75C67c1475579E42289E39"
},
{
"address": "eth:0x0aA384EB2fedD2741277A0f72909A0d7275575D7",
"type": "EOA",
"isVerified": true,
"name": "0x0aA3…75D7",
"url": "https://etherscan.io/address/0x0aA384EB2fedD2741277A0f72909A0d7275575D7"
},
{
"address": "eth:0x0a8742365a7EB0A3698293ac54357B5Ac04cefE6",
"type": "EOA",
"isVerified": true,
"name": "0x0a87…efE6",
"url": "https://etherscan.io/address/0x0a8742365a7EB0A3698293ac54357B5Ac04cefE6"
},
{
"address": "eth:0xbfA046B0bc5cEa1596be62B8b3f79f9f41f1E0d9",
"type": "EOA",
"isVerified": true,
"name": "0xbfA0…E0d9",
"url": "https://etherscan.io/address/0xbfA046B0bc5cEa1596be62B8b3f79f9f41f1E0d9"
},
{
"address": "eth:0x92827223f6b397CE9F208eE352bacA710765cACb",
"type": "EOA",
"isVerified": true,
"name": "0x9282…cACb",
"url": "https://etherscan.io/address/0x92827223f6b397CE9F208eE352bacA710765cACb"
}
],
"discoveryDrivenData": true
},
{
"id": "LivenessGuard",
"name": "LivenessGuard",
"accounts": [
{
"address": "eth:0x24424336F04440b1c28685a38303aC33C9D14a25",
"type": "Contract",
"isVerified": true,
"name": "0x2442…4a25",
"url": "https://etherscan.io/address/0x24424336F04440b1c28685a38303aC33C9D14a25"
}
],
"chain": "ethereum",
"description": "Modular contract to be used together with the LivenessModule. Tracks liveness / activity of Safe owners.\n* Can interact with LivenessModule\n * can remove members of Optimism Security Council inactive for 3mo 8d ",
"discoveryDrivenData": true
},
{
"id": "Optimism Guardian Multisig",
"name": "Optimism Guardian Multisig",
"description": "A Multisig with 1/1 threshold. It uses the following modules: DeputyPauseModule (Allows 0x352f1defB49718e7Ea411687E850aA8d6299F7aC, called the deputy pauser, to act on behalf of the OpFoundationUpgradeSafe if set as its Safe module).",
"accounts": [
{
"address": "eth:0x09f7150D8c019BeF34450d6920f6B3608ceFdAf2",
"type": "Contract",
"isVerified": true,
"name": "0x09f7…dAf2",
"url": "https://etherscan.io/address/0x09f7150D8c019BeF34450d6920f6B3608ceFdAf2"
}
],
"chain": "ethereum",
"references": [],
"participants": [
{
"address": "eth:0xc2819DC788505Aac350142A7A707BF9D03E3Bd03",
"type": "Contract",
"isVerified": true,
"name": "Optimism Security Council",
"url": "#Optimism Security Council"
}
],
"discoveryDrivenData": true
},
{
"id": "Safe",
"name": "Safe",
"description": "A Multisig with 1/1 threshold. ",
"accounts": [
{
"address": "eth:0x111C7B3AF4434087a6E5dC6E18782181839e2b55",
"type": "Contract",
"isVerified": true,
"name": "0x111C…2b55",
"url": "https://etherscan.io/address/0x111C7B3AF4434087a6E5dC6E18782181839e2b55"
}
],
"chain": "ethereum",
"references": [],
"participants": [
{
"address": "eth:0xd1546815A7b894327aF200987cDe3C4aA93610BA",
"type": "EOA",
"isVerified": true,
"name": "EOA 2",
"url": "#EOA-2"
}
],
"discoveryDrivenData": true
},
{
"id": "EOA-1",
"name": "EOA 1",
"accounts": [
{
"address": "eth:0x2b8733E8c60A928b19BB7db1D79b918e8E09AC8c",
"address": "eth:0x47827645bA78EB18c3d64Fe2146EfdE66F74894B",
"type": "EOA",
"isVerified": true,
"name": "0x2b87…AC8c",
"url": "https://etherscan.io/address/0x2b8733E8c60A928b19BB7db1D79b918e8E09AC8c"
"name": "0x4782…894B",
"url": "https://etherscan.io/address/0x47827645bA78EB18c3d64Fe2146EfdE66F74894B"
}
],
"chain": "ethereum",
"description": "* A Sequencer - acting directly",
"discoveryDrivenData": true
},
{
"id": "EOA-2",
"name": "EOA 2",
"accounts": [
{
"address": "eth:0x5f16E66D8736B689a430564a31c8d887ca357CD8",
"address": "eth:0xd1546815A7b894327aF200987cDe3C4aA93610BA",
"type": "EOA",
"isVerified": true,
"name": "0x5f16…7CD8",
"url": "https://etherscan.io/address/0x5f16E66D8736B689a430564a31c8d887ca357CD8"
"name": "0xd154…10BA",
"url": "https://etherscan.io/address/0xd1546815A7b894327aF200987cDe3C4aA93610BA"
}
],
"chain": "ethereum",
"description": "Member of Safe.\n* Can interact with SystemConfig\n * it can update the preconfer address, the batch submitter (Sequencer) address and the gas configuration of the system [via: Safe]",
"discoveryDrivenData": true
},
{
"id": "EOA-3",
"name": "EOA 3",
"accounts": [
{
"address": "eth:0xDA89371d5C940233B200f9a235bF0Ea8AB9fAe96",
"type": "EOA",
"isVerified": true,
"name": "0xDA89…Ae96",
"url": "https://etherscan.io/address/0xDA89371d5C940233B200f9a235bF0Ea8AB9fAe96"
}
],
"chain": "ethereum",
"description": "* A Proposer - acting directly",
"discoveryDrivenData": true
},
{
"id": "Optimism-EOA-1",
"name": "Optimism EOA 1",
"accounts": [
{
"address": "eth:0x352f1defB49718e7Ea411687E850aA8d6299F7aC",
"type": "EOA",
"isVerified": true,
"name": "0x352f…F7aC",
"url": "https://etherscan.io/address/0x352f1defB49718e7Ea411687E850aA8d6299F7aC"
}
],
"chain": "ethereum",
"description": "* A Guardian DeputyPauseModule though restricted to the SuperchainConfig's `pause()` function → Optimism Guardian Multisig",
"discoveryDrivenData": true
}
]
}
}
+2 -2
{
"addresses": {
"ethereum": [
{
"name": "SystemConfig",
"isVerified": true,
"address": "eth:0x34A564BbD863C4bf73Eca711Cf38a77C4Ccbdd6A",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xEEFD1782D70824CBcacf9438afab7f353F1797F0"
],
"implementations": [
"eth:0xd392c27B84b1cA776528F2704BC67B82a62132d2"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1731366083,
"transactionHash": "0xd4afd73fe3c16a0284301926c57e78ba53e313326442c1a885faaa7db421bbd3",
"implementations": [
"eth:0xF56D96B2535B932656d3c04Ebf51baBff241D886"
]
},
{
"timestamp": 1731366083,
"transactionHash": "0xd4afd73fe3c16a0284301926c57e78ba53e313326442c1a885faaa7db421bbd3",
"implementations": [
"eth:0xF56D96B2535B932656d3c04Ebf51baBff241D886"
]
},
{
"timestamp": 1737729695,
"transactionHash": "0x86da7386a26978c3db89e97c1f4feee613a8a0c07bbe4640624b05276f49c350",
"implementations": [
"eth:0xd81f43eDBCAcb4c29a9bA38a13Ee5d79278270cC"
]
},
{
"timestamp": 1737729695,
"transactionHash": "0x86da7386a26978c3db89e97c1f4feee613a8a0c07bbe4640624b05276f49c350",
"implementations": [
"eth:0xAB9d6cB7A427c0765163A7f45BB91cAfe5f2D375"
]
},
{
"timestamp": 1760460347,
"transactionHash": "0x38010d19d63d834b95936728d49e38dbf71ae7b3a44f555b235b890cd2f40eaf",
"implementations": [
"eth:0x760C48C62A85045A6B69f07F4a9f22868659CbCc"
]
},
{
"timestamp": 1760460347,
"transactionHash": "0x38010d19d63d834b95936728d49e38dbf71ae7b3a44f555b235b890cd2f40eaf",
"implementations": [
"eth:0x340f923E5c7cbB2171146f64169EC9d5a9FfE647"
]
},
{
"timestamp": 1760460347,
"transactionHash": "0x38010d19d63d834b95936728d49e38dbf71ae7b3a44f555b235b890cd2f40eaf",
"implementations": [
"eth:0x2bFE4A5Bd5A41e9d848d843ebCDFa15954e9A557"
]
},
{
"timestamp": 1764102143,
"transactionHash": "0xc1c52a6b223c21ad02f12e115b3b872ca858298de141528c019401811fbb822a",
"implementations": [
"eth:0x2fA28989fc559836E9d66dFf3010C7F7f41c65ED"
]
},
{
"timestamp": 1770667859,
"transactionHash": "0x8808cd53114e4cf07bfde30daf24f2984d4a40ab09c5ca67bd171ac29d6dbf37",
"implementations": [
"eth:0xd392c27B84b1cA776528F2704BC67B82a62132d2"
]
}
],
"description": "Contains configuration parameters such as the Sequencer address, gas limit on this chain and the unsafe block signer address.\n* Roles:\n * **admin**: ProxyAdmin; ultimately SuperchainProxyAdminOwner\n * **batcherHash**: EOA 1\n * **owner**: Gelato Multisig",
"description": "Contains configuration parameters such as the Sequencer address, gas limit on this chain and the unsafe block signer address.\n* Roles:\n * **admin**: ProxyAdmin; ultimately SuperchainProxyAdminOwner\n * **batcherHash**: EOA 1\n * **owner**: Safe; ultimately EOA 2",
"upgradableBy": [
{
"name": "SuperchainProxyAdminOwner",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x34A564BbD863C4bf73Eca711Cf38a77C4Ccbdd6A#code"
},
{
"name": "DisputeGameFactory",
"isVerified": true,
"address": "eth:0x658656A14AFdf9c507096aC406564497d13EC754",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xEEFD1782D70824CBcacf9438afab7f353F1797F0"
],
"implementations": [
"eth:0xc040F392E52Cb6970CA8E110c280fE24E07C5e2c"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1731366083,
"transactionHash": "0xd4afd73fe3c16a0284301926c57e78ba53e313326442c1a885faaa7db421bbd3",
"implementations": [
"eth:0xc641A33cab81C559F2bd4b21EA34C290E2440C2B"
]
},
{
"timestamp": 1760460347,
"transactionHash": "0x38010d19d63d834b95936728d49e38dbf71ae7b3a44f555b235b890cd2f40eaf",
"implementations": [
"eth:0x4bbA758F006Ef09402eF31724203F316ab74e4a0"
]
},
{
"timestamp": 1760460347,
"transactionHash": "0x38010d19d63d834b95936728d49e38dbf71ae7b3a44f555b235b890cd2f40eaf",
"implementations": [
"eth:0x33D1e8571a85a538ed3D5A4d88f46C112383439D"
]
},
{
"timestamp": 1764102143,
"transactionHash": "0xc1c52a6b223c21ad02f12e115b3b872ca858298de141528c019401811fbb822a",
"implementations": [
"eth:0x74Fac1D45B98bae058F8F566201c9A81B85C7D50"
]
},
{
"timestamp": 1770667859,
"transactionHash": "0x8808cd53114e4cf07bfde30daf24f2984d4a40ab09c5ca67bd171ac29d6dbf37",
"implementations": [
"eth:0xc040F392E52Cb6970CA8E110c280fE24E07C5e2c"
]
}
],
"description": "The dispute game factory allows the creation of dispute games, used to propose state roots and eventually challenge them.\n* Roles:\n * **admin**: ProxyAdmin; ultimately SuperchainProxyAdminOwner\n * **challengerFromDGF**: OpFoundationOperationsSafe; ultimately SaferSafes\n * **proposerFromDGF**: EOA 2",
"description": "The dispute game factory allows the creation of dispute games, used to propose state roots and eventually challenge them.\n* Roles:\n * **admin**: ProxyAdmin; ultimately SuperchainProxyAdminOwner\n * **challengerFromDGF**: OpFoundationOperationsSafe; ultimately SaferSafes\n * **proposerFromDGF**: EOA 3",
"upgradableBy": [
{
"name": "SuperchainProxyAdminOwner",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x658656A14AFdf9c507096aC406564497d13EC754#code"
},
{
"name": "OptimismPortal2",
"isVerified": true,
"address": "eth:0xB20f99b598E8d888d1887715439851BC68806b22",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xEEFD1782D70824CBcacf9438afab7f353F1797F0"
],
"implementations": [
"eth:0x97cEbbf8959e2A5476fbe9B98A21806Ec234609B"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1731366083,
"transactionHash": "0xd4afd73fe3c16a0284301926c57e78ba53e313326442c1a885faaa7db421bbd3",
"implementations": [
"eth:0xe2F826324b2faf99E513D16D266c3F80aE87832B"
]
},
{
"timestamp": 1760460347,
"transactionHash": "0x38010d19d63d834b95936728d49e38dbf71ae7b3a44f555b235b890cd2f40eaf",
"implementations": [
"eth:0x2D7e764a0D9919e16983a46595CfA81fc34fa7Cd"
]
},
{
"timestamp": 1760460347,
"transactionHash": "0x38010d19d63d834b95936728d49e38dbf71ae7b3a44f555b235b890cd2f40eaf",
"implementations": [
"eth:0xB443Da3e07052204A02d630a8933dAc05a0d6fB4"
]
},
{
"timestamp": 1760460347,
"transactionHash": "0x38010d19d63d834b95936728d49e38dbf71ae7b3a44f555b235b890cd2f40eaf",
"implementations": [
"eth:0x381E729FF983FA4BCEd820e7b922d79bF653B999"
]
},
{
"timestamp": 1764102143,
"transactionHash": "0xc1c52a6b223c21ad02f12e115b3b872ca858298de141528c019401811fbb822a",
"implementations": [
"eth:0x7Cf803296662e8C72A6C1d6450572209aCF7f202"
]
},
{
"timestamp": 1770667859,
"transactionHash": "0x8808cd53114e4cf07bfde30daf24f2984d4a40ab09c5ca67bd171ac29d6dbf37",
"implementations": [
"eth:0x97cEbbf8959e2A5476fbe9B98A21806Ec234609B"
]
}
],
"description": "The OptimismPortal contract is the main entry point to deposit funds from L1 to L2. It also allows to prove and finalize withdrawals. It specifies which game type can be used for withdrawals, which currently is the PermissionedDisputeGame.\n* Roles:\n * **admin**: ProxyAdmin; ultimately SuperchainProxyAdminOwner",
"upgradableBy": [
{
"name": "SuperchainProxyAdminOwner",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xB20f99b598E8d888d1887715439851BC68806b22#code"
},
{
"name": "SuperchainConfig",
"isVerified": true,
"address": "eth:0x95703e0982140D16f8ebA6d158FccEde42f04a4C",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x543bA4AADBAb8f9025686Bd03993043599c6fB04"
],
"implementations": [
"eth:0xb08Cc720F511062537ca78BdB0AE691F04F5a957"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1705954799,
"transactionHash": "0x8ba0e42b89cde22310b644ed30fd44e4a348619a165a54c908e7dc341e9bbd0c",
"implementations": [
"eth:0x53c165169401764778F780a69701385eb0FF19B7"
]
},
{
"timestamp": 1718044163,
"transactionHash": "0xe361c0d4ae3aebc94b3f281ee372fbb1cbdb0c33ca8b1b35e7f3b009b2fcbdb0",
"implementations": [
"eth:0xd81f43eDBCAcb4c29a9bA38a13Ee5d79278270cC"
]
},
{
"timestamp": 1718044163,
"transactionHash": "0xe361c0d4ae3aebc94b3f281ee372fbb1cbdb0c33ca8b1b35e7f3b009b2fcbdb0",
"implementations": [
"eth:0x53c165169401764778F780a69701385eb0FF19B7"
]
},
{
"timestamp": 1743612623,
"transactionHash": "0x5f3530e593bbac37c61dc5b7755b6a40c06c20c1a3a1b13fca5b7d00cde65c29",
"implementations": [
"eth:0x4da82a327773965b8d4D85Fa3dB8249b387458E7"
]
},
{
"timestamp": 1753379243,
"transactionHash": "0x46acdce174c8d83ebe2f208d8c76c867e75617483d64c3e407f69ae2f9868716",
"implementations": [
"eth:0xCe28685EB204186b557133766eCA00334EB441E4"
]
},
{
"timestamp": 1764092795,
"transactionHash": "0xf556934cb4de1ab40a4cfba17856cd601cbc8b875b96a9ccd8ee32bcd363abf5",
"implementations": [
"eth:0xb08Cc720F511062537ca78BdB0AE691F04F5a957"
]
}
],
"description": "Used to manage global configuration values for multiple OP Chains within a single Superchain network. The SuperchainConfig contract manages individual pause states for each chain connected to it, as well as a global pause state for all chains. The guardian role can pause either separately, but each pause expires after 3 months if left untouched.\n* Roles:\n * **admin**: SuperchainProxyAdmin; ultimately SuperchainProxyAdminOwner\n * **guardian**: Optimism Guardian Multisig; ultimately OpFoundationUpgradeSafe, Optimism EOA 1, Optimism Security Council, SaferSafes",
"upgradableBy": [
{
"name": "SuperchainProxyAdminOwner",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x95703e0982140D16f8ebA6d158FccEde42f04a4C#code"
},
{
"name": "L1CrossDomainMessenger",
"isVerified": true,
"address": "eth:0x0BE364912219bC74760f1d1c25F4866b328eBfC6",
"upgradeability": {
"proxyType": "resolved delegate proxy",
"admins": [
"eth:0xEEFD1782D70824CBcacf9438afab7f353F1797F0"
],
"implementations": [
"eth:0xb686F13AfF1e427a1f993F29ab0F2E7383729FE0"
],
"immutable": false
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1731366083,
"transactionHash": "0xd4afd73fe3c16a0284301926c57e78ba53e313326442c1a885faaa7db421bbd3",
"implementations": [
"eth:0xD3494713A5cfaD3F5359379DfA074E2Ac8C6Fd65"
]
},
{
"timestamp": 1760460347,
"transactionHash": "0x38010d19d63d834b95936728d49e38dbf71ae7b3a44f555b235b890cd2f40eaf",
"implementations": [
"eth:0x3eA6084748ED1b2A9B5D4426181F1ad8C93F6231"
]
},
{
"timestamp": 1760460347,
"transactionHash": "0x38010d19d63d834b95936728d49e38dbf71ae7b3a44f555b235b890cd2f40eaf",
"implementations": [
"eth:0x5D5a095665886119693F0B41d8DFeE78da033e8B"
]
},
{
"timestamp": 1760460347,
"transactionHash": "0x38010d19d63d834b95936728d49e38dbf71ae7b3a44f555b235b890cd2f40eaf",
"implementations": [
"eth:0x22D12E0FAebD62d429514A65EBAe32dd316c12D6"
]
},
{
"timestamp": 1764102143,
"transactionHash": "0xc1c52a6b223c21ad02f12e115b3b872ca858298de141528c019401811fbb822a",
"implementations": [
"eth:0xb686F13AfF1e427a1f993F29ab0F2E7383729FE0"
]
},
{
"timestamp": 1770667859,
"transactionHash": "0x8808cd53114e4cf07bfde30daf24f2984d4a40ab09c5ca67bd171ac29d6dbf37",
"implementations": [
"eth:0xb686F13AfF1e427a1f993F29ab0F2E7383729FE0"
]
}
],
"description": "Sends messages from host chain to this chain, and relays messages back onto host chain. In the event that a message sent from host chain to this chain is rejected for exceeding this chain's epoch gas limit, it can be resubmitted via this contract's replay function.\n* Roles:\n * **admin**: ProxyAdmin; ultimately SuperchainProxyAdminOwner",
"upgradableBy": [
{
"name": "SuperchainProxyAdminOwner",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x0BE364912219bC74760f1d1c25F4866b328eBfC6#code"
},
{
"name": "L1StandardBridge",
"isVerified": true,
"address": "eth:0x564Eb0CeFCcA86160649a8986C419693c82F3678",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xEEFD1782D70824CBcacf9438afab7f353F1797F0"
],
"implementations": [
"eth:0x61525EaaCDdB97D9184aFc205827E6A4fd0Bf62A"
]
},
"chain": "ethereum",
"pastUpgrades": [],
"description": "The main entry point to deposit ERC20 tokens from host chain to this chain.\n* Roles:\n * **admin**: ProxyAdmin; ultimately SuperchainProxyAdminOwner",
"upgradableBy": [
{
"name": "SuperchainProxyAdminOwner",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x564Eb0CeFCcA86160649a8986C419693c82F3678#code"
},
{
"name": "L1ERC721Bridge",
"isVerified": true,
"address": "eth:0xbc404ae11E4E9DA3Ea9276Aa6DCcA31097D4f4Ee",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xEEFD1782D70824CBcacf9438afab7f353F1797F0"
],
"implementations": [
"eth:0x74f1aC50EB0BE98853805D381C884f5f9abDEcf9"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1731366083,
"transactionHash": "0xd4afd73fe3c16a0284301926c57e78ba53e313326442c1a885faaa7db421bbd3",
"implementations": [
"eth:0xAE2AF01232a6c4a4d3012C5eC5b1b35059caF10d"
]
},
{
"timestamp": 1760460347,
"transactionHash": "0x38010d19d63d834b95936728d49e38dbf71ae7b3a44f555b235b890cd2f40eaf",
"implementations": [
"eth:0x276d3730f219f7ec22274f7263180b8452B46d47"
]
},
{
"timestamp": 1760460347,
"transactionHash": "0x38010d19d63d834b95936728d49e38dbf71ae7b3a44f555b235b890cd2f40eaf",
"implementations": [
"eth:0x7aE1d3BD877a4C5CA257404ce26BE93A02C98013"
]
},
{
"timestamp": 1760460347,
"transactionHash": "0x38010d19d63d834b95936728d49e38dbf71ae7b3a44f555b235b890cd2f40eaf",
"implementations": [
"eth:0x7f1d12fB2911EB095278085f721e644C1f675696"
]
},
{
"timestamp": 1764102143,
"transactionHash": "0xc1c52a6b223c21ad02f12e115b3b872ca858298de141528c019401811fbb822a",
"implementations": [
"eth:0x74f1aC50EB0BE98853805D381C884f5f9abDEcf9"
]
},
{
"timestamp": 1770667859,
"transactionHash": "0x8808cd53114e4cf07bfde30daf24f2984d4a40ab09c5ca67bd171ac29d6dbf37",
"implementations": [
"eth:0x74f1aC50EB0BE98853805D381C884f5f9abDEcf9"
]
}
],
"description": "Used to bridge ERC-721 tokens from host chain to this chain.\n* Roles:\n * **admin**: ProxyAdmin; ultimately SuperchainProxyAdminOwner",
"upgradableBy": [
{
"name": "SuperchainProxyAdminOwner",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xbc404ae11E4E9DA3Ea9276Aa6DCcA31097D4f4Ee#code"
},
{
"name": "LivenessModule",
"isVerified": true,
"address": "eth:0x0454092516c9A4d636d3CAfA1e82161376C8a748",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "used to remove members inactive for 3mo 8d while making sure that the threshold remains above 75%. If the number of members falls below 8, the OpFoundationUpgradeSafe takes ownership of the multisig\n* Roles:\n * **fallbackOwner**: OpFoundationUpgradeSafe if the number of Optimism Security Council members falls below 8\n * **livenessGuard**: LivenessGuard",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x0454092516c9A4d636d3CAfA1e82161376C8a748#code"
},
{
"name": "AnchorStateRegistry",
"isVerified": true,
"address": "eth:0x0C9fF654bCd0769142Fe70951B0634C5AE19BA3C",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xEEFD1782D70824CBcacf9438afab7f353F1797F0"
],
"implementations": [
"eth:0x36398155Cd17cfe804F69b233eDDA800DD4D5aA5"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1760460347,
"transactionHash": "0x38010d19d63d834b95936728d49e38dbf71ae7b3a44f555b235b890cd2f40eaf",
"implementations": [
"eth:0xeb69cC681E8D4a557b30DFFBAd85aFfD47a2CF2E"
]
},
{
"timestamp": 1770667859,
"transactionHash": "0x8808cd53114e4cf07bfde30daf24f2984d4a40ab09c5ca67bd171ac29d6dbf37",
"implementations": [
"eth:0x36398155Cd17cfe804F69b233eDDA800DD4D5aA5"
]
}
],
"description": "Contains the latest confirmed state root that can be used as a starting point in a dispute game. It specifies which game type can be used for withdrawals, which currently is the PermissionedDisputeGame.\n* Roles:\n * **admin**: ProxyAdmin; ultimately SuperchainProxyAdminOwner",
"upgradableBy": [
{
"name": "SuperchainProxyAdminOwner",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x0C9fF654bCd0769142Fe70951B0634C5AE19BA3C#code"
},
{
"name": "DelayedWETH",
"isVerified": true,
"address": "eth:0x1D21c2535154d5D0337eda61df9c07f306AA17f7",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xEEFD1782D70824CBcacf9438afab7f353F1797F0"
],
"implementations": [
"eth:0x33Dadc2d1aA9BB613A7AE6B28425eA00D44c6998"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1760460347,
"transactionHash": "0x38010d19d63d834b95936728d49e38dbf71ae7b3a44f555b235b890cd2f40eaf",
"implementations": [
"eth:0x33Dadc2d1aA9BB613A7AE6B28425eA00D44c6998"
]
}
],
"description": "Contract designed to hold the bonded ETH for each game. It is designed as a wrapper around WETH to allow an owner to function as a backstop if a game would incorrectly distribute funds.\n* Roles:\n * **admin**: ProxyAdmin; ultimately SuperchainProxyAdminOwner",
"upgradableBy": [
{
"name": "SuperchainProxyAdminOwner",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x1D21c2535154d5D0337eda61df9c07f306AA17f7#code"
},
{
"name": "PreimageOracle",
"isVerified": true,
"address": "eth:0x1fb8cdFc6831fc866Ed9C51aF8817Da5c287aDD3",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "The PreimageOracle contract is used to load the required data from L1 for a dispute game.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x1fb8cdFc6831fc866Ed9C51aF8817Da5c287aDD3#code"
},
{
"name": "SuperchainProxyAdmin",
"isVerified": true,
"address": "eth:0x543bA4AADBAb8f9025686Bd03993043599c6fB04",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "* Roles:\n * **owner**: SuperchainProxyAdminOwner",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x543bA4AADBAb8f9025686Bd03993043599c6fB04#code"
},
{
"name": "PermissionedDisputeGame",
"isVerified": true,
"address": "eth:0x58bf355C5d4EdFc723eF89d99582ECCfd143266A",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "Same as FaultDisputeGame, but only two permissioned addresses are designated as proposer and challenger.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x58bf355C5d4EdFc723eF89d99582ECCfd143266A#code"
},
{
"name": "MIPS",
"isVerified": true,
"address": "eth:0x6463dEE3828677F6270d83d45408044fc5eDB908",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "The MIPS contract is used to execute the final step of the dispute game which objectively determines the winner of the dispute.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x6463dEE3828677F6270d83d45408044fc5eDB908#code"
},
{
"name": "DeputyPauseModule",
"isVerified": true,
"address": "eth:0x76fC2F971FB355D0453cF9F64d3F9E4f640E1754",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "Allows 0x352f1defB49718e7Ea411687E850aA8d6299F7aC, called the deputy pauser, to act on behalf of the OpFoundationUpgradeSafe if set as its Safe module.\n* Roles:\n * **deputy**: Optimism EOA 1 though restricted to the SuperchainConfig's `pause()` function",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x76fC2F971FB355D0453cF9F64d3F9E4f640E1754#code"
},
{
"name": "OptimismMintableERC20Factory",
"isVerified": true,
"address": "eth:0xa33f75a3A2babD502cbC1A6F54345B529C1F306E",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xEEFD1782D70824CBcacf9438afab7f353F1797F0"
],
"implementations": [
"eth:0x8ee6fB13c6c9a7e401531168E196Fbf8b05cEabB"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1731366083,
"transactionHash": "0xd4afd73fe3c16a0284301926c57e78ba53e313326442c1a885faaa7db421bbd3",
"implementations": [
"eth:0xE01efbeb1089D1d1dB9c6c8b135C934C0734c846"
]
},
{
"timestamp": 1760460347,
"transactionHash": "0x38010d19d63d834b95936728d49e38dbf71ae7b3a44f555b235b890cd2f40eaf",
"implementations": [
"eth:0x5493f4677A186f64805fe7317D6993ba4863988F"
]
},
{
"timestamp": 1764102143,
"transactionHash": "0xc1c52a6b223c21ad02f12e115b3b872ca858298de141528c019401811fbb822a",
"implementations": [
"eth:0x8ee6fB13c6c9a7e401531168E196Fbf8b05cEabB"
]
},
{
"timestamp": 1770667859,
"transactionHash": "0x8808cd53114e4cf07bfde30daf24f2984d4a40ab09c5ca67bd171ac29d6dbf37",
"implementations": [
"eth:0x8ee6fB13c6c9a7e401531168E196Fbf8b05cEabB"
]
}
],
"description": "A helper contract that generates OptimismMintableERC20 contracts on the network it's deployed to. OptimismMintableERC20 is a standard extension of the base ERC20 token contract designed to allow the L1StandardBridge contracts to mint and burn tokens. This makes it possible to use an OptimismMintableERC20 as this chain's representation of a token on the host chain, or vice-versa.\n* Roles:\n * **admin**: ProxyAdmin; ultimately SuperchainProxyAdminOwner",
"upgradableBy": [
{
"name": "SuperchainProxyAdminOwner",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xa33f75a3A2babD502cbC1A6F54345B529C1F306E#code"
},
{
"name": "ProxyAdmin",
"isVerified": true,
"address": "eth:0xEEFD1782D70824CBcacf9438afab7f353F1797F0",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "* Roles:\n * **owner**: SuperchainProxyAdminOwner",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xEEFD1782D70824CBcacf9438afab7f353F1797F0#code"
}
]
},
"escrows": [
{
"address": "0xB20f99b598E8d888d1887715439851BC68806b22",
"sinceTimestamp": 1731366083,
"tokens": [
"ETH"
],
"contract": {
"isVerified": true,
"address": "eth:0xB20f99b598E8d888d1887715439851BC68806b22",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xEEFD1782D70824CBcacf9438afab7f353F1797F0"
],
"implementations": [
"eth:0x97cEbbf8959e2A5476fbe9B98A21806Ec234609B"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1731366083,
"transactionHash": "0xd4afd73fe3c16a0284301926c57e78ba53e313326442c1a885faaa7db421bbd3",
"implementations": [
"eth:0xe2F826324b2faf99E513D16D266c3F80aE87832B"
]
},
{
"timestamp": 1760460347,
"transactionHash": "0x38010d19d63d834b95936728d49e38dbf71ae7b3a44f555b235b890cd2f40eaf",
"implementations": [
"eth:0x2D7e764a0D9919e16983a46595CfA81fc34fa7Cd"
]
},
{
"timestamp": 1760460347,
"transactionHash": "0x38010d19d63d834b95936728d49e38dbf71ae7b3a44f555b235b890cd2f40eaf",
"implementations": [
"eth:0xB443Da3e07052204A02d630a8933dAc05a0d6fB4"
]
},
{
"timestamp": 1760460347,
"transactionHash": "0x38010d19d63d834b95936728d49e38dbf71ae7b3a44f555b235b890cd2f40eaf",
"implementations": [
"eth:0x381E729FF983FA4BCEd820e7b922d79bF653B999"
]
},
{
"timestamp": 1764102143,
"transactionHash": "0xc1c52a6b223c21ad02f12e115b3b872ca858298de141528c019401811fbb822a",
"implementations": [
"eth:0x7Cf803296662e8C72A6C1d6450572209aCF7f202"
]
},
{
"timestamp": 1770667859,
"transactionHash": "0x8808cd53114e4cf07bfde30daf24f2984d4a40ab09c5ca67bd171ac29d6dbf37",
"implementations": [
"eth:0x97cEbbf8959e2A5476fbe9B98A21806Ec234609B"
]
}
],
"description": "Main entry point for users depositing ETH.",
"upgradableBy": [
{
"name": "ProxyAdmin",
"delay": "no"
}
],
"url": "https://etherscan.io/address/0xB20f99b598E8d888d1887715439851BC68806b22#code"
},
"chain": "ethereum",
"includeInTotal": true,
"chainId": 1
},
{
"address": "0x564Eb0CeFCcA86160649a8986C419693c82F3678",
"sinceTimestamp": 1731366083,
"tokens": "*",
"contract": {
"isVerified": true,
"address": "eth:0x564Eb0CeFCcA86160649a8986C419693c82F3678",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xEEFD1782D70824CBcacf9438afab7f353F1797F0"
],
"implementations": [
"eth:0x61525EaaCDdB97D9184aFc205827E6A4fd0Bf62A"
]
},
"chain": "ethereum",
"pastUpgrades": [],
"description": "Main entry point for users depositing ERC20 token that do not require custom gateway.",
"upgradableBy": [
{
"name": "ProxyAdmin",
"delay": "no"
}
],
"url": "https://etherscan.io/address/0x564Eb0CeFCcA86160649a8986C419693c82F3678#code"
},
"chain": "ethereum",
"includeInTotal": true,
"chainId": 1
}
],
"programHashes": [
{
"title": "OP absolute prestate v1.9.0 (cannon64)",
"description": "A commitment to the initial state of the OP stack fault proof program.",
"programUrl": "https://github.com/ethereum-optimism/optimism/tree/op-program/v1.9.0/op-program",
"verificationStatus": "successful",
"verificationSteps": "\nSteps are based on [this guide](https://docs.optimism.io/chain-operators/tutorials/absolute-prestate).\n\n1. Install docker [https://docs.docker.com/get-started/get-docker/](https://docs.docker.com/get-started/get-docker/) and make sure it is running.\n2. Check out the correct branch of [optimism](https://github.com/ethereum-optimism/optimism) repo: `git checkout op-program/v1.9.0-rc.1` . Commit hash should be `a0c621361db5b5a6dcb60fd8943d485672a076b0`.\n3. Regenerate the absolute prestate: `make reproducible-prestate`. This script will print out the correct hash.\n ",
"hash": "0x033c000916b4a88cfffeceddd6cf0f4be3897a89195941e5a7c3f8209b4dbb6e"
}
],
"risks": [
{
"category": "Funds can be stolen if",
"text": "a contract receives a malicious code upgrade. Both regular and emergency upgrades must be approved by both the Security Council and the Foundation. There is no delay on regular upgrades."
}
],
"zkVerifiers": []
}
+1 -1
{
"baseTimestamp": 1774433140,
"baseTimestamp": 1775029072,
"contractsDiscoDriven": true,
"hasDiscoUi": true,
"isDiscoDriven": true,
"permissionsDiscoDriven": true
}
+1 -1
+1 -1
{
"baseTimestamp": 1774387648,
"baseTimestamp": 1775028919,
"contractsDiscoDriven": true,
"hasDiscoUi": true,
"isDiscoDriven": true,
"permissionsDiscoDriven": true
}
+368 -264
+16 -2
[
{
"address": "0xc5c5D157928BDBD2ACf6d0777626b6C75a9EAEDC",
"sinceTimestamp": 1741879559,
"tokens": [
"ETH"
],
"contract": {
"isVerified": true,
"address": "eth:0xc5c5D157928BDBD2ACf6d0777626b6C75a9EAEDC",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x783A434532Ee94667979213af1711505E8bFE374"
],
"implementations": [
"eth:0x215A5fF85308A72A772F09B520dA71D3520e9aC7"
"eth:0x2c431080Fc733E259654f3b91E39468d9A85Ac9b"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1741879583,
"transactionHash": "0x7411775e32485632423395def2883f19e3a11c66c88c57f08d9975a927e2b166",
"implementations": [
"eth:0x6322C2f2D6a4305Fc033754d486A5A067Ee5F9b1"
]
},
{
"timestamp": 1741879583,
"transactionHash": "0x381b707419ae79c88d6fa34ec819396c80ba54f489d47d10ff85c4285b64e447",
"implementations": [
"eth:0x3Da872782f9fB696fD72Af2ec9313a56bDA6f06d"
]
},
{
"timestamp": 1751883851,
"transactionHash": "0x14663947fe932e8ad6d57fe9aa61910d8d2e5fc37ac5e16e4345c3f8e2f7b2d2",
"implementations": [
"eth:0xBeD463769920dAc19a7E2aDf47B6C6Bb6480bD97"
]
},
{
"timestamp": 1751884031,
"transactionHash": "0xa9816c6dcbbe126e3b5c56f26ecfeebcb2dc03ab78535a7d5ed2bcdeea7ccf39",
"implementations": [
"eth:0x215A5fF85308A72A772F09B520dA71D3520e9aC7"
]
},
{
"timestamp": 1774940723,
"transactionHash": "0x66a97a8a6934d37b3ed077e788fb02fbce53e02ad7d95d3159ba6347ede395c8",
"implementations": [
"eth:0x661DfA933f77148Dc8d84b06646a2868D7ae5DeB"
]
},
{
"timestamp": 1774940891,
"transactionHash": "0xce8f5d953104dbe1a793fdcf76a16290f1c8765f87fcef729c2ad7e2e95a07dc",
"implementations": [
"eth:0x2c431080Fc733E259654f3b91E39468d9A85Ac9b"
]
}
],
"description": "Main entry point for users depositing ETH.",
"upgradableBy": [
{
"name": "ProxyAdmin",
"delay": "no"
}
],
"url": "https://etherscan.io/address/0xc5c5D157928BDBD2ACf6d0777626b6C75a9EAEDC#code"
},
"chain": "ethereum",
"includeInTotal": true,
"chainId": 1
},
{
"address": "0x9C4955b92F34148dbcfDCD82e9c9eCe5CF2badfe",
"sinceTimestamp": 1741879559,
"tokens": "*",
"contract": {
"isVerified": true,
"address": "eth:0x9C4955b92F34148dbcfDCD82e9c9eCe5CF2badfe",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x783A434532Ee94667979213af1711505E8bFE374"
],
"implementations": [
"eth:0x28841965B26d41304905A836Da5C0921DA7dBB84"
"eth:0xfA707F45A23370d9154AF4457401274E38FA2d8A"
]
},
"chain": "ethereum",
"pastUpgrades": [],
"description": "Main entry point for users depositing ERC20 token that do not require custom gateway.",
"upgradableBy": [
{
"name": "ProxyAdmin",
"delay": "no"
}
],
"url": "https://etherscan.io/address/0x9C4955b92F34148dbcfDCD82e9c9eCe5CF2badfe#code"
},
"chain": "ethereum",
"includeInTotal": true,
"chainId": 1
}
]
+2 -2
[
{
"layer": {
"value": "EigenDA",
"sentiment": "warning",
"description": "The data is posted to EigenDA which is a separate data availability layer developed by the Eigenlayer team. Only commitments to the data are published on an onchain inbox.",
"projectId": "eigenda"
},
"bridge": {
"value": "DACert Verifier",
"sentiment": "warning",
"description": "EigenDA V2 certificates are verified by the proof system through the DACert Verifier contract, which validates certificates against operator signatures and stake thresholds.",
"projectId": "eigenda-v2"
"description": "EigenDA V3 certificates are verified by the proof system through the DACert Verifier contract, which validates certificates against operator signatures and stake thresholds.",
"projectId": "eigenda-v3"
},
"mode": {
"value": "Transaction data",
"secondLine": "Compressed"
}
}
]
+4 -4
{
"architectureImage": "celo",
"dataAvailability": [
{
"name": "Data is posted to EigenDA",
"description": "Transactions roots are posted onchain and the full data is posted on EigenDA. The sequencer is publishing data to EigenDA v2. The DACert Verifier is used to verify attestations from the EigenDA operator set that the data is indeed available. If EigenDA becomes unavailable, the sequencer falls back to Ethereum.",
"risks": [
{
"category": "Funds can be lost if",
"text": "the sequencer posts an unavailable transaction root.",
"isCritical": true
},
{
"category": "Funds can be lost if",
"text": "the data is not available on the external provider.",
"isCritical": true
}
],
"references": [
{
"title": "EigenDA Docs - Overview",
"url": "https://docs.eigenda.xyz/overview"
},
{
"title": "Derivation: Batch submission - OP Mainnet specs",
"url": "https://github.com/ethereum-optimism/specs/blob/main/specs/protocol/derivation.md#batch-submission"
},
{
"title": "BatchInbox - address",
"url": "https://etherscan.io/address/0xff00000000000000000000000000000000042220#code"
},
{
"title": "OptimismPortal2.sol - source code, depositTransaction function",
"url": "https://etherscan.io/address/0x215A5fF85308A72A772F09B520dA71D3520e9aC7#code"
"url": "https://etherscan.io/address/0x2c431080Fc733E259654f3b91E39468d9A85Ac9b#code"
}
]
}
],
"exitMechanisms": [
{
"name": "Regular exits",
"description": "The user initiates the withdrawal by submitting a regular transaction on this chain. When a state root containing such transaction is settled, the funds become available for withdrawal on L1 after 3d 12h. Withdrawal inclusion can be proven before state root settlement, but a 7d period has to pass before it becomes actionable. The process of state root settlement takes a challenge period of at least 3d 12h to complete. Finally the user submits an L1 transaction to claim the funds. This transaction requires a merkle proof.",
"risks": [],
"references": [
{
"title": "OptimismPortal2.sol - Etherscan source code, proveWithdrawalTransaction function",
"url": "https://etherscan.io/address/0x215A5fF85308A72A772F09B520dA71D3520e9aC7#code"
"url": "https://etherscan.io/address/0x2c431080Fc733E259654f3b91E39468d9A85Ac9b#code"
},
{
"title": "OptimismPortal2.sol - Etherscan source code, finalizeWithdrawalTransaction function",
"url": "https://etherscan.io/address/0x215A5fF85308A72A772F09B520dA71D3520e9aC7#code"
"url": "https://etherscan.io/address/0x2c431080Fc733E259654f3b91E39468d9A85Ac9b#code"
}
]
},
{
"name": "Forced messaging",
"description": "If the user experiences censorship from the operator with regular L2->L1 messaging they can submit their messages directly on L1. The system is then obliged to service this request or halt all messages, including forced withdrawals from L1 and regular messages initiated on L2. Once the force operation is submitted and if the request is serviced, the operation follows the flow of a regular message.",
"risks": [],
"references": [
{
"title": "Forced withdrawal from an OP Stack blockchain",
"url": "https://docs.optimism.io/stack/transactions/forced-transaction"
}
]
}
],
"forceTransactions": {
"name": "Users can force any transaction",
"description": "Because the state of the system is based on transactions submitted on the underlying host chain and anyone can submit their transactions there it allows the users to circumvent censorship by interacting with the smart contract on the host chain directly.",
"risks": [],
"references": [
{
"title": "Sequencing Window - OP Mainnet Specs",
"url": "https://github.com/ethereum-optimism/optimism/blob/51eeb76efeb32b3df3e978f311188aa29f5e3e94/specs/glossary.md#sequencing-window"
},
{
"title": "OptimismPortal2.sol - source code, depositTransaction function",
"url": "https://etherscan.io/address/0x215A5fF85308A72A772F09B520dA71D3520e9aC7#code"
"url": "https://etherscan.io/address/0x2c431080Fc733E259654f3b91E39468d9A85Ac9b#code"
}
]
},
"operator": {
"name": "The system has a centralized operator",
"description": "The operator is the only entity that can propose blocks. A live and trustworthy operator is vital to the health of the system.",
"risks": [
{
"category": "MEV can be extracted if",
"text": "the operator exploits their centralized position and frontruns user transactions."
}
],
"references": []
},
"otherConsiderations": [
{
"name": "EVM compatible smart contracts are supported",
"description": "OP stack chains are pursuing the EVM Equivalence model. No changes to smart contracts are required regardless of the language they are written in, i.e. anything deployed on L1 can be deployed on L2.",
"risks": [],
"references": [
{
"title": "Introducing EVM Equivalence",
"url": "https://medium.com/ethereum-optimism/introducing-evm-equivalence-5c2021deb306"
}
]
}
],
"stateValidation": {
"categories": [
{
"title": "Fraud proofs",
"description": "State roots are proposed by whitelisted proposers who create dispute games via the DisputeGameFactory by posting a bond of 0.01 ETH. Once created, the game enters a challenge period of 3d 12h during which whitelisted challengers can dispute the proposal by posting a bond of 0.01 ETH. If challenged, anyone can submit a ZK proof to prove the correct state within the proving period of 1d. After the challenge period passes without a successful challenge, or after a valid proof is submitted, anyone can resolve the game and finalize the state root.",
"references": [
{
"url": "https://succinctlabs.github.io/op-succinct/fault_proofs/fault_proof_architecture.html",
"title": "OP Succinct Lite architecture"
},
{
"url": "https://docs.celo.org/home/protocol/challengers",
"title": "Celo Challengers"
}
],
"risks": [
{
"category": "Funds can be stolen if",
"text": "the validity proof cryptography is broken or implemented incorrectly."
},
{
"category": "Funds can be stolen if",
"text": "the proposer routes proof verification through a malicious or faulty verifier."
},
{
"category": "Funds can be frozen if",
"text": "the permissioned proposer fails to publish state roots to the L1."
}
]
}
]
}
}
+96 -151
{
"ethereum": {
"roles": [
{
"id": "Challenger",
"name": "Challenger",
"description": "Allowed to challenge or delete state roots proposed by a Proposer.",
"accounts": [
{
"address": "eth:0x53E8EEAAE0731CCc888513695eC1Bd792ec975Ca",
"type": "EOA",
"isVerified": true,
"name": "EOA 4",
"url": "#EOA-4,-EOA-5,-EOA-6,-EOA-7,-EOA-10-and-EOA-11"
"name": "EOA 3",
"url": "#EOA-3,-EOA-4,-EOA-5,-EOA-6,-EOA-8-and-EOA-9"
},
{
"address": "eth:0x56966549e0953e8d6E17Fcd3278b003d81f58cA8",
"type": "EOA",
"isVerified": true,
"name": "EOA 5",
"url": "#EOA-4,-EOA-5,-EOA-6,-EOA-7,-EOA-10-and-EOA-11"
"name": "EOA 4",
"url": "#EOA-3,-EOA-4,-EOA-5,-EOA-6,-EOA-8-and-EOA-9"
},
{
"address": "eth:0x7247204E46B381149d99acF88b318713fE12c32f",
"type": "EOA",
"isVerified": true,
"name": "EOA 6",
"url": "#EOA-4,-EOA-5,-EOA-6,-EOA-7,-EOA-10-and-EOA-11"
"name": "EOA 5",
"url": "#EOA-3,-EOA-4,-EOA-5,-EOA-6,-EOA-8-and-EOA-9"
},
{
"address": "eth:0x77E831A0A6a680335BB54937E085fF625dfE3f6F",
"type": "EOA",
"isVerified": true,
"name": "EOA 7",
"url": "#EOA-4,-EOA-5,-EOA-6,-EOA-7,-EOA-10-and-EOA-11"
"name": "EOA 6",
"url": "#EOA-3,-EOA-4,-EOA-5,-EOA-6,-EOA-8-and-EOA-9"
},
{
"address": "eth:0xc6E6836CaCB6fF0a843050DB7F64bb2ab864C463",
"type": "EOA",
"isVerified": true,
"name": "EOA 10",
"url": "#EOA-4,-EOA-5,-EOA-6,-EOA-7,-EOA-10-and-EOA-11"
"name": "EOA 8",
"url": "#EOA-3,-EOA-4,-EOA-5,-EOA-6,-EOA-8-and-EOA-9"
},
{
"address": "eth:0xe4ce4999b1C4C60C384AC96f370F00796ae9eC78",
"type": "EOA",
"isVerified": true,
"name": "EOA 11",
"url": "#EOA-4,-EOA-5,-EOA-6,-EOA-7,-EOA-10-and-EOA-11"
"name": "EOA 9",
"url": "#EOA-3,-EOA-4,-EOA-5,-EOA-6,-EOA-8-and-EOA-9"
}
],
"chain": "ethereum",
"discoveryDrivenData": true
},
{
"id": "Guardian",
"name": "Guardian",
"description": "Allowed to pause withdrawals. In op stack systems with a proof system, the Guardian can also blacklist dispute games and set the respected game type (permissioned / permissionless).\n* OpFoundationUpgradeSafe has the role if the number of Optimism Security Council members falls below 8\n* SaferSafes has the role if the number of Optimism Security Council members falls below 8\n* Optimism EOA 1 has the role though restricted to the SuperchainConfig's `pause()` function",
"accounts": [
{
"address": "eth:0x847B5c174615B1B7fDF770882256e2D3E95b9D92",
"type": "Contract",
"isVerified": true,
"name": "OpFoundationUpgradeSafe",
"url": "#OpFoundationUpgradeSafe"
},
{
"address": "eth:0xA8447329e52F64AED2bFc9E7a2506F7D369f483a",
"type": "Contract",
"isVerified": true,
"name": "SaferSafes",
"url": "#SaferSafes"
},
{
"address": "eth:0xc2819DC788505Aac350142A7A707BF9D03E3Bd03",
"type": "Contract",
"isVerified": true,
"name": "Optimism Security Council",
"url": "#Optimism Security Council"
},
{
"address": "eth:0x352f1defB49718e7Ea411687E850aA8d6299F7aC",
"type": "EOA",
"isVerified": true,
"name": "Optimism EOA 1",
"url": "#Optimism-EOA-1"
},
{
"address": "eth:0x6E226fa22e5F19363d231D3FA048aaBa73CC1f47",
"type": "EOA",
"isVerified": true,
"name": "EOA 2",
"url": "#EOA-2"
}
],
"chain": "ethereum",
"discoveryDrivenData": true
},
{
"id": "Proposer",
"name": "Proposer",
"description": "Allowed to post new state roots of the current layer to the host chain.",
"accounts": [
{
"address": "eth:0x0B7de3F505AD7Fc9b38207CD8E2Adc7a604BFe62",
"type": "EOA",
"isVerified": true,
"name": "EOA 3",
"url": "#EOA-3-and-EOA-8"
"name": "EOA 2",
"url": "#EOA-2-and-EOA-7"
},
{
"address": "eth:0x79D14553D6B3484F5612272B43c219A882415d33",
"type": "EOA",
"isVerified": true,
"name": "EOA 8",
"url": "#EOA-3-and-EOA-8"
"name": "EOA 7",
"url": "#EOA-2-and-EOA-7"
}
],
"chain": "ethereum",
"discoveryDrivenData": true
},
{
"id": "Sequencer",
"name": "Sequencer",
"description": "Allowed to commit transactions from the current layer to the host chain.",
"accounts": [
{
"address": "eth:0x0cd08c7f7A96AA9635f761b49216B9eA74C5cA60",
"type": "EOA",
"isVerified": true,
"name": "EOA 1",
"url": "#EOA-1"
}
],
"chain": "ethereum",
"discoveryDrivenData": true
}
],
"actors": [
{
"id": "CeloProxyAdminOwner",
"name": "CeloProxyAdminOwner",
"description": "A Multisig with 2/2 threshold. \n* Can upgrade **with no delay**\n * Celo native asset Token [via: ProxyAdmin]\n * L1CrossDomainMessenger [via: ProxyAdmin]\n * L1ERC721Bridge [via: ProxyAdmin]\n * OptimismMintableERC20Factory [via: ProxyAdmin]\n * SystemConfig [via: ProxyAdmin]\n * DelayedWETH [via: ProxyAdmin]\n * L1StandardBridge [via: ProxyAdmin]\n * AnchorStateRegistry [via: ProxyAdmin]\n * DelayedWETH [via: ProxyAdmin]\n * SuperchainConfigLocal [via: ProxyAdmin]\n * OptimismPortal2 [via: ProxyAdmin]\n * DisputeGameFactory [via: ProxyAdmin]\n* Can interact with AddressManager\n * set and change address mappings [via: ProxyAdmin]\n* Can interact with SystemConfig\n * it can update the preconfer address, the batch submitter (Sequencer) address and the gas configuration of the system \n* Can interact with DelayedWETH\n * can pull funds from the contract in case of emergency ",
"description": "A Multisig with 2/2 threshold. \n* Can upgrade **with no delay**\n * Celo native asset Token [via: ProxyAdmin]\n * L1CrossDomainMessenger [via: ProxyAdmin]\n * CeloSuperchainConfig [via: ProxyAdmin]\n * L1ERC721Bridge [via: ProxyAdmin]\n * OptimismMintableERC20Factory [via: ProxyAdmin]\n * SystemConfig [via: ProxyAdmin]\n * AnchorStateRegistry [via: ProxyAdmin]\n * DelayedWETH [via: ProxyAdmin]\n * L1StandardBridge [via: ProxyAdmin]\n * OptimismPortal2 [via: ProxyAdmin]\n * DelayedWETH [via: ProxyAdmin]\n * DisputeGameFactory [via: ProxyAdmin]\n* Can interact with AddressManager\n * set and change address mappings [via: ProxyAdmin]",
"accounts": [
{
"address": "eth:0x4092A77bAF58fef0309452cEaCb09221e556E112",
"type": "Contract",
"isVerified": true,
"name": "0x4092…E112",
"url": "https://etherscan.io/address/0x4092A77bAF58fef0309452cEaCb09221e556E112"
}
],
"chain": "ethereum",
"references": [],
"participants": [
{
"address": "eth:0xC03172263409584f7860C25B6eB4985f0f6F4636",
"type": "Contract",
"isVerified": true,
"name": "Celo Security Council",
"url": "#Celo Security Council"
},
{
"address": "eth:0x9Eb44Da23433b5cAA1c87e35594D15FcEb08D34d",
"type": "Contract",
"isVerified": true,
"name": "Celo cLabs Multisig",
"url": "#Celo cLabs Multisig"
}
],
"discoveryDrivenData": true
},
{
"id": "Celo cLabs Multisig",
"name": "Celo cLabs Multisig",
"description": "A Multisig with 6/8 threshold. \nMember of CeloProxyAdminOwner.\n* Can interact with SystemConfig\n * it can update the preconfer address, the batch submitter (Sequencer) address and the gas configuration of the system ",
"accounts": [
{
"address": "eth:0x9Eb44Da23433b5cAA1c87e35594D15FcEb08D34d",
"type": "Contract",
"isVerified": true,
"name": "0x9Eb4…D34d",
"url": "https://etherscan.io/address/0x9Eb44Da23433b5cAA1c87e35594D15FcEb08D34d"
}
],
"chain": "ethereum",
"references": [],
"participants": [
{
"address": "eth:0x0Bd06B2b192BD9eC316f2880A0c296D9Bc3225e0",
"type": "EOA",
"isVerified": true,
"name": "0x0Bd0…25e0",
"url": "https://etherscan.io/address/0x0Bd06B2b192BD9eC316f2880A0c296D9Bc3225e0"
},
{
"address": "eth:0x21e595451bDD69a85cf946f37f5A6A356C3F875D",
"type": "EOA",
"isVerified": true,
"name": "0x21e5…875D",
"url": "https://etherscan.io/address/0x21e595451bDD69a85cf946f37f5A6A356C3F875D"
},
{
"address": "eth:0x09c0B069100F5d880a596605b94Cc9493D96e797",
"type": "EOA",
"isVerified": true,
"name": "0x09c0…e797",
"url": "https://etherscan.io/address/0x09c0B069100F5d880a596605b94Cc9493D96e797"
},
{
"address": "eth:0x812f7C111476D45998e6D0C615B41c180C362263",
"type": "EOA",
"isVerified": true,
"name": "0x812f…2263",
"url": "https://etherscan.io/address/0x812f7C111476D45998e6D0C615B41c180C362263"
},
{
"address": "eth:0x74bc9E59B52117Ccf5Ee457cFb0CBE83b339A065",
"type": "EOA",
"isVerified": true,
"name": "0x74bc…A065",
"url": "https://etherscan.io/address/0x74bc9E59B52117Ccf5Ee457cFb0CBE83b339A065"
},
{
"address": "eth:0x4D89adf3a4a71b25FB1a6D702Cf059CF5BebD02d",
"type": "EOA",
"isVerified": true,
"name": "0x4D89…D02d",
"url": "https://etherscan.io/address/0x4D89adf3a4a71b25FB1a6D702Cf059CF5BebD02d"
},
{
"address": "eth:0x8b4b85f78F799F8364198FFEd2266d3cb3EA0daE",
"type": "EOA",
"isVerified": true,
"name": "0x8b4b…0daE",
"url": "https://etherscan.io/address/0x8b4b85f78F799F8364198FFEd2266d3cb3EA0daE"
},
{
"address": "eth:0xE0024dCadff414fCb0AAfBB475e92Ccc367E1A84",
"type": "EOA",
"isVerified": true,
"name": "0xE002…1A84",
"url": "https://etherscan.io/address/0xE0024dCadff414fCb0AAfBB475e92Ccc367E1A84"
}
],
"discoveryDrivenData": true
},
{
"id": "OpFoundationUpgradeSafe",
"name": "OpFoundationUpgradeSafe",
"description": "A Multisig with 5/7 threshold. It uses the following modules: SaferSafes (A Gnosis Safe module combining LivenessModule and TimelockGuard. Provides liveness checks where a fallback owner can challenge and take over if Safe owners are unresponsive, plus optional timelock delays for transaction scheduling).\nMember of SuperchainProxyAdminOwner.\n* A Guardian LivenessModule if the number of Optimism Security Council members falls below 8 → Optimism Security Council → Optimism Guardian Multisig",
"accounts": [
{
"address": "eth:0x847B5c174615B1B7fDF770882256e2D3E95b9D92",
"type": "Contract",
"isVerified": true,
"name": "0x847B…9D92",
"url": "https://etherscan.io/address/0x847B5c174615B1B7fDF770882256e2D3E95b9D92"
}
],
"chain": "ethereum",
"references": [],
"participants": [
{
"address": "eth:0x6419F81580343DF023E68715C6e269aFb00a2cc7",
"type": "EOA",
"isVerified": true,
"name": "0x6419…2cc7",
"url": "https://etherscan.io/address/0x6419F81580343DF023E68715C6e269aFb00a2cc7"
},
{
"address": "eth:0x3041BA32f451F5850c147805F5521AC206421623",
"type": "EOA",
"isVerified": true,
"name": "0x3041…1623",
"url": "https://etherscan.io/address/0x3041BA32f451F5850c147805F5521AC206421623"
},
{
"address": "eth:0xC2Db495f5a1F91172A361AAFA6FdE47c41de6dF5",
"type": "EOA",
"isVerified": true,
"name": "0xC2Db…6dF5",
"url": "https://etherscan.io/address/0xC2Db495f5a1F91172A361AAFA6FdE47c41de6dF5"
},
{
"address": "eth:0xBF93D4d727F7Ba1F753E1124C3e532dCb04Ea2c8",
"type": "EOA",
"isVerified": true,
"name": "0xBF93…a2c8",
"url": "https://etherscan.io/address/0xBF93D4d727F7Ba1F753E1124C3e532dCb04Ea2c8"
},
{
"address": "eth:0x4D014f3c5F33Aa9Cd1Dc29ce29618d07Ae666d15",
"type": "EOA",
"isVerified": true,
"name": "0x4D01…6d15",
"url": "https://etherscan.io/address/0x4D014f3c5F33Aa9Cd1Dc29ce29618d07Ae666d15"
},
{
"address": "eth:0x69acfE2096Dfb8d5A041eF37693553c48d9BFd02",
"type": "EOA",
"isVerified": true,
"name": "0x69ac…Fd02",
"url": "https://etherscan.io/address/0x69acfE2096Dfb8d5A041eF37693553c48d9BFd02"
},
{
"address": "eth:0xc222ab08333109243B1f4E2a80e3D0A190714AB5",
"type": "EOA",
"isVerified": true,
"name": "0xc222…4AB5",
"url": "https://etherscan.io/address/0xc222ab08333109243B1f4E2a80e3D0A190714AB5"
}
],
"discoveryDrivenData": true
},
{
"id": "SuperchainConfig",
"name": "SuperchainConfig",
"accounts": [
{
"address": "eth:0x95703e0982140D16f8ebA6d158FccEde42f04a4C",
"type": "Contract",
"isVerified": true,
"name": "0x9570…4a4C",
"url": "https://etherscan.io/address/0x95703e0982140D16f8ebA6d158FccEde42f04a4C"
}
],
"chain": "ethereum",
"description": "Used to manage global configuration values for multiple OP Chains within a single Superchain network. The SuperchainConfig contract manages individual pause states for each chain connected to it, as well as a global pause state for all chains. The guardian role can pause either separately, but each pause expires after 3 months if left untouched.\n* Can interact with SuperchainConfigLocal\n * act as an override that pauses the SuperchainConfigLocal ",
"discoveryDrivenData": true
},
{
"id": "SaferSafes",
"name": "SaferSafes",
"accounts": [
{
"address": "eth:0xA8447329e52F64AED2bFc9E7a2506F7D369f483a",
"type": "Contract",
"isVerified": true,
"name": "0xA844…483a",
"url": "https://etherscan.io/address/0xA8447329e52F64AED2bFc9E7a2506F7D369f483a"
}
],
"chain": "ethereum",
"description": "A Gnosis Safe module combining LivenessModule and TimelockGuard. Provides liveness checks where a fallback owner can challenge and take over if Safe owners are unresponsive, plus optional timelock delays for transaction scheduling.\n* A Guardian OpFoundationUpgradeSafe → LivenessModule if the number of Optimism Security Council members falls below 8 → Optimism Security Council → Optimism Guardian Multisig",
"discoveryDrivenData": true
},
{
"id": "Optimism Security Council",
"name": "Optimism Security Council",
"description": "A Multisig with 10/13 threshold. It uses the following modules: LivenessModule (used to remove members inactive for 3mo 8d while making sure that the threshold remains above 75%. If the number of members falls below 8, the OpFoundationUpgradeSafe takes ownership of the multisig).\nMember of Optimism Guardian Multisig, SuperchainProxyAdminOwner.\n* A Guardian Optimism Guardian Multisig",
"accounts": [
{
"address": "eth:0xc2819DC788505Aac350142A7A707BF9D03E3Bd03",
"type": "Contract",
"isVerified": true,
"name": "0xc281…Bd03",
"url": "https://etherscan.io/address/0xc2819DC788505Aac350142A7A707BF9D03E3Bd03"
}
],
"chain": "ethereum",
"references": [],
"participants": [
{
"address": "eth:0xE61F12136bA47De67D15a1D59fE2f383ec5176aE",
"type": "EOA",
"isVerified": true,
"name": "0xE61F…76aE",
"url": "https://etherscan.io/address/0xE61F12136bA47De67D15a1D59fE2f383ec5176aE"
},
{
"address": "eth:0x652BC529E171847E2fFddCeA13567643C84ccB5f",
"type": "EOA",
"isVerified": true,
"name": "0x652B…cB5f",
"url": "https://etherscan.io/address/0x652BC529E171847E2fFddCeA13567643C84ccB5f"
},
{
"address": "eth:0x5c1f9E9384Ca9fE0499277F6a015a2ac0A317a81",
"type": "EOA",
"isVerified": true,
"name": "0x5c1f…7a81",
"url": "https://etherscan.io/address/0x5c1f9E9384Ca9fE0499277F6a015a2ac0A317a81"
},
{
"address": "eth:0x4A7322258c9E690e4CB8Cea6e5251443E956e61E",
"type": "EOA",
"isVerified": true,
"name": "0x4A73…e61E",
"url": "https://etherscan.io/address/0x4A7322258c9E690e4CB8Cea6e5251443E956e61E"
},
{
"address": "eth:0x3A53B4B081Eb7Cb00C46497b16Ea22e65E4Faa94",
"type": "EOA",
"isVerified": true,
"name": "0x3A53…aa94",
"url": "https://etherscan.io/address/0x3A53B4B081Eb7Cb00C46497b16Ea22e65E4Faa94"
},
{
"address": "eth:0xEF9A98511939eEe6Ec69af62082E3F2ff606877c",
"type": "EOA",
"isVerified": true,
"name": "0xEF9A…877c",
"url": "https://etherscan.io/address/0xEF9A98511939eEe6Ec69af62082E3F2ff606877c"
},
{
"address": "eth:0x6323ef2b80030f3fBc508bFc321Fc71fDB95c865",
"type": "EOA",
"isVerified": true,
"name": "0x6323…c865",
"url": "https://etherscan.io/address/0x6323ef2b80030f3fBc508bFc321Fc71fDB95c865"
},
{
"address": "eth:0xd5b735b676A043a53946C3b6F6BE28c1ECE6aC90",
"type": "EOA",
"isVerified": true,
"name": "0xd5b7…aC90",
"url": "https://etherscan.io/address/0xd5b735b676A043a53946C3b6F6BE28c1ECE6aC90"
},
{
"address": "eth:0x7ed8d9Af9eaA194D1A75C67c1475579E42289E39",
"type": "EOA",
"isVerified": true,
"name": "0x7ed8…9E39",
"url": "https://etherscan.io/address/0x7ed8d9Af9eaA194D1A75C67c1475579E42289E39"
},
{
"address": "eth:0x0aA384EB2fedD2741277A0f72909A0d7275575D7",
"type": "EOA",
"isVerified": true,
"name": "0x0aA3…75D7",
"url": "https://etherscan.io/address/0x0aA384EB2fedD2741277A0f72909A0d7275575D7"
},
{
"address": "eth:0x0a8742365a7EB0A3698293ac54357B5Ac04cefE6",
"type": "EOA",
"isVerified": true,
"name": "0x0a87…efE6",
"url": "https://etherscan.io/address/0x0a8742365a7EB0A3698293ac54357B5Ac04cefE6"
},
{
"address": "eth:0xbfA046B0bc5cEa1596be62B8b3f79f9f41f1E0d9",
"type": "EOA",
"isVerified": true,
"name": "0xbfA0…E0d9",
"url": "https://etherscan.io/address/0xbfA046B0bc5cEa1596be62B8b3f79f9f41f1E0d9"
},
{
"address": "eth:0x92827223f6b397CE9F208eE352bacA710765cACb",
"type": "EOA",
"isVerified": true,
"name": "0x9282…cACb",
"url": "https://etherscan.io/address/0x92827223f6b397CE9F208eE352bacA710765cACb"
}
],
"discoveryDrivenData": true
},
{
"id": "SuperchainProxyAdminOwner",
"name": "SuperchainProxyAdminOwner",
"description": "A Multisig with 2/2 threshold. \n* Can upgrade **with no delay**\n * SuperchainConfig [via: SuperchainProxyAdmin]\n* Can interact with AddressManager\n * set and change address mappings [via: SuperchainProxyAdmin]",
"accounts": [
{
"address": "eth:0x5a0Aae59D09fccBdDb6C6CcEB07B7279367C3d2A",
"type": "Contract",
"isVerified": true,
"name": "0x5a0A…3d2A",
"url": "https://etherscan.io/address/0x5a0Aae59D09fccBdDb6C6CcEB07B7279367C3d2A"
}
],
"chain": "ethereum",
"references": [],
"participants": [
{
"address": "eth:0x847B5c174615B1B7fDF770882256e2D3E95b9D92",
"type": "Contract",
"isVerified": true,
"name": "OpFoundationUpgradeSafe",
"url": "#OpFoundationUpgradeSafe"
},
{
"address": "eth:0xc2819DC788505Aac350142A7A707BF9D03E3Bd03",
"type": "Contract",
"isVerified": true,
"name": "Optimism Security Council",
"url": "#Optimism Security Council"
}
],
"discoveryDrivenData": true
},
{
"id": "LivenessGuard",
"name": "LivenessGuard",
"accounts": [
{
"address": "eth:0x24424336F04440b1c28685a38303aC33C9D14a25",
"type": "Contract",
"isVerified": true,
"name": "0x2442…4a25",
"url": "https://etherscan.io/address/0x24424336F04440b1c28685a38303aC33C9D14a25"
}
],
"chain": "ethereum",
"description": "Modular contract to be used together with the LivenessModule. Tracks liveness / activity of Safe owners.\n* Can interact with LivenessModule\n * can remove members of Optimism Security Council inactive for 3mo 8d ",
"discoveryDrivenData": true
},
{
"id": "SP1VerifierGatewayMultisig",
"name": "SP1VerifierGatewayMultisig",
"description": "A Multisig with 2/3 threshold. \n* Can interact with SP1VerifierGateway\n * affect the liveness and safety of the gateway - can transfer ownership, add and freeze verifier routes ",
"accounts": [
{
"address": "eth:0xCafEf00d348Adbd57c37d1B77e0619C6244C6878",
"type": "Contract",
"isVerified": true,
"name": "0xCafE…6878",
"url": "https://etherscan.io/address/0xCafEf00d348Adbd57c37d1B77e0619C6244C6878"
}
],
"chain": "ethereum",
"references": [],
"participants": [
{
"address": "eth:0xBaB2c2aF5b91695e65955DA60d63aD1b2aE81126",
"type": "EOA",
"isVerified": true,
"name": "0xBaB2…1126",
"url": "https://etherscan.io/address/0xBaB2c2aF5b91695e65955DA60d63aD1b2aE81126"
},
{
"address": "eth:0x72Ff26D9517324eEFA89A48B75c5df41132c4f54",
"type": "EOA",
"isVerified": true,
"name": "0x72Ff…4f54",
"url": "https://etherscan.io/address/0x72Ff26D9517324eEFA89A48B75c5df41132c4f54"
},
{
"address": "eth:0x9395e83720bf2D8ac6435f9c520b48E289Cb8885",
"type": "EOA",
"isVerified": true,
"name": "0x9395…8885",
"url": "https://etherscan.io/address/0x9395e83720bf2D8ac6435f9c520b48E289Cb8885"
}
],
"discoveryDrivenData": true
},
{
"id": "Optimism Guardian Multisig",
"name": "Optimism Guardian Multisig",
"description": "A Multisig with 1/1 threshold. It uses the following modules: DeputyPauseModule (Allows 0x352f1defB49718e7Ea411687E850aA8d6299F7aC, called the deputy pauser, to act on behalf of the OpFoundationUpgradeSafe if set as its Safe module).",
"accounts": [
{
"address": "eth:0x09f7150D8c019BeF34450d6920f6B3608ceFdAf2",
"type": "Contract",
"isVerified": true,
"name": "0x09f7…dAf2",
"url": "https://etherscan.io/address/0x09f7150D8c019BeF34450d6920f6B3608ceFdAf2"
}
],
"chain": "ethereum",
"references": [],
"participants": [
{
"address": "eth:0xc2819DC788505Aac350142A7A707BF9D03E3Bd03",
"type": "Contract",
"isVerified": true,
"name": "Optimism Security Council",
"url": "#Optimism Security Council"
}
],
"discoveryDrivenData": true
},
{
"id": "Celo cLabs Multisig",
"name": "Celo cLabs Multisig",
"description": "A Multisig with 6/8 threshold. \nMember of CeloProxyAdminOwner.\n",
"accounts": [
{
"address": "eth:0x9Eb44Da23433b5cAA1c87e35594D15FcEb08D34d",
"type": "Contract",
"isVerified": true,
"name": "0x9Eb4…D34d",
"url": "https://etherscan.io/address/0x9Eb44Da23433b5cAA1c87e35594D15FcEb08D34d"
}
],
"chain": "ethereum",
"references": [],
"participants": [
{
"address": "eth:0x0Bd06B2b192BD9eC316f2880A0c296D9Bc3225e0",
"type": "EOA",
"isVerified": true,
"name": "0x0Bd0…25e0",
"url": "https://etherscan.io/address/0x0Bd06B2b192BD9eC316f2880A0c296D9Bc3225e0"
},
{
"address": "eth:0x21e595451bDD69a85cf946f37f5A6A356C3F875D",
"type": "EOA",
"isVerified": true,
"name": "0x21e5…875D",
"url": "https://etherscan.io/address/0x21e595451bDD69a85cf946f37f5A6A356C3F875D"
},
{
"address": "eth:0x09c0B069100F5d880a596605b94Cc9493D96e797",
"type": "EOA",
"isVerified": true,
"name": "0x09c0…e797",
"url": "https://etherscan.io/address/0x09c0B069100F5d880a596605b94Cc9493D96e797"
},
{
"address": "eth:0x812f7C111476D45998e6D0C615B41c180C362263",
"type": "EOA",
"isVerified": true,
"name": "0x812f…2263",
"url": "https://etherscan.io/address/0x812f7C111476D45998e6D0C615B41c180C362263"
},
{
"address": "eth:0x74bc9E59B52117Ccf5Ee457cFb0CBE83b339A065",
"type": "EOA",
"isVerified": true,
"name": "0x74bc…A065",
"url": "https://etherscan.io/address/0x74bc9E59B52117Ccf5Ee457cFb0CBE83b339A065"
},
{
"address": "eth:0x4D89adf3a4a71b25FB1a6D702Cf059CF5BebD02d",
"type": "EOA",
"isVerified": true,
"name": "0x4D89…D02d",
"url": "https://etherscan.io/address/0x4D89adf3a4a71b25FB1a6D702Cf059CF5BebD02d"
},
{
"address": "eth:0x8b4b85f78F799F8364198FFEd2266d3cb3EA0daE",
"type": "EOA",
"isVerified": true,
"name": "0x8b4b…0daE",
"url": "https://etherscan.io/address/0x8b4b85f78F799F8364198FFEd2266d3cb3EA0daE"
},
{
"address": "eth:0xE0024dCadff414fCb0AAfBB475e92Ccc367E1A84",
"type": "EOA",
"isVerified": true,
"name": "0xE002…1A84",
"url": "https://etherscan.io/address/0xE0024dCadff414fCb0AAfBB475e92Ccc367E1A84"
}
],
"discoveryDrivenData": true
},
{
"id": "Celo Security Council",
"name": "Celo Security Council",
"description": "A Multisig with 6/8 threshold. \nMember of CeloProxyAdminOwner.\n",
"accounts": [
{
"address": "eth:0xC03172263409584f7860C25B6eB4985f0f6F4636",
"type": "Contract",
"isVerified": true,
"name": "0xC031…4636",
"url": "https://etherscan.io/address/0xC03172263409584f7860C25B6eB4985f0f6F4636"
}
],
"chain": "ethereum",
"references": [
{
"title": "Security Council members - Celo Docs",
"url": "https://docs.celo.org/home/protocol/security-council"
}
],
"participants": [
{
"address": "eth:0xB963047c5D875b7FE777339B1E6B61ac4df1f3e2",
"type": "EOA",
"isVerified": true,
"name": "0xB963…f3e2",
"url": "https://etherscan.io/address/0xB963047c5D875b7FE777339B1E6B61ac4df1f3e2"
},
{
"address": "eth:0x6FDb3eA186981aA32DD8e7B782d95733Ca3c13A1",
"type": "EOA",
"isVerified": true,
"name": "0x6FDb…13A1",
"url": "https://etherscan.io/address/0x6FDb3eA186981aA32DD8e7B782d95733Ca3c13A1"
},
{
"address": "eth:0xd0cE4D055d04bDA69b20815A3F796019bB68c6Db",
"type": "EOA",
"isVerified": true,
"name": "0xd0cE…c6Db",
"url": "https://etherscan.io/address/0xd0cE4D055d04bDA69b20815A3F796019bB68c6Db"
},
{
"address": "eth:0x148dfaC5dF51Ab1D7b02a3B53f1e2Da1F0A6B5Ca",
"type": "EOA",
"isVerified": true,
"name": "0x148d…B5Ca",
"url": "https://etherscan.io/address/0x148dfaC5dF51Ab1D7b02a3B53f1e2Da1F0A6B5Ca"
},
{
"address": "eth:0x5f70938aA8d2fd91EE3959998E5DdaACFb6Ffb85",
"type": "EOA",
"isVerified": true,
"name": "0x5f70…fb85",
"url": "https://etherscan.io/address/0x5f70938aA8d2fd91EE3959998E5DdaACFb6Ffb85"
},
{
"address": "eth:0xD1C635987B6Aa287361d08C6461491Fa9df087f2",
"type": "Contract",
"isVerified": true,
"name": "Safe",
"url": "https://etherscan.io/address/0xD1C635987B6Aa287361d08C6461491Fa9df087f2"
},
{
"address": "eth:0x2BE5E223E368E8c0f404a1f3Eb4eB09f99C8FaD8",
"type": "EOA",
"isVerified": true,
"name": "0x2BE5…FaD8",
"url": "https://etherscan.io/address/0x2BE5E223E368E8c0f404a1f3Eb4eB09f99C8FaD8"
},
{
"address": "eth:0xC91252606ff547d8B0345491CfABcCf0f6F0a29a",
"type": "EOA",
"isVerified": true,
"name": "0xC912…a29a",
"url": "https://etherscan.io/address/0xC91252606ff547d8B0345491CfABcCf0f6F0a29a"
}
],
"discoveryDrivenData": true
},
{
"id": "EOA-1",
"name": "EOA 1",
"accounts": [
{
"address": "eth:0x0cd08c7f7A96AA9635f761b49216B9eA74C5cA60",
"type": "EOA",
"isVerified": true,
"name": "0x0cd0…cA60",
"url": "https://etherscan.io/address/0x0cd08c7f7A96AA9635f761b49216B9eA74C5cA60"
}
],
"chain": "ethereum",
"description": "* A Sequencer - acting directly",
"discoveryDrivenData": true
},
{
"id": "Optimism-EOA-1",
"name": "Optimism EOA 1",
"accounts": [
{
"address": "eth:0x352f1defB49718e7Ea411687E850aA8d6299F7aC",
"type": "EOA",
"isVerified": true,
"name": "0x352f…F7aC",
"url": "https://etherscan.io/address/0x352f1defB49718e7Ea411687E850aA8d6299F7aC"
}
],
"chain": "ethereum",
"description": "* A Guardian DeputyPauseModule though restricted to the SuperchainConfig's `pause()` function → Optimism Guardian Multisig",
"discoveryDrivenData": true
},
{
"id": "EOA-2",
"name": "EOA 2",
"id": "EOA-2-and-EOA-7",
"name": "EOA 2 and EOA 7",
"accounts": [
{
"address": "eth:0x6E226fa22e5F19363d231D3FA048aaBa73CC1f47",
"type": "EOA",
"isVerified": true,
"name": "0x6E22…1f47",
"url": "https://etherscan.io/address/0x6E226fa22e5F19363d231D3FA048aaBa73CC1f47"
}
],
"chain": "ethereum",
"description": "* A Guardian - acting directly",
"discoveryDrivenData": true
},
{
"id": "EOA-3-and-EOA-8",
"name": "EOA 3 and EOA 8",
"accounts": [
{
"address": "eth:0x0B7de3F505AD7Fc9b38207CD8E2Adc7a604BFe62",
"type": "EOA",
"isVerified": true,
"name": "0x0B7d…Fe62",
"url": "https://etherscan.io/address/0x0B7de3F505AD7Fc9b38207CD8E2Adc7a604BFe62"
},
{
"address": "eth:0x79D14553D6B3484F5612272B43c219A882415d33",
"type": "EOA",
"isVerified": true,
"name": "0x79D1…5d33",
"url": "https://etherscan.io/address/0x79D14553D6B3484F5612272B43c219A882415d33"
}
],
"chain": "ethereum",
"description": "* A Proposer - acting directly",
"discoveryDrivenData": true
},
{
"id": "EOA-4,-EOA-5,-EOA-6,-EOA-7,-EOA-10-and-EOA-11",
"name": "EOA 4, EOA 5, EOA 6, EOA 7, EOA 10 and EOA 11",
"id": "EOA-3,-EOA-4,-EOA-5,-EOA-6,-EOA-8-and-EOA-9",
"name": "EOA 3, EOA 4, EOA 5, EOA 6, EOA 8 and EOA 9",
"accounts": [
{
"address": "eth:0x53E8EEAAE0731CCc888513695eC1Bd792ec975Ca",
"type": "EOA",
"isVerified": true,
"name": "0x53E8…75Ca",
"url": "https://etherscan.io/address/0x53E8EEAAE0731CCc888513695eC1Bd792ec975Ca"
},
{
"address": "eth:0x56966549e0953e8d6E17Fcd3278b003d81f58cA8",
"type": "EOA",
"isVerified": true,
"name": "0x5696…8cA8",
"url": "https://etherscan.io/address/0x56966549e0953e8d6E17Fcd3278b003d81f58cA8"
},
{
"address": "eth:0x7247204E46B381149d99acF88b318713fE12c32f",
"type": "EOA",
"isVerified": true,
"name": "0x7247…c32f",
"url": "https://etherscan.io/address/0x7247204E46B381149d99acF88b318713fE12c32f"
},
{
"address": "eth:0x77E831A0A6a680335BB54937E085fF625dfE3f6F",
"type": "EOA",
"isVerified": true,
"name": "0x77E8…3f6F",
"url": "https://etherscan.io/address/0x77E831A0A6a680335BB54937E085fF625dfE3f6F"
},
{
"address": "eth:0xc6E6836CaCB6fF0a843050DB7F64bb2ab864C463",
"type": "EOA",
"isVerified": true,
"name": "0xc6E6…C463",
"url": "https://etherscan.io/address/0xc6E6836CaCB6fF0a843050DB7F64bb2ab864C463"
},
{
"address": "eth:0xe4ce4999b1C4C60C384AC96f370F00796ae9eC78",
"type": "EOA",
"isVerified": true,
"name": "0xe4ce…eC78",
"url": "https://etherscan.io/address/0xe4ce4999b1C4C60C384AC96f370F00796ae9eC78"
}
],
"chain": "ethereum",
"description": "* A Challenger - acting directly",
"discoveryDrivenData": true
},
{
"id": "EOA-9",
"name": "EOA 9",
"accounts": [
{
"address": "eth:0xbcA67eE5188efc419c42C91156EcC888b20664f3",
"type": "EOA",
"isVerified": true,
"name": "0xbcA6…64f3",
"url": "https://etherscan.io/address/0xbcA67eE5188efc419c42C91156EcC888b20664f3"
}
],
"chain": "ethereum",
"description": "* Can interact with DelayedWETH\n * can pull funds from the contract in case of emergency ",
"discoveryDrivenData": true
}
]
}
}
+249 -104
{
"addresses": {
"ethereum": [
{
"name": "SystemConfig",
"isVerified": true,
"address": "eth:0x89E31965D844a309231B1f17759Ccaf1b7c09861",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x783A434532Ee94667979213af1711505E8bFE374"
],
"implementations": [
"eth:0x9c61C5a8FF9408B83ac92571278550097A9d2BB5"
"eth:0xe5Dc3C0a3489b81A6F3AE3bB49bF9CcBFB85a3dB"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1741879595,
"transactionHash": "0x5852f5888f0563ac1d7e3bf2b566e63fa981394e24b9753a41416a2ba6bdbfbc",
"implementations": [
"eth:0x7b5a84F818B6fC3F079EE87c214F369062188D2A"
]
},
{
"timestamp": 1751883851,
"transactionHash": "0x14663947fe932e8ad6d57fe9aa61910d8d2e5fc37ac5e16e4345c3f8e2f7b2d2",
"implementations": [
"eth:0x911EA44d22EB903515378625dA3a0E09D2E1B074"
]
},
{
"timestamp": 1751884031,
"transactionHash": "0xa9816c6dcbbe126e3b5c56f26ecfeebcb2dc03ab78535a7d5ed2bcdeea7ccf39",
"implementations": [
"eth:0x9c61C5a8FF9408B83ac92571278550097A9d2BB5"
]
},
{
"timestamp": 1774940723,
"transactionHash": "0x66a97a8a6934d37b3ed077e788fb02fbce53e02ad7d95d3159ba6347ede395c8",
"implementations": [
"eth:0xa9c79551eA70D311f5153a27Cba12396e5128b9c"
]
},
{
"timestamp": 1774940891,
"transactionHash": "0xce8f5d953104dbe1a793fdcf76a16290f1c8765f87fcef729c2ad7e2e95a07dc",
"implementations": [
"eth:0xe5Dc3C0a3489b81A6F3AE3bB49bF9CcBFB85a3dB"
]
}
],
"description": "Contains configuration parameters such as the Sequencer address, gas limit on this chain and the unsafe block signer address.\n* Roles:\n * **admin**: ProxyAdmin; ultimately CeloProxyAdminOwner\n * **batcherHash**: EOA 1\n * **owner**: CeloProxyAdminOwner",
"description": "Contains configuration parameters such as the Sequencer address, gas limit on this chain and the unsafe block signer address.\n* Roles:\n * **admin**: ProxyAdmin; ultimately CeloProxyAdminOwner\n * **batcherHash**: EOA 1\n * **owner**: Celo cLabs Multisig",
"upgradableBy": [
{
"name": "CeloProxyAdminOwner",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x89E31965D844a309231B1f17759Ccaf1b7c09861#code"
},
{
"name": "OptimismPortal2",
"isVerified": true,
"address": "eth:0xc5c5D157928BDBD2ACf6d0777626b6C75a9EAEDC",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x783A434532Ee94667979213af1711505E8bFE374"
],
"implementations": [
"eth:0x215A5fF85308A72A772F09B520dA71D3520e9aC7"
"eth:0x2c431080Fc733E259654f3b91E39468d9A85Ac9b"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1741879583,
"transactionHash": "0x7411775e32485632423395def2883f19e3a11c66c88c57f08d9975a927e2b166",
"implementations": [
"eth:0x6322C2f2D6a4305Fc033754d486A5A067Ee5F9b1"
]
},
{
"timestamp": 1741879583,
"transactionHash": "0x381b707419ae79c88d6fa34ec819396c80ba54f489d47d10ff85c4285b64e447",
"implementations": [
"eth:0x3Da872782f9fB696fD72Af2ec9313a56bDA6f06d"
]
},
{
"timestamp": 1751883851,
"transactionHash": "0x14663947fe932e8ad6d57fe9aa61910d8d2e5fc37ac5e16e4345c3f8e2f7b2d2",
"implementations": [
"eth:0xBeD463769920dAc19a7E2aDf47B6C6Bb6480bD97"
]
},
{
"timestamp": 1751884031,
"transactionHash": "0xa9816c6dcbbe126e3b5c56f26ecfeebcb2dc03ab78535a7d5ed2bcdeea7ccf39",
"implementations": [
"eth:0x215A5fF85308A72A772F09B520dA71D3520e9aC7"
]
},
{
"timestamp": 1774940723,
"transactionHash": "0x66a97a8a6934d37b3ed077e788fb02fbce53e02ad7d95d3159ba6347ede395c8",
"implementations": [
"eth:0x661DfA933f77148Dc8d84b06646a2868D7ae5DeB"
]
},
{
"timestamp": 1774940891,
"transactionHash": "0xce8f5d953104dbe1a793fdcf76a16290f1c8765f87fcef729c2ad7e2e95a07dc",
"implementations": [
"eth:0x2c431080Fc733E259654f3b91E39468d9A85Ac9b"
]
}
],
"description": "The OptimismPortal contract is the main entry point to deposit funds from L1 to L2. It also allows to prove and finalize withdrawals. It specifies which game type can be used for withdrawals, which currently is the 42.\n* Roles:\n * **admin**: ProxyAdmin; ultimately CeloProxyAdminOwner",
"upgradableBy": [
{
"name": "CeloProxyAdminOwner",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xc5c5D157928BDBD2ACf6d0777626b6C75a9EAEDC#code"
},
{
"name": "DisputeGameFactory",
"isVerified": true,
"address": "eth:0xFbAC162162f4009Bb007C6DeBC36B1dAC10aF683",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x783A434532Ee94667979213af1711505E8bFE374"
],
"implementations": [
"eth:0x4bbA758F006Ef09402eF31724203F316ab74e4a0"
"eth:0x74Fac1D45B98bae058F8F566201c9A81B85C7D50"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1741879595,
"transactionHash": "0xb42846aca12a846645e69e61c48c9b8de7078117c710ff124b04c18f735fbc5e",
"implementations": [
"eth:0xe8b013bEE7Bd603e2f0B4825638559d645A4C4CB"
]
},
{
"timestamp": 1751883851,
"transactionHash": "0x14663947fe932e8ad6d57fe9aa61910d8d2e5fc37ac5e16e4345c3f8e2f7b2d2",
"implementations": [
"eth:0x4bbA758F006Ef09402eF31724203F316ab74e4a0"
]
},
{
"timestamp": 1774940723,
"transactionHash": "0x66a97a8a6934d37b3ed077e788fb02fbce53e02ad7d95d3159ba6347ede395c8",
"implementations": [
"eth:0x33D1e8571a85a538ed3D5A4d88f46C112383439D"
]
},
{
"timestamp": 1774940891,
"transactionHash": "0xce8f5d953104dbe1a793fdcf76a16290f1c8765f87fcef729c2ad7e2e95a07dc",
"implementations": [
"eth:0x74Fac1D45B98bae058F8F566201c9A81B85C7D50"
]
}
],
"description": "The dispute game factory allows the creation of dispute games, used to propose state roots and eventually challenge them.\n* Roles:\n * **admin**: ProxyAdmin; ultimately CeloProxyAdminOwner",
"upgradableBy": [
{
"name": "CeloProxyAdminOwner",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xFbAC162162f4009Bb007C6DeBC36B1dAC10aF683#code"
},
{
"name": "SuperchainConfigLocal",
"name": "SuperchainConfig",
"isVerified": true,
"address": "eth:0xa440975E5A6BB19Bc3Bee901d909BB24b0f43D33",
"address": "eth:0x95703e0982140D16f8ebA6d158FccEde42f04a4C",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x783A434532Ee94667979213af1711505E8bFE374"
"eth:0x543bA4AADBAb8f9025686Bd03993043599c6fB04"
],
"implementations": [
"eth:0x693cFD911523ccaE1a14AdE2501ae4a0A463b446"
"eth:0xb08Cc720F511062537ca78BdB0AE691F04F5a957"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1741879559,
"transactionHash": "0x427e785add84f7429e78dc82c39e2b3b6e2c3e224f8abd6f4b67795f16e45357",
"timestamp": 1705954799,
"transactionHash": "0x8ba0e42b89cde22310b644ed30fd44e4a348619a165a54c908e7dc341e9bbd0c",
"implementations": [
"eth:0x693cFD911523ccaE1a14AdE2501ae4a0A463b446"
"eth:0x53c165169401764778F780a69701385eb0FF19B7"
]
},
{
"timestamp": 1718044163,
"transactionHash": "0xe361c0d4ae3aebc94b3f281ee372fbb1cbdb0c33ca8b1b35e7f3b009b2fcbdb0",
"implementations": [
"eth:0xd81f43eDBCAcb4c29a9bA38a13Ee5d79278270cC"
]
},
{
"timestamp": 1718044163,
"transactionHash": "0xe361c0d4ae3aebc94b3f281ee372fbb1cbdb0c33ca8b1b35e7f3b009b2fcbdb0",
"implementations": [
"eth:0x53c165169401764778F780a69701385eb0FF19B7"
]
},
{
"timestamp": 1743612623,
"transactionHash": "0x5f3530e593bbac37c61dc5b7755b6a40c06c20c1a3a1b13fca5b7d00cde65c29",
"implementations": [
"eth:0x4da82a327773965b8d4D85Fa3dB8249b387458E7"
]
},
{
"timestamp": 1753379243,
"transactionHash": "0x46acdce174c8d83ebe2f208d8c76c867e75617483d64c3e407f69ae2f9868716",
"implementations": [
"eth:0xCe28685EB204186b557133766eCA00334EB441E4"
]
},
{
"timestamp": 1764092795,
"transactionHash": "0xf556934cb4de1ab40a4cfba17856cd601cbc8b875b96a9ccd8ee32bcd363abf5",
"implementations": [
"eth:0xb08Cc720F511062537ca78BdB0AE691F04F5a957"
]
}
],
"description": "A local contract acting as source of truth for the paused status and the guardian role for the local chain.\n* Roles:\n * **admin**: ProxyAdmin; ultimately CeloProxyAdminOwner\n * **guardian**: EOA 2\n * **superchainConfig**: SuperchainConfig if the (global) SuperchainConfig is paused",
"description": "Used to manage global configuration values for multiple OP Chains within a single Superchain network. The SuperchainConfig contract manages individual pause states for each chain connected to it, as well as a global pause state for all chains. The guardian role can pause either separately, but each pause expires after 3 months if left untouched.\n* Roles:\n * **admin**: SuperchainProxyAdmin; ultimately SuperchainProxyAdminOwner\n * **guardian**: Optimism Guardian Multisig; ultimately OpFoundationUpgradeSafe, Optimism EOA 1, Optimism Security Council, SaferSafes",
"upgradableBy": [
{
"name": "CeloProxyAdminOwner",
"name": "SuperchainProxyAdminOwner",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xa440975E5A6BB19Bc3Bee901d909BB24b0f43D33#code"
"url": "https://etherscan.io/address/0x95703e0982140D16f8ebA6d158FccEde42f04a4C#code"
},
{
"name": "L1CrossDomainMessenger",
"isVerified": true,
"address": "eth:0x1AC1181fc4e4F877963680587AEAa2C90D7EbB95",
"upgradeability": {
"proxyType": "resolved delegate proxy",
"admins": [
"eth:0x783A434532Ee94667979213af1711505E8bFE374"
],
"implementations": [
"eth:0x807124F75FF2120b2f26D7e6f9e39C03ee9DE212"
"eth:0xE45D2d835d0b2D3C7f4fEe1eaa19A068d0ba8A88"
],
"immutable": false
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1741879595,
"transactionHash": "0x142804c112b7513d03962454fab1f12292cf4b4833ca1701f5122a7212476c77",
"implementations": [
"eth:0xDE47b113E4157ed15fA46c5572562aC11146c5eA"
]
},
{
"timestamp": 1751883851,
"transactionHash": "0x14663947fe932e8ad6d57fe9aa61910d8d2e5fc37ac5e16e4345c3f8e2f7b2d2",
"implementations": [
"eth:0x3d5a67747dE7E09b0d71F5d782c8b45f6307B9Fd"
]
},
{
"timestamp": 1751884031,
"transactionHash": "0xa9816c6dcbbe126e3b5c56f26ecfeebcb2dc03ab78535a7d5ed2bcdeea7ccf39",
"implementations": [
"eth:0x807124F75FF2120b2f26D7e6f9e39C03ee9DE212"
]
},
{
"timestamp": 1774940723,
"transactionHash": "0x66a97a8a6934d37b3ed077e788fb02fbce53e02ad7d95d3159ba6347ede395c8",
"implementations": [
"eth:0xA183A771B6c5F6e88cd351bBDC40E1ECD4521Cad"
]
},
{
"timestamp": 1774940891,
"transactionHash": "0xce8f5d953104dbe1a793fdcf76a16290f1c8765f87fcef729c2ad7e2e95a07dc",
"implementations": [
"eth:0xE45D2d835d0b2D3C7f4fEe1eaa19A068d0ba8A88"
]
}
],
"description": "Sends messages from host chain to this chain, and relays messages back onto host chain. In the event that a message sent from host chain to this chain is rejected for exceeding this chain's epoch gas limit, it can be resubmitted via this contract's replay function.\n* Roles:\n * **admin**: ProxyAdmin; ultimately CeloProxyAdminOwner",
"upgradableBy": [
{
"name": "CeloProxyAdminOwner",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x1AC1181fc4e4F877963680587AEAa2C90D7EbB95#code"
},
{
"name": "L1ERC721Bridge",
"isVerified": true,
"address": "eth:0x3C519816C5BdC0a0199147594F83feD4F5847f13",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x783A434532Ee94667979213af1711505E8bFE374"
],
"implementations": [
"eth:0x7aE1d3BD877a4C5CA257404ce26BE93A02C98013"
"eth:0x74f1aC50EB0BE98853805D381C884f5f9abDEcf9"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1741879595,
"transactionHash": "0x088ae685dbdd16320c9d3f99e7feea6c823156f69ab0da7dc48ce6c38498c55e",
"implementations": [
"eth:0xad5D111e961A5E451C8172034115bcc0551b6551"
]
},
{
"timestamp": 1751883851,
"transactionHash": "0x14663947fe932e8ad6d57fe9aa61910d8d2e5fc37ac5e16e4345c3f8e2f7b2d2",
"implementations": [
"eth:0x276d3730f219f7ec22274f7263180b8452B46d47"
]
},
{
"timestamp": 1751884031,
"transactionHash": "0xa9816c6dcbbe126e3b5c56f26ecfeebcb2dc03ab78535a7d5ed2bcdeea7ccf39",
"implementations": [
"eth:0x7aE1d3BD877a4C5CA257404ce26BE93A02C98013"
]
},
{
"timestamp": 1774940723,
"transactionHash": "0x66a97a8a6934d37b3ed077e788fb02fbce53e02ad7d95d3159ba6347ede395c8",
"implementations": [
"eth:0x7f1d12fB2911EB095278085f721e644C1f675696"
]
},
{
"timestamp": 1774940891,
"transactionHash": "0xce8f5d953104dbe1a793fdcf76a16290f1c8765f87fcef729c2ad7e2e95a07dc",
"implementations": [
"eth:0x74f1aC50EB0BE98853805D381C884f5f9abDEcf9"
]
}
],
"description": "Used to bridge ERC-721 tokens from host chain to this chain.\n* Roles:\n * **admin**: ProxyAdmin; ultimately CeloProxyAdminOwner",
"upgradableBy": [
{
"name": "CeloProxyAdminOwner",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x3C519816C5BdC0a0199147594F83feD4F5847f13#code"
},
{
"name": "L1StandardBridge",
"isVerified": true,
"address": "eth:0x9C4955b92F34148dbcfDCD82e9c9eCe5CF2badfe",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x783A434532Ee94667979213af1711505E8bFE374"
],
"implementations": [
"eth:0x28841965B26d41304905A836Da5C0921DA7dBB84"
"eth:0xfA707F45A23370d9154AF4457401274E38FA2d8A"
]
},
"chain": "ethereum",
"pastUpgrades": [],
"description": "The main entry point to deposit ERC20 tokens from host chain to this chain.\n* Roles:\n * **admin**: ProxyAdmin; ultimately CeloProxyAdminOwner",
"upgradableBy": [
{
"name": "CeloProxyAdminOwner",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x9C4955b92F34148dbcfDCD82e9c9eCe5CF2badfe#code"
},
{
"name": "LivenessModule",
"isVerified": true,
"address": "eth:0x0454092516c9A4d636d3CAfA1e82161376C8a748",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "used to remove members inactive for 3mo 8d while making sure that the threshold remains above 75%. If the number of members falls below 8, the OpFoundationUpgradeSafe takes ownership of the multisig\n* Roles:\n * **fallbackOwner**: OpFoundationUpgradeSafe if the number of Optimism Security Council members falls below 8\n * **livenessGuard**: LivenessGuard",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x0454092516c9A4d636d3CAfA1e82161376C8a748#code"
},
{
"name": "SP1Verifier",
"isVerified": true,
"address": "eth:0x0459d576A6223fEeA177Fb3DF53C9c77BF84C459",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "Verifier contract for SP1 proofs (v5.0.0).\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x0459d576A6223fEeA177Fb3DF53C9c77BF84C459#code"
},
{
"name": "Celo native asset Token",
"isVerified": true,
"address": "eth:0x057898f3C43F129a17517B9056D23851F124b19f",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x783A434532Ee94667979213af1711505E8bFE374"
],
"implementations": [
"eth:0x64fE3f9201E6534D2d744c7C57D134E709131a6e"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1741879583,
"transactionHash": "0xe145ca9f0fea9f384f7abad906b81717a0d407de37718cb9036678937c44d9f0",
"implementations": [
"eth:0x64fE3f9201E6534D2d744c7C57D134E709131a6e"
]
}
],
"description": "* Roles:\n * **admin**: ProxyAdmin; ultimately CeloProxyAdminOwner",
"upgradableBy": [
{
"name": "CeloProxyAdminOwner",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x057898f3C43F129a17517B9056D23851F124b19f#code"
},
{
"name": "PreimageOracle",
"isVerified": true,
"address": "eth:0x1fb8cdFc6831fc866Ed9C51aF8817Da5c287aDD3",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "The PreimageOracle contract is used to load the required data from L1 for a dispute game.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x1fb8cdFc6831fc866Ed9C51aF8817Da5c287aDD3#code"
},
{
"name": "PermissionedDisputeGame",
"name": "CeloSuperchainConfig",
"isVerified": true,
"address": "eth:0x25c2e07A24a74F9FA54f7CA5ddAfedB2264a5d02",
"address": "eth:0x25035d2233d099f0BA710ca1e5a3834842870C66",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x783A434532Ee94667979213af1711505E8bFE374"
],
"implementations": [
"eth:0xA59b2eBf8231f0e31508Bd18e9185BeB5Ab1C038"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1774940723,
"transactionHash": "0x66a97a8a6934d37b3ed077e788fb02fbce53e02ad7d95d3159ba6347ede395c8",
"implementations": [
"eth:0xA59b2eBf8231f0e31508Bd18e9185BeB5Ab1C038"
]
}
],
"description": "* Roles:\n * **admin**: ProxyAdmin; ultimately CeloProxyAdminOwner",
"upgradableBy": [
{
"name": "CeloProxyAdminOwner",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x25035d2233d099f0BA710ca1e5a3834842870C66#code"
},
{
"name": "FaultDisputeGame",
"isVerified": true,
"address": "eth:0x25Bd434Aa96EE31D6661c89CF4290281f1ed856F",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "Same as FaultDisputeGame, but only two permissioned addresses are designated as proposer and challenger.\n",
"description": "Logic of the dispute game. When a state root is proposed, a dispute game contract is deployed. Challengers can use such contracts to challenge the proposed state root.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x25c2e07A24a74F9FA54f7CA5ddAfedB2264a5d02#code"
"url": "https://etherscan.io/address/0x25Bd434Aa96EE31D6661c89CF4290281f1ed856F#code"
},
{
"name": "SP1VerifierGateway",
"isVerified": true,
"address": "eth:0x3B6041173B80E77f038f3F2C0f9744f04837185e",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "This contract is the router for zk proof verification. It stores the mapping between identifiers and the address of onchain verifier contracts, routing each identifier to the corresponding verifier contract.\n* Roles:\n * **owner**: SP1VerifierGatewayMultisig",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x3B6041173B80E77f038f3F2C0f9744f04837185e#code"
},
{
"name": "SuperchainProxyAdmin",
"isVerified": true,
"address": "eth:0x543bA4AADBAb8f9025686Bd03993043599c6fB04",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "* Roles:\n * **owner**: SuperchainProxyAdminOwner",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x543bA4AADBAb8f9025686Bd03993043599c6fB04#code"
},
{
"name": "MIPS",
"isVerified": true,
"address": "eth:0x6463dEE3828677F6270d83d45408044fc5eDB908",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "The MIPS contract is used to execute the final step of the dispute game which objectively determines the winner of the dispute.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x6463dEE3828677F6270d83d45408044fc5eDB908#code"
},
{
"name": "OptimismMintableERC20Factory",
"isVerified": true,
"address": "eth:0x6f0E4f1EB98A52EfaCF7BE11d48B9d9d6510A906",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x783A434532Ee94667979213af1711505E8bFE374"
],
"implementations": [
"eth:0x5493f4677A186f64805fe7317D6993ba4863988F"
"eth:0x149BD036f5F57D0FF4b5F102C9d46E3c0EB2C016"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1741879595,
"transactionHash": "0x0297053983c066511596ec9542fd1d217b46039efc3d729f4e4468ecfff47b6b",
"implementations": [
"eth:0x0B3004b843dA84FE5D4C46AeB5E80F826e5CD69A"
]
},
{
"timestamp": 1751883851,
"transactionHash": "0x14663947fe932e8ad6d57fe9aa61910d8d2e5fc37ac5e16e4345c3f8e2f7b2d2",
"implementations": [
"eth:0x5493f4677A186f64805fe7317D6993ba4863988F"
]
},
{
"timestamp": 1774940891,
"transactionHash": "0xce8f5d953104dbe1a793fdcf76a16290f1c8765f87fcef729c2ad7e2e95a07dc",
"implementations": [
"eth:0x149BD036f5F57D0FF4b5F102C9d46E3c0EB2C016"
]
}
],
"description": "A helper contract that generates OptimismMintableERC20 contracts on the network it's deployed to. OptimismMintableERC20 is a standard extension of the base ERC20 token contract designed to allow the L1StandardBridge contracts to mint and burn tokens. This makes it possible to use an OptimismMintableERC20 as this chain's representation of a token on the host chain, or vice-versa.\n* Roles:\n * **admin**: ProxyAdmin; ultimately CeloProxyAdminOwner",
"upgradableBy": [
{
"name": "CeloProxyAdminOwner",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x6f0E4f1EB98A52EfaCF7BE11d48B9d9d6510A906#code"
},
{
"name": "DeputyPauseModule",
"isVerified": true,
"address": "eth:0x76fC2F971FB355D0453cF9F64d3F9E4f640E1754",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "Allows 0x352f1defB49718e7Ea411687E850aA8d6299F7aC, called the deputy pauser, to act on behalf of the OpFoundationUpgradeSafe if set as its Safe module.\n* Roles:\n * **deputy**: Optimism EOA 1 though restricted to the SuperchainConfig's `pause()` function",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x76fC2F971FB355D0453cF9F64d3F9E4f640E1754#code"
},
{
"name": "ProxyAdmin",
"isVerified": true,
"address": "eth:0x783A434532Ee94667979213af1711505E8bFE374",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "* Roles:\n * **owner**: CeloProxyAdminOwner",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x783A434532Ee94667979213af1711505E8bFE374#code"
},
{
"name": "SP1Verifier",
"isVerified": true,
"address": "eth:0x8a0fd5e825D14368d90Fe68F31fceAe3E17AFc5C",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "Verifier contract for SP1 proofs (v6.0.0).\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x8a0fd5e825D14368d90Fe68F31fceAe3E17AFc5C#code"
},
{
"name": "DelayedWETH",
"name": "AnchorStateRegistry",
"isVerified": true,
"address": "eth:0x9c314E8057025F2982aa4B3923Abd741A8e8DE91",
"address": "eth:0x8fE58d2168b5412Cf1Bd212cE6137f8b7300222d",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x783A434532Ee94667979213af1711505E8bFE374"
],
"implementations": [
"eth:0x1e121E21E1A11Ae47C0EFE8A7E13ae3eb4923796"
"eth:0xeb69cC681E8D4a557b30DFFBAd85aFfD47a2CF2E"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1741879595,
"transactionHash": "0x265553a76e8c52912e8a4511e9ab4ae344736ebd5f26f3ec97986307c37f28ed",
"timestamp": 1774940723,
"transactionHash": "0x66a97a8a6934d37b3ed077e788fb02fbce53e02ad7d95d3159ba6347ede395c8",
"implementations": [
"eth:0xDFBB69681F217aB3221E94AFCA4fEa51f5c6a779"
"eth:0xeb69cC681E8D4a557b30DFFBAd85aFfD47a2CF2E"
]
},
{
"timestamp": 1751883851,
"transactionHash": "0x14663947fe932e8ad6d57fe9aa61910d8d2e5fc37ac5e16e4345c3f8e2f7b2d2",
"implementations": [
"eth:0x1e121E21E1A11Ae47C0EFE8A7E13ae3eb4923796"
]
}
],
"description": "Contract designed to hold the bonded ETH for each game. It is designed as a wrapper around WETH to allow an owner to function as a backstop if a game would incorrectly distribute funds.\n* Roles:\n * **admin**: ProxyAdmin; ultimately CeloProxyAdminOwner\n * **owner**: EOA 9",
"description": "Contains the latest confirmed state root that can be used as a starting point in a dispute game. It specifies which game type can be used for withdrawals, which currently is the 42.\n* Roles:\n * **admin**: ProxyAdmin; ultimately CeloProxyAdminOwner",
"upgradableBy": [
{
"name": "CeloProxyAdminOwner",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x9c314E8057025F2982aa4B3923Abd741A8e8DE91#code"
"url": "https://etherscan.io/address/0x8fE58d2168b5412Cf1Bd212cE6137f8b7300222d#code"
},
{
"name": "AnchorStateRegistry",
"name": "DelayedWETH",
"isVerified": true,
"address": "eth:0x9F18D91949731E766f294A14027bBFE8F28328CC",
"address": "eth:0x91FA5B653aFe81A79890A93ad83768A04cc011b4",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x783A434532Ee94667979213af1711505E8bFE374"
],
"implementations": [
"eth:0x7b465370BB7A333f99edd19599EB7Fb1c2D3F8D2"
"eth:0xb86a464CC743440FddAa43900e05318ef4818b29"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1751883851,
"transactionHash": "0x14663947fe932e8ad6d57fe9aa61910d8d2e5fc37ac5e16e4345c3f8e2f7b2d2",
"timestamp": 1774940723,
"transactionHash": "0x66a97a8a6934d37b3ed077e788fb02fbce53e02ad7d95d3159ba6347ede395c8",
"implementations": [
"eth:0x7b465370BB7A333f99edd19599EB7Fb1c2D3F8D2"
"eth:0xb86a464CC743440FddAa43900e05318ef4818b29"
]
}
],
"description": "Contains the latest confirmed state root that can be used as a starting point in a dispute game.\n* Roles:\n * **admin**: ProxyAdmin; ultimately CeloProxyAdminOwner",
"description": "Contract designed to hold the bonded ETH for each game. It is designed as a wrapper around WETH to allow an owner to function as a backstop if a game would incorrectly distribute funds.\n* Roles:\n * **admin**: ProxyAdmin; ultimately CeloProxyAdminOwner",
"upgradableBy": [
{
"name": "CeloProxyAdminOwner",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x9F18D91949731E766f294A14027bBFE8F28328CC#code"
"url": "https://etherscan.io/address/0x91FA5B653aFe81A79890A93ad83768A04cc011b4#code"
},
{
"name": "PermissionedDisputeGame",
"isVerified": true,
"address": "eth:0xa83a2E8595b602aD98C928E9cD123c0E05C84FD9",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "Same as FaultDisputeGame, but only two permissioned addresses are designated as proposer and challenger.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xa83a2E8595b602aD98C928E9cD123c0E05C84FD9#code"
},
{
"name": "DelayedWETH",
"isVerified": true,
"address": "eth:0xa316D42E8Fd98D2Ec364b8bF853d2623E768f95a",
"address": "eth:0xC700d16428cF5Bfa71D91E66fA54Fc11A73f2552",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x783A434532Ee94667979213af1711505E8bFE374"
],
"implementations": [
"eth:0x1e121E21E1A11Ae47C0EFE8A7E13ae3eb4923796"
"eth:0xb86a464CC743440FddAa43900e05318ef4818b29"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1741879595,
"transactionHash": "0x3fba113c724de4de010b1dd0a044c8d0970effb4a12a9e4eb5450199cd8f0749",
"timestamp": 1774940723,
"transactionHash": "0x66a97a8a6934d37b3ed077e788fb02fbce53e02ad7d95d3159ba6347ede395c8",
"implementations": [
"eth:0xDFBB69681F217aB3221E94AFCA4fEa51f5c6a779"
"eth:0xb86a464CC743440FddAa43900e05318ef4818b29"
]
},
{
"timestamp": 1751883851,
"transactionHash": "0x14663947fe932e8ad6d57fe9aa61910d8d2e5fc37ac5e16e4345c3f8e2f7b2d2",
"implementations": [
"eth:0x1e121E21E1A11Ae47C0EFE8A7E13ae3eb4923796"
]
}
],
"description": "Contract designed to hold the bonded ETH for each game. It is designed as a wrapper around WETH to allow an owner to function as a backstop if a game would incorrectly distribute funds.\n* Roles:\n * **admin**: ProxyAdmin; ultimately CeloProxyAdminOwner\n * **owner**: CeloProxyAdminOwner",
"description": "Contract designed to hold the bonded ETH for each game. It is designed as a wrapper around WETH to allow an owner to function as a backstop if a game would incorrectly distribute funds.\n* Roles:\n * **admin**: ProxyAdmin; ultimately CeloProxyAdminOwner",
"upgradableBy": [
{
"name": "CeloProxyAdminOwner",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xa316D42E8Fd98D2Ec364b8bF853d2623E768f95a#code"
"url": "https://etherscan.io/address/0xC700d16428cF5Bfa71D91E66fA54Fc11A73f2552#code"
},
{
"name": "MIPS",
"isVerified": true,
"address": "eth:0xaA59A0777648BC75cd10364083e878c1cCd6112a",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "The MIPS contract is used to execute the final step of the dispute game which objectively determines the winner of the dispute.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xaA59A0777648BC75cd10364083e878c1cCd6112a#code"
},
{
"name": "OPSuccinctFaultDisputeGame",
"isVerified": true,
"address": "eth:0xc5bd131ceAEb72F15C66418bc2668332AB99DE37",
"address": "eth:0xE7bd695d6A17970A2D9dB55cfeF7F2024d630aE1",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "Logic of the dispute game. When a state root is proposed, a dispute game contract is deployed. Challengers can use such contracts to challenge the proposed state root.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xc5bd131ceAEb72F15C66418bc2668332AB99DE37#code"
"url": "https://etherscan.io/address/0xE7bd695d6A17970A2D9dB55cfeF7F2024d630aE1#code"
},
{
"name": "FaultDisputeGame",
"isVerified": true,
"address": "eth:0xcc744008aD3306a716fED303b0A6eA5b5d0690a5",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "Logic of the dispute game. When a state root is proposed, a dispute game contract is deployed. Challengers can use such contracts to challenge the proposed state root.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xcc744008aD3306a716fED303b0A6eA5b5d0690a5#code"
},
{
"name": "AccessManager",
"isVerified": true,
"address": "eth:0xF59a19c5578291cB7fd22618D16281aDf76f2816",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "Contract managing access control for proposers and challengers in OPSuccinct.\n* Roles:\n * **challengers**: EOA 10, EOA 11, EOA 4, EOA 5, EOA 6, EOA 7\n * **proposers**: EOA 3, EOA 8",
"description": "Contract managing access control for proposers and challengers in OPSuccinct.\n* Roles:\n * **challengers**: EOA 3, EOA 4, EOA 5, EOA 6, EOA 8, EOA 9\n * **proposers**: EOA 2, EOA 7",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xF59a19c5578291cB7fd22618D16281aDf76f2816#code"
}
]
},
"escrows": [
{
"address": "0xc5c5D157928BDBD2ACf6d0777626b6C75a9EAEDC",
"sinceTimestamp": 1741879559,
"tokens": [
"ETH"
],
"contract": {
"isVerified": true,
"address": "eth:0xc5c5D157928BDBD2ACf6d0777626b6C75a9EAEDC",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x783A434532Ee94667979213af1711505E8bFE374"
],
"implementations": [
"eth:0x215A5fF85308A72A772F09B520dA71D3520e9aC7"
"eth:0x2c431080Fc733E259654f3b91E39468d9A85Ac9b"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1741879583,
"transactionHash": "0x7411775e32485632423395def2883f19e3a11c66c88c57f08d9975a927e2b166",
"implementations": [
"eth:0x6322C2f2D6a4305Fc033754d486A5A067Ee5F9b1"
]
},
{
"timestamp": 1741879583,
"transactionHash": "0x381b707419ae79c88d6fa34ec819396c80ba54f489d47d10ff85c4285b64e447",
"implementations": [
"eth:0x3Da872782f9fB696fD72Af2ec9313a56bDA6f06d"
]
},
{
"timestamp": 1751883851,
"transactionHash": "0x14663947fe932e8ad6d57fe9aa61910d8d2e5fc37ac5e16e4345c3f8e2f7b2d2",
"implementations": [
"eth:0xBeD463769920dAc19a7E2aDf47B6C6Bb6480bD97"
]
},
{
"timestamp": 1751884031,
"transactionHash": "0xa9816c6dcbbe126e3b5c56f26ecfeebcb2dc03ab78535a7d5ed2bcdeea7ccf39",
"implementations": [
"eth:0x215A5fF85308A72A772F09B520dA71D3520e9aC7"
]
},
{
"timestamp": 1774940723,
"transactionHash": "0x66a97a8a6934d37b3ed077e788fb02fbce53e02ad7d95d3159ba6347ede395c8",
"implementations": [
"eth:0x661DfA933f77148Dc8d84b06646a2868D7ae5DeB"
]
},
{
"timestamp": 1774940891,
"transactionHash": "0xce8f5d953104dbe1a793fdcf76a16290f1c8765f87fcef729c2ad7e2e95a07dc",
"implementations": [
"eth:0x2c431080Fc733E259654f3b91E39468d9A85Ac9b"
]
}
],
"description": "Main entry point for users depositing ETH.",
"upgradableBy": [
{
"name": "ProxyAdmin",
"delay": "no"
}
],
"url": "https://etherscan.io/address/0xc5c5D157928BDBD2ACf6d0777626b6C75a9EAEDC#code"
},
"chain": "ethereum",
"includeInTotal": true,
"chainId": 1
},
{
"address": "0x9C4955b92F34148dbcfDCD82e9c9eCe5CF2badfe",
"sinceTimestamp": 1741879559,
"tokens": "*",
"contract": {
"isVerified": true,
"address": "eth:0x9C4955b92F34148dbcfDCD82e9c9eCe5CF2badfe",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x783A434532Ee94667979213af1711505E8bFE374"
],
"implementations": [
"eth:0x28841965B26d41304905A836Da5C0921DA7dBB84"
"eth:0xfA707F45A23370d9154AF4457401274E38FA2d8A"
]
},
"chain": "ethereum",
"pastUpgrades": [],
"description": "Main entry point for users depositing ERC20 token that do not require custom gateway.",
"upgradableBy": [
{
"name": "ProxyAdmin",
"delay": "no"
}
],
"url": "https://etherscan.io/address/0x9C4955b92F34148dbcfDCD82e9c9eCe5CF2badfe#code"
},
"chain": "ethereum",
"includeInTotal": true,
"chainId": 1
}
],
"programHashes": [
{
"title": "Aggregation program of OP Succinct FDP v1.0.2",
"title": "Aggregation program of OP Succinct FDP v2.0.0",
"description": "Aggregates proofs of correct execution for several consecutive block ranges of OP L2 client in fault dispute proof mode. Data availability layer is set to EigenDA.",
"proverSystemProject": "sp1hypercube",
"programUrl": "https://github.com/celo-org/op-succinct/tree/celo/v1.0.2/programs/aggregation",
"verificationStatus": "successful",
"verificationSteps": "\nPrepare:\n\n1. Install cargo make: `cargo install --debug --locked cargo-make`\n2. Install sp1 toolchain: `curl -L https://sp1up.succinct.xyz/ | bash`, then `sp1up`\n3. Install docker [https://docs.docker.com/get-started/get-docker/](https://docs.docker.com/get-started/get-docker/)\n\nVerify:\n\n1. Checkout the correct branch in [celo-org/op-succinct](https://github.com/celo-org/op-succinct) repo: `git checkout celo/v1.0.2` . Commit hash should be `a8d870c320c158a2a2e4eee0303c688b15bea2c0`.\n2. Make sure docker is running by running `docker ps`\n3. From the `op-succinct` dir: `cargo run --bin config --release --features eigenda` to build the SP1 programs for EigenDA features and generate and print verification key hashes.\n ",
"hash": "0x00b37da93c30bef199e4f70190c46367ade11ab988c3cff4c661960919718afd"
"programUrl": "https://github.com/celo-org/op-succinct/tree/celo/v2.0.0/programs/aggregation",
"verificationStatus": "notVerified",
"verificationSteps": "\nPrepare:\n\n1. Install cargo make: `cargo install --debug --locked cargo-make`\n2. Install sp1 toolchain: `curl -L https://sp1up.succinct.xyz/ | bash`, then `sp1up`\n3. Install docker [https://docs.docker.com/get-started/get-docker/](https://docs.docker.com/get-started/get-docker/)\n\nVerify:\n\n1. Checkout the correct branch in [celo-org/op-succinct](https://github.com/celo-org/op-succinct) repo: `git checkout celo/v2.0.0` . Commit hash should be `debb3301e7720943f65274fd75f747ee2b722bbd`.\n2. Make sure docker is running by running `docker ps`\n3. From the `op-succinct` dir: `cargo run --bin config --release --features eigenda` to build the SP1 programs for EigenDA features and generate and print verification key hashes.\n ",
"hash": "0x004f4bbc8b8599a08bb3715b9a18bb53996ac81d558a0ac094f6e97c71b70377"
},
{
"title": "Range program of OP Succinct FDP v1.0.2",
"title": "Range program of OP Succinct FDP v2.0.0",
"description": "Proves correct state transition function within an OP L2 client over a range of consecutive L2 blocks in fault dispute proof mode. Data availability layer is set to EigenDA.",
"proverSystemProject": "sp1hypercube",
"programUrl": "https://github.com/celo-org/op-succinct/tree/celo/v1.0.2/programs/range/eigenda",
"verificationStatus": "successful",
"verificationSteps": "\nPrepare:\n\n1. Install cargo make: `cargo install --debug --locked cargo-make`\n2. Install sp1 toolchain: `curl -L https://sp1up.succinct.xyz/ | bash`, then `sp1up`\n3. Install docker [https://docs.docker.com/get-started/get-docker/](https://docs.docker.com/get-started/get-docker/)\n\nVerify:\n\n1. Checkout the correct branch in [celo-org/op-succinct](https://github.com/celo-org/op-succinct) repo: `git checkout celo/v1.0.2` . Commit hash should be `a8d870c320c158a2a2e4eee0303c688b15bea2c0`.\n2. Make sure docker is running by running `docker ps`\n3. From the `op-succinct` dir: `cargo run --bin config --release --features eigenda` to build the SP1 programs for EigenDA features and generate and print verification key hashes.\n ",
"hash": "0x05ca7dfb1b7ca7a103fa36750d622f81182eb7c9679b9487418968400e2b1a29"
"programUrl": "https://github.com/celo-org/op-succinct/tree/celo/v2.0.0/programs/range/eigenda",
"verificationStatus": "notVerified",
"verificationSteps": "\nPrepare:\n\n1. Install cargo make: `cargo install --debug --locked cargo-make`\n2. Install sp1 toolchain: `curl -L https://sp1up.succinct.xyz/ | bash`, then `sp1up`\n3. Install docker [https://docs.docker.com/get-started/get-docker/](https://docs.docker.com/get-started/get-docker/)\n\nVerify:\n\n1. Checkout the correct branch in [celo-org/op-succinct](https://github.com/celo-org/op-succinct) repo: `git checkout celo/v2.0.0` . Commit hash should be `debb3301e7720943f65274fd75f747ee2b722bbd`.\n2. Make sure docker is running by running `docker ps`\n3. From the `op-succinct` dir: `cargo run --bin config --release --features eigenda` to build the SP1 programs for EigenDA features and generate and print verification key hashes.\n ",
"hash": "0x1fffeb5a6f932e26084c284829e79973121fe5d456a7ec9029febc1308167c2c"
}
],
"risks": [
{
"category": "Funds can be stolen if",
"text": "a contract receives a malicious code upgrade. There is no delay on code upgrades.",
"isCritical": true
}
],
"zkVerifiers": [
"eth:0x0459d576A6223fEeA177Fb3DF53C9c77BF84C459",
"eth:0x8a0fd5e825D14368d90Fe68F31fceAe3E17AFc5C"
]
}
+1 -1
{
"baseTimestamp": 1774433146,
"baseTimestamp": 1775057323,
"contractsDiscoDriven": true,
"hasDiscoUi": true,
"isDiscoDriven": true,
"permissionsDiscoDriven": true
}
+1 -7
+1 -7
{
"daLayer": "eigenda",
"name": "DACert Verifier (EigenDA V2)",
"relayerType": {
"value": "SelfRelay",
"sentiment": "good",
"description": "In EigenDA V2 secure integrations, the rollup batcher includes the DA certificate on L1, no separate third-party relayer is required."
},
"risks": {
"committeeSecurity": {
"value": "Permissioned",
"sentiment": "warning",
"description": "The committee requires an honest minority (less than 1/3) of members (or the network stake) to prevent the DA bridge from accepting an unavailable data commitment.\n There are 94 operators currently registered in the committee, but entry or exit of members is partially controlled by a centralized entity.",
"orderHint": 1
},
"upgradeability": {
"value": "No delay",
"sentiment": "bad",
"description": "There is no delay in the upgradeability of the bridge. Users have no time to exit the system before the bridge implementation update is completed."
},
"relayerFailure": {
"value": "Self propose",
"sentiment": "good",
"description": "Anyone can relay data availability commitments to the DA bridge. In case of current relayer failure, users can collect attestations from committee members and propose new data availability commitments to the DA bridge."
}
},
"technology": {
"description": "\n## EigenDA V2 Architecture\n\nEigenDA V2 introduces a more efficient architecture where the L2 sequencer acts as the relayer, eliminating the need for separate permissioned relayers:\n\n- **Sequencer as Relayer**: The sequencer acts as the relayer, eliminating the need for separate permissioned relayers\n- **Direct Certificate Verification**: Multiple DACert Verifier contracts handle different certificate versions (V2, V3). These contracts read operator/state metadata via EigenDA and EigenLayer core contracts (incl. ServiceManager components) and verify signatures and stake thresholds.\n- **Version-Specific Verification**: Each certificate version has a corresponding verifier contract that validates the specific certificate format and cryptographic proofs\n\n### Certificate Types and Verifiers\nEigenDA V2 supports multiple certificate formats:\n\n- **V2 Certificates**: Contain blob inclusion info, batch headers, and non-signer stakes with signatures. Verified through EigenDACertVerifierV2 contracts.\n- **V3 Certificates**: Similar structure to V2 but with reordered fields for optimization. Verified through EigenDACertVerifierV3 contracts.\n\n### Verification Process\n1. **Certificate Construction**: The EigenDA client constructs certificates from BlobStatusReply data received from the disperser\n2. **Version Detection**: The certificate version is determined from the commitment structure \n3. **Verifier Selection**: The appropriate DACert Verifier contract is selected based on the certificate version using the EigenDACertVerifierRouter\n4. **Onchain Verification**: The verifier contract's checkDACert function validates the certificate against operator signatures and stake thresholds\n\n### Secure Dispersal Flow\nBased on the EigenDA integration spec:\n\n1. EigenDA Client converts raw payload bytes into a blob\n2. Client fetches the appropriate EigenDACertVerifier contract address using the router\n3. Client submits blob request to disperser and polls for BlobStatusReply\n4. Once confirmation thresholds are met, client constructs the DACert from the reply\n5. Client calls the verifier's checkDACert function for onchain verification\n6. Based on verification status, client either returns the certificate or initiates failover\n\n### Router-Based Verifier Selection\nEigenDA V2 uses the EigenDACertVerifierRouter to dynamically select the appropriate verifier contract:\n- The router maps certificate versions to their corresponding verifier contracts\n- This allows for seamless upgrades and support for multiple certificate formats\n- The client queries the router using the latest block number to get the verifier for the reference block\n\nThis architecture provides improved throughput and eliminates single points of failure while maintaining the same security guarantees as V1.\n ",
"references": [
{
"title": "EigenDA Integration Spec - Lifecycle Phases",
"url": "https://layr-labs.github.io/eigenda/integration/spec/5-lifecycle-phases.html#secure-dispersal"
},
{
"title": "EigenDA - Documentation",
"url": "https://docs.eigenda.xyz/overview"
},
{
"title": "EigenDA Disperser - Source Code",
"url": "https://github.com/Layr-Labs/eigenda/blob/2ed86a0c1dd730b56c8235031c19e08a9837bde8/disperser/batcher/batcher.go"
}
],
"risks": [
{
"category": "Funds can be lost if",
"text": "the sequencer posts an invalid certificate and EigenDA operators do not make the data available for verification."
},
{
"category": "Funds can be frozen if",
"text": "the EigenDACertVerifierRouter fails to provide correct verifier contract addresses."
}
]
},
"usedIn": [
{
"id": "celo",
"name": "Celo",
"slug": "celo"
}
],
"usedIn": [],
"validationType": {
"value": "BLS Signature",
"description": "EigenDA V2 certificates require onchain BLS signatures verification through dedicated DACert Verifier contracts. Each certificate version corresponds to a specific verifier that validates the certificate format and proofs."
}
}
+75 -33
+9 -2
[
{
"address": "0xFc1D560eB01443e31B0EB56620703E80e42A7E4e",
"sinceTimestamp": 1740171575,
"tokens": [
"ETH"
],
"contract": {
"isVerified": true,
"address": "eth:0xFc1D560eB01443e31B0EB56620703E80e42A7E4e",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xd35FeF329Bb6569baa373BDa702F3dfF59D57321"
],
"implementations": [
"eth:0x2D7e764a0D9919e16983a46595CfA81fc34fa7Cd"
"eth:0xB443Da3e07052204A02d630a8933dAc05a0d6fB4"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1740171575,
"transactionHash": "0xa0b3cf1d929c237bfa21d3bf773de9d5c43d458fc658a5cc6dfe9bab465f109d",
"implementations": [
"eth:0xe2F826324b2faf99E513D16D266c3F80aE87832B"
]
},
{
"timestamp": 1774342031,
"transactionHash": "0x6fb404d33b12fb43ec63c0d91120b39a3dbebaa9835ae14477aee3f3a38bb9fc",
"implementations": [
"eth:0x2D7e764a0D9919e16983a46595CfA81fc34fa7Cd"
]
},
{
"timestamp": 1774892915,
"transactionHash": "0x5fdafef75018bf815bd1af062fd43e5e043d9a85562796e959c9f346c74aeb74",
"implementations": [
"eth:0xB443Da3e07052204A02d630a8933dAc05a0d6fB4"
]
}
],
"description": "Main entry point for users depositing ETH.",
"upgradableBy": [
{
"name": "ProxyAdmin",
"delay": "no"
}
],
"url": "https://etherscan.io/address/0xFc1D560eB01443e31B0EB56620703E80e42A7E4e#code"
},
"chain": "ethereum",
"includeInTotal": true,
"chainId": 1
},
{
"address": "0xFD4918e51d1e5aa2195C42654CF769b152C9d9C0",
"sinceTimestamp": 1740171575,
"tokens": "*",
"contract": {
"isVerified": true,
"address": "eth:0xFD4918e51d1e5aa2195C42654CF769b152C9d9C0",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xd35FeF329Bb6569baa373BDa702F3dfF59D57321"
],
"implementations": [
"eth:0x78972E88Ab8BBB517a36cAea23b931BAB58AD3c6"
"eth:0x0b09ba359A106C9ea3b181CBc5F394570c7d2a7A"
]
},
"chain": "ethereum",
"pastUpgrades": [],
"description": "Main entry point for users depositing ERC20 token that do not require custom gateway.",
"upgradableBy": [
{
"name": "ProxyAdmin",
"delay": "no"
}
],
"url": "https://etherscan.io/address/0xFD4918e51d1e5aa2195C42654CF769b152C9d9C0#code"
},
"chain": "ethereum",
"includeInTotal": true,
"chainId": 1
}
]
+4 -4
{
"architectureImage": "opstack-optimium-superchain-opfp",
"dataAvailability": [
{
"name": "Data is posted to Celestia",
"description": "Transactions roots are posted onchain and the full data is posted on Celestia. Since the Blobstream bridge is not used, availability of the data is not verified against Celestia validators, meaning that the Sequencer can single-handedly publish unavailable roots.",
"risks": [
{
"category": "Funds can be lost if",
"text": "the sequencer posts an unavailable transaction root.",
"isCritical": true
},
{
"category": "Funds can be lost if",
"text": "the data is not available on the external provider.",
"isCritical": true
}
],
"references": [
{
"title": "Introducing Blobstream: streaming modular DA to Ethereum",
"url": "https://blog.celestia.org/introducing-blobstream/"
},
{
"title": "Derivation: Batch submission - OP Mainnet specs",
"url": "https://github.com/ethereum-optimism/specs/blob/main/specs/protocol/derivation.md#batch-submission"
},
{
"title": "BatchInbox - address",
"url": "https://etherscan.io/address/0x003E40D3125591bD722aB1bB880c78e4D74d0977#code"
},
{
"title": "OptimismPortal2.sol - source code, depositTransaction function",
"url": "https://etherscan.io/address/0x2D7e764a0D9919e16983a46595CfA81fc34fa7Cd#code"
"url": "https://etherscan.io/address/0xB443Da3e07052204A02d630a8933dAc05a0d6fB4#code"
}
]
}
],
"exitMechanisms": [
{
"name": "Regular exits",
"description": "The user initiates the withdrawal by submitting a regular transaction on this chain. When a state root containing such transaction is settled, the funds become available for withdrawal on L1 after 3d 12h. Withdrawal inclusion can be proven before state root settlement, but a 7d period has to pass before it becomes actionable. The process of state root settlement takes a challenge period of at least 3d 12h to complete. Finally the user submits an L1 transaction to claim the funds. This transaction requires a merkle proof.",
"risks": [],
"references": [
{
"title": "OptimismPortal2.sol - Etherscan source code, proveWithdrawalTransaction function",
"url": "https://etherscan.io/address/0x2D7e764a0D9919e16983a46595CfA81fc34fa7Cd#code"
"url": "https://etherscan.io/address/0xB443Da3e07052204A02d630a8933dAc05a0d6fB4#code"
},
{
"title": "OptimismPortal2.sol - Etherscan source code, finalizeWithdrawalTransaction function",
"url": "https://etherscan.io/address/0x2D7e764a0D9919e16983a46595CfA81fc34fa7Cd#code"
"url": "https://etherscan.io/address/0xB443Da3e07052204A02d630a8933dAc05a0d6fB4#code"
}
]
},
{
"name": "Forced messaging",
"description": "If the user experiences censorship from the operator with regular L2->L1 messaging they can submit their messages directly on L1. The system is then obliged to service this request or halt all messages, including forced withdrawals from L1 and regular messages initiated on L2. Once the force operation is submitted and if the request is serviced, the operation follows the flow of a regular message.",
"risks": [],
"references": [
{
"title": "Forced withdrawal from an OP Stack blockchain",
"url": "https://docs.optimism.io/stack/transactions/forced-transaction"
}
]
}
],
"forceTransactions": {
"name": "Users can force any transaction",
"description": "Because the state of the system is based on transactions submitted on the underlying host chain and anyone can submit their transactions there it allows the users to circumvent censorship by interacting with the smart contract on the host chain directly.",
"risks": [],
"references": [
{
"title": "Sequencing Window - OP Mainnet Specs",
"url": "https://github.com/ethereum-optimism/optimism/blob/51eeb76efeb32b3df3e978f311188aa29f5e3e94/specs/glossary.md#sequencing-window"
},
{
"title": "OptimismPortal2.sol - source code, depositTransaction function",
"url": "https://etherscan.io/address/0x2D7e764a0D9919e16983a46595CfA81fc34fa7Cd#code"
"url": "https://etherscan.io/address/0xB443Da3e07052204A02d630a8933dAc05a0d6fB4#code"
}
]
},
"operator": {
"name": "The system has a centralized operator",
"description": "The operator is the only entity that can propose blocks. A live and trustworthy operator is vital to the health of the system.",
"risks": [
{
"category": "MEV can be extracted if",
"text": "the operator exploits their centralized position and frontruns user transactions."
}
],
"references": []
},
"otherConsiderations": [
{
"name": "EVM compatible smart contracts are supported",
"description": "OP stack chains are pursuing the EVM Equivalence model. No changes to smart contracts are required regardless of the language they are written in, i.e. anything deployed on L1 can be deployed on L2.",
"risks": [],
"references": [
{
"title": "Introducing EVM Equivalence",
"url": "https://medium.com/ethereum-optimism/introducing-evm-equivalence-5c2021deb306"
}
]
}
],
"stateValidation": {
"description": "Updates to the system state can be proposed and challenged by permissioned operators only. If a state root passes the challenge period, it is optimistically considered correct and made actionable for withdrawals.",
"categories": [
{
"title": "State root proposals",
"description": "Proposers submit state roots as children of the latest confirmed state root (called anchor state), by calling the `create` function in the DisputeGameFactory. A state root can have multiple conflicting children. Each proposal requires a stake, currently set to 0.0 ETH, that can be slashed if the proposal is proven incorrect via a fraud proof. Stakes can be withdrawn only after the proposal has been confirmed. A state root gets confirmed if the challenge period has passed and it is not countered.",
"references": [
{
"title": "OP stack specification: Fault Dispute Game",
"url": "https://specs.optimism.io/fault-proof/stage-one/fault-dispute-game.html#fault-dispute-game"
}
]
},
{
"title": "Challenges",
"description": "Challenges are opened to disprove invalid state roots using bisection games. Each bisection move requires a stake that increases expontentially with the depth of the bisection, with a factor of 1.09493. The maximum depth is 73, and reaching it therefore requires a cumulative stake of 0.00 ETH from depth 0. Actors can participate in any challenge by calling the `defend` or `attack` functions, depending whether they agree or disagree with the latest claim and want to move the bisection game forward. Actors that disagree with the top-level claim are called challengers, and actors that agree are called defenders. Each actor might be involved in multiple (sub-)challenges at the same time, meaning that the protocol operates with [full concurrency](https://medium.com/l2beat/fraud-proof-wars-b0cb4d0f452a). Challengers and defenders alternate in the bisection game, and they pass each other a clock that starts with 3d 12h. If a clock expires, the claim is considered defeated if it was countered, or it gets confirmed if uncountered. Since honest parties can inherit clocks from malicious parties that play both as challengers and defenders (see [freeloader claims](https://specs.optimism.io/fault-proof/stage-one/fault-dispute-game.html#freeloader-claims)), if a clock gets inherited with less than 3h, it generally gets extended by 3h with the exception of 6h right before depth 30, and 1d right before the last depth. The maximum clock extension that a top level claim can get is therefore 10d. Since unconfirmed state roots are independent of one another, users can decide to exit with a subsequent confirmed state root if the previous one is delayed. Winners get the entire losers' stake, meaning that sybils can potentially play against each other at no cost. The final instruction found via the bisection game is then executed onchain in the MIPS one step prover contract who determines the winner. The protocol does not enforce valid bisections, meaning that actors can propose correct initial claims and then provide incorrect midpoints. The protocol can be subject to resource exhaustion attacks ([Spearbit 5.1.3](https://github.com/ethereum-optimism/optimism/blob/develop/docs/security-reviews/2024_08_Fault-Proofs-No-MIPS_Spearbit.pdf)).",
"references": [
{
"title": "Fraud Proof Wars: OPFP",
"url": "https://medium.com/l2beat/fraud-proof-wars-b0cb4d0f452a"
}
]
}
]
}
}
+61 -26
{
"addresses": {
"ethereum": [
{
"name": "SystemConfig",
"isVerified": true,
"address": "eth:0x15C1dAED5443A77b4DcF6FE35cAFcCEBb0c6da0E",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xd35FeF329Bb6569baa373BDa702F3dfF59D57321"
],
"implementations": [
"eth:0x760C48C62A85045A6B69f07F4a9f22868659CbCc"
"eth:0x340f923E5c7cbB2171146f64169EC9d5a9FfE647"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1740171575,
"transactionHash": "0xa0b3cf1d929c237bfa21d3bf773de9d5c43d458fc658a5cc6dfe9bab465f109d",
"implementations": [
"eth:0xAB9d6cB7A427c0765163A7f45BB91cAfe5f2D375"
]
},
{
"timestamp": 1740171575,
"transactionHash": "0xa0b3cf1d929c237bfa21d3bf773de9d5c43d458fc658a5cc6dfe9bab465f109d",
"implementations": [
"eth:0xAB9d6cB7A427c0765163A7f45BB91cAfe5f2D375"
]
},
{
"timestamp": 1774342031,
"transactionHash": "0x6fb404d33b12fb43ec63c0d91120b39a3dbebaa9835ae14477aee3f3a38bb9fc",
"implementations": [
"eth:0x760C48C62A85045A6B69f07F4a9f22868659CbCc"
]
},
{
"timestamp": 1774892915,
"transactionHash": "0x5fdafef75018bf815bd1af062fd43e5e043d9a85562796e959c9f346c74aeb74",
"implementations": [
"eth:0x340f923E5c7cbB2171146f64169EC9d5a9FfE647"
]
}
],
"description": "Contains configuration parameters such as the Sequencer address, gas limit on this chain and the unsafe block signer address.\n* Roles:\n * **admin**: ProxyAdmin; ultimately Alchemy Multisig 1\n * **batcherHash**: EOA 2\n * **owner**: EOA 1",
"upgradableBy": [
{
"name": "Alchemy Multisig 1",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x15C1dAED5443A77b4DcF6FE35cAFcCEBb0c6da0E#code"
},
{
"name": "DisputeGameFactory",
"isVerified": true,
"address": "eth:0xde9FDA9C499bA1C0168AC083acF5BEc5cC67fA76",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xd35FeF329Bb6569baa373BDa702F3dfF59D57321"
],
"implementations": [
"eth:0x4bbA758F006Ef09402eF31724203F316ab74e4a0"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1740171575,
"transactionHash": "0xa0b3cf1d929c237bfa21d3bf773de9d5c43d458fc658a5cc6dfe9bab465f109d",
"implementations": [
"eth:0xc641A33cab81C559F2bd4b21EA34C290E2440C2B"
]
},
{
"timestamp": 1774342031,
"transactionHash": "0x6fb404d33b12fb43ec63c0d91120b39a3dbebaa9835ae14477aee3f3a38bb9fc",
"implementations": [
"eth:0x4bbA758F006Ef09402eF31724203F316ab74e4a0"
]
}
],
"description": "The dispute game factory allows the creation of dispute games, used to propose state roots and eventually challenge them.\n* Roles:\n * **admin**: ProxyAdmin; ultimately Alchemy Multisig 1",
"upgradableBy": [
{
"name": "Alchemy Multisig 1",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xde9FDA9C499bA1C0168AC083acF5BEc5cC67fA76#code"
},
{
"name": "OptimismPortal2",
"isVerified": true,
"address": "eth:0xFc1D560eB01443e31B0EB56620703E80e42A7E4e",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xd35FeF329Bb6569baa373BDa702F3dfF59D57321"
],
"implementations": [
"eth:0x2D7e764a0D9919e16983a46595CfA81fc34fa7Cd"
"eth:0xB443Da3e07052204A02d630a8933dAc05a0d6fB4"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1740171575,
"transactionHash": "0xa0b3cf1d929c237bfa21d3bf773de9d5c43d458fc658a5cc6dfe9bab465f109d",
"implementations": [
"eth:0xe2F826324b2faf99E513D16D266c3F80aE87832B"
]
},
{
"timestamp": 1774342031,
"transactionHash": "0x6fb404d33b12fb43ec63c0d91120b39a3dbebaa9835ae14477aee3f3a38bb9fc",
"implementations": [
"eth:0x2D7e764a0D9919e16983a46595CfA81fc34fa7Cd"
]
},
{
"timestamp": 1774892915,
"transactionHash": "0x5fdafef75018bf815bd1af062fd43e5e043d9a85562796e959c9f346c74aeb74",
"implementations": [
"eth:0xB443Da3e07052204A02d630a8933dAc05a0d6fB4"
]
}
],
"description": "The OptimismPortal contract is the main entry point to deposit funds from L1 to L2. It also allows to prove and finalize withdrawals. It specifies which game type can be used for withdrawals, which currently is the PermissionedDisputeGame.\n* Roles:\n * **admin**: ProxyAdmin; ultimately Alchemy Multisig 1",
"upgradableBy": [
{
"name": "Alchemy Multisig 1",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xFc1D560eB01443e31B0EB56620703E80e42A7E4e#code"
},
{
"name": "SuperchainConfig",
"isVerified": true,
"address": "eth:0x95703e0982140D16f8ebA6d158FccEde42f04a4C",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x543bA4AADBAb8f9025686Bd03993043599c6fB04"
],
"implementations": [
"eth:0xb08Cc720F511062537ca78BdB0AE691F04F5a957"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1705954799,
"transactionHash": "0x8ba0e42b89cde22310b644ed30fd44e4a348619a165a54c908e7dc341e9bbd0c",
"implementations": [
"eth:0x53c165169401764778F780a69701385eb0FF19B7"
]
},
{
"timestamp": 1718044163,
"transactionHash": "0xe361c0d4ae3aebc94b3f281ee372fbb1cbdb0c33ca8b1b35e7f3b009b2fcbdb0",
"implementations": [
"eth:0xd81f43eDBCAcb4c29a9bA38a13Ee5d79278270cC"
]
},
{
"timestamp": 1718044163,
"transactionHash": "0xe361c0d4ae3aebc94b3f281ee372fbb1cbdb0c33ca8b1b35e7f3b009b2fcbdb0",
"implementations": [
"eth:0x53c165169401764778F780a69701385eb0FF19B7"
]
},
{
"timestamp": 1743612623,
"transactionHash": "0x5f3530e593bbac37c61dc5b7755b6a40c06c20c1a3a1b13fca5b7d00cde65c29",
"implementations": [
"eth:0x4da82a327773965b8d4D85Fa3dB8249b387458E7"
]
},
{
"timestamp": 1753379243,
"transactionHash": "0x46acdce174c8d83ebe2f208d8c76c867e75617483d64c3e407f69ae2f9868716",
"implementations": [
"eth:0xCe28685EB204186b557133766eCA00334EB441E4"
]
},
{
"timestamp": 1764092795,
"transactionHash": "0xf556934cb4de1ab40a4cfba17856cd601cbc8b875b96a9ccd8ee32bcd363abf5",
"implementations": [
"eth:0xb08Cc720F511062537ca78BdB0AE691F04F5a957"
]
}
],
"description": "Used to manage global configuration values for multiple OP Chains within a single Superchain network. The SuperchainConfig contract manages individual pause states for each chain connected to it, as well as a global pause state for all chains. The guardian role can pause either separately, but each pause expires after 3 months if left untouched.\n* Roles:\n * **admin**: SuperchainProxyAdmin; ultimately SuperchainProxyAdminOwner\n * **guardian**: Optimism Guardian Multisig; ultimately OpFoundationUpgradeSafe, Optimism EOA 1, Optimism Security Council, SaferSafes",
"upgradableBy": [
{
"name": "SuperchainProxyAdminOwner",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x95703e0982140D16f8ebA6d158FccEde42f04a4C#code"
},
{
"name": "L1CrossDomainMessenger",
"isVerified": true,
"address": "eth:0x9BdA922e6f1bD53c24F9bCFb88B9638199A82CEb",
"upgradeability": {
"proxyType": "resolved delegate proxy",
"admins": [
"eth:0xd35FeF329Bb6569baa373BDa702F3dfF59D57321"
],
"implementations": [
"eth:0x3eA6084748ED1b2A9B5D4426181F1ad8C93F6231"
"eth:0x5D5a095665886119693F0B41d8DFeE78da033e8B"
],
"immutable": false
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1740171575,
"transactionHash": "0xa0b3cf1d929c237bfa21d3bf773de9d5c43d458fc658a5cc6dfe9bab465f109d",
"implementations": [
"eth:0xD3494713A5cfaD3F5359379DfA074E2Ac8C6Fd65"
]
},
{
"timestamp": 1774342031,
"transactionHash": "0x6fb404d33b12fb43ec63c0d91120b39a3dbebaa9835ae14477aee3f3a38bb9fc",
"implementations": [
"eth:0x3eA6084748ED1b2A9B5D4426181F1ad8C93F6231"
]
},
{
"timestamp": 1774892915,
"transactionHash": "0x5fdafef75018bf815bd1af062fd43e5e043d9a85562796e959c9f346c74aeb74",
"implementations": [
"eth:0x5D5a095665886119693F0B41d8DFeE78da033e8B"
]
}
],
"description": "Sends messages from host chain to this chain, and relays messages back onto host chain. In the event that a message sent from host chain to this chain is rejected for exceeding this chain's epoch gas limit, it can be resubmitted via this contract's replay function.\n* Roles:\n * **admin**: ProxyAdmin; ultimately Alchemy Multisig 1",
"upgradableBy": [
{
"name": "Alchemy Multisig 1",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x9BdA922e6f1bD53c24F9bCFb88B9638199A82CEb#code"
},
{
"name": "L1ERC721Bridge",
"isVerified": true,
"address": "eth:0xCcfa1f8A93640488E3E1AE90A0edAf44680E9f82",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xd35FeF329Bb6569baa373BDa702F3dfF59D57321"
],
"implementations": [
"eth:0x276d3730f219f7ec22274f7263180b8452B46d47"
"eth:0x7aE1d3BD877a4C5CA257404ce26BE93A02C98013"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1740171575,
"transactionHash": "0xa0b3cf1d929c237bfa21d3bf773de9d5c43d458fc658a5cc6dfe9bab465f109d",
"implementations": [
"eth:0xAE2AF01232a6c4a4d3012C5eC5b1b35059caF10d"
]
},
{
"timestamp": 1774342031,
"transactionHash": "0x6fb404d33b12fb43ec63c0d91120b39a3dbebaa9835ae14477aee3f3a38bb9fc",
"implementations": [
"eth:0x276d3730f219f7ec22274f7263180b8452B46d47"
]
},
{
"timestamp": 1774892915,
"transactionHash": "0x5fdafef75018bf815bd1af062fd43e5e043d9a85562796e959c9f346c74aeb74",
"implementations": [
"eth:0x7aE1d3BD877a4C5CA257404ce26BE93A02C98013"
]
}
],
"description": "Used to bridge ERC-721 tokens from host chain to this chain.\n* Roles:\n * **admin**: ProxyAdmin; ultimately Alchemy Multisig 1",
"upgradableBy": [
{
"name": "Alchemy Multisig 1",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xCcfa1f8A93640488E3E1AE90A0edAf44680E9f82#code"
},
{
"name": "L1StandardBridge",
"isVerified": true,
"address": "eth:0xFD4918e51d1e5aa2195C42654CF769b152C9d9C0",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xd35FeF329Bb6569baa373BDa702F3dfF59D57321"
],
"implementations": [
"eth:0x78972E88Ab8BBB517a36cAea23b931BAB58AD3c6"
"eth:0x0b09ba359A106C9ea3b181CBc5F394570c7d2a7A"
]
},
"chain": "ethereum",
"pastUpgrades": [],
"description": "The main entry point to deposit ERC20 tokens from host chain to this chain.\n* Roles:\n * **admin**: ProxyAdmin; ultimately Alchemy Multisig 1",
"upgradableBy": [
{
"name": "Alchemy Multisig 1",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xFD4918e51d1e5aa2195C42654CF769b152C9d9C0#code"
},
{
"name": "LivenessModule",
"isVerified": true,
"address": "eth:0x0454092516c9A4d636d3CAfA1e82161376C8a748",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "used to remove members inactive for 3mo 8d while making sure that the threshold remains above 75%. If the number of members falls below 8, the OpFoundationUpgradeSafe takes ownership of the multisig\n* Roles:\n * **fallbackOwner**: OpFoundationUpgradeSafe if the number of Optimism Security Council members falls below 8\n * **livenessGuard**: LivenessGuard",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x0454092516c9A4d636d3CAfA1e82161376C8a748#code"
},
{
"name": "PreimageOracle",
"isVerified": true,
"address": "eth:0x1fb8cdFc6831fc866Ed9C51aF8817Da5c287aDD3",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "The PreimageOracle contract is used to load the required data from L1 for a dispute game.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x1fb8cdFc6831fc866Ed9C51aF8817Da5c287aDD3#code"
},
{
"name": "OptimismMintableERC20Factory",
"isVerified": true,
"address": "eth:0x44e9388e88Bb8edE446d62590d8A4C6d34813e98",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xd35FeF329Bb6569baa373BDa702F3dfF59D57321"
],
"implementations": [
"eth:0x5493f4677A186f64805fe7317D6993ba4863988F"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1740171575,
"transactionHash": "0xa0b3cf1d929c237bfa21d3bf773de9d5c43d458fc658a5cc6dfe9bab465f109d",
"implementations": [
"eth:0xE01efbeb1089D1d1dB9c6c8b135C934C0734c846"
]
},
{
"timestamp": 1774342031,
"transactionHash": "0x6fb404d33b12fb43ec63c0d91120b39a3dbebaa9835ae14477aee3f3a38bb9fc",
"implementations": [
"eth:0x5493f4677A186f64805fe7317D6993ba4863988F"
]
}
],
"description": "A helper contract that generates OptimismMintableERC20 contracts on the network it's deployed to. OptimismMintableERC20 is a standard extension of the base ERC20 token contract designed to allow the L1StandardBridge contracts to mint and burn tokens. This makes it possible to use an OptimismMintableERC20 as this chain's representation of a token on the host chain, or vice-versa.\n* Roles:\n * **admin**: ProxyAdmin; ultimately Alchemy Multisig 1",
"upgradableBy": [
{
"name": "Alchemy Multisig 1",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x44e9388e88Bb8edE446d62590d8A4C6d34813e98#code"
},
{
"name": "SuperchainProxyAdmin",
"isVerified": true,
"address": "eth:0x543bA4AADBAb8f9025686Bd03993043599c6fB04",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "* Roles:\n * **owner**: SuperchainProxyAdminOwner",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x543bA4AADBAb8f9025686Bd03993043599c6fB04#code"
},
{
"name": "DeputyPauseModule",
"isVerified": true,
"address": "eth:0x76fC2F971FB355D0453cF9F64d3F9E4f640E1754",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "Allows 0x352f1defB49718e7Ea411687E850aA8d6299F7aC, called the deputy pauser, to act on behalf of the OpFoundationUpgradeSafe if set as its Safe module.\n* Roles:\n * **deputy**: Optimism EOA 1 though restricted to the SuperchainConfig's `pause()` function",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x76fC2F971FB355D0453cF9F64d3F9E4f640E1754#code"
},
{
"name": "MIPS",
"isVerified": true,
"address": "eth:0xaA59A0777648BC75cd10364083e878c1cCd6112a",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "The MIPS contract is used to execute the final step of the dispute game which objectively determines the winner of the dispute.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xaA59A0777648BC75cd10364083e878c1cCd6112a#code"
},
{
"name": "DelayedWETH",
"isVerified": true,
"address": "eth:0xC206D300b07cB905Cb1831d8a9172d4c66394638",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xd35FeF329Bb6569baa373BDa702F3dfF59D57321"
],
"implementations": [
"eth:0x5e40B9231B86984b5150507046e354dbFbeD3d9e"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1740171575,
"transactionHash": "0xa0b3cf1d929c237bfa21d3bf773de9d5c43d458fc658a5cc6dfe9bab465f109d",
"implementations": [
"eth:0x71e966Ae981d1ce531a7b6d23DC0f27B38409087"
]
},
{
"timestamp": 1774342031,
"transactionHash": "0x6fb404d33b12fb43ec63c0d91120b39a3dbebaa9835ae14477aee3f3a38bb9fc",
"implementations": [
"eth:0x5e40B9231B86984b5150507046e354dbFbeD3d9e"
]
}
],
"description": "Contract designed to hold the bonded ETH for each game. It is designed as a wrapper around WETH to allow an owner to function as a backstop if a game would incorrectly distribute funds.\n* Roles:\n * **admin**: ProxyAdmin; ultimately Alchemy Multisig 1\n * **owner**: Alchemy Multisig 1",
"upgradableBy": [
{
"name": "Alchemy Multisig 1",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xC206D300b07cB905Cb1831d8a9172d4c66394638#code"
},
{
"name": "ProxyAdmin",
"isVerified": true,
"address": "eth:0xd35FeF329Bb6569baa373BDa702F3dfF59D57321",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "* Roles:\n * **owner**: Alchemy Multisig 1",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xd35FeF329Bb6569baa373BDa702F3dfF59D57321#code"
},
{
"name": "PermissionedDisputeGame",
"name": "MIPS",
"isVerified": true,
"address": "eth:0xE80D2f0D8b994fE2CFD01B4e03f118Dc4F99ca8a",
"address": "eth:0xF027F4A985560fb13324e943edf55ad6F1d15Dc1",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "Same as FaultDisputeGame, but only two permissioned addresses are designated as proposer and challenger.\n",
"description": "The MIPS contract is used to execute the final step of the dispute game which objectively determines the winner of the dispute.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xE80D2f0D8b994fE2CFD01B4e03f118Dc4F99ca8a#code"
"url": "https://etherscan.io/address/0xF027F4A985560fb13324e943edf55ad6F1d15Dc1#code"
},
{
"name": "AnchorStateRegistry",
"isVerified": true,
"address": "eth:0xF75ed0F9cddec16608960f4a0127Cf35be9aCc7d",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xd35FeF329Bb6569baa373BDa702F3dfF59D57321"
],
"implementations": [
"eth:0x7b465370BB7A333f99edd19599EB7Fb1c2D3F8D2"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1774342031,
"transactionHash": "0x6fb404d33b12fb43ec63c0d91120b39a3dbebaa9835ae14477aee3f3a38bb9fc",
"implementations": [
"eth:0x7b465370BB7A333f99edd19599EB7Fb1c2D3F8D2"
]
}
],
"description": "Contains the latest confirmed state root that can be used as a starting point in a dispute game.\n* Roles:\n * **admin**: ProxyAdmin; ultimately Alchemy Multisig 1",
"upgradableBy": [
{
"name": "Alchemy Multisig 1",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xF75ed0F9cddec16608960f4a0127Cf35be9aCc7d#code"
},
{
"name": "PermissionedDisputeGame",
"isVerified": true,
"address": "eth:0xfA071DAC93879c0f86a3C4F63c63Da0cE299f558",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "Same as FaultDisputeGame, but only two permissioned addresses are designated as proposer and challenger.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xfA071DAC93879c0f86a3C4F63c63Da0cE299f558#code"
}
]
},
"escrows": [
{
"address": "0xFc1D560eB01443e31B0EB56620703E80e42A7E4e",
"sinceTimestamp": 1740171575,
"tokens": [
"ETH"
],
"contract": {
"isVerified": true,
"address": "eth:0xFc1D560eB01443e31B0EB56620703E80e42A7E4e",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xd35FeF329Bb6569baa373BDa702F3dfF59D57321"
],
"implementations": [
"eth:0x2D7e764a0D9919e16983a46595CfA81fc34fa7Cd"
"eth:0xB443Da3e07052204A02d630a8933dAc05a0d6fB4"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1740171575,
"transactionHash": "0xa0b3cf1d929c237bfa21d3bf773de9d5c43d458fc658a5cc6dfe9bab465f109d",
"implementations": [
"eth:0xe2F826324b2faf99E513D16D266c3F80aE87832B"
]
},
{
"timestamp": 1774342031,
"transactionHash": "0x6fb404d33b12fb43ec63c0d91120b39a3dbebaa9835ae14477aee3f3a38bb9fc",
"implementations": [
"eth:0x2D7e764a0D9919e16983a46595CfA81fc34fa7Cd"
]
},
{
"timestamp": 1774892915,
"transactionHash": "0x5fdafef75018bf815bd1af062fd43e5e043d9a85562796e959c9f346c74aeb74",
"implementations": [
"eth:0xB443Da3e07052204A02d630a8933dAc05a0d6fB4"
]
}
],
"description": "Main entry point for users depositing ETH.",
"upgradableBy": [
{
"name": "ProxyAdmin",
"delay": "no"
}
],
"url": "https://etherscan.io/address/0xFc1D560eB01443e31B0EB56620703E80e42A7E4e#code"
},
"chain": "ethereum",
"includeInTotal": true,
"chainId": 1
},
{
"address": "0xFD4918e51d1e5aa2195C42654CF769b152C9d9C0",
"sinceTimestamp": 1740171575,
"tokens": "*",
"contract": {
"isVerified": true,
"address": "eth:0xFD4918e51d1e5aa2195C42654CF769b152C9d9C0",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0xd35FeF329Bb6569baa373BDa702F3dfF59D57321"
],
"implementations": [
"eth:0x78972E88Ab8BBB517a36cAea23b931BAB58AD3c6"
"eth:0x0b09ba359A106C9ea3b181CBc5F394570c7d2a7A"
]
},
"chain": "ethereum",
"pastUpgrades": [],
"description": "Main entry point for users depositing ERC20 token that do not require custom gateway.",
"upgradableBy": [
{
"name": "ProxyAdmin",
"delay": "no"
}
],
"url": "https://etherscan.io/address/0xFD4918e51d1e5aa2195C42654CF769b152C9d9C0#code"
},
"chain": "ethereum",
"includeInTotal": true,
"chainId": 1
}
],
"programHashes": [
{
"title": "OP absolute prestate v1.6.1 (cannon64)",
"description": "A commitment to the initial state of the OP stack fault proof program.",
"programUrl": "https://github.com/ethereum-optimism/optimism/tree/op-program/v1.6.1/op-program",
"verificationStatus": "successful",
"verificationSteps": "\nSteps are based on [this guide](https://docs.optimism.io/chain-operators/tutorials/absolute-prestate).\n\n1. Install docker [https://docs.docker.com/get-started/get-docker/](https://docs.docker.com/get-started/get-docker/) and make sure it is running.\n2. Check out the correct branch of [optimism](https://github.com/ethereum-optimism/optimism) repo: `git checkout op-program/v1.6.1` . Commit hash should be `a094d016092e3355642d00be6d7943c4529ef008`.\n3. Regenerate the absolute prestate: `make reproducible-prestate`. This script will print out the correct hash.\n ",
"hash": "0x03eb07101fbdeaf3f04d9fb76526362c1eea2824e4c6e970bdb19675b72e4fc8"
}
],
"risks": [
{
"category": "Funds can be stolen if",
"text": "a contract receives a malicious code upgrade. There is no delay on code upgrades.",
"isCritical": true
}
],
"zkVerifiers": []
}
+1 -1
{
"baseTimestamp": 1774433040,
"baseTimestamp": 1775029097,
"contractsDiscoDriven": true,
"hasDiscoUi": true,
"isDiscoDriven": true,
"permissionsDiscoDriven": true
}
+1 -1
+1 -1
{
"baseTimestamp": 1774433058,
"baseTimestamp": 1775028883,
"contractsDiscoDriven": true,
"hasDiscoUi": true,
"isDiscoDriven": true,
"permissionsDiscoDriven": true
}
+1 -1
+1 -1
{
"baseTimestamp": 1774882415,
"baseTimestamp": 1775083700,
"contractsDiscoDriven": true,
"hasDiscoUi": true,
"isDiscoDriven": true,
"permissionsDiscoDriven": true
}