Skip to content

Latest commit

 

History

History
50 lines (35 loc) · 1.23 KB

pip-description.md

File metadata and controls

50 lines (35 loc) · 1.23 KB

EthCheck

EthCheck is a command-line tool for testing and verifying the Ethereum Consensus Specification using the ESBMC model checker. EthCheck includes:

  • Verification of individual functions across all available forks;
  • Automatic generation of test cases for each detected issue;
  • Execution of these tests against eth2spec to confirm results;

Architecture

The figure bellow illustrates the EthCheck architecture.

image

Installation

EthCheck is currently supported on Linux.

sudo apt update
sudo apt install -y python3-venv python3-pip git-lfs
pip install eth2spec
pip install ethcheck

Usage

Important: Ensure the virtual environment is active by running the command below:

python3 -m venv ethcheck_env
source ethcheck_env/bin/activate

The terminal should display <ethcheck_env> if the environment is active.

Verify a specific file

ethcheck --file ethcheck/spec.py

List available forks

ethcheck --list-forks

Verify a specific fork

ethcheck --fork <fork-name>