Skip to content

Part of the Linea stack responsible for extracting data from the execution of an EVM client in order to construct large matrices called execution traces.

License

Notifications You must be signed in to change notification settings

Consensys/linea-tracer

Repository files navigation

Besu zkBesu-tracer Plugin

A zk-evm tracing implementation for Hyperledger Besu based on an existing implementation in Go.

Prerequisites

  • Java 17
brew install openjdk@17
  • Install Go
brew install go
  • Install Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

# Use local git executable to fetch from repos (needed for private repos)
echo "net.git-fetch-with-cli=true" >> .cargo/config.toml
  • Install Corset
cargo install --git ssh://[email protected]/ConsenSys/corset
  • Clone zk-geth & compile zkevm.bin
git clone [email protected]:ConsenSys/zk-geth.git --recursive

cd zk-geth/zk-evm
make zkevm.bin 
  • Set environment with path to zkevm.bin
export ZK_EVM_BIN=PATH_TO_ZK_GETH/zk-evm/zkevm.bin

Run tests

./gradlew test

Debugging traces

JSON files can be debugged with the following command:

corset check -T JSON_FILE -v $ZK_EVM_BIN

About

Part of the Linea stack responsible for extracting data from the execution of an EVM client in order to construct large matrices called execution traces.

Topics

Resources

License

Stars

Watchers

Forks