📚 Módulo Formativo

Sistemas Seguros de Acceso y Transmisión de Datos I

Criptografía de César a la era post-cuántica: claves simétricas y asimétricas, intercambio de claves, funciones hash, certificados digitales, firma electrónica y herramientas de cifrado.

🔐 Criptografía 🔑 Simétrica y Asimétrica 🤝 Intercambio de Claves #️⃣ Funciones Hash 📜 Certificados X.509 ✍️ Firma Electrónica

📋 Índice de contenidos

Unidad 1 · Criptografía
  1. Perspectiva histórica y objetivos de la criptografía
  2. Teoría de la información
  3. Propiedades de seguridad que controla la criptografía
  4. Criptografía de clave privada y de clave pública
  5. Características y atributos de los certificados digitales
  6. Funcionamiento de los protocolos de intercambio de claves
  7. Algoritmos criptográficos más utilizados
  8. Elementos y formatos de los certificados digitales
  9. Funciones resumen (hash) y criterios de uso
  10. Marco legal de la firma electrónica
  11. Firma digital: elementos, tipos y criterios
  12. Cifrado de flujo y cifrado de bloque
  13. Intercambio de claves en los protocolos actuales
  14. Herramientas de cifrado: PGP, GPG y cifrado de disco
Unidad Didáctica 1 · Criptografía

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

1
🏛️
Antigüedad
Escítala espartana (transposición) y cifrado César (sustitución con desplazamiento fijo)
2
📜
Edad Media y Renacimiento
Al-Kindi inventa el análisis de frecuencias; Vigenère populariza la sustitución polialfabética
3
⚙️
Guerras mundiales
Máquinas de rotores como Enigma; su ruptura en Bletchley Park acelera la informática
4
💻
Era informática (1970s)
DES como estándar (1977), Diffie-Hellman (1976) y RSA (1977): nace la criptografía de clave pública
5
🌐
Internet y AES
SSL/TLS, PGP y AES (2001) llevan el cifrado a la banca, el correo y la navegación diaria
6
⚛️
Era post-cuántica
El NIST publica en 2024 los primeros estándares resistentes a ordenadores cuánticos (ML-KEM, ML-DSA)
💡 Ejemplo — Cifrado César con desplazamiento 3

Cada letra se sustituye por la que está tres posiciones más adelante en el alfabeto:

ATACAR AL AMANECER → DWDFDU DO DPDQHFHU

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ñaAlfabetoEntropía aproximadaValoración
8 caracteres en minúscula26 símbolos37,6 bitsMuy débil
8 caracteres alfanuméricos62 símbolos47,6 bitsDébil
12 caracteres imprimibles94 símbolos78,7 bitsBuena
6 palabras al azar (Diceware)7.776 palabras77,5 bitsBuena y fácil de recordar
16 caracteres imprimibles94 símbolos104,9 bitsMuy 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?

MecanismoConfidencialidadIntegridadAutenticidadNo 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

AspectoSimétricaAsimétrica
Número de clavesUna compartidaUn par por usuario
VelocidadMuy altaBaja
Distribución de clavesDifícil: necesita un canal seguroSencilla: la pública se publica
Firma digitalNo (solo MAC)Sí
Uso típicoCifrar datos en reposo y en tránsitoIntercambiar claves, firmar, autenticar
Seguridad equivalente a 128 bitsAES-128RSA-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

Tipos de certificado según su titular

Persona física Representante de persona jurídica Servidor web (SSL/TLS) Sello electrónico de empresa Firma de código Empleado público

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)

  1. Parámetros públicos. Alice y Bob acuerdan en abierto un primo p = 23 y un generador g = 5.
  2. Secretos. Alice elige a = 6 y Bob elige b = 15. Nunca los envían.
  3. Valores públicos. Alice envía A = 5⁶ mod 23 = 8. Bob envía B = 5¹⁵ mod 23 = 19.
  4. Clave compartida. Alice calcula 19⁶ mod 23 = 2. Bob calcula 8¹⁵ mod 23 = 2. Los dos tienen el mismo secreto: 2.
  5. ¿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íaAlgoritmoEstadoNotas
Simétrico de bloqueAES-128 / AES-256✅ RecomendadoEstándar desde 2001 (Rijndael). Bloques de 128 bits.
Simétrico de flujoChaCha20-Poly1305✅ RecomendadoMuy rápido en móviles sin aceleración AES. Usado en TLS, WireGuard y SSH.
Simétrico3DES⛔ RetiradoBloques de 64 bits, vulnerable a Sweet32. El NIST lo retiró a finales de 2023.
SimétricoDES, RC4❌ RotoDES (clave de 56 bits) se rompe por fuerza bruta; RC4 tiene sesgos explotables.
AsimétricoRSA ≥ 3.072 bits✅ VálidoRSA-2048 sigue en uso, pero 3.072 es lo recomendado para nuevos despliegues.
AsimétricoECDSA P-256, Ed25519, X25519✅ RecomendadoCurvas elípticas: misma seguridad con claves y firmas mucho más pequeñas.
HashSHA-256, SHA-384, SHA-512, SHA-3✅ RecomendadoFamilias SHA-2 y SHA-3.
HashMD5, SHA-1❌ RotoSe pueden fabricar colisiones (SHA-1: SHAttered, 2017). No usar para firmas.
ContraseñasArgon2id, bcrypt, scrypt✅ RecomendadoLentos a propósito para frenar el cracking.
Post-cuánticoML-KEM, ML-DSA, SLH-DSA🆕 Estándar 2024FIPS 203, 204 y 205. Ya se usan en modo híbrido en navegadores y en OpenSSH.

Criterios para elegir un algoritmo

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

📄Campos básicos
  • Versión (v3)
  • Número de serie
  • Algoritmo de firma
  • Emisor (Issuer)
  • Validez (desde / hasta)
  • Sujeto (Subject)
  • Clave pública del sujeto
🧩Extensiones habituales
  • 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)
✍️Firma
  • Algoritmo de firma de la CA
  • Valor de la firma sobre todos los campos anteriores

Formatos de fichero

FormatoExtensionesCodificación¿Incluye clave privada?Uso típico
PEM.pem, .crt, .cer, .keyTexto Base64 entre «-----BEGIN…-----»Puede, en fichero aparteServidores Linux (Apache, Nginx)
DER.der, .cerBinarioNoJava, Windows, dispositivos
PKCS#7.p7b, .p7cBase64 o binarioNo (solo la cadena de certificados)Distribuir cadenas de CA en Windows
PKCS#12.p12, .pfxBinario protegido con contraseñaSíExportar e importar tu certificado personal (FNMT)

Inspeccionar y convertir con OpenSSL

# Ver el contenido de un certificado
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

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.

💡 Ejemplo — Efecto avalancha con SHA-256
echo -n "hola" | sha256sum
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

AlgoritmoLongitudEstado
MD5128 bits❌ Colisiones triviales. Solo para comprobar errores de transmisión no maliciosos.
SHA-1160 bits❌ Colisión práctica demostrada en 2017. Retirado para firmas.
SHA-256 / SHA-512256 / 512 bits✅ Estándar actual (familia SHA-2).
SHA-3224 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:

1
📘
Ley 59/2003
Regula la firma electrónica, la firma «reconocida» (equivalente a la manuscrita), los prestadores de servicios de certificación y crea el DNIe
2
🇪🇺
Reglamento eIDAS (2014)
Reglamento (UE) 910/2014: unifica en toda la UE la firma, el sello, el sellado de tiempo y los servicios de confianza
3
📗
Ley 6/2020
Ley reguladora de determinados aspectos de los servicios electrónicos de confianza. Deroga la Ley 59/2003 y adapta el derecho español a eIDAS
4
📱
eIDAS2 (2024)
Reglamento (UE) 2024/1183: crea la Cartera Europea de Identidad Digital (EUDI Wallet)

Conceptos clave que se mantienen

📌 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

CAdES (binario, .p7s / .csig) XAdES (XML, facturas electrónicas) PAdES (dentro del PDF) JAdES (JSON)

En España la herramienta de referencia para firmar es AutoFirma, y para validar firmas, el servicio VALIDe del Gobierno.

Criterios de utilización

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

ModoCómo funcionaValoración
ECBCada bloque se cifra por separado con la misma clave❌ Bloques iguales dan cifrados iguales: deja ver patrones (el famoso «pingüino de ECB»)
CBCCada bloque se combina con el cifrado del anterior; necesita un IV aleatorio⚠️ Correcto con IV aleatorio, pero no da integridad (ataques de padding oracle)
CTRCifra un contador y lo usa como keystream⚠️ Rápido y paralelizable, pero no da integridad
GCMCTR más un código de autenticación✅ Cifrado autenticado (AEAD). Es el modo recomendado
XTSPensado 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.

ProtocoloIntercambio de clavesAutenticación del intercambio
TLS 1.3 (HTTPS)ECDHE con X25519 o P-256; híbrido X25519MLKEM768 en navegadores actualesCertificado X.509 del servidor y firma del handshake
SSHcurve25519-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 negociadosCertificados, secreto precompartido (PSK) o EAP
WireGuardProtocolo Noise con Curve25519Claves 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 RatchetClaves 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

14Herramientas de Cifrado: PGP, GPG y Cifrado de Disco

📧 Cifrado de ficheros y correo
PGPPretty Good Privacy, creado por Phil Zimmermann en 1991. Hoy es un producto comercial.
OpenPGPEstándar abierto que define el formato (RFC 4880, actualizado por el RFC 9580).
GPGGNU Privacy Guard: implementación libre de OpenPGP, incluida en casi todas las distribuciones Linux.
KleopatraInterfaz gráfica de GPG en Windows (Gpg4win).
💽 Cifrado de disco y volúmenes
CryptoLoopAntiguo cifrado de dispositivos loop del kernel Linux. Obsoleto: sustituido por dm-crypt.
dm-crypt / LUKSEstándar actual de cifrado de disco en Linux, con gestión de varias contraseñas.
BitLockerCifrado de disco de Windows, integrado con el chip TPM.
VeraCryptContenedores y volúmenes cifrados multiplataforma, sucesor de TrueCrypt.

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

# Generar un par de claves
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