zkMIPS: A High-Level Specification
Share on

Here, we announce the publication of the latest paper from ZKM Research: ‘zkMIPS: A High-Level Specification’. This substantial update of the previous version corrects the discrepancies between the original documentation and the present state of the zkMIPS codebase, providing a more accurate foundation of information to aid the ZKM developer community with their contributions.

zkMIPS is a novel zkVM designed around the MIPS instruction set and processor architecture to generate succinct proofs of computational integrity. Utilizing the Plonky2 system, this design ensures that any program compiled to MIPS can be verified for correctness either on or off the blockchain. Each part of the program is verified in segments that are proved in modules. Each module is proved using STARK, and the module proofs are joined using LogUp. The resulting segment proofs are then recursively combined using PLONK to produce a single, constant-size proof for the correctness of the entire program.

If the final PLONK proof is meant to be verified on chain, it can be compiled to an EVM friendly proof using Groth16. This layered scheme is explained in the paper and is illustrated below.

The full ‘zkMIPS: A High-Level Specification’ paper can be accessed here: zkMIPs: a high-level specification

ZKM Research is committed to advancing cryptographic-based technologies, particularly specializing in proving systems for verifiable computation. As zkMIPS continues to evolve, continuous documentational updates will be required and ZKM Research invites the global development community to collaborate in refining this fundamental work.
We highly value your feedback and encourage participation through discussions on our Discord server: discord.com/channels/1125877344972849232/1246097911239016509. We also invite contributions to the zkMIPS GitHub: github.com/zkMIPS

More articles
Is ZK the Endgame for Bitcoin?
Bitcoin’s transition from a speculative asset to a globally dominant financial system is approaching an inflection point. Developments
Offline memory checking in zkVM
Memory checking in a zkVM is used to allow a prover to demonstrate to a verifier that read/write memory operations are performed correctly. In such a memory system, a value v can be written to an address a, and later retrieved from address a by the program. This technique enables the verifier to efficiently confirm that the prover has followed memory access rules—specifically, that any read returns the latest value written to that memory address.
zkMIPS: A High-Level Specification

Here, we announce the publication of the latest paper from ZKM Research: ‘zkMIPS: A High-Level Specification’. This substantial update of the previous version corrects the discrepancies between the original documentation and the present state of the zkMIPS codebase, providing a more accurate foundation of information to aid the ZKM developer community with their contributions.

zkMIPS is a novel zkVM designed around the MIPS instruction set and processor architecture to generate succinct proofs of computational integrity. Utilizing the Plonky2 system, this design ensures that any program compiled to MIPS can be verified for correctness either on or off the blockchain. Each part of the program is verified in segments that are proved in modules. Each module is proved using STARK, and the module proofs are joined using LogUp. The resulting segment proofs are then recursively combined using PLONK to produce a single, constant-size proof for the correctness of the entire program.

If the final PLONK proof is meant to be verified on chain, it can be compiled to an EVM friendly proof using Groth16. This layered scheme is explained in the paper and is illustrated below.

The full ‘zkMIPS: A High-Level Specification’ paper can be accessed here: zkMIPs: a high-level specification

ZKM Research is committed to advancing cryptographic-based technologies, particularly specializing in proving systems for verifiable computation. As zkMIPS continues to evolve, continuous documentational updates will be required and ZKM Research invites the global development community to collaborate in refining this fundamental work.
We highly value your feedback and encourage participation through discussions on our Discord server: discord.com/channels/1125877344972849232/1246097911239016509. We also invite contributions to the zkMIPS GitHub: github.com/zkMIPS