Ir al contenido
HexaTransfer
Volver al blog
Cifrado y seguridad

Cifrado simétrico vs asimétrico: diferencias clave explicadas

Cifrado simétrico vs asimétrico comparado en lenguaje simple. Entiende cómo funciona cada uno y cómo se combinan en la transferencia moderna.

El cifrado simétrico usa una sola clave tanto para cifrar como para descifrar: es el caso de AES-256-GCM, el cifrado que protege tus archivos durante la transferencia. El cifrado asimétrico usa un par de claves: una clave pública que cualquiera puede ver y una clave privada que solo tú tienes, usada por algoritmos como RSA-4096 y Curve25519. El simétrico es rápido (gigabytes por segundo en CPU modernas) pero requiere que ambas partes compartan el mismo secreto. El asimétrico resuelve el problema del intercambio de claves pero es 1.000 veces más lento. Todos los servicios modernos de transferencia de archivos —HexaTransfer, Tresorit, Proton Drive, SwissTransfer— usan ambos: asimétrico para intercambiar una clave simétrica, y simétrico para cifrar el archivo real.

El mundo de una sola clave: cifrado simétrico

Los cifrados simétricos usan la misma clave para ambas direcciones. Si cifro un archivo con la clave K, necesitas esa clave K para descifrarlo. Los principales algoritmos simétricos aún en uso:

  • AES (Rijndael) con claves de 128, 192 o 256 bits, estandarizado en FIPS 197.
  • ChaCha20 con claves de 256 bits, preferido en dispositivos sin aceleración hardware AES-NI.
  • 3DES — obsoleto por NIST en 2023, no lo uses.

El rendimiento es la gran ventaja. AES-256-GCM funciona a aproximadamente 3–5 GB/s por núcleo en Intel AES-NI, y ChaCha20-Poly1305 alcanza 1,5–3 GB/s en teléfonos ARM. Cifrar un archivo de 10 GB lleva segundos.

El problema: ¿cómo le haces llegar la clave a la otra persona? Enviarla por correo electrónico anula el propósito. Este es el problema de distribución de claves, y por eso existe el cifrado asimétrico.

El mundo de dos claves: cifrado asimétrico

Inventado por Diffie y Hellman en 1976 y materializado por Rivest, Shamir y Adleman como RSA en 1977. Cada usuario tiene un par de claves: una clave pública publicada abiertamente y una clave privada mantenida en secreto. Cualquier cosa cifrada con la clave pública solo puede descifrarse con la clave privada, y viceversa.

Si quieres enviarme un archivo secreto, lo cifras con mi clave pública. Solo mi clave privada puede abrirlo, y yo nunca tuve que compartir nada secreto contigo. Problema de distribución resuelto.

Algoritmos asimétricos actuales:

  • RSA-2048 o RSA-4096 — lento pero universalmente compatible, usado en certificados TLS.
  • Curva elíptica (ECDH, ECDSA) sobre curvas como P-256, P-384 o Curve25519 — claves más pequeñas, operaciones más rápidas. Una clave EC de 256 bits iguala la seguridad de una clave RSA de 3072 bits.
  • Ed25519 — estándar moderno para firmas, usado por SSH y Signal.

Por qué el asimétrico es demasiado lento para archivos

La matemática asimétrica es costosa. El cifrado RSA-4096 funciona a aproximadamente 100–500 operaciones por segundo en una CPU moderna. Cada operación maneja unos 470 bytes (el tamaño del bloque RSA menos el relleno). Eso equivale a unos 200 KB/s —unas 50.000 veces más lento que AES-256-GCM.

Cifrar un archivo de 10 GB con RSA tardaría unas 14 horas. Con AES-256-GCM, tarda unos 3 segundos. Esta asimetría en velocidad es por qué nadie cifra archivos directamente con RSA.

Cifrado híbrido: el enfoque del mundo real

Todos los protocolos que necesitan seguridad y velocidad combinan ambos. TLS 1.3, PGP, Signal, Age y cualquier servicio serio de transferencia de archivos usan este patrón:

  1. El remitente genera una clave AES aleatoria de 256 bits (la «clave de sesión» o «clave de archivo»).
  2. El archivo se cifra con AES-256-GCM usando esa clave.
  3. La propia clave AES se cifra con la clave pública del destinatario (RSA-OAEP o ECIES).
  4. Tanto el texto cifrado como la clave cifrada viajan al destinatario.
  5. El destinatario descifra la clave AES con su clave privada, luego la usa para descifrar el archivo.

Pagas el coste asimétrico una sola vez por destinatario, para una clave de 256 bits. El archivo en volumen se maneja simétricamente a toda velocidad. Lo mejor de ambos mundos.

Dónde difieren los servicios de transferencia de archivos

Los servicios de transferencia basados en navegador tienen una particularidad: el destinatario puede no tener un par de claves. Solo está haciendo clic en un enlace. Tres patrones abordan esto:

  • Solo simétrico con enlace compartido (SwissTransfer, HexaTransfer y sucesores de Firefox Send). Una clave AES-256 aleatoria se genera en el navegador del remitente, se incrusta en el fragmento de URL, y el navegador del destinatario la lee desde el fragmento. No se necesita criptografía asimétrica: el fragmento es el canal.
  • Asimétrico de cuenta a cuenta (Tresorit, Proton Drive). Cada usuario tiene un par de claves RSA o ECC generado al registrarse. Los archivos cifrados para un destinatario específico usan su clave pública.
  • Híbrido con contraseña (muchos servicios). El fragmento de URL contiene una salt; el usuario escribe una contraseña; PBKDF2 o Argon2id deriva la clave simétrica. No hay asimétrico involucrado, pero la contraseña actúa como secreto compartido.

El enfoque de enlace compartido es el más simple y funciona para destinatarios sin cuentas. El asimétrico vinculado a cuenta es más robusto porque perder el enlace no expone la clave. Elige según tu modelo de amenaza.

Firmas digitales: el otro trabajo del asimétrico

El cifrado asimétrico hace algo que el simétrico no puede: probar la autoría. Si firmo un archivo con mi clave privada, cualquiera con mi clave pública puede verificar que lo firmé, y sabe que no ha sido manipulado desde entonces. El simétrico puede proporcionar autenticación (HMAC, la etiqueta de GCM) pero solo entre partes que ya comparten un secreto.

Algoritmos de firma en uso:

  • RSA-PSS con SHA-256 — legado pero ampliamente compatible.
  • ECDSA en P-256 o P-384 — aprobado por NIST, usado en sistemas federales estadounidenses.
  • Ed25519 — rápido, determinista, resistente a RNGs defectuosos. La opción moderna.

La distribución de software (apt, Homebrew, imágenes Docker) depende de firmas Ed25519 o RSA para prevenir manipulaciones en la cadena de suministro. Los servicios de transferencia de archivos típicamente no exponen firmas directamente, pero la etiqueta de autenticación GCM en AES-256-GCM proporciona integridad dentro de un único cifrado.

Tamaños de clave y niveles de seguridad

Una tabla de conversión rápida para seguridad equivalente frente a ordenadores clásicos:

  • 128 bits simétrico = RSA de 3072 bits = EC de 256 bits (P-256 o Curve25519)
  • 192 bits simétrico = RSA de 7680 bits = EC de 384 bits (P-384)
  • 256 bits simétrico = RSA de 15360 bits = EC de 512 bits (P-521)

La recomendación actual de NIST para nuevos sistemas: al menos 112 bits de seguridad, es decir, RSA-2048 o P-256. Las agencias federales usan 128 bits (RSA-3072, P-384) como mínimo hasta 2030.

Contra futuros ordenadores cuánticos, las claves simétricas pierden aproximadamente la mitad de su fortaleza (algoritmo de Grover), mientras que RSA y ECC se rompen completamente (algoritmo de Shor). NIST estandarizó en 2024 reemplazos post-cuánticos: ML-KEM (anteriormente Kyber) para intercambio de claves y ML-DSA (anteriormente Dilithium) para firmas. La migración está en marcha pero avanza despacio.

Cuándo usar cuál

Una guía práctica de decisión:

  • Cifrar un archivo para uno mismo (copia de seguridad, archivo): simétrico AES-256-GCM con una contraseña fuerte a través de Argon2id. No se necesita asimétrico.
  • Enviar un archivo a un destinatario conocido: híbrido — AES-256-GCM para el archivo, envoltura de clave pública para la clave de sesión.
  • Enviar a múltiples destinatarios: cifra el archivo una vez con AES, luego envuelve la clave por separado con la clave pública de cada destinatario. Añade unos 300 bytes por destinatario.
  • Probar la autoría: firma Ed25519 sobre el texto cifrado.
  • Compartir puntual por enlace: simétrico con la clave en el fragmento de URL.

Combinándolo todo

Para transferencias sensibles hoy, una pila pragmática: AES-256-GCM para cifrado en volumen, X25519 ECDH para intercambio de claves si los destinatarios tienen identidades, PBKDF2 o Argon2id para claves derivadas de contraseña, y TLS 1.3 como capa de transporte. Esta combinación es lo que despliegan los servicios modernos auditados.

Pruébalo en hexatransfer.com — gratis, sin cuenta, hasta 10 GB.

Envía archivos grandes de forma segura con cifrado de extremo a extremo

Transfiere archivos de hasta 10 GB gratis con cifrado de extremo a extremo. Sin necesidad de cuenta. Tus archivos se cifran en tu navegador antes de subirlos: nadie más puede leerlos.

Enviar un archivo