Research Article
Multiple Differential Distinguisher of SIMECK32/64 Based on Deep Learning
| Input: | | multiple differences (Δ0, Δ1, …, Δt − 1) | | sample number N | | Output: model | (1) | TD ← (⋅); /∗initial training set∗/ | (2) | K ← Random() | (3) | P 0 = Random() | (4) | for i = 1 to t do | (5) | Pi = Pt − 1 ⊕ Δi − 1 | (6) | end for | (7) | for j = 0 to N − 1 do | (8) | Cj ← encrypt (Pj, Kj) | (9) | end for | (10) | for i = 0 to N − 1 do/∗set training label∗/ | (11) | if i&1 = 0 then | (12) | Ci ← Random() | (13) | Yi ← 0 | (14) | else | (15) | Yi ← 1 | (16) | end if | (17) | end for | (18) | TD ← (X(C0…CN − 1), Y) | (19) | model ← Training with TD | (20) | return model |
|