Está en la página 1de 21

1 Seguridad en redes.

UTPL 1

Facultad: Ingeniería
Escuela: Electrónica
Asignatura: Seguridad en redes

Practicas No 2, 3 y 4
Tema: Encriptado, Funciones hash y Firma digital
Nombre: David Luzón

Contenidos

Operación del algoritmo de función hash MD5


Operación del algoritmo de función hash SHA-1
Funcionamiento de la Firma Digital

Objetivos Específicos
Observar el comportamiento del algoritmo de funciones hash MD5.
Observar el comportamiento del algoritmo de funciones hash SHA-1.
Identificar las similitudes y diferencias entre las funciones hash MD5 y SHA-1.
Que el estudiante sea capaz de identificar las ventajas que ofrece la firma digital.

Materiales y Equipo

PC con Windows instalado y Máquina Virtual KALI.


Software CriptoRes y ExpoCrip instalado. (Descargar del EVA)
Archivos de trabajo varios adjuntos a la práctica y el informe de práctica con los ítems solicitados.

Introducción Teórica

SHA-1 (Secure Hash Algorithm o Algoritmo Hash Seguro).


Este estándar fue introducido el 17 de Abril de 1995, y especifica un algoritmo Hash seguro,
para calcular una representación de un mensaje o archivo de datos. Para un mensaje de una longitud
máxima de 264 bits como entrada, SHA-1 produce como salida una cadena de 160 bits llamada
"Mensaje Resumen". El mensaje resumen puede ser introducido a un algoritmo de firma digital (o
DSA por sus siglas en ingles), el cual genera o verifica la firma del mensaje. Firmar el mensaje
resumen en lugar del mensaje original provee además, eficiencia en el proceso, debido a que el
mensaje resumen es, usualmente, mucho menor en tamaño que el original. El mismo algoritmo
Hash con el que se firmo el mensaje, debe ser utilizado por el receptor para verificar la firma digital.
El SHA-1 es llamado seguro debido a que, no es factible computacionalmente, encontrar
un mensaje que corresponda a un mensaje resumen dado, o encontrar dos diferentes mensajes que
produzcan el mismo mensaje resumen.

MD5 (Message Digest Algorithm).


Este algoritmo toma como entrada un mensaje de longitud arbitraria y produce una salida de 128
bits, la cual representa la huella o un mensaje resumen de la entrada. Es además,
computacionalmente improbable producir dos mensajes que tengan el mismo mensaje
2 Seguridad en redes. UTPL 2

resumen, o de obtener el mensaje original a partir de un mensaje resumen.

El algoritmo MD5 fue diseñado para ejecutarse muy rápidamente en computadoras personales de 32
bits, además de que no requiere grandes tablas de substitución y puede ser codificado de forma muy
compacta.

Este algoritmo es una extensión del algoritmo para resumir MD4. MD5 es un poco más lento
que MD4 pero se considera más seguro. MD5 se diseñó porque las revisiones críticas existentes
señalaron que, MD4 fue quizás adoptado por su rapidez y no por su seguridad. Debido a que MD4
fue diseñado para ser excepcionalmente rápido, se encuentra “ en el filo" en termino de riesgos de
ataques cripto-analíticos exitosos. MD5 sacrifica un poco de velocidad en su cálculo, por mucha más
seguridad. Incorpora algunas recomendaciones hechas por varios analizadores, y contiene varias
optimizaciones. El Algoritmo MD5 se hace de dominio público para revisiones y posibles
adopciones como un estándar.

MD4 es un algoritmo de resumen del mensaje (el cuarto en la serie) diseñado por el profesor Ronald
Rivest del MIT. Implementa una función criptográfica de hash para el uso en comprobaciones de
integridad de mensajes. La longitud del resumen es de 128 bits.

Firma Digital
La firma digital de un documento es el resultado de aplicar cierto algoritmo matemático,
denominado función hash, al contenido. Esta función asocia un valor dentro de un conjunto
finito (generalmente los números naturales) a su entrada. Cuando la entrada es un documento, el
resultado de la función es un número que identifica casi unívocamente al texto. Si se adjunta este
número al texto, el destinatario puede aplicar de nuevo la función y comprobar su resultado con el
que ha recibido.

Para que sea de utilidad, la función hash debe satisfacer dos importantes requisitos. Primero, debe
ser difícil encontrar dos documentos cuyo valor para la función "hash" sea idéntico. Segundo, dado
uno de estos valores, debería ser difícil recuperar el documento que lo produjo.
Algunos sistemas de cifrado de clave pública se pueden usar para firmar documentos. El
firmante cifra el documento con su clave privada y cualquiera que quiera comprobar la firma y ver el
documento, no tiene más que usar la clave pública del firmante para descifrarla.

Existen funciones "hash" específicamente designadas para satisfacer estas dos importantes
propiedades. SHA y MD5 son dos ejemplos de este tipo de algoritmos. Para usarlos un documento
se firma con una función "hash", cuyo resultado es la firma. Otra persona puede comprobar la firma
aplicando la misma función a su copia del documento y comparando el resultado con el del
documento original. Si concuerdan, es casi seguro que los documentos son idénticos.
3 Seguridad en redes. UTPL 3

PRACTICA No1

Procedimiento

Operación del algoritmo de función hash MD5

1. Hacer clic en el botón inicio de la barra de tareas de Windows, seleccionar Todos los
programas, hacer clic en la aplicación CriptoRes. Con lo cual iniciará la pantalla que se
observa en la figura 1.

2. En la barra de menú de la ventana de trabajo principal, hacer clic en la opción Seguimientos


> MD5. Con lo cual se nos despliega la ventana que se observa en la figura 2.

3. En la sección Datos de entrada de esta ventana, seleccionar la opción Cadena de texto y en la


sección Tipo de Seguimiento, seleccionar la opción A nivel de bloques. Luego, introducir
los mensajes que se muestran a continuación:
a. Mensaje1 = abcd
b. Mensaje2 = Esta es una prueba de la función hash MD5
c. Mensaje3 = ESTA ES UNA PRUEBA DE LA FUNCIÓN HASH MD5

4. Para cada uno de los mensajes introducidos, obtener su función hash haciendo clic en el
botón Transformar y copiar a continuación los valores de dichas funciones.
a. Hash1= E2FC714C4727EE9395F324CD2E7F331F
b. Hash2= 1E0A37636AC1F469DBB6B467D9F23588
c. Hash3= 1DFFABCBAE08AF87B78B86C3A8F4C4CF

5. Compare las funciones hash obtenidas a partir de los mensajes 2 y 3 obtenidas en


el numeral anterior y anote sus conclusiones al respecto.

Son diferentes debido a que en el mensaje 2 se usa minúsculas y en el mensaje 3 mayúsculas esto
origina que el resumen o valor de hash sea diferente.

6. Obtener el mensaje 1 original a partir de la función hash 1. ¿Es posible realizar


este procedimiento? Explique sus conclusiones a continuación:
No se puede realizar esto debido a que la función hash es unidireccional por lo tanto es imposible
encontrar el mensaje a partir de la función.

7. Hacer un seguimiento del mensaje 3 a nivel de bloques. Guardar el resultado, que se puede
observar en la pestaña Seguimiento del algoritmo, en un archivo de texto llamado
prac7md5bloques.txt.
4 Seguridad en redes. UTPL 4

8. Hacer un seguimiento del mensaje 3 a nivel de pasos. Guardar el resultado, que se puede
observar en la pestaña Seguimiento del algoritmo, en un archivo de texto llamado
prac7md5pasos.txt.
5 Seguridad en redes. UTPL 5

9. Analizar ambos archivos y observar las operaciones efectuadas por el algoritmo


MD5 tanto en la operación por bloques como en la operación por pasos.

En la operación por pasos trabaja con números binarios y compuertas para encontrar la función hash,
en cambio en la operación por bloques trabaja con números hexadecimales y va intercambiado por cada
ronda la posición de estos.

10. Introducir por teclado el siguiente texto y calcular su función hash. Guardar el
resultado en un archivo de texto.
a. Mensaje4 = BEBA COCA COLA
6 Seguridad en redes. UTPL 6

11. A continuación, introducir por teclado el siguiente texto y vuelva a calcular su función
hash. Guardar el resultado en un archivo de texto.
a. Mensaje5 = BEBA BOCA COLA

12. Comparar la función hash de salida de ambos mensajes y comprobar que al cambiar
un solo bit del mensaje (la letra C por la B) cambian más de la mitad de los bits de su
función hash o resumen.
Mensaje 4
11101011110010010111110011010110010001110010101000111111110110111110010100111
011000010011111011011100010101110101000011010000111
Mensaje 5
10010110011110101001100111110101010111001111011001001001011100111100010101010
011001101110100110000001000101001111011110101110010

Si al realizar este cambio de letra más de mitad de los bits cambia en la salida.

13. Haciendo uso de una calculadora científica obtenga el equivalente en binario de la función
hash para realizar esta comprobación.
7 Seguridad en redes 7

Figura 2: Ventana de Seguimiento del algoritmo MD5

14. Calcular la función hash del archivo neruda.txt y del archivo neruda.doc; los cuales se
encuentran en el directorio del instalador de la aplicación.

15. Observe que el contenido de ambos archivos es el mismo. Explique cual es la razón por la
cual sus funciones hash no son idénticas también.
El archivo .doc tiene más bytes que el archivo .txt por esta razón los mensajes no idénticos.

16. Cerrar la ventana de Seguimiento del algoritmo MD5.


8 Seguridad en redes 8

Operación del algoritmo de función hash SHA-1

1. Hacer clic en el botón inicio de la barra de tareas de Windows, seleccionar Todos los
programas, hacer clic en la aplicación CriptoRes. Con lo cual iniciará la pantalla que se
observa en la figura 1.

2. En la barra de menú de la ventana de trabajo principal, hacer clic en la opción Seguimientos


> SHA-1. Con lo cual se nos despliega la ventana que se observa en la figura 3

Figura 3: Ventana de Seguimiento del algoritmo SHA-1

3. En la sección Datos de entrada de esta ventana, seleccionar la opción Cadena de texto y en la


sección Tipo de Seguimiento, seleccionar la opción A nivel de bloques. Luego, introducir
los mensajes que se muestran a continuación:
a. Mensaje1 = abcd
b. Mensaje2 = SHA-1 es el estándar actual de funciones hash
c. Mensaje3 = ESTA ES UNA PRUEBA DE LA FUNCIÓN HASH SHA-1

4. Para cada uno de los mensajes introducidos, obtener su función hash haciendo clic en el
botón Transformar y copiar a continuación los valores de dichas funciones.
a. Hash1= 81FE8BFE87576C3ECB22426F8E57847382917ACF
b. Hash2= 8AB47E3EEC51E974DA04497F135904FBBA07A3FC
c. Hash3= B26FBCF8036C702C3E939E5BB1101CF9E0101DD0

5. Hacer un seguimiento del mensaje 3 a nivel de bloques. Guardar el resultado, que se puede
observar en la pestaña Seguimiento del algoritmo, en un archivo de texto llamado prac7sha-
1bloques.txt.
9 Seguridad en redes 9

6. Hacer un seguimiento del mensaje 3 a nivel de pasos. Guardar el resultado, que se puede
observar en la pestaña Seguimiento del algoritmo, en un archivo de texto llamado prac7sha-
1pasos.txt.
1 Seguridad en redes 1
0 0
7. Comparar los resultados de los archivos obtenidos en los numerales anteriores con los
obtenidos en los numerales 7 y 8 de la sección 1 haciendo uso del algoritmo
MD5. Completar la siguiente tabla de similitudes y diferencias.

SIMILITUDES DIFERENCIAS
SHA-1 y MD5 operan utilizando cuatro vueltas cada SHA-1 realiza 20 operaciones en cada vuelta, en
uno. cambio MD5 realiza 16 operaciones por vuelta.
SHA-1 y MD5 representan el byte menos significativo a la MD5 representa el byte menos significativo a la derecha al
derecha. inicio para luego operarlo, SHA-1 realiza esa operación al
final.
SHA-1 realiza 20 operaciones en cada vuelta, en cambio MD5 los bits menos significativos los ubica a la derecha al
MD5 realiza 16 operaciones por vuelta. comienzo, SHA-1 no hace eso.
Ambos regresan un número hexadecimal SHA-1 utiliza doble XOR al realizar sus operaciones, en
independientemente de cuál sea la entrada. cambio MD5 utiliza XOR y OR. Son más largas las
operaciones de SHA-1
Las palabras del bloque 1 del mensaje siempre serán 16 (16 Los valores iniciales en MD5 son (A,B,C y D) en SHA-1
Palabra) son (A,B,C,D y E)

8. Introducir por teclado el siguiente texto y calcular su función hash. Guardar el resultado en
un archivo de texto.
a. Mensaje4 = Cuenta atrás: 3210
1 Seguridad en redes 1
1 1
9. A continuación, introducir por teclado el siguiente texto y vuelva a calcular su función
hash. Guardar el resultado en un archivo de texto.
a. Mensaje5 = Cuenta atrás: 3211

10. Comparar la función hash de salida de ambos mensajes y comprobar que al


cambiar un solo bit del mensaje (el carácter 0 por el 1) cambian más de la mitad de los
bits de su función hash o resumen. Haciendo uso de una calculadora científica
obtenga el equivalente en binario de la función hash para realizar esta comprobación.
Mensaje 4
110110110011100000011010110101111101101010011011111001011001001100010011101101100110
000100000101111111010100001010010100110001111100011011010011001101111001110

Mensaje 5
101101101101100010010000011011010011000101011111100011100100011011001010110000010010
1111111001001101110111001011101100000001101100110110110011011010101010010101

Si al realizar este cambio de caracter más de mitad de los bits cambia en la salida.
1 Seguridad en redes 1
2 2
11. Calcular la función hash del archivo cien.txt y del archivo cien.doc; los cuales se
encuentran en el directorio del instalador de la aplicación.

12. Observe que el contenido de ambos archivos es el mismo. Explique cual es la razón por
la cual sus funciones hash no son idénticas también.
El archivo .doc tiene más bytes que el archivo .txt por esta razón los mensajes no idénticos.

13. Cerrar la ventana de Seguimiento del algoritmo SHA-1.

14. En la barra de menú de la ventana de trabajo principal, hacer clic en la opción


Criptosistemas y utilizar el algoritmo MD5 y SHA-1 para calcular la función hash o
resumen de cualquier archivo, dentro de la PC asignada, con un tamaño de
algunos MBytes. Comparar el tiempo requerido por la aplicación en cada uno de los
casos y anotar los resultados a continuación.
Tamaño del archivo = 2909184 bytes
Tiempo MD5 = 140ms
Tiempo SHA-1 = 32 ms
¿Qué se puede concluir a raíz de los resultados obtenidos?
El algoritmo SHA-1 es más rápido que el md5

15. Cerrar la aplicación CriptoRes.


1 Seguridad en redes 1
3 3

PRACTICA No3
Funcionamiento de la Firma Digital

1. Hacer clic en el botón inicio de la barra de tareas de Windows, seleccionar Todos los
programas, hacer clic en la aplicación ExpoCrip. Con lo cual iniciará la pantalla que se
observa en la figura 4.

Figura 4: Ventana principal de aplicación Sistemas de Cifra Exponencial

2. En la barra de menú de la ventana de trabajo principal, hacer clic en la opción Firmas >
Firma RSA. Con lo cual se nos despliega la ventana que se observa en la figura 5.

3. Introducir los parámetros que se detallan a continuación, en las casillas destinadas para ello
en la aplicación. Estos parámetros son necesarios para el correcto funcionamiento del
algoritmo RSA.
a. p = 266677
1 Seguridad en redes 1
4 4
b. q = 724153 c. e = 617

Figura 5: Ventana de Firma Digital RSA

4. En la sección Texto a firmar, ingresar el siguiente mensaje: Firma digital con


algoritmo RSA.
1 Seguridad en redes 1
5 5

5. Luego, hacer clic en el botón Realizar Firma. Y anotar la firma de dicho mensaje a continuación
en formato hexadecimal.
Firma=11C543B7A79672DFA6A0C8B215EAD45F9086D930221174F65A691B80E34E19E03E69C
6

6. Comprobar la firma del mensaje anterior haciendo clic en el botón Comprobar


Firma.

7. Modifique un carácter del texto en claro y vuelva a solicitar la comprobación de la firma. ¿Cuál
es el resultado obtenido en esta ocasión y detalle sus conclusiones al
respecto?

La firma es incorrecta debido a que ya se registró la firma y al cambiar un carácter este no será correcto

8. Con los parámetros que se indican a continuación, firmar el archivo hacker.txt que se encuentra
en la carpeta de instalación de la aplicación.
a. p = 15704900959651293774270521395753
b. q = 70180796165277040349245703851057
c. e = 65537

9. Comprobar la firma del apartado anterior. Luego, cambiar una coma por un punto en el texto y
volver a comprobar la firma.
1 Seguridad en redes 1
6 6

10. Indique cual es la importancia de la firma digital en el proceso de aseguramiento de la


información.
 Elimina los riesgos de suplantación de identidad, alteración o adulteración de documentos,
confidencialidad, rechazo o repudio sobre documentos previamente firmados.
 Potencia el desarrollo de negocio, a través de Internet para el envío de documentos firmados
digitalmente, fundamentales para el comercio y gobierno electrónico sin papeles y jurídicamente
seguro.
 Ahorro de tiempo y costos, ya que podrán realizar muchas de las tareas de negocio de forma
telemática sin moverse del lugar de operación.
1 Seguridad en redes 1
7 7
PRACTICA No4

Funcionamiento de cifrado, descifrado y firma digital en Linux con GnuPG (GPG)

GPG es una herramienta de cifrado muy potente y fácil de usar, que en principio, a la mayoría no nos hace
falta, pero puede que se nos presente la necesidad de enviar algo por medio inseguros (porque no haya más
remedio), haciéndolo de esta forma podremos hacerlo sin miedo a que el contenido sea leído y cambiado.

1. Ejecutamos la máquina virtual KALI Linux. Y abrimos una consola. Primero verificamos que esté
instalado la aplicación mediante el siguiente comando: gpg -h. Deberá aparecer una lista de
opciones. Por lo general KALI Linux ya dispone de este programa de cifrado y descifrado.

2. Cifrado y Descifrado Simétrico de archivos: Descargaremos de la plataforma EVA el archivo


nerudga.txt. Tras copiar este archivo de texto a la carpeta /home usamos el comando gpc -c
neruda.txt, nos aparecerá un cuadro que nos pide la contraseña (ingresar qwerty y se generará un
archivo neruda.txt.gpg. (Este archivo deberá ser subido junto al informe)

3. Para descifrar utilizamos el comando gpg -d [archivo] (e introduciendo la clave de alta seguridad,
en este caso qwerty).

4. Cifrado Asimétrico: Para poder cifrar asimétricamente primero tenemos que crear la pareja de
claves (pública y privada) con el comando gpg --gen-key.

5. Se pedirá su nombre ingrese su primer nombra, luego el correo ingrese el correo de la UTPL.
Luego se le pedirá una clave (ingresaremos qwertyutp1). Y empezará a generar las claves. El
proceso tardará algunos minutos. Realice acciones como ingresar aleatoriamente caracteres en el
teclado para ayudar a generar más rápido las claves.
1 Seguridad en redes 1
8 8

6. Una vez que culmine el proceso usamos el comando gpg - - list-secret-key. Se generará la lista de
claves con su ID, que se indica en la figura encerrado en la línea roja. Copiar ese ID.

7. Luego, vamos a exportar la clave pública ingresar el comando gpg –output cpublica.gpg --export
[ID copiado]

8. S
e generará en la carpeta de trabajo (/home) el archivo con la clave pública. Enviar este archivo por
correo electrónico a un compañero que Ud. elija. Luego ese compañero o Ud. con la clave de otro
compañero encriptará un archivo de texto que el creará con un mensaje, de la siguiente manera.

9. Copiará el archivo enviado por correo a su espacio de trabajo en este caso /home. Luego lo
importará desde consola con el siguiente comando gpg --import cpublica.gpg. Se mostrarán la
clave importada. Adjunte capturas de pantalla.

10. Encriptará el mensaje con la clave publica de su compañero con el comando gpg --encrypt --
recipient [ID_clave_importada] [archivo_a_encriptar]. Se le generará un archivo encriptado de
extensión *.gpg. Adjunte capturas de pantalla.
1 Seguridad en redes 1
9 9

11. E
nviar por correo este archivo al compañero que le envió su clave pública. Y cópielo a su especio de
trabajo en este caso /home. Desencripte el mensaje con el comando gpg -d [archivo_encriptado]. Y
verifique que mensaje le envió su compañero. Escríbalo a continuación y compruebe con su
compañero. Adjunte capturas de pantalla.

12. Firmar un documento: Para firmar un documento crearemos un archivo de texto con cualquier
mensaje con el nombre archivosinfirmar.txt. Luego lo firmamos con el comando gpg -u [ID_clave]
--output archivofirmado.gpg --sign archivosinfirmar.txt. Se creará el archivo firmado. Adjunte
capturas de pantalla.
2 Seguridad en redes 2
0 0
13. Verificamos el archivo firmado mediante el comando gpg --verify archivofirmado.gpg. Adjunte
capturas de pantalla.

Investigación Complementaria

 ¿A qué personaje se le debe el concepto de Firma Digital?


Este concepto fue introducido por los científicos Diffie y Hellman en 1976.
 ¿Cómo puede ser comprobada la validez de una firma digital?
Cuando recibe un documento firmado, es posible que desee validar su(s) firma(s) para verificar el firmante y el
contenido firmado. Dependiendo de cómo se haya configurado la aplicación, la validación puede realizarse
automáticamente. La validez de firma está determinada por la verificación de la autenticidad del estado de
certificado de ID digital y la integridad del documento de la firma:
La verificación de la autenticidad confirma que el certificado del firmante o sus certificados principales existen
en la lista de identidades de confianza del validador.
La verificación de integridad de documento confirma si el contenido firmado ha cambiado después de su
firma. Si cambia el contenido, la verificación de integridad de documento confirma si el contenido ha
cambiado de un modo permitido por el firmante.
 Investigue 5 aplicaciones en los que la firma digital es utilizada sobre documentos digitales.
Acrobat Reader: Si de lo que estamos hablando es de incluir nuestra firma en un PDF lo cierto es que lo
único que se necesita es tener el certificado instalado en el navegador y Acrobat Reader, uno de los lectores
de PDF más utilizado en la empresa. Aparece la opción Rellenar y Firmar, que tras pulsarlo nos permite
acceder al botón Colocar firma.
Microsoft Office: En el caso de Microsoft Office permite la firma de documentos creados con Word y con
Excel, ya sea de forma visible o invisible. Para ello hay que utilizar la opción de insertar una línea de firma en
un documento. A partir de aquí, al hacer doble clic sobre el cuadro de texto que se crea, nos permite añadir
comentarios a la firma, como dirección o teléfono del firmante, propósito de la firma como creador o
aprobación del documento, así como seleccionar el certificado de firma.
LibreOffice: En el caso de LibreOffice es igualmente muy sencillo realizar la firma electrónica con nuestro
certificado digital. Basta con seleccionar la opción en el menú Archivo de Firmas digitales desde donde
seleccionamos nuestro certificado digital. Cualquier cambio posterior en el documento invalidad dicha firma,
por lo que es necesario tener guardados los cambios.
Xolido Sign: Esta es una buena solución para aquellas empresas que deseen funcionalidades personalizadas y
avanzadas. Dispone de una versión gratuita. Nos permite seleccionar todos los archivos y documentos que
queremos firmar para hacerlo de una sola vez. Una vez firmados genera un nuevo documento con dicha firma
manteniendo el original. Dispone de opciones de firma a través de la nube que pueden ser muy interesante
para determinadas empresas.
ClickSign: Es otra de las soluciones avanzadas que también dispone de una aplicación gratuita, aunque muy
limitada en su funcionalidad, ya que sólo permite firmar PDFs. Es muy sencilla de utilizar e intuitiva, ya que
basta con utilizar el menú contextual, el botón derecho del ratón para que aparezca la opción de firmar
documento.
 Escriba 5 conclusiones sobre la firma digital.
2 Seguridad en redes 2
1 1
 Mayor seguridad e integridad de los documentos.
 El contenido del documento electrónico firmado no puede ser alterado, por lo que se se
garantiza la autenticación del mismo y la identidad del firmante.
 Se garantiza la confidencialidad, el contenido del mensaje solo será conocido por quienes
estén autorizados a ello.
 Se asegurará la autoría e identidad de la persona que firma el documento y la integridad de un
documento electrónico.
 Se pueden realizar trámites legales a cualquier hora del día y sin necesidad de
desplazamiento.

Bibliografía

Técnicas Criptográficas de Protección de Datos, A. Fuster, D. de La Guía, L. Hernández, F.


Montoya y J. Muñoz, Ed. Ra-Ma, España, 2000.
Diseño e Implementación de Prototipo de Laboratorio de Criptografía, VíctorEscobar,
Rafael Gallardo, Carlos Zelaya, Tesis Universidad Don Boso, 2005.
Criptografía y Seguridad en Computadores, Manuel José Lucena López, España, 1999.
[1] firma-digital, «http://www.firma-digital.cr,» [En línea]. Available: http://www.firma-
digital.cr/que_es/antecedentes.aspx.
[2] C. ROBERTO, «www.pymesyautonomos.com,» 29 Mayo 2016. [En línea]. Available:
https://www.pymesyautonomos.com/tecnologia/siete-soluciones-para-firmar-documentos-de-forma-digital.