Seguridad en aplicaciones distribuidas utilizando la herramienta PVM
View/ Open
Date
2001Author
Vázquez Gómez, Francisco Javier
FRANCISCO JAVIER VÁZQUEZ GÓMEZ
Metadata
Show full item record
Export citation
Abstract
En el presente trabajo se expone una propuesta que busca hacer seguro el proceso de comunicación basado en la herramienta PVM. Con ello, se busca que los diversos sistemas que trabajen tanto de forma distribuida como paralela mantengan un flujo de mensajes con un alto índice de seguridad, logrando con esto tener aplicaciones robustas en cuanto a la confidencialidad, autenticación e integridad. En el trabajo realizado se han analizado las diversas extensiones que involucran el paso de Mensajes. De dicho análisis se concluyó que era necesario crear funciones equivalentes para el envío y recepción de mensajes, con la variante de que en estas (: timas se puede decidir qué tipo de seguridad desea el usuario. Las funciones propuestas para el envío y recepción de mensajes llevan por nombre pvm_send_safe y pvm_rec_safe respectivamente. Ambas funciones tienen un parámetro adicional (un número) a las funciones clásicas pvm_send y pvm_rec respectivamente. Mediante este parámetro el programador puede decidir el tipo de seguridad que desee implementar para sus aplicaciones. Para proveer confidencialidad, autenticación e integridad, se utilizó el criptosistema RSA para confidencialidad de la información y autenticación de procesos. Por otra parte, para poder verificar la integridad de cada mensaje se hizo uso de MD5. Con el objetivo de comprobar la eficiencia y seguridad de las extensiones propuestas para PVM, se implementaron dos tipos de pruebas. La primera, basada en el algoritmo de Fox, realiza la multiplicación de matrices de forma paralela. Este problema simula una gran cantidad operaciones en las cuales de manera automática se realizan transacciones seguras hasta obtener el resultado (este problema generalmente se adapta a resolución en paralelo). La segunda aplicación que se implementó fue un simulador de cargas distribuido. Éste último problema se planteó debido a que actualmente existen servidores con una gran carga de trabajo (por ejemplo, un servidor de WEB) y se busca de disminuir esa excesiva carga de trabajo transfiriendo trabajos de manera confiable a otros servidores que se encuentren menos saturados.