Skip to content

abel-byte/scroll-zkevm

 
 

Repository files navigation

πŸ“œ scroll-zkevm πŸ“œ

Unit Test issues

Usage

Prerequisite

Fetch git-submodule of test traces

git submodule init
git submodule update --checkout

Download setup params

make download-setup

Or specify degree and target directory to download

# As default `degree=25` and `params_dir=./prover/test_params`.
make download-setup -e degree=DEGREE params_dir=PARAMS_DIR

Testing

make test-chunk-prove is the main testing entry point for the multi-level circuit constraint system of scroll-zkevm. Developers could understand how the system works by reading the codes of this test.

Besides it, make test-inner-prove could be used to test the first-level circuit.

Binaries

This repository is designed to be used as a Rust crate, rather than a standalone running process. However, you can still use the following command to run binaries locally.

If you run into linking issues you may need to run

cp `find ./target/release/ | grep libzktrie.so` /usr/local/lib/

To move the zktrielib into a path where your linker could locate it.

Run prover

cargo build --release --bin prove

./target/release/prove --help

Could specify arguments as

cargo run --release --bin prove -- --params=./prover/test_params --trace=./prover/tests/traces/erc20/10_transfer.json

Run verifier

cargo build --release --bin verify

./target/release/verify --help

Could specify arguments as

cargo run --release --bin verify -- --params=./prover/test_params --vk=./proof_data/chunk.vkey

License

Licensed under either of

at your option.

About

Scroll's zkEVM rust crates

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages

  • Rust 95.6%
  • Shell 3.0%
  • Makefile 1.3%
  • Dockerfile 0.1%