Prover Server is a REST API Wrapper & golang binding for SnarkJS
List of implemented features:
- Generate proof
-
Build prover server:
go build ./cmd/prover/prover.go
-
Edit config file
configs/prover.yaml
-
Put compiled circuits into
<circuitsBasePath>/<circuitName>
directory. Where<circuitsBasePath>
is config option with default valuecircuits
, and<circuitName>
is name of the circuit that will be passed as a param to an API call. See SnarkJS Readme for instructions on how to compile circuits. -
Run prover server:
./prover
POST /api/v1/proof/generate
Content-Type: application/json
{
"inputs": {...}, // circuit specific inputs
"circuit_name": "..." // name of directory
}
Build and run container with snarkjs prover:
docker build -t prover-server .
docker run -it -p 8002:8002 prover-server
Build and run container with rapidsnark prover:
docker build -t prover-server-rapidsnark -f Dockerfile-rapidsnark .
docker run -it -p 8002:8002 prover-server-rapidsnark
prover-server is part of the iden3 project copyright 2021 0KIMS association and published with GPL-3 license. Please check the LICENSE file for more details.