There is a growing trend of token standards & products that have interoperability facilitated by a trusted messaging layer with mint/burn access. Examples include: stablecoin assets (USDC, USDT), LayerZero OFT, xERC20 standard, etc.
It’s becoming increasingly common for Orbit users to want “native interop tokens” as their gas token on the network, however this isn’t currently supported as Orbit doesn’t support mint/burn calls for the native gas.
This will ship as part of ArbOS 50 in the Fall.
ENABLE MINT/BURN PRECOMPILES:
ArbNativeToken.sol will be created to facilitate permissioned access to two new ArbOS functions:
MintNativeToken(amount): mints tokens to the calling addressBurnNativeToken(amount) : burns tokens to the calling addressArbNativeToken.sol to access the Mint/Burn functions.MintNativeToken(amount) and immediately call targetAddress.call{value amount} to send funds to the user in the same transaction
A 3rd-party messaging layer (in this case LayerZero) triggers its Adapter to unlock to a specific address. The Adapter mints itself new tokens and distributes it to the user.
GUARANTEE COLLATERALIZATION OF MINT/BURN CONTRACT
The main risk of having two contracts responsible for native token issuance (the 3rd-party contract and the chain’s bridge) is collateralization imbalances. For example, you could end up with:
In which case, either could be under-collateralized for a withdrawal at any given time.