Los datos son valiosos y, en las manos equivocadas, pueden causar daños a una persona, a un tercero o a una organización.

Por eso tenemos la encriptación, una forma de asegurar los datos para almacenarlos o durante las transferencias de datos a través de Internet.

Y en este artículo, echaremos un vistazo a la encriptación asimétrica.

Empecemos.

¿Qué es la encriptación?

Encryption

El cifrado es el proceso computacional de convertir datos a un formato difícil de descifrar (también conocido como texto cifrado). Se basa en un algoritmo de cifrado de cálculo robusto.

Así, pide a los ordenadores que codifiquen los datos para almacenarlos o transferirlos de forma segura. También significa que sólo las partes autorizadas pueden acceder a los datos.

En el núcleo de la encriptación se encuentran las claves criptográficas. Se trata de claves generadas matemáticamente, calculadas en función de otros parámetros de encriptación y basadas en el acuerdo entre emisor y receptor.

Tomemos un ejemplo de encriptación simple.

Así, usted (llamémosle Bob) quiere enviar un mensaje a John, su amigo de Internet, al que le gustan los textos cifrados.

Bob escribe el mensaje y luego pasa los datos por «encriptación» El algoritmo de cifrado que utiliza es sencillo. Primero, Bob desplaza el valor ASCII 4 puntos y crea el texto cifrado.

Así, los valores ASCII «A» se convierten en 65 a 69, lo que devuelve un asunto «E» En ASCII, E tiene un valor de 69. Siguiendo este sencillo método, Bob crea un mensaje y se lo envía a John.

Como John y Bob ya han acordado cómo codificar y descodificar, pueden enviarse mensajes el uno al otro.

Así, si Bob escribe «Hola, John», su texto cifrado devolverá «LIPPS0$NRLR».

El proceso de descodificación del mensaje que envió Bob se conoce como descifrado.

Para entenderlo, consulte la tabla ASCII.

Lea también: Los mejores conversores de texto a ASCII que debería probar

image-153

¿Qué es la encriptación asimétrica?

El cifrado asimétrico (también conocido como criptografía asimétrica) es un cifrado de clave pública. En este caso, el algoritmo lleva a cabo el cifrado y el descifrado con la ayuda de dos pares de claves:

  • Clave pública: La clave pública ayuda en la encriptación del mensaje.
  • Clave privada: La clave privada ayuda en el descifrado del mensaje. La clave privada también se conoce como clave secreta, ya que no se puede compartir y su propietario la mantiene confidencial.

Entonces, ¿cómo funciona la encriptación asimétrica?

Volvamos a Bob y John de nuestro ejemplo anterior.

Bob sabía que su método para enviar mensajes cifrados a John no era seguro. Después de todo, cualquiera puede forzar fácilmente la encriptación.

Y por eso eligió la encriptación asimétrica para enviar sus mensajes a John.

En ese caso, Bob pide primero la clave pública de John. Entonces, como ya conoce a John, puede pedírsela personalmente.

Si no, existen directorios de claves públicas (PKD) desde donde las entidades pueden registrarse y compartir su clave pública. De este modo, cualquiera que quiera enviar un mensaje seguro debe hacerse con la clave pública de esa persona.

Ahora, Bob puede utilizar el cifrado asimétrico para cifrar el mensaje con la clave pública del remitente, en este caso, la clave pública de John.

John recibe el mensaje y puede descifrarlo utilizando su clave privada.

Por otro lado, también es posible el camino inverso. Es decir, los datos pueden cifrarse y descifrarse utilizando una clave privada.

Así, si Bob cifra el mensaje con su clave privada, ¡John puede descifrarlo utilizando la clave pública de Bob!

Assymetric-Encryption

La encriptación asimétrica funciona porque se necesita tener acceso a dos claves para que funcione. Esto es diferente de la encriptación simétrica, en la que tanto la encriptación como la desencriptación se realizan con una sola clave.

¿Cómo funciona la criptografía asimétrica?

Para tener una idea clara de cómo funciona la criptografía asimétrica, tenemos que ver cómo funciona.

El proceso subyacente depende en gran medida de un algoritmo que utiliza una función matemática bien preparada. La función se encarga de la generación del par de claves.

Sin embargo, la generación de claves varía en función del acuerdo entre el emisor y el receptor.

Además, la mayoría de herramientas y lenguajes de programación ya cuentan con bibliotecas predefinidas para manejar la criptografía. Así que si opta por codificar criptografía asimétrica, tendrá que utilizar esas bibliotecas y no perder el tiempo reinventando la rueda.

El proceso habitual que tiene lugar cuando una persona decide enviar un mensaje cifrado a otra es el siguiente:

➡️ El remitente y el destinatario generan claves públicas y privadas en función de algunos parámetros.

➡️ A continuación, el remitente busca la clave pública del receptor en el directorio de claves públicas.

➡️ Una vez obtenida la clave pública, el remitente la utiliza para cifrar el mensaje.

➡️ A continuación, lo envía al destinatario, que lo descifra con su clave privada.

➡️ El receptor puede decidir responder al mensaje, y se repite el mismo proceso (sólo que a la inversa).

Ventajas de la encriptación asimétrica

El cifrado asimétrico ofrece muchas ventajas. Entre ellas se incluyen:

  • Autenticación de mensajes: El cifrado asimétrico ofrece una excelente autenticación de mensajes, que permite verificar un mensaje y su remitente. Por eso las firmas digitales son uno de los mejores casos de uso de la criptografía asimétrica.
  • Conveniente: La aplicación de la criptografía asimétrica es cómoda, ya que la distribución de claves es fácil y accesible. Las claves públicas son fácilmente accesibles, por lo que los remitentes pueden cifrar fácilmente un mensaje con la clave pública del receptor. Por otro lado, el receptor puede descifrar el mensaje con su clave privada.
  • Detecta la manipulación: La criptografía asimétrica también detecta cualquier forma de manipulación durante el tránsito.
  • Permite el no repudio: Funciona de forma similar a los documentos firmados físicamente y, por tanto, no puede ser negada por el remitente.

A continuación, hablaremos de los contras de la encriptación asimétrica.

Contras de la encriptación asimétrica

Las desventajas de utilizar la encriptación asimétrica incluyen:

  • Lentitud: La encriptación asimétrica es lenta, por lo que no es ideal para transferir grandes cantidades de datos.
  • Claves públicas no autenticadas: Ofrece un modelo abierto en el que las claves públicas son de libre acceso. Sin embargo, no hay forma de verificar la autenticidad de la clave general y su asociación con un individuo. Esto confiere la carga de verificar su autenticidad al usuario.
  • Clave privada no recuperable: No existe ningún mecanismo para recuperar la clave privada. Si se pierde, los mensajes nunca podrán ser descifrados.
  • Si la clave privada se filtra, puede comprometer la seguridad: Si la clave privada se ve comprometida, puede provocar fugas de datos o mensajes.

A continuación, exploraremos algunos de los casos de uso del cifrado asimétrico.

Casos de uso de la encriptación asimétrica

#1. Firmas digitales

Digital-Signatures

Las firmas digitales son comunes hoy en día. Utilizan el algoritmo Rivest-Shamir-Adleman (RSA). Genera dos claves conectadas matemáticamente: una pública y otra privada. De este modo, la firma digital se crea utilizando una clave privada y puede verificarse o descifrarse fácilmente utilizando la clave pública del firmante.

#2. Correo electrónico cifrado

Los correos electrónicos pueden enviarse de forma segura a través de Internet. El contenido del correo electrónico se cifra con la clave pública y se descifra con la clave privada.

#3. SSL/TLS

SSLTLS

SSL/TLS es un protocolo seguro para comunicarse a través de la red. Utiliza encriptación simétrica y asimétrica para crear una conexión segura entre emisor y receptor.

En la mayoría de los casos, utiliza el cifrado simétrico. Aún así, puede necesitar utilizar criptografía asimétrica cuando ambas partes generan sus claves de sesión, lo que requiere una encriptación asimétrica para verificar la identidad del servidor de origen.

#4. Criptomonedas

Cryptocurrencies-

Uno de los casos de uso más comunes de la criptografía asimétrica es la criptodivisa. En este caso, se utilizan las claves pública y privada para realizar el cifrado.

La criptografía de clave pública funciona bien con las criptodivisas ya que la clave pública se pone a disposición para la transferencia, mientras que las claves privadas funcionan para desbloquear transacciones y recibir criptodivisas. Entre las cripto populares que utilizan la encriptación asimétrica se encuentra Bitcoin.

#5. Navegación cifrada

Los navegadores también pueden utilizar la encriptación asimétrica para asegurar sus datos durante la transferencia. Por ejemplo, después de abrir su navegador e ir a un sitio, notará el protocolo HTTPS delante de la URL. La‘s’ aquí significa seguro. Para lograr una conexión segura, el navegador realiza un «handshake» con el servidor, en el que ambas partes deciden cómo cifrar los datos.

Los navegadores pueden utilizar tanto la encriptación simétrica como la asimétrica para llevar a cabo el apretón de manos. Sin embargo, la encriptación asimétrica facilita la creación de una conectividad segura.

En los escenarios del mundo real, los navegadores son lo suficientemente inteligentes como para utilizar ambos tipos de cifrado para lograr una conectividad segura.

#6. Compartir claves para la criptografía de clave simétrica

La encriptación de clave asimétrica también sirve para compartir claves simétricas a través de una conexión.

Cifrado simétrico frente a asimétrico

Las diferencias entre simétrico y asimétrico son las siguientes.

Cifrado asimétricoCifrado simétrico
ClavesRequiere dos claves para funcionar. La clave pública cifra el mensaje, mientras que la clave privada lo descifra. También es posible la viceversa.La encriptación simétrica sólo requiere una única clave. La clave cifra y descifra el mensaje.
Tamaño del texto cifradoEl texto cifrado generado por la encriptación asimétrica tiene una longitud similar a la del mensaje o mayor.Hay muchos algoritmos de cifrado asimétrico populares, como RSA, ECC, EL, Gamal, Diffie-Hellman, etc.
Caso de uso idealLos algoritmos populares de cifrado simétrico incluyen RC4, DES, 3DES y AES.El texto cifrado generado por el cifrado simétrico tiene una longitud similar o inferior a la del mensaje.
Velocidad y eficacia.El proceso de cifrado es relativamente más lento en comparación con el cifrado simétrico. Esto hace que sea menos eficaz para enviar grandes cantidades de datos.El proceso de encriptación es más rápido que el de la encriptación asimétrica. Esto lo hace eficiente para enviar grandes cantidades de datos.
AlgoritmosLos algoritmos populares de encriptación simétrica incluyen RC4, DES, 3DES y AES.Los algoritmos populares de encriptación simétrica incluyen RC4, DES, 3DES y AES.
Tamaño de la claveLos tamaños de clave pueden ser de 2048 bits o más.Los tamaños de clave son de 128 o 256 bits.
FinalidadEl cifrado asimétrico puede utilizarse para el cifrado de datos, la autenticación y la creación de un canal de conexión seguro.La encriptación simétrica se utiliza sobre todo para realizar transferencias masivas de datos.

¿Cuándo utilizar la encriptación asimétrica?

Debería utilizar la encriptación asimétrica cuando:

  • Busca una opción más segura para la encriptación y el envío de mensajes.
  • Está enviando pequeñas cantidades de datos, ya que la encriptación asimétrica es lenta e inadecuada para grandes transferencias de datos.
  • Está buscando confirmar firmas digitales.
  • Trabaja con criptomonedas y desea autorizar transacciones confirmando la identidad.

Palabras finales

La encriptación asimétrica está en el núcleo de diferentes tecnologías. Encontrará muchos usos, desde TLS/SSL hasta la verificación de firmas digitales.

Además, gracias a las bibliotecas de criptografía ya disponibles, podrá implementar rápidamente la criptografía asimétrica en su herramienta y lenguaje de programación preferidos. No tiene que reinventar la rueda y escribir usted mismo la criptografía asimétrica.

A continuación, consulte un artículo detallado sobre la criptografía simétrica.