Robust and partially robust codes are codes used in cryptographic devices for maximizing the probability of detecting errors injected by malicious attackers. The set of errors that are masked (undetected) by all codewords form the detection-kernel of the code. Codes whose kernel contains only the zero vector, i.e. codes that can detect any nonzero error (of any multiplicity) with probability greater than zero, are called robust. Codes whose kernel is of size greater than one are considered as partially-robust codes. Partially-robust codes of rate greater than one-half can be derived from the the cubic Karpovsky-Taubin code [6]. This paper introduces a construction of robust codes of rate >; 1/2. The codes are derived from the Karpovsky-Taubin code by puncturing the redundancy bits. It is shown that if the number of remaining redundancy bits (r) is greater than one then the code is robust and any error vector is detected with probability 1, 1-2-r or 1 - 2-r+1. The number of the error vectors associated with each probability is given for robust codes having odd number of information bits.
[1]
Ingrid Verbauwhede,et al.
Secure Integrated Circuits and Systems
,
2010,
Integrated Circuits and Systems.
[2]
Osnat Keren,et al.
A Comment on the Karpovsky–Taubin Code
,
2011,
IEEE Transactions on Information Theory.
[3]
K. T. Phelps,et al.
A Combinatorial Construction of Perfect Codes
,
1983
.
[4]
Elwyn R. Berlekamp,et al.
On the Solution of Algebraic Equations over Finite Fields
,
1967,
Inf. Control..
[5]
Sergei Skorobogatov,et al.
Semi-invasive attacks: a new approach to hardware security analysis
,
2005
.
[6]
Mark G. Karpovsky,et al.
Design of Memories with Concurrent Error Detection and Correction by Nonlinear SEC-DED Codes
,
2010,
J. Electron. Test..
[7]
Mark G. Karpovsky,et al.
New class of nonlinear systematic error detecting codes
,
2004,
IEEE Transactions on Information Theory.