Circuit developer
This is an entity that prepares circuits for Proof Market. The most efficient way to create a circuit definition for Proof Market is zkLLVM circuit compiler. You can find the required dependencies and build instructions in the zkLLVM's repository.
Anyone can generate circuits. They are serialized & published on Proof Market, allowing reuse of the circuits by all proof requesters.
make -C ${ZKLLVM_BUILD:-build} <circuit target name> -j$(nproc)
Circuits are stored on Proof Market in the form of statements. Example statements can be found in the
./example
directory.python3 scripts/prepare_statement.py \
--circuit <zkllvm output> \
--type <circuit type> \
--output <statement description file> \
--name <statement name> \
--private | --public
You can find an authentication file example in the
/example
directory.The statement can be published on Proof Market via the Python script
statement_tools.py
:$ python3 scripts/statement_tools.py push
--file <json file with statement description>
Statement from /opt/zkllvm-template/build/template.json was pushed.
A list of all available statements can be obtained by this command:
python3 scripts/statement_tools.py get
To retrieve a selected statement/circuit definition and its metadata uploaded upon the statement's publishing:
python3 scripts/statement_tools.py get \
--key <key of the statement> \
--output <output file>
Last modified 2mo ago