Small Faults Grow Up - Verification of Error Masking Robustness in Arithmetically Encoded Programs
The increasing prevalence of soft errors and security concerns due to recent attacks like rowhammer have caused increased interest in the robustness of software against bit flips.
Arithmetic codes can be used as a protection mechanism to detect small errors injected in the program’s data. However, the accumulation of propagated errrors can increase the number of bits flips in a variable - possibly up to an undetectable level.
The effect of error masking can occur: An error weight exceeds the limitations of the code and a new, valid, but incorrect code word is formed. Masked errors are undetectable, and it is crucial to check variables for bit flips before error masking can occur.
In this paper, we develop a theory of provably robust arithmetic programs. We focus on the interaction of bit flips that can happen at different locations in the program and the propagation and possible masking of errors. We show how this interaction can be formally modeled and how off-the-shelf model checkers can be used to show correctness. We evaluate our approach based on prominent and security relevant algorithms and show that even multiple faults injected at any time into any variables can be handled by our method.
Tue 15 JanDisplayed time zone: Belfast change
14:00 - 15:30 | |||
14:00 30mTalk | Type-directed Bounding of Collections in Reactive Programs VMCAI Tianhan Lu University of Colorado Boulder, Pavol Cerny University of Colorado Boulder, Bor-Yuh Evan Chang University of Colorado Boulder, Ashutosh Trivedi | ||
14:30 30mTalk | Exploiting Pointer Analysis in Memory Models for Deductive Verification VMCAI Quentin Bouillaguet , François Bobot CEA, Mihaela Sighireanu IRIF, University Paris Diderot and CNRS, France, Boris Yakobowski CEA - LIST File Attached | ||
15:00 30mTalk | Small Faults Grow Up - Verification of Error Masking Robustness in Arithmetically Encoded Programs VMCAI Anja Karl Institute of Applied Information Processing and Communications, Graz University of Technology, Robert Schilling , Roderick Bloem Institute of Software Technology, Graz University of Technology , Stefan Mangard |