El cifrado asi­mé­tri­co, también conocido como cri­p­to­gra­fía asi­mé­tri­ca o de clave pública, se utiliza para proteger archivos, carpetas y unidades completas contra el acceso no au­to­ri­za­do e in­te­r­ca­m­biar mensajes co­n­fi­de­n­cia­les. Para este propósito, se emplean unas claves que sirven para cifrar y descifrar los datos.

Consejo

Para obtener in­fo­r­ma­ción detallada sobre el in­te­r­ca­m­bio seguro de datos, no te pierdas nuestro completo artículo sobre métodos de cifrado.

A di­fe­re­n­cia de la cri­p­to­gra­fía simétrica, con este método los usuarios no comparten una clave secreta común (clave privada), sino que cada usuario crea su propio par de claves, que consiste en una clave secreta o privada y una clave pública. Cualquier persona que tenga la clave pública puede enviar datos cifrados al pro­pie­ta­rio de la clave privada, verificar su firma digital o au­te­n­ti­car su identidad. A su vez, la clave privada permite descifrar los datos cifrados, generar firmas digitales o au­te­n­ti­car la identidad del usuario.

A co­n­ti­nua­ción, te ex­pli­ca­mos los pri­n­ci­pios, funciones, posibles apli­ca­cio­nes, ventajas e in­co­n­ve­nie­n­tes del cifrado asi­mé­tri­co.

¿Qué es la cri­p­to­gra­fía asi­mé­tri­ca?

El concepto de la cri­p­to­gra­fía asi­mé­tri­ca nació en 1975, por lo que este ámbito se considera muy joven, teniendo en cuenta que la historia de la cri­p­to­gra­fía se remonta a más de 2000 años. La mayor ventaja de la cri­p­to­gra­fía de clave pública es, al mismo tiempo, el mayor in­co­n­ve­nie­n­te del cifrado simétrico: las partes que se comunican no tienen que compartir una sola clave común, sino que cada una posee una clave privada distinta.

El método de clave secreta o cifrado simétrico esconde un problema que reside sobre todo en el in­te­r­ca­m­bio de las claves: como el de­s­ti­na­ta­rio debe conocer la clave secreta, cuantos más pa­r­ti­ci­pa­n­tes en la co­mu­ni­ca­ción compartan una clave, más confuso, complejo y, por lo tanto, más inseguro y vu­l­ne­ra­ble se vuelve este in­te­r­ca­m­bio.

El cifrado asi­mé­tri­co es una al­te­r­na­ti­va muy práctica a este método, ya que cada usuario tiene su propio par de claves.

Principio de la cri­p­to­gra­fía de clave pública

En el cifrado asi­mé­tri­co, cada pa­r­ti­ci­pa­n­te tiene un par de claves que consta de una clave pública y una clave privada. Ambas se mantienen unidas mediante una especie de llavero: con este sistema cri­p­to­grá­fi­co, un algoritmo ma­te­má­ti­co vincula es­tre­cha­me­n­te ambas claves, de manera que los datos que se cifran con la clave pública solo pueden de­s­ci­frar­se con la clave privada. Para ga­ra­n­ti­zar la pro­te­c­ción de los datos y la seguridad del cifrado simétrico, por lo tanto, es fu­n­da­me­n­tal que la clave privada se mantenga secreta para todos los demás pa­r­ti­ci­pa­n­tes de la co­mu­ni­ca­ción.

En la práctica, el remitente de los datos siempre necesita la clave pública del de­s­ti­na­ta­rio. En términos de cifrado, la clave pública tiene una función uni­di­re­c­cio­nal: permite cifrar los datos, pero no de­s­ci­frar­los, porque solo el de­s­ti­na­ta­rio puede hacerlo con su propia clave privada. No obstante, la clave pública no solo se utiliza para el cifrado, sino que también permite verificar las firmas digitales y au­te­n­ti­car a los pa­r­ti­ci­pa­n­tes.

Las claves se emiten ya en el primer contacto. Al mismo tiempo, la clave privada genera firmas digitales y, por lo tanto, puede au­te­n­ti­car­se para otros pa­r­ti­ci­pa­n­tes. En resumen, la cri­p­to­gra­fía asi­mé­tri­ca permite a cualquier persona acceder a una clave pública, pero descifrar los datos úni­ca­me­n­te mediante la clave privada, por lo que estos se in­te­r­ca­m­bian de forma muy segura.

¿Cómo funciona el cifrado asi­mé­tri­co?

Para iniciar el pro­ce­di­mie­n­to de la cri­p­to­gra­fía asi­mé­tri­ca, el de­s­ti­na­ta­rio genera su par de claves y comunica la clave pública a la otra parte, gua­r­dá­n­do­se la clave privada para sí. El proceso de tra­n­s­mi­sión es sencillo y se lleva a cabo a través de or­ga­ni­s­mos de ce­r­ti­fi­ca­ción o mediante los llamados se­r­vi­do­res de claves, en los que se puede almacenar la clave. El remitente codifica su mensaje con esta clave pública y puede enviarlo al de­s­ti­na­ta­rio como “texto secreto”. Desde el momento del cifrado, el de­s­ti­na­ta­rio solo podrá descifrar este mensaje con su clave privada. Por esta razón, en principio, el canal del mensaje puede elegirse li­bre­me­n­te: si el mensaje cifrado es in­te­r­ce­p­ta­do, su contenido permanece oculto para el atacante.

Este principio de uni­di­re­c­cio­na­li­dad conforma todo el cri­p­to­si­s­te­ma asi­mé­tri­co. Las dos claves son co­m­ple­ta­me­n­te in­de­pe­n­die­n­tes una de otra: incluso si un atacante conociera la clave pública, no le serviría para averiguar la clave privada. Para ga­ra­n­ti­zar­lo, la clave pública emplea números primos bien definidos que se mu­l­ti­pli­can y dan un resultado concreto. Por ejemplo, se utiliza un cálculo como el siguiente:

23 x 199 = 4577

La clave privada, por su parte, emplea ex­clu­si­va­me­n­te el resultado de este cálculo (en el ejemplo, el número 4577). Resulta casi imposible averiguar los números an­te­rio­res solo con este valor, porque la co­m­bi­na­to­ria es muy compleja. Hasta la fecha, no existen métodos o al­go­ri­t­mos ma­te­má­ti­cos que faciliten el cálculo anterior.

Nota

En este ejemplo, hemos utilizado números primos muy pequeños, pero, en la práctica, la cri­p­to­gra­fía asi­mé­tri­ca emplea números mucho más grandes, lo que hace que sea tan segura.

¿Dónde se usa el cifrado asi­mé­tri­co?

La cri­p­to­gra­fía de clave pública suele uti­li­zar­se en el tráfico de correo ele­c­tró­ni­co, como en el método de cifrado estándar S/MIME, en las firmas digitales y en pro­to­co­los cri­p­to­grá­fi­cos como SSL/TLS, SSH y HTTPS.

Consejo

El protocolo de tra­n­s­fe­re­n­cia de hi­pe­r­te­x­to seguro o HTTPS cifra los datos de forma asi­mé­tri­ca y, por lo tanto, los envía de manera mucho más segura que el famoso protocolo de tra­n­s­fe­re­n­cia de hi­pe­r­te­x­to o HTTP.

Por otro lado, los cri­p­to­si­s­te­mas asi­mé­tri­cos pueden co­m­bi­nar­se con métodos si­mé­tri­cos. En este caso, las claves se in­te­r­ca­m­bian primero mediante cifrado asi­mé­tri­co, pero la co­mu­ni­ca­ción posterior se cifra si­mé­tri­ca­me­n­te. Este sistema de cifrado híbrido se utiliza cuando los usuarios requieren la velocidad de la cri­p­to­gra­fía simétrica y la seguridad de la asi­mé­tri­ca.

Ejemplos de cifrado asi­mé­tri­co

Pro­ba­ble­me­n­te, el programa de cifrado más popular sea Pretty Good Privacy, más conocido por las siglas PGP. Se basa en la cri­p­to­gra­fía asi­mé­tri­ca y se utiliza para cifrar correos ele­c­tró­ni­cos. Al instalar el programa, se generan una clave pública y otra privada. La clave pública puede tra­n­s­fe­ri­r­se pe­r­so­na­l­me­n­te o al­ma­ce­nar­se en una base de datos central en la que todo el mundo puede buscar las claves de ciertos pro­pie­ta­rios. El remitente encripta sus datos con la clave pública y marca el correo ele­c­tró­ni­co o mensaje como cifrado con PGP. El de­s­ti­na­ta­rio puede hacerlo legible nue­va­me­n­te uti­li­za­n­do la clave privada.

Nota

OpenPGP, lanzado en 1997, se de­sa­rro­lló como una al­te­r­na­ti­va gratuita a PGP. Ac­tua­l­me­n­te, este software de código abierto cuenta con muchas ex­te­n­sio­nes que van más allá de la fu­n­cio­na­li­dad original de PGP.

También los métodos de firma están es­tre­cha­me­n­te re­la­cio­na­dos con la cri­p­to­gra­fía de clave pública. RSA es el método más utilizado para hacer firmas digitales. En este caso, el remitente codifica su mensaje con la clave privada, es decir, que “firma” su mensaje con RSA. Después, ya puede enviar el mensaje. El de­s­ti­na­ta­rio verifica la au­te­n­ti­ci­dad del mensaje e identidad del emisor con su clave pública.

El RSA se considera un pro­ce­di­mie­n­to de firma antiguo, pero probado. Otras al­te­r­na­ti­vas que generan o reconocen firmas digitales mediante un método muy similar son DSA (Digital Signature Algorithm o algoritmo de firma digital) y ElGamal.

Un ejemplo concreto de protocolo cri­p­to­grá­fi­co es el cifrado con SSL/TLS. Este protocolo de red garantiza una co­mu­ni­ca­ción segura, por ejemplo, entre el servidor web y el navegador. Al mismo tiempo, comprueba la au­te­n­ti­ci­dad del servidor. Para ello, SSL/TLS utiliza el cifrado híbrido, por lo que combina los métodos asi­mé­tri­co y simétrico. La clave pública está firmada por un organismo de ce­r­ti­fi­ca­ción, y el ce­r­ti­fi­ca­do re­su­l­ta­n­te, a su vez, está en­cri­p­ta­do. El ce­r­ti­fi­ca­do solo puede abrirse uti­li­za­n­do la clave pública del organismo de ce­r­ti­fi­ca­ción. Para este fin, el servidor web envía, por ejemplo, su clave pública ce­r­ti­fi­ca­da al navegador, que verifica el ce­r­ti­fi­ca­do. Si este es válido, el navegador genera una clave simétrica y la envía al servidor web. Ambos ahora uti­li­za­rán esta clave común durante el resto de la sesión SSL/TLS para cifrar si­mé­tri­ca­me­n­te su tráfico de datos.

Ventajas e in­co­n­ve­nie­n­tes del cifrado asi­mé­tri­co

El principal in­co­n­ve­nie­n­te de la cri­p­to­gra­fía de clave pública es la lentitud del proceso de cifrado. Además, se requiere co­n­si­de­ra­ble­me­n­te más re­n­di­mie­n­to in­fo­r­má­ti­co. Por lo tanto, como en el ejemplo del cifrado SSL me­n­cio­na­do an­te­rio­r­me­n­te, se ha de­sa­rro­lla­do un sistema híbrido que combina el sistema simétrico y el asi­mé­tri­co. Los antiguos problemas de este método, como la au­te­n­ti­ca­ción insegura y la alta vu­l­ne­ra­bi­li­dad al malware, ya se han resuelto mediante ce­r­ti­fi­ca­dos y firmas digitales, así como cri­p­to­si­s­te­mas basados en ID.

Se re­co­mie­n­da el cifrado híbrido para sacar partido a lo mejor de ambos mundos. El cifrado asi­mé­tri­co asume la tarea de di­s­tri­buir las claves, lo que evita el engorroso pro­ce­di­mie­n­to de tra­n­s­fe­re­n­cia de claves privadas de los cri­p­to­si­s­te­mas si­mé­tri­cos. El resultado es un proceso de cifrado seguro, rápido y práctico.

Ir al menú principal