Mass migration

The basic idea of mass migration is pretty simple. While deposit transactions on the layer-1 contract create a MassDeposit object, "Migration" type outputs of transactions can create a MassMigration that constructs a MassDeposit for its destination network.

circle-info

A transaction can have UTXO, Migration, or Withdrawal type of outputs. To check more details, see "Transaction" page.

In Zkopru, for the migration, there are source network and destination network. Once a mass migration on the source network is finalized(code herearrow-up-right), the migrateTo functionarrow-up-right on the source network can be executed. The function moves the assets, including Ether, ERC20, and ERC721, while creating a MassDeposit object for the destination network.

Therefore, the destination network should implement acceptMigration functionarrow-up-right. Also, it is recommended to allow migrations only from trusted networks.

circle-info

The migration standard between rollups is going to be standardized through EIP.

Last updated

Was this helpful?