Skip to main content

Arbitrum chain FAQ

Can I use an Arbitrum chain to deploy a mainnet chain?

Yes! Arbitrum chain's core technology has undergone a comprehensive audit and is now able to support deployments to mainnet. You can read more about it

here

.

Do I need permission/license to launch an Arbitrum chain?

You can launch any Arbitrum chain permissionlessly.

Nitro is licensed under a Business Source license, similar to DeFi protocols like Uniswap and Aave, among others. This license contains an Additional Use Grant that permits the permissionless deployment of Nitro software on blockchains that settle to Arbitrum One or Nova.

However, Arbitrum chains that settle to a parent chain other than Arbitrum One or Nova are subject to additional licensing guidelines under the AEP.

Does Arbitrum officially deploy and/or maintain L3s for external teams?

No. Teams are required to deploy and maintain their Arbitrum chains. There are, however, several RaaS (Rollup as a Service) providers that can deploy and maintain the Arbitrum chain for you.

Can I modify an Arbitrum chain's underlying technology to customize my chain?

Yes, you can make any changes you require to the underlying Nitro code base.

What Data Availability (DA) solutions are currently available for Arbitrum chains?

Arbitrum chains currently supports 3 different DA solutions:

  • Rollup, posting data to the parent chain which ultimately posts the data to Ethereum.
  • AnyTrust, posting data to a Data Availability Committee, selected by the chain owner.
  • Celestia, posting data to

    Celestia network

    .

Note that using AnyTrust gives the chain owner the most flexibility and cheapest fees.

What token is used to pay gas fees on Arbitrum chains?

By default, Arbitrum chains pay gas in ETH. However, Arbitrum chains using AnyTrust can be configured to use any ERC-20 token as the gas fee token of the chain.

Can I use Ethereum toolkits to develop on my Arbitrum chain?

Arbitrum chains are fully EVM-compatible. Most tools that support Ethereum should be able to support an Arbitrum chain. There are, however, certain differences that developers need to keep in mind when building on an Arbitrum chain. You can find them

here

.

Do Arbitrum chains have any built-in AA solution?

Not by default, but they can be customized to have native AA.

Is there any cross-chain bridging solution between two Arbitrum chains?

There is currently no Arbitrum chain-to-Arbitrum chain native bridging solution, other than going through the parent chain (if they share the same parent chain). However, there are many third-party bridges that have expressed interest in supporting Arbitrum chains.

Is there an official block explorer for Arbitrum chains?

Arbitrum chains deployments usually come with an open-source blockscout explorer by default, but there are many third-party solutions that have expressed interest in supporting Arbitrum chains.

Is there any indexing solution that supports Arbitrum chains?

Similar to bridges and block explorers, there are many third-party indexing solutions that have expressed interest in supporting Arbitrum chains.

Can I increase the maximum contract size for my Arbitrum chain?

Yes, Arbitrum chains support an increased smart contract size limit of up to 96kB. You can use our Arbitrum chain (Orbit) SDK and configure the parameters

MaxCodeSize and MaxInitCodeSize

when calling

prepareNodeConfig

. Note that the smart contract size limit parameters can't be changed via upgrade after deployment.

How can I modify Nitro to force posting an invalid assertion and test the fraud proof mechanism?

Forcing an invalid assertion in the chain is not supported at the moment. However, if you're building Nitro locally, you can run the following test that goes through the whole rollup/challenge mechanism:

go test ./system_tests/ -tags=challengetest -run=TestChallenge

What fee collectors can be configured on my chain?

There are 4 fee types that can be configured on an Arbitrum chain:

  • L2 base fee: L2 execution fees corresponding to the minimum base price of the chain. This is paid to the infraFeeAccount, which can be set by calling ArbOwner.setInfraFeeAccount().

  • L2 surplus fee: L2 execution fees above the minimum base price (in the case of congestion). This is paid to the networkFeeAccount, which can be set by calling ArbOwner.setNetworkFeeAccount().

  • L1 base fee: Relative fees for posting a transaction on the parent chain. This is paid ultimately to the fee collector of the active batch poster. The batch poster can be set by calling SequencerInbox.setIsBatchPoster() on the parent chain. And a different fee collector for that batch poster can be specified by calling ArbAggregator.setFeeCollector().

  • L1 surplus fee: Any extra fees rewarded to the batch poster. This is paid to a specific L1RewardRecipient, which can be set by calling ArbOwner.setL1PricingRewardRecipient()

More detailed information about fees can be found in the L1 fees and L2 fees pages.

Information about the precompiles methods can be found in the

Precompiles reference page

.