La criptografía de clave pública (PKC) también se conoce como criptografía asimétrica y es un marco que utiliza una clave pública y una clave privada en lugar de la clave única utilizada en la criptografía simétrica. El uso de pares de claves le otorga a PKC un conjunto único de propiedades y capacidades que pueden utilizarse para resolver desafíos inherentes a otras técnicas criptográficas. Este tipo de cifrado se ha convertido en un elemento importante de la seguridad informática moderna, así como en un componente crucial del emergente ecosistema de criptomonedas.


¿Cómo funciona el cifrado de clave pública?

En un sistema de cifrado de clave pública, el remitente utiliza la clave pública para cifrar la información, mientras que el receptor utiliza la clave privada para descifrarla. Debido a que las dos claves son completamente diferentes entre sí, la clave pública se puede compartir de forma segura sin comprometer la seguridad de la clave privada. Cada par de claves asimétricas es único, lo que garantiza que un mensaje cifrado con una clave pública sólo pueda ser leído por la persona que posee la clave privada correspondiente.

Debido a que los algoritmos de cifrado asimétrico generan pares de claves que están matemáticamente relacionados, sus longitudes de clave son mucho mayores que las utilizadas en el cifrado simétrico. Esta longitud suele estar entre 1.024 y 2.048 bits. Lo que hace que sea muy difícil calcular una clave privada utilizando su contraparte pública. Uno de los algoritmos de cifrado asimétrico más comunes en uso hoy en día se conoce como RSA. En un esquema RSA, las claves se generan utilizando un módulo que se obtiene multiplicando dos números (a menudo, dos números primos grandes). En otras palabras, el estándar crea dos claves (una pública que se puede compartir y una privada que debe mantenerse en secreto). El algoritmo RSA fue descrito por primera vez en 1977 por Rivest, Shamir y Adleman (de ahí que RSA sean las iniciales de cada participante) y sigue siendo un componente clave de los criptosistemas de clave pública.


PKC como herramienta de cifrado

La criptografía de clave pública resuelve uno de los problemas de larga data de los algoritmos simétricos: la comunicación de claves utilizada tanto para el cifrado como para el descifrado. Enviar esta clave a través de una conexión insegura la expone a terceros que luego podrán leer cualquier mensaje cifrado con la clave compartida. Aunque existen técnicas criptográficas (como el protocolo de intercambio de claves Diffie-Hellman-Merkle) para resolver este problema, aún son vulnerables a ataques. Por el contrario, en la criptografía de clave pública, la clave utilizada para el cifrado se puede compartir de forma segura a través de cualquier conexión. Como resultado, los algoritmos asimétricos proporcionan un mayor nivel de seguridad en comparación con los simétricos.


Úselo para crear firmas digitales.

Otra aplicación de los algoritmos de cifrado asimétrico es la autenticación de datos mediante el uso de firmas digitales. En pocas palabras, una firma digital es un hash creado utilizando los datos del mensaje. Cuando se envía este mensaje, el destinatario puede verificar la firma utilizando la clave pública del remitente como forma de autenticar la fuente del mensaje y garantizar que no haya sido alterado. En algunos casos, las firmas digitales y el cifrado se aplican juntos, donde el propio hash puede cifrarse como parte del mensaje. Sin embargo, no todos los esquemas de firma digital utilizan técnicas de cifrado.


Restricciones

Aunque se puede utilizar para mejorar la seguridad informática y proporcionar verificación de la integridad de los mensajes, el cifrado de clave pública tiene algunas limitaciones. Debido a las complejas operaciones matemáticas involucradas en el cifrado y descifrado, los algoritmos asimétricos pueden ser bastante lentos cuando se trata de grandes cantidades de datos. Este tipo de cifrado también se basa en gran medida en el supuesto de que la clave privada permanecerá secreta. Si la clave privada se comparte o expone accidentalmente, se verá comprometida la seguridad de todos los mensajes cifrados con la clave pública correspondiente. También es posible que los usuarios pierdan accidentalmente sus claves privadas, en cuyo caso les resultará imposible acceder a los datos cifrados.


Aplicaciones de criptografía de clave pública.

Este tipo de cifrado se utiliza en muchos sistemas informáticos modernos para proporcionar seguridad a la información confidencial. Por ejemplo, los correos electrónicos pueden cifrarse utilizando técnicas de cifrado de clave pública para mantener la confidencialidad de su contenido. También utiliza el protocolo Secure Sockets Layer (SSL), que realiza comunicaciones seguras con sitios web, utilizando un método de cifrado asimétrico. Los sistemas PKC incluso se han explorado como un medio para proporcionar un entorno de votación electrónica seguro que permitiría a los votantes participar en las elecciones desde sus computadoras hogareñas.

La criptografía de clave pública también ocupa un lugar destacado en la tecnología blockchain y las criptomonedas. Cuando se configura una nueva billetera de criptomonedas, se crea un par de claves (claves pública y privada). La dirección pública se genera utilizando la clave pública y se puede compartir de forma segura con otros. Por otro lado, la clave privada se utiliza para crear firmas digitales y verificar transacciones y, por lo tanto, debe permanecer secreta. Una vez que se verifica una transacción confirmando el hash en la firma digital, se puede agregar al libro de contabilidad público de la cadena de bloques. Este sistema de verificación de firma digital garantiza que sólo la persona que posee la clave privada asociada a la billetera de criptomonedas pueda liberar fondos de ella. Cabe señalar que los cifrados asimétricos utilizados en aplicaciones de criptomonedas difieren de aquellos utilizados con fines de seguridad informática. Por ejemplo, Bitcoin y Ethereum utilizan una criptografía especializada conocida como Algoritmo de Firma Digital de Curva Excéntrica (ECDSA) para verificar las transacciones.

 Desde la seguridad informática hasta la verificación de transacciones criptográficas, la criptografía de clave pública desempeña un papel fundamental en la protección de los sistemas digitales modernos. Al utilizar claves públicas y privadas emparejadas, los algoritmos de cifrado asimétrico resuelven los problemas de seguridad fundamentales que presentan los cifrados simétricos. Aunque la criptografía de clave pública se ha utilizado durante muchos años, periódicamente se desarrollan nuevos usos y aplicaciones. Especialmente en el campo de blockchain y criptomonedas.