La criptografía de clave pública (PKC), también conocida como criptografía asimétrica, es un marco que utiliza tanto una clave pública como una privada, a diferencia de la clave única utilizada en la criptografía simétrica. El uso de pares de claves le da a PKC un conjunto único de características y capacidades que se pueden utilizar para resolver desafíos inherentes a otras técnicas criptográficas. Esta forma de criptografía se ha convertido en un elemento importante de la seguridad informática moderna, así como en un componente crítico del creciente ecosistema de criptomonedas.
¿Cómo funciona la criptografía de clave pública?
En un esquema PKC, un remitente usa la clave pública para encriptar información, mientras que un destinatario usa la clave privada para desencriptarla. Debido a que las dos claves son diferentes entre sí, la clave pública se puede compartir de forma segura sin comprometer la seguridad de la privada. Cada par de claves asimétricas es único, lo que garantiza que un mensaje cifrado con una clave pública solo 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 vinculados matemáticamente, sus longitudes de clave son mucho más largas que las que se utilizan en la criptografía simétrica. Esta mayor longitud, normalmente entre 1.024 y 2.048 bits, hace que sea extremadamente difícil calcular una clave privada de su contraparte pública. Uno de los algoritmos más comunes para el cifrado asimétrico que se utiliza hoy en día se conoce como RSA.
En el esquema RSA, las claves se generan utilizando un módulo al que se llega multiplicando dos números (a menudo dos números primos grandes). En términos básicos, el módulo genera 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í, RSA) y sigue siendo un componente importante de los sistemas de criptografía 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, que es la comunicación de la clave que se utiliza tanto para el cifrado como para el descifrado. Enviar esta clave a través de una conexión insegura corre el riesgo de exponerla a terceros, quienes pueden leer los mensajes cifrados con la clave compartida.
Aunque existen técnicas criptográficas (como el protocolo de intercambio de claves Diffie-Hellman-Merkle) para resolver este problema, siguen siendo vulnerables a los ataques. En la criptografía de clave pública, por el contrario, 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 ofrecen un mayor nivel de protección en comparación con los simétricos.
Generando firmas digitales
Otra aplicación de los algoritmos de criptografía asimétrica es la de autenticar datos mediante el uso de firmas digitales. Básicamente, una firma digital es un hash creado con los datos de un mensaje. Cuando se envía ese mensaje, el destinatario puede verificar la firma utilizando la clave pública del remitente.
De esta forma, pueden autenticar la fuente del mensaje y asegurarse de que no haya sido manipulado. En algunos casos, las firmas digitales y el cifrado se aplican juntos, lo que significa que el propio hash puede estar cifrado como parte del mensaje. Sin embargo, cabe señalar que no todos los esquemas de firma digital utilizan técnicas de cifrado.
Limitaciones
Aunque se puede utilizar para mejorar la seguridad informática y proporcionar verificación de la integridad de los mensajes, PKC tiene algunas limitaciones. Debido a las complejas operaciones matemáticas involucradas en el cifrado y el descifrado, los algoritmos asimétricos pueden ser bastante lentos cuando se ven obligados a manejar grandes cantidades de datos.
Este tipo de criptografía también depende en gran medida de la suposición de que la clave privada permanecerá secreta. Si una clave privada se comparte o expone accidentalmente, la seguridad de todos los mensajes que se hayan cifrado con su clave pública correspondiente se verá comprometida. También es posible que los usuarios pierdan accidentalmente sus claves privadas, en cuyo caso les será imposible acceder a los datos cifrados.
Aplicaciones de la criptografía de clave pública
Muchos sistemas informáticos modernos utilizan este tipo de criptografía para proporcionar seguridad a la información confidencial. Los correos electrónicos, por ejemplo, se pueden cifrar utilizando técnicas de criptografía de clave pública para mantener la confidencialidad de su contenido.
El protocolo de capa de sockets seguros (SSL) que hace posibles conexiones seguras a sitios web también emplea criptografía asimétrica. Los sistemas PKC incluso se han explorado como un medio para proporcionar un entorno de votación electrónica seguro que potencialmente permitiría a los votantes participar en las elecciones desde sus computadoras personales.
PKC también ocupa un lugar destacado en la tecnología blockchain y criptomonedas. Cuando se configura una nueva billetera de criptomonedas, se genera un par de claves (claves públicas y privadas). La dirección de la billetera se genera utilizando la clave pública y se puede compartir de forma segura con otros. La clave privada, por otro lado, se utiliza para crear firmas digitales y verificar transacciones y, por lo tanto, debe mantenerse en secreto.
Una vez que se ha verificado una transacción al confirmar el hash contenido en la firma digital, esa transacción se puede agregar al libro mayor de blockchain. Este sistema de verificación de firma digital asegura que solo la persona que tiene la clave privada asociada con la billetera de criptomonedas correspondiente puede mover los fondos.
Cabe señalar que la criptografía asimétrica que se utiliza en las aplicaciones de criptomonedas es diferente de las que se utilizan con fines de seguridad informática. Bitcoin y Ethereum, por ejemplo, utilizan un algoritmo específico para verificar transacciones, conocido como el algoritmo de firma digital de curva elíptica (ECDSA). Además, la ECDSA crea firmas digitales sin el uso de cifrado. Esto significa que blockchain no necesita cifrado, a diferencia de lo que muchos tienden a creer.
Conclusiones
Desde la seguridad informática hasta la verificación de transacciones en criptomonedas, la criptografía de clave pública juega un papel importante en la seguridad de los sistemas digitales modernos. Mediante el uso de claves públicas y privadas emparejadas, los algoritmos de criptografía asimétrica resuelven los problemas de seguridad fundamentales que presentan los cifrados simétricos. Aunque PKC se ha utilizado durante muchos años, regularmente se desarrollan nuevos usos y aplicaciones para él, particularmente en el espacio blockchain y criptomonedas.
1 comentario en «¿Qué es la criptografía de clave pública y cómo funciona?»