crc-prover

module
v0.0.0-...-97d7e93 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 7, 2023 License: GPL-3.0

README

Wisp Prover Server

Integration Test

The Prover is a fork of Iden3's prover-server. It is a REST API Wrapper for go-rapidsnark

Installation

Docker Image
  1. Download the already published image containing the circuits and verification key (~50 GB)
    docker pull limechain/wisp-prover:1.0
    
  2. Run the image
    docker run -d -p 8000:8000 limechain/wisp-prover:1.0
    

Note

  • The image contains ssz2Poseidon and blsHeaderVerify circuits
  • Hardware requirements are 256GB RAM, 32-core CPU and 1 TB SSD
From Source
  1. (Optional) Create / edit your config file. Defaults to configs/dev.yaml.
  2. Prepare compiled circuits, zkey and verification key.
    1. Option 1 (Development): Use multiplier:
      mkdir ./circuits && cp -R .github/workflows/test-circuit/multiplier ./circuits/multiplier
      
    2. Option 2: CRC circuits (ssz2Poseidon and blsHeaderVerify):
      bash get-circuits.sh
      
      Hardware requirements are 256GB RAM, 32-core CPU and 1 TB SSD
  3. Build the image
    docker build -t prover-server .
    
  4. Run Prover
    docker run -it -p 8000:8000 prover-server
    
    If you want to use config, different from the default dev one you must pass it as an environmental variable CONFIG={config}

API

Generate proof
POST /api/v1/proof/generate
Content-Type: application/json
{
    "circuit": "multiplier", // name of the requested circuit as specified in the config
    "inputs": {...} // circuit specific inputs
}

License

  • The code in this project is licensed under the GNU GPLv3 license
  • Iden'3 prover-server is part of the iden3 project copyright 2021 0KIMS association and published with GPL-3 license

Directories

Path Synopsis
cmd
prover command
pkg
app
log

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL