Có ma trận thay thế sử dụng trong AES lõi làm cơ sở, nó là cần thiết để xác định ma trận khác cùng với các đặc tính tương tự hoặc tốt hơn. Các sbox chính (hiển thị trong hình), được sử dụng trong các hoạt động mật mã được coi là một cơ sở ..
Dựa trên S-BOX đề xuất trong AES (sbox AES) và tùy thuộc vào chính được sử dụng để mã hóa các ma trận thay thế bản rõ mới được compted (SBOXxor ) theo quy trình sau:
• Trước hết hãy chọn một byte từ khóa chủ (khóa đầu tiên) Key [i];
• Computting mới SBOXxor, nơi mà mỗi tế bào là bằng XOR với byte chọn, SBOXxor [x, y] = SBOXAES [ x, y] ⊕ Key [i];
• Một ma trận thay thế mới tính toán được sử dụng để mã hóa bản rõ.
Quá trình giải mã sẽ các phương pháp sau đây được sử dụng:
• được Chọn cùng một byte từ chìa khóa - Key [i];
Trong dòng 4, GetShiftCount (cipherKey ) được cipherKey như là đầu vào và số trở lại của sự thay đổi đó
phải được áp dụng cho các hàng và cột trước khi thay thế với nhau.
Trong dòng 5, GeneratePrimarySbox () tạo ra chính S-Box theo 4.1.
Trong dòng 6, bắt đầu vòng lặp 16 lần (foreach byte của khóa mật mã, chỉ có 16 byte đầu tiên của khoá mật mã được
sử dụng).
Trong dòng 8, GetProperIndex (cipherKey [i], ra rowIndex, ra columnIndex) nhận được byte của khóa mật mã
và trở về chỉ số của các hàng và cột cần được thay thế bằng mỗi khác.
Trong dòng 9, ShiftRow (rowIndex, shiftCount, sbox) có chỉ số hàng của S-Box và thay đổi mỗi phần tử
của dòng được đưa vào chu kỳ. Nó có nghĩa là nếu rowIndex = 0 và shiftCount = 1, yếu tố đầu tiên của S-Box,
đang được dịch, vui lòng đợi..