Multiplicación en GF(28)
La multiplicación en es la operación básica de la operación MixColumn de AES. En un primer paso, se multiplican dos elementos (representados por sus polinomios) de un campo finito usando la regla de multiplicación polinomial estándar:
donde,
Se debe tener en cuenta que todos los coeficientes , y son elementos de , y que el coeficiente aritmético se realiza en . En general, el polinomio producto tendrá un grado mayor que y deberá ser reducido. Esto se hace de la siguiente manera: El producto de la multiplicación será dividido por un cierto polinomio, y se considera solamente el resto después de la división polinomial. Son necesarios polinomios irreducibles para la reducción del módulo.
Definición. Multiplicación de campo de extensión:
Sea , ∈ y sea
un polinomio irreducible. La multiplicación de los dos elementos , se realiza como:
Para AES, el polinomio irreducible que se utiliza es . Es parte de la especificación del cifrado AES.
Por ejemplo.
Queremos multiplicar los dos polinomios y en el campo . El polinomio irreducible de este campo se da como:
El producto polinomial se calcula como:
Ahora podemos reducir usando el método de división polinómica que se aprende en la escuela. Sin embargo, a veces es más fácil reducir cada uno de los términos principales y individualmente:
Ahora, sólo tenemos que insertar la expresión reducida para en el resultado intermedio :
Es importante no confundir la multiplicación en con la multiplicación normal.
Referencias
- Christof Paar, Jan Pelzl. (2010). Understanding Cryptography. Berlin Heidelberg: Springer.