Giter Club home page Giter Club logo

Website

zkMove

A Zero-Knowledge Move Language Virtual Machine. Safe, Efficient, and Privacy-protected.

As a new generation of programming language for smart contract, Move ensures programming safety using its type checking, borrow checking and ownership mechanism. zkMove VM is fully compatible with Move and is the first zkVM with runtime type-safety!

zkMove circuit is built based on the Halo2 proof system. It supports Txn-level concurrent proving for low latency. It also supports client-side proving to naturally preserve user privacy.

Documents

WIP.

Source code

zkMove Lite: In the early designs, we had two types of circuits. VM circuit was used to handle conditional branches and loops, while Move circuits were compiled directly from Move bytecode, providing smaller circuit size. In the latest design, the advantages of the Move circuit have been absorbed by the VM circuit. However, as a starter material for learning zkMove, we have kept its [code base].

zkMove VM: The development is still in rapid iteration, and we will make the source code available as it becomes more stable.

Snark verifier: A generic halo2 snark verifier written in Move. It enables any zk proof generated by halo2 to be verified on Move blockchains. [code base]

Example

We have a binary release for each development iteration to show the progress we have made. There is a demo with some examples in the package to demonstrate the latest functionality of zkMove virtual machine.

For example, the following command will first compile add.move into bytecode, execute the bytecode to generate an execution trace, then build the circuit and setup the proving/verifying key, and then generate a zkp for the execution with the proving key and finally verify the proof with the verifying key.

zkmove run -s examples/scripts/add.move

zkMove Agger

Agger is a trustless computing service designed to extend the feature set of the blockchain. It enables Dapps to:

  • Access on-chain historical data in a trust-free manner, and allows arbitrary computations to be performed on the data.
  • Access any external data with minimal trust.
  • ...

Agger also enables developers to create customized ZK applications using the Move language, integrate them with other ZK modules, and easily deploy them to chains.

Source code

[code base]

License

zkMove is licensed as Apache 2.0.

zkMove's Projects

aptos-core icon aptos-core

Aptos is a layer 1 blockchain built to support the widespread use of blockchain through better technology and user experience.

zkmove icon zkmove

A zero-knowledge Move language runtime environment.

zkmove-lite icon zkmove-lite

A fast zero-knowledge proof friendly Move language runtime environment.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.