2
$\begingroup$

I was trying to understand AES (Rijndael) from a very mathematical perspective. I'm quite new to abstract algebra and Galois Fields. I understood that we are considering a byte (8 bits) as a polynomial in $GF(2^{8}) $ where the coefficients are either $0$ or $1$ i.e. they are elements of {0, 1} and all operations are done modulo the Rijndael polynomial 0x11b ($x^{8} + x^{4} + x^{3} + x + 1$). But Section 4.3 confused me a little when they are explaining that the coefficients themselves are considered as "bytes" i.e values from $0$ to $255$ . Can anyone please explain to me, why is this context switching possible, or why is it done?

Four-term polynomials can be defined - with coefficients that are finite field elements - as: $a(x) = a_{3} x^{3} + a_{2} x^{2} + a_{1} x + a_{0}$ (4.5) which will be denoted as a word in the form $ [a_{0} , a_{1} , a_{2} , a_{3} ]$. Note that the polynomials in this section behave somewhat differently than the polynomials used in the definition of finite field elements, even though both types of polynomials use the same indeterminate, x. The coefficients in this section are themselves finite field elements, i.e., bytes, instead of bits; also, the multiplication of four-term polynomials uses a different reduction polynomial, defined below. The distinction should always be clear from the context.

Every help will be greatly appreciated!!!

$\endgroup$
1
1
$\begingroup$

The irreducible polynomial you showed above will create a polynomial field. (0x11b=283=100011011).

-now last nearest degree of 2 is ${2^8=256}$ hence all the operation of a field within the range of ${0,1..,255}$,

  • It is a Byte operation because the range ${0,1,2,...,255}$ can be represented as a byte(8 bit) and the field operation are performed and reduced to modulo ${x^8+x^4+x^3+x+1}$
  • Here, The statement ${\{0,1\}^8}$ means it can be a binary number of 8 bits.
  • But in case of normal polynomial the coefficient can be from set N,Z,R,C. which is not the case in AES.
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.