Cryptology ePrint Archive: Report 2018/218

On Evaluating Fault Resilient Encoding Schemes in Software

Jakub Breier and Xiaolu Hou and Yang Liu

Abstract: Cryptographic implementations are often vulnerable against physical attacks, fault injection analysis being among the most popular techniques. On par with development of attacks, the area of countermeasures is advancing rapidly, utilizing both hardware- and software-based approaches. When it comes to software encoding countermeasures for fault protection and their evaluation, there are very few proposals so far, mostly focusing on single operations rather than cipher as a whole.

In this paper we propose an evaluation framework that can be used for analyzing the effectivity of software encoding countermeasures against fault attacks. We first formalize the encoding schemes in software, helping us to define what properties are required when designing a fault protection. Based on these findings, we develop an evaluation metric that can be used universally to determine the robustness of a software encoding scheme against bit flip faults and instruction skips. We provide a way to select a code according to user criteria and also a dynamic code analysis method to estimate the level of protection of assembly implementations using encoding schemes. Finally, we verify our findings by implementing a block cipher PRESENT, protected by encoding scheme based on anticodes, and provide a detailed evaluation of this implementation using different codes.

Category / Keywords: implementation / software encoding schemes, fault attacks, countermeasures, evaluation

Date: received 22 Feb 2018, last revised 26 Jul 2018

Contact author: jbreier at ntu edu sg

Available format(s): PDF | BibTeX Citation

Version: 20180727:041113 (All versions of this report)

Short URL: ia.cr/2018/218


[ Cryptology ePrint archive ]