Skip to main content

Command Palette

Search for a command to run...

How INTMAX Handles Transactions

Updated
5 min read
How INTMAX Handles Transactions
I

I am a talented smart contract developer with a deep understanding of Solidity, Rust & RETH

In addition to my technical prowess, I am also a skilled technical writer who can communicate complex concepts in a clear and concise manner. My experience as a writer enables me to document code and explain the underlying logic to clients and team members alike.

Ethereum is, without a doubt, a game-changing network in the world of blockchain and cryptocurrency. It pioneered the notion of smart contracts, paving the way for the growth of decentralized applications (DApps) and decentralized finance (DeFi). However, its design and inherent limitations have raised serious concerns and pushed the community to seek answers.

The primary restriction of the Ethereum blockchain is its transaction processing speed. The network can only handle a certain number of transactions per second (TPS), typically between 20 and 40 TPS.

This constraint presents a substantial difficulty for users, particularly during peak periods of demand. When the network hits its TPS limit, users must engage in a competitive bidding procedure to ensure their transactions are included in the next block.

Higher transaction costs result from increasing competition for block space, which can be a considerable burden for users.

The conscious design decision of Ethereum to process every transaction in its history has a significant impact on its scalability. The central consensus principle in Ethereum is that every node, or machine running the Ethereum software, must have a copy of the whole blockchain ledger.

This ledger keeps a complete record of all transactions that have ever taken place on the Ethereum network. The ethos of Ethereum is based on transparency and decentralization.

However, the combination of these design choices has resulted in Ethereum's present transaction throughput restrictions.

Processing every transaction creates a realistic constraint on scalability, as does the desire for nodes to be adequately available for anybody to run and validate the chain.

To address these limitations, the Ethereum community has been actively exploring various solutions like Ethereum 2.0, Layer 2 solutions amongst others.

This is where INTMAX comes in, as a Layer 2 zkRollup. Check out my previous article about INTMAX here.

On INTMAX, transactions are processed by parallelized nodes, which allows for incredible scalability - and over 10,000 TPS. This gives INTMAX exponentially greater efficiencies compared with other ZKP projects, enabling token transfers with near-zero gas costs.

Let's look at how this works!

Transaction Maps and Balances

INTMAX uses a concept called transaction maps. These are like sets of transactions, and they help to keep track of how much money different accounts have. In simple terms, it's like looking at all the transactions that someone has made and figuring out how much money they have in the end.

Now, to ensure that no one spends more money than they have, it's required that everyone keep a positive balance, meaning they can't owe more than they own.

Proving Balances with Less Data

Here's the interesting part. If we know all the transaction maps (like records of transactions), we can figure out the balances of all the accounts. But what if we want to keep some of this information secret, like not showing all the details of every transaction?

So, the team came up with a brilliant idea; Instead of showing every single transaction, they can just show a summary (commitment) of these transactions and a list of who made them (the senders). This way, they can still verify everyone's balances while revealing less data.

Public Data for Verification

However, to make sure this works, there's a need to tell everyone who the senders are and provide a way for users to prove that they included all their transactions in this summary. This is crucial to avoid cheating. It's like making sure a student doesn't skip any questions in a test.

Transaction Commitments

There needs to be a way to confirm that transactions are legitimate and secure. This gave rise to a system called commitments. A commitment is like a summary or proof of a transaction map, which records how money moves between accounts. It's a way of showing that these transactions are valid. These commitments are like locks, and they need keys to unlock them. These keys are the inclusion proofs, which prove that the transactions are in the commitment.

Simple Blocks and Local Views

These transactions are grouped into simple blocks. Each simple block contains a set of accounts that send transactions and a commitment.

They also create local views, which are like snapshots of the transactions and their proofs in these simple blocks.

Validity and Balance Proofs

For a transaction to be considered complete, the sender needs to provide two things: inclusion proofs (to unlock the commitment) and validity proofs (to show they have enough money to complete the transaction).

A user needs a complete set of data for their account to prove their balance and that they can complete transactions.

The Signing Rule

In signing a transaction, users must follow a rule called the "signing rule" to make sure everything stays secure. They would only sign a commitment if they had the right proofs and enough money in their account.

Meaning, Alice cannot sign a transaction of 100 coins if he has only 90 coins.

Completing Transactions

If a user follows the signing rule and has the required data, they can provide balance and transaction validity proofs to complete a transaction.

Once a user completes a transaction, it's like they're adding a stamp to confirm that everything's good, and the money has moved correctly.

Conclusion

Although Ethereum has established the groundwork for decentralized apps and finance, its inherent limits, particularly in transaction processing speed, have compelled the blockchain community to seek novel alternatives.

INTMAX emerges as a viable Layer 2 zkRollup with amazing scalability and efficiency. Its clever use of transaction maps, commitments, and inclusion proofs enables safe and private transactions while assuring that users keep positive balances and observe the signing rule.

As the Ethereum community continues to investigate alternative solutions, INTMAX stands out as a beacon of light, tackling some of the major issues that have stymied blockchain's widespread adoption.

Join the discussion: Twitter(X) | Discord | Telegram