Punctured Karpovsky-Taubin binary robust error detecting codes for cryptographic devices

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.