project screenshot 1
project screenshot 2
project screenshot 3

Project Maya

Command line tool to generate and verify correct image transformations

Project Maya

Created At

Circuit Breaker

Project Description

This project provides CLI commands to generate ZK proofs for image edits like crop, grayscale etc (only crop supported for now). This ZK proof can be easily verified by a verifier who wants to check if a cropped image is actually a crop of the original image. So, run "maya prove crop [flags]" to generate the proof. Share this proof with the verifier. Then, the verifier can run "maya verify crop [flags]" and voila, the proof is verified.

How it's Made

This project is based on golang. The most library that it uses is a ZK-SNARK library in golang called gnark (https://github.com/Consensys/gnark). All the ZK circuits and corresponding code to interact with the circuit is written using gnark. However, we need to compile a new circuit for each new dimension of image, for ex, a different circuit is used for 100x100 image vs 200x250 image. Also, there's some compatibility issues with using frontend.Variable in gnark such that you can't pass an int in their function and use it by typecasting.

background image mobile

Join the mailing list

Get the latest news and updates