Resumen de algoritmos de cifrado simétricos y asimétricos, uso de claves pública/privada, aplicación en navegadores web (TLS) y los algoritmos incluidos en el DNIe español.
En criptografía asimétrica cada usuario tiene un par de claves matemáticamente ligadas: una pública (se comparte) y una privada (se guarda en secreto). Lo que se cifra con una solo se descifra con la otra.
| Objetivo | Se cifra/firma con… | Se descifra/verifica con… | Garantiza |
|---|---|---|---|
| Confidencialidad (que solo el destinatario pueda leerlo) | Clave pública del destinatario | Clave privada del destinatario | Confidencialidad |
| Firma digital (demostrar quién lo envía) | Clave privada del emisor | Clave pública del emisor | Autenticidad + integridad + no repudio |
| Sobre digital (lo habitual en la práctica) | Mensaje cifrado con clave simétrica de sesión; la clave de sesión se cifra con la clave pública del destinatario | El destinatario descifra la clave de sesión con su privada y con ella el mensaje | Confidencialidad + eficiencia |
🧠 Regla mnemotécnica:
- Cifrar para enviar en secreto → pública del que recibe.
- Firmar para demostrar quién soy → privada del que firma.
En el cifrado simétrico se usa la misma clave para cifrar y descifrar. Es rápido y eficiente, pero plantea el problema de distribuir la clave de forma segura.
| Algoritmo | Tamaño de bloque | Tamaño de clave | Estado actual | Notas |
|---|---|---|---|---|
| DES | 64 bits | 56 bits | ❌ Obsoleto (roto) | Estándar de los 70. Inseguro por clave corta. |
| 3DES / Triple DES / TDEA | 64 bits | 112 o 168 bits | ⚠️ En desuso (NIST lo retira en 2023) | Aplica DES 3 veces. Usado en DNIe 3.0 y banca. |
| AES (Rijndael) | 128 bits | 128, 192 o 256 bits | ✅ Estándar actual | Sucesor de DES (NIST 2001). Usado en TLS, WiFi WPA2/3, DNIe, BitLocker… |
| Blowfish | 64 bits | 32–448 bits | ⚠️ Heredado | Diseñado por Bruce Schneier. Sustituido por Twofish. |
| Twofish | 128 bits | 128, 192 o 256 bits | ✅ Vigente | Finalista del concurso AES. |
| Serpent | 128 bits | 128, 192 o 256 bits | ✅ Vigente | Otro finalista AES, muy seguro pero más lento. |
| IDEA | 64 bits | 128 bits | ⚠️ Heredado | Usado en versiones antiguas de PGP. |
| Camellia | 128 bits | 128, 192 o 256 bits | ✅ Vigente | Estándar japonés, aceptado por ISO/IEC y TLS. |
| CAST-128 / CAST-256 | 64 / 128 bits | 40–128 / 128–256 bits | ⚠️ Heredado | Usado en GPG. |
| RC5 / RC6 | Variable | Hasta 2040 bits | ⚠️ Heredado | RC6 fue finalista AES. |
| SM4 | 128 bits | 128 bits | ✅ Vigente | Estándar chino. |
| Algoritmo | Tamaño de clave | Estado | Notas |
|---|---|---|---|
| RC4 | 40–2048 bits | ❌ Obsoleto (prohibido en TLS desde 2015) | Usado antiguamente en WEP y SSL. |
| Salsa20 | 128 o 256 bits | ✅ Vigente | Diseñado por Daniel J. Bernstein. |
| ChaCha20 | 256 bits | ✅ Vigente | Variante mejorada de Salsa20. Usado en TLS 1.3, WireGuard y OpenSSH. |
| A5/1, A5/2 | 54/64 bits | ❌ Obsoletos | Cifrado de GSM (móviles 2G). |
| Modo | Significado | Características |
|---|---|---|
| ECB | Electronic Code Book | ❌ Inseguro: patrones visibles. |
| CBC | Cipher Block Chaining | Encadena bloques con un IV. Muy usado, pero vulnerable a padding oracle. |
| CFB | Cipher Feedback | Convierte el cifrador de bloque en uno de flujo. |
| OFB | Output Feedback | Similar a CFB; no propaga errores. |
| CTR | Counter | Paralelizable; muy rápido. |
| GCM | Galois/Counter Mode | ✅ Cifrado autenticado (AEAD). Estándar en TLS 1.2/1.3. |
| CCM | Counter with CBC-MAC | AEAD usado en WPA2 (WiFi). |
En el examen suele preguntarse que AES-GCM y ChaCha20-Poly1305 son los modos AEAD (Authenticated Encryption with Associated Data) recomendados.
Cada usuario tiene una pareja de claves. Son lentos comparados con los simétricos, por lo que en la práctica se combinan (cifrado híbrido).
| Algoritmo | Basado en | Uso principal | Tamaño de clave típico | Notas |
|---|---|---|---|---|
| RSA | Factorización de enteros grandes | Cifrado y firma | 2048, 3072, 4096 bits | El más conocido. Base de muchos certificados X.509. |
| DSA | Logaritmo discreto | Solo firma (no cifra) | 2048, 3072 bits | Estándar NIST. Sustituido por ECDSA. |
| Diffie-Hellman (DH) | Logaritmo discreto | Intercambio de claves (no cifra mensajes) | 2048+ bits | Permite acordar una clave simétrica por canal inseguro. |
| ECDH / ECDHE | Curva elíptica | Intercambio de claves (versión elíptica de DH) | 256, 384 bits | "E" = Ephemeral → da Perfect Forward Secrecy. Usado en TLS 1.3. |
| ECDSA | Curva elíptica | Firma digital | 256, 384, 521 bits | Versión elíptica de DSA. Usado en DNIe 4.0, Bitcoin, certificados TLS. |
| EdDSA (Ed25519, Ed448) | Curva de Edwards | Firma digital | 256, 448 bits | Moderno, rápido y seguro. Usado en OpenSSH y SSL moderno. |
| ElGamal | Logaritmo discreto | Cifrado y firma | 2048+ bits | Base de GPG histórico. |
| Rabin | Factorización | Cifrado | 2048+ bits | Académico, poco usado. |
| Kyber (ML-KEM) | Lattices (retículos) | Post-cuántico — intercambio de claves | Variable | Estándar NIST 2024 contra ordenadores cuánticos. |
| Dilithium (ML-DSA) | Lattices | Post-cuántico — firma digital | Variable | Estándar NIST 2024. |
| SPHINCS+ | Funciones hash | Post-cuántico — firma digital | Variable | Estándar NIST 2024. |
⚠️ Importante para el examen: DSA y ECDSA NO cifran, solo firman. Para cifrar con clave pública se usa RSA, ElGamal o, en la práctica moderna, un esquema híbrido (asimétrico para intercambiar la clave, simétrico para los datos).
Los hashes producen un resumen de longitud fija. No son reversibles y no llevan clave (salvo HMAC).
| Algoritmo | Tamaño de salida | Estado | Notas |
|---|---|---|---|
| MD5 | 128 bits | ❌ Roto (colisiones) | No usar para seguridad. |
| SHA-1 | 160 bits | ❌ Roto desde 2017 (ataque SHAttered) | Aún se ve en sistemas heredados. |
| SHA-2 (SHA-224, SHA-256, SHA-384, SHA-512) | 224–512 bits | ✅ Vigente | Estándar actual. Usado en TLS, DNIe, Bitcoin, certificados. |
| SHA-3 (Keccak) | 224–512 bits | ✅ Vigente | Estándar NIST 2015, distinto diseño que SHA-2. |
| BLAKE2 / BLAKE3 | Variable | ✅ Vigente | Más rápido que SHA-2/3. |
| RIPEMD-160 | 160 bits | ⚠️ Heredado | Usado en Bitcoin (direcciones). |
| HMAC-SHA-256, HMAC-SHA-1 | Según el hash | ✅ Vigente | Hash con clave secreta (autenticación de mensajes). |
El protocolo TLS (1.2 y 1.3) que protege HTTPS usa un esquema HÍBRIDO:
Suites de cifrado típicas en TLS 1.2 (formato KEX_AUTH_WITH_CIPHER_HASH):
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256
En TLS 1.3 el nombre se simplifica:
TLS_AES_256_GCM_SHA384
TLS_CHACHA20_POLY1305_SHA256
🌐 Resumen para el examen: El navegador combina asimétrico (RSA/ECDHE/ECDSA) para autenticarse y acordar claves, y simétrico (AES-GCM o ChaCha20) para cifrar los datos. El hash es SHA-256.
El DNI electrónico español ha evolucionado por versiones. Es habitual que en el examen TAI se pregunte específicamente por el DNIe 3.0 o DNIe 4.0.
| Tipo | Algoritmo |
|---|---|
| Asimétrico | RSA (hasta 2048 bits en formato CRT, hasta 1024 bits en formato normal) |
| Generación de claves RSA | Estándar PKCS#1 |
| Simétrico | Triple DES (3DES) y AES |
| Hash | SHA-256 |
| Estándares de tarjeta | ISO/IEC 7816 y ISO/IEC 14443 (NFC), PKCS#15 |
| Certificación | Common Criteria EAL5+ |
| Tipo | Algoritmo |
|---|---|
| Asimétrico — autenticación del chip | ECC (curva elíptica) con clave de 256 bits |
| Asimétrico — certificado del ciudadano | ECC (curva elíptica) con clave de 384 bits |
| Asimétrico — compatibilidad / usos futuros | RSA hasta 3.071 bits |
| Simétrico | AES-128 |
| Hash | SHA-256 |
| Conectividad | Contacto + NFC (sin contacto) |
| Cumple | Reglamento europeo eIDAS |
🧠 Lo que más cae:
- DNIe 3.0 → RSA + 3DES/AES + SHA-256.
- DNIe 4.0 → ECC (256/384 bits) + AES-128 + SHA-256 (con RSA para compatibilidad).
- Ambos usan certificados X.509, y dos certificados por ciudadano: uno de autenticación y otro de firma.
| Aspecto | Simétrico | Asimétrico |
|---|---|---|
| Nº de claves | Una compartida | Pareja pública/privada |
| Velocidad | Rápido | Lento |
| Problema principal | Distribución segura de la clave | Coste computacional |
| Usos típicos | Cifrar grandes volúmenes (archivos, VPN, sesión TLS) | Firma digital, intercambio de claves, certificados |
| Ejemplos | AES, ChaCha20, 3DES | RSA, ECC, DH, ECDSA |
| ¿En el DNIe? | AES (4.0), 3DES y AES (3.0) | ECC 256/384 (4.0), RSA 2048 (3.0) |
| ¿En el navegador? | AES-GCM, ChaCha20-Poly1305 | RSA, ECDHE, ECDSA |
Documento de estudio — Oposición TAI. Última revisión: mayo 2026.