¿Cómo funciona la criptografía de clave pública?

La criptografía de clave pública, también conocida como criptografía asimétrica, utiliza dos claves separadas en lugar de una compartida: una clave pública y una clave privada. La criptografía de clave pública es una tecnología importante para la seguridad en Internet.

Objetivos de aprendizaje

Después de leer este artículo podrás:

  • Definir la criptografía de clave pública
  • Entender cómo funciona la criptografía de clave pública
  • Más información acerca de por qué la criptografía de clave pública es fundamental para el protocolo TLS/SSL

Contenido relacionado


¿Quieres más información?

Regístrate para recibir artículos de aprendizaje sobre temas de seguridad de Cloudflare.

Revisa la política de privacidad de Cloudflare para saber más sobre cómo Cloudflare gestiona tus datos personales.

Copiar enlace del artículo

¿Qué es la criptografía de clave pública?

La criptografía de clave pública es un método para encriptar o firmar datos con dos claves diferentes y hacer que una de las claves, la pública, esté disponible para que cualquiera pueda utilizarla. La otra clave se conoce como clave privada. Los datos encriptados con la clave pública solo pueden desencriptarse con la clave privada. Debido a este uso de dos claves en lugar de una, la criptografía de clave pública también se conoce como criptografía asimétrica. Es de uso generalizado, especialmente para TLS/SSL, lo que hace posible HTTPS .

¿Qué es una clave criptográfica?

En criptografía, una clave es dato que se utiliza para codificar los datos de manera que parezcan aleatorios; suele ser un número grande, o una cadena de números y letras. Cuando los datos sin encriptar, también llamados texto plano, se introducen en un algoritmo criptográfico utilizando la clave, el texto plano aparece en el otro lado como datos de aspecto aleatorio. Sin embargo, cualquiera que tenga la clave adecuada para desencriptar los datos puede volver a ponerlos en forma de texto plano.

Por ejemplo, supongamos que cogemos un mensaje de texto plano, "hola," y lo encriptamos con una clave; digamos que la clave es "2jd8932kd8." Encriptado con esta clave, nuestro simple "hola" ahora se lee "X5xJCSycg14=", lo que parece un dato basura aleatorio. Sin embargo, al desencriptarlo con esa misma clave, obtenemos de nuevo "hola".

Texto plano + clave = texto cifrado

hola + 2jd8932kd8 = X5xJCSycg14=

Texto cifrado + clave = texto plano:

X5xJCSycg14= + 2jd8932kd8 = hola

Este es un ejemplo de criptografía simétrica, en la que solo se utiliza una clave. En la criptografía de clave pública, habría dos claves. La clave pública encriptaría los datos, y la clave privada los desencriptaría.

¿Cómo utiliza TLS/SSL la criptografía de clave pública?

La criptografía de clave pública es extremadamente útil para establecer comunicaciones seguras en Internet (mediante HTTPS). El certificado SSL/TLS de un sitio web, que se comparte públicamente, contiene la clave pública, y la clave privada está instalada en el servidor de origen: es "propiedad" del sitio web.

Los protocolos de enlace TLS utilizan la criptografía de clave pública para autenticar la identidad del servidor de origen, y para intercambiar los datos que se utilizan para generar las claves de sesión. Un algoritmo de intercambio de claves, como RSA o Diffie-Hellman, utiliza el par de claves públicas y privadas para acordar las claves de sesión, que se utilizan para la encriptación simétrica una vez finalizado el protocolo de enlace. Los clientes y los servidores pueden acordar nuevas claves de sesión para cada sesión de comunicación, para que así los agentes maliciosos no puedan desencriptar las comunicaciones aunque identifiquen o roben una de las claves de sesión de una sesión previa.