Bản rõ ban đầu sau khi được thực hiện phép cộng⊕(XOR) với khóa con ban đầu ta thu được một mảng trạng tháiSTATE, và thực hện phép thay thế phi tuyến (SBoxlayer)
bằng cách thay thế từng phần tử trong mảng trạng thái (chuyển sang hệ Hexa) tương ứng với các phần tử (chuyển sang hệ Hexa) trong bảng hộp-S ở trên với việc thay thế
{0} → {C}ta thu được kết quả sau:
Khóa XOR: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 hộp-S: C C C C C C C C C C C C C C C C
2.3.3 Phép toán hoán vị
Phép tốn hốn vị đảm bảo rằng 4 bít đầu ra của hộp-S sẽ được phân tán ra 4 hộp-S khác nhau ở vòng tiếp theo để đảm bảo tính chất khuếch tán và đạt được sau khi thực hiện một số vịng tối thiểu.
Vì mã hóa PRESENT sử dụng mơ hình mạng SPN nên theo cấu trúc SPN ta gọi
blà kích thước khối (block size),slà số bít hộp-S vàP(i)là vị trí bít sau khi hốn vị, ta có phép tốn hốn vị bít tổng qt sau:
P(i) = (b
s ×i mod b−1 với0≤i≤b−2,
b−1 vớii=b−1,
Trong mã hóa PRESENT sử dụng khối 64 bít (b= 64), và số bít hộp-S là 4×4 (s = 4), từ phép tốn tổng qt ở trên, ta có phép tốn hốn vị của PRESENT như sau:
P(i) = (
16×i mod63 với0≤i≤62,
63 vớii= 63,
Với phép tốn hốn vị trên ta có được bảng hốn vị của PRESENT bảng 4.
i P(i) 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 16 32 48 1 17 33 49 2 18 34 50 3 19 35 51 i P(i) 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 4 20 36 52 5 21 37 53 6 22 38 54 7 23 39 55 i P(i) 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 8 24 40 56 9 25 41 57 10 26 42 58 11 27 43 59 i P(i) 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 12 28 44 60 13 29 45 61 14 30 46 62 15 31 47 63