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-erc20
By 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=single
for a block containing 1 erc20 tx.MODE=native
for a block containing 1 native ETH transfer tx.MODE=greeter
for a block containing 1Greeter
contractset_value
call tx.MODE=empty
for 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.