Hybrid Security with ZK Proof
Rooch will leverage zkMove (opens in a new tab) to generate ZK Proof for optimizing the challenge period of the Fraud Proof mechanism, and create a Hybrid Security mechanism with both Fraud Proof and ZK Proof.
zkMove (opens in a new tab) is a zero-knowledge Move language runtime environment that realizes bytecode level compatibility. Rooch Network has a partnership with zkMove and the two projects will collaborate in terms of technology development as well as application scenarios.
How it works
With only Fraud Proof, a user's withdraw transaction submitted at BlockT needs to wait for a challenge period of N blocks to reach finality, and only after this the user can withdraw its asset on Layer1. This challenge period can be up to a week, which is an empirical value set by Optimisim (opens in a new tab).
With ZK Proof generated by ZK Prover using zkMove, the challenge period can be optimized to a much lower amount of blocks. Here's how it works:
- The proposer keeps commiting blocks of state to Layer1 at its maxmium speed
- ZK Prover generate ZK Proofs for the state blocks that have been committed to the Layer1, at a relatively slower pace, due to the considerably long proof generation time
- For the withdraw transaction submitted at BlockT, it can be considered finalized when the ZK Proof of BlockT has been generated and verified on Layer1, instead of waiting to reach the end of the whole challenge period