AES Algorithm
AES Algorithm
Key-block-rounds combinations
k2
k3
k6
k7
k10
k11
k14
k15
Addition / Subtraction
XOR operation on the bits
Multiplication
Irreducible polynomial
SubBytes Transformation
[b ] is the multiplicative inverse of [sr,c] br,c = sr,c mod m(x)
Irreducible polynomial
S - Box
SubBytes()Transformation
For example, if s 1,1 = {53}, then the substitution value would be determined by the intersection of the row with index 5 and the column with index 3 in the S-Box. This would result in s 1,1 {ed}.
InvSubBytes() Transformation
ShiftRows() Transformation
InvShiftRows() Transformation
MixColumns() Transformation
MixColumns() Transformation
InvMixColumns() Transformation
AddRoundKey() Transformation
Key Expansion
Key Expansion
plaintext
Substitute bytes Shift rows Mix columns Add Round key Round 1
Substitute bytes Substitute bytes Shift rows Mix columns Add round key
Round 9
W[4,7]
W[36,39]
W[40,43]
key
ciphertext
Inv. Shift rows Inv. Sub bytes Add round key Inv. Mix Columns Round 1
Inv. Shift rows Inv. Shift rows Inv. Sub bytes Add round key Inv. Mix columns
Round 9
W[36,39]
W[4,7]
W[0,3]
key
Cipher Example