I am working on AES and I am stuck on multiplication in $GF(2^{8})$ field.
In terms of polynomial it is easy; I just have to multiply polynomials modulo $(x^{8} + x^{4} + x^{3} + x + 1)$. But I do not understand multiplication with $x$, following an example given in NIST specification:
{57} • {13} = {fe}
solution:
{57} • {02} = xtime({57}) = {ae}
{57} • {04} = xtime({ae}) = {47}
{57} • {08} = xtime({47}) = {8e}
{57} • {10} = xtime({8e}) = {07},
thus
{57} • {13} = {57} • ({01} $XOR$ {02} $XOR$ {10})
= {57} $XOR$ {ae} $XOR$ {07}
= {fe}
I am unable to understand a single step in this, please also explain the x_time()
function too.
Also, how is $x^{i}$ calculated? I need this for the $rcon[i]$ matrix.
Edit: this question has been marked as a possible duplicate of Understanding multiplication in the AES specification. I have already read this but the explanation is not sufficient, I am unable to understand the concept hence I have posted this question, because I need a somewhat detailed answer.Thanks.
I am unable to understand a single step in this, please also explain the x_time() function too.
– do you mean you have general problems with the basic math used there and expect answers to go though it step-by-step, or are you just having problems understanding whatx_time()
means/does? $\endgroup${57} • {13} = {57} • {13} = {57} • ({01} XOR XOR {02} XOR XOR {10})
how this is inferred from the steps above it. $\endgroup$