In this paper, we investigate security of the KATAN family of block ciphers against differential fault attacks. KATAN consists of three variants with 32, 48 and 64-bit block sizes, called KATAN32, KATAN48 and KATAN64, respectively. All three variants have the same key length of 80 bits. We assume a single-bit fault injection model where the adversary is supposed to be able to corrupt a single random bit of the internal state of the cipher and this fault induction process can be repeated (by resetting the cipher); i.e., the faults are transient rather than permanent. First, we show how to identify the exact position of faulty bits within the internal state by precomputing difference characteristics for each bit position at a given round and comparing these characteristics with ciphertext differences (XOR of faulty and non-faulty ciphertexts) during the online phase of the attack. Then, we determine suitable rounds for effective fault inductions by analyzing distributions of low-degree (mainly, linear and quadratic) polynomial equations obtainable using the cube and extended cube attack techniques. The complexity of our attack on KATAN32 is 259 computations and about 115 fault injections. For KATAN48 and KATAN64, the attack requires 255 computations (for both variants), while the required number of fault injections is 211 and 278, respectively.
Abdul-Latip, S. Faisal., Reyhanitabar, M. Reza., Susilo, W. & Seberry, J. (2012). Fault analysis of the KATAN family of block ciphers. Lecture Notes in Computer Science, 7232 (N/A), 319-336.