Skip to content

zkmove/zkmove

Repository files navigation

Website

zkMove

Technically, zkMove is a secure, high-performance zkVM designed specifically for the Move programming language. It empowers Move smart contracts to access and process private data in a fully programmable and trustless manner.

From a product perspective, zkMove is both a middleware and an SDK — one that Move developers can use to build privacy-preserving decentralized applications without deep cryptographic expertise.

zkMove vm

A Zero-Knowledge Virtual Machine that proves the execution of Move functions.

  • Fully compatible with Move and inherits Move's security.
  • State-of-the-art circuit design and cutting-edge performance.
  • Client-side proving to naturally preserve user privacy.
  • Proofs are verified directly on-chain with near-instant finality.
  • Compatible with commonly used development tools in the ecosystem.
  • Allows existing Move programs to run with minimum modifications.

Halo2 verifier

A generic halo2 snark verifier written in Move. It enables any zk proof generated by halo2 to be verified on Move blockchains.

Trace generator

A customized Move VM with a built-in execution trace generator. It can generate execution traces for Move functions.

Devnet

A customized aptos-core with built-in native functions required by the Halo2 verifier. It allows developers to easily test zkmove applications.

A customized Sui with built-in native functions required by the Halo2 verifier.

Documents

see User Guide for a step-by-step tutorial on how to create a zkMove circuit, generate a proof, and verify it on-chain.

see Litepaper for an in-depth technical overview of zkMove's design and architecture.

License

zkMove is licensed as Apache 2.0.

About

A Zero-Knowledge Virtual Machine that proves the execution of Move functions.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages