Proyecto Integral de Ingeniería del Software | |
---|---|
Metodologías Ágiles |
Trabajo Fin De Grado | |
---|---|
Guía Memoria TFG |
Servidores | |
---|---|
Minercraft | |
Knoppia | |
Omegacraft |
Base de datos de juegos | |
---|---|
GameBoy Advance (GBA) |
Proyecto Integral de Ingeniería del Software | |
---|---|
Metodologías Ágiles |
Trabajo Fin De Grado | |
---|---|
Guía Memoria TFG |
Servidores | |
---|---|
Minercraft | |
Knoppia | |
Omegacraft |
Base de datos de juegos | |
---|---|
GameBoy Advance (GBA) |
Es importante proteger las comunicaciones para que no quede rastro de las comunicaciones. A nivel de aplicación puede ser necesario reforzar el sistema. Se le debe permitir a un usuario acceder a una red sin revelar su identidad. El problema de estos sistemas es que si accede algún mal actor no es posible identificarlo.
Supone no ser capaz de distinguir a una persona dentro de un conjunto de personas.
Un objeto de interes no es distinguible de otros elementos de interés
El estado de usar un pseudónimo como identificador
En cada etapa cada nodo realiza una transformación en la que retira una capa del mensaje envíado. Para descifrar se parte del núcleo, se cifra el mensaje con la clave del receptor, poniendo la dirección del receptor y se cifra con el siguiente nodo y se repite el proceso hasta el nodo final (Similar a la Práctica 1 de SI de cifrado anidado).
En este este subtipo de red Mix el emisor cifra un mensaje m usando la clave pública K de la red mixta donde g es un generador y r un string aleatorio:
$Ek(m,r) = g^r || (Ax || m)k'$
Se cifra una vez el mensaje y la dirección del destinatario. Los caminos que se toman están prefijados. La ventaja de este tipo de redes es que da igual el orden por el que pase el mensaje por los nodos. No es necesario que se pase por todos los nodos para que el mensaje pueda ser descifrado. En cada nodo se aplica un recifrado al mensaje, multiplicando el mensaje por la clave K elevada al valor aleatorio que se esté utilizando, cambiando la apariencia del mensaje, esto se realiza durante n etapas. Una vez pasan esas etapas se comienza a descifrar. Este descifrado es un poco particular ya que no es necesario que participen todos los nodos. Solo usando T nodos se puede descifrar el mensaje, colaborativamente esos T nodos irían ayudando a descifrar el mensaje. Para descifrar el mensaje se cogen las claves privadas de cada uno de los nodos y se usan para construir la clave pública, que es el generador elevado a la clave privada. Se hacen descifrados parciales hasta que se llega al nodo T que, una vez este tiene el mensaje descifrado, se lo manda al destinatario.
Las redes de descifrado tienen un problema, y es que se tiene que pasar por todos los nodos. Según se van descifrando las capas se puede crear una traza. La ventaja es que se pueden meter las direcciones de la siguiente etapa, por lo que se puede determinar una cascada.
Las redes de ReCifrado solo necesitan un cifrado inicial, el mensaje no varía durante el tiempo, por lo que no se puede crear una traza, no tiene por que pasar por todos los nodos, solo es necesario que se pase por una cantidad de T nodos. Lo malo es que la red debe ser predefinida.
Consiste en una secuencia de fases fija a la que pertenecen cada emisor o receptor.
Se tiene una serie de nodos interconectados disponible y se selecciona una cantidad fija de ellos. Tiene un problema y es que no hay un punto de entrada o salida, por lo que es recomendable meter tráfico de cobertura. Si hay un atacante en estos nodos, puede insertar tráfico para trazar paquetería.
Este tipo de redes tienen una demostración matemática bastante fuerte detrás, por lo que es posible realizar verificaciones para saber si la red mix funciona bien o mal. Se toman como base para las operaciones
Se debe ir comprobando etapa a etapa, lo que genera un problema ya que implica replicar la paquetería, realizar el permutado y comprobar si hay una situación en la que el orden no varíe, que un nodo siempre envíe los paquetes a los mismos nodos, lo que sería signo de un nodo comprometido. Si queremos verificar los enlaces de las etapas se debe enviar información hacia atrás, lo que es muy costoso.
Pensados para ser viables de implementar en tiempo real y ser eficientes. Todas estas redes crean una cebolla (Por las capas) hasta el destinatario. A medida que el mensaje fluye por la red, en cada nodo se quita una capa, se desvela la dirección y se envía el mensaje a esta hasta que llega al destinatario. Aquí no hay el shuffling de mix. En la comunicación intervienen:
El mensaje de un emisor entra por el nodo de entrada, circula por una serie de routers, sale por el nodo de salida y llega al destinatario. El problema es que los cifrados con clave asimétrica son muy costosos, por lo que se usa cifrado con clave compartida simétrica. En caso de que el receptor tenga que responder al mensaje se crea una cebolla de vuelta.
En el caso de tor, tenemos una versión con ciertas modificaciones sobre el modelo original, se usan claves simétricas. Hay un par de nodos disponibles, no es p2p, hay una serie de nodos intermedios que ceden organizaciones. Esto es un problema de seguridad ya que hay organizaciones que pueden tener cierto control sobre la red. Existe un directorio con la lista de nodos disponibles, tor selecciona 3 y envía el mensaje a través de ellos. Si la entrada y salida de tor son controlados por un mismo atacante, el mensaje queda comprometido. Por ello Tor tiene mecanismos para evitar que un mensaje pase por más de uno nodo de cada organización.
Se usan 3 nodos:
Los circuitos tienen 2 segmentos, uno de el nodo de entrada al intermedio y otro del nodo intermedio a la salida. Los mensajes son de tamaños fijos de 512B para que no puedan ser distinguidos.
Una de las mejores características de tor son los Servicios Ocultos, que serían los dominios .onion.Estos servicios comienzan buscando un punto de introducción y selecciona un punto de encuentro, para ello se establece un cirtuito para llegar a un punto de introducción. El servicio oculto decide si responder a las respuestas que recibe o no, si responde, procede a enviar la respuesta por un path distinto. El objetivo de esto es mantener la anonimidad del servidor.