Introducción al cifrado de clave pública

El cifrado de clave pública también se denomina cifrado de clave asimétrica. Como el nombre en sí dice una clave asimétrica, se utilizan dos claves diferentes para el cifrado de clave pública. Una clave se usa para el proceso de cifrado y otra clave para el proceso de descifrado. Una vez que se decide la clave para el cifrado y descifrado, no se utilizará ninguna otra clave. De estas dos claves, una clave se denomina clave pública y otra se denomina clave privada.

Supongamos que desea comunicarse con amigos a través de Internet, para iniciar la comunicación de forma segura necesita obtener claves públicas y privadas. La clave privada es una clave secreta, debe mantenerla como un secreto. Si la clave privada se dispone a otra parte, existe la posibilidad de un ataque a través de la tercera parte.

Supongamos que X quiere comunicarse con Y de forma segura, entonces X e Y deben tener una clave pública y una clave privada.

  • X debería mantener su clave privada en secreto.
  • X debe informar su clave pública a Y.
  • Deberías mantener su clave privada en secreto.
  • Y debe informar su clave pública a X.

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

El funcionamiento del cifrado de clave pública se explica a continuación:

Caso 1

Cuando X quiere comunicarse con Y, X usa la clave pública de Y para cifrar el mensaje, esto es posible porque Y comparte su clave pública con X.

  • X envía el mensaje cifrado a Y.
  • Y recibe el mensaje de X.
  • Y descifra el mensaje utilizando su clave privada, es decir, Y.

Nota: Solo Y sabe que su clave privada y su mensaje se pueden descifrar usando la clave privada de Y. La ventaja de esto es que la parte no puede descifrar el mensaje porque no conoce la clave privada de Y. Solo la clave privada de Y puede descifrar el mensaje.

Caso 2

Cuando Y quiere comunicarse con X, Y usa la clave pública de X para cifrar el mensaje. Esto es posible porque X comparte su clave pública con Y.

  • Y envía el mensaje cifrado a X.
  • X recibe el mensaje de Y
  • X descifra el mensaje usando su clave privada, es decir, X.

Componentes

Los siguientes son los componentes del cifrado de clave pública:

  • Texto sin formato : el texto que está en un formato legible y que cualquier persona puede entender se llama texto sin formato. El texto sin formato se utiliza como entrada para el proceso de cifrado.
  • Texto cifrado: es el texto que se convierte a formato legible en un formato no legible utilizando el algoritmo de cifrado que se denomina texto cifrado. El texto cifrado es una salida del proceso de cifrado. Está en un formato no legible y nadie lo entiende.
  • Clave pública: la clave que todos conocen se conoce como clave pública. Por lo general, se usa una clave pública para el proceso de cifrado en el lado del remitente.
  • Clave privada: la clave que no todos conocen, que se mantiene en secreto se conoce como clave privada. La clave privada se usa para el proceso de descifrado en el lado del receptor.
  • Algoritmo de cifrado: el algoritmo que se utiliza para convertir texto plano en texto cifrado se conoce como algoritmo de cifrado.
  • Algoritmo de descifrado: el algoritmo que se utiliza para convertir texto cifrado en texto sin formato se conoce como algoritmo de descifrado.

Algoritmos de cifrado de clave pública

Los siguientes son los algoritmos de cifrado de clave pública.

Algoritmo RSA

RSA es el algoritmo de cifrado de clave pública más popular. El algoritmo RSA se basa en el cálculo matemático donde identificar y multiplicar un número primo grande es fácil pero difícil de factorizar su factor. Las claves privadas y públicas utilizadas en el RSA son números primos grandes.

Pasos para los algoritmos RSA:

  • Seleccione dos números primos grandes X e Y.
  • Calcule el producto N = X * Y.
  • Elija la clave pública E de manera que no sea un factor de (X - 1) e (Y - 1).
  • Elija la clave privada D de modo que la siguiente ecuación se vuelva verdadera.
  • (D * E) mod (X - 1) * (Y - 1) = 1
  • Para el cifrado, calcule CT como CT = PT E mod N.
  • Envíe el CT al receptor.
  • Para descifrar, calcule PT como PT = CT D mod N.
Nota: En el algoritmo RSA, la selección y generación de una clave pública y la clave privada es una tarea crítica.

Algoritmo de criptografía ElGamal

ElGamal es otro algoritmo de cifrado de clave pública popular.

ElGamal Key Generation:

  • Seleccione el número primo grande P como clave pública y Q como clave privada.
  • Seleccione la segunda clave de cifrado como E1.
  • Seleccione la tercera clave de cifrado como E2, de modo que E2 = E Q mod P El cifrado de clave ElGamal.
  • Seleccione el número aleatorio R.
  • Calcule el texto cifrado como CT = E1 R mod P.
  • Calcular el segundo texto cifrado CT2 = (PT * E2 R) mod P Descifrado de clave ElGamal
  • Calcular texto sin formato como PT = (CT2 * (CT Q) - 1) mod P.

Artículos recomendados

Esta es una guía para el cifrado de clave pública. Aquí discutimos el cifrado de clave pública, sus componentes y cómo funciona junto con ejemplos. También puede consultar los siguientes artículos para obtener más información:

  1. ¿Qué se puede hacer con el cifrado de clave simétrica?
  2. Criptografía vs Cifrado
  3. Tipos de algoritmos simétricos
  4. Las características clave de Dropbox