permissions
+16 -0
{
"ethereum": {
"roles": [],
"actors": [
{
"id": "Governance",
"name": "Governance",
"accounts": [
{
"address": "eth:0x8253F33026c49A430963FE3991441c02175bda95",
"type": "Contract",
"isVerified": true,
"name": "0x8253…da95",
"url": "https://etherscan.io/address/0x8253F33026c49A430963FE3991441c02175bda95"
}
],
"chain": "ethereum",
"description": "Allows scheduling transparent and shadow proposals, 'securityCouncil' role can execute without delay.\n* Can upgrade **with no delay**\n * ZKsyncOSChainTypeManager [via: ProxyAdmin]\n * L1NativeTokenVault [via: ProxyAdmin]\n * L1Nullifier [via: ProxyAdmin]\n * L1MessageRoot [via: ProxyAdmin]\n * BridgeHub [via: ProxyAdmin]\n * L1ChainAssetHandler [via: ProxyAdmin]\n * CTMDeploymentTracker [via: ProxyAdmin]\n * ValidatorTimelock [via: ProxyAdmin]\n * L1AssetRouter [via: ProxyAdmin]\n* Can interact with ZKsyncOSChainTypeManager\n * manage the shared ValidatorTimelock contract address and the admin role, register and execute upgrades (and set their deadlines), freeze, revert batches and set permissioned validators and fee params for all connected chains \n* Can interact with RollupDAManager\n * manage allowed rollup DA pairs (allowed to be used by rollups in permanent rollup mode) \n* Can interact with BridgeHub\n * set critical contract addresses for the shared cluster, register settlement layers, pause and unpause migrations and the bridge and manage zk chain registration ",
"discoveryDrivenData": true
},
{
"id": "ADI Multisig 2",
"name": "ADI Multisig 2",
"description": "A Multisig with 2/3 threshold. \n* Can upgrade **with no delay**\n * ServerNotifier [via: ChainAdminOwnable → ProxyAdmin]\n* Can interact with ZKsyncOSChainTypeManager\n * set the pending admin of this contract and the ServerNotifier contract address (ZK cluster Admin role) [via: ChainAdminOwnable]\n* Can interact with BridgeHub\n * create new zk chains (based on the current version), register tokens (ZK cluster Admin role) [via: ChainAdminOwnable]",
"accounts": [
{
"address": "eth:0xB272B188855128c10a933Edb62CC64c22B1f3754",
"type": "Contract",
"isVerified": true,
"name": "0xB272…3754",
"url": "https://etherscan.io/address/0xB272B188855128c10a933Edb62CC64c22B1f3754"
}
],
"chain": "ethereum",
"references": [],
"participants": [
{
"address": "eth:0x2e48bd8536b3756D95B44312dBD5BE0e56c29Dc9",
"type": "EOA",
"isVerified": true,
"name": "0x2e48…9Dc9",
"url": "https://etherscan.io/address/0x2e48bd8536b3756D95B44312dBD5BE0e56c29Dc9"
},
{
"address": "eth:0x3740B047227a94AcB5eCeCc5b7D6148857C81ecE",
"type": "EOA",
"isVerified": true,
"name": "0x3740…1ecE",
"url": "https://etherscan.io/address/0x3740B047227a94AcB5eCeCc5b7D6148857C81ecE"
},
{
"address": "eth:0x288c18627a5d15a380B5d3f8A78667D543A066A9",
"type": "EOA",
"isVerified": true,
"name": "0x288c…66A9",
"url": "https://etherscan.io/address/0x288c18627a5d15a380B5d3f8A78667D543A066A9"
}
],
"discoveryDrivenData": true
},
{
"id": "ValidatorTimelock",
"name": "ValidatorTimelock",
"accounts": [
{
"address": "eth:0xE28cAc160C2a79dFA1fbd2169AC5fa5d061cf186",
"type": "Contract",
"isVerified": true,
"name": "0xE28c…f186",
"url": "https://etherscan.io/address/0xE28cAc160C2a79dFA1fbd2169AC5fa5d061cf186"
}
],
"chain": "ethereum",
"description": "Intermediary contract between the *Validators* and the central diamond contract that delays block execution (ie withdrawals and other L2 --> L1 messages) by 0s.\n* Can interact with Diamond\n * commit, prove, execute, revert batches directly in the main Diamond contract. This role is typically held by a proxying ValidatorTimelock ",
"discoveryDrivenData": true
},
{
"id": "ADI Multisig 1",
"name": "ADI Multisig 1",
"description": "A Multisig with 2/3 threshold. \n* Can interact with Diamond\n * administrate operator roles for this chain in the ValidatorTimelock, manage fees, apply predefined upgrades, manage censorship through a TransactionFilterer, set DA mode, migrate the chain to whitelisted settlement layers (Chain Admin role) [via: ChainAdminOwnable]",
"accounts": [
{
"address": "eth:0xF50293Ac52f987122DcD67Eda0cFb34E9d7a0Cf9",
"type": "Contract",
"isVerified": true,
"name": "0xF502…0Cf9",
"url": "https://etherscan.io/address/0xF50293Ac52f987122DcD67Eda0cFb34E9d7a0Cf9"
}
],
"chain": "ethereum",
"references": [],
"participants": [
{
"address": "eth:0x2e48bd8536b3756D95B44312dBD5BE0e56c29Dc9",
"type": "EOA",
"isVerified": true,
"name": "0x2e48…9Dc9",
"url": "https://etherscan.io/address/0x2e48bd8536b3756D95B44312dBD5BE0e56c29Dc9"
},
{
"address": "eth:0x3740B047227a94AcB5eCeCc5b7D6148857C81ecE",
"type": "EOA",
"isVerified": true,
"name": "0x3740…1ecE",
"url": "https://etherscan.io/address/0x3740B047227a94AcB5eCeCc5b7D6148857C81ecE"
},
{
"address": "eth:0x288c18627a5d15a380B5d3f8A78667D543A066A9",
"type": "EOA",
"isVerified": true,
"name": "0x288c…66A9",
"url": "https://etherscan.io/address/0x288c18627a5d15a380B5d3f8A78667D543A066A9"
}
],
"discoveryDrivenData": true
},
{
"id": "Safe",
"name": "Safe",
"description": "A Multisig with 3/5 threshold. \n* Can interact with L1NativeTokenVault\n * pause / unpause the bridge \n* Can interact with L1Nullifier\n * pause, unpause and set critical escrow address references ",
"accounts": [
{
"address": "eth:0xdE4781a08Cc75D4E1b07fb3909840AE685960711",
"type": "Contract",
"isVerified": true,
"name": "0xdE47…0711",
"url": "https://etherscan.io/address/0xdE4781a08Cc75D4E1b07fb3909840AE685960711"
}
],
"chain": "ethereum",
"references": [],
"participants": [
{
"address": "eth:0x97B09eE71e99CeE29C28f92dc1dfD05F695d0Bc8",
"type": "EOA",
"isVerified": true,
"name": "0x97B0…0Bc8",
"url": "https://etherscan.io/address/0x97B09eE71e99CeE29C28f92dc1dfD05F695d0Bc8"
},
{
"address": "eth:0x85A1b4acceD2B34F0735C31FB26dcfc1c9f18ebf",
"type": "EOA",
"isVerified": true,
"name": "0x85A1…8ebf",
"url": "https://etherscan.io/address/0x85A1b4acceD2B34F0735C31FB26dcfc1c9f18ebf"
},
{
"address": "eth:0x17D2e02019e4f52C14E1cA55b612596A1FB39C3b",
"type": "EOA",
"isVerified": true,
"name": "0x17D2…9C3b",
"url": "https://etherscan.io/address/0x17D2e02019e4f52C14E1cA55b612596A1FB39C3b"
},
{
"address": "eth:0x3ABcFe4D76c76DcFbc5c8B369829d061C82A6C14",
"type": "EOA",
"isVerified": true,
"name": "0x3ABc…6C14",
"url": "https://etherscan.io/address/0x3ABcFe4D76c76DcFbc5c8B369829d061C82A6C14"
},
{
"address": "eth:0xA2D803c88D87b0C20c676E7C060f830449B43795",
"type": "EOA",
"isVerified": true,
"name": "0xA2D8…3795",
"url": "https://etherscan.io/address/0xA2D803c88D87b0C20c676E7C060f830449B43795"
}
],
"discoveryDrivenData": true
},
{
"id": "Safe",
"name": "Safe",
"description": "A Multisig with 2/3 threshold. ",
"accounts": [
{
"address": "eth:0x95f0c748f60624ddAd536d979993fA23FD86021a",
"type": "Contract",
"isVerified": true,
"name": "0x95f0…021a",
"url": "https://etherscan.io/address/0x95f0c748f60624ddAd536d979993fA23FD86021a"
}
],
"chain": "ethereum",
"references": [],
"participants": [
{
"address": "eth:0x48D3eb3A4F0C25f2C37F23B5aeb63ea3F88B265F",
"type": "EOA",
"isVerified": true,
"name": "0x48D3…265F",
"url": "https://etherscan.io/address/0x48D3eb3A4F0C25f2C37F23B5aeb63ea3F88B265F"
},
{
"address": "eth:0x2e48bd8536b3756D95B44312dBD5BE0e56c29Dc9",
"type": "EOA",
"isVerified": true,
"name": "0x2e48…9Dc9",
"url": "https://etherscan.io/address/0x2e48bd8536b3756D95B44312dBD5BE0e56c29Dc9"
},
{
"address": "eth:0xA1B9199081E5B849b998b1148a1d4921adb2A1b1",
"type": "EOA",
"isVerified": true,
"name": "0xA1B9…A1b1",
"url": "https://etherscan.io/address/0xA1B9199081E5B849b998b1148a1d4921adb2A1b1"
}
],
"discoveryDrivenData": true
},
{
"id": "EOA-1,-EOA-2,-EOA-3-and-EOA-4",
"name": "EOA 1, EOA 2, EOA 3 and EOA 4",
"accounts": [
{
"address": "eth:0x0b6f2116323C12EE731de6818e41861561bcd44C",
"type": "EOA",
"isVerified": true,
"name": "0x0b6f…d44C",
"url": "https://etherscan.io/address/0x0b6f2116323C12EE731de6818e41861561bcd44C",
"displayName": "EOA 1"
},
{
"address": "eth:0x37eEE7f0472F0740EAf152A3f5e888f7C5f62e51",
"type": "EOA",
"isVerified": true,
"name": "0x37eE…2e51",
"url": "https://etherscan.io/address/0x37eEE7f0472F0740EAf152A3f5e888f7C5f62e51",
"displayName": "EOA 2"
},
{
"address": "eth:0x6090e365149d005517e2013926cD18d767f04Aa1",
"type": "EOA",
"isVerified": true,
"name": "0x6090…4Aa1",
"url": "https://etherscan.io/address/0x6090e365149d005517e2013926cD18d767f04Aa1",
"displayName": "EOA 3"
},
{
"address": "eth:0xF8fF3e62E94807a5C687f418Fe36942dD3a24524",
"type": "EOA",
"isVerified": true,
"name": "0xF8fF…4524",
"url": "https://etherscan.io/address/0xF8fF3e62E94807a5C687f418Fe36942dD3a24524",
"displayName": "EOA 4"
}
],
"chain": "ethereum",
"description": "* Can interact with ValidatorTimelock\n * call the functions to commit, prove, execute and revert L2 batches through the ValidatorTimelock in the ADI Diamond contract ",
"discoveryDrivenData": true
},
{
"id": "EOA-5",
"name": "EOA 5",
"accounts": [
{
"address": "eth:0x5CcF89Ba204457129E6250B2570d77DbA790366a",
"type": "EOA",
"isVerified": true,
"name": "0x5CcF…366a",
"url": "https://etherscan.io/address/0x5CcF89Ba204457129E6250B2570d77DbA790366a",
"displayName": "EOA 5"
}
],
"chain": "ethereum",
"description": "* Can interact with ChainAdminOwnable\n * set the conversion factor for gas token deposits ",
"discoveryDrivenData": true
}
]
}
}
contracts
+1 -41
{
"addresses": {
"ethereum": [
{
"name": "Diamond",
"isVerified": true,
"address": "eth:0x0583Ef2B6416cb7B287406438B940E4d99680C5B",
"upgradeability": {
"proxyType": "EIP2535 diamond proxy",
"admins": [],
"implementations": [
"eth:0xf9DD56364E3878056654C756cEBA692e577f8466",
"eth:0xB0D33d94aD4048070f510eF0086F12d20595dd07",
"eth:0xFA565846c217Bc0bA0f75027D4eECccdD68a9708",
"eth:0x56767eB2E3197A1dfa030faaD4A65cF38E807c81"
],
"immutable": false
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1764062519,
"transactionHash": "0xaa1dbb6591bbc6c81cd9378502e6ae8f73f2da3de4dcec9b185b21bbdd650578",
"implementations": [
"eth:0x8C653b99f18Eb3bAb927519990bfC281500b0De6",
"eth:0x1807f10E686E5Cd6A655cF7343f093a7372cAf34",
"eth:0x3Be4B380F277Cb02dF56712667f7F8FA1Ca1536d",
"eth:0x6fB87A1dd4DE3bDbB96f2FA9ac7FCb74b7d4C792"
]
},
{
"timestamp": 1764062519,
"transactionHash": "0xaa1dbb6591bbc6c81cd9378502e6ae8f73f2da3de4dcec9b185b21bbdd650578",
"implementations": [
"eth:0x8C653b99f18Eb3bAb927519990bfC281500b0De6",
"eth:0x1807f10E686E5Cd6A655cF7343f093a7372cAf34",
"eth:0x3Be4B380F277Cb02dF56712667f7F8FA1Ca1536d",
"eth:0x6fB87A1dd4DE3bDbB96f2FA9ac7FCb74b7d4C792"
]
},
{
"timestamp": 1764062519,
"transactionHash": "0xaa1dbb6591bbc6c81cd9378502e6ae8f73f2da3de4dcec9b185b21bbdd650578",
"implementations": [
"eth:0x8C653b99f18Eb3bAb927519990bfC281500b0De6",
"eth:0x1807f10E686E5Cd6A655cF7343f093a7372cAf34",
"eth:0x3Be4B380F277Cb02dF56712667f7F8FA1Ca1536d",
"eth:0x6fB87A1dd4DE3bDbB96f2FA9ac7FCb74b7d4C792"
]
},
{
"timestamp": 1768899023,
"transactionHash": "0x5a347ad3e11919a37fd5cc2e3f933678ebbbf11b6bcd4f2e1cf6f9f80b6e7462",
"implementations": [
"eth:0xf9DD56364E3878056654C756cEBA692e577f8466",
"eth:0xB0D33d94aD4048070f510eF0086F12d20595dd07",
"eth:0xFA565846c217Bc0bA0f75027D4eECccdD68a9708",
"eth:0x56767eB2E3197A1dfa030faaD4A65cF38E807c81"
]
},
{
"timestamp": 1770285503,
"transactionHash": "0x3837cd476c7e8b1131d519f1dd8aed9cb1fbd779716260b0ff79196520f81b21",
"implementations": [
"eth:0xf9DD56364E3878056654C756cEBA692e577f8466",
"eth:0xB0D33d94aD4048070f510eF0086F12d20595dd07",
"eth:0xFA565846c217Bc0bA0f75027D4eECccdD68a9708",
"eth:0x56767eB2E3197A1dfa030faaD4A65cF38E807c81"
]
},
{
"timestamp": 1775673407,
"transactionHash": "0x4428eb3c0a1be76b850c3a1cd744087320aa49dfa2304311ed0579c10ec1e568",
"implementations": [
"eth:0xf9DD56364E3878056654C756cEBA692e577f8466",
"eth:0xB0D33d94aD4048070f510eF0086F12d20595dd07",
"eth:0xFA565846c217Bc0bA0f75027D4eECccdD68a9708",
"eth:0x8991bF7Ed45ad2B8352efbaB83aD6e00c056a61c"
]
},
{
"timestamp": 1775739935,
"transactionHash": "0x08471063fd03e8dacd215a9c030f4c54a0f002c778a9a8283bc5161efae20e39",
"implementations": [
"eth:0xf9DD56364E3878056654C756cEBA692e577f8466",
"eth:0xB0D33d94aD4048070f510eF0086F12d20595dd07",
"eth:0xFA565846c217Bc0bA0f75027D4eECccdD68a9708",
"eth:0x56767eB2E3197A1dfa030faaD4A65cF38E807c81"
]
},
{
"timestamp": 1788943103,
"transactionHash": "0xb8aa1631290b261ab7bbc2d789cfcaec178946b0ec7c9231b139ad9ce23ea8c7",
"implementations": [
"eth:0xf9DD56364E3878056654C756cEBA692e577f8466",
"eth:0xB0D33d94aD4048070f510eF0086F12d20595dd07",
"eth:0xFA565846c217Bc0bA0f75027D4eECccdD68a9708",
"eth:0x56767eB2E3197A1dfa030faaD4A65cF38E807c81"
]
}
],
"description": "The main contract defining the Layer 2. Operator actions like commiting blocks, providing ZK proofs and executing batches ultimately target this contract which then processes transactions. During batch execution it processes L1 --> L2 and L2 --> L1 transactions.\n* Roles:\n * **getAdmin**: ChainAdminOwnable; ultimately ADI Multisig 1",
"description": "The main contract defining the Layer 2. Operator actions like commiting blocks, providing ZK proofs and executing batches ultimately target this contract which then processes transactions. During batch execution it processes L1 --> L2 and L2 --> L1 transactions.\n* Roles:\n * **getAdmin**: ChainAdminOwnable; ultimately ADI Multisig 1\n * **validators**: ValidatorTimelock",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x0583Ef2B6416cb7B287406438B940E4d99680C5B#code"
},
{
"name": "ZKsyncOSChainTypeManager",
"isVerified": true,
"address": "eth:0x08A1D2962fC29AA46e869A1E7561112cc1026EfA",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x8140aBB60c9AfB5241D90af948Cfa7644b2D3217"
],
"implementations": [
"eth:0x721e27269ce348F71bdAAd7B7b033Afa60e404e0"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1764062063,
"transactionHash": "0xa5b440f6a0256100dac3d76a00374198366113b10688034f6b014b247a31cee4",
"implementations": [
"eth:0x191D1D51a9CBe988E69ad3D27eFab60663e5ed61"
]
},
{
"timestamp": 1768897787,
"transactionHash": "0x9443189514311b66d96da238adb1a18e3043616a45b62a6e99cd6f64b5996e81",
"implementations": [
"eth:0x721e27269ce348F71bdAAd7B7b033Afa60e404e0"
]
}
],
"description": "[FORK] This contract is not the standard hub contract from the Elastic network but a local fork for ADI chain. Defines L2 diamond contract versions, creation and upgrade data and the proof system for all ZK stack chains connected to it. ZK chains are children of this central contract and can only upgrade to versions that were previously registered here. The current protocol version is 0,30,2.\n* Roles:\n * **admin**: ChainAdminOwnable, ProxyAdmin; ultimately ADI Multisig 2, Governance\n * **owner**: Governance",
"upgradableBy": [
{
"name": "Governance",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x08A1D2962fC29AA46e869A1E7561112cc1026EfA#code"
},
{
"name": "RollupDAManager",
"isVerified": true,
"address": "eth:0x57B05e2394B3A12708C552A891f8b0f93645EdEA",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "Simple registry for allowed DA validators for different data availability modes. Scheme 3 is used by default RollupL1DAValidator, the commitment includes EIP-4844 blobs data. Scheme 4 is used only for ZKsyncOS, it is keccak of blob versioned hashes filled with pubdata.\n* Roles:\n * **owner**: Governance",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x57B05e2394B3A12708C552A891f8b0f93645EdEA#code"
},
{
"name": "L1Nullifier",
"isVerified": true,
"address": "eth:0x5E5a72077dFB354Dfe61200b8f31fa491F9B9Cea",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x8140aBB60c9AfB5241D90af948Cfa7644b2D3217"
],
"implementations": [
"eth:0x64E12498Afe66FAD714417E3fA7824E67189b31d"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1764060407,
"transactionHash": "0xc8f25c8c05512ee3427467c81af5e2b8374ce4cd605988d6a7079bc98438c451",
"implementations": [
"eth:0x64E12498Afe66FAD714417E3fA7824E67189b31d"
]
}
],
"description": "Contract responsible for bookkeeping L1 bridging transactions. Used to finalize withdrawals and reclaim failed deposits. Does not escrow funds.\n* Roles:\n * **admin**: ProxyAdmin; ultimately Governance\n * **owner**: Safe",
"upgradableBy": [
{
"name": "Governance",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x5E5a72077dFB354Dfe61200b8f31fa491F9B9Cea#code"
},
{
"name": "L1MessageRoot",
"isVerified": true,
"address": "eth:0x783e8Cb57366888F84d815fd53c3aeE99b2d6d37",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x8140aBB60c9AfB5241D90af948Cfa7644b2D3217"
],
"implementations": [
"eth:0x5BaC331B75f3bF88148bfb0be2a76be4FBb05417"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1764060407,
"transactionHash": "0x20dedea6ad2da50130929c575615065d3842ab03ead9c9038f2e649172a2b94f",
"implementations": [
"eth:0x5BaC331B75f3bF88148bfb0be2a76be4FBb05417"
]
}
],
"description": "Aggregates remote bridge message roots from all ZK stack chains. To be used with the Gateway when deployed.\n* Roles:\n * **admin**: ProxyAdmin; ultimately Governance",
"upgradableBy": [
{
"name": "Governance",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x783e8Cb57366888F84d815fd53c3aeE99b2d6d37#code"
},
{
"name": "BridgeHub",
"isVerified": true,
"address": "eth:0x7a38c18a229Ef8a0AE7104Ba272A46280f2d59Cb",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x8140aBB60c9AfB5241D90af948Cfa7644b2D3217"
],
"implementations": [
"eth:0xcf1c73439c85f7eB9d4439dAf398Fd6392d176E6"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1764060407,
"transactionHash": "0x24b5555ead6371a88f4727edf42d0a2d07901ce8b698fe2e999feebde6dd3fbe",
"implementations": [
"eth:0xcf1c73439c85f7eB9d4439dAf398Fd6392d176E6"
]
}
],
"description": "[FORK] This contract is not the standard hub contract from the Elastic network but a local fork for ADI chain. The main registry (hub) for chain contracts (supports more than ADI chain) and central entrypoint for bridge transactions. Stores important mappings like from chainId to diamond address, from chainId to parent CTM, from chainId to base token etc. A clone of Bridgehub is also deployed on each L2 chain, but this clone is only used on settlement layers.\n* Roles:\n * **admin**: ChainAdminOwnable, ProxyAdmin; ultimately ADI Multisig 2, Governance\n * **owner**: Governance",
"upgradableBy": [
{
"name": "Governance",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x7a38c18a229Ef8a0AE7104Ba272A46280f2d59Cb#code"
},
{
"name": "CTMDeploymentTracker",
"isVerified": true,
"address": "eth:0xaCD4a320f8a45abE71756B85DF519201d041EA5f",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x8140aBB60c9AfB5241D90af948Cfa7644b2D3217"
],
"implementations": [
"eth:0xB3AE8d7a583278C25faD1714F342AE284046fEa4"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1764060407,
"transactionHash": "0xe48b3a261a691f2d2fbdfe9226d0c5a2bd4900493b790aa1cd97544d35856cfd",
"implementations": [
"eth:0xB3AE8d7a583278C25faD1714F342AE284046fEa4"
]
}
],
"description": "Asset deployment tracker where the 'asset' is a ChainTypeManager. The registering of asset IDs for ChainTypeManagers is necessary to be able to migrate them to a given settlement layer, for example the Gateway.\n* Roles:\n * **admin**: ProxyAdmin; ultimately Governance",
"upgradableBy": [
{
"name": "Governance",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xaCD4a320f8a45abE71756B85DF519201d041EA5f#code"
},
{
"name": "ValidatorTimelock",
"isVerified": true,
"address": "eth:0xE28cAc160C2a79dFA1fbd2169AC5fa5d061cf186",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x8140aBB60c9AfB5241D90af948Cfa7644b2D3217"
],
"implementations": [
"eth:0x6CB28384f21B18924FA312AA2E10D4E813e66263"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1764061739,
"transactionHash": "0x3495b74edc718006ba1b887dadf4fcf2fa6aaafa16a9b38dfe35234fa4f5177b",
"implementations": [
"eth:0x406f329645E323B1bd1C020a219e30E6DAf4f899"
]
},
{
"timestamp": 1768897787,
"transactionHash": "0x9443189514311b66d96da238adb1a18e3043616a45b62a6e99cd6f64b5996e81",
"implementations": [
"eth:0x6CB28384f21B18924FA312AA2E10D4E813e66263"
]
}
],
"description": "Intermediary contract between the *Validators* and the central diamond contract that delays block execution (ie withdrawals and other L2 --> L1 messages) by 0s.\n* Roles:\n * **admin**: ProxyAdmin; ultimately Governance\n * **validatorVTL**: EOA 1, EOA 2, EOA 3, EOA 4",
"upgradableBy": [
{
"name": "Governance",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xE28cAc160C2a79dFA1fbd2169AC5fa5d061cf186#code"
},
{
"name": "L1AssetRouter",
"isVerified": true,
"address": "eth:0xf25227EFAD2046d19777A4CA540b5C016Df7fe7A",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x8140aBB60c9AfB5241D90af948Cfa7644b2D3217"
],
"implementations": [
"eth:0x47eec6F57c7E84391Ba6C9Ac976537d0DB0bb257"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1764060407,
"transactionHash": "0x940ca188ed2f661f4b78ba579d0fedf4fc3a6e25f30a62c6911761599140a282",
"implementations": [
"eth:0x47eec6F57c7E84391Ba6C9Ac976537d0DB0bb257"
]
}
],
"description": "Canonical central asset router for all ZK stack chains. Routes deposits and withdrawals to the respective asset handlers (like the L1NativeTokenVault); does not escrow funds itself.\n* Roles:\n * **admin**: ProxyAdmin; ultimately Governance",
"upgradableBy": [
{
"name": "Governance",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xf25227EFAD2046d19777A4CA540b5C016Df7fe7A#code"
},
{
"name": "ChainAdminOwnable",
"isVerified": true,
"address": "eth:0x0a8a2473cc5731575a94f58F470851Bc6695B5B8",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "A governance proxy that lets ADI Multisig 1 act through it.\n* Roles:\n * **owner**: ADI Multisig 1\n * **tokenMultiplierSetter**: EOA 5",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x0a8a2473cc5731575a94f58F470851Bc6695B5B8#code"
},
{
"name": "ChainAdminOwnable",
"isVerified": true,
"address": "eth:0x2d6E82F1f8fba89a67cc8d742B12633db4732Ca7",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "A governance proxy that lets ADI Multisig 2 act through it.\n* Roles:\n * **owner**: ADI Multisig 2",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x2d6E82F1f8fba89a67cc8d742B12633db4732Ca7#code"
},
{
"name": "L1ERC20Bridge",
"isVerified": true,
"address": "eth:0xfA8B5EA9b8d36a72Eb0ba66Cc7aBc83d9deeC3B8",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "Legacy bridge for depositing ERC20 tokens to ADI Chain.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xfA8B5EA9b8d36a72Eb0ba66Cc7aBc83d9deeC3B8#code"
},
{
"name": "L1NativeTokenVault",
"isVerified": true,
"address": "eth:0x0A0F8912162Ff83A036883dbaDA42efF647a3065",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x8140aBB60c9AfB5241D90af948Cfa7644b2D3217"
],
"implementations": [
"eth:0x2FC2a2dB562046C732d3aB0f4e1c1F62C3eE8e3E"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1764060407,
"transactionHash": "0x70c7ca0de2ffe71507b4900352721efaa0dcefe222c0e248e3c2149c6e981a06",
"implementations": [
"eth:0x2FC2a2dB562046C732d3aB0f4e1c1F62C3eE8e3E"
]
}
],
"description": "Canonical central asset escrow for all ZK stack chains.\n* Roles:\n * **admin**: ProxyAdmin; ultimately Governance\n * **owner**: Safe",
"upgradableBy": [
{
"name": "Governance",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x0A0F8912162Ff83A036883dbaDA42efF647a3065#code"
},
{
"name": "ProxyAdmin",
"isVerified": true,
"address": "eth:0x34f56Ba641aC59E897c6179ffeCAe9769fbfC90C",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "* Roles:\n * **owner**: ChainAdminOwnable",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x34f56Ba641aC59E897c6179ffeCAe9769fbfC90C#code"
},
{
"name": "ProxyAdmin",
"isVerified": true,
"address": "eth:0x8140aBB60c9AfB5241D90af948Cfa7644b2D3217",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "* Roles:\n * **owner**: Governance",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x8140aBB60c9AfB5241D90af948Cfa7644b2D3217#code"
},
{
"name": "L1ChainAssetHandler",
"isVerified": true,
"address": "eth:0x924E0145347243a94C5C69e372Ca52c77f8e6CF1",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x8140aBB60c9AfB5241D90af948Cfa7644b2D3217"
],
"implementations": [
"eth:0x0C06695f21B118a9A10101D303f00575A566D1A0"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1764060407,
"transactionHash": "0x1d89af101c273be6c173849a3f16c585fd26e85eb0e03e10ad2ac72012c9a66d",
"implementations": [
"eth:0x0C06695f21B118a9A10101D303f00575A566D1A0"
]
}
],
"description": "Specialized contract for managing chain assets, i.e. chain migrations.\n* Roles:\n * **admin**: ProxyAdmin; ultimately Governance",
"upgradableBy": [
{
"name": "Governance",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0x924E0145347243a94C5C69e372Ca52c77f8e6CF1#code"
},
{
"name": "ZKsyncOSVerifierPlonk",
"isVerified": true,
"address": "eth:0xC1288A84C5b2c93Ed4bF712fF4Bb96D862b32aa9",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xC1288A84C5b2c93Ed4bF712fF4Bb96D862b32aa9#code"
},
{
"name": "ZKsyncOSDualVerifier",
"isVerified": true,
"address": "eth:0xccbdfd7f9A8e60d0C1e79fa620205d14121e7a39",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "A router contract for verifiers. Routes verification requests to THE PLONK VERIFIER ONLY depending on the supplied proof version.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xccbdfd7f9A8e60d0C1e79fa620205d14121e7a39#code"
},
{
"name": "ServerNotifier",
"isVerified": true,
"address": "eth:0xd477bd7f14F9A26ebd51827EFB1d40a41f71b70C",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x34f56Ba641aC59E897c6179ffeCAe9769fbfC90C"
],
"implementations": [
"eth:0xDc64B98F394A8bf980F777631352029C9114e2e6"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1764061739,
"transactionHash": "0x72192c4f02430295786d5865c815e8e9499e896f37cb49635478d0096cc8b2cc",
"implementations": [
"eth:0xDc64B98F394A8bf980F777631352029C9114e2e6"
]
}
],
"description": "A simple contract that can be called by the ChainAdmin to emit notifications about chain migrations.\n* Roles:\n * **admin**: ProxyAdmin; ultimately ADI Multisig 2",
"upgradableBy": [
{
"name": "ADI Multisig 2",
"delay": "no"
}
],
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xd477bd7f14F9A26ebd51827EFB1d40a41f71b70C#code"
},
{
"name": "ZKsyncOSVerifierFflonk",
"isVerified": true,
"address": "eth:0xF6b3708BE4192CE4526c2F87D4c3eABA79230E6A",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "Verifies a zk-SNARK proof using an implementation of the fflonk proof system.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xF6b3708BE4192CE4526c2F87D4c3eABA79230E6A#code"
},
{
"name": "BlobsL1DAValidatorZKsyncOS",
"isVerified": true,
"address": "eth:0xFB630a206E6D7485cB9DFa929859E1a977F0a211",
"upgradeability": {
"proxyType": "immutable",
"admins": [],
"implementations": [],
"immutable": true
},
"chain": "ethereum",
"description": "DA verifier specifically for zksync OS chains. It keeps track of blob versioned hashes and checks if blob with particular hash was published.\n",
"discoveryDrivenData": true,
"url": "https://etherscan.io/address/0xFB630a206E6D7485cB9DFa929859E1a977F0a211#code"
}
]
},
"escrows": [
{
"address": "0x0A0F8912162Ff83A036883dbaDA42efF647a3065",
"sinceTimestamp": 1764060407,
"tokens": "*",
"contract": {
"isVerified": true,
"address": "eth:0x0A0F8912162Ff83A036883dbaDA42efF647a3065",
"upgradeability": {
"proxyType": "EIP1967 proxy",
"admins": [
"eth:0x8140aBB60c9AfB5241D90af948Cfa7644b2D3217"
],
"implementations": [
"eth:0x2FC2a2dB562046C732d3aB0f4e1c1F62C3eE8e3E"
]
},
"chain": "ethereum",
"pastUpgrades": [
{
"timestamp": 1764060407,
"transactionHash": "0x70c7ca0de2ffe71507b4900352721efaa0dcefe222c0e248e3c2149c6e981a06",
"implementations": [
"eth:0x2FC2a2dB562046C732d3aB0f4e1c1F62C3eE8e3E"
]
}
],
"description": "Main escrow contract of ADI chain.",
"url": "https://etherscan.io/address/0x0A0F8912162Ff83A036883dbaDA42efF647a3065#code"
},
"chain": "ethereum",
"includeInTotal": true,
"chainId": 1
}
],
"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:0xC1288A84C5b2c93Ed4bF712fF4Bb96D862b32aa9"
]
}