A Formal Proof of Countermeasures against Fault Injection Attacks on CRT-RSA
This work addresses security vulnerabilities in cryptographic implementations for systems requiring protection against physical attacks, but it is incremental as it builds on existing formal proof methods and specific case-studies.
The paper tackled the problem of proving security against fault injection attacks on CRT-RSA implementations, finding that many attacks are possible on unprotected and Shamir implementations, while the Aumüller et al. implementation is resistant to all single-fault attacks and to double-fault attacks under a specific threat model.
In this article, we describe a methodology that aims at either breaking or proving the security of CRT-RSA implementations against fault injection attacks. In the specific case-study of the BellCoRe attack, our work bridges a gap between formal proofs and implementation-level attacks. We apply our results to three implementations of CRT-RSA, namely the unprotected one, that of Shamir, and that of Aumüller et al. Our findings are that many attacks are possible on both the unprotected and the Shamir implementations, while the implementation of Aumüller et al. is resistant to all single-fault attacks. It is also resistant to double-fault attacks if we consider the less powerful threat-model of its authors.