[[0E, 0B, 0D, 09], [09, 0E, 0B, 0D], [0D, 09, 0E, 0B], [0B, 0D, 09, 0E]]
[[(s_(0,0)), (s_(0,1)), (s_(0,2)), (s_(0,3))], [(s_(1,0)), (s_(1,1)), (s_(1,2)), (s_(1,3))], [(s_(2,0)), (s_(2,1)), (s_(2,2)), (s_(2,3))], [(s_(3,0)), (s_(3,1)), (s_(3,2)), (s_(3,3))]] = [[(s_(0,0)^(')), (s_(0,1)^(')), (s_(0,2)^(')), (s_(0,3)^('))], [(s_(1,0)^(')), (s_(1,1)^(')), (s_(1,2)^(')), (s_(1,3)^('))], [(s_(2,0)^(')), (s_(2,1)^(')), (s_(2,2)^(')), (s_(2,3)^('))], [(s_(3,0)^(')), (s_(3,1)^(')), (s_(3,2)^(')), (s_(3,3)^('))]]
For the decryption inverse mix columns calculation shown above, given the input matrix:
S_(00)S_(01)S_(02)S_(03), 0x33 0x21 0x3E 0xFC
S_(10)S_(11)S_(12)S_(13), 0x45 0x8A 0x72 0x92
S_(20)S_(21)S_(22)S_(23) = 0x00 0xDE 0x0E 0x49
S_(30)S_(31)S_(32)S_(33), 0x22 0xBB 0xFE 0x0F
EXAMPLE: To calculate S_(00) the polynomial shortcut equation is determined as:
0E * 0x33 = (x^3 + x^2 + x^1) * (x^5 + x^4 + x^1 + x^0) =
(x^8 + x^7 + x^4 + x^3) + (x^7 + x^6 + x^3 + x^2) + (x^6 + x^5 + x^2 + x^1)
But this result has an x^8 or greater degree so we need to perform a mod by m(x) as well: (x^8 + x^4 + x^3 + x^1 + x^0)
However, the degree is only x^8, we can just XOR m(x) as a shortcut so the polynomial equation for 0x0E * 0x33^(**) m(x) is:
(x^8 + x^7 + x^4 + x^3) + (x^7 + x^6 + x^3 + x^2) + (x^6 + x^5 + x^2 + x^1) + (x^8 + x^4 + x^3 + x^1 + x^0)
Polynomial Equation Result = x^5 + x^3 + x^0
Determine the polynomial equation for S_(33). Did it require either of including XOR m(x) term or a long division modulo with m(x)?
0E 0B 0D 09
09 0E 0B 0D
0D 09 0E 0B
0B 0D 09 0E
S0,0 S0,1 S0,2 S0,3
S1,0 S1,1 S1,2 S1,3
S2,0 S2,1 S2,2 S2,3
S3,0 S3,1 S3,2 S3,3
For the decryption inverse mix columns calculation shown above, given the input matrix:
S00 S01 S02 S03
S10 S11 S12 S13
S20 S21 S22 S23
S30 S31 S32 S33
0x33 0x21 0x3E 0xFC
0x45 0x8A 0x72 0x92
0x00 0xDE 0x0E 0x49
0x22 0xBB 0xFE 0x0F
EXAMPLE: To calculate S00 the polynomial shortcut equation is determined as:
ZZ60 000 s+x0 ccx00
To calculate 0E * 0x33 = (x^3 + x + x) * (x + x^4 + x + x) = (x + x + x + x) * (x + x + x + x)
But this result has an x^3 or greater degree so we need to perform a mod by m(X) as well: (x^8 + x^4 + x^3 + x^1 + x^0)
However, the degree is only x^8, we can just XOR m(x) as a shortcut so the polynomial equation for 0x0E * 0x33 m(x) is:
(x + x + x + x + (x + x + x + x + (x + x + x + x + x + x + x + x)
Polynomial Equation Result = x + x + x
Determine the polynomial equation for S33. Did it require either of including XOR m(x) term or a long division modulo with m(x)?