Tema 6

6. Cifrados por bloques: DES, 3DES, AES y estructura interna de sustitución y permutación

Los cifrados por bloques son una de las formas más importantes de criptografía simétrica. Trabajan sobre grupos fijos de datos y transforman cada bloque mediante rondas diseñadas para introducir confusión y difusión. En este tema veremos cómo surgieron, cómo están construidos y por qué AES se convirtió en el estándar moderno.

Objetivo Entender cómo funcionan los cifrados por bloques
Enfoque Histórico, estructural y práctico
Resultado Comprender DES, 3DES y AES con criterio técnico

6.1 Introducción

Una vez entendido el modelo general de la criptografía simétrica, el siguiente paso es estudiar cómo se construyen los algoritmos concretos. Los cifrados por bloques son fundamentales porque forman la base de gran parte del cifrado moderno de archivos, discos, bases de datos y comunicaciones.

Su lógica general consiste en tomar bloques de tamaño fijo y someterlos a una secuencia de transformaciones controladas por una clave. Estas transformaciones no deben ser arbitrarias: tienen que mezclar los bits de forma que el resultado no revele patrones explotables y que pequeños cambios en la entrada se propaguen ampliamente en la salida.

6.2 Qué es un cifrado por bloques

Un cifrado por bloques es un algoritmo simétrico que procesa los datos en unidades de tamaño fijo, por ejemplo 64 o 128 bits. A cada bloque de texto plano se le aplica una transformación reversible dependiente de la clave, produciendo un bloque de texto cifrado del mismo tamaño.

Si el mensaje completo es más largo que un bloque, el algoritmo necesita una estrategia adicional para manejar múltiples bloques. Esa estrategia se estudia en el tema siguiente, cuando tratemos los modos de operación.

6.3 Bloque, clave y rondas

La mayoría de los cifrados por bloques modernos trabaja mediante rondas sucesivas. Cada ronda aplica una combinación de operaciones sencillas pero diseñadas para que, al repetirse varias veces, generen una transformación compleja y difícil de invertir sin la clave.

Los elementos típicos son:

  • Bloque: tamaño fijo de datos de entrada y salida.
  • Clave maestra: secreto compartido que gobierna el cifrado.
  • Subclaves: valores derivados de la clave maestra para cada ronda.
  • Rondas: repeticiones de transformaciones internas.

6.4 Por qué se usan rondas

En criptografía, una sola transformación suele ser insuficiente para generar seguridad fuerte. Las rondas permiten acumular efectos: lo que al principio era una diferencia pequeña en un bit termina afectando gran parte del bloque después de varias etapas.

Este diseño evita relaciones lineales simples entre texto plano, clave y texto cifrado. La seguridad no nace de una operación aislada, sino del encadenamiento de varias operaciones cuidadosamente elegidas.

6.5 Confusión y difusión en la práctica

Claude Shannon formuló dos ideas centrales para el diseño de cifrados: confusión y difusión. Los cifrados por bloques modernos intentan implementarlas de manera sistemática.

  • Confusión: dificulta la relación entre la clave y la salida.
  • Difusión: distribuye la influencia de cada bit de entrada sobre muchos bits de salida.

Las rondas, las cajas de sustitución, las permutaciones y las mezclas lineales buscan exactamente eso: destruir patrones y repartir el impacto de cada pequeño cambio.

6.6 Sustitución y permutación

Dos operaciones aparecen una y otra vez en los cifrados por bloques:

  • Sustitución: reemplaza ciertos valores por otros según una tabla o regla no lineal.
  • Permutación: reordena bits o grupos de bits para redistribuir la información dentro del bloque.

La sustitución aporta no linealidad, mientras que la permutación ayuda a expandir el efecto de esa no linealidad a lo largo del bloque. Juntas construyen una base muy potente para generar seguridad.

6.7 Cajas S y no linealidad

Las cajas S o S-boxes son componentes que transforman pequeños grupos de bits en otros grupos de bits de forma no lineal. Son esenciales porque impiden que el cifrado pueda describirse mediante relaciones algebraicas simples fácilmente explotables.

Sin no linealidad, muchos ataques analíticos se simplificarían enormemente. Por eso las S-boxes suelen ser una de las piezas más delicadas y estudiadas en el diseño de un cifrado.

6.8 Redes de sustitución-permutación

Un enfoque clásico de diseño es la red de sustitución-permutación, donde cada ronda alterna capas de sustitución no lineal y capas de mezcla o permutación. AES es un ejemplo representativo de este tipo de estructura.

La idea es que la salida de una capa influya en posiciones distintas de la siguiente, generando rápidamente una mezcla profunda de la información.

6.9 Redes de Feistel

Otro modelo clásico es la red de Feistel. En este esquema, el bloque se divide en dos mitades y en cada ronda una mitad se transforma usando una función y luego se combina con la otra, tras lo cual se intercambian roles.

DES es el ejemplo más famoso de esta familia. Una ventaja de la red de Feistel es que el mismo esquema estructural sirve tanto para cifrado como para descifrado, cambiando el orden de las subclaves.

6.10 DES: contexto histórico

DES, Data Encryption Standard, fue adoptado en 1977 como estándar de cifrado simétrico en Estados Unidos. Representó un hito porque consolidó la idea de un algoritmo público estandarizado para uso civil, no exclusivamente militar.

Durante años tuvo enorme influencia y fue ampliamente utilizado en sistemas financieros, gubernamentales y comerciales. Sin embargo, su diseño respondía a las capacidades de cómputo de su época, y eso terminó siendo su principal limitación.

6.11 Cómo funciona DES en términos generales

DES trabaja sobre bloques de 64 bits y usa una clave efectiva de 56 bits, aunque suele hablarse de 64 bits incluyendo bits de paridad. Su estructura interna es una red de Feistel de 16 rondas.

Cada ronda incluye expansión, combinación con subclave, paso por cajas S y permutaciones. El diseño buscaba confusión y difusión suficientes para resistir ataques conocidos en su época.

6.12 Fortalezas y debilidades de DES

DES fue técnicamente sólido durante bastante tiempo, pero su principal debilidad terminó siendo el tamaño de clave. Una clave de 56 bits dejó de ser suficiente frente al crecimiento del poder de cómputo. Lo que antes requería recursos prohibitivos pasó a ser viable mediante hardware especializado y ataques por fuerza bruta.

Esto no significa que DES fuera un mal diseño para su contexto histórico. Significa que la seguridad criptográfica siempre depende del entorno tecnológico en el que se la evalúa.

6.13 3DES como solución transitoria

Cuando DES empezó a quedar corto, una respuesta práctica fue aplicar DES varias veces con distintas claves, dando lugar a Triple DES o 3DES. La idea era reutilizar la infraestructura existente pero elevar la seguridad mediante múltiples pasadas del algoritmo.

El esquema más común usa una secuencia cifrar-descifrar-cifrar con dos o tres claves. Así se logra una mejora importante respecto de DES simple, aunque con mayor costo computacional.

6.14 Ventajas y límites de 3DES

3DES prolongó la vida útil de muchas implementaciones heredadas y ofreció una transición razonable mientras se desarrollaba un reemplazo mejor. Sin embargo, arrastraba limitaciones estructurales:

  • Era considerablemente más lento que opciones modernas.
  • Seguía trabajando con bloques de 64 bits, hoy considerados pequeños para muchos usos.
  • No era una solución elegante a largo plazo, sino una extensión de un estándar envejecido.

Por estas razones, 3DES fue quedando obsoleto frente a AES.

6.15 La necesidad de un nuevo estándar

El reemplazo de DES no podía limitarse a agrandar una clave o repetir el algoritmo varias veces. Hacía falta un diseño moderno, eficiente, flexible y adecuado tanto para software como para hardware. Además, debía ser ampliamente analizado y adoptado internacionalmente.

Así surgió el proceso que terminó seleccionando Rijndael como nuevo estándar bajo el nombre de AES.

6.16 AES: origen y adopción

AES, Advanced Encryption Standard, fue adoptado oficialmente en 2001. Se basa en el algoritmo Rijndael, diseñado por Joan Daemen y Vincent Rijmen. Su selección fue el resultado de un proceso público de evaluación, lo que reforzó la confianza en su transparencia y robustez.

AES reemplazó a DES y 3DES como referencia moderna para cifrado simétrico por bloques. Hoy es el estándar dominante en una enorme variedad de aplicaciones.

6.17 Características generales de AES

AES trabaja con bloques de 128 bits y admite claves de 128, 192 o 256 bits. Según el tamaño de la clave, utiliza distinto número de rondas. A diferencia de DES, no usa una red de Feistel, sino una red de sustitución-permutación.

Esto le permite combinar seguridad, claridad estructural y muy buen rendimiento en múltiples plataformas.

6.18 Estructura interna de AES

En cada ronda, AES aplica varias transformaciones principales:

  • SubBytes: sustitución no lineal mediante una S-box.
  • ShiftRows: desplazamiento de filas dentro del estado.
  • MixColumns: mezcla lineal de columnas para difundir información.
  • AddRoundKey: combinación con la subclave de la ronda.

El conjunto produce una mezcla muy fuerte entre bits y bytes, logrando difusión rápida y no linealidad robusta.

6.19 Por qué AES es eficiente

AES fue diseñado pensando tanto en seguridad como en implementación práctica. Funciona bien en software, puede acelerarse por hardware y en muchos procesadores modernos cuenta incluso con instrucciones específicas que reducen latencia y mejoran resistencia frente a ciertas clases de ataque.

Eso explica por qué se usa en TLS, VPN, cifrado de discos, almacenamiento cloud y muchísimos otros entornos.

6.20 Comparación entre DES, 3DES y AES

Algoritmo Tamaño de bloque Tamaño de clave Situación actual
DES 64 bits 56 bits efectivos Obsoleto e inseguro por fuerza bruta
3DES 64 bits Mayor que DES según variante En retirada por rendimiento y limitaciones estructurales
AES 128 bits 128, 192 o 256 bits Estándar moderno recomendado

6.21 Seguridad teórica y seguridad práctica

Elegir AES no garantiza automáticamente un sistema seguro. Un algoritmo fuerte puede volverse vulnerable si se usa con modos incorrectos, IV repetidos, claves débiles, implementación defectuosa o fuga de información lateral. La criptografía real no depende solo del algoritmo central, sino del sistema completo.

Por eso estudiar el bloque base es necesario, pero no suficiente. El contexto de uso importa tanto como el diseño matemático.

6.22 Criptoanálisis y robustez

Todos estos algoritmos fueron analizados intensamente. DES fue finalmente superado por el avance del hardware y no tanto por una rotura estructural completa de su diseño. 3DES se mantuvo útil durante un tiempo, pero perdió vigencia por eficiencia y tamaño de bloque. AES ha resistido durante años un escrutinio muy profundo y sigue considerándose seguro en uso correcto.

Esto muestra una lección importante: en criptografía, sobrevivir al análisis público durante mucho tiempo es parte central del valor de un algoritmo.

6.23 Usos reales de AES

AES está presente en gran cantidad de sistemas modernos:

  • Sesiones TLS y HTTPS.
  • Cifrado de discos completos.
  • Protección de archivos y backups.
  • VPN y túneles seguros.
  • Bases de datos y almacenamiento en la nube.
  • Dispositivos móviles y sistemas embebidos.

Su ubiquidad se debe a la combinación de seguridad, velocidad y estandarización.

6.24 Errores comunes al estudiar estos algoritmos

  • Creer que todos los cifrados por bloques son equivalentes si usan una clave larga.
  • Confundir tamaño de clave con seguridad total del sistema.
  • Pensar que DES "dejó de servir" porque estaba mal diseñado y no porque el contexto cambió.
  • Suponer que usar AES basta sin importar el modo de operación o la gestión de parámetros.
  • Ignorar que 3DES fue una transición, no la meta final.

6.25 Qué debes recordar de este tema

  • Los cifrados por bloques procesan datos en unidades fijas y aplican rondas controladas por subclaves.
  • La seguridad interna se apoya en confusión, difusión, sustitución y permutación.
  • DES fue un hito histórico, pero hoy es inseguro por su tamaño de clave.
  • 3DES extendió la vida de DES, pero ya no es la solución recomendada.
  • AES es el estándar moderno por su seguridad, eficiencia y adopción generalizada.
  • Elegir un buen algoritmo no alcanza: también importan el modo de operación y la implementación correcta.

6.26 Conclusión

Los cifrados por bloques representan una de las construcciones más importantes de la criptografía simétrica. DES, 3DES y AES muestran claramente cómo evoluciona un estándar: primero resuelve un problema, luego envejece frente al avance tecnológico y finalmente es reemplazado por un diseño más robusto.

En el próximo tema estudiaremos los modos de operación, que son indispensables para usar correctamente los cifrados por bloques sobre mensajes reales y entender por qué algunos modos, como ECB, son inseguros.