Any application running on Ethereum is implemented via smart contracts – specialised computer programs. Any interaction with or between these contracts is called a transaction, because it usually incurs a fee which is used to reward network participants who maintain the blockchain and house the smart contracts on their machines.
As the number of contracts and users grows, the Ethereum network needs to process more and more transactions, which does not come for free and leads to higher transaction fees as well as slower execution.
Arbitrum is a system which allows Ethereum participants to settle their transactions away from the Ethereum mainnet. It is compatible with many established applications like Curve, MetaMask and Aave, with many more on the way. Once executed, transaction data is sent back to the Ethereum blockchain, so everything is still recorded on the mainnet.
Arbitrum and Ethereum – how the two interact…
Arbitrum begins with EthBridge – a set of smart contracts on Ethereum which connects Ethereum with Arbitrum’s network called Arbitrum Virtual Machine. If you want to submit a transaction through Arbitrum, you simply send it to one of EthBridge’s contracts called Inbox.
For reverse interaction, there is an Outbox contract which receives data from Arbitrum and adds it to Ethereum blockchain. All inputs and outputs to EthBridge are public and verifiable, so Ethereum knows and verifies all the off- chain activity.
How Arbitrum achieves greater efficiency…
Data compression and a different consensus model are the two major things which help Arbitrum achieve faster execution and smaller fees.
Any Dapp in EVM is represented by a set of smart contracts. Arbitrum is able to treat multiple contracts as a single object when bringing it onto its own chain, thus making it extremely easy to use. From a user experience point of view, working with Arbitrum feels no different from standard interaction with Ethereum.
As mentioned before, Arbitrum has to communicate all confirmed transactions back to Ethereum. To do it efficiently, it only passes ‘calldata’, which contains hashes of confirmed blocks (called rollup blocks) instead of the blocks themselves. Since calldata is much shorter, Ethereum does not need to process it for long.
Now, let’s discuss the consensus.
When you decide to run your dApp on Arbitrum chain, you can choose your own set of validators for doing the consensus work. This means that a validator working on your app may not be involved with any other app running on Arbitrum. This model is distinct from Ethereum where every single validator keeps track of all apps in the network. With this localised approach, less communication is required between the nodes, resulting in faster processing.
To sum up, we can use Offchain’s own words…
“The whole point of a Layer 2 scaling system is to run transactions without Ethereum needing to do all of the work – and indeed Arbitrum can go fast enough that Ethereum couldn’t hope to monitor every Arbitrum transaction. But once a result is confirmed, Ethereum knows about it and can rely on it.”
Why is this consensus secure ?
Arbitrum uses AnyTrust Guarantee security protocol to confirm the blocks. According to this protocol, only a unanimous agreement amongst all chosen validators allows for a new block to get accepted. This means that a single disagreeing validator will cause a dispute and a suspicious block will get re-evaluated. Such a mechanism contrasts with Ethereum, where consensus is achieved based on what the majority thinks, while individual oppositions are disregarded.
Therefore, Arbitrum relies on at least one honest validator being present at any point in time. You should also remember that since validators are assigned for a particular dApp, their malicious behaviour will never effect the whole network.
Different validator types in Arbitrum
Not everybody is a validator in Arbitrum since some nodes simply compute the correct state of the chain for their own record. However, anyone can become a validator in Arbitrum by running an open source code from their local machine.
Some validators decide to stake their ETH which allows them to propose new rollup blocks. If such validator is found cheating, a portion of their stake gets burned, and some is distributed among honest validators. The size of a required stake is changing dynamically to make sure that a malicious validator will be able to cover the losses of compromised blocks.
Non- staked validators are called ‘watchtower validators’. They do not take active part in block formation but merely observe it and alarm active validators in case they notice a malicious behaviour.
With Arbitrum, consensus is achieved off- chain and only the result of that consensus is passed on to the Ethereum mainnet.
Arbitrum is compatible with all languages used for Ethereum and its work remains invisible for all end users.
This and many other things explain Arbitrum’s wide adoption in the Ethereum community. We will need to see how Arbitrum’s mainnet performs after the launch and what effect it will have on Ethereum.
Disclaimer: The views and opinions expressed by the author should not be considered as financial advice. We do not give advice on financial products.