Curso de criptografía de clave privada
Trece lecciones cortas para entender cómo se cifra de verdad un mensaje cuando los dos extremos comparten una clave. Del cifrado perfecto pero impracticable de la libreta de un solo uso a DES, que cayó por su clave corta, y a AES, que cifra hoy casi todo lo que viaja por internet. En cada lección, la idea, un ejemplo resuelto entero con los números de los estándares oficiales y ejercicios con solución.
Qué necesitas saber. Si sabes qué es un número en binario y sumar módulo 2 (sin llevadas), puedes seguirlo. Lo demás (hexadecimal, XOR, permutaciones, polinomios módulo 2 y cuerpos finitos) se explica sobre la marcha.
El hilo del curso. La libreta de un solo uso es perfecta, pero exige una clave tan larga como el mensaje. Los cifrados de bloque son el compromiso: una clave corta que baraja bloques de bits. Seguimos de principio a fin dos ejemplos reales: el cifrado DES clásico de J. Orlin Grabbe y el ejemplo oficial del estándar de AES (FIPS 197), ronda a ronda.
- 1¿Qué es la criptografía de clave privada?Alicia, Bernardo y Eva: qué significa cifrar con una clave compartida, por qué el algoritmo puede ser público y cuánto cuesta buscar una clave por fuerza bruta.
- 2XOR y la libreta de un solo usoBits, bytes y XOR; la libreta de un solo uso como cifrado perfecto (Shannon), por qué reutilizar la clave la destruye y por qué necesitamos claves cortas.
- 3Cifrados de bloque: barajar bits con una clave cortaQué es un cifrado de bloque, por qué no puede ser una permutación cualquiera, qué son la confusión, la difusión y las rondas, y una ronda de juguete hecha a mano.
- 4Redes de Feistel: cifrar con una función que no se invierteCómo funciona una red de Feistel, por qué se puede descifrar aunque la función interna no sea invertible y por qué descifrar es cifrar con las subclaves al revés.
- 5DES visto desde arriba: 16 rondas de FeistelEl esquema completo de DES: permutación inicial, 16 rondas de Feistel, intercambio y permutación final, con un cifrado real calculado ronda a ronda.
- 6La función f de DES y sus cajas SDentro de cada ronda de DES: expansión, XOR con la subclave, ocho cajas S, permutación. Calculamos la ronda 1 entera y vemos por qué las cajas S no son lineales.
- 7Las subclaves de DES: de 56 bits a 16 claves de rondaCómo DES fabrica las 16 subclaves de 48 bits a partir de la clave: bits de paridad, PC-1, rotaciones, PC-2. Además, claves débiles y propiedad de complementación.
- 8La caída de DES y el Triple DES: cuando 56 bits no bastanCómo se rompió DES por fuerza bruta en 1998, por qué cifrar dos veces no duplica la seguridad (encuentro a medio camino) y qué es el Triple DES.
- 9El cuerpo de 256 elementos: la aritmética de los bytes en AESCómo sumar, multiplicar y dividir bytes sin salirse de 8 bits: el cuerpo finito de 256 elementos que usa AES, con xtime, el inverso y un ejemplo resuelto.
- 10AES visto desde arriba: bloques, rondas y estadoEl concurso del NIST que eligió Rijndael, los parámetros de AES, el estado 4×4 por columnas, las cuatro operaciones de una ronda y el primer AddRoundKey real.
- 11SubBytes, ShiftRows y MixColumns: la ronda de AESCalcula a mano las tres operaciones de la ronda de AES y descubre por qué MixColumns esconde un código MDS, como los de Reed-Solomon, con branch number 5.
- 12La expansión de clave y el descifrado de AESGenera las 11 claves de ronda de AES-128 a partir de 16 bytes, descifra deshaciendo cada operación en orden inverso y repasa los ataques conocidos.
- 13Modos de operación: de un bloque de 16 bytes a un mensaje enteroAprende a cifrar mensajes de cualquier longitud con AES: relleno, ECB, CBC, CTR y GCM, con un ejemplo real, y cierra el curso con AES hoy y el ordenador cuántico.