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 |
|