In Opside's L3, or Rollup Layer, each Web3 application can have a dedicated ZK-Rollup. To support the extensive hardware resources required by numerous ZK-Rollups, Opside provides a unified ZKP computation marketplace, alongside validators offering data availability, to generate ZKPs for these ZK-Rollups. This constitutes Opside's PoW mechanism.
In the Pre-Alpha phase, only one sequence can be submitted per Rollup within an L2 block (which may contain multiple blocks of that Rollup). All sequences share the PoW reward of the current block equally, based on the number of registered Rollup slots. This means that if there are currently 64 registered rollup slots, each sequence in an L2 block receives 1/64th of the PoW reward. Some rollups may not submit sequences in some blocks, resulting in lower actual PoW inflation.
In the future, individual sequences will be priced differently based on workload estimates considering factors such as ZK-Rollup type, transaction quantity, and gas usage.
The PoW reward share obtained by a sequence is allocated to the submitters of valid ZKPs, those are, miners, according to certain rules. To prevent malicious attacks, Opside proposes a two-step submission mechanism for ZKP verification.
Two-step submission of ZKP
- For a certain sequence, after the prover calculates ZKP, it calculates the proof hash and submits it to the contract
- Assuming that the first prover submits the hash in the block T, other prover submissions of hash are accepted up to the block T+10, with no limit on the number. No new prover will be accepted to submit hash in block T+11 and after
- After block T+11, any prover is allowed to submit ZKP. Any prover that passes the validation gets a PoW reward, which is distributed in proportion to the amount staked by the miner.
- If no ZKP passes validation until block T+42, prover who submitted hashes before are forfeited 1,000 IDE, at which point the sequence is reopened to allow new hashes to be submitted
For example, suppose the PoW reward for each L2 block in Opside chain is 128 IDE, and there are 64 Rollup slots in total, then the PoW reward allocated to each Rollup sequence is 2 IDE. Then the PoW reward for A, B, and C is 0.4 IDE, 1 IDE, and 0.6 IDE, respectively.