针对 KLEIN 密码算法提出一种可行的差分故障分析方法,研究 KLEIN 密码对差分故障分析的安全性。经多次分析尝试,选择分别向16个字节处各导入1比特随机故障,相当于每次引入16个随机故障。通过在 KLEIN 密码第12轮 S 盒置换操作之前对各字节引入1比特随机故障,并构造了 S 盒差分区分器来搜索差分值,最终恢复64比特密钥。实验结果表明,平均2.73次诱导此类故障即可恢复主密钥,同时大大降低了搜索空间。
In this article,we present an available method of differential fault analysis on KLEIN cryptographic algorithm,and study the security of KLEIN cipher on differential fault analysis.After many times of analysis and try,we choose to inject 1 bit random fault into each of the 16 nibbles separately,this corresponds to inducing 16 random faults each time.By inducing 1 bit random fault into each nibble before the 12th-round permutation operation of S-layer of KLEIN cipher,and by constructing the differential distinguisher of S-layer to search the possible differential value,we eventually recover the 64-bit master key.Experimental results show that to recover the master key,we just need to induce 2.73 times in average such type of fault,and the search space is reduced greatly as well.