brunoerg / bitcoinfuzz

Differential Fuzzing of Bitcoin implementations and libraries
28 stars 11 forks source link

bitcoinfuzz

Differential Fuzzing of Bitcoin implementations and libraries. It currently supports Bitcoin Core, btcd, rust-bitcoin and rust-miniscript. Note this project is a WIP and might be not stable.

Installation

First clone the repo and open it using:

git clone --recursive https://github.com/brunoerg/bitcoinfuzz && cd bitcoinfuzz

Next update the submodules:

git submodule update

Now, you can build the project by running:

make

It is also possible to target a specific commit or tag of the dependencies during compilation:

make BTCD=v0.24.0 RUST_BITCOIN=aedb097

Once the compilation is complete bitcoinfuzz can be executed by:

FUZZ=target_name ./bitcoinfuzz

Bugs/inconsistences/mismatches found by Bitcoinfuzz