Overview
This document outlines the components of the entire system and describes their roles. These components are organized into three categories: User Interface, Contracts, and Nodes.
Explanation of User Interfaces
Explain the interfaces through which users interact with the network. Describe the Command Line Interface (CLI) and the Intmax Web App, clarifying how users can operate the network.
Explanation of Smart Contracts
Explain the roles of various contracts within the network.
This helps you understand how the network utilizes on-chain data.
Explanation of Nodes
Explain the roles of various nodes within the network.
This helps you understand how the network is structured.
Component Dependencies
Conceptual diagram

Main Features
Batch Transfers of Multiple Tokens
Intmax natively supports batch transfers of multiple tokens. Users can send tokens simultaneously to up to 63 different recipients without any additional costs. It's also possible to send different types of tokens to each recipient within a single batch transfer.
Transactions on the Intmax network do not reveal the recipient’s identity to external observers.
Deposits and Withdrawals from the Ethereum Network
The Intmax network supports deposits and withdrawals from the Ethereum network. When funds are deposited, only the recipient knows which specific Intmax address received the funds. Similarly, when withdrawing, the Intmax address from which the funds originated remains undisclosed.
AML checks are performed upon deposits to prevent risky assets from circulating within the Intmax network.
Privacy Mining
The goal of privacy mining is to expand and maintain the anonymity set of the privacy protocol. Privacy Mining allows users to earn rewards by contributing to privacy through depositing a specified amount of ETH for a designated period within the Intmax network.
FAQ
Q. Is the INTMAX network a Layer 2?
A. Yes, the INTMAX network is a Layer 2 solution.
Although some smart contracts are deployed on another Layer 2 network called Scroll, INTMAX should not be misunderstood as a Layer 3 application built on top of Scroll.
INTMAX is a zkRollup-type Layer 2 scaling solution that inherits Ethereum's security. The Scroll network's role is strictly limited to that of an "execution layer." INTMAX utilizes Scroll solely to efficiently perform zero-knowledge proof computations at lower gas costs. Scroll does not act as an additional trust layer to indirectly guarantee security.
User Interface
Intmax Web App (Recommended)
Intmax Web App provides a UI for users to create accounts on the Intmax network, and perform operations such as depositing, transferring, and withdrawing tokens.
It also supports privacy mining features. Intmax Web App is available as a website and a mobile application.
We have currently released an alpha version on the testnet. Please access it from the link below.
CLI
A command-line interface (CLI) program necessary for users to operate the Intmax network from a terminal. The CLI program provides commands for users to create accounts on the Intmax network, and perform operations such as depositing, transferring, and withdrawing tokens.
You can access it from the source code provided here.
https://github.com/InternetMaximalism/intmax2/tree/dev/cli
Contracts
The Intmax network is a Layer-2 solution built on top of the Ethereum network. Liquidity remains on Ethereum, while block data storage utilizes the Scroll network—a type of ZK-rollup—allowing Intmax to benefit from lower costs and enhanced security. Smart contracts deployed on these two networks form the foundation of the Intmax network.
Nodes
Block Builder
Builder nodes aggregate transfer requests from users, create blocks, and reflect these blocks on the network.
These nodes are decentralized and deployed across the network. Each node operates independently and does not need to synchronize with other builder nodes.
Store Vault Server
Backs up data that users must individually store and makes it accessible when using Intmax wallet or CLI from multiple devices. This node securely and efficiently backs up user data and manages the process of restoring it when necessary.
Deposit Relayer
Communicates deposit requests from the Liquidity contract to the Rollup contract.
Withdrawal Server
This node manages the progress of accepting withdrawal/claim requests, and providing information about withdrawals and claims to authenticated users.
Withdraw Aggregator
Processes withdrawal requests from the Intmax network to Ethereum. This node accepts user withdrawal requests, performs necessary verifications and processes, and manages the process of reflecting these in the liquidity contract.
Claim Aggregator
This node processes requests for mining rewards generated on the Intmax network. This node performs necessary validation and processing of mining reward requests received from users and manages the process of reflecting these requests on-chain.
Withdraw Relayer
Reflects withdrawal information submitted to the rollup contract in the liquidity contract.
Indexer
Provides information to users for finding block builders and block validity provers. It lists currently active nodes and recommends some nodes to connect to.
Validity Prover
A Validity Prover is a decentralized node on the Intmax network responsible for securely storing and providing Merkle trees and ZKPs related to Intmax blocks. These proofs verify the validity of transactions and blocks, ensuring the integrity of network operations.
Provers
In the Intmax network, user balances are verified using Zero-Knowledge Proofs (ZKPs) to ensure sufficient funds and validate withdrawal conditions.
Last updated