Rollups from appchains to L2s
Last updated
Last updated
In this example, we'll use Supersonic, a Bitcoin L2, as the base layer. However, you can use any Bitcoin L2 as a base layer.
An application (Bitcoin L3) first rolls up to Supersonic. Then Supersonic itself rolls up to Bitcoin.
Let's zoom in on the architecture below and examine rollup flows step by step.
The steps to do a ZK rollup from a Bitcoin L3 to Supersonic (a Bitcoin L2) are as follows:
A user submits a transaction to the Bitcoin L3 Sequencer
The Bitcoin L3 Sequencer executes the transaction and provides a soft confirmation
If the user chooses, they can force the Bitcoin L3 Sequencer to include their transaction
The Bitcoin L3 Sequencer executes the block of transactions and sends it over to the Bitcoin L3 Prover
The Bitcoin L3 Prover creates a cryptographic proof of the block’s execution and sends it to the smart contract on Supersonic.
The smart contract verifies that the proof is valid and all the data has been submitted and then updates the rollup’s state in the contract.
The Bitcoin L3 Sequencer sends the block’s data to one of the Data Availability layers supported by BVM, such as Celestia, Near DA, Polygon, Avail DA, Filecoin, or Eigen DA.