La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

AES: Algoritmo de cifrado simétrico estándar del siglo XXI

Presentaciones similares


Presentación del tema: "AES: Algoritmo de cifrado simétrico estándar del siglo XXI"— Transcripción de la presentación:

1 AES: Algoritmo de cifrado simétrico estándar del siglo XXI
Advanced Encryption Standard Vincent Rijmen (Bélgica, ) Joan Daemen (Bélgica, )

2 ¿Cuánto vale la siguiente expresión?

3 + 1 . 1 + 1 2 1 2

4 + 1 2 3 . 1 2 3 + 1 2 3 4 . 1 2 3 4

5 + 1 2 3 4 5 + 1 2 3 4 5 ¡¡ Interesa trabajar con conjuntos donde todos los elementos no nulos tengan inverso !! Ese tipo de conjuntos se llaman cuerpos de Galois ( ), en inglés GF (Galois Field)

6 Zn con n primo es cuerpo. De manera que, por ejemplo, Z8 no es cuerpo ¿Existe un cuerpo con 8 elementos?. Galois demostró que sí. En realidad demostró algo mucho mejor: que el número de elementos de cualquier cuerpo finito era de la forma con p primo. ¿Pero cómo se construye este cuerpo?. Vamos a verlo.

7 Construcción del cuerpo GF( )=GF(8)
Consideremos el conjunto formado por todos los polinomios del tipo: donde los coeficientes son ceros o unos ¿Cuántos polinomios se pueden formar?

8 Construcción del cuerpo GF( )=GF(8)
Vamos a hacer la tabla de sumar. Los polinomios se suman como siempre sólo que ahora los coeficientes valen cero o uno ( suma de ) Ejemplo:

9 Construcción del cuerpo GF( )=GF(8)
La tabla de sumar anterior se puede escribir con números: + 1 2 3 4 5 6 7

10 Construcción del cuerpo GF( )=GF(8)
Vamos a hacer la tabla de multiplicar. Los polinomios se multiplican como siempre pero sólo con ceros y unos. ¡¡El resultado se sale fuera de donde estamos trabajando!! ¿Y ahora qué hacemos?

11 Construcción del cuerpo GF( )=GF(8)
Pues vamos a dividir el polinomio que nos salga entre el polinomio: Y así nos aseguramos que el resultado siempre sea un polinomio de grado dos (como mucho). Ahora nos quedamos con el resto:

12 Construcción del cuerpo GF( )=GF(8)

13 Construcción del cuerpo GF( )=GF(8)
1 2 3 4 5 6 7

14 Construcción del cuerpo GF( )=GF(8)
+ 1 2 3 4 5 6 7 1 2 3 4 5 6 7 Ejemplos:

15 Ahora ya se puede contestar a la pregunta del inicio
En la aritmética habitual: En la aritmética en : En la aritmética en GF(8): ¡¡ El resultado depende del conjunto donde estamos trabajando !!

16 Aritmética de AES El algoritmo AES trabaja con el cuerpo GF(256)=
Trabaja con bytes y no con bits como hace DES. Cada 8 bits (1 byte) de entrada se interpretarán como un polinomio de grado siete: Por ejemplo:

17 Aritmética de AES ¿Cómo se suma en AES?. Pues de la misma forma que razonamos en GF(8) Ahora la tabla de sumar será mucho más grande ya que GF(256) tiene 256 elementos: 0, 1, 2, …, 255 Como la tabla de sumar no nos cabe aquí, vamos a hacer un ejemplo:

18 Aritmética de AES La tabla de multiplicar también se hace igual que antes. Cuando el producto nos dé como resultado un polinomio de grado mayor que 7, lo dividiremos entre La tabla de multiplicar es muy grande, así que sólo hacemos un ejemplo: Como el resultado es un polinomio de grado mayor que 7, tenemos que dividir entre m(x) y quedarnos con el resto

19 Aritmética de AES

20 Aritmética de AES Hemos visto cómo se suman y cómo se multiplican dos números en AES: De esa forma se completan las tablas de sumar y multiplicar. Por último, sólo hay que decir que además es habitual trabajar en hexadecimal (base 16) en AES. En base 16 se usan los símbolos 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C D, E, F Los elementos de GF(256), que iban desde 0 hasta 255, irán en hexadecimal desde 00 hasta FF. Volviendo a nuestro ejemplo anterior: BASE 10 BASE 16

21 Ejemplo: ¿Podrías averiguar cuál es el resultado en GF(256) de las siguientes operaciones?


Descargar ppt "AES: Algoritmo de cifrado simétrico estándar del siglo XXI"

Presentaciones similares


Anuncios Google