Multi-chain Settlement
Multi-chain Settlement is one of the most crucial functions of the Rooch Network. This chapter provides a brief introduction to the protocol and the challenges to be addressed.
How it works
The responsibility of the settlement layer is to perform state migration and asset settlement between Layer1 and the execution layer.
We use Ethereum as an example to explain how the settlement layer works.
Rooch deploys the settlement smart contract(State Commitment Chain
& Bridge
) on Ethereum, which maintains an off-chain state tree, with only the root of the state tree recorded on the chain, through which users migrate state between Layer1 and Rooch.
- When a user migrates state from Layer1 to Rooch, the state appears in the state tree of Rooch after the transactions in Layer1 are finalized.
- When a user migrates state from Rooch to Layer1, the state is first locked and waits for the Layer2 (Challenge period to pass or zkProver provides valid proof) before being moved out of the state tree for settlement.
- When the
State Commitment Chain
receives a notification from the arbitration contract that fraud has occurred, it rolls back the root of the off-chain state tree to before the fraud occurred, discarding any state tree changes made during that period.
Now, if we wish to extend the settlement layer to multiple chains, the biggest challenge we face is how to confirm the status of Rooch on non-arbitration chains.
Our solution packages the withdrawal proofs on the settlement chain into Rooch transactions, thus inheriting the security of the second-layer network. This can be achieved by running the corresponding chain's client in the Rooch network and performing native block parsing.
After the challenge period has passed, we believe that assets can be securely released on the settlement chain.
Features
Here are why Rooch's Multi-Chain Settlement solution is more advanced.
- Multi-chain settlement is more secure. The security of the cross-layer bridge in a multi-chain settlement solution is protected by the arbitration layer (i.e. Ethereum), and the execution layer inherits the security of the arbitration layer.
- More generic cross-layer solution. In Rooch's multi-chain settlement solution, cross-layer is achieved through a generic state migration pattern where states can be used to represent Token, NFT, digital contracts, and other future application states, without the need to design specialized protocols for new state types.