Table 6: The involved bits of the registers for KATAN48.
Round bits of register L
1
0 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18
1 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 18
2 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17
·· · ·· ·
14 17, 11, 6, 14
15 -
16 -
106 0, 9, 18
107 17, 2, 11, 14, 9
108 16, 8, 11, 4, 13
·· · ·· ·
118 0, 1, 2, 6, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18
119 1, 2, 3, 4, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18
120 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18
Round bits of register L
2
0 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 26, 27, 28
1 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 23, 24, 26, 28
2 0, 1, 2, 3, 4, 5, 6, 7, 9, 10, 11, 12, 13, 15, 16, 17, 18, 19, 20, 21, 22, 25, 26, 28
·· · ·· ·
14 7
15 0, 9
16 2, 11
106 20
107 1, 22
108 0, 24, 3
... ...
118 0, 1, 2, 3, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 20, 21, 22, 23, 24, 26, 28
119 0, 1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 28
120 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28
Table 7: The involved bits of the registers L
1
for KATAN64.
Round bits of register L
1
0 0, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15, 18, 19, 22, 23
1 0, 1, 2, 3, 6, 7, 8, 9, 10, 11, 12, 13, 15, 16, 17, 18, 21, 22
2 0, 2, 3, 4, 5, 6, 9, 10, 11, 13, 14, 15, 18, 19, 20, 24
·· · ·· ·
10 8, 17, 2
11 11, 20, 5
12 8, 14, 23
88 8, 24, 18, 12, 15
89 2, 21, 23, 11, 18, 14, 15
90 0, 1, 5, 13, 14, 17, 18, 21, 22, 24
91 3, 4, 8, 12, 14, 16, 17, 18, 20, 21, 23, 24
92 1, 2, 6, 7, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24
93 0, 1, 4, 5, 9, 10, 12, 13, 14, 15, 16, 17, 18, 20, 21, 22, 23, 24
94 0, 2, 3, 4, 7, 8, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24
Round bits of register L
2
0 0, 1, 2, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 28, 30, 31, 32, 33, 35, 36, 37, 38
1 0, 1, 3, 4, 5, 7, 8, 9, 10, 12, 14, 15, 16, 17, 19, 20, 21, 23, 24, 25, 28, 29, 31, 33, 34, 36, 38
2 0, 3, 4, 6, 7, 8, 10, 11, 12, 13, 15, 17, 18, 19, 20, 23, 24, 27, 28, 31, 32, 36, 37
·· · ·· ·
10 1, 5, 14
11 8, 17, 4
12 11, 20, 7
·· · ·· ·
92 1, 2, 3, 5, 7, 11, 12, 14, 16, 17, 21, 22, 23, 24, 26, 27, 28, 29, 30, 32, 33, 35, 36, 37
93 0, 1, 2, 4, 5, 6, 8, 10, 11, 14, 15, 16, 17, 19, 20, 22, 23, 24, 25, 26, 27, 29, 30, 31, 32, 33, 34, 35, 36, 38
94 0, 1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 18, 19, 20, 22, 23, 24, 25, 26, 27, 28, 29, 30, 32, 33, 34, 35, 36, 37, 38
round forward and 14-round backward by this linear
hull. In the attack process, 28-bit subkey require to
be guessed, while another 8-bit subkey do not. The
involved subkey bits in the attack process are listed in
Table 4, and the involved bits of the registers are listed
in Table 6.
For KATAN64, a 76-round linear hull consisting
of 82908 linear characteristics with potential 2
−57
is obtained with additional constraints
∑
t∈A
V
t
≤ 77.
What is more, we mount a 94-round attack with 12-
round forward and 6-round backward by this linear
hull. In the attack process, 20-bit subkey require to
be guessed, while another 13-bit subkey do not. The
involved subkey bits in the attack process are listed in
Table 4, and the involved bits of the registers are listed
in Table 7.
The constraints
∑
t∈A
V
t
≤ 44/65/77 for
KATAN32/48/64 respectively is added due to
the limitation of computing resource. The data
complexity N of the linear hull attack is set by
2· ALH
−1
. Suppose the length of the guessed-key is
l
k
, thus the time complexity is N ·2
l
k
. The complexity
is summarized in Table 1.
5 CONCLUSION
We first propose a third-party linear cryptanalysis on
KATAN in this paper. What is more, we first take
the dependence of the S-box into the analysis for