zkopru
🔗 Source code
develop
develop
  • What is zkopru?
  • Getting started
    • Install CLI
    • Deposit
    • Transfer
    • Withdraw
    • [WIP] Atomic swap
    • [WIP] Migration
  • How it works
    • Burn Auction
    • Transaction
    • Block structure & serialization
    • Account
    • UTXO
    • Encrypted memo field
    • Token support
    • Atomic swap
    • Merkle trees
    • Merged leaves & optimistic rollup
    • Mass deposit
    • Mass migration
    • Instant withdrawal
  • Roadmap
Powered by GitBook
On this page

Was this helpful?

  1. How it works

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.

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 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.

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

PreviousMass depositNextInstant withdrawal

Last updated 4 years ago

Was this helpful?