Instituto Tecnológico de la Américas
Nombre:
Yatzel Agustin Santana Mazara
Matrícula:
2021-1190
Facilitador:
Rafael Ovalle
Materia:
Fundamentos de criptografía
Tema:
RSA
Fecha:
6 de abril del 2024
¿Qué es RSA en criptografía?
El rsa encriptacion es un algoritmo de cifrado de clave pública que desarrollaron en el
año 1979 Ron Rivest, Adi Shamir y Leonard Adleman. El RSA es un sistema
criptográfico que permite enviar mensajes cifrados sin tener que intercambiar una clave
privada y es el más utilizado para este fin. También permite realizar firma rsa digitales y
es un sistema que se basa en un problema matemático llamado «factorización de números
enteros».
El algoritmo de cifrado RSA también fue descubierto en 1973 por el matemático
inglés Clifford Cocks, quien trabajaba para el Cuartel General de Comunicaciones del
Gobierno, la agencia de inteligencia nacional del Reino unido. No obstante, el proyecto
fue descartado por el coste que tendría la tecnología para llevarlo a cabo. Lo anterior fue
revelado en 1997 y, durante ese periodo de tiempo, la información se mantuvo en secreto.
Por eso, se sabe que Rivest, Shamir y Adleman llegaron de forma independiente a la
misma conclusión que Cocks.
¿Cómo funciona el algoritmo RSA?
Ahora que hemos visto que es rsa en criptografía, veamos cómo funciona.
Para aprender qué es RSA en criptografía, es necesario entender cómo funciona su
algoritmo de cifrado. La seguridad de este sistema se basa en el problema de factorización
de números enteros, el cual consiste en encontrar el valor de dos números primos grandes
a partir de su producto.
Conforme al avance de la tecnología, estos dos números deberían hacerse más y más
grandes con el fin de dificultar la solución a dicho problema. De hecho, se cree que con
el desarrollo de computación cuántica este se logrará resolver.
Ahora bien, para explicar el algoritmo, partiremos del clásico ejemplo con cofres para
ilustrar cómo funciona un sistema de cifrado con clave pública.
Algoritmo RSA
En un rsa, Alice envía un mensaje en texto plano (M), en forma de un número m que es
menor que n. El mensaje cifrado (c) se calcula por medio de la siguiente operación:
c=m^e (mod n)
Donde e es la clave pública de Bob.
La forma en la que Bob descifra el mensaje de Alice es mediante la siguiente operación:
m=c^d (mod n)
Donde d es la clave privada de Alice.
Generación de claves
• Primero, se escogen dos números primos diferentes p y q, que deben ser
aleatorios, grandes y de una longitud similar.
• Se halla el producto entre p y q para hallar n. De modo que n = pq.
• Con la función φ de Euler, se calcula φ(n) = (p-1) * (q-1). Dado que φ(p) = p-1,
si p es primo; y si m y n son números primos, entonces φ(mn) = φ(m)φ(n).
• Después, se escoge un número natural e que sea menor que y primo de φ(n).
Aquí, e es el valor que se da a conocer como clave pública de cifrado.
• Finalmente, se encuentra la clave privada d por medio de una operación de
aritmética modular en la que d es el multiplicador inverso modular de e mod φ(n).
El resultado de este algoritmo es una llave pública (n,e), donde n es el módulo y e el
exponente de cifrado; y una llave privada (n,d), donde n es el módulo y d el exponente de
descifrado.
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.
En cuales ocasiones es necesario utilizar el algoritmo RSA
El algoritmo RSA es ampliamente utilizado en situaciones donde se requiere seguridad
en la comunicación y la autenticación de información. Algunas de las ocasiones en las
que es necesario utilizar el algoritmo RSA incluyen:
1. Cifrado de datos sensibles: El algoritmo RSA se utiliza para cifrar datos
sensibles, como contraseñas, información financiera y mensajes privados, antes
de enviarlos a través de redes públicas o inseguras. Esto garantiza que solo el
destinatario autorizado pueda descifrar y acceder a la información.
2. Autenticación de identidad: RSA se utiliza en la creación y verificación de
firmas digitales, lo que permite autenticar la identidad de los remitentes y
receptores de mensajes. Esto es crucial en entornos donde se necesita verificar la
autenticidad de los usuarios, como en el comercio electrónico, la banca en línea y
la autenticación de usuarios en sistemas informáticos.
3. Establecimiento de canales seguros: RSA se utiliza en la negociación de claves
de sesión seguras para establecer canales de comunicación seguros, como en el
protocolo SSL/TLS utilizado para la comunicación segura en Internet. Esto
garantiza que la información transmitida entre el cliente y el servidor esté
protegida contra el acceso no autorizado y la interceptación.
4. Firma y cifrado de documentos: El algoritmo RSA se utiliza en la firma digital
de documentos para garantizar su integridad y autenticidad. También se puede
utilizar para cifrar documentos antes de almacenarlos o enviarlos a través de redes
inseguras, protegiendo así la privacidad y la confidencialidad de la información.