PoS-Based Verifiers
Proofs need to be verified within the network before being sent back or retrieved by the requester for the following reasons:
- If a proof is invalid, the network can reassign the task to another prover.
- Rewards are only distributed to provers who produce valid proofs.
- Verifying proofs enhances the network's trustworthiness.
A decentralized network of verifier nodes will be established to reach a consensus on proof settlement. A node offers greater flexibility than a verifier contract because not all projects have a Solidity version of verification code. Verifying the batched proof can further reduce the cost. The mechanism will resemble Ethereum's proof of stake but likely in a simpler form. The process is as follows:
PoS-Based Verifiers Flow
- ZK projects supply the verifier code, which can be in different languages.
- Either the ZK project or the community operates one or more verifier nodes.
- To ensure the verifier's good intentions, a minimal deposit is required as staking asset.
- Galactic contract or Oracle node aggregates proofs and produce an batchedProof
- The Galactic contract or Oracle node uses a VRF to select a committee of verifier nodes for the batchedProof.
- The verifier nodes carry out the proof verification and submit their results to the Galactic contract or Oracle node within a specified timeframe.
- If a majority of the committee (for example, 2/3) reach a consensus, and if correct, all proofs in the batched proof are considered verified as either valid, if not then iterate to verify each proof.
- Honest verifier nodes are equally rewarded, while dishonest ones are penalized.
- The verifier's reputation is updated based on their actions.
We choose a verifier network over a DAO which handles challenges in an optimistic manner for the following reasons:
- ZK verification is quick and cost-effective.
- Verification consensus can be achieved rapidly because it depends on the L3 block proposing speed, which can be significantly fast.
- It takes longer for a DAO to settle a proof if a challenge arises.
- In both scenarios, verification codes from various ZK projects are required.
However, if there's a conflict between the PoS-Based verification results and the requestors' verification results, we'll need the governance DAO to handle such an issue.
Additionally, using an existing platform like EigenLayer is an option for us.