Scroll common rust crates.
Import as an dependency to use.
Setup
cargo build --release --bin setup
./target/release/setup --params <params-file-path> --seed <seed-file-path>Prove
cargo build --release --bin prove
./target/release/prove --params zkevm/test_params --seed zkevm/test_seed --trace zkevm/tests/erc20/multiple.json --evm evm_proof_multiple-erc20 --state state_proof_multiple-erc20By default, prover tests are disabled due to heavy computations, if you want to run the prover test, please run:
RUST_LOG=info cargo test --features prove_verify --release test_evm_prove_verify
or
RUST_LOG=info cargo test --features prove_verify --release test_state_prove_verify
(Please don't run test_evm_prove_verify and test_state_prove_verify concurrently.)
By default, it run the test for a trace corresponding to a block containing multiple erc20 txs. You can config mode ENV to test other trace:
MODE=singlefor a block containing 1 erc20 tx.MODE=nativefor a block containing 1 native ETH transfer tx.MODE=greeterfor a block containing 1Greetercontractset_valuecall tx.MODE=emptyfor an empty block.
Licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.