coCircom Command-Line Interface
This section expands on using the coCircom CLI to perform witness extension and proof generation in MPC including preparation steps thereof. As mentioned earlier, coCircom is best used alongside circom and snarkjs for generating intermediate artifacts.
The interactive workshop at ZK12 demonstrates the usage and workflow of the coCircom CLI (some background in the beginning, using the coCircom CLI starts around 28:58), as well as the coNoir CLI later on in the video.
Usage: co-circom <COMMAND>
Commands:
split-witness Splits an existing witness file generated by circom into secret shares for use in MPC
split-input Splits a JSON input file into secret shares for use in MPC
merge-input-shares Merge multiple shared inputs received from multiple parties into a single one
generate-witness Evaluates the extended witness generation for the specified circuit and input share in MPC
translate-witness Translates the witness generated with one MPC protocol to a witness for a different one
generate-proof Evaluates the prover algorithm for the specified circuit and witness share in MPC
verify Verification of a circom proof
help Print this message or the help of the given subcommand(s)
Options:
-h, --help Print help
-V, --version Print version
The subsections go into detail for each of co-circom
's commands.