Technical Overview
Cysic AI provides a one-stop solution for both proof generation and verification for zero-knowledge proofs. It allows participants to use their hardware, both strong and weak, to contribute to the protocol and, in return earn rewards from different ZK projects.
In the workflow, several provers are chosen to compute the proof task, which is then verified by validators. The status change of the task is recorded using a blockchain. There are three categories of participants in the network:
Agents: The agents’ job is to relay the proving task from the ZK projects to the network and then send back some necessary information to the ZK projects. The agents will be run by Cysic in the beginning. Gradually, the job of posting proof tasks in the Cysic AI will be permissionless with the necessary token guarantee.
Provers: The provers are doing the heavy lifting work, i.e., generating ZK proofs using powerful hardware like GPUs and ASICs. The provers need to stake a certain amount of $Token to get the proving tasks and will be rewarded for generating valid ZK proofs. The reward is distributed in $Token within a fixed time period.
Validators committee members (VCM): The VCMs’ job is to check the validity of the proof generated by the provers and also submit and vote on governance proposals. Due to the succinctness of ZKP, the hardware used by the validators can be much weaker than that used by the provers. If a proof is voted valid by more than a certain number of validators, the proof is treated as settled in the chain. The validators will be rewarded by verifying proofs and be integrated with the restaking community. To be eligible to participate in the VCM, the entity needs to stake their $Token token, where the voting power is proportional to the staked tokens.
When the VCM of Cysic AI decides to provide computing power for a ZK project, this project lists its proof task parameters, such as proof backend, latency requirement, reward pool address, proof DA information, and others on the chain. Whenever a ZK project publishes a task, the task, together with the information about the ZK project, is recorded as a transaction on the blockchain. Then, several provers are chosen based on their reputation and availability to compute this task and then store the proof in the proof DA layer, where another transaction is created to track the status of the proof task. Next, the several validators are chosen to verify the validity of the proof. When the number of verification votes exceeds a fixed threshold, the specific proof task is finished. The ZK project can read the proof and its associated information from the proof DA layer and the chain, respectively.
We adopt a new consensus design, called Proof of Compute (PoC), which essentially is a probabilistic, Byzantine fault-tolerant consensus protocol. Simply put, PoC achieves consensus by running a secret, fair and verifiable leader election for every epoch, where a number of participants may become eligible to submit a block to the chain based on fair and publicly-verifiable criteria. The consensus design achieves a balance of efficiency, fairness and decentralization.
The blockchain is divided into epochs, where each epoch contains a fixed number of blocks. To achieve consensus for each epoch, the provers do the following:
Given a puzzle based on last epoch, the provers compete to solve it in order to form a committee. The committee contains a certain number of the fastest provers, who are responsible for proposing blocks within this epoch.
After the committee is formed, the consensus within this epoch is achieved using the built-in PoS consensus mechanism in Cosmos SDK, where the stake is restricted to the committee members.
Cysic AI is an EVM-compatible blockchain built upon the Cosmos SDK, which allows it to be compatible with different clients, data layers, and more. We aim to bring the testnet online in Q3 2024 with some centralized functionalities and gradually decentralize it.
Last updated