International Association for Cryptologic Research

International Association
for Cryptologic Research

CryptoDB

Closing the Gap: Leakage Contracts for Processors with Transitions and Glitches

Authors:
Johannes Haring
Vedad Hadži´c
Roderick Bloem
Download:
DOI: 10.46586/tches.v2024.i4.110-132
URL: https://tches.iacr.org/index.php/TCHES/article/view/11785
Search ePrint
Search Google
Abstract: Security verification of masked software implementations of cryptographic algorithms must account for microarchitectural side-effects of CPUs. Leakage contracts were proposed to provide a formal separation between hardware and software verification, ensuring interoperability and end-to-end security for independently verified components. However, previously proposed leakage contracts did not consider a class of ephemeral hardware effects called glitches, which leaves a considerable gap between security models and the capabilities of real-world attackers. We address this issue by extending the model for leakage contracts to account for glitches and transitions. We further present the first end-to-end verification tool for transient leakage contracts. Our hardware and software verification rely on the same contract as a single source of truth, facilitating fully machine-checked verification from the hardware gate level to the software. By allowing contracts to be written in the C programming language we make power contracts more accessible and intuitive for system-level engineers. To showcase the efficacy of our approach, we apply it to the RISC-V Ibex core. We show that it is possible to write a power contract for Ibex without any modifications to the hardware design. Using this contract, we prove end-to-end security between masked software and gate-level hardware.
BibTeX
@article{tches-2024-34459,
  title={Closing the Gap: Leakage Contracts for Processors with Transitions and Glitches},
  journal={IACR Transactions on Cryptographic Hardware and Embedded Systems},
  publisher={Ruhr-Universität Bochum},
  volume={2024},
  pages={110-132},
  url={https://tches.iacr.org/index.php/TCHES/article/view/11785},
  doi={10.46586/tches.v2024.i4.110-132},
  author={Johannes Haring and Vedad Hadži´c and Roderick Bloem},
  year=2024
}