Criptografía Aplicada
-
Upload
universidad-tecnologica-de-panama -
Category
Technology
-
view
202 -
download
3
Transcript of Criptografía Aplicada
Universidad Latina de PanamáMateria: Criptografía Aplicada
Algoritmo AES
Elaborado Por:David Ortega
Emilio Batista
Universidad Latina de PanamáMateria: Criptografía Aplicada
Algoritmo AES
Elaborado Por:David Ortega
Emilio Batista Him
¿Qué es AES?¿Qué es AES?¿Qué es AES?¿Qué es AES?
Es un algoritmo de cifrado simétricoFue desarrollado por: Joan Daemen
origen belga. Se desarrollo bajo el nombre
Doll" en inglés). Se transformó en un estándarDesde 2006, el AES es uno
usados en criptografía simétrica
simétrico.Daemen y Vincent Rijmen, ambos de
nombre de: Rijndael (pronunciado "Rain
estándar efectivo el 26 de mayo de 2002.uno de los algoritmos más populares
simétrica.
¿Qué tan seguro es ¿Qué tan seguro es AES?AES?¿Qué tan seguro es ¿Qué tan seguro es
Tiene un solo ataque exitoso2011.
No es vulnerable al criptoanálisislineal.
Es necesaria una granencriptados y gran procesamientoanálisis.
http://muyseguridad.net/2011/08/19/investigadores-el-cifrado-aes/
exitoso registrado en el
criptoanálisis diferencial y
gran cantidad de textosprocesamiento para su
-consiguen-romper-
Preguntas: ¿Como fue el Ataque?Preguntas: ¿Como fue el Ataque? ¿Quién realizo el ataque ?
R/: Un grupo de investigadores de Microsoft y de la Dutch Katholieke Universiteit Leuven.
¿Qué sistemas de AES atacaron 128/256?R/: Atacaron el sistema de 128 bits (AES
¿Cómo lo hicieron o que método utilizaron?R/: La información detallada del ataque no es visible.
¿El ataque fue real? un cuento o /especulación?R/: Los creadores del metodo
Rijmen, han reconocido la validez del ataque
Preguntas: ¿Como fue el Ataque?Preguntas: ¿Como fue el Ataque?
/: Un grupo de investigadores de Microsoft y de la Dutch Leuven.
¿Qué sistemas de AES atacaron 128/256?R/: Atacaron el sistema de 128 bits (AES-128).
¿Cómo lo hicieron o que método utilizaron?R/: La información detallada del ataque no es visible.
¿El ataque fue real? un cuento o /especulación?metodo AES, Joan Daemen y Vincent
Rijmen, han reconocido la validez del ataque.
¿¿Qué necesitamos para poder Qué necesitamos para poder romper AES ? romper AES ?
Habilidad, la curiosidad, la creatividad & todo lo que tu mente creativa, pueda pensar y realizar
Qué necesitamos para poder Qué necesitamos para poder
Habilidad, la curiosidad, la creatividad & todo lo que tu mente creativa, pueda pensar y realizar
Según los investigadores:
Un billón de ordenadores. Que cada uno pueda probar
segundo.Y unos 2000 millones de años para
Nota a considerar:hay que tener en cuenta que las máquinasprobar 10 millones de claves por segundo
mil millones de claves por
para dar con un AES-128.
máquinas actuales sólo puedensegundo.
¡Otros Avances!¡Otros Avances! Equipo de criptólogos de la Universidad
avances teóricos en los ataques a los estándarespublicación, Alex Biryukov y Dmitry KhovratovichAES-256 y una clave AES-192 bajo ciertas
Este ataque a AES es el primer criptoanálisis que completa los 14 pasos del proceso. Las investigaciones anteriores se habían restringido a un AES reducido de 10 ciclos. Los nuevos ataques se han basado en el avance en el campo de la rotura de funciones
Según manifiesta Christian Rechbergeratacante podría conseguir el control parcialbajo raras circunstancias, por ejemplo, en
• De momento, estos ataques no tienen una importancia práctica para la seguridad del cifrado de datos AES.
Universidad de Luxemburgo ha realizado importantesestándares de cifrado AES-192 y AES-256. En suKhovratovich describen cómo romper una clave
ciertas circunstancias & condiciones.Este ataque a AES es el primer criptoanálisis que completa los 14 pasos del proceso. Las investigaciones anteriores se habían restringido a un AES reducido de 10 ciclos. Los nuevos ataques se han basado en el avance en el campo de la rotura de funciones hash.
Rechberger, criptólogo de la Universidad de Graz. Unparcial del proceso de generación de la clave sóloen hardware de encriptación de baja calidad.
De momento, estos ataques no tienen una importancia práctica para la seguridad del cifrado de datos AES.
¿Cómo cifra AES?¿Cómo cifra AES?¿Cómo cifra AES?¿Cómo cifra AES?
Su cifrado se basa en matriz de estado. Tiene tamaños de: 128, 192 y 256 bits de largo. Se realiza con el operador “ Su operación se conoce como:
Su cifrado se basa en matriz de estado.Tiene tamaños de: 128, 192 y 256 bits de largo.Se realiza con el operador “exclusive or” (XOR).Su operación se conoce como: "AddRoundKey“.
¿Como funciona el ¿Como funciona el cifrado AES?cifrado AES?¿Como funciona el ¿Como funciona el cifrado AES?cifrado AES?
Cifrado BCifrado Báásicosico11°°Primera ideaPrimera idea
en claro:
cifrado:
Es una buena idea ocultarmensaje real y tu mensajede esta confusión es el viejoCésar”:
Primera ideaPrimera idea: : confusiconfusióónn
en claro: A T T A C K A T D A W N
↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
cifrado: D W W D F N D W G D Z Q
A + 3 letras = D
ocultar la relación entre tu“cifrado”. Un ejemplo
viejo y fiel “Cifrado del
22°° segunda gran segunda gran
Es también una buena ideaesparcir el mensaje. Unejemplo de esta “difusión”sería una simpletransposición de columnas.
segunda gran segunda gran idea: idea: difusióndifusión
ideaUn
“difusión”simple
.
33°°Tercera gran Tercera gran secretasecreta
Después de miles dees una mala idea asumirconocer cómo funcionasiempre habrá alguien
Tercera gran Tercera gran idea: idea: sólo la clave es sólo la clave es secretasecreta
de años, hemos aprendido queasumir que nadie terminará porfunciona tu método. Al Final
alguien que lo termine sabiendo.
Cifrado Cifrado AESAES AES es un algoritmo de
dividen en segmento dese puede ver como un bloquellama estado.
AE 03 1F 2A 1E 3F
Bloque de 128 bits
AE 1E
03 3F
1F 1
2A 7A
Matriz de Estado
de cifrado por bloques, los datos se16 bytes (128 bits), y cada segmentobloque o matriz de 4x4 a la que se
01 7A 21 04 CF 7A 1C 33 11 27
Bloque de 128 bits
1E 21 1C
3F 04 33
1 CF 11
7A 7A 27
En la ronda inicial calculocada byte con el correspondienteprimera ronda.
Estado Clave inicial
32 88 31 E0 2B 28 AB 09
43 5A 31 37
XOR
7E AE F7 CF
=F6 30 98 7 15 D2 15 4F
A8 8D A2 34 16 A6 88 3C
AddRoundKey
calculo una OR-Exclusiva (XOR) decorrespondiente de la clave para la
19 A0 9A E9
3D F4 C6 F8
E3 E2 8D 48
BE 2B 2A 08
De ahí, necesito muchasrondas posteriores. Derivoclave inicial usando unaSubBytes.
2B
7E
15
16
muchas claves para usarlas enDerivo todas ellas a partir de la
una técnica sencilla llamada
Clave de 128 bits
28 AB 09
AE F7 CF
D2 15 4F
A6 88 3C
Para calcular la primera columnaaplica una operación llamarealizar una rotación del primeren la columna.
09
CF
4F
3C
columna de la siguiente clave, sellama Rotword, que consiste en
primer byte hacia el último lugar
CF
→
4F
3C
09
Para obtener la transformaciónprimeros 4 bits como el índicecomo índice de la columna de
transformación S-Box de un byte se toman losíndice de la fila de la tabla y los segundos 4
de la tabla:
CF 8A
4F
→
84
3C EB
09 01
Resultado después de la
transformación S-Box
Entonces, se hace XOR dede Ronda” (RCON) que es
RCON
01 02 04 08 10
00 00 00 00 00
00 00 00 00 00
00 00 00 00 00
El resultado de esta operación será la primera
2B 8A 01
7EXOR
84XOR
00=
15 EB 00
16 1 00
=a1
de la columna con una “Constantees diferente para cada ronda.
RCON
10 20 40 80 1B 35
00 00 00 00 00 00
00 00 00 00 00 00
00 00 00 00 00 00
primera columna de la siguiente clave:
A0
FA
FE
17
Las otras columnas son másXOR de la columna anteriorclave de la ronda previa:
28
AEXOR
D2
A6
Clave de la primera ronda
A0 88
FA 54
FE 2C
17 B1
más simples. Solamente se hace unanterior con la misma columna de la
A0 88
FA=
54
FE 2C
17 B1
Clave de la primera ronda
88 23 2A
54 A3 6C
2C 39 76
B1 39 05
Luego, se empieza con lassimplemente una serie denúmero de repeticiones depende
las rondas intermedias. Una ronda espasos que se repite varias veces. El
depende del tamaño de la clave
Para ocultar la relación de cadaque lo traducirá a un byte diferente
19 A0 9A E9
3D F4 C6 F8
E3 E2 8D 48
BE 2B 2A 08
Luego desplazo las filas hacia la izquierda usando “
27
11 98
AE F1 E0
D4
BF
5D
30
cada byte, se usa la transformación S-BOX,diferente.
D4 E0 B8 1E
SBOX 27 BF B4 41
11 98 5D 52
AE F1 E0 30
Luego desplazo las filas hacia la izquierda usando “Shift Rows”.D4 E0 B8 1E
27 BF B4 41
98 5D 52
E0 30
↓
D4 E0 B8 1E
BF B4 41 27
5D 52 11 98
30 AE F1 E0
A cada columna del estadoesto es multiplicarlo por unaGF.A este proceso se le conoce
02 03 01 01 D4
01 02 03 01X
BF
01 01 02 03 5D
03 01 01 02 30
se le aplica una transformación lineal,una matriz predeterminada en el campo
conoce como MixColumns:
04
=66
81
E5
Al final de cada ronda, se aplicacon la primera clave de la
En la ronda final, se saltano incrementará la seguridad,
Determinar el número decompromisos.
aplica un XOR, a la clave resultante,ronda.el proceso de MixColumns, ya que
seguridad, solamente ralentiza el proceso.de rondas, siempre implica varios
“La seguridad siempre implica un coste en rendimiento.”
-Vicent
“La seguridad siempre implica un coste en
Vicent Rijmen-