Fuzzing
ConceptFuzzing is a testing technique in which a target is repeatedly exercised with modified or randomized inputs to surface bugs and security vulnerabilities. Originally a software-testing method, it has been extended to automated grammar learning, library fuzz-driver generation, and hardware/RTL verification, including FPGA-accelerated frameworks such as HWFuzz for RISC-V processors.
WIKI
Overview
Fuzzing is a testing technique that repeatedly exercises an application with modified, or "fuzzed," inputs. In the software-security setting described by Learn&Fuzz, its goal is to find security vulnerabilities in input-parsing code. The approach generates large volumes of random and often invalid inputs to trigger unexpected behavior [1].
Fuzzing has traditionally served as a software testing tool, but has more recently been adapted to verify hardware circuits, with modifications tailored to processor verification [2].