Está en la página 1de 9

INFORME LABORATORIO 3

Asignatura: Seguridad en Redes

Integrantes: Villarreal Rosales Jorge Luis

Fecha de informe: 30 de noviembre de 2021

A. TÍTULO

Generar claves RSA en Matlab.

B. INTRODUCCIÓN

La seguridad de la información depende en gran medida de mecanismos de


encriptado capaces de girar entorno a la protección del triángulo CIA, ya que su
propósito es la de brindar soporte en confidencialidad, integridad y disponibilidad
de la información. Para ello se ha implementado dos grandes grupos de cifrado,
por una parte, están los simétricos con una única llave y por otro lado están los
asimétricos a los cuales pertenece el algoritmo RSA, donde cuentan con dos
llaves, las cuales son la llave pública y la llave privada.

Por lo general en RSA la llave pública es la que encripta y la privada es quien se


encarga de desencriptar, para ello se fundamenta en procesos matemáticos y
además depende el tamaño de la llave para brindar mayor seguridad en el
encriptado a pesar de que el procesamiento tarde más tiempo.

En este caso hemos empleado Matlab para poder desarrollar una interfaz gráfica
capaz de indicar el proceso llevado a cabo por RSA.

C. OBJETIVO DEL PROYECTO

Objetivo General.

• Desarrollar una interfaz gráfica para el proceso de criptografía mediante el


algoritmo RSA.

Objetivos Específicos.
• Analizar las operaciones matemáticas empleadas para el cálculo de
componentes esenciales en RSA.
• Entender el funcionamiento de GUI de Matlab para el desarrollo de
interfaces gráficas.
• Realizar un análisis del algoritmo RSA de criptografía asimétrica.

D. METODOLOGÍA

Figura 1. Metodología.

E. MARCO TEÓRICO

Criptografía

“La criptografía se refiere generalmente como “el estudio de secreto”. El cifrado es


el proceso de convertir texto normal a un formato legible. El descifrado es el
proceso de convertir texto cifrado en texto normal en el legible” (Medina Vargas &
Miranda Mnedez, 2015).

Criptografía Simétrica

La criptografía simétrica se refiere al conjunto de métodos que permiten tener


comunicación segura entre las partes siempre y cuando anteriormente se hayan
intercambiado la clave correspondiente que llamaremos clave simétrica. La
simetría se refiere a que las partes tienen la misma llave tanto para cifrar como
para descifrar. (Ángel, 2012)

Criptografía Asimérica

Se utiliza dos claves: clave pública, que es conocido por el público, que se utiliza
para el cifrado y la clave privada, que es conocida sólo por el usuario de esa clave,
que se utiliza para el descifrado. Las claves públicas y la privada están
relacionados entre sí por cualquier medio matemático. En otras palabras, los datos
cifrados por una clave pública pueden ser encriptados sólo por su clave privada
correspondiente. (Medina Vargas & Miranda Mnedez, 2015)

Figura 2. Proceso de clave para criptografía asimétrica. Recuperado de: (Medina Vargas & Miranda Mnedez, 2015, pág.
16)

Algoritmo RSA

Un el problema matemático es el de la factorización de un número entero n grande


(1024 bits, que equivale a un número de 308 dígitos), este número entero se sabe
es producto de dos números primos p,q de la misma longitud, entonces la clave
pública es el número n y la privada es p,q. El razonamiento del funcionamiento de
RSA es el siguiente:

F. RECURSOS MATERIALES Y EQUIPO

Entre los principales materiales y equipos empleados están:


Cantidad Denominación Imagen
1 Laptop ASUS TUF A15

1 MATLAB R2020b

G. DESCRIPCIÓN DEL DESARROLLO DE LA PRÁCTICA

Inicialmente se procede a ejecutar la GUIDE de Matlab, posteriormente se crea


una nueva GUI y damos en OK.

Figura 3. Creación de una GUI en Matlab.


Mediante el uso de texto estático, texto editable, botones y cajas de lista, se
procede a diseñar un panel que contenga la información que se domina en RSA, a
tal punto que se observe claramente como es el proceso de encriptado y
desencriptado.

Figura 4. Diseño de la interfaz gráfica para RSA.

El nombre de las variables para realizar los llamados e insertar el código para que
realice adecuadamente los cálculos se lo hace mediante la modificación del
campo “tag”.

Figura 5. Configuración de nombre de variables.

Posteriormente es necesario crear 2 funciones las cuales serán empleadas por el


programa realizado, para ello no hemos basado en el trabajo “Implementation of
RSA Algorithm” de Shaun Gomez. Las funciones son: “initialize” y “dec2bin”
Figura 6. Función initialize.

Figura 7. Función dec2bin.

Posteriormente en cada uno de los botones, especificaremos las operaciones que


va a realizar. Y una vez completadas se procede a ejecutar y observar el
funcionamiento como se lo especifica en las siguientes figuras.

Figura 8. Generar claves RSA.


Figura 9. Conversión a ASCII y Cifrado.

Figura 10. Descifrado mediante RSA

Figura 11. Programa completo de Algoritmo RSA.


H. RESULTADOS Y CONCLUSIONES

I. Resultados

• Los 3 botones implementados en la GUI permiten primeramente generar los


parámetros necesarios para poder obtener la llave privada, posteriormente
el segundo facilita la trasformación de texto en codificación ASCII y a su vez
realiza el proceso de cifrado, finalmente el tercero se encarga de
desencriptar y indicar el mensaje resultante.
• Las operaciones matemáticas parten de fórmulas ya establecidas, las
cuales dependen esencialmente de los números primos p, q y el
exponencial público y que por lo general se lo trabajo con un valor de 3
aunque esto puede cambiar y obtenerse con otro número primo.
• La criptografía realizada se fundamenta en ASCII y por ende se desarrolla
un programa que sea capaz de convertir cada carácter en su código ASCII.

J. Conclusiones

• El algoritmo RSA se enfoca en el encriptado del mensaje mediante el uso


de la llave pública, pero se desencripta mediante la llave privada, la cual se
la obtiene mediante el valor de d.
• RSA también puede encriptar con la llave privada y desencriptar con la llave
pública, pero se considera un proceso exclusivo para firma digital y
verificación de autenticidad. Debido a que si se desencripta con llave
publica, cualquier persona que disponga, podrá observar el contenido de un
mensaje.
• GUIDE de Matlab permite el desarrollo de interfaces gráficas capaces de
realizar operaciones mediante los códigos de línea implementados en su
funcionalidad. En este caso los 3 pushbuttons empleados son los que
tienen las operaciones necesarias de RSA.
K. Recomendaciones

• Diferenciar entre criptografía simétrica y asimétrica, ya que la una


permite clave privada y las otra tanto privada como pública.
• Verificar la correcta funcionalidad de Matlab y tratar de obtener una
versión más actualizada.
• Es necesario que se disponga de los 3 archivos en una única carpeta
para que las funciones sean llamadas adecuadamente.

L. BIBLIOGRAFÍA

Ángel, J. (2012). Criptografía Para Principiantes. Obtenido de SP1:


http://spi1.nisu.org/recop/www.seguridata.com/pdf/cbasica.pdf

Medina Vargas, Y., & Miranda Mnedez, H. (Junio de 2015). Comparación de


algoritmos basados en la criptografía simétrica DES, AES y 3DES.
Obtenido de Dialnet Universidad de La Rioja:
https://dialnet.unirioja.es/servlet/articulo?codigo=5286657

También podría gustarte