Differential Fuzzing
TechniqueDifferential fuzzing is a guided randomized testing technique that compares the behavior of two or more implementations of the same specification on the same input; an implementation is flagged as potentially erroneous when its outputs or behaviors diverge from another implementation's on that input. It replaces traditional fuzzer oracles such as crashes, hangs, or unsound memory accesses with a difference oracle, and has been applied to cryptography, complex format parsers (e.g., PDF, ELF), CPU instruction decoder testing, CPU RTL fuzzing, side-channel detection in Java libraries, and functional equivalence checking of LLM-generated code refactorings.
WIKI
Differential Fuzzing
Definition
Differential fuzzing is a software testing and bug-finding technique in which multiple implementations of the same specification are executed on the same randomized inputs and their outputs or behaviors are compared. An implementation is treated as potentially erroneous when its behavior differs from another implementation's behavior on the same input [1]. The technique replaces traditional fuzzer oracles (such as crashes, hangs, or unsound memory accesses) with a difference oracle, in which agreement among implementations is treated as evidence of correctness and disagreement is treated as evidence of a bug [1].
NEIGHBORHOOD
No graph connections found for this entity yet. It may appear in future ingestion runs.
explore full graph →