Criptografía de clave pública

Todos los sistemas de cifrado están basados en el concepto de clave. Una clave es la base de una transformación, normalmente matemática, de un mensaje ordinario en un mensaje ilegible. Durante siglos, la mayoría de los sistemas de cifrado se basaban en un cifrado de clave privada. El cifrado de clave pública es el único reto al cifrado de clave privada que ha aparecido en los últimos 30 años.

Cifrado de clave privada

Los sistemas de cifrado de clave privada utilizan una sola clave que comparten el remitente y el destinatario. Ambos deben poseer la clave; el remitente cifra el mensaje mediante la clave y el destinatario descifra el mensaje con la misma clave. Para poder establecer una comunicación privada, tanto el remitente como el destinatario deben mantener la clave en secreto. Este tipo de cifrado tiene características que lo hacen inadecuado para su uso general:
  • El cifrado de clave privada requiere una clave para cada par de personas que necesitan comunicarse de forma privada. El número necesario de claves aumenta considerablemente a medida que se incrementa el número de participantes.
  • Las claves se deben compartir por pares de comunicadores, por lo que las claves se deberán distribuir a los participantes. La necesidad de transmitir claves secretas las hace vulnerables al robo.
  • Los participantes sólo pueden comunicarse mediante un acuerdo previo. No puede enviar un mensaje cifrado utilizable a alguien de forma espontánea. Tanto una como la otra persona deben establecer acuerdos para comunicarse compartiendo claves.

El cifrado de clave privada también se denomina cifrado simétrico, porque se utiliza la misma clave para cifrar y descifrar el mensaje.

Cifrado de clave pública

El cifrado de clave pública utiliza un par de claves relacionadas matemáticamente. Un mensaje cifrado con la primera clave debe descifrarse con la segunda clave y un mensaje cifrado con la segunda clave debe descifrarse con la primera clave.

Cada participante en un sistema de claves públicas dispone de un par de claves. Una clave se designa como clave privada y se mantiene secreta. La otra clave se distribuye a quien lo desee; esta clave es la clave pública.

Cualquier usuario puede cifrar un mensaje utilizando su clave pública, pero sólo usted puede leerlo. Cuando recibe el mensaje, lo descifra utilizando la clave privada.

De forma parecida, puede cifrar un mensaje para cualquier otro utilizando su clave pública y, a continuación, descifrándola utilizando su clave privada. Entonces podrá enviar el mensaje de forma segura a través de una conexión no segura.

Este tipo de cifrado tiene características que lo hacen muy adecuado para su uso general:
  • El cifrado de clave pública sólo requiere dos claves por participante.
  • La necesidad de mantener el secreto es más fácil de cumplir: únicamente debe mantenerse secreta la clave privada y puesto que no necesita compartirse, es menos vulnerable al robo en la transmisión que la clave compartida en un sistema de claves simétricas.
  • Las claves públicas pueden publicarse, lo que elimina la necesidad de compartir previamente una clave secreta antes de la comunicación. Cualquiera que conozca la clave pública puede utilizarla para enviar un mensaje que sólo el usuario implicado puede leer.

El cifrado de clave pública también se denomina cifrado asimétrico, porque no puede utilizarse la misma clave para cifrar y descifrar el mensaje. A cambio, se utiliza una clave de un par de claves para deshacer el trabajo del otro.

Con el cifrado de clave simétrica, debe ir con cuidado con las claves robadas o interceptadas. En el cifrado de clave pública, en el que cualquier puede crear un par de claves y publicar la clave pública, el reto consiste en verificar que identidad del propietario de la clave pública. Nada impide que un usuario cree un par de claves y publique la clave pública bajo un nombre falso. El propietario listado de la clave pública no puede leer mensajes que están cifrados con dicha clave porque el propietario no posee la clave privada correspondiente. Si el creador de la clave pública falsa puede interceptar estos mensajes, dicha persona puede descifrar y leer mensajes que están pensados para alguien más. Para contrarrestar el potencial de claves olvidadas, los sistemas de claves públicas proporcionan mecanismos para validar claves públicas e información adicional con certificados digitales y firmas digitales.

Infraestructura de claves públicas (PKI)

PKI es una infraestructura de claves públicas que utiliza la tecnología de claves públicas para permitir que las aplicaciones interactúen de forma segura. PKI utiliza el cifrado de clave pública para proporcionar privacidad. En la práctica, sólo una cantidad pequeña de datos se cifra de esta manera. En general, una clave de sesión se utiliza con un algoritmo simétrico para transmitir la mayor parte de los datos de forma eficaz.

En transacciones comerciales, la confianza es más importante que la privacidad. PKI utiliza la clave privada para permitir que una aplicación firme un documento. Para que el destinatario autentique al remitente, es necesario una forma fiable de obtener la clave pública para el remitente. Esta clave pública se proporciona en forma de certificado digital, que se media a través de una entidad emisora de certificados (CA) de terceros fiable.