1 | \chapter{Modelo de protocolo para un sistema an\'onimo basado en estrategias bio-inspiradas} |
---|
2 | \chapterauthors{Rodolfo Sumoza |
---|
3 | \chapteraffil{Fundación Centro Nacional de Desarrollo e Investigación en Tecnologías Libres} |
---|
4 | } |
---|
5 | |
---|
6 | % Se crea un ambiente bibunit para el cual se creará la bibliografía |
---|
7 | \begin{bibunit}[unsrt] |
---|
8 | |
---|
9 | |
---|
10 | %\section{Modelo de protocolo para un sistema anónimo basado en estrategias bio-inspiradas} |
---|
11 | |
---|
12 | |
---|
13 | \textbf{Resumen} |
---|
14 | |
---|
15 | En este artículo se propuso utilizar algunas herramientas provistas |
---|
16 | en el área de la Computación Emergente, específicamente en Inteligencia |
---|
17 | Artificial Distribuida (IAD), y en particular se utilizaron las |
---|
18 | Colonias Artificiales de Hormigas para construir sistemas anónimos |
---|
19 | que tengan la virtud de poseer niveles de anonimato aceptables a un |
---|
20 | bajo costo. Este costo se refiere a un criterio de rendimiento |
---|
21 | comúnmente utilizado en los procesos de los sistemas de enrutamiento |
---|
22 | en telecomunicaciones, tal como son los tiempos de respuesta |
---|
23 | (latencia), consumo de recursos de la red, entre otros. |
---|
24 | |
---|
25 | %\subsection{Introducción} |
---|
26 | \section{Introducción} |
---|
27 | Para preservar la privacidad de los datos de cada una de las |
---|
28 | personas que participan en una red de interacción, tal como Internet, |
---|
29 | se deben utilizar herramientas que sean capaces de proveer protección |
---|
30 | contra al menos algunos de los ataques típicos. Los ataques en este |
---|
31 | caso de estudio en particular están orientados, sin autorización, a |
---|
32 | obtener información privada de los usuarios, incluyendo su propia |
---|
33 | identidad. Para contrarrestar este tipo de ataques se han propuesto |
---|
34 | varias ideas que apuntan a establecer cierto nivel de Anonimato, el |
---|
35 | cual en la mayoría de los casos tienden a socavar el rendimiento |
---|
36 | de las comunicaciones. Esto es aun un problema abierto: los sistemas |
---|
37 | anónimos aún necesitan asegurar el Anonimato a un bajo costo (bajos |
---|
38 | tiempos de respuesta, bajo consumo de recursos, mayor usabilidad, etc.), |
---|
39 | y a esto es lo que se le denomina \emph{Anonimato Eficiente}. Este trabajo |
---|
40 | presente un nuevo enfoque que aplica por primera vez la idea de utilizar |
---|
41 | la Inteligencia Artificial Distribuida en esta rama de la |
---|
42 | seguridad en las Tecnologías de Información y Comunicación (TIC), esto |
---|
43 | quiere decir que se le delega la responsabilidad de alcanzar niveles de |
---|
44 | Anonimato Eficiente a la Inteligencia Artificial Distribuida, |
---|
45 | específicamente se propone utilizar las Colonias Artificiales de Hormigas. |
---|
46 | |
---|
47 | %\subsection{Colonias Artificiales de Hormigas en Anonimato} |
---|
48 | \section{Colonias Artificiales de Hormigas en Anonimato} |
---|
49 | \label{rlsm:ia-anonimato} |
---|
50 | |
---|
51 | Considerando las ideas propuestas en los sistemas anónimos probabilísticos |
---|
52 | \cite{rlsm:chaum-mix,rlsm:mixminion,rlsm:diaz-mixes,rlsm:tor-design} y las |
---|
53 | características de los Colonias Artificiales de Hormigas utilizadas en |
---|
54 | las redes de telecomunicaciones |
---|
55 | \cite{rlsm:antnet,rlsm:ants-white,rlsm:ants-loadbalancing}, se propone |
---|
56 | seleccionar las rutas de los mensajes de forma pro\-ba\-bi\-lís\-ti\-ca, |
---|
57 | utilizando las probabilidades que configuran los agentes móviles adaptativos |
---|
58 | (las hormigas). Estas rutas, teniendo componentes probabilísticos pueden, |
---|
59 | dependiendo de los parámetros de configuración, proporcionar ciertos niveles |
---|
60 | de Anonimato. En este sentido, se podría tener un ``control inteligente'' |
---|
61 | sobre los tiempos de respuesta generados y se podría tener un ``control |
---|
62 | inteligente'' sobre otros índices que pudiesen ser incorporados, tal como |
---|
63 | el consumo de recursos (balanceo de cargas). |
---|
64 | |
---|
65 | Se propone mimetizar los mensaje reales con los agentes, esto es, cada |
---|
66 | mensaje tiene la misma estructura que las hormigas, y la única diferencia |
---|
67 | entre ellos radica en el contenido del mensaje, estos mensajes mimetizados |
---|
68 | se encriptan con las claves públicas de los nodos destino. Para hacer |
---|
69 | similar sus tamaños, se propone utilizar un tamaño único para el envío |
---|
70 | de mensajes y para cada agente, incluyendo la estructura de datos que |
---|
71 | almacena la información necesaria para actualizar las tablas de |
---|
72 | enrutamiento de cada nodo, más un relleno inválido y la clave |
---|
73 | pública del destino. Si un mensaje se fragmenta para cumplir con el |
---|
74 | requisito del tamaño único, el mismo es reensamblado en el nodo destino, |
---|
75 | utilizando un número de secuencia establecido por el nodo emisor. |
---|
76 | Los fragmentos de los mensajes también tienen la tarea de actualizar |
---|
77 | las tablas de enrutamiento de los nodos que visitan, de esta manera |
---|
78 | los atacantes no pueden ditinguir entre las hormigas y los mensajes |
---|
79 | reales. De este modo, se puede comparar los mensajes |
---|
80 | enviados con hormigas de carga que llevan el alimento a los nidos, |
---|
81 | y es por esto que se identifican dos tipos de hormigas, las de carga |
---|
82 | y las exploradoras, sin tener diferencias aparentes. |
---|
83 | |
---|
84 | Se utiliza una estrategia de cifrado por capas, cada nodo que una |
---|
85 | hormiga visita cifra la información relacionada al nodo anterior |
---|
86 | con una técnica de cifrado simétrico, e involucra solo la clave |
---|
87 | del nodo anterior, y para alcanzar cada destino, incluyendo el |
---|
88 | final, se pueden registrar sólo los nodos previos, y no la ruta |
---|
89 | completa hacia el origen. Para hacer la ruta de retorno (respuesta |
---|
90 | del nodo destino), este nodo final envía su respuesta al nodo |
---|
91 | anterior, y éste desencripta la capa que contiene la información |
---|
92 | del nodo anterior a él, y así hasta llegar el nodo origen (el emisor). |
---|
93 | |
---|
94 | Para optimizar el o los criterios de rendimiento usualmente |
---|
95 | utilizados en los sistemas de enrutamiento y a su vez incrementar |
---|
96 | los niveles de Anonimato, se debe configurar apropiadamente la |
---|
97 | tabla de rutas. Para hacer ésto, cada vez que una hormiga se |
---|
98 | mueve de un lugar a otro, actualiza la tabla de rutas. Para |
---|
99 | cambiar las probabilidades de las rutas, se selecciona un mecanismo |
---|
100 | basado en los criterios de rendimiento. |
---|
101 | |
---|
102 | En los pasos siguientes se muestra el proceso: |
---|
103 | |
---|
104 | \begin {description} |
---|
105 | \item [A.] Se considera un sistema de $N$ nodos, formando |
---|
106 | una red P2P (tal como Gnutella u otra con características similares), |
---|
107 | junto con sus servidores bootstrap. |
---|
108 | \item [B.] Se configuran los valores de los parámetros a |
---|
109 | utilizar, junto con el índice de uniformidad. |
---|
110 | \item [C.] Cada nodo participante solicita a uno o varios servidores |
---|
111 | una lista de los otros nodos en la red. Esta lista contiene sus |
---|
112 | claves públicas (certificados electrónicos). |
---|
113 | \item [D.] Se inicializan la tablas de rutas con la probabilidad |
---|
114 | $1/M$. $M$ depende del número de vecinos que cada nodo posea. |
---|
115 | \item [E.] El sistema se representa por un grafo el cual |
---|
116 | forma el espacio de solución por el cual viajarán las hormigas. |
---|
117 | \item [F.] El procedimiento siguiente se repite sobre el |
---|
118 | grafo hasta alcanzar una solución estable: |
---|
119 | \begin {description} |
---|
120 | \item [1.] Se generan $m$ hormigas exploradoras en cada nodo. |
---|
121 | \item [2.] Por cada $N-1$ lugares desde cada nodo se envían $m$ |
---|
122 | hormigas exploradoras que escogen el salto a nodo vecino utilizando |
---|
123 | las probabilidades de transición de la tabla de rutas. |
---|
124 | \item [3.] Se actualizan las tablas de rutas. |
---|
125 | \end {description} |
---|
126 | \item [G.] Cuando un nodo envía un mensaje anónimamente, éste lo |
---|
127 | cifra con la clave pública del nodo receptor y utiliza una estructura |
---|
128 | de datos similar al de las hormigas exploradoras, es decir, se crea |
---|
129 | una hormiga de carga. Cada hormiga de carga traslada una parte del |
---|
130 | mensaje, el cual se fragmenta para que el tamaño de cada fragmento |
---|
131 | pueda cumplir con el requisito de igualar su tamaño con el de la |
---|
132 | hormiga exploradora. A cada fragmento del mensaje se le asigna un |
---|
133 | número de secuencia. |
---|
134 | \item [H.] Por cada salto de la hormiga, el nodo intermedio cifra la |
---|
135 | identidad del nodo anterior con su clave privada. |
---|
136 | \item [I.] Cuando una hormiga de carga alcanza el nodo final, y todas |
---|
137 | las otras hormigas de carga vinculadas a un mensajes también han llegado, |
---|
138 | es posible reensamblar el mensaje original descifrándolo con su clave |
---|
139 | privada, y utilizando los números de secuencia correspondientes. |
---|
140 | \item [J.] Para enviar un mensaje de respuesta, el nodo final utiliza |
---|
141 | el camino de retorno cifrado en capas. |
---|
142 | \end {description} |
---|
143 | |
---|
144 | %\subsection{Conclusión} |
---|
145 | \section{Conclusión} |
---|
146 | \label{rlsm:conclusion} |
---|
147 | |
---|
148 | Se propuso implementar un sistema distribuido P2P basado en |
---|
149 | anonimato probabilístico provisto por sistemas de colonias |
---|
150 | artificiales de hormigas. Para lograr esto se configuran los |
---|
151 | nodos participantes como potenciales enrutadores de los mensajes |
---|
152 | anónimos. Las rutas para los mensajes de envío se construyen en |
---|
153 | base a las estrategias propuestas en los sistemas de telecomunicaciones |
---|
154 | para optimizar criterios de rendimiento a través del uso de Colonias |
---|
155 | Artificiales de Hormigas. Una vez que se crean la rutas, el Anonimato |
---|
156 | se logra al seleccionar probabilísticamente las rutas de los mensajes |
---|
157 | enviados utilizando cifrado en capas establecido para la ruta de retorno |
---|
158 | o respuesta. |
---|
159 | |
---|
160 | %\subsection*{Agradecimientos} |
---|
161 | \section*{Agradecimientos} |
---|
162 | Se agradece a José Lisandro Aguilar Castro por su revisión, |
---|
163 | consejos y recomendaciones sobre todo el contenido propuesto. |
---|
164 | |
---|
165 | |
---|
166 | % \begin{thebibliography}{1} |
---|
167 | % |
---|
168 | % \bibitem{rlsm:terminology} |
---|
169 | % Pfitzmann, A., Hansen, M.: Anonymity, Unobservability, and Pseudonymity: A Consolidated Proposal for Terminology. In: http://dud.inf.tu-dresden.de/Anon\_Terminology.shtml, (2000) |
---|
170 | % |
---|
171 | % \bibitem{rlsm:diaz01} |
---|
172 | % D\'{\i}az, C., Seys, S., Claessens, J., Preneel, B.: Towards measuring Anonymity. In: Designing Privacy Enhancing Technologies (PET'02). Springer LNCS 2482, pp. 54-68, (2002) |
---|
173 | % |
---|
174 | % \bibitem{rlsm:serj01} |
---|
175 | % Serjantov, A., Danezis, G.: Towards an Information Theoretic Metric for Anonymity. In: Proceedings of Privacy Enhancing Technologies Workshop, (2002) |
---|
176 | % |
---|
177 | % \bibitem{rlsm:chaum-mix} |
---|
178 | % Chaum, D.: Untraceable electronic mail, return addresses, and digital pseudonyms. In: Communications of the ACM, Vol. 4, No. 2, (1981) |
---|
179 | % |
---|
180 | % \bibitem{rlsm:diaz-mixes} |
---|
181 | % D\'{\i}az, C., Serjantov, A.: Generalising Mixes. In: Proceedings of Privacy Enhancing Technologies workshop (PET 2003), pp. 18-31, (2003) |
---|
182 | % |
---|
183 | % \bibitem{rlsm:mixminion} |
---|
184 | % Danezis, G., Dingledine, R., Mathewson, N.: Mixminion: Design of a Type III Anonymous Remailer Protocol. In: Proceedings of the 2003 IEEE Symposium on Security and Privacy, pp. 2-15, (2003) |
---|
185 | % |
---|
186 | % \bibitem{rlsm:tor-design} |
---|
187 | % Dingledine, R., Mathewson, N., Syverson, P.: Tor: The Second-Generation Onion Router. In: Proceedings of the 13th USENIX Security Symposium, (2004) |
---|
188 | % |
---|
189 | % \bibitem{rlsm:antnet} |
---|
190 | % Caro, G.D., Dorigo, M.: AntNet: Distributed Stigmergetic Control for Communications Networks. In: Journal of Artificial Intelligence |
---|
191 | % Research, (1998) |
---|
192 | % |
---|
193 | % \bibitem{rlsm:ants-white} |
---|
194 | % White, T., Pagurek, B.: Connection Management using Adaptive Mobile Agents. In: Proceedings of the International Conference on |
---|
195 | % Parallel and Distributed Processing Techniques and Applications, pp. 802-809, (1998) |
---|
196 | % |
---|
197 | % \bibitem{rlsm:ants-loadbalancing} |
---|
198 | % Schoonderwoerd, R.: Ant-Based Load Balancing in Telecommunications Networks. In: Adaptive Behavior, Vol. 5, pp. 169-207, (1997) |
---|
199 | % |
---|
200 | % \end{thebibliography} |
---|
201 | |
---|
202 | |
---|
203 | |
---|
204 | |
---|
205 | |
---|
206 | |
---|
207 | % el siguiente comando establece la ubicación de las referencias |
---|
208 | \putbib[bibliografia] |
---|
209 | |
---|
210 | % el siguiente comando cierra el ambiente bibunit para la cual se generan las |
---|
211 | % referencias. |
---|
212 | \end{bibunit} |
---|
213 | |
---|