Cryptology Academy · Lección

Expansión de claves y tamaños de clave de AES

Explore las claves de 128, 192 y 256 bits y el proceso de generación de claves.

Lección 3 de 413 pasos

Expansión de claves y tamaños de clave de AES es una lección gratuita de Cryptology Academy en CoddyKit. Esta es la lección 3 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Cryptology Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Cryptology Academy incluye 4 lecciones en total.

Introducción

AES expande una clave corta en varias claves de ronda mediante el programa de claves. Comprenderlo es esencial para entender cómo la clave se propaga por cada ronda.

¿Por qué expandir la clave?

AES-128 tiene 10 rondas más un AddRoundKey inicial. Esto requiere 11 claves de ronda × 16 bytes = 176 bytes en total. El programa de claves expande una clave maestra de 16 bytes en todo este material de claves.

Palabras del programa de claves

El programa de claves funciona con palabras de 4 bytes. AES-128 comienza con 4 palabras (W[0..3]) obtenidas de la clave original. Genera W[4..43], lo que da 44 palabras = 176 bytes = 11 claves de ronda de 128 bits.

SubWord

SubWord aplica la caja S de AES a cada uno de los 4 bytes de una palabra de forma independiente. Proporciona no linealidad en la expansión de claves y evita los ataques de claves relacionadas.

RotWord

RotWord realiza un desplazamiento cíclico a la izquierda sobre una palabra de 4 bytes: [a, b, c, d] → [b, c, d, a] Esto garantiza que la misma palabra de 32 bits no se repita durante la expansión de claves.

Constantes de ronda (Rcon)

Rcon[i] = [2^(i-1), 0, 0, 0] en GF(2^8). Se aplica mediante XOR a cada cuarta palabra durante la expansión de claves. Hace que cada clave de ronda sea diferente y evita los ataques de deslizamiento.

Fórmula de expansión de claves

Para i ≥ 4: if i % 4 == 0: W[i] = W[i-4] XOR SubWord(RotWord(W[i-1])) XOR Rcon[i/4] else: W[i] = W[i-4] XOR W[i-1]

Programas de claves de AES-192 y AES-256

AES-192: 6 palabras de entrada, genera 52 palabras (12+1 rondas). AES-256: 8 palabras de entrada, genera 60 palabras (14+1 rondas). AES-256 añade un SubWord adicional cada 8 palabras.

Seguridad de los tamaños de clave

AES-128 ofrece una seguridad de 128 bits (2^128 mediante fuerza bruta). AES-256 ofrece una seguridad de 256 bits. Frente a adversarios cuánticos, AES-256 conserva una seguridad de 128 bits (el algoritmo de Grover la reduce a la mitad).

Elección del tamaño de clave de AES

Para la mayoría de las aplicaciones actuales, AES-128 es suficiente. Para secretos a largo plazo, datos clasificados o escenarios poscuánticos, use AES-256. AES-192 se usa rara vez en la práctica.

Derivación de claves a partir de contraseñas

Nunca use una contraseña directamente como clave de AES. Use una KDF: key = PBKDF2(password, salt, 600000, 32, SHA256) o key = Argon2id(password, salt, mem=65536, t=3, p=4).

Comprobación rápida

¿Cuántas claves de ronda requiere AES-128, incluida la operación inicial AddRoundKey?

Repaso

¡Ha dominado la expansión de claves de AES! A continuación, integrará todo y cifrará archivos reales usando AES en Python con OpenSSL.
Gratis para empezar

Aprende Cryptology Academy con un tutor de IA — gratis

Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.

Cursos
67
Lecciones
261

Preguntas frecuentes

¿La lección «Expansión de claves y tamaños de clave de AES» es gratis?

Sí — el texto completo de «Expansión de claves y tamaños de clave de AES» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Cryptology Academy, actualiza a CoddyKit PRO. El curso de Cryptology Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Expansión de claves y tamaños de clave de AES»?

Explore las claves de 128, 192 y 256 bits y el proceso de generación de claves. Practicas Cryptology Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Cryptology Academy?

No se requiere experiencia previa. Cryptology Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 4.

¿Cuánto tiempo toma la lección «Expansión de claves y tamaños de clave de AES»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Cryptology Academy?

Sí. Cada lección de Cryptology Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Conceptos del cifrado simétrico
  2. Estructura de AES: rondas y matriz de estado
  3. Expansión de claves y tamaños de clave de AES
  4. Cifrado práctico de archivos con AES
← Volver a Cryptology Academy