Centro de información

¿Qué es el cifrado RSA y cómo se compara con otros métodos de cifrado?

El mundo funciona gracias a la comunicación. Todos deben enviar y recibir información. Desafortunadamente, la digitalización y el fácil acceso a Internet han necesitado la necesidad de enviar comunicaciones privadas, ya que no todos en línea son confiables.

La humanidad siempre ha encontrado formas de enviar mensajes ocultos que solo el destinatario podría interpretar. Esta forma de comunicación se llama criptografía, refiriéndose a la capacidad de cifrar información que requiere cifrados específicos o métodos para decodificar.

El cifrado es fundamental para una sociedad digital funcional y segura. Evita el fácil acceso a información personal y confidencial por parte de ejecutores maliciosos con una conexión a Internet. También es una preocupación significativa dado que el costo total promedio de las fugas de datos de 50 millones a 60 millones de registros alcanzó los $387 millones en 2022.

El cifrado RSA es uno de esos criptosistemas para el descifrado de mensajes privados que utiliza un algoritmo de clave pública. Para comprender mejor qué es, responderemos la pregunta: "¿Qué es el cifrado de datos y el algoritmo de cifrado de clave pública?".

Explicación del cifrado de datos

El cifrado de datos implica disfrazar la información como texto cifrado. El texto cifrado es ininteligible para personas no autorizadas. Por el contrario, descifrar o descifrar implica convertir texto cifrado en el formato original. El cifrado manual se remonta al Imperio Romano. Sin embargo, hoy en día el cifrado es un proceso básico de criptología y es sinónimo de ocultar información a través de métodos electrónicos.

Las computadoras aplican un algoritmo para cifrar los datos. Un algoritmo es un conjunto de instrucciones o procedimientos para realizar tareas específicas en bloques de datos. Una clave es un nombre de cifrado personal que solo conocen el usuario o transmisor del mensaje y el destinatario previsto.

En la actualidad, existen dos tipos principales de cifrado:

  • El cifrado simétrico utiliza la misma clave para cifrar y descifrar datos, como el estándar de cifrado avanzado (AES).
  • El cifrado asimétrico también se denomina criptografía de clave pública porque requiere un par de claves, una pública para el cifrado y una privada para la descifrado. El algoritmo Rivest Shamir Adleman es un ejemplo común.

RSA funciona porque las claves de cifrado seleccionadas aleatoriamente de longitud suficiente son casi impregnables.

Algoritmo de cifrado de clave pública

También se denomina algoritmo asimétrico donde el remitente y el receptor utilizan diferentes claves para cifrar y descifrar datos. El algoritmo asimétrico asigna a cada emisor un par de claves:

  • Una clave pública para el cifrado
  • Una clave privada para descifrar datos

Aunque las dos claves están vinculadas, es imposible derivar la clave privada de la pública o descifrar los datos mediante una clave pública. Como su nombre indica, la clave pública es bien conocida, pero las claves privadas son secretas y solo están disponibles para los usuarios que las poseen. En resumen, todos pueden enviar mensajes al usuario usando sus claves públicas, pero solo el destinatario previsto puede descifrar los mensajes usando su clave privada.

¿Qué es el cifrado RSA?

RSA es el algoritmo de clave pública más utilizado. Las iniciales RSA corresponden a Rivest Shamir Adleman, en honor al matemático y los dos informáticos que describieron públicamente el algoritmo por primera vez en 1977.

Muchos protocolos, como Secure Shell (SSH), SSL-TLS, S/MIME y OpenPGP, dependen del cifrado RSA y de las funciones seguras de firma digital.

El sistema de cifrado RSA resuelve lo que antes era un problema significativo en la criptografía: cómo enviar un mensaje codificado a alguien sin compartir previamente el código con la persona.

Digamos que quiere decirle a alguien un secreto. Si está justo a su lado, puede susurrarlo. Sin embargo, si está a kilómetros de usted, no podrá hacerlo. Necesitará usar el teléfono o escribirlo y enviarlo por correo. Desafortunadamente, estos canales de comunicación son inseguros y cualquier persona con suficiente motivación puede interceptar el mensaje.

Una solución para evitar el espionaje es cifrar el mensaje. Significa agregarle un código que lo convierte en un lío desbarado. Si usa un código lo suficientemente complejo, solo aquellos con acceso al código pueden acceder al mensaje original. De lo contrario, seguirá siendo ilegible.

Si compartió el código con su amigo de antemano, puede enviar mensajes cifrados en cualquier momento porque solo dos tienen el código para leer el contenido original.

Pero, ¿qué pasa si no compartió el código de antemano? ¿Cómo se comunica de forma segura? Este es un problema fundamental que aborda la criptografía utilizando esquemas de cifrado de clave pública o cifrado asimétrico como RSA.

El cifrado RSA permite a los usuarios cifrar mensajes con un código llamado clave pública que pueden compartir abiertamente. Debido a las propiedades matemáticas del algoritmo RSA específico, una vez que un usuario cifra un mensaje con una clave pública, solo una clave privada puede descifrarlo. Los usuarios tienen un par de claves públicas y privadas y estas últimas se mantienen en secreto.

Los sistemas de cifrado de clave pública difieren de los cifrados de clave simétrica, que utilizan la misma clave para el cifrado y el descifrado. Por lo tanto, RSA es útil para comunicarse en casos en los que los usuarios no han distribuido claves de forma segura de antemano.

El uso del cifrado RSA

El cifrado RSA no es adecuado para cifrar archivos completos o mensajes, ya que consume más recursos y es menos eficaz que el cifrado de clave simétrico. Por lo tanto, es una práctica general utilizar el cifrado RSA junto con otros sistemas de cifrado o para cifrar firmas digitales para demostrar la integridad y autenticidad de los mensajes.

Las firmas digitales ayudan a autenticar y verificar archivos y documentos. Impiden la manipulación durante la transmisión de documentos oficiales y otros documentos confidenciales y evitan su falsificación o manipulación. Sin embargo, las firmas digitales utilizan claves privadas para el cifrado y claves públicas para el descifrado para autenticar el origen de la firma.

Los usuarios generalmente cifrarán un archivo con un algoritmo de clave asimétrica y utilizarán cifrado RSA para cifrar la clave simétrica. Por lo tanto, solo una clave privada RSA puede descifrar la clave simétrica utilizada y sin ella no es posible descifrar el mensaje.

Hoy en día, diferentes sistemas utilizan el cifrado RSA, incluidos OpenSSL, cryptlib, wolfCrypt y otras bibliotecas criptográficas. RSA también se utiliza ampliamente en navegadores web, chats por correo electrónico, VPN y otros canales de comunicación.

Además, RSA garantiza conexiones seguras entre servidores VPN y clientes. Bajo protocolos como OpenVPN, los usuarios pueden usar el algoritmo RSA para protocolos de enlace TLS para intercambiar claves y configurar canales de comunicación seguros.

Cómo funciona el cifrado RSA

Las matemáticas que admiten el cifrado RSA son bastante complicadas de explicar en detalle. Hay varios conceptos para analizar antes de profundizar en el algoritmo RSA en criptografía. Esto incluye:

  • Funciones de captura
  • Generación de números primos
  • Función infantil de Carmichael
  • Generación de claves públicas y privadas

Funciones de trampilla

Las ecuaciones que son fáciles de calcular en una dirección e increíblemente duras en reversa se denominan funciones de captura. La premisa subyacente de la criptografía RSA es que el algoritmo es relativamente fácil de calcular en una dirección y casi imposible a la inversa. Por ejemplo, si le dieran 543,111 como producto de dos números primos, ¿podría calcular los dos primos?

Incluso con una calculadora, es difícil saber por dónde empezar, pero cambiar las cosas las hace mucho más fáciles porque:

  • 807*673 = 543,111

Aún así, con 543,111 y un número primario, es fácil averiguar el otro como sigue:

  • 543,111/807 = 673

El cifrado RSA utiliza números significativamente mayores. Por ejemplo, en RSA de 2048 bits, las claves tendrían 617 dígitos.

Las funciones de captura son la base del funcionamiento de los esquemas de cifrado de clave pública y privada. Sus propiedades permiten compartir claves públicas sin revelar la clave privada ni poner en peligro el mensaje. 

Generación de números primos

La generación de las claves es el primer paso del cifrado de datos y el proceso utiliza dos números primos (p y q) seleccionados con una prueba de primalidad. Estos son algoritmos que encuentran de manera eficiente números primos para el cifrado, como la prueba de primalidad Ranbin-Miller. Los números primos deben ser grandes y estar relativamente alejados entre sí para dificultar el descifrado de las claves.

Generación de claves públicas y privadas

Las claves públicas RSA son números primos y módulo n. Módulo (mod) es una operación de módulo que significa el resto que queda después de dividir un lado o número por otro, como por ejemplo:

  • 10 mod 3 = 1 (3 pasa a 10 tres veces con un resto de 1)

La siguiente es la fórmula para generar la clave pública:

  • C = me mod n

Después de hacer todas las matemáticas y aplicar la clave pública (c=me mod n), el dato cifrado final es el texto cifrado (c).

Las claves privadas son las únicas claves que los usuarios pueden usar para descifrar el texto cifrado con una clave pública, y deben ser de un par de claves similar. Las claves privadas se componen de d y n y, como ya conocemos n, es fácil calcular d mediante la fórmula:

  • d = 1/e mod λ(n)

El ejemplo de algoritmo RSA anterior muestra que las matemáticas involucradas en el cifrado son complicadas y, cuando se hacen bien, dan como resultado una solución segura.

Beneficios del cifrado RSA

Existen muchas ventajas al utilizar el cifrado RSA, entre ellas:

  • Seguridad: la criptografía RSA tiene un algoritmo seguro que protege la transmisión de datos.
  • Criptografía de clave pública: RSA utiliza un algoritmo de criptografía de clave pública para la seguridad. Significa que utiliza dos claves diferentes para cifrar y descifrar datos.
  • Intercambio de claves: dado que el algoritmo RSA utiliza dos claves para cifrado y descifrado, es posible intercambiar claves secretas sin enviar realmente la clave privada a través de la red. Permite el cifrado y la transmisión segura de datos sin enviar claves de descifrado de antemano.
  • Firmas digitales: el algoritmo RSA es perfecto para firmas digitales porque el remitente puede firmar un documento o mensaje utilizando una clave privada mientras el receptor verifica la firma utilizando una clave pública.

Desafíos del cifrado RSA

RSA enfrenta algunos desafíos que limitan su uso en algunos casos debido a la capacidad de los atacantes de los puntos vulnerables. Por ejemplo, implementa una clave larga en su algoritmo de cifrado. Los algoritmos AES son irrompibles, pero los asimétricos, como RSA, se basan en el tamaño de sus claves para dificultar su descifrado.

Por lo tanto, las claves RSA más largas son más seguras y difíciles de descifrar que las más cortas. Por ejemplo, los investigadores utilizaron la factorización de primos para descifrar una clave de cifrado RSA de 768 bits en dos años.

Tomó recursos significativos, pero el hecho de que es posible siempre debería tener en cuenta las conversaciones sobre la seguridad del criptosistema RSA. Si bien es posible que las personas no tengan la capacidad de descifrar dichas cifrados, los gobiernos pueden hacerlo porque tienen más recursos a su disposición.

El NIST recomienda una longitud de clave mínima de 2048 bits, pero las organizaciones están recurriendo a longitudes de clave de 4096 bits para aumentar la seguridad.

Otras desventajas de RSA son:

  • Velocidad de procesamiento lenta: el algoritmo RSA tiene una velocidad de procesamiento lenta en comparación con otros algoritmos de cifrado al lidiar con grandes cantidades de datos. No siempre es adecuado para aplicaciones como aquellas que requieren cifrado y descifrado regulares de grandes cantidades de datos.
  • Tamaño de clave grande: la criptografía RSA requiere el uso de claves de gran tamaño para la seguridad. Por lo tanto, requiere más potencia computacional, recursos y almacenamiento.
  • Vulnerabilidad a ataques de canal lateral: el algoritmo es vulnerable donde un atacante usa información filtrada a través de canales secundarios para extraer información clave privada. Estos canales incluyen consumo de energía, análisis de tiempo y radiación electromagnética. 
  • Generación de claves débiles: por ejemplo, si los dos números primos seleccionados están demasiado cerca o si uno de los números que componen uno de los pares clave es demasiado pequeño, el algoritmo se vuelve más fácil de solucionar.

¿Qué tan seguro es el cifrado RSA?

A pesar de las vulnerabilidades mencionadas, actualmente es relativamente seguro utilizar RSA siempre que los usuarios lo implementen correctamente y utilicen claves largas y difíciles de descifrar. Las implementaciones que no utilizan números primos de tamaño adecuado o que presentan otras vulnerabilidades no son seguras.

Siempre que los usuarios sean conscientes de las debilidades y vulnerabilidades potenciales del algoritmo de cifrado RSA, pueden usarlo de forma segura para compartir claves y otras tareas, como firmas digitales que requieren cifrado de clave pública.

¿La tecnología futura como la computación cuántica afectará el algoritmo RSA en la criptografía?

El cifrado RSA en línea es seguro por el momento, pero la llegada de la computación cuántica podría plantear problemas en el futuro. Las computadoras cuánticas pueden solucionar fácilmente ciertos problemas que actualmente consideramos extremadamente difíciles. Dado que esta dificultad es lo que hace que los sistemas de cifrado estén protegidos, es seguro afirmar que el tamaño actual de las claves RSA será cada vez más vulnerable.

Las computadoras cuánticas solucionarán fácilmente el problema de la factorización de enteros. Sin embargo, este futuro aún está lejos porque las computadoras cuánticas aún están en desarrollo y se utilizan principalmente en entornos de investigación. Los actores de la industria de la ciberseguridad también buscan constantemente mejorar los algoritmos de clave pública para garantizar su seguridad en un mundo poscuántico.

El relleno de cifrado asimétrico óptimo (OAEP) es ahora el relleno estándar principal para el cifrado de claves públicas RSA. El relleno permite formatear los mensajes antes de cifrarlos para alcanzar niveles de seguridad más elevados, descartando los ataques básicos.

Conclusión

Veritas Technologies es una empresa internacional de administración de datos con sede en Estados Unidos. Trabajamos para solucionar sus desafíos de administración de datos y ayudar a proteger los datos confidenciales de peligros como ciberataques, errores humanos o catástrofes naturales.

Veritas ayuda a organizaciones de todos los tamaños a superar las complejidades de proteger y administrar sus datos críticos para el negocio. Nuestra cartera de productos integrada proporciona una experiencia de administración y servicios de datos unificados y ofrece un rendimiento y una versatilidad inigualables desde el núcleo a la nube.

Ofrecemos otras soluciones de última generación, como Veritas Backup Exec para pequeñas empresas y Veritas InfoScale para almacenamiento de datos y recuperación después de un desastre. Nuestras soluciones facilitan el cumplimiento de las principales leyes de privacidad de datos como HIPAA, GDPR y CCPA.


Los clientes de Veritas incluyen el 95 % de la lista Fortune 100, y NetBackup™ es la opción número uno para las empresas que buscan proteger grandes cantidades de datos.

Descubra cómo Veritas mantiene sus datos completamente protegidos a través de cargas de trabajo virtuales, físicas, en la nube y heredadas con los servicios de protección de datos negocios de empresas.

 

Preguntas más frecuentes

El cifrado implica la transformación de datos en texto cifrado, un formato aleatorio e ilegible que requiere una clave de descifrado para descifrarlo.

El Rivest-Shamir-Adleman (RSA), que lleva el nombre de sus desarrolladores, es una técnica de cifrado asimétrico que utiliza dos claves de cifrado diferentes pero vinculadas (privada y pública). El cifrado RSA utiliza claves opuestas para cifrar y descifrar datos.

RSA utiliza dos claves: privada y pública. Una clave privada RSA genera firmas digitales, mientras que la clave pública verifica las firmas digitales. Además, la clave pública RSA también cifra claves de datos AES o DES, mientras que la clave privada RSA es para recuperación.

El cifrado RSA tiene varios usos, incluidas redes privadas virtuales (VPN), navegadores web y servicios de correo electrónico. Productos y algoritmos conocidos, como el algoritmo Pretty Good Privacy (PGP), también utilizan criptografía RSA.

RSA protege la información confidencial, como los detalles financieros, y protege las transacciones como las tarjetas de crédito. Las organizaciones también utilizan cifrado RSA para cifrar información privada en correos electrónicos y navegadores web.

Veritas Technologies ofrece soluciones de software para la administración de datos empresariales a fin de ayudar a las organizaciones a proteger sus datos críticos. También ofrece protección de datos, preparación para el cumplimiento, optimización del almacenamiento y servicios de administración de datos en la nube.

Sí, pueden hacerlo porque el cifrado protege la información privada y los datos confidenciales. También mejora la seguridad de la comunicación y las transmisiones entre servidores y clientes.