Search for projects by name
INTMAX is a stateless Plasma-like ZK Rollup that enables private payments and minimal onchain costs.
INTMAX is a stateless Plasma-like ZK Rollup that enables private payments and minimal onchain costs.
SEQUENCER FAILURE | STATE VALIDATION | DATA AVAILABILITY | EXIT WINDOW | PROPOSER FAILURE | |
Scroll L2 | Self sequence | Validity proofs (ST, SN) | Onchain | None | Self propose |
INTMAX L3 • Individual | Self sequence | Validity proofs (SN) | Self custodied | None | Self propose |
INTMAX L3 • Combined | Self sequence | Validity proofs (SN) | Self custodied | None | Self propose |
SNARKs are succinct zero knowledge proofs that ensure state correctness, but require trusted setup.
All data required for payments and withdrawals is self custodied by users.
There is no window for users to exit in case of an unwanted regular upgrade since contracts are instantly upgradable.
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.
Funds can be lost if users lose the self-custodied data required to prove their balance.
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.
The source code of the circuits can be found here.
There is no privileged entity that sequences transactions or produces blocks. This activity is permissionless and open to anyone.
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.
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.
Member of INTMAX Multisig 1, INTMAX Multisig 3.
Member of INTMAX Multisig 1, INTMAX Multisig 3.
Member of INTMAX Multisig 1, INTMAX Multisig 3.
Member of INTMAX Multisig 1, INTMAX Multisig 3.
Member of INTMAX Multisig 1, INTMAX Multisig 3.
A Multisig with 3/5 threshold.
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.
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.
Contract handling withdrawal requests, which require a validity proof of sufficient balance. It tracks amount of funds already withdrawn to prevent double withdrawals.
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).
Funds can be stolen if the source code of unverified contracts contains malicious code (CRITICAL).