ABSTRACT
Memories used in cryptographic devices are vulnerable to fault injection attacks. To mitigate the danger of these attacks, error control codes are often used in memories to detect maliciously injected faults. Most of codes proposed for memories in cryptographic devices are error detecting codes with small Hamming distances that cannot be used for error correction. While being able to provide sufficient protection against fault injection attacks, these codes cannot provide a satisfactory reliability under the presence of random errors. In this paper we present reliable and secure memory architectures based on two nonlinear error correcting codes. The presented coding technique can be used for detection of fault injection attacks as well as for correction of random errors. The construction and the error correction procedures for the code will be described. The error handling methodology used to distinguish between random errors and maliciously injected faults will be discussed.
- H. Bar-El, H. Choukri, D. Naccache, M. Tunstall, and C. Whelan. The sorcerers apprentice guide to fault attacks. 2002.Google Scholar
- R. Cramer, Y. Dodis, S. Fehr, C. Padr, and D. Wichs. Detection of algebraic manipulation with applications to robust secret sharing and fuzzy extractors. In Advances in Cryptology C EUROCRYPT 2008, volume 4965, pages 471--488. 2008. Google ScholarDigital Library
- M. G. Karpovsky and A. Taubin. New class of nonlinear systematic error detecting codes. IEEE Transactions on Information Theory, 50(8):1818--1820, 2004. Google ScholarDigital Library
- S. Skorobogatov. Optical fault masking attacks. Workshop on Fault Diagnosis and Tolerance in Cryptography, pages 23--29, 2010. Google ScholarDigital Library
- E. Trichina and R. Korkikyan. Multi fault laser attacks on protected CRT-RSA. Workshop on Fault Diagnosis and Tolerance in Cryptography, 0:75--86, 2010. Google ScholarDigital Library
- Z. Wang and M. Karpovsky. Algebraic manipulation detection codes and their applications for design of secure cryptographic devices. In On-Line Testing Symposium (IOLTS), 2011 IEEE 17th International, pages 234--239, july 2011. Google ScholarDigital Library
- Z. Wang and M. Karpovsky. Algebraic manipulation detection codes and their applications for design of secure cryptographic devices. In IEEE 17th International On-Line Testing Symposium (IOLTS), pages 234--239, 2011. Google ScholarDigital Library
- Z. Wang and M. Karpovsky. Algebraic manipulation detection codes and their applications for design of secure communication or computation channels. Design, Codes and Cryptography, 2012, submitted.Google Scholar
- Z. Wang, M. Karpovsky, and A. Joshi. Reliable MLC NAND flash memories based on nonlinear t-error-correcting codes. In Dependable Systems and Networks, IEEE/IFIP International Conference on, 2010.Google Scholar
- Z. Wang, M. Karpovsky, and A. Joshi. Nonlinear multi-error correction codes for reliable mlc nand flash memories. IEEE Transactions on Very Large Scale Integration (VLSI) Systems, 20(7):1221--1234, july 2012. Google ScholarDigital Library
- Z. Wang, M. Karpovsky, and K. Kulikowski. Design of memories with concurrent error detection and correction by nonlinear SEC-DED codes. Journal of Electronic Testing, pages 1--22, 2010. Google ScholarDigital Library
Index Terms
- Secure memories resistant to both random errors and fault injection attacks using nonlinear error correction codes
Recommendations
Statistical properties of side-channel and fault injection attacks using coding theory
Naïve implementation of block ciphers are subject to side-channel and fault injection attacks. To deceive side-channel attacks and to detect fault injection attacks, the designer inserts specially crafted error correcting codes in the implementation. ...
Automatic generation of error control codes for computer applications
This paper proposes a methodology, implemented in a tool, to automatically generate the main classes of error control codes (ECC's) widely applied in computer memory systems to increase reliability and data integrity. New code construction techniques ...
Faults, Injection Methods, and Fault Attacks
In a fault attack, errors are induced during the computation of a cryptographic algorithm, and the faulty results are exploited to extract information about the secret key in embedded systems. Fault attacks can break an unprotected system more quickly ...
Comments