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.

In Zkopru, for the migration, there are source network and destination network. Once a mass migration on the source network is finalized(code here), the migrateTo function 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 function. Also, it is recommended to allow migrations only from trusted networks.

Last updated

Was this helpful?