Cómo funciona la criptografía de clave pública
La lección anterior mostró el cifrado simétrico, que cierra y abre con una sola llave. Era rápido y limpio, pero dejó una tarea pendiente: ¿cómo entregar en secreto esa llave a alguien que está lejos? ¿Y si la llave que cierra y la que abre fueran distintas? ¿Y si la llave que cierra pudiera repartirse a todo el mundo y solo tú guardaras la que abre? De esa idea nació el cifrado de clave pública.
Hay dos llaves
El cifrado simétrico tenía una sola llave. El cifrado de clave pública crea y usa juntas dos llaves que forman pareja. Una es la clave pública, que, como dice su nombre, se puede dar a cualquiera. La otra es la clave privada, que solo guardas tú y nunca entregas.
Las dos llaves están emparejadas matemáticamente, pero conocer la clave pública no permite calcular la privada. Se basan en problemas matemáticos fáciles en un sentido y prácticamente imposibles en el otro, como descomponer en factores primos un número enorme.
Toca las dos llaves una por una para ver su papel. La clave pública se da a cualquiera; la privada se queda solo contigo.
La clave pública podía quedar a la vista sin problema, mientras que la privada debía esconderse bien. Forman pareja, pero sus papeles son opuestos: una se anuncia al mundo y la otra se guarda en secreto hasta el final.
Entonces, con dos llaves, ¿cuál cierra y cuál abre? Veamos primero el cierre.
Cerrar con la clave pública
Para enviar a alguien un mensaje secreto, primero consigues su clave pública. Cualquiera puede tenerla, así que es fácil de obtener. Con ella cierras el mensaje.
Cerrar con una clave pública es como poner en tu mensaje un candado abierto que la otra persona reparte. Cualquiera puede cerrar un candado, pero una vez cerrado, ni siquiera quien lo cerró puede volver a abrirlo, porque la clave pública solo cierra, no abre.
Pulsa cerrar con clave pública. La clave pública que tiene cualquiera pone un candado en el mensaje.
El mensaje quedó cerrado con una forma ilegible. Lo que lo cerró fue la clave pública, que no es ningún secreto, así que de verdad cualquiera puede cerrarlo.
Pero ni siquiera quien lo cerró puede volver a abrirlo. La llave que abre un candado cerrado con la clave pública es otra.
Solo la clave privada lo abre
Un candado cerrado con una clave pública solo se abre con la clave privada que forma pareja con ella. La privada de la misma pareja lo abre; cualquier otra llave no lo mueve. Ni siquiera la clave pública que lo cerró puede abrirlo.
Así que solo la única persona que tiene la clave privada puede leer el mensaje. Aunque todo el mundo tenga la clave pública, quien puede leerlo es solo el dueño de la privada.
Prueba las llaves una por una. Solo la clave privada correspondiente abre el candado; la clave pública que lo cerró y la privada equivocada fallan.
Solo se abrió con la clave privada correspondiente. Esta asimetría es el corazón del cifrado de clave pública: cualquiera puede cerrar, pero solo una persona puede abrir. El poder de cerrar queda abierto a todos y solo el de abrir queda bien guardado.
Gracias a esta propiedad se resuelve la tarea de la lección anterior, porque desaparece del todo la necesidad de entregar una llave en secreto.
Se resuelve el problema de la distribución de claves
Con el cifrado simétrico, las dos personas tenían que tener la misma llave, así que entregarla en secreto era el gran problema. El cifrado de clave pública no tiene esa preocupación. Quien se lleve la clave pública del destinatario solo podrá cerrar con ella.
La clave privada que abre nunca sale de las manos de su dueño. Como no hay ninguna llave que entregar en secreto, el arriesgado paso de la entrega desaparece por completo.
Toca clave simétrica y clave pública para comparar sus pasos. El cifrado simétrico tiene metido un paso de entrega secreta; el de clave pública no lo tiene.
Uno al lado del otro, la diferencia era clara. El cifrado simétrico siempre tenía el arriesgado paso de la entrega secreta, y el de clave pública no. Eso sí, el cifrado de clave pública exige cálculos pesados y es lento para cerrar grandes cantidades de datos.
Por eso, en la práctica, el cifrado de clave pública se usa para entregar con seguridad una llave simétrica corta, y los datos se cierran con la rápida llave simétrica. Queda además otra tarea: comprobar que la clave pública que recibiste es de verdad de esa persona y que nadie la cambió a mitad de camino. Una lección posterior lo trata con los certificados.
Resumen
En resumen, el cifrado de clave pública usa dos llaves que forman pareja. La clave pública se da a cualquiera y la privada la guardas solo tú. Lo que cierra la clave pública solo lo abre la privada correspondiente: cualquiera puede cerrar, pero solo una persona puede abrir.
Así que la clave pública puede publicarse sin riesgo, y no hay ninguna llave que entregar en secreto. Así se resuelve el problema de la distribución de claves del cifrado simétrico.
Toca los puntos clave en orden para repasar. (dos llaves → cerrar con la clave pública → solo la privada abre → se resuelve la distribución de claves)
Ya conoces la magia de las dos llaves: una forma de intercambiar secretos con seguridad usando una llave que repartes y otra que es solo tuya. Usado en orden inverso, el mismo par también sirve para crear una firma que no se puede falsificar, algo que trata la lección de firmas digitales.
Antes de eso, la próxima lección presenta el intercambio de claves, una forma de que dos personas construyan juntas la misma llave secreta sin enviarla nunca.