Skip to content

Zero Knowledge Sujiko solving validation and creation.

Notifications You must be signed in to change notification settings

carloseam94/zksujiko

Repository files navigation

zkSujiko

Live Demo

You can check out a live demo here.

Build Setup

# install dependencies
$ yarn install

# serve with hot reload at localhost:3000
$ yarn dev

circuits

Circuits folder contains 2 .circom files (sujiko.circom and sujiko62.circom) and a folder (circomlibs) with the circuits they use as dependencies. These files are used to generate their respectives .wasm files (sujiko.wasm and sujiko62.wasm) and .zkey files (sujiko_0001.zkey and sujiko62_0001.zkey) also two solidity contracts (SujikoVerifier.sol and Sujiko62Verifier.sol).

Both circuits validates the following conditions (for their corresponding type of sujiko)

  • The submited solution comes from the provided sujiko.
  • All the numbers of the squares are between 1 and n. (n is the number of squares of the sujiko)
  • All the numbers of the squares are unique.
  • All the numbers of the circles are equal to the sum of all the numbers in their adjacent squares.

static

This folder contains the previously generated .wasm and .zkey files.

contracts

Contracts folder contains 4 .sol files (Sujiko.sol, SujikoVerifier.sol, Sujiko62.sol and Sujiko62Verifier.sol)

utils

Contains the file DeployedContracts.json, which contains the addresses of both solidity contracts Sujiko.sol and Sujiko62.sol in the Harmony Testnet. Also 2 ABI files for these contracts (Sujiko.json and Sujiko62.json).

zkutils

Contains 3 .js files (sujiko_prover.js, sujiko62_prover.js and zkproof.js) they are the core of the zk-proof generation and validation process.

Remaining folders and files

They are specifically related to Nuxt and the front-end of the application. More information in the documentation.

About

Zero Knowledge Sujiko solving validation and creation.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published