If the proposer submits an invalid proposed block, how does it "tell" the L1 node that the block is invalid?
The logic is to build a temporary block in L2 first (for example, b3 is an invalid block, and B2 is the parent block to build temporary block B). Block B only contains one transaction invalidateBlock(...), and substitute the txList of b3 into the function .
Generate a zk proof based on B and submit it to L1. If the verification is valid, it proves that b3 is an invalid block. #crypto2023
10/n🧵