En un artículo anterior vimos que la criptografía simétrica es genial… siempre que consigas darle la clave a tu destinatario sin que un espía ruso (o tu proveedor de internet) la intercepte.
Pero, ¿cómo le envías una clave segura a alguien con quien nunca has hablado antes? ¿Por telepatía? No. Usas Criptografía Asimétrica (Asymmetric Cryptography), también conocida como Criptografía de Clave Pública (Public Key Cryptography).
Es la base de que puedas comprar en Amazon sin que el vecino te robe la tarjeta de crédito. Prepárate, porque aquí las matemáticas se ponen serias.
Índice de contenidos
El Concepto: Dos llaves para gobernarlas a todas
Olvídate de la llave única. Aquí trabajamos en parejas, como la Guardia Civil.
- Clave Pública (Public Key): Es la que repartes como si fueran flyers de una discoteca. Se la das a todo el mundo. Sirve para cifrar.
- Clave Privada (Private Key): Esta te la guardas. La proteges con tu vida. Si la pierdes, estás muerto (digitalmente). Sirve para descifrar.
La analogía del candado abierto: Imagina que envías candados abiertos (tu clave pública) a todo el mundo. Cualquiera puede meter un mensaje en una caja y cerrarla con tu candado. Pero una vez cerrado, ni siquiera ellos pueden abrirlo. Solo tú, que tienes la llave única (clave privada), puedes abrir esos candados.
Es un sistema basado en funciones trampa (trapdoor functions): matemáticas que son muy fáciles de hacer en una dirección (multiplicar dos números primos gigantes) pero casi imposibles de deshacer (averiguar qué números se multiplicaron) sin la trampa.
Los Protagonistas: RSA, ECC y DH (el negociador)
No todos los algoritmos asimétricos son iguales. Algunos son viejos dinosaurios y otros son ninjas matemáticos.
1. RSA (Rivest-Shamir-Adleman): El Viejo Confiable
Nacido en 1977. Es el algoritmo que definió internet durante décadas.
- Cómo funciona: Se basa en la dificultad de factorizar números enteros muy grandes (producto de dos primos).
- La realidad: Para que sea seguro hoy en día, necesitas claves enormes (mínimo 2048 bits, idealmente 4096).
- Pros: Todo el mundo lo soporta. Es estándar.
- Contras: Es lento y las claves son tan grandes que molestan.
- Estado: Vigente, pero perdiendo terreno frente a ECC.
2. ECC (Elliptic Curve Cryptography): El Ninja Moderno
Si RSA es un martillo gigante, ECC es un bisturí láser. Se basa en la matemática de curvas elípticas (puntos en una curva sobre un campo finito, suena a Star Trek pero es álgebra).
- La magia: Una clave ECC de 256 bits ofrece la misma seguridad que una clave RSA de 3072 bits.
- Pros: Mucho más rápido, consume menos batería (ideal para móviles) y ocupa menos espacio.
- Uso: Es el estándar en criptomonedas (Bitcoin usa esto), TLS moderno y WhatsApp.
- Estado: El rey actual.
3. Diffie-Hellman (DH): El Negociador
Técnicamente es un protocolo de intercambio de claves (key exchange).
- La misión: Permite que dos personas generen una clave secreta compartida a través de un canal inseguro, sin haberla transmitido nunca directamente.
- La metáfora: Es como si tú y yo mezclamos pintura. Yo pongo amarillo, tú pones azul (secretos). Nos intercambiamos las mezclas y añadimos nuestro color secreto otra vez. Al final, ambos tenemos el mismo tono de marrón asqueroso, pero nadie que viera pasar los botes puede replicarlo.
- Estado: Fundamental para establecer conexiones VPN y HTTPS seguras.
El Giro de Guion: La Firma Digital
La criptografía asimétrica tiene un truco extra. ¿Qué pasa si uso las llaves al revés?
Si cifro algo con mi Clave Privada, cualquiera con mi Clave Pública puede descifrarlo. «Espera, ¿entonces no hay confidencialidad?» Exacto. Pero hay Autenticidad y No repudio (Non-repudiation).
Si el mensaje se abre con mi clave pública, significa que SOLO YO (el poseedor de la privada) pude haberlo escrito. Acabas de inventar la Firma Digital. Así sabemos que la actualización de Windows viene de Microsoft y no de un hacker ruso aburrido.
Asimétrica vs. Simétrica: ¿Por qué no usar siempre la Asimétrica?
Porque la asimétrica es LENTA. Desesperadamente lenta computacionalmente hablando. Si intentaras ver Netflix cifrando todo el video con RSA, tu ordenador se derretiría antes de cargar la intro.
La Solución: El Cifrado Híbrido (Hybrid Encryption) Es lo mejor de los dos mundos (como el pan con tomate y jamón):
- Usamos Asimétrica (lenta) solo al principio para saludarnos y compartir una clave segura.
- Una vez tenemos esa clave compartida, nos pasamos a Simétrica (AES, rápida como el rayo) para transmitir los datos pesados. Esto es, básicamente, cómo funciona TLS/SSL (HTTPS).
Checklist de Seguridad (Para no liarla parda)
- Protege tu Clave Privada: Es el mandamiento supremo. Si te la roban, pueden firmar por ti y leer tus mensajes. Guárdala en un HSM (Hardware Security Module) o en un lugar donde no llegue la luz del sol.
- Tamaño de clave:
- RSA: Menos de 2048 bits es inseguro. Vete a 4096 si puedes.
- ECC: 256 bits es el estándar dulce.
- Cuidado con la Computación Cuántica: Los ordenadores cuánticos amenazan con romper RSA y ECC desayunándose sus problemas matemáticos. Si eres paranoico, busca «Criptografía Post-Cuántica» (pero eso es tema para otro café).
- No la uses para datos grandes: Recuerda, asimétrica para claves y firmas; simétrica para el resto.
Conclusión
La criptografía asimétrica es el pilar de la confianza en Internet. Nos permite hablar con desconocidos, bancos y servidores web con la certeza de que nadie está escuchando y de que son quienes dicen ser.
Es matemática pura aplicada a la privacidad. Así que la próxima vez que veas el candadito en tu navegador, dale las gracias a RSA y a las Curvas Elípticas.
Y recuerda: Tu clave pública es para el mundo; tu clave privada es para la tumba.
¿Te ha quedado claro o necesitas que te explique cómo los certificados digitales (PKI) unen todo esto para que no sea un caos?
