Skip to content

xsimplex/scverif-microbenchmarks-max

 
 

Repository files navigation

micro_benchmarks

This repository provides leakage modelling for detecting microarchitectural leakage in masked software via the ScVerif framework.

Repository Structure

benchmarks/

This directory contains a set of microbenchmarks used to profile target devices—such as the ChipWhisperer CW308 STM32F3—for various micro-architectural leakage effects. These benchmarks are designed to trigger specific leakage effects in isolation and can be run directly on the target hardware.

Additionally, this folder includes scripts to:

  • Convert .objdump files generated by ScVerif into inline assembly files suitable for deployment on the target device.
  • Translate inline assembly files back into .objdump format for verification within ScVerif.

cw_profiling/

Contains the infrastructure for performing microbenchmark-based leakage detection on ChipWhisperer-compatible devices. This includes:

  • Data capture routines using the ChipWhisperer API.
  • Correlation Power Analysis (CPA) scripts for identifying leakage.
  • Automation scripts for running benchmarks and collecting traces.

Sc_Verif_modelling/

Implements leakage models in ScVerif for the following micro-architectural effects:

  • Memory Remnant Effect
  • Pipeline Register Overwrite Effect
  • SRAM Overwrite Effect
  • Register Overwrite Effect

These models are designed to conservatively capture leakage in the verification process of a masked .objdump program and correspond to physical effects observed during hardware profiling.

License

This project is released under the MIT License.

Author

Maximilian KampsMaxKampsVu

About

Microbenchmark verification of side-channel leakage effects with scVerif, done by Max Kamps

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 91.5%
  • C 5.4%
  • Assembly 2.5%
  • Makefile 0.6%