~/talk

Modern Testing and Fuzzing in Bitcoin Core

slides:none on file

Describes how Bitcoin Core adds fuzz harnesses with a single target macro and fuz_data_provider, builds with sanitizers or no-sanitize then measures coverage via LLVM to steer libFuzzer and OSS-Fuzz runs, finding crashes in serialization, script engine, P2P and crypto code. Out-of-process AFL++ and multiprocess honggfuzz target state corruption and differential cases. Uses mutation testing (flip > to >=, delete statements) to prove test effectiveness and notes chain-state logic usually requires functional tests not fuzzing.

AI-written summary · about

  1. 0:00Bitcoin Core testing needs
  2. 2:28Types of tests today
  3. 5:25Writing a fuzz harness
  4. 7:10Key fuzzing targets
  5. 8:34Fuzzing engines compared
  6. 10:22Selecting fuzzing targets
  7. 12:08Mutation testing effectiveness
  8. 13:34Formal verification of code
  9. 15:40Getting involved in testing
  10. 17:29Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.