🔐 Cripto App

Criptografía híbrida

RSA cifra una llave de sesión pequeña; S-AES (mucho más rápido) cifra el mensaje real con esa llave. Así funciona TLS/HTTPS en el mundo real.

Calculando…

Tip: cifra primero, copia "llave_cifrada" y "bloques" del resultado, y pégalos en modo Descifrar con d=3853, n=66013 (la llave privada correspondiente al ejemplo).

¿Por qué se hace híbrido en vez de solo RSA o solo S-AES?

RSA (y la criptografía asimétrica en general) es órdenes de magnitud más lento que la simétrica, y además solo puede cifrar mensajes más pequeños que n. Cifrar directamente un archivo grande con RSA sería lentísimo e impráctico. La solución: usar RSA solo para resolver el problema difícil (distribuir una llave secreta de forma segura sin haberse visto antes), y una vez ambas partes comparten esa llave, usar cifrado simétrico (rápido) para el volumen real de datos.

En el mundo real: esto es exactamente lo que hace TLS/HTTPS al conectarte a un sitio web: un intercambio asimétrico (RSA o, más modernamente, Diffie-Hellman con curvas elípticas) establece una llave de sesión, y todo el tráfico real se cifra con AES simétrico bajo esa llave. Aquí también se ve, de paso, la debilidad de cifrar cada bloque de forma independiente (modo ECB): si el mensaje tuviera bloques repetidos, se verían patrones repetidos en el cifrado.