← Back to home

wasmSNARK

A IVC SNARK implementation based on the Fold scheme, capable of running insde a browser based p2p network, support continuation and parallelization.

Screenshots

wasmSNARK screenshot 1
wasmSNARK screenshot 2
wasmSNARK screenshot 3

Problem Statement

The purpose of this project is to use a browser based p2p network and IVC SNARK system to build a fully decentralized ZKP computing platform, not only reduce the price of ZK computing power but also make ZK proof more decentralized.wasmSNARK contains four major steps/parts:Enables reading R1CS and circuit generation (WASM) from Circom within the browser.Supports the generation of recursive SNARK tasks, dividing them into pieces.Facilitates the distribution of SNARK tasks across a browser-based P2P network.Allows the folding and verification of distributed tasks on arbitrary nodes.A demo is included to show how the snark and wasm based p2p works.

Solution

The project use @ringsnetwork as p2p layer, which is based on WASM, WebRTC and Chord DHT.The project use nova-snark as it's folding scheme implementation.The project implemented circom circuit reader, which can read r1cs and wasm from circom output.The project use bellman as SNARK engine, which support Merlin, Plonk as SNARK backend.

Hackathon

Circuit Breaker

2024

Contributors