Research Article

Multiple Differential Distinguisher of SIMECK32/64 Based on Deep Learning

Algorithm 3

Data generation for NDrm.
Input:
 multiple differences (Δ0, Δ1, …, Δt − 1)
 sample number N
Output: TD’’
(1)TD″ ← (⋅)/∗initial data set∗/
(2)K ← Random()
(3)for i = 0 to t − 1 do
(4)P2i = Random()
(5)end for
(6)for i = 0 to t − 1 do
(7)P2i + 1 = P2i ⊕ Δi
(8)end for
(9)for j = 0 to N − 1 do
(10)Cj ← encrypt (Pj, Kj)
(11)end for
(12)for i = 0 to N − 1 do/∗set label∗/
(13)if i&1 = 0 then
(14)  Ci ← Random()
(15)  Yi ← 0
(16)else
(17)Yi ← 1
(18)end if
(19)end for
(20)return TD’’ ← (X(C0CN − 1), Y)