Ethereum smart contract fuzzer
Echidna is a Haskell-based fuzzer designed for property-based testing of Ethereum smart contracts written in Solidity. It uses grammar-based fuzzing campaigns to generate test inputs tailored to contract code, checking user-defined invariants (functions prefixed with `echidna_` that return boolean values) and detecting assertion failures, integer overflows, and other vulnerabilities. The tool integrates with Slither for static analysis, supports multiple testing modes including property testing, assertion detection, and coverage-guided exploration, and is maintained by Trail of Bits as part of the Crytic security analysis platform. Echidna can be installed via Homebrew, Docker, Nix, or compiled from source using Stack or Cabal, and it supports contracts built with Foundry, Hardhat, and Truffle through the crytic-compile framework.