01Perspectiva Histórica y Objetivos de la Criptografía
La criptografía (del griego kryptós, «oculto», y graphein, «escribir») es la disciplina que estudia cómo proteger la información para que solo la entiendan sus destinatarios legítimos. Su contrapartida es el criptoanálisis, el arte de romper esa protección; juntas forman la criptología.
Una historia en cinco etapas
Cada letra se sustituye por la que está tres posiciones más adelante en el alfabeto:
Solo hay 25 desplazamientos posibles, así que basta con probarlos todos (fuerza bruta). Los cifrados modernos tienen espacios de claves de 2128 o más, inalcanzables por fuerza bruta.
Objetivos de la criptografía
Confidencialidad
Que solo las personas autorizadas puedan leer la información. Se consigue cifrando.
Integridad
Detectar cualquier modificación no autorizada, mediante funciones hash, MAC y firmas.
Autenticación
Comprobar la identidad del emisor o del receptor con claves, certificados o desafíos.
No repudio
Impedir que alguien niegue haber enviado o firmado un mensaje, gracias a la firma digital.
El principio de Kerckhoffs
🔑 «La seguridad debe residir en la clave, no en el algoritmo»
- Formulado por Auguste Kerckhoffs en 1883: un sistema debe seguir siendo seguro aunque el adversario conozca todos sus detalles salvo la clave
- Por eso los algoritmos modernos (AES, RSA, SHA-2) son públicos y han sido analizados durante años por la comunidad
- Desconfía de cualquier producto que base su seguridad en un «algoritmo secreto propio»: es seguridad por oscuridad
02Teoría de la Información
La teoría de la información es la rama de las matemáticas que cuantifica cuánta información contiene un mensaje y cuánta se puede transmitir por un canal. La fundó Claude Shannon con «A Mathematical Theory of Communication» (1948), y un año después la aplicó directamente al cifrado en «Communication Theory of Secrecy Systems» (1949), que se considera el nacimiento de la criptografía científica.
Conceptos clave
Cantidad de información
Se mide en bits. Cuanto más improbable es un mensaje, más información aporta: saber que «mañana sale el sol» no aporta casi nada.
Entropía
Mide la incertidumbre media de una fuente: H = −Σ p·log₂(p). En criptografía indica lo impredecible que es una clave o una contraseña.
Capacidad del canal
Velocidad máxima a la que se puede transmitir sin errores por un canal con ruido (teorema de Shannon-Hartley).
Redundancia
Parte predecible de un mensaje. El idioma natural es muy redundante, y eso es lo que explota el análisis de frecuencias.
Aportaciones de Shannon a la criptografía
🔐 Secreto perfecto
- Un cifrado tiene secreto perfecto si el texto cifrado no revela nada sobre el texto en claro
- Shannon demostró que exige una clave tan larga como el mensaje, aleatoria y de un solo uso: el cifrado de Vernam o one-time pad
- Es irrompible pero poco práctico, porque hay que distribuir tanta clave como datos
🌀 Confusión y difusión
- Confusión: la relación entre clave y texto cifrado debe ser lo más compleja posible (sustituciones)
- Difusión: cada bit del texto en claro debe influir en muchos bits del cifrado (permutaciones)
- AES y todos los cifrados de bloque modernos se construyen alternando rondas de confusión y difusión
Entropía de contraseñas: un cálculo práctico
| Contraseña | Alfabeto | Entropía aproximada | Valoración |
|---|---|---|---|
| 8 caracteres en minúscula | 26 símbolos | 37,6 bits | Muy débil |
| 8 caracteres alfanuméricos | 62 símbolos | 47,6 bits | Débil |
| 12 caracteres imprimibles | 94 símbolos | 78,7 bits | Buena |
| 6 palabras al azar (Diceware) | 7.776 palabras | 77,5 bits | Buena y fácil de recordar |
| 16 caracteres imprimibles | 94 símbolos | 104,9 bits | Muy fuerte |
La fórmula es longitud × log₂(tamaño del alfabeto), y solo vale si cada símbolo se elige al azar. Una contraseña como Verano2027! tiene mucha menos entropía real de la que sugiere el cálculo, porque sigue un patrón que los diccionarios conocen.
03Propiedades de Seguridad que Controla la Criptografía
Más allá de ocultar datos, la criptografía permite garantizar seis propiedades distintas. Cada una se consigue con una herramienta diferente, y conviene no confundirlas.
Confidencialidad
Solo quien tiene la clave puede leer los datos. Herramienta: cifrado simétrico o asimétrico.
Integridad
Cualquier alteración se detecta. Herramienta: funciones hash, MAC/HMAC y firmas digitales.
Autenticidad
Se sabe de quién procede la información. Herramienta: firmas digitales, certificados y MAC.
No repudio
El autor no puede negar la autoría. Herramienta: firma digital con clave privada (un MAC no basta, porque la clave es compartida).
Imputabilidad
Cada acción queda asociada a quien la hizo. Herramienta: credenciales personales, firmas y registros de auditoría protegidos.
Sellado de tiempo
Se prueba que un dato existía en un momento concreto. Herramienta: sellos de una Autoridad de Sellado de Tiempo (TSA, RFC 3161).
¿Qué herramienta aporta cada propiedad?
| Mecanismo | Confidencialidad | Integridad | Autenticidad | No repudio |
|---|---|---|---|---|
| Cifrado simétrico (AES-CBC) | ✅ | ❌ | ❌ | ❌ |
| Hash (SHA-256) | ❌ | ✅ * | ❌ | ❌ |
| HMAC | ❌ | ✅ | ✅ | ❌ |
| Cifrado autenticado (AES-GCM) | ✅ | ✅ | ✅ | ❌ |
| Firma digital (RSA, ECDSA, Ed25519) | ❌ | ✅ | ✅ | ✅ |
* Un hash solo protege la integridad si el valor de referencia llega por un canal de confianza; si el atacante puede cambiar el fichero, también puede cambiar el hash publicado a su lado.
04Criptografía de Clave Privada y de Clave Pública
🔑 Clave privada (simétrica)
- Una única clave secreta compartida para cifrar y descifrar
- Muy rápida: cifra gigabytes por segundo con aceleración por hardware (AES-NI)
- Claves cortas: 128 o 256 bits
- Problema principal: cómo hacer llegar la clave al otro extremo de forma segura
- Con n usuarios hacen falta n·(n−1)/2 claves distintas
- Ejemplos: AES, ChaCha20, 3DES (obsoleto)
🗝️ Clave pública (asimétrica)
- Un par de claves matemáticamente relacionadas: pública y privada
- Lo que cifra la pública solo lo descifra la privada; lo que firma la privada se verifica con la pública
- Resuelve la distribución de claves: la pública se puede publicar
- Entre 100 y 1.000 veces más lenta que la simétrica
- Claves largas: RSA de 2.048 a 4.096 bits; curvas elípticas de 256 bits
- Ejemplos: RSA, ECDSA, Ed25519, Diffie-Hellman
El cifrado híbrido: lo mejor de los dos mundos
En la práctica nunca se cifran grandes volúmenes con criptografía asimétrica. Se combinan las dos:
Generar clave de sesión AES aleatoria
Cifrar los datos con AES
Cifrar la clave AES con la clave pública del destinatario
Enviar datos cifrados + clave cifrada
Así funcionan PGP/GPG, S/MIME y, con un intercambio Diffie-Hellman en lugar de cifrar la clave, TLS y SSH.
Comparativa
| Aspecto | Simétrica | Asimétrica |
|---|---|---|
| Número de claves | Una compartida | Un par por usuario |
| Velocidad | Muy alta | Baja |
| Distribución de claves | Difícil: necesita un canal seguro | Sencilla: la pública se publica |
| Firma digital | No (solo MAC) | Sí |
| Uso típico | Cifrar datos en reposo y en tránsito | Intercambiar claves, firmar, autenticar |
| Seguridad equivalente a 128 bits | AES-128 | RSA-3072 o curva elíptica de 256 bits |
05Características y Atributos de los Certificados Digitales
La criptografía de clave pública tiene un punto débil: ¿cómo sé que esta clave pública es realmente de mi banco y no de un atacante? El certificado digital resuelve ese problema: es un documento electrónico, firmado por una Autoridad de Certificación (CA) de confianza, que vincula una identidad con una clave pública. Es el equivalente digital del DNI.
Qué garantiza un certificado
Identidad
Asocia una clave pública a una persona, organización, servidor o dispositivo concreto.
Integridad del certificado
La firma de la CA impide modificar cualquier dato sin que se note.
Vigencia
Solo es válido entre dos fechas y mientras la CA no lo revoque.
Uso permitido
Indica para qué sirve: firmar, cifrar, autenticar un servidor web, firmar código…
Atributos principales de un certificado X.509
- Sujeto (Subject) – Identidad del titular: nombre común (CN), organización (O), país (C)…
- Clave pública del sujeto – Y el algoritmo al que pertenece (RSA, ECDSA, Ed25519)
- Emisor (Issuer) – La CA que lo ha firmado
- Número de serie – Identificador único dentro de esa CA; es lo que aparece en las listas de revocación
- Periodo de validez – Fechas «no antes de» y «no después de»
- Extensiones – Usos de la clave, nombres alternativos (SAN), si es una CA, dónde consultar la revocación…
- Firma de la CA – Calculada sobre todo lo anterior
Tipos de certificado según su titular
En España los emiten, entre otros, la FNMT-RCM (certificado de persona física que usamos con Hacienda), la Dirección General de la Policía (DNIe) y prestadores privados cualificados.
06Funcionamiento de los Protocolos de Intercambio de Claves
El problema clásico: dos partes que nunca se han visto quieren acordar una clave secreta hablando por un canal que un atacante escucha. Hay dos grandes soluciones: transportar una clave cifrándola con la clave pública del otro (RSA) o acordarla entre los dos sin que viaje nunca (Diffie-Hellman).
Diffie-Hellman paso a paso (con números pequeños)
- Parámetros públicos. Alice y Bob acuerdan en abierto un primo p = 23 y un generador g = 5.
- Secretos. Alice elige a = 6 y Bob elige b = 15. Nunca los envían.
- Valores públicos. Alice envía A = 5⁶ mod 23 = 8. Bob envía B = 5¹⁵ mod 23 = 19.
- Clave compartida. Alice calcula 19⁶ mod 23 = 2. Bob calcula 8¹⁵ mod 23 = 2. Los dos tienen el mismo secreto: 2.
- ¿Y el espía? Ve 23, 5, 8 y 19, pero para obtener 2 necesitaría a o b, es decir, resolver el logaritmo discreto. Con primos de 2.048 bits es inviable.
📦 Transporte de clave con RSA
- El cliente genera la clave de sesión y la cifra con la clave pública RSA del servidor
- Sencillo, pero si algún día se roba la clave privada del servidor se pueden descifrar todas las sesiones grabadas
- Por eso TLS 1.3 lo eliminó
🤝 Acuerdo de clave con (EC)DHE
- Cada sesión usa valores Diffie-Hellman nuevos y efímeros (la «E» final)
- Ofrece secreto hacia delante (Perfect Forward Secrecy): robar la clave del servidor no permite descifrar sesiones pasadas
- Es el método obligatorio en TLS 1.3, SSH e IKEv2
El ataque del intermediario (man-in-the-middle)
⚠️ Diffie-Hellman sin autenticar no basta
- Un atacante en medio puede hacer un intercambio DH con Alice y otro con Bob, y descifrar y volver a cifrar todo el tráfico
- Ni Alice ni Bob notan nada: cada uno cree que habla con el otro
- Solución: autenticar los valores intercambiados con firmas digitales y certificados (TLS), huellas de clave conocidas (SSH) o secretos precompartidos (IPsec con PSK)
07Algoritmos Criptográficos Más Utilizados
| Categoría | Algoritmo | Estado | Notas |
|---|---|---|---|
| Simétrico de bloque | AES-128 / AES-256 | ✅ Recomendado | Estándar desde 2001 (Rijndael). Bloques de 128 bits. |
| Simétrico de flujo | ChaCha20-Poly1305 | ✅ Recomendado | Muy rápido en móviles sin aceleración AES. Usado en TLS, WireGuard y SSH. |
| Simétrico | 3DES | ⛔ Retirado | Bloques de 64 bits, vulnerable a Sweet32. El NIST lo retiró a finales de 2023. |
| Simétrico | DES, RC4 | ❌ Roto | DES (clave de 56 bits) se rompe por fuerza bruta; RC4 tiene sesgos explotables. |
| Asimétrico | RSA ≥ 3.072 bits | ✅ Válido | RSA-2048 sigue en uso, pero 3.072 es lo recomendado para nuevos despliegues. |
| Asimétrico | ECDSA P-256, Ed25519, X25519 | ✅ Recomendado | Curvas elípticas: misma seguridad con claves y firmas mucho más pequeñas. |
| Hash | SHA-256, SHA-384, SHA-512, SHA-3 | ✅ Recomendado | Familias SHA-2 y SHA-3. |
| Hash | MD5, SHA-1 | ❌ Roto | Se pueden fabricar colisiones (SHA-1: SHAttered, 2017). No usar para firmas. |
| Contraseñas | Argon2id, bcrypt, scrypt | ✅ Recomendado | Lentos a propósito para frenar el cracking. |
| Post-cuántico | ML-KEM, ML-DSA, SLH-DSA | 🆕 Estándar 2024 | FIPS 203, 204 y 205. Ya se usan en modo híbrido en navegadores y en OpenSSH. |
Criterios para elegir un algoritmo
- Usar estándares públicos y revisados – Nunca algoritmos propios ni «secretos»
- Seguir las guías oficiales – CCN-STIC 807 en el ámbito del ENS, recomendaciones del NIST o de ENISA
- Preferir cifrado autenticado – AES-GCM o ChaCha20-Poly1305 dan confidencialidad e integridad a la vez
- Pensar en la vida útil del dato – Lo que deba seguir siendo secreto dentro de 15 años ya debería planificar su paso a algoritmos post-cuánticos
- Agilidad criptográfica – Diseñar los sistemas para poder cambiar de algoritmo sin rehacerlos
08Elementos y Formatos de los Certificados Digitales
El formato de certificado universal es X.509 versión 3 (ITU-T X.509, perfilado para Internet en el RFC 5280).
Estructura de un certificado X.509 v3
- Versión (v3)
- Número de serie
- Algoritmo de firma
- Emisor (Issuer)
- Validez (desde / hasta)
- Sujeto (Subject)
- Clave pública del sujeto
- Basic Constraints (¿es una CA?)
- Key Usage (firma, cifrado de claves…)
- Extended Key Usage (servidor, cliente, código)
- Subject Alternative Name (dominios, correos)
- CRL Distribution Points
- Authority Information Access (OCSP)
- Algoritmo de firma de la CA
- Valor de la firma sobre todos los campos anteriores
Formatos de fichero
| Formato | Extensiones | Codificación | ¿Incluye clave privada? | Uso típico |
|---|---|---|---|---|
| PEM | .pem, .crt, .cer, .key | Texto Base64 entre «-----BEGIN…-----» | Puede, en fichero aparte | Servidores Linux (Apache, Nginx) |
| DER | .der, .cer | Binario | No | Java, Windows, dispositivos |
| PKCS#7 | .p7b, .p7c | Base64 o binario | No (solo la cadena de certificados) | Distribuir cadenas de CA en Windows |
| PKCS#12 | .p12, .pfx | Binario protegido con contraseña | Sí | Exportar e importar tu certificado personal (FNMT) |
Inspeccionar y convertir con OpenSSL
openssl x509 -in servidor.crt -text -noout
# Ver el certificado que presenta una web
openssl s_client -connect www.ejemplo.com:443 -servername www.ejemplo.com
# Convertir de DER a PEM
openssl x509 -inform der -in cert.der -out cert.pem
# Extraer el certificado de un .p12
openssl pkcs12 -in mi_certificado.p12 -clcerts -nokeys -out cert.pem
Buenas prácticas
- Un fichero .p12 o .pfx contiene tu clave privada: trátalo como una contraseña y nunca lo envíes por correo
- Protege los ficheros .key con permisos 600 y, si es posible, guarda la clave en un HSM o token
- Vigila las fechas de caducidad y automatiza la renovación
09Funciones Resumen (Hash) y Criterios de Uso
Una función hash criptográfica transforma datos de cualquier tamaño en un resumen de longitud fija, que actúa como su huella digital.
Propiedades
Salida de longitud fija
Un byte o un disco entero producen un resumen del mismo tamaño (256 bits en SHA-256).
Determinista
La misma entrada produce siempre el mismo resumen.
Unidireccional
A partir del resumen no se puede obtener la entrada (resistencia a preimagen).
Resistente a colisiones
Es inviable encontrar dos entradas distintas con el mismo resumen.
Efecto avalancha
Cambiar un solo bit de la entrada cambia aproximadamente la mitad de los bits del resumen.
b221d9dbb083a7f33428d7c2a3c3198ae925614d70210e28716ccaa7cd4ddb79
echo -n "Hola" | sha256sum
e633f4fc79badea1dc5db970cf397c8248bac47cc3acf9915ba60b5d76b0e88f
Solo ha cambiado una letra de minúscula a mayúscula y los dos resúmenes no se parecen en nada.
Algoritmos y longitud de resumen
| Algoritmo | Longitud | Estado |
|---|---|---|
| MD5 | 128 bits | ❌ Colisiones triviales. Solo para comprobar errores de transmisión no maliciosos. |
| SHA-1 | 160 bits | ❌ Colisión práctica demostrada en 2017. Retirado para firmas. |
| SHA-256 / SHA-512 | 256 / 512 bits | ✅ Estándar actual (familia SHA-2). |
| SHA-3 | 224 a 512 bits | ✅ Diseño distinto (Keccak), alternativa si se debilitara SHA-2. |
Criterios de utilización
✅ Usos correctos
- Verificar la integridad de descargas y copias forenses (comparar el hash antes y después)
- Firmas digitales: se firma el resumen, no el documento entero
- HMAC: hash combinado con una clave secreta para autenticar mensajes
- Identificar ficheros de malware conocidos por su hash (listas de IOC, VirusTotal)
⚠️ Errores habituales
- Guardar contraseñas con SHA-256 a secas: es demasiado rápido. Usar Argon2id, bcrypt o scrypt, siempre con sal
- Pensar que un hash «cifra»: no se puede descifrar porque no hay clave; es otra cosa
- Usar MD5 o SHA-1 en sistemas nuevos
10Marco Legal de la Firma Electrónica
El temario menciona la Ley 59/2003, de 19 de diciembre, de firma electrónica, que fue la primera regulación española completa. Hoy el marco ha cambiado y conviene conocer su evolución:
Conceptos clave que se mantienen
- Firma electrónica – Datos en formato electrónico que el firmante utiliza para firmar
- Firma avanzada – Vinculada de forma única al firmante, permite identificarlo, está bajo su control exclusivo y detecta cambios posteriores
- Firma cualificada – Firma avanzada creada con un dispositivo cualificado y basada en un certificado cualificado. Es lo que la Ley 59/2003 llamaba «firma reconocida» y tiene el mismo valor jurídico que la firma manuscrita en toda la UE
- Prestador cualificado de servicios de confianza – Entidad supervisada que emite certificados cualificados. En España figuran en la lista de confianza (TSL) del Ministerio para la Transformación Digital
- DNIe – Incluye certificados de autenticación y de firma cualificada
📌 Para el examen y para la vida real
- El temario oficial sigue citando la Ley 59/2003, así que conviene conocerla
- En un trabajo real, la norma aplicable es el Reglamento eIDAS junto con la Ley 6/2020
11Firma Digital: Elementos, Tipos y Criterios
Elementos fundamentales
Función hash
Genera el resumen del documento que se va a firmar.
Clave privada del firmante
Firma el resumen. Solo la tiene el firmante, idealmente dentro de una tarjeta o token.
Certificado digital
Vincula la clave pública con la identidad del firmante y permite verificar la firma.
Sello de tiempo (opcional)
Demuestra cuándo se firmó, y mantiene la validez aunque el certificado caduque después.
Cómo se firma y cómo se verifica
✍️ Firmar (emisor)
- 1. Calcular el hash del documento
- 2. Firmar ese hash con la clave privada
- 3. Adjuntar la firma y el certificado al documento
🔎 Verificar (receptor)
- 1. Calcular el hash del documento recibido
- 2. Verificar la firma con la clave pública del certificado
- 3. Comprobar que el certificado es de una CA de confianza y no está caducado ni revocado
- 4. Si todo cuadra, el documento es íntegro y auténtico
Tipos de firma según eIDAS
✏️ Simple
Cualquier dato electrónico usado para firmar: un nombre al pie de un correo o un clic en «Acepto». Válida, pero difícil de probar en un juicio.
🖊️ Avanzada
Identifica al firmante y detecta cambios. Por ejemplo, una firma con el certificado software de la FNMT.
🏛️ Cualificada
Avanzada, con certificado cualificado y dispositivo cualificado (DNIe, tarjeta, HSM remoto). Equivale a la firma manuscrita.
🏢 Sello electrónico
El equivalente para personas jurídicas: garantiza el origen y la integridad de documentos emitidos por una empresa o administración.
Formatos de firma
En España la herramienta de referencia para firmar es AutoFirma, y para validar firmas, el servicio VALIDe del Gobierno.
Criterios de utilización
- Usar firma cualificada cuando el documento deba tener plena validez jurídica (contratos, trámites con la Administración)
- Añadir sello de tiempo y formatos longevos (por ejemplo, PAdES-LTA) si la firma debe poder verificarse durante años
- Elegir el formato según el documento: PAdES para PDF, XAdES para XML, CAdES para cualquier fichero
12Cifrado de Flujo y Cifrado de Bloque
🌊 Cifrado de flujo
- Genera una secuencia pseudoaleatoria (keystream) a partir de la clave y la combina con los datos mediante XOR, bit a bit o byte a byte
- Muy rápido y con baja latencia
- Un error en un bit solo afecta a ese bit
- Regla de oro: nunca reutilizar la misma clave y nonce
- Ejemplos: ChaCha20 (actual), RC4 (roto, prohibido en TLS)
🧱 Cifrado de bloque
- Cifra bloques de tamaño fijo (128 bits en AES) aplicando varias rondas de sustitución y permutación
- Necesita un modo de operación para cifrar mensajes de más de un bloque
- Con algunos modos (CTR, GCM) se comporta como un cifrado de flujo
- Ejemplos: AES, Camellia, 3DES (retirado)
Modos de operación del cifrado de bloque
| Modo | Cómo funciona | Valoración |
|---|---|---|
| ECB | Cada bloque se cifra por separado con la misma clave | ❌ Bloques iguales dan cifrados iguales: deja ver patrones (el famoso «pingüino de ECB») |
| CBC | Cada bloque se combina con el cifrado del anterior; necesita un IV aleatorio | ⚠️ Correcto con IV aleatorio, pero no da integridad (ataques de padding oracle) |
| CTR | Cifra un contador y lo usa como keystream | ⚠️ Rápido y paralelizable, pero no da integridad |
| GCM | CTR más un código de autenticación | ✅ Cifrado autenticado (AEAD). Es el modo recomendado |
| XTS | Pensado para sectores de disco | ✅ El que usan BitLocker, LUKS y FileVault |
Criterios de utilización
📡 Comunicaciones en tiempo real
ChaCha20-Poly1305 o AES-GCM: cifrado autenticado con baja latencia.
💽 Discos y volúmenes
AES-XTS: permite cifrar y descifrar sectores sueltos sin tocar el resto.
📁 Ficheros y bases de datos
AES-GCM con un nonce distinto por cada cifrado.
🔋 Dispositivos con pocos recursos
ChaCha20 en software, o AES si el chip tiene aceleración por hardware.
13Intercambio de Claves en los Protocolos Actuales
En el apartado 06 vimos cómo funciona un intercambio de claves. Aquí vemos cómo lo hacen los protocolos que usamos cada día y qué criterios siguen.
| Protocolo | Intercambio de claves | Autenticación del intercambio |
|---|---|---|
| TLS 1.3 (HTTPS) | ECDHE con X25519 o P-256; híbrido X25519MLKEM768 en navegadores actuales | Certificado X.509 del servidor y firma del handshake |
| SSH | curve25519-sha256 o híbrido post-cuántico (sntrup761x25519, mlkem768x25519) | Clave de host del servidor (huella conocida) y clave o contraseña del usuario |
| IPsec (IKEv2) | Grupos Diffie-Hellman / ECDH negociados | Certificados, secreto precompartido (PSK) o EAP |
| WireGuard | Protocolo Noise con Curve25519 | Claves públicas de los pares configuradas de antemano |
| Protocolo Signal (Signal, WhatsApp) | X3DH, ampliado en Signal con PQXDH (post-cuántico) en 2023, y Double Ratchet | Claves de identidad; verificación del número de seguridad |
El handshake de TLS 1.3, simplificado
ClientHello
+ valor ECDHE del cliente
ServerHello
+ valor ECDHE del servidor
Certificado + firma del servidor
Claves de sesión derivadas: datos cifrados
Todo ocurre en un solo viaje de ida y vuelta (1-RTT), y desde el ServerHello el resto del handshake ya va cifrado.
Criterios de selección
- Exigir secreto hacia delante – Solo intercambios efímeros (DHE/ECDHE)
- Autenticar siempre – Un intercambio sin autenticar es vulnerable a man-in-the-middle
- Desactivar lo obsoleto – SSL, TLS 1.0 y 1.1, grupos DH de menos de 2.048 bits e intercambio RSA estático
- Preparar la transición post-cuántica – Los modos híbridos (clásico + ML-KEM) protegen frente a «capturar ahora, descifrar después»
14Herramientas de Cifrado: PGP, GPG y Cifrado de Disco
El modelo de confianza de PGP: la red de confianza
PGP no depende de una CA central. Cada usuario firma las claves de las personas cuya identidad ha comprobado, y confía en una clave si la han firmado personas en las que confía. Es la red de confianza (web of trust), frente al modelo jerárquico de las PKI que veremos en la Unidad 2.
GPG en la práctica
gpg --full-generate-key
# Exportar tu clave pública para compartirla
gpg --armor --export alumno@ejemplo.com > alumno.asc
# Importar la clave pública de un compañero
gpg --import companero.asc
# Cifrar un fichero para ese compañero
gpg --encrypt --recipient companero@ejemplo.com informe.pdf
# Firmar y verificar
gpg --detach-sign informe.pdf
gpg --verify informe.pdf.sig informe.pdf
# Cifrado simétrico rápido con contraseña
gpg --symmetric --cipher-algo AES256 notas.txt
Buenas prácticas
- Proteger la clave privada con una frase de paso larga y guardar un certificado de revocación en lugar seguro
- Comprobar la huella (fingerprint) de una clave por un canal distinto antes de confiar en ella
- Usar algoritmos actuales (Ed25519/Cv25519 o RSA ≥ 3.072) y fijar una fecha de caducidad a las claves
- Recordar que cifrar el disco protege el equipo apagado o robado, pero no los ficheros mientras la sesión está abierta