This library was developed using the arkworks ecosystem to accompany WHIR 🌪️. By Gal Arnon Alessandro Chiesa, Giacomo Fenzi, and Eylon Yogev.
WARNING: This is an academic prototype and has not received careful code review. This implementation is NOT ready for production use.
cargo run --release -- --help
Usage: main [OPTIONS]
Options:
  -t, --type <PROTOCOL_TYPE>             [default: PCS]
  -l, --security-level <SECURITY_LEVEL>  [default: 100]
  -p, --pow-bits <POW_BITS>
  -d, --num-variables <NUM_VARIABLES>    [default: 20]
  -e, --evaluations <NUM_EVALUATIONS>    [default: 1]
  -r, --rate <RATE>                      [default: 1]
      --reps <VERIFIER_REPETITIONS>      [default: 1000]
  -k, --fold <FOLDING_FACTOR>            [default: 4]
      --sec <SOUNDNESS_TYPE>             [default: ConjectureList]
      --fold_type <FOLD_OPTIMISATION>    [default: ProverHelps]
  -f, --field <FIELD>                    [default: Goldilocks2]
      --hash <MERKLE_TREE>               [default: Blake3]
  -h, --help                             Print help
  -V, --version                          Print version
Options:
- -tcan be either- PCSor- LDTto run as a (multilinear) PCS or a LDT
- -lsets the (overall) security level of the scheme
- -psets the number of PoW bits (used for the query-phase). PoW bits for proximity gaps are set automatically.
- -dsets the number of variables of the scheme.
- -esets the number of evaluations to prove. Only meaningful in PCS mode.
- -rsets the log_inv of the rate
- -ksets the number of variables to fold at each iteration.
- --secsets the settings used to compute security. Available- UniqueDecoding,- ProvableList,- ConjectureList
- --fold_typesets the settings used to compute folds. Available- Naive,- ProverHelps
- -fsets the field used, available are- Goldilocks2, Goldilocks3, Field192, Field256.
- --hashsets the hash used for the Merkle tree, available are- SHA3and- Blake3