# INTMAX Markdown version of https://l2beat.com/layer2s/projects/intmax ## Summary **Warning:** Legacy withdrawals on this version of INTMAX2 are suspended after a cryptographic vulnerability was discovered in the balance proof circuit. No exploitation has been observed and funds remain secure in the Ethereum liquidity contract, but users are urged to exit via the new Exit system before assisted support ends. See the [exit documentation](https://intmax-exit.gitbook.io/intmax-exit-documentation) and [announcement](https://x.com/intmaxIO/status/2049396434513138094) for details. - Total Value Secured: $129.30 K (-1.76% compared to seven days ago; canonically bridged $129.30 K, natively minted $0.00, externally bridged $0.00; 0.00% with additional trust assumptions compared to the tokens involved and the Stage assigned to the project's canonical messaging bridge) - TVS by asset: ETH & derivatives $128.82 K (99.6%), Stablecoins $487.57 (0.37%), BTC & derivatives $1.05 (0.00%) - Past day UOPS: No data - Stage: Stage 0 (Appchain) - Type: ZK Rollup - Purpose: Payments - Host chain: Scroll - Risks shown: combined with host chain Scroll; Risk analysis also lists each separately ### Risks - Sequencer failure: Self sequence (sentiment: good) - State validation: Validity proofs (SN) (No execution delay; sentiment: good) - Data availability: Self custodied (sentiment: good) - Exit window: None (sentiment: bad) - Proposer failure: Self propose (sentiment: good) ### About INTMAX is a stateless Plasma-like ZK Rollup that enables private payments and minimal onchain costs. ### Links - Website: https://intmax.io/ - Bridge: https://app.intmax.io/bridge - Docs: https://docs.network.intmax.io, https://eprint.iacr.org/2023/1082.pdf, https://medium.com/intmax/the-deep-dive-into-statelessness-intmax2-algorithm-was-published-be7a306048ff - Explorer: https://explorer.intmax.io/ - Repository: https://github.com/InternetMaximalism - Social: https://twitter.com/intmaxIO, https://discord.com/invite/TGMctchPR6 - Contracts explorer (Disco): https://disco.l2beat.com/ui/p/intmax ### Badges - Application-specific chain: This project is built to operate a specific application - Built on top of Scroll: The project has Scroll as its host chain - Privacy: This project supports private transactions natively ## Value Secured The interactive TVS charts are shown on [the HTML page](https://l2beat.com/layer2s/projects/intmax#tvs). Token by token: [TVS breakdown](https://l2beat.com/layer2s/projects/intmax/tvs-breakdown). - [TVS chart (JSON)](https://l2beat.com/api/scaling/tvs/intmax) - [TVS breakdown by token (JSON)](https://l2beat.com/api/scaling/tvs/intmax/breakdown) ## Milestones & Incidents - 2026-02-07 (incident): [INTMAX operation paused](https://x.com/intmaxIO/status/2020160706893553808). Due to technical problems with ZK proving system, INTMAX L2 operation was paused and users were encouraged to withdraw deposited tokens. - 2025-06-26: [INTMAX mainnet officially launched](https://www.linkedin.com/posts/intmax_june-26-2025-marked-a-turning-point-activity-7346176278313476097-8bUL/). After a testnet launch in December 2024, INTMAX publicly launches its mainnet. ## Risk summary There are 2 additional risks coming from the host chain [Scroll](https://l2beat.com/layer2s/projects/scroll) ### Funds can be stolen if 1. a contract receives a malicious code upgrade. There is no delay on code upgrades (CRITICAL). ### Funds can be lost if 2. users lose the self-custodied data required to prove their balance. ## Risk analysis The L3 risks depend on the individual properties of L3 and those of the host chain combined. **Warning:** Legacy withdrawals on this version of INTMAX2 are suspended after a cryptographic vulnerability was discovered in the balance proof circuit. No exploitation has been observed and funds remain secure in the Ethereum liquidity contract, but users are urged to exit via the new Exit system before assisted support ends. See the [exit documentation](https://intmax-exit.gitbook.io/intmax-exit-documentation) and [announcement](https://x.com/intmaxIO/status/2049396434513138094) for details. | | Sequencer failure | State validation | Data availability | Exit window | Proposer failure | | --- | --- | --- | --- | --- | --- | | Scroll (L2) | Self sequence (sentiment: good) | Validity proofs (ST, SN) (sentiment: good) | Onchain (sentiment: good) | None (sentiment: bad) | Self propose (sentiment: good) | | INTMAX (L3, individual) | Self sequence (sentiment: good) | Validity proofs (SN) (sentiment: good) | Self custodied (sentiment: good) | None (sentiment: bad) | Self propose (sentiment: good) | | INTMAX (L3, combined) | Self sequence (sentiment: good) | Validity proofs (SN) (sentiment: good) | Self custodied (sentiment: good) | None (sentiment: bad) | Self propose (sentiment: good) | ### L3 combined risks The information below reflects combined L2 & L3 risks. #### Sequencer failure Self sequence (sentiment: good) In the event of a sequencer failure, users can force transactions to be included in the project's chain by sending them to L1. There can be up to a 7d delay on this operation. Proposing new blocks requires creating ZK proofs. #### State validation Validity proofs (SN) (No execution delay; sentiment: good) SNARKs are succinct zero knowledge proofs that ensure state correctness, but require trusted setup. #### Data availability Self custodied (sentiment: good) All data required for payments and withdrawals is self custodied by users. #### Exit window None (sentiment: bad) There is no window for users to exit in case of an unwanted upgrade since contracts are instantly upgradable. #### Proposer failure Self propose (sentiment: good) If the Proposer fails, users can leverage the source available prover to submit proofs to the L1 bridge. ## Stage INTMAX is a Stage 0 Appchain ZK Rollup. ### Stage 0 4 requirements met. - Met: A complete and functional proof system is deployed. - Met: The project calls itself a rollup. - Met: Inputs for the state transition function are posted to Ethereum L1. - Met: A source-available node exists that can recreate the state from Ethereum L1 data. Please note that the L2BEAT team has not verified the validity of the node source code. [View code](https://github.com/InternetMaximalism/intmax2-node) ### Stage 1 4 issues need fixing. **Principle** - Issue: Compromising ≥75% of the Security Council should be the only way (other than bugs) for a rollup to indefinitely block an L2→L1 message (e.g. a withdrawal) or push an invalid L2→L1 message (e.g. an invalid withdrawal) with a <7d exit window. **Guidelines** - Met: The proof system meets the minimum trusted setup requirements defined in the L2BEAT [trusted setup assessment framework](https://forum.l2beat.com/t/the-trusted-setups-framework-for-zk-catalog/381). - Met: Prover source code is published. - Issue: Users' withdrawals can be censored by the permissioned operators. - Issue: Upgrades executed by actors with more centralized control than a Security Council provide less than 7d for users to exit if the permissioned operator is down or censoring. - Issue: The Security Council is not properly set up. ### Stage 2 2 issues need fixing. - Issue: Upgrades unrelated to onchain provable bugs provide less than 30d to exit. - Issue: The Security Council's actions are not confined to onchain provable bugs. [Learn more about Stages](https://l2beat.com/stages). Please keep in mind that these stages do not reflect project security, this is an opinionated assessment of project maturity based on subjective criteria, created with a goal of incentivizing projects to push toward better decentralization. Each team may have taken different paths to achieve this goal. ## Data availability ### All data required for payments is self-custodied by users INTMAX uses a self-custodied data availability model where users maintain their own "balance proofs" to allow for private payments. These balance proofs are computed using data received from aggregators when depositing or initiating a transfer, and from payment senders when receiving funds. The protocol ensures that all data has been made available by requiring users to sign off blocks that contain their deposits or outgoing transfers. Users would not accept payments if they have not received the necessary balance proof from the sender. **Risks** - Funds can be lost if users lose the self-custodied data required to prove their balance. **References** - [INTMAX Whitepaper](https://eprint.iacr.org/2023/1082.pdf) ## State validation INTMAX uses validity proofs to ensure that users cannot withdraw more than they have. For every transfer made, a ZK proof is required to prove the amount that has been transferred to be subtracted from the sender's balance. If the user does not provide the proof, the balance is considered zero. For received funds, the user must provide the corresponding balance proofs as well, but if the sender has not provided the proof, the user can still withdraw the remaining balance. ### ZK Circuits The source code of the circuits can be found [here](https://github.com/InternetMaximalism/intmax2-zkp). **References** - [INTMAX Whitepaper](https://eprint.iacr.org/2023/1082.pdf) - [intmax2-zkp - Github repository](https://github.com/InternetMaximalism/intmax2-zkp) ### Prover: [INTMAX](https://l2beat.com/zk-catalog/intmaxprover) #### Trusted setups - Gnark (Plonk): - Aztec Ignition, risk green (lowest risk) per the [Trusted Setups Risk Framework](https://forum.l2beat.com/t/the-trusted-setups-framework-for-zk-catalog/381): Aztec Ignition is a trusted setup ceremony that was run by Aztec for KZG commitment over BN254 curve in 2019. It included 176 participants and was publicly open for participation. - Onchain verifiers: [PlonkVerifier](https://scrollscan.com/address/0x1d38545a33740Ab3480d9035bB3126914404423d#code) (1 not verified) - Used in: [INTMAX](https://l2beat.com/layer2s/projects/intmax) - Verifiers: 1 not verified ## Upgrades & Governance ### Past upgrades The metrics include upgrades on the currently used proxy contracts. Historical proxy contracts and changes of such are not included. - Count of upgrades: 7 - Last upgrade: 8mo 2d ago - Avg upgrade interval: 5mo 18d - 2026-02-15 09:41 UTC, upgrade of [LiquidityV2](https://etherscan.io/address/0xF65e73aAc9182e353600a916a6c7681F810f79C3#code): transaction [0x7ae0a3b4f0284d10ee582d9f28124a5798fb68f4f5ecdeddcd915d77abf30799](https://etherscan.io/tx/0x7ae0a3b4f0284d10ee582d9f28124a5798fb68f4f5ecdeddcd915d77abf30799), implementations: [0x890662DF84603CcF62b940292252BDd3aa0b5382](https://etherscan.io/address/0x890662DF84603CcF62b940292252BDd3aa0b5382#code) ([diff](https://disco.l2beat.com/diff/eth:0xd12FF9c1542F0826DB4c7cAe8BcC4fbeF3d3B6c9/eth:0x890662DF84603CcF62b940292252BDd3aa0b5382)) - 2026-02-15 02:32 UTC, deployment of [Exit](https://etherscan.io/address/0x41BCB335eB2f92E54F9577E7c3D6e172a5bfdD6B#code): transaction [0x098a5a57b90967c06973d8aad9d74c83057b522650f5ab125202162b3e95857b](https://etherscan.io/tx/0x098a5a57b90967c06973d8aad9d74c83057b522650f5ab125202162b3e95857b), implementations: [0x24b880Ee40387dc86e374F707B5081c34Edb5eA3](https://etherscan.io/address/0x24b880Ee40387dc86e374F707B5081c34Edb5eA3#code) - 2026-02-10 09:51 UTC, upgrade of [Rollup](https://scrollscan.com/address/0x1c88459D014e571c332BF9199aD2D35C93219A2e#code): transaction [0xbd41e060791e0e158dc07aafdfb52c0e26c76ea9193852ab9d4d5c8eb9e9fe70](https://scrollscan.com/tx/0xbd41e060791e0e158dc07aafdfb52c0e26c76ea9193852ab9d4d5c8eb9e9fe70), implementations: [0xeAc5302f9AA81B38867Ef4Fd37D4e480C0bb8820](https://scrollscan.com/address/0xeAc5302f9AA81B38867Ef4Fd37D4e480C0bb8820#code) ([diff](https://disco.l2beat.com/diff/scr:0xF34299210fB8505232649e9BEa14a84DD75e746b/scr:0xeAc5302f9AA81B38867Ef4Fd37D4e480C0bb8820)) - 2026-02-07 14:29 UTC, upgrade of [LiquidityV2](https://etherscan.io/address/0xF65e73aAc9182e353600a916a6c7681F810f79C3#code): transaction [0x95073b3d48f892101baf0c2e857a0b0b8f72dd6ae5fdfecd49c0814dfec4cd69](https://etherscan.io/tx/0x95073b3d48f892101baf0c2e857a0b0b8f72dd6ae5fdfecd49c0814dfec4cd69), implementations: [0xd12FF9c1542F0826DB4c7cAe8BcC4fbeF3d3B6c9](https://etherscan.io/address/0xd12FF9c1542F0826DB4c7cAe8BcC4fbeF3d3B6c9#code) ([diff](https://disco.l2beat.com/diff/eth:0xD31F61281A4b262aEa79cbBE09A436975a8b63EA/eth:0xd12FF9c1542F0826DB4c7cAe8BcC4fbeF3d3B6c9)) - 2025-08-30 13:25 UTC, upgrade of [LiquidityV2](https://etherscan.io/address/0xF65e73aAc9182e353600a916a6c7681F810f79C3#code): transaction [0x93f7c96b159e82cd555266aa0451fb2d3a7eb8475edf83f66a15fa617de1eca0](https://etherscan.io/tx/0x93f7c96b159e82cd555266aa0451fb2d3a7eb8475edf83f66a15fa617de1eca0), implementations: [0xD31F61281A4b262aEa79cbBE09A436975a8b63EA](https://etherscan.io/address/0xD31F61281A4b262aEa79cbBE09A436975a8b63EA#code) ([diff](https://disco.l2beat.com/diff/eth:0x4fd8BF5f45832a007448fcDE29049919F8cf6D0d/eth:0xD31F61281A4b262aEa79cbBE09A436975a8b63EA)) - 2025-08-16 05:42 UTC, upgrade of [Claim](https://scrollscan.com/address/0x22ac649b3229eC099C32D790e9e46FbA2CE6C9A5#code): transaction [0xcb1b6cb53aeb3e3946facae2aa425a1b82068dcdeb41deeaaacae2948c3e4f3a](https://scrollscan.com/tx/0xcb1b6cb53aeb3e3946facae2aa425a1b82068dcdeb41deeaaacae2948c3e4f3a), implementations: [0x5216C8D0F2188a91aD07Fe4F334F220b2F7b59EA](https://scrollscan.com/address/0x5216C8D0F2188a91aD07Fe4F334F220b2F7b59EA#code) ([diff](https://disco.l2beat.com/diff/scr:0x1899bF9D0e40Dd1bB6C3CCF2123A0Bd1DE0F0548/scr:0x5216C8D0F2188a91aD07Fe4F334F220b2F7b59EA)) - 2025-08-16 05:42 UTC, upgrade of [Withdrawal](https://scrollscan.com/address/0x86B06D2604D9A6f9760E8f691F86d5B2a7C9c449#code): transaction [0xcb1b6cb53aeb3e3946facae2aa425a1b82068dcdeb41deeaaacae2948c3e4f3a](https://scrollscan.com/tx/0xcb1b6cb53aeb3e3946facae2aa425a1b82068dcdeb41deeaaacae2948c3e4f3a), implementations: [0x614ef91D1971A4dB458ABde03c62247afc57A753](https://scrollscan.com/address/0x614ef91D1971A4dB458ABde03c62247afc57A753#code) ([diff](https://disco.l2beat.com/diff/scr:0xDFC6EB6642FEAF99629c6629b2f7dC7eB9F1a0A3/scr:0x614ef91D1971A4dB458ABde03c62247afc57A753)) - 2025-07-17 14:04 UTC, upgrade of [LiquidityV2](https://etherscan.io/address/0xF65e73aAc9182e353600a916a6c7681F810f79C3#code): transaction [0x305d92e409c58e4ce7facda3e759b383326706f81af0bf530fca37cdff758c1e](https://etherscan.io/tx/0x305d92e409c58e4ce7facda3e759b383326706f81af0bf530fca37cdff758c1e), implementations: [0x4fd8BF5f45832a007448fcDE29049919F8cf6D0d](https://etherscan.io/address/0x4fd8BF5f45832a007448fcDE29049919F8cf6D0d#code) ([diff](https://disco.l2beat.com/diff/eth:0x0fE3E6018E53cb90020b5C06BC4c7c4FcEa1eBF0/eth:0x4fd8BF5f45832a007448fcDE29049919F8cf6D0d)) - 2025-07-17 08:23 UTC, deployment of [Claim](https://scrollscan.com/address/0x22ac649b3229eC099C32D790e9e46FbA2CE6C9A5#code): transaction [0x51f594e6a45f74ba5ca4a9536e7911be101f6a9ee7efb1471ee6e359af36c6ef](https://scrollscan.com/tx/0x51f594e6a45f74ba5ca4a9536e7911be101f6a9ee7efb1471ee6e359af36c6ef), implementations: [0x1899bF9D0e40Dd1bB6C3CCF2123A0Bd1DE0F0548](https://scrollscan.com/address/0x1899bF9D0e40Dd1bB6C3CCF2123A0Bd1DE0F0548#code) - 2025-07-16 11:38 UTC, deployment of [Withdrawal](https://scrollscan.com/address/0x86B06D2604D9A6f9760E8f691F86d5B2a7C9c449#code): transaction [0x42a803443a8cce32af6abb340909910f95b82c9e4b62d9002ce8c5554bf6ad8a](https://scrollscan.com/tx/0x42a803443a8cce32af6abb340909910f95b82c9e4b62d9002ce8c5554bf6ad8a), implementations: [0xDFC6EB6642FEAF99629c6629b2f7dC7eB9F1a0A3](https://scrollscan.com/address/0xDFC6EB6642FEAF99629c6629b2f7dC7eB9F1a0A3#code) - 2025-07-16 11:37 UTC, deployment of [Rollup](https://scrollscan.com/address/0x1c88459D014e571c332BF9199aD2D35C93219A2e#code): transaction [0x00ed05b1421c07fc3016adada820d7e853df1a1898e4b8636b1139c6712b1ffd](https://scrollscan.com/tx/0x00ed05b1421c07fc3016adada820d7e853df1a1898e4b8636b1139c6712b1ffd), implementations: [0xF34299210fB8505232649e9BEa14a84DD75e746b](https://scrollscan.com/address/0xF34299210fB8505232649e9BEa14a84DD75e746b#code) - 2025-06-21 10:24 UTC, deployment of [PredicatePermitter](https://etherscan.io/address/0x11D58231A79D866674EaAa043Fdaeae9A3dF4c0E#code): transaction [0x1171a710716e4ea09dd241bd14fad955a99e5bc2dc7662530f1b25c3b4f1020f](https://etherscan.io/tx/0x1171a710716e4ea09dd241bd14fad955a99e5bc2dc7662530f1b25c3b4f1020f), implementations: [0xef082Ff43805B93Ed375Fd47A964Fe136cCB9021](https://etherscan.io/address/0xef082Ff43805B93Ed375Fd47A964Fe136cCB9021#code) - 2025-06-21 10:09 UTC, deployment of [LiquidityV2](https://etherscan.io/address/0xF65e73aAc9182e353600a916a6c7681F810f79C3#code): transaction [0xbb35cae7bb4711e7e2db56c10d3f09f1c2d482bb00912b6593577d4dd744a86e](https://etherscan.io/tx/0xbb35cae7bb4711e7e2db56c10d3f09f1c2d482bb00912b6593577d4dd744a86e), implementations: [0x0fE3E6018E53cb90020b5C06BC4c7c4FcEa1eBF0](https://etherscan.io/address/0x0fE3E6018E53cb90020b5C06BC4c7c4FcEa1eBF0#code) - 2025-06-21 10:09 UTC, deployment of [Contribution](https://etherscan.io/address/0x4c614C7BB9420caA1F19cB2C58B00864f2125Ce2#code): transaction [0x8650dce84d7ab72b87aebbc5655861fa2734ef95c3046485f40dc2901b291656](https://etherscan.io/tx/0x8650dce84d7ab72b87aebbc5655861fa2734ef95c3046485f40dc2901b291656), implementations: [0x09665baEFbfaAE3E9b3AC854717C2ab5534d2D25](https://etherscan.io/address/0x09665baEFbfaAE3E9b3AC854717C2ab5534d2D25#code) - 2025-06-21 10:00 UTC, deployment of [Contribution](https://scrollscan.com/address/0x42Fe7Db60c4C70eBb7597dB9a0959F9fCa0114af#code): transaction [0x80b8d8e13d4baaf9f60d6487bc220584103ae955efb88bea6c95cdff57ebb46c](https://scrollscan.com/tx/0x80b8d8e13d4baaf9f60d6487bc220584103ae955efb88bea6c95cdff57ebb46c), implementations: [0x8305Ca6756b0edb49ed9503C1Cf39Cb64a00b955](https://scrollscan.com/address/0x8305Ca6756b0edb49ed9503C1Cf39Cb64a00b955#code) ## Updates Each date links the update on the HTML page, which also shows its contract diffs. ### [2026-08-20 12:56 UTC](https://l2beat.com/layer2s/projects/intmax?update=c984d351) (9 changes) Verified the sources of a proxy admin contract, permissions auto resolved for its Safe owner. ### [2026-02-16 22:14 UTC](https://l2beat.com/layer2s/projects/intmax?update=069e6a06) (high severity, 10 changes) Upgraded Liquidity to LiquidityV2 and deployed a new Exit contract, introducing a timelocked exit mechanism. LiquidityV2 extends the original Liquidity contract with a new `exitTransfer` function gated by an `EXIT_ROLE`, which can transfer any token type (ETH, ERC20, ERC721, ERC1155) from the contract: https://disco.l2beat.com/diff/eth:0xd12FF9c1542F0826DB4c7cAe8BcC4fbeF3d3B6c9/eth:0x890662DF84603CcF62b940292252BDd3aa0b5382 New Exit contract (eth:0x41BCB335eB2f92E54F9577E7c3D6e172a5bfdD6B) holds the EXIT_ROLE and implements a timelocked withdrawal flow: - SUBMITTER_ROLE (backend) submits withdrawal requests with recipient, token, and amount - 24-hour timelock before execution - After timelock, anyone can execute permissionlessly via `executeRequest()` - GUARDIAN_ROLE can cancel requests during timelock and pause the contract - Execution calls `LIQUIDITY.exitTransfer()` to transfer tokens from LiquidityV2 Note: LiquidityV2 remains paused (from Feb 10 update), so deposits/relaying are still disabled, but the Exit contract is active and processing withdrawal requests. ### [2026-02-10 11:47 UTC](https://l2beat.com/layer2s/projects/intmax?update=8e617391) (high severity, 17 changes) Paused the operation of Intmax L3. In particular: - Added functionality to pause withdrawals for the main contract on Ethereum: https://disco.l2beat.com/diff/eth:0xD31F61281A4b262aEa79cbBE09A436975a8b63EA/eth:0xd12FF9c1542F0826DB4c7cAe8BcC4fbeF3d3B6c9. - Also added functionality to pause block posting on the rollup contract on scroll: https://disco.l2beat.com/diff/scr:0xF34299210fB8505232649e9BEa14a84DD75e746b/scr:0xeAc5302f9AA81B38867Ef4Fd37D4e480C0bb8820. - Updated circuitDigest on withdrawal contract, which prevents submission of withdrawal validity proofs. - Paused Liquidity contract (no deposits/withdrawals possible now) - Paused Rollup contract (no blocks could be posted) ### [2026-01-12 11:19 UTC](https://l2beat.com/layer2s/projects/intmax?update=bcdd0b61) (high severity, 6 changes) PredicateServiceManager aggregator EOA (`0x38f6001e8ac11240f903CBa56aFF72A1425ae371`) revoked its EIP7702 delegation, returning to a standard EOA. Ownership of the PredicateServiceManager transferred back to a 4/4 multisig (`0x8A3c2193521Cf895D77c8Dedb290fC5E19126fdE`) from the previous EOA owner (3 new EOAs added). ### [2026-01-07 11:04 UTC](https://l2beat.com/layer2s/projects/intmax?update=1d9ed067) (high severity, 13 changes) PredicateServiceManager aggregator 7702-delegated to unverified smart contract. ### [2026-01-06 16:38 UTC](https://l2beat.com/layer2s/projects/intmax?update=1423ae78) (8 changes) Removed multisig member, decreased threshold. ### [2025-11-20 11:22 UTC](https://l2beat.com/layer2s/projects/intmax?update=8e804f9a) (4 changes) Owner of PredicateServiceManager (managing the deposits AML checks) is now an EOA. ### [2025-11-13 11:27 UTC](https://l2beat.com/layer2s/projects/intmax?update=fca95a09) (high severity, 11 changes) New ServiceManager (predicateManager) https://disco.l2beat.com/diff/eth:0x1BafAF26d236FbEA3E86075370B554eC0477bFD0/eth:0x7FC138988d13deD38FA22aBc4e15e855c92b092E - introduces option for owner to register operators to AVS directly, and a toggle for the owner to allow or deactivate registrations. ### [2025-10-20 15:32 UTC](https://l2beat.com/layer2s/projects/intmax?update=f735f967) (53 changes) All operators have been removed except one. ### [2025-09-02 11:33 UTC](https://l2beat.com/layer2s/projects/intmax?update=9ba58d9f) (high severity, 6 changes) A `.transfer` has been turned into a `.call`. Nothing more. ### [2025-08-22 08:14 UTC](https://l2beat.com/layer2s/projects/intmax?update=2e58095d) (high severity, 19 changes) - [Claim diff](https://disco.l2beat.com/diff/scr:0x1899bF9D0e40Dd1bB6C3CCF2123A0Bd1DE0F0548/scr:0x5216C8D0F2188a91aD07Fe4F334F220b2F7b59EA): added a "circuit digest", needs further investigation. - [Withdrawal diff](https://disco.l2beat.com/diff/scr:0xDFC6EB6642FEAF99629c6629b2f7dC7eB9F1a0A3/scr:0x614ef91D1971A4dB458ABde03c62247afc57A753): also added the circuit digest. Needs further investigation. - The two verifiers have now be replaced by a single PlonkVerifier contract, which is used by both Claim and Withdrawal contracts. Once again, needs further investigation. ### [2025-08-04 08:18 UTC](https://l2beat.com/layer2s/projects/intmax?update=0a862631) (7 changes) Provide description of changes. This section will be preserved. ### [2025-08-04 08:18 UTC](https://l2beat.com/layer2s/projects/intmax?update=0a914835) (8 changes) Provide description of changes. This section will be preserved. ## Operator The section considers only the L3 properties. For more details please refer to [Scroll](https://l2beat.com/layer2s/projects/scroll) ### There is no central operator There is no privileged entity that sequences transactions or produces blocks. This activity is permissionless and open to anyone. **References** - [INTMAX Block Builder - INTMAX docs](https://docs.network.intmax.io/developers-hub/intmax-block-builder) ## Withdrawals The section considers only the L3 properties. For more details please refer to [Scroll](https://l2beat.com/layer2s/projects/scroll) ### Users can autonomously exit their funds Users can autonomously exit by providing a ZK proof of sufficient balance. This requires keeping track of all funds received and sent. While INTMAX is technically an L3 on Scroll, funds are stored on Ethereum. **References** - [Withdrawal aggregator - Github repository](https://github.com/InternetMaximalism/intmax2-withdrawal-aggregator) ## Other considerations ### Deposits are gated by Predicate AVS (AML) Deposits must be signed by a Predicate AVS operator to ensure compliance with Anti-Money Laundering (AML) regulations. When a user is onboarded, it cannot be then blocked from using the system. **References** - [Predicate docs](https://docs.predicate.io/essentials/introduction) ## Permissions Explore these contracts and permissions in Disco, L2BEAT's contract explorer: https://disco.l2beat.com/ui/p/intmax ### Ethereum #### Actors ##### GnosisSafe Addresses: [0x8A3c2193521Cf895D77c8Dedb290fC5E19126fdE](https://etherscan.io/address/0x8A3c2193521Cf895D77c8Dedb290fC5E19126fdE) A Multisig with 2/4 threshold. - Can upgrade **with no delay** - PredicateServiceManager [via: ProxyAdmin] - Can interact with PredicateServiceManager - can add and remove permissioned operators, deregister regular operators, register new policies, override existing policies, and in general manage the AVS (e.g. thresholds, strategies) and the connection to EigenLayer Participants (4): [0xa283Ad6f064227944061442Ba4975aad315985e5](https://etherscan.io/address/0xa283Ad6f064227944061442Ba4975aad315985e5), [0x949A718aca94eB060aBB4C59B05995e257666F7F](https://etherscan.io/address/0x949A718aca94eB060aBB4C59B05995e257666F7F), [0xFb37A6BC0DC1c52900a8E50A2D6d1b7a59CEa02c](https://etherscan.io/address/0xFb37A6BC0DC1c52900a8E50A2D6d1b7a59CEa02c), [0x110b66ea6F97c0391eEfFDd19CD0cFd73e9871fA](https://etherscan.io/address/0x110b66ea6F97c0391eEfFDd19CD0cFd73e9871fA) ##### PredicateServiceManager Addresses: [0xf6f4A30EeF7cf51Ed4Ee1415fB3bFDAf3694B0d2](https://etherscan.io/address/0xf6f4A30EeF7cf51Ed4Ee1415fB3bFDAf3694B0d2) - Can interact with LiquidityV2 - approves deposits through AML checks [via: PredicatePermitter] ##### INTMAX Multisig 1 Addresses: [0xA3C2a579af4cF3853172058e5c76d273DC1542DD](https://etherscan.io/address/0xA3C2a579af4cF3853172058e5c76d273DC1542DD) A Multisig with 2/4 threshold. Participants (4): [0x2EAB2633c6180Ec592fB7A22EDAF323ccA51F85A](https://l2beat.com/layer2s/projects/intmax#EOA-1,-EOA-2,-EOA-3-and-EOA-5) (EOA 2), [0x1eB7d5898A9b3dCB8145e37B564ef00bC4cB794D](https://l2beat.com/layer2s/projects/intmax#EOA-1,-EOA-2,-EOA-3-and-EOA-5) (EOA 1), [0xB89001Ef513E10482B2667a0fC70F06cfF3a7418](https://l2beat.com/layer2s/projects/intmax#EOA-1,-EOA-2,-EOA-3-and-EOA-5) (EOA 5), [0x5C044174cC9bcA35b933a2B5107b494BAFf34Bb6](https://l2beat.com/layer2s/projects/intmax#EOA-1,-EOA-2,-EOA-3-and-EOA-5) (EOA 3) ##### INTMAX Multisig 3 Addresses: [0xe147e23753505e2C83b5f9ef229a9B7e7B3F50Ea](https://etherscan.io/address/0xe147e23753505e2C83b5f9ef229a9B7e7B3F50Ea) A Multisig with 1/4 threshold. Participants (4): [0x2EAB2633c6180Ec592fB7A22EDAF323ccA51F85A](https://l2beat.com/layer2s/projects/intmax#EOA-1,-EOA-2,-EOA-3-and-EOA-5) (EOA 2), [0x5C044174cC9bcA35b933a2B5107b494BAFf34Bb6](https://l2beat.com/layer2s/projects/intmax#EOA-1,-EOA-2,-EOA-3-and-EOA-5) (EOA 3), [0xB89001Ef513E10482B2667a0fC70F06cfF3a7418](https://l2beat.com/layer2s/projects/intmax#EOA-1,-EOA-2,-EOA-3-and-EOA-5) (EOA 5), [0x1eB7d5898A9b3dCB8145e37B564ef00bC4cB794D](https://l2beat.com/layer2s/projects/intmax#EOA-1,-EOA-2,-EOA-3-and-EOA-5) (EOA 1) ##### 4 EOAs Addresses: [0x1eB7d5898A9b3dCB8145e37B564ef00bC4cB794D](https://etherscan.io/address/0x1eB7d5898A9b3dCB8145e37B564ef00bC4cB794D) (EOA 1), [0x2EAB2633c6180Ec592fB7A22EDAF323ccA51F85A](https://etherscan.io/address/0x2EAB2633c6180Ec592fB7A22EDAF323ccA51F85A) (EOA 2), [0x5C044174cC9bcA35b933a2B5107b494BAFf34Bb6](https://etherscan.io/address/0x5C044174cC9bcA35b933a2B5107b494BAFf34Bb6) (EOA 3), [0xB89001Ef513E10482B2667a0fC70F06cfF3a7418](https://etherscan.io/address/0xB89001Ef513E10482B2667a0fC70F06cfF3a7418) (EOA 5) Member of INTMAX Multisig 1, INTMAX Multisig 3. - Can upgrade **with no delay** - PredicatePermitter [via: INTMAX Multisig 3] ##### EOA 4 Addresses: [0xA8E0Db294aD54E9187CeE41c4d471186bf5Aa7A6](https://etherscan.io/address/0xA8E0Db294aD54E9187CeE41c4d471186bf5Aa7A6) - Can interact with LiquidityV2 - can relay deposits to the main rollup contract on Scroll ### Scroll #### Actors ##### INTMAX Multisig 2 Addresses: [0xA3C2a579af4cF3853172058e5c76d273DC1542DD](https://scrollscan.com/address/0xA3C2a579af4cF3853172058e5c76d273DC1542DD) A Multisig with 2/4 threshold. - Can upgrade **with no delay** - Rollup - Claim - Withdrawal - Can interact with Claim - can update the verifier address - Can interact with Withdrawal - can update the verifier address and the list of tokens that can be withdrawn automatically, in contrast to those that have to be actively claimed Participants (4): [0x2EAB2633c6180Ec592fB7A22EDAF323ccA51F85A](https://scrollscan.com/address/0x2EAB2633c6180Ec592fB7A22EDAF323ccA51F85A), [0x1eB7d5898A9b3dCB8145e37B564ef00bC4cB794D](https://scrollscan.com/address/0x1eB7d5898A9b3dCB8145e37B564ef00bC4cB794D), [0xB89001Ef513E10482B2667a0fC70F06cfF3a7418](https://scrollscan.com/address/0xB89001Ef513E10482B2667a0fC70F06cfF3a7418), [0x5C044174cC9bcA35b933a2B5107b494BAFf34Bb6](https://scrollscan.com/address/0x5C044174cC9bcA35b933a2B5107b494BAFf34Bb6) ##### EOA 6 Addresses: [0x0000000000000000000000000000000000000000](https://scrollscan.com/address/0x0000000000000000000000000000000000000000) - Can upgrade **with no delay** - Contribution ## Smart contracts ![A diagram of the smart contract architecture](https://l2beat.com/static/images/architecture/intmax.9f3ec71f.png) Explore these contracts and permissions in Disco, L2BEAT's contract explorer: https://disco.l2beat.com/ui/p/intmax ### Ethereum #### PredicatePermitter Addresses: [0x11D58231A79D866674EaAa043Fdaeae9A3dF4c0E](https://etherscan.io/address/0x11D58231A79D866674EaAa043Fdaeae9A3dF4c0E#code), [0xef082Ff43805B93Ed375Fd47A964Fe136cCB9021](https://etherscan.io/address/0xef082Ff43805B93Ed375Fd47A964Fe136cCB9021#code) (Implementation (Upgradable)), [0xe147e23753505e2C83b5f9ef229a9B7e7B3F50Ea](https://etherscan.io/address/0xe147e23753505e2C83b5f9ef229a9B7e7B3F50Ea#code) (Admin) **Past upgrades** (Count of upgrades: No upgrades, Last upgrade: N/A, Avg upgrade interval: N/A) - 2025-06-21 10:24 UTC, deployment of [PredicatePermitter](https://etherscan.io/address/0x11D58231A79D866674EaAa043Fdaeae9A3dF4c0E#code): transaction [0x1171a710716e4ea09dd241bd14fad955a99e5bc2dc7662530f1b25c3b4f1020f](https://etherscan.io/tx/0x1171a710716e4ea09dd241bd14fad955a99e5bc2dc7662530f1b25c3b4f1020f), implementations: [0xef082Ff43805B93Ed375Fd47A964Fe136cCB9021](https://etherscan.io/address/0xef082Ff43805B93Ed375Fd47A964Fe136cCB9021#code) Contract that connects INTMAX deposits to the Predicate AVS that ultimately checks AML requirements. It stores a policy ID to be then referenced by the Predicate AVS. - Roles: - **admin**: INTMAX Multisig 3; ultimately EOA 1, EOA 2, EOA 3, EOA 5 - **getPredicateManager**: PredicateServiceManager Can be upgraded by: EOA 1 with no delay, EOA 2 with no delay, EOA 3 with no delay, EOA 5 with no delay #### Exit Addresses: [0x41BCB335eB2f92E54F9577E7c3D6e172a5bfdD6B](https://etherscan.io/address/0x41BCB335eB2f92E54F9577E7c3D6e172a5bfdD6B#code), [0x24b880Ee40387dc86e374F707B5081c34Edb5eA3](https://etherscan.io/address/0x24b880Ee40387dc86e374F707B5081c34Edb5eA3#code) (Implementation (Upgradable)), [0x0000000000000000000000000000000000000000](https://etherscan.io/address/0x0000000000000000000000000000000000000000#code) (Admin) **Past upgrades** (Count of upgrades: No upgrades, Last upgrade: N/A, Avg upgrade interval: N/A) - 2026-02-15 02:32 UTC, deployment of [Exit](https://etherscan.io/address/0x41BCB335eB2f92E54F9577E7c3D6e172a5bfdD6B#code): transaction [0x098a5a57b90967c06973d8aad9d74c83057b522650f5ab125202162b3e95857b](https://etherscan.io/tx/0x098a5a57b90967c06973d8aad9d74c83057b522650f5ab125202162b3e95857b), implementations: [0x24b880Ee40387dc86e374F707B5081c34Edb5eA3](https://etherscan.io/address/0x24b880Ee40387dc86e374F707B5081c34Edb5eA3#code) Timelocked exit mechanism. SUBMITTER_ROLE queues withdrawal requests with a 24-hour timelock, after which anyone can execute them permissionlessly. GUARDIAN_ROLE can cancel pending requests and pause the contract. #### Contribution Addresses: [0x4c614C7BB9420caA1F19cB2C58B00864f2125Ce2](https://etherscan.io/address/0x4c614C7BB9420caA1F19cB2C58B00864f2125Ce2#code), [0x09665baEFbfaAE3E9b3AC854717C2ab5534d2D25](https://etherscan.io/address/0x09665baEFbfaAE3E9b3AC854717C2ab5534d2D25#code) (Implementation (Upgradable)), [0x0000000000000000000000000000000000000000](https://etherscan.io/address/0x0000000000000000000000000000000000000000#code) (Admin) **Past upgrades** (Count of upgrades: No upgrades, Last upgrade: N/A, Avg upgrade interval: N/A) - 2025-06-21 10:09 UTC, deployment of [Contribution](https://etherscan.io/address/0x4c614C7BB9420caA1F19cB2C58B00864f2125Ce2#code): transaction [0x8650dce84d7ab72b87aebbc5655861fa2734ef95c3046485f40dc2901b291656](https://etherscan.io/tx/0x8650dce84d7ab72b87aebbc5655861fa2734ef95c3046485f40dc2901b291656), implementations: [0x09665baEFbfaAE3E9b3AC854717C2ab5534d2D25](https://etherscan.io/address/0x09665baEFbfaAE3E9b3AC854717C2ab5534d2D25#code) Records a set of 'contribution' actions by saving addresses with a tag of their action (e.g. propose blocks, claim withdrawals, deposit...). #### ProxyAdmin Addresses: [0x7153803C06d6a36D6d91aEB3C1ed8e5b934Df601](https://etherscan.io/address/0x7153803C06d6a36D6d91aEB3C1ed8e5b934Df601#code) - Roles: - **owner**: GnosisSafe #### LiquidityV2 (escrow) Addresses: [0xF65e73aAc9182e353600a916a6c7681F810f79C3](https://etherscan.io/address/0xF65e73aAc9182e353600a916a6c7681F810f79C3#code), [0x890662DF84603CcF62b940292252BDd3aa0b5382](https://etherscan.io/address/0x890662DF84603CcF62b940292252BDd3aa0b5382#code) (Implementation (Upgradable)), [0x0000000000000000000000000000000000000000](https://etherscan.io/address/0x0000000000000000000000000000000000000000#code) (Admin) **Past upgrades** (Count of upgrades: 4, Last upgrade: 8mo 2d ago, Avg upgrade interval: 3mo 6d) - 2026-02-15 09:41 UTC, upgrade of [LiquidityV2](https://etherscan.io/address/0xF65e73aAc9182e353600a916a6c7681F810f79C3#code): transaction [0x7ae0a3b4f0284d10ee582d9f28124a5798fb68f4f5ecdeddcd915d77abf30799](https://etherscan.io/tx/0x7ae0a3b4f0284d10ee582d9f28124a5798fb68f4f5ecdeddcd915d77abf30799), implementations: [0x890662DF84603CcF62b940292252BDd3aa0b5382](https://etherscan.io/address/0x890662DF84603CcF62b940292252BDd3aa0b5382#code) ([diff](https://disco.l2beat.com/diff/eth:0xd12FF9c1542F0826DB4c7cAe8BcC4fbeF3d3B6c9/eth:0x890662DF84603CcF62b940292252BDd3aa0b5382)) - 2026-02-07 14:29 UTC, upgrade of [LiquidityV2](https://etherscan.io/address/0xF65e73aAc9182e353600a916a6c7681F810f79C3#code): transaction [0x95073b3d48f892101baf0c2e857a0b0b8f72dd6ae5fdfecd49c0814dfec4cd69](https://etherscan.io/tx/0x95073b3d48f892101baf0c2e857a0b0b8f72dd6ae5fdfecd49c0814dfec4cd69), implementations: [0xd12FF9c1542F0826DB4c7cAe8BcC4fbeF3d3B6c9](https://etherscan.io/address/0xd12FF9c1542F0826DB4c7cAe8BcC4fbeF3d3B6c9#code) ([diff](https://disco.l2beat.com/diff/eth:0xD31F61281A4b262aEa79cbBE09A436975a8b63EA/eth:0xd12FF9c1542F0826DB4c7cAe8BcC4fbeF3d3B6c9)) - 2025-08-30 13:25 UTC, upgrade of [LiquidityV2](https://etherscan.io/address/0xF65e73aAc9182e353600a916a6c7681F810f79C3#code): transaction [0x93f7c96b159e82cd555266aa0451fb2d3a7eb8475edf83f66a15fa617de1eca0](https://etherscan.io/tx/0x93f7c96b159e82cd555266aa0451fb2d3a7eb8475edf83f66a15fa617de1eca0), implementations: [0xD31F61281A4b262aEa79cbBE09A436975a8b63EA](https://etherscan.io/address/0xD31F61281A4b262aEa79cbBE09A436975a8b63EA#code) ([diff](https://disco.l2beat.com/diff/eth:0x4fd8BF5f45832a007448fcDE29049919F8cf6D0d/eth:0xD31F61281A4b262aEa79cbBE09A436975a8b63EA)) - 2025-07-17 14:04 UTC, upgrade of [LiquidityV2](https://etherscan.io/address/0xF65e73aAc9182e353600a916a6c7681F810f79C3#code): transaction [0x305d92e409c58e4ce7facda3e759b383326706f81af0bf530fca37cdff758c1e](https://etherscan.io/tx/0x305d92e409c58e4ce7facda3e759b383326706f81af0bf530fca37cdff758c1e), implementations: [0x4fd8BF5f45832a007448fcDE29049919F8cf6D0d](https://etherscan.io/address/0x4fd8BF5f45832a007448fcDE29049919F8cf6D0d#code) ([diff](https://disco.l2beat.com/diff/eth:0x0fE3E6018E53cb90020b5C06BC4c7c4FcEa1eBF0/eth:0x4fd8BF5f45832a007448fcDE29049919F8cf6D0d)) - 2025-06-21 10:09 UTC, deployment of [LiquidityV2](https://etherscan.io/address/0xF65e73aAc9182e353600a916a6c7681F810f79C3#code): transaction [0xbb35cae7bb4711e7e2db56c10d3f09f1c2d482bb00912b6593577d4dd744a86e](https://etherscan.io/tx/0xbb35cae7bb4711e7e2db56c10d3f09f1c2d482bb00912b6593577d4dd744a86e), implementations: [0x0fE3E6018E53cb90020b5C06BC4c7c4FcEa1eBF0](https://etherscan.io/address/0x0fE3E6018E53cb90020b5C06BC4c7c4FcEa1eBF0#code) Entry point of the project. Handles deposits, withdrawals, and the communication from and to the main rollup contract on Scroll. Deposits are gated by an AML check. The V2 upgrade adds an exitTransfer function, gated by an EXIT_ROLE, that can transfer any token type from the contract. - Roles: - **amlPermitter**: PredicatePermitter; ultimately PredicateServiceManager - **relayer**: EOA 4 All supported tokens in this escrow are included in the value secured calculation. ### Scroll #### Rollup Addresses: [0x1c88459D014e571c332BF9199aD2D35C93219A2e](https://scrollscan.com/address/0x1c88459D014e571c332BF9199aD2D35C93219A2e#code), [0xeAc5302f9AA81B38867Ef4Fd37D4e480C0bb8820](https://scrollscan.com/address/0xeAc5302f9AA81B38867Ef4Fd37D4e480C0bb8820#code) (Implementation (Upgradable)), [0xA3C2a579af4cF3853172058e5c76d273DC1542DD](https://scrollscan.com/address/0xA3C2a579af4cF3853172058e5c76d273DC1542DD#code) (Admin) **Past upgrades** (Count of upgrades: 1, Last upgrade: 8mo 7d ago, Avg upgrade interval: 7mo 18d) - 2026-02-10 09:51 UTC, upgrade of [Rollup](https://scrollscan.com/address/0x1c88459D014e571c332BF9199aD2D35C93219A2e#code): transaction [0xbd41e060791e0e158dc07aafdfb52c0e26c76ea9193852ab9d4d5c8eb9e9fe70](https://scrollscan.com/tx/0xbd41e060791e0e158dc07aafdfb52c0e26c76ea9193852ab9d4d5c8eb9e9fe70), implementations: [0xeAc5302f9AA81B38867Ef4Fd37D4e480C0bb8820](https://scrollscan.com/address/0xeAc5302f9AA81B38867Ef4Fd37D4e480C0bb8820#code) ([diff](https://disco.l2beat.com/diff/scr:0xF34299210fB8505232649e9BEa14a84DD75e746b/scr:0xeAc5302f9AA81B38867Ef4Fd37D4e480C0bb8820)) - 2025-07-16 11:37 UTC, deployment of [Rollup](https://scrollscan.com/address/0x1c88459D014e571c332BF9199aD2D35C93219A2e#code): transaction [0x00ed05b1421c07fc3016adada820d7e853df1a1898e4b8636b1139c6712b1ffd](https://scrollscan.com/tx/0x00ed05b1421c07fc3016adada820d7e853df1a1898e4b8636b1139c6712b1ffd), implementations: [0xF34299210fB8505232649e9BEa14a84DD75e746b](https://scrollscan.com/address/0xF34299210fB8505232649e9BEa14a84DD75e746b#code) Main rollup contract used to submit blocks and process deposits. It saves block hashes to be then referenced by the Withdrawal contract. - Roles: - **admin**: INTMAX Multisig 2 Can be upgraded by: INTMAX Multisig 2 with no delay #### PlonkVerifier Addresses: [0x1d38545a33740Ab3480d9035bB3126914404423d](https://scrollscan.com/address/0x1d38545a33740Ab3480d9035bB3126914404423d#code) A wrapper verifier that can check both withdrawal zk proofs to exit from INTMAX network and zk proofs for claiming rewards of the privacy mining program. #### Claim Addresses: [0x22ac649b3229eC099C32D790e9e46FbA2CE6C9A5](https://scrollscan.com/address/0x22ac649b3229eC099C32D790e9e46FbA2CE6C9A5#code), [0x5216C8D0F2188a91aD07Fe4F334F220b2F7b59EA](https://scrollscan.com/address/0x5216C8D0F2188a91aD07Fe4F334F220b2F7b59EA#code) (Implementation (Upgradable)), [0xA3C2a579af4cF3853172058e5c76d273DC1542DD](https://scrollscan.com/address/0xA3C2a579af4cF3853172058e5c76d273DC1542DD#code) (Admin) **Past upgrades** (Count of upgrades: 1, Last upgrade: 1y 2mo ago, Avg upgrade interval: 7mo 17d) - 2025-08-16 05:42 UTC, upgrade of [Claim](https://scrollscan.com/address/0x22ac649b3229eC099C32D790e9e46FbA2CE6C9A5#code): transaction [0xcb1b6cb53aeb3e3946facae2aa425a1b82068dcdeb41deeaaacae2948c3e4f3a](https://scrollscan.com/tx/0xcb1b6cb53aeb3e3946facae2aa425a1b82068dcdeb41deeaaacae2948c3e4f3a), implementations: [0x5216C8D0F2188a91aD07Fe4F334F220b2F7b59EA](https://scrollscan.com/address/0x5216C8D0F2188a91aD07Fe4F334F220b2F7b59EA#code) ([diff](https://disco.l2beat.com/diff/scr:0x1899bF9D0e40Dd1bB6C3CCF2123A0Bd1DE0F0548/scr:0x5216C8D0F2188a91aD07Fe4F334F220b2F7b59EA)) - 2025-07-17 08:23 UTC, deployment of [Claim](https://scrollscan.com/address/0x22ac649b3229eC099C32D790e9e46FbA2CE6C9A5#code): transaction [0x51f594e6a45f74ba5ca4a9536e7911be101f6a9ee7efb1471ee6e359af36c6ef](https://scrollscan.com/tx/0x51f594e6a45f74ba5ca4a9536e7911be101f6a9ee7efb1471ee6e359af36c6ef), implementations: [0x1899bF9D0e40Dd1bB6C3CCF2123A0Bd1DE0F0548](https://scrollscan.com/address/0x1899bF9D0e40Dd1bB6C3CCF2123A0Bd1DE0F0548#code) - Roles: - **admin**: INTMAX Multisig 2 - **owner**: INTMAX Multisig 2 Can be upgraded by: INTMAX Multisig 2 with no delay #### Contribution Addresses: [0x42Fe7Db60c4C70eBb7597dB9a0959F9fCa0114af](https://scrollscan.com/address/0x42Fe7Db60c4C70eBb7597dB9a0959F9fCa0114af#code), [0x8305Ca6756b0edb49ed9503C1Cf39Cb64a00b955](https://scrollscan.com/address/0x8305Ca6756b0edb49ed9503C1Cf39Cb64a00b955#code) (Implementation (Upgradable)), [0x0000000000000000000000000000000000000000](https://scrollscan.com/address/0x0000000000000000000000000000000000000000#code) (Admin) **Past upgrades** (Count of upgrades: No upgrades, Last upgrade: N/A, Avg upgrade interval: N/A) - 2025-06-21 10:00 UTC, deployment of [Contribution](https://scrollscan.com/address/0x42Fe7Db60c4C70eBb7597dB9a0959F9fCa0114af#code): transaction [0x80b8d8e13d4baaf9f60d6487bc220584103ae955efb88bea6c95cdff57ebb46c](https://scrollscan.com/tx/0x80b8d8e13d4baaf9f60d6487bc220584103ae955efb88bea6c95cdff57ebb46c), implementations: [0x8305Ca6756b0edb49ed9503C1Cf39Cb64a00b955](https://scrollscan.com/address/0x8305Ca6756b0edb49ed9503C1Cf39Cb64a00b955#code) Records a set of 'contribution' actions by saving addresses with a tag of their action (e.g. propose blocks, claim withdrawals, deposit...). - Roles: - **admin**: EOA 6 Can be upgraded by: EOA 6 with no delay #### Withdrawal Addresses: [0x86B06D2604D9A6f9760E8f691F86d5B2a7C9c449](https://scrollscan.com/address/0x86B06D2604D9A6f9760E8f691F86d5B2a7C9c449#code), [0x614ef91D1971A4dB458ABde03c62247afc57A753](https://scrollscan.com/address/0x614ef91D1971A4dB458ABde03c62247afc57A753#code) (Implementation (Upgradable)), [0xA3C2a579af4cF3853172058e5c76d273DC1542DD](https://scrollscan.com/address/0xA3C2a579af4cF3853172058e5c76d273DC1542DD#code) (Admin) **Past upgrades** (Count of upgrades: 1, Last upgrade: 1y 2mo ago, Avg upgrade interval: 7mo 18d) - 2025-08-16 05:42 UTC, upgrade of [Withdrawal](https://scrollscan.com/address/0x86B06D2604D9A6f9760E8f691F86d5B2a7C9c449#code): transaction [0xcb1b6cb53aeb3e3946facae2aa425a1b82068dcdeb41deeaaacae2948c3e4f3a](https://scrollscan.com/tx/0xcb1b6cb53aeb3e3946facae2aa425a1b82068dcdeb41deeaaacae2948c3e4f3a), implementations: [0x614ef91D1971A4dB458ABde03c62247afc57A753](https://scrollscan.com/address/0x614ef91D1971A4dB458ABde03c62247afc57A753#code) ([diff](https://disco.l2beat.com/diff/scr:0xDFC6EB6642FEAF99629c6629b2f7dC7eB9F1a0A3/scr:0x614ef91D1971A4dB458ABde03c62247afc57A753)) - 2025-07-16 11:38 UTC, deployment of [Withdrawal](https://scrollscan.com/address/0x86B06D2604D9A6f9760E8f691F86d5B2a7C9c449#code): transaction [0x42a803443a8cce32af6abb340909910f95b82c9e4b62d9002ce8c5554bf6ad8a](https://scrollscan.com/tx/0x42a803443a8cce32af6abb340909910f95b82c9e4b62d9002ce8c5554bf6ad8a), implementations: [0xDFC6EB6642FEAF99629c6629b2f7dC7eB9F1a0A3](https://scrollscan.com/address/0xDFC6EB6642FEAF99629c6629b2f7dC7eB9F1a0A3#code) Contract handling withdrawal requests, which require a validity proof of sufficient balance. It tracks amount of funds already withdrawn to prevent double withdrawals. - Roles: - **admin**: INTMAX Multisig 2 - **owner**: INTMAX Multisig 2 Can be upgraded by: INTMAX Multisig 2 with no delay The current deployment carries some associated risks: - Funds can be stolen if a contract receives a malicious code upgrade. There is no delay on code upgrades (CRITICAL).