phayes/sidefuzz

Long-Term plan: Count Instructions with WebAssembly

phayes opened this issue · 1 comments

Right now SideFuzz is using cpu-cycles as its primary measurement.

In the short-term, we will introduce support for PAPI, which should provide better measurements.

In the long term, it would be nice to have the option to compile the targets to web-assembly, load them into a custom web-assembly runtime that counts individual instructions, and uses that as a measurement. It may miss variable-time code that is platform dependent, but it should be very accurate at capturing platform-independent variable-time code.

This is now done. Using wasm has significantly improved detection / rejection.

It's a bit of a pivot for this project, but a worthwhile one