Abstract
Persistent faults mark a new class of injections that perturb lookup tables within block ciphers with the overall goal of recovering the encryption key. Unlike earlier fault types persistent faults remain intact over many encryptions until the affected device is rebooted, thus allowing an adversary to collect a multitude of correct and faulty ciphertexts. It was shown to be an efficient and effective attack against substitution-permutation networks. In this paper, the scope of persistent faults is further broadened and explored. More specifically, we show how to construct a key-recovery attack on generic Feistel schemes in the presence of persistent faults. In a second step, we leverage these faults to reverse-engineer AES- and PRESENT-like ciphers in a chosen-key setting, in which some of the computational layers, like substitution tables, are kept secret. Finally, we propose a novel, dedicated, and low-overhead countermeasure that provides adequate protection for hardware implementations against persistent fault injections.
Highlights
Fault injections and their accompanying analysis techniques rank amongst the most devastating attacks against cryptographic implementations
Biham and Shamir gave a method to exploit the difference between a faulty and correct DES ciphertext to gain information about the encryption key, this type of analysis became known as differential fault analysis [3]
The standard techniques of persistent fault analysis do not apply to Feistel networks due to the fact that the both the left and right side of the output are masked by previous round function outputs
Summary
Fault injections and their accompanying analysis techniques rank amongst the most devastating attacks against cryptographic implementations. The authors subsequently show that around 1500 ciphertexts are sufficient to recover the last round-key of AES in the presence of a single overwritten s-box element They further demonstrate how to use the rowhammer attack [10] in order to provoke persistent fault injections in the s-box of vulnerable AES implementations. We demonstrate how to leverage persistent fault injections to recover a hidden PRESENT s-box and its permutation layer, as well as the substitution box of AES in a reduced-round setting. These reverse engineering attacks take place in the chosen-key setting and exploit particular behaviours within the key-schedule routines of both PRESENT and AES. We propose a novel, low-overhead hardware countermeasure that adequately protects bijective substitution boxes against persistent fault injections
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.