Falta título de la tesis - Javeriana

67
ESTUDIO E IMPLEMENTACI ´ ON DE MECANISMOS DE PRIVACIDAD E INCENTIVOS PARA DAR SOPORTE A UNA RED DE SENSADO PARTICIPATIVO DE MONITOREO DE LA CALIDAD DEL AIRE ING. LAURA RODR ´ IGUEZ P ´ EREZ INFORME FINAL DE PROYECTO DE INVESTIGACI ´ ON PARA OPTAR POR EL T ´ ITULO DE MAG ´ ISTER EN INGENIER ´ IA ELECTR ´ ONICA DIRECTOR: ING. DIEGO MENDEZ CH ´ AVES Ph.D PONTIFICIA UNIVERSIDAD JAVERIANA FACULTAD DE INGENIER ´ IA DEPARTAMENTO DE ELECTR ´ ONICA MAESTR ´ IA EN INGENIER ´ IA ELECTR ´ ONICA BOGOT ´ A DC 2015

Transcript of Falta título de la tesis - Javeriana

Page 1: Falta título de la tesis - Javeriana

ESTUDIO E IMPLEMENTACION DE MECANISMOS DEPRIVACIDAD E INCENTIVOS PARA DAR SOPORTE A

UNA RED DE SENSADO PARTICIPATIVO DEMONITOREO DE LA CALIDAD DEL AIRE

ING. LAURA RODRIGUEZ PEREZ

INFORME FINAL DE PROYECTO DE INVESTIGACION PARA OPTAR POR

EL TITULO DE MAGISTER EN INGENIERIA ELECTRONICA

DIRECTOR: ING. DIEGO MENDEZ CHAVES Ph.D

PONTIFICIA UNIVERSIDAD JAVERIANA

FACULTAD DE INGENIERIA

DEPARTAMENTO DE ELECTRONICA

MAESTRIA EN INGENIERIA ELECTRONICA

BOGOTA DC

2015

Page 2: Falta título de la tesis - Javeriana

Indice general

1. Introduccion 7

1.1. Sistemas de Sensado Participativo . . . . . . . . . . . . . . . . . . . . 7

1.1.1. Definicion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

1.1.2. Ventajas y Aplicaciones . . . . . . . . . . . . . . . . . . . . . 8

1.1.3. Retos asociados a sistemas SP . . . . . . . . . . . . . . . . . . 9

1.2. Objetivos del proyecto . . . . . . . . . . . . . . . . . . . . . . . . . . 10

1.3. Arquitectura de la Red de Monitoreo de la Calidad del Aire de la PUJ 11

1.3.1. Primer Nivel: Dispositivos de Sensado . . . . . . . . . . . . . . 12

1.3.2. Segundo Nivel: Terminal Movil o Integrador de Primer Nivel . 13

1.3.3. Tercer Nivel: Red de Transporte de Datos . . . . . . . . . . . 13

1.3.4. Cuarto Nivel: Servidor Proxy . . . . . . . . . . . . . . . . . . 14

1.3.5. Quinto Nivel: Servidor de Aplicacion . . . . . . . . . . . . . . 15

2. Mecanismos de Proteccion de la Privacidad 17

2.1. Antecedentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

2.2. Marco Teorico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

2.3. Seleccionar una solucion de acuerdo a las caracterısticas especıficas

del sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

2.4. Metricas del Rendimiento de los Mecanismos de Privacidad . . . . . . 21

2.4.1. Calidad de la Informacion . . . . . . . . . . . . . . . . . . . . 22

2.4.2. Proteccion de la Privacidad . . . . . . . . . . . . . . . . . . . 22

2.4.3. Consumo de energıa . . . . . . . . . . . . . . . . . . . . . . . 25

2.5. Mecanismo de Privacidad Hıbrido . . . . . . . . . . . . . . . . . . . . 27

2.5.1. Funcionamiento del Mecanismo Hıbrido . . . . . . . . . . . . . 27

2

Page 3: Falta título de la tesis - Javeriana

Indice general 3

2.5.2. Seleccion de Smin . . . . . . . . . . . . . . . . . . . . . . . . . 29

2.6. Comparacion cuantitativa de los principales mecanismos de privacidad 29

2.6.1. Organizacion de las pruebas . . . . . . . . . . . . . . . . . . . 29

2.6.2. Resultados y Analisis . . . . . . . . . . . . . . . . . . . . . . . 31

3. Mecanismos de Incentivos 35

3.1. Antecedentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

3.2. Marco Teorico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

3.3. Seleccionar una solucion de acuerdo a las caracterısticas especıficas

del sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

3.4. Rendimiento del Mecanismo de Incentivos . . . . . . . . . . . . . . . 39

3.4.1. Organizacion de las pruebas . . . . . . . . . . . . . . . . . . . 40

3.4.2. Analisis de los Resultados . . . . . . . . . . . . . . . . . . . . 44

4. Implementacion del Sistema 47

4.1. Algoritmo Combinado de Incentivos y Proteccion de la Privacidad . . 47

4.1.1. Ronda de juego Rt . . . . . . . . . . . . . . . . . . . . . . . . 47

4.1.2. Registro e Inicio de Sesion del usuario en el Sistema . . . . . . 51

4.2. Lado del Terminal Celular . . . . . . . . . . . . . . . . . . . . . . . . 52

4.2.1. Comunicacion con los Pollution Spots . . . . . . . . . . . . . . 52

4.2.2. Procesamiento de los Datos Ambientales. . . . . . . . . . . . . 54

4.2.3. Comunicacion con los Niveles Superiores . . . . . . . . . . . . 55

4.3. Lado del Servidor Proxy . . . . . . . . . . . . . . . . . . . . . . . . . 56

4.3.1. Manejo de las Bases de Datos . . . . . . . . . . . . . . . . . . 56

4.3.2. Comunicacion el Segundo y Quinto Nivel . . . . . . . . . . . . 56

4.4. Lado del Servidor de Aplicacion . . . . . . . . . . . . . . . . . . . . . 56

4.4.1. Procesamiento de las variables de interes en la ronda Rt+1 . . 57

4.4.2. Aplicacion web . . . . . . . . . . . . . . . . . . . . . . . . . . 59

5. Conclusiones 60

5.1. Resultados de la investigacion . . . . . . . . . . . . . . . . . . . . . . 60

5.2. Trabajos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

A. Listado de los archivos incluidos en el DVD 63

Page 4: Falta título de la tesis - Javeriana

Indice general 4

Bibliografıa 64

Page 5: Falta título de la tesis - Javeriana

Indice de figuras

1.1. Arquitectura del Sistema . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.1. Mecanismos de proteccion de Privacidad . . . . . . . . . . . . . . . . 18

2.2. Algoritmo de estimacion de la localizacion . . . . . . . . . . . . . . . 23

2.3. Instalacion para medir el consumo de energıa en el celular. . . . . . . 26

2.4. Promedio del consumo de corriente para 20 pruebas de cada proceso. 27

2.5. Algoritmo de decision del Mecanismo Hıbrido para la ronda Rt. . . . 28

2.6. Coeficiente de Determinacion (R2) . . . . . . . . . . . . . . . . . . . . 31

3.1. Comparacion Mecanismos de Incentivos . . . . . . . . . . . . . . . . . 36

3.2. Banco de Pruebas de Incentivos . . . . . . . . . . . . . . . . . . . . . 40

3.3. Superficie F para Camino Probable . . . . . . . . . . . . . . . . . . . 42

3.4. Calidad de la Informacion para coeficiente G . . . . . . . . . . . . . . 45

3.5. Calidad de la Informacion para numero de transeuntes. . . . . . . . . 46

4.1. Ronda Rt de Juego . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

4.2. Pantallas de la Aplicacion P-Spots . . . . . . . . . . . . . . . . . . . . 50

4.3. Tarea Asıncrona Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . 53

4.4. Comunicacion con los Pollution Spots . . . . . . . . . . . . . . . . . . 53

4.5. Procesamiento de las variables de interes en P-Spots . . . . . . . . . . 54

4.6. Interpolacion de datos sinteticos . . . . . . . . . . . . . . . . . . . . . 58

4.7. Interfaz grafica de la aplicacion web . . . . . . . . . . . . . . . . . . . 59

5

Page 6: Falta título de la tesis - Javeriana

Indice de cuadros

1.1. Sensores de los Pollution Spots . . . . . . . . . . . . . . . . . . . . . 12

1.2. Datos de Usuario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

1.3. Datos de Mision en el Proxy . . . . . . . . . . . . . . . . . . . . . . . 15

1.4. Datos de las Variables de Interes . . . . . . . . . . . . . . . . . . . . 16

1.5. Datos de Mision en el Servidor de Aplicacion . . . . . . . . . . . . . . 16

2.1. Variacion del rendimiento segun el tamano de celda Smin. . . . . . . . 29

2.2. Probabilidades para Caminos Aleatorios . . . . . . . . . . . . . . . . 30

2.3. Probabilidades de localizar al usuario . . . . . . . . . . . . . . . . . . 34

2.4. Consumo de energıa por Mecanismo de Privacidad . . . . . . . . . . . 34

3.1. Peso de cada parametro durante la caminata. . . . . . . . . . . . . . 44

4.1. Trama de datos desde el Segundo Nivel a los superiores . . . . . . . . 55

6

Page 7: Falta título de la tesis - Javeriana

Capıtulo 1

Introduccion

El presente informe resume el trabajo de investigacion realizado para lograr la

implementacion de los Mecanismos de Privacidad e Incentivos apropiados para un

sistema de Sensado Participativo (SP ), en el marco del proyecto “Diseno de una Red

de Monitoreo de la Calidad del Aire para la Pontificia Universidad Javeriana”. Se

realizo el analisis de esquemas basados en SP , de las diferentes soluciones existentes

de acuerdo con las aplicaciones de estos, y la evaluacion de las variantes mas relevan-

tes. A partir del estudio realizado sobre el estado del arte, se adopto un mecanismo

basado en el uso de criptografıa y metodos de ofuscacion para la proteccion de los da-

tos de usuario, combinandose con mecanismos basados en gamificacion para soportar

la participacion de los usuarios en el sistema. Se muestra tambien la validacion de la

propuesta, y los resultados que se obtienen al aplicar otras variantes de mecanismos

de privacidad empleados comnmente en SP.

1.1. Sistemas de Sensado Participativo

1.1.1. Definicion

Se denomina Sensado Participativo (SP ) al reciente paradigma de monitoreo a

gran escala que propone la adquisicion de variables de interes a partir de sensores

propios o asociados a los terminales celulares [6, 11, 14]. Este nuevo esquema aprove-

cha la gran densidad de usuarios de dispositivos moviles y la infraestructura existente

7

Page 8: Falta título de la tesis - Javeriana

Capıtulo 1. Introduccion 8

para el transporte de datos en la recopilacion de las variables de interes, reduciendo

de esta forma los costos del desarrollo de las redes de sensado.

Debido a la penetracion que tienen las redes celulares y los terminales conocidos

como Smartphones, se consigue recopilar grandes cantidades de datos bajo este para-

digma, que pueden ser utilizados para construir una vision espacio-temporal a gran

escala del fenomeno de estudio, ası como la elaboracion de estadısticas relativas a

comunidades o areas geograficas [14]. La idea principal del SP es darle al ciudadano

comun la posibilidad de adquirir y compartir mediciones en su entorno habitual,

utilizando los recursos de procesamiento, almacenamiento y comunicacion propios

de los Smartphones, en general superiores a los asociados a dispositivos de sensado

tradicionales.

1.1.2. Ventajas y Aplicaciones

El despliegue de un sistema basado en SP tiene como principal atractivo su

eficiencia en costo y tiempo, puesto que los dispositivos de sensado o de interaccion

con los sensores ya se encuentran en el campo, o sea en manos de los usuarios, a donde

quiera que vayan, independientemente de sus actividades. Como los participantes

del sistema utilizan la infraestructura de redes de datos celulares y Wi-Fi existentes

para transmitir sus reportes hacia los nodos centrales de las redes SP , los costos de

recopilacion de grandes cantidades de datos se reducen drasticamente desde el punto

de vista del sistema SP . La participacion activa del usuario en el momento e realizar

las mediciones, es otra cualidad atractiva de SP , ya que posibilita la adquisicion

de datos con mayor calidad o semanticamente mas complejos, lo cual supone una

reduccion considerable del gasto de recursos de hardware y software empleados en la

recopilacion y procesamiento de los datos [11].

Los sistemas basados en SP tienen numerosas aplicaciones, pueden encontrarse

ejemplos de su uso en investigaciones de naturaleza ambiental, de infraestructura o

social. Ejemplos comunes del primer grupo son las observaciones de niveles de po-

lucion en comunidades y ciudades, niveles de agua en rıos y lagos, y monitoreo de

habitats naturales [7]. Casos de mediciones a gran escala relacionadas con la infra-

estructura publica son el monitoreo de la congestion del trafico, del funcionamiento

de servicios publicos como alumbrado y acueductos. De naturaleza social son las

Page 9: Falta título de la tesis - Javeriana

Capıtulo 1. Introduccion 9

mediciones que realizan los individuos concernientes a ellos mismos, tales como re-

portes relacionados con sus rutinas de ejercicios, dietas y otros comportamientos que

pueden resultar de provecho a la comunidad [11].

1.1.3. Retos asociados a sistemas SP

La implementacion de un sistema SP implica la solucion de diversos retos de

investigacion, en dependencia del fenonmeno a sensar y el alcance que se desea.

Algunos de estos retos son [11]:

Mecanismos de Incentivos: En este tipo de sistemas la participacion de los

usuarios es crucial, ya que estos constituyen la fuente de donde se recopilan

los datos que dan soporte al sistema, por lo que se deben disenar algoritmos

para premiar su colaboracion. Estos mecanismos deben ser lo suficientemente

fuertes para lograr que los participantes esten dispuestos a donar su tiempo y

recursos para colaborar con el proyecto.

Manejo de los recursos de energıa, ancho de banda y procesamiento: Este ele-

mento esta asociado tambien con la disposicion del usuario a colaborar con el

sistema, puesto que si su participacion representa un alto gasto de la baterıa

de su Smartphone, de su tiempo y ancho de banda, obviamente el usuario no

va a estar conforme con la relacion entre el gasto de sus recursos y las ganan-

cias que obtiene. Se requieren algoritmos de procesamiento en el terminal que

consuman el mınimo posible de recursos del dispositivo, del ancho de banda y

la energıa necesarios en la transmision de los reportes.

Manejo de la privacidad, seguridad e integridad en los datos: Las aplicaciones

recolectan datos personales sobre los individuos, por ejemplo informacion sobre

la localizacion, por lo que es importante preservar la privacidad y seguridad

de los participantes, para que estos esten mas dispuestos a colaborar con el

sistema.

Minerıa de datos: Bajo este paradigma se cuenta con grandes cantidades de

datos, y la determinacion de los modelos adecuados para el procesamiento y

visualizacion de estos datos es usualmente especıfica a cada aplicacion.

Page 10: Falta título de la tesis - Javeriana

Capıtulo 1. Introduccion 10

1.2. Objetivos del proyecto

El proyecto para la Red de Monitoreo de la Calidad del Aire de la PUJ tuvo

como objetivo disenar un sistema basado en Sensado Participativo para adquirir

las variables que caracterizan los agentes contaminantes de la atmosfera. Una carac-

terıstica importante de la red disenada es la ausencia de un presupuesto para otorgar

compensaciones monetarias a los participantes por su contribucion. La participacion

de los usuarios es crucial para el mantenimiento de un sistema SP , ya que estos

constituyen la fuente de donde se adquieren los datos que le dan soporte, por lo que

uno de los retos de investigacion fue el diseno de los mecanismos adecuados para

lograr fomentar la participacion de los usuarios en el sistema.

Otra consideracion que se tuvo fue el hecho de que los usuarios no siempre estan

dispuestos a revelar su localizacion, a la cual deben asociarse las variables que se

desean medir, por lo que se debıan disenar mecanismos para garantizar la proteccion

de la privacidad de los usuarios, los cuales debıan cumplir con el requerimiento de

mantener la eficiencia en cuanto a los recursos de energıa empleados. La restriccion

en cuanto al consumo de energıa surge debido a que la disposicion del usuario a

contribuir con el sistema podrıa disminuir si aumentan los recursos necesarios para

la adquisicion y transmision de los datos. El presente proyecto de investigacion, se

enfoca en encontrar los mecanismos adecuados para incentivar la participacion de

los usuarios, tomando en cuenta las consideraciones anteriores, haciendo enfasis en

la proteccion de la privacidad del usuario, a la vez que se mantengan las restricciones

de consumo de energıa durante la tarea de adquisicion y transmision de los datos.

La solucion de las cuestiones anteriormente planteadas constituyo el objetivo

central de la presente investigacion, para resolverlas se plantearon los siguientes ob-

jetivos:

Objetivo general:

Estudiar, seleccionar e implementar los mecanismos de proteccion de la priva-

cidad y de incentivos que den soporte a los requerimientos asociados a un sistema

basado en sensado participativo para monitoreo de la calidad del aire.

Objetivos especıficos:

Page 11: Falta título de la tesis - Javeriana

Capıtulo 1. Introduccion 11

1. Estudiar y comparar los mecanismos existentes para garantizar la privacidad

de los usuarios, y seleccionar una solucion de acuerdo con las caracterısticas

propias del sistema.

2. Implementar y evaluar el esquema de mecanismos de privacidad que se propon-

ga, tomando en cuenta la calidad de la informacion util y el ancho de banda

empleado.

3. Estudiar y comparar los mecanismos de incentivos para motivar la participacion

de los usuarios, y seleccionar una solucion de acuerdo a las caracterısticas

especıficas del sistema.

4. Disenar e implementar una aplicacion basada en el Sistema Operativo Android

para los terminales moviles, con las funcionalidades de comunicacion con los

dispositivos de sensado, procesamiento y visualizacion de los datos locales, y

comunicacion con el servidor central.

5. Disenar e implementar una aplicacion servidor para centralizar los datos reco-

lectados, integrar los mecanismos de privacidad y motivacion, y aplicacion web

para la visualizacion sobre mapas de Google de la informacion recolectada.

6. Elaborar y aplicar un conjunto de pruebas que permitan la evaluacion de las

aplicaciones desarrolladas.

El resto del documento presenta los procedimientos llevados a cabo para seleccio-

nar las tecnicas apropiadas de Proteccion de la Privacidad de los usuarios e Incenti-

vos dentro del sistema descrito en la seccion 1.3. Se describen ademas los algoritmos

implementados para la puesta en marcha del sistema, y se evaluan los resultados

obtenidos a traves de la simulacion del desempeno del sistema.

1.3. Arquitectura de la Red de Monitoreo de la

Calidad del Aire de la PUJ

La figura 1.1 muestra la arquitectura de la Red de Monitoreo de la Calidad del

Aire de la PUJ , compuesta de cinco niveles fısicos, descritos a continuacion.

Page 12: Falta título de la tesis - Javeriana

Capıtulo 1. Introduccion 12

Figura 1.1 Arquitectura de la Red de Monitoreo de la Calidad del Aire de la PUJ .

Cuadro 1.1 Sensores embebidos en los modulos Pollution Spots.

Fabricante - Sensor Variable

Membrapor - CO/SF-200 CO

Membrapor - O3/S-5 O3

Sensirion - SHT15 Temperatura y Humedad

Sharp - GP2Y1010AU0 Material Particulado

1.3.1. Primer Nivel: Dispositivos de Sensado

El Primer Nivel del sistema lo componen la red de sensores estaticos o Pollution

Spots. Se denomina Pollution Spot a cada modulo de sensores fijo distribuido en

el campus de la Universidad, por la caracterıstica estatica de los mismos, ya que

se asemejan a los Hot-Spots o puntos de Wi-Fi en el sentido de que el usuario se

conecta a estos puntos para obtener los datos. Cada Pollution Spot tiene un conjunto

de sensores ambientales integrados en una tarjeta (basada en un procesador AV R

de Atmel), que funciona como una unidad unica. En el cuadro 1.1 se enumeran los

sensores presentes en cada modulo.

Los modulos deben funcionar como unidades autonomas, por lo que incluyen una

Page 13: Falta título de la tesis - Javeriana

Capıtulo 1. Introduccion 13

fuente basada en un modulo de recoleccion de energıa y un panel solar. Los sensores

recopilan datos a intervalos de tiempo regulares, el conjunto de datos recopilado por

cada sensor en el mismo intervalo de tiempo se almacena asociado al instante en

que fue adquirido (Sello de Tiempo) en la memoria del AV R como una trama. Las

tramas almacenadas en memoria se transmiten vıa Bluetooth cuando el participante

las solicita a traves de la aplicacion en el Smartphone.

1.3.2. Segundo Nivel: Terminal Movil o Integrador de Pri-

mer Nivel

El Segundo Nivel esta compuesto por los terminales celulares, que actuan como

el primer punto de recoleccion, analisis y transmision de los datos adquiridos en

el Primer Nivel. Los datos recolectados por los Smartphones son enviados a los

niveles superiores utilizando Red de Transporte de Datos (Tercer Nivel), la cual

es independiente del sistema, por lo que no hay costos extras en esta etapa de la

transmision de datos.

A grandes rasgos, la funcionalidad de este nivel es la comunicacion con el Cuarto

y Quinto Nivel a traves del Tercer Nivel, para conocer las coordenadas de localiza-

cion de los lugares donde se deben realizar tareas de sensado, las cuales se escogen en

el Quinto Nivel. Cuando el usuario decide recopilar datos para enviar, la aplicacion

adjunta las coordenadas de localizacion (adquiridas por GPS o por la Red de Datos)

a los datos que recibe desde el Pollution Spot, procesa los datos de acuerdo a las

especificaciones que recibe previamente desde el Servidor de Aplicacion, y los trans-

mite hacia el Servidor Proxy. El flujo de este proceso sera descrito con mas detalle

en la seccion 4.1.

1.3.3. Tercer Nivel: Red de Transporte de Datos

La infraestructura de redes inalambricas basadas en tecnologogıa IP (redes de

datos celulares, WiFi, etc.) constituye el Tercer nivel de la arquitectura del sistema.

A traves de este nivel, los particpantes envıan a los nodos centrales de la red (Ni-

veles Cuarto y Quinto) las tramas que contienen las variables de interes, ası como

datos asociados al usuario para premiar su colaboracion. Puesto que estas redes son

Page 14: Falta título de la tesis - Javeriana

Capıtulo 1. Introduccion 14

publicas, se deben aplicar mecanismos de proteccion de la Privacidad del Usuario

para que la informacion sensible del usuario no se comprometa en este nivel.

1.3.4. Cuarto Nivel: Servidor Proxy

El Cuarto Nivel se compone del Servidor Proxy, el cual hace de intermediario

en la comunicacion entre el Segundo y el Quinto Nivel. Esta mediacion provee una

capa extra de seguridad para la proteccion de la informacion sensible de los usuarios

[23, 25], la funcionalidad de mediacion de este nivel se describe en la seccion 4.3.

Ademas, el Servidor Proxy maneja la Base de Datos de Usuario (basada en MySQL),

que contiene los datos de usuario necesarios para cuantificar su participacion en el

sistema (cuadro 1.2) y los datos relativos a las misiones que lanza el Servidor de

Aplicacion (cuadro 1.3). Los tipos de datos a los que se refieren los cuadros pertenecen

a MySQL. A partir de la informacion que brindan la Tabla de Datos de Usuario y la

Tabla de Datos de Mision, el Servidor Proxy provee de realimentacion a la aplicacion

en el terminal del usuario relativa a su participacion en el sistema. Tanto el Servidor

Proxy como el Servidor de Aplicacion corren actualmente en un computador de

Desktop con sistema Operativo Ubuntu 14.04 LTS, al que se le instalo la pila de

herramientas LAMP 1 para que funcionaran como servidores.

Cuadro 1.2 Datos de Usuario en la Base de Datos del Servidor Proxy

Campo Descripcion Tipo

ID∗ Identificador unico del usuario o SALT int(32)

USER Nombre de Usuario String

PASS HashSHA1 de la contrasena del usuario + ID char(40)

POINTS Puntuacion que ha alcanzado el usuario en el sistema int(20)

LEV EL Nivel que ha alcanzado el usuario en el sistema int(15)

MISSIONS Numero de misiones que ha completado el usuario int(32)

CURRENT Mision actual que concluyo el usuario int(64)

1https://help.ubuntu.com/community/ApacheMySQLPHP

Page 15: Falta título de la tesis - Javeriana

Capıtulo 1. Introduccion 15

Almacenamiento seguro de la contrasena de usuario: El campo ID es un

identificador unico que se asocia al usuario cuando este se registra en el sistema, el

mismo no es privado y se utiliza como SALT 2 para almacenar en el campo PASS

la contrasena asociada al usuario como la salida de una funcion hash SHA13 de la

combinacion entre el ID y la contrasena que escoge el usuario. Como el valor del ID

debe ser unico, este campo se utiliza como llave de la tabla.

El campo MISSIONS es un campo auxiliar para llevar una constancia de la

cantidad de tareas de sensado que ha concluido el usuario, y de esta forma poder

actualizar los “Logros”. Ası mismo, el campo CURRENT almacena el ID de la

ultima mision que el usuario completo y por la cual no ha sido recompenzado, para

poder compensar al usuario.

Cuadro 1.3 Datos de Mision en la Base de Datos del Servidor Proxy

Campo Descripcion Tipo

ID∗ Identificador unico de la tarea de sensado o Mision int(64)

ROUND Contador de iteraciones del Servidor de Aplicacion int(64)

ISSUED Estampilla para el tiempo en que se publica la Mision datetime

EXPIRES Estampilla para el tiempo de expiracion de la Mision datetime

POINTS Puntuacion asociada a la Mision int(10)

En el capıtulo 4 se ofrece una descripcion mas amplia del uso de los campos de

las tablas de la Base de Datos del Servidor Proxy.

1.3.5. Quinto Nivel: Servidor de Aplicacion

En este nivel esta ubicado el Servidor de Aplicacion, como nucleo de la Red de

Monitoreo: en este se almacenan y administran los datos ambientales. La Base de

Datos Ambientales contiene una tabla para cada variable de interes (Monooxido de

Carbono, Ozono, Temperatura, Humedad, y Material Particulado), la estructura de

las tablas de datos ambientales se muestra en el cuadro 1.4.

En el Servidor de Aplicacion corren los algoritmos para decidir los puntos donde

se debe medir en la proxima iteracion o ronda (Rt), y si se deben cifrar u ofuscar

2Fuente: http://security.stackexchange.com/questions/211/how-to-securely-hash-passwords3http://csrc.nist.gov/publications/fips/fips180-4/fips-180-4.pdf

Page 16: Falta título de la tesis - Javeriana

Capıtulo 1. Introduccion 16

Cuadro 1.4 Datos de las Variables de Interes en el Servidor de Aplicacion

Campo Descripcion Tipo

DATA Identificador unico de la tarea de sensado o Mision int(64)

TIMESTAMP Tiempo en que se midio la variable datetime

LATITUDE Coordenada de latitud donde se midio float(10,6)

LONGITUDE Coordenada de longitud donde se midio float(10,6)

los datos en cada punto. La descripcion del funcionamiento de estos algoritmos se

realiza en el capıtulo 4.

Cuadro 1.5 Datos de Mision en la Base de Datos del Servidor de Aplicacion

Campo Descripcion Tipo

ID∗ Identificador unico de la tarea de sensado o Mision int(64)

ROUND Contador de iteraciones del Servidor de Aplicacion int(64)

ISSUED Estampilla para el tiempo en que se publica la Mision datetime

EXPIRES Estampilla para el tiempo de expiracion de la Mision datetime

LATITUDE Coordenada de latitud donde se debe medir float(10,6)

LONGITUDE Coordenada de longitud donde se debe medir float(10,6)

ENCRY PT Decision de cifrar u ofuscar los datos de la Mision tinyint(1)

POINTS Puntuacion asociada a la Mision int(10)

Los datos relativos a cada punto donde se debe medir en cada ronda y la forma

de entregar los reportes por parte del usuario se almacena en la tabla de Mision,

cuya estructura se muestra en el cuadro 1.5. Los algoritmos que se implementaron

en el Servidor de Aplicacion para generar los campos de este cuadro se describen en

el capıtulo 4.

Page 17: Falta título de la tesis - Javeriana

Capıtulo 2

Mecanismos de Proteccion de la

Privacidad

En la seccion anterior se menciona que el sistema de SP de Monitoreo de la

Calidad del Aire en el campus de la Universidad debe recolectar la lectura de los

modulos Pollution Spots a traves de los participantes y ademas debe recopilar la

localizacion asociada a los modulos, la cual es aportada por el usuario. Los reportes

que entregan los usuarios al sistema puede ser utilizada para inferir informacion

sensible relacionada con su vida privada, habitos y relaciones. No brindar garantıas al

usuario de la proteccion de su datos privados, o hacerlo de manera deficiente, pondrıa

en peligro su participacion y por tanto el funcionamiento correcto del sistema. Por

esta razon, es vital el uso de medios para garantizar que los usuarios mantengan el

control sobre la informacion sensible que entregan, incluyendo los datos que pueden

ser inferidos de la lectura de los sensores y la interaccion de los usuarios con la red

de monitoreo.

2.1. Antecedentes

En el cuadro de la figura 2.1 se presenta un resumen de aplicaciones de sistemas

de Sensado Participativo que emplean las tecnicas de encubrimiento espacial [9, 12,

18, 21], perturbacion de datos [10, 24] y criptografıa [2, 27].

17

Page 18: Falta título de la tesis - Javeriana

Capıtulo 2. Mecanismos de Proteccion de la Privacidad 18

Figura 2.1 Cuadro comparativo de los principales mecanismos de proteccion de laprivacidad de los usuarios para sistemas de sensado participativo.

2.2. Marco Teorico

A continuacion se describe el principio de funcionamiento de los principales meca-

nismos de proteccion de la privacidad que se emplean en sistemas basados en Sensado

Participativo:

1. Encubrimiento espacial: Tambien conocido como k-anonimizacion o microagre-

gacion, este mecanismo tiene como idea principal construir grupos de k usuarios

o reportes que comparten elementos en comun (localizados en la misma area)

y hacer a los usuarios indistinguibles dentro de su grupo. Esta modalidad se

divide en dos vertientes: generalizacion y perturbacion. Cuando se emplea ge-

neralizacion los valores originales que se desean encubrir son reducidos a un

valor de menor precision, mientras que al utilizar perturbacion lo que ocurre es

que se remplazan los reportes reales por una funcion aplicada a los k sensores

Page 19: Falta título de la tesis - Javeriana

Capıtulo 2. Mecanismos de Proteccion de la Privacidad 19

del area [8]. Las principales desventajas de esta modalidad son: la necesidad

de una estructura central que conozca la localizacion de los usuarios, que al ser

comprometida pone en riesgo la seguridad de los participantes, y la falta de

precision que supone la anonimizacion del reporte del usuario dentro del grupo

[25].

2. Perturbacion de los datos: Tambien se conoce como ofuscacion, funciona alte-

rando las mediciones de los sensores con distorsiones artificiales, con la inten-

cion de obtener tendencias generales sin revelar datos individuales [8], por lo

general estas tecnicas se llevan a cabo desde el terminal celular [25]. Los princi-

pales metodos dentro de esta categorıa son la perturbacion por ruido aleatorio

y los puntos de interes. En el primero, se anade a las muestras ruido aleato-

rio de una distribucion conocida. En el segundo caso, el usuario reporta sus

mediciones desde un punto que forma parte de un conjunto de localizaciones

conocidas por el sistema, el punto enviado es el mas cercano a la localizacion

real del usuario [25]. Al igual que en el primer numeral, estas tecnicas acarrean

una determinada falta de precision, por lo que se debe escoger correctamen-

te la distribucion y niveles de ruido para distorsionar los datos o los puntos

de interes respectivamente, de modo que no alteren demasiado los resultados

originales.

3. Cifrado: Estos son los mecanismos basados en metodos criptograficos para pro-

teger los datos del usuario. Son tecnicas con muy baja probabilidad de ser

comprometidas, a no ser por errores humanos [4], sin embargo acarrean el

problema del alto consumo de energıa que emplea el terminal movil durante el

procesamiento de los datos para su cifrado y la transmision de estos.

Existen ademas, modelos hıbridos que emplean varias tecnicas de proteccion de la

privacidad simultaneamente, para aprovechar las ventajas de cada una y compensar

sus limitaciones de acuerdo al escenario. Ejemplo de estos modelos son los trabajos en

[18] y [24]. En el primero, los autores emplean la extension de l-diversidad aplicada

al algoritmo de V-MDAV, el cual se utiliza en conjunto con el metodo de Teselacion:

si el usuario puede construir una celosıa dentro de la celda en que se encuentra pues

hay un mınimo de k usuarios dentro de esta, reporta su localizacion como el centro

Page 20: Falta título de la tesis - Javeriana

Capıtulo 2. Mecanismos de Proteccion de la Privacidad 20

de esta, de lo contrario, se utiliza V −MDAV para obtener mayor precision. En

[24] se emplea un algoritmo de decision para determinar cuando utilizar metodos

critograficos para encubrir la localizacion de los usuarios y cuando utilizar puntos

de interes para ofuscar los datos, para ello se emplea una funcion de distribucion de

probabilidad asociada a la posibilidad de cifrar los datos, y se emplea como metodo

para decidir en cada reporte el tratamiento a la localizacion. Una mejora a este

algoritmo se presenta en [25], donde se sustituye el comportamiento aleatorio de

la decision por un algoritmo que divide la region de interes en areas cuyo tamano

lo determina el comportamiento de la variable sensada, si esta no varıa de forma

apreciable entre celdas adyacentes, las celdas se combinan para formar celdas mas

grandes, y las areas donde la variable no es uniforme se dividen para crear celdas

mas pequenas. En las ultimas, como se necesita mas precision y ello pone en riesgo

la privacidad del usuario, se cifra la informacion, mientras que en celdas grandes se

utilizan puntos de interes.

2.3. Seleccionar una solucion de acuerdo a las ca-

racterısticas especıficas del sistema

Los algoritmos hıbridos de proteccion de la privacidad ofrecen la ventaja de fle-

xibilidad frente a las especificaciones del sistema, por lo que se decidio implementar

este mecanismo. Tomando en cuenta las caracterısticas comunes que comparten la

Red de Monitoreo de la Calidad del Aire de la PUJ con el trabajo presentado en

[25], se implemento un Algoritmo Hıbrido que, al igual que en el trabajo referido,

combina la utilizacion de Puntos de Interes con Doble Cifrado, con la modificacion

que implica combinar las tecnicas de proteccion de la privacidad con incentivos. En

la seccion 2.5 se describe el funcionamiento del Algoritmo Hıbrido que se selecciono y

se puso en marcha, y en la seccion 4.1 se ampliara la descripcion del Algoritmo Com-

binado de Privacidad e Incentivos.

A grandes rasgos, el esquema de proteccion disenado, cumple con los siguientes

elementos:

Emplea un algoritmo que divide la region de interes en areas cuyo tamano

Page 21: Falta título de la tesis - Javeriana

Capıtulo 2. Mecanismos de Proteccion de la Privacidad 21

esta determinado por el comportamiento de las variables sensadas: las regiones

donde los cambios de la variable sean mas abruptos se dividen, mientras que

las regiones con baja variabilidad se combinan.

En las areas de tamano mayor, los reportes de localizacion no necesitan ser

muy precisos, puesto que las variables tienen un comportamiento homogeneo

en su interior, por lo que puede utilizarse la ofuscacion a partir de puntos de

interes para reportar la localizacion.

En areas de menor dimension, la localizacion juega un papel crucial, puesto

que la variable presenta cambios abruptos de un lugar a otro. Para satisfacer la

precision requerida sin comprometer al usuario, se utiliza un esquema de doble

cifrado al reportar las mediciones.

La idea de dos nodos independientes en el nucleo de la red para robustecer el

mecanismo de cifrado, se reutiliza haciendo que uno de estos (Servidor Proxy

SPr) controle la informacion de los usuarios y maneje su estatus de participa-

cion en el sistema mediante una cuantizacion que realiza el otro nodo (Servidor

de Datos Ambientales SPd), retribuyendo la participacion del usuario sin que

esto implique que haya forma de conocer la informacion crıtica de la tarea

cometida a partir de la remuneracion que se recibe a cambio.

Utilizar un esquema para identificar las tareas de sensado a partir de una eti-

queta IDMision con correspondencia unıvoca, de forma tal que el SPr puede

premiar a partir de IDMision la participacion de los usuarios sin tener co-

nocimiento de los datos espacio-temporales de la tarea, y el SPd reciba las

observaciones de los usuarios, sin tener conocimiento de su identidad.

2.4. Metricas del Rendimiento de los Mecanismos

de Privacidad

Para cuantificar el desempeno de los mecanismos de privacidad, se utilizaron las

siguientes metricas:

Page 22: Falta título de la tesis - Javeriana

Capıtulo 2. Mecanismos de Proteccion de la Privacidad 22

2.4.1. Calidad de la Informacion

Para evaluar la calidad de la informacion en cada mecanismo se utiliza el coefi-

ciente de determinacion (R2), que mide la diferencia entre las observaciones reales

y las observaciones afectadas por el mecanismo de privacidad [24]. R2 esta definido

por la ecuacion 2.1:

R2 = 1 −∑

i(yi − fi)2∑

i(yi − yi)2(2.1)

donde:

yi son los valores de la superficie de datos que se obtiene al interpolar las

mediciones sin afectarlas con algun mecanismo de proteccion,

fi son los valores de la superficie de datos que se obtiene al interpolar las

mediciones sometidas al mecanismo de privacidad y

yi es el valor promedio de las observaciones.

2.4.2. Proteccion de la Privacidad

Para evaluar el comportamiento de cada mecanismo en cuanto a la proteccion

de la privacidad, se utilizo la metrica Probabilidad de Localizar al Usuario (PLoc),

(ecuacion 2.2). PLoc denota la probabilidad de que el usuario se encuentre en la

localizacion definida por el area SA, dada el area total ST , para cada ronda Rt [24]:

PLoc(MRt , Di) = 1 − SAST

(2.2)

donde:

MRt es la superficie de datos que se obtiene al interpolar las observaciones de

la ronda Rt,

Di es el paquete de datos que reporta el usuario el cual contiene la localiza-

cion espacio-temporal (coordenadas y sello de tiempo) correspondientes con las

observaciones reportadas.

Page 23: Falta título de la tesis - Javeriana

Capıtulo 2. Mecanismos de Proteccion de la Privacidad 23

ST es el area total de la superficie de datos MRt ,

SA es el area promedio donde es posible localizar al usuario en Rt, y se estima

utilizando la ecuacion 2.3:

SA =k∑j=1

(SAj∗ PAj

) (2.3)

donde SAjson las diferentes areas donde se estima que pueda encontrarse el usuario

con las correspondientes probabilidades PAj.

Figura 2.2 Algoritmo de estimacion del area en la que puede localizarse al usuariosegun su reporte Di

Cada SAjse estima segun utilizando un percentil Percj, el mapa de valores

estimados MRt , y el paquete de datos reportado por el usuario Di. Para ello se

utiliza una funcion de estimacion que funciona segun el algoritmo descrito en la

figura 2.2.

La funcion estimadora devuelve un conjunto de areas SAj, en las que se tiene

una probabilidad PAjde encontrar al usuario en la ronda Rt, para ello, se calcula la

distribucion de las diferencias entre la superficie de datos MRt y el reporte Di, y se

seleccionan las areas SAjde acuerdo con un conjunto de percentiles Percj (en este

caso se utilizaron 5 %, 10 %, 15 %, 20 % y 25 % para mantener una calidad aceptable

en la estimacion).

Page 24: Falta título de la tesis - Javeriana

Capıtulo 2. Mecanismos de Proteccion de la Privacidad 24

Ademas, se tomo en cuenta que la arquitectura del sistema propuesto tiene dos

niveles de privacidad:

Servidor Proxy: Con acceso a las observaciones ofuscadas por los puntos de

interes y a los datos de usuario.

Servidor de Datos Ambientales: Con acceso a los datos cifrados y a los datos

ofuscados pero no a los datos de usuario.

Debido a esta arquitectura es necesario evaluar la probabilidad de localizar al

usuario en tres posibles escenarios para cada uno de los mecanismos evaluados:

1. El adversario tiene acceso al Servidor Proxy (PLocSPr):

Para los metodos basado en k-anonimizacion, este escenario es equivalente a

que se vea comprometida la entidad que anonimiza a los usuarios a partir de

sus localizaciones reales, por lo que el adversario cuenta con las localizaciones

de cada usuario. Para los metodos de ofuscacion, o sea POI y Perturbacion por

Ruido Aleatorio (la perturbacion ocurre a nivel de usuario sin la intervencion

de otra entidad), solo se tiene acceso a los reportes previamente alterados. Por

ultimo en el caso del Modelo Hıbrido (POI y Cifrado), el adversario solamente

tiene acceso a los reportes ofuscados por POI.

2. El adversario tiene acceso al Servidor de Datos Ambientales (PLocSPd):

Para k-anonimizacion esto implica que se tiene acceso a la entidad que realiza

la inferencia sobre los reportes de los usuarios, por lo que se cuenta con la

superficie de datos, pero no con los reportes de los usuarios. En los metodos de

perturbacion de los datos, para el caso de Perturbacion por Ruido Aleatorio,

se tiene el mismo escenario que el caso (a), ya que nuevamente se tienen los

datos perturbados y lo que se puede inferir respecto a estos. Si se utiliza POI,

ya no se tienen los reportes, por lo que la probabilidad de localizar al usuario

disminuye. Para el Modelo Hıbrido, se tendrıa acceso en este caso a la parte

de los datos que estan cifrados y a los reportes ofuscados, pero debido a la

modificacion para incentivos (uso de la etiqueta IDMision) mencionada en la

seccion 2.3, a partir de la cual la identidad del usuario es removida de ambos

Page 25: Falta título de la tesis - Javeriana

Capıtulo 2. Mecanismos de Proteccion de la Privacidad 25

reportes en el Servidor Proxy (sin que por ello el SPr tenga acceso a los datos

cifrados), solo se cuenta con la superficie de datos.

3. El adversario tiene acceso a los dos Servidores (PLocSPrPd):

En este escenario nuevamente se cuentan con las localizaciones exactas de los

usuarios para los metodos basados en k-anonimizacion. El caso de Perturbacion

por Ruido Aleatorio no sufre cambio, para POI en este escenario se cuentan

nuevamente con los reportes de los usuarios, que es el caso en que se tiene

mayor posibilidad de localizar al usuario. Para el Modelo Hıbrido este es el peor

escenario ya que se tendrıan todos reportes de los usuarios y la correspondencia

entre las localizaciones exactas con los usuarios para el caso de los reportes

cifrados.

El desempeno de los mecanismos para cada escenario descrito se analizara en la

seccion 2.6.2.

2.4.3. Consumo de energıa

Para evaluar el consumo de energıa se utilizo un registro de usuario de 1MB

de tamano, se realizaron 20 pruebas, procesando y transmitiendo en cada una el

registro segun las variantes propuestas por cada uno de los mecanismos de privacidad

analizados. Para las pruebas se midieron tres procesos:

1. Transmision del registro en texto plano utilizando sockets TCP/IP : Empleado

al utilizar las tecnicas de microagregacion y perturbacion de los datos.

2. Cifrado del registro de usuario utilizando una llave simetrica AES de tamano

128 bits: Este proceso se realiza cuando se emplean esquemas de doble cifrado.

3. Transmision del registro a traves de una conexion SSL: Este proceso se utiliza

al emplear las tecnicas de cifrado.

Se asumio que el registro de 1 MB ya esta almacenado en memoria con la estruc-

tura requerida para cada tecnica de proteccion de la privacidad. Para el montaje del

Page 26: Falta título de la tesis - Javeriana

Capıtulo 2. Mecanismos de Proteccion de la Privacidad 26

Figura 2.3 Instalacion para medir el consumo de energıa en el celular.

experimento se utilizo un telefono Samsung modelo GT-I9195L, con sistema operati-

vo Android version 4.4.2, las transmisiones se realizaron utilizando la red Wi-Fi del

campus, utilizando el esquema mostrado en la figura 2.3.

Para calcular la energıa empleada por cada mecanismo para proteger la privacidad

del usuario se alimento el telefono a VDC ≈ 4.2 V, utilizando una fuente DC de

laboratorio modelo Tektronix PS280 y se midio a intervalos δi = 0.25 s el consumo

de corriente Ai durante cada proceso.

En el calculo de la energıa que se consume en el terminal durante estos procesos

no se tuvo en cuenta la distancia desde el terminal hasta el punto de acceso Wi-Fi

mas cercano a este. No obstante, las pruebas se realizaron con el terminal en una

posicin fija en todo momento, por lo que para los casos analizados el incremento del

consumo de energa debe ser semejante en todos los escenarios.

E =∑i

(VDC ∗ Ai ∗ δi) (2.4)

Utilizando la ecuacion 2.4 se calculo la energıa total expresada en Joules que se

emplea en cada mecanismo como la suma de los valores instantaneos de voltaje y

corriente en cada intervalo de tiempo [24].

Los resultados obtenidos para cada proceso se muestran en la figura 2.4. Puede

apreciarse que el cifrado del archivo utilizando AES consume los niveles mas altos,

aunque tarda relativamente poco tiempo. En el caso de el envıo por socket SSL del

registro, aunque los niveles de consumo de corriente no varıan drasticamente respecto

a los otros procesos, si se observa que el proceso tarda un tiempo considerable en

culminar, una causa de este retraso es el hecho de que por cuestiones de seguridad la

conexion es cortada antes de que se envıe todo el paquete de datos (el cual es largo

para este tipo de conexiones), por lo que se debe iniciar nuevamente la negociacion

Page 27: Falta título de la tesis - Javeriana

Capıtulo 2. Mecanismos de Proteccion de la Privacidad 27

del socket SSL entre el celular y el servidor.

Figura 2.4 Promedio del consumo de corriente para 20 pruebas de cada proceso.

2.5. Mecanismo de Privacidad Hıbrido

El mecanismo de privacidad Hıbrido que se implementa tiene como caracterıstica

fundamental la seleccion del porcentaje de los datos enviados por el participante al

sistema son cifrados y que porcentaje son ofuscados. Estos porcentajes determinan

el despeno del mecanismo, por lo que se debe realizar un analisis para determinar

cuales porcentajes son los mas adecuados en el esquema.

2.5.1. Funcionamiento del Mecanismo Hıbrido

En la figura 2.5 se muestra el funcionamiento del algoritmo de decision empleado

en el Mecanismo Hıbrido que se emplea en el presente proyecto. Los datos de entrada

para cada ronda Rt son la superficie de datos obtenida al interpolar las mediciones

(MRt), la cantidad inicial de agrupaciones (k), el numero maximo en que se divi-

Page 28: Falta título de la tesis - Javeriana

Capıtulo 2. Mecanismos de Proteccion de la Privacidad 28

dira una celda (n), y el tamano mınimo de celda Smin, a partir del cual se decide

utilizar Puntos de Interes en lugar de cifrado.

Figura 2.5 Algoritmo de decision del Mecanismo Hıbrido para la ronda Rt.

En la primera etapa del algoritmo se encuentran los centros de k agrupaciones en

la superficie MRt . Luego se calcula el espacio de Voronoi Vi correspondiente con cada

centro Cxyi y el gradiente de cambio gi de la variable representada por la superficie

MRt dentro del espacio Vi. El intervalo I entre el gradiente mınimo gmin y el maximo

gmax se cuantifica en n partes y se clasifica cada gi en un Ij, y se divide la celda

definida por Vi en j centros Pxy. Las regiones cuyo gradiente de cambio gi es nulo se

agrupan nuevamente para crear celdas mas grandes con centros Qxy. Luego segun el

tamano de cada nueva celda (Pxy o Qxy) se determina si cifrar o utilizar puntos de

interes para reportar las localizaciones ne esa area. Finalmente el algoritmo retorna

como salida los puntos de interes de la ronda Rt+1, los cuales estan definidos definidos

por la union entre Pxy y Qxy.

Page 29: Falta título de la tesis - Javeriana

Capıtulo 2. Mecanismos de Proteccion de la Privacidad 29

2.5.2. Seleccion de Smin

De la explicacion anterior se deduce que el tamano de Smin determina la razon

de celdas que utilizan puntos de interes o cifrado como mecanismo de privacidad.

Esta razon infiere directamente en la calidad de la informacion reportada (R2), el

consumo de energıa para procesar y reportar esta informacion desde el celular (E) y

la probabilidad de encontrar al usuario segun los diferentes escenarios de amenazas

que pueden presentarse (PLocSPr, PLocSPd y PLocSPrPd). El cuadro 2.1 muestra

el comportamiento promedio de estos parametros para diferentes tamanos de Smin

analizados. En la seccion 2.6 se explican los procedimientos y calculos empleados en

la obtencion de estos parametros.

Smin % Cifrado % POI PLocSPr PLocSPd PLocSPd R2 E [J ]

50 0.07 99.93 0.9866 0.0120 0.9873 0.9835 8.881100 1.37 98.63 0.9736 0.0123 0.9873 0.9877 8.790150 4.24 95.76 0.9467 0.0117 0.9891 0.9853 8.590200 10.40 89.60 0.8855 0.0126 0.9895 0.9885 8.161250 19.23 80.76 0.8000 0.0091 0.9923 0.9920 7.545300 29.80 70.20 0.6972 0.0100 0.9952 0.9938 6.808350 36.00 64.00 0.6359 0.0084 0.9959 0.9953 6.376400 37.60 62.40 0.6211 0.0089 0.9971 0.9944 6.264

Cuadro 2.1 Variacion del rendimiento segun el tamano de celda Smin.

De estos resultados se escoge Smin = 200 unidades, ya que presenta un rendimiento

equilibrado entre el consumo de energıa y la proteccion del usuario.

2.6. Comparacion cuantitativa de los principales

mecanismos de privacidad

2.6.1. Organizacion de las pruebas

Para realizar el analisis cuantitativo de los principales mecanismos de proteccion

de la privacidad, se utilizo como entorno de simulacion Matlab, la region de interes es

una superficie de 100 unidades2. La cantidad promedio de transeuntes en el area es de

60, estos se desplazan en la superficie a partir de posiciones iniciales aleatorias. Para

Page 30: Falta título de la tesis - Javeriana

Capıtulo 2. Mecanismos de Proteccion de la Privacidad 30

modelar el desplazamiento, se utilizo una funcion para generar caminos aleatorios,

alterando las probabilidades de las direcciones de los transeuntes como se muestra

en el cuadro 2.2, se asume una velocidad media de 1.5 m/s, ya que este valor

corresponde al paso medio de los adultos jovenes [20], que es la poblacion mas

representativa en el campus. La metrica utilizada para reportar las posiciones de los

transeuntes es la Euclidiana, se escogio esta en lugar de la distancia de Manhattan

[5], ya que se asume que la superficie de simulacion es el campus de la Javeriana, en

el cual los peatones tienen mas libertad de movimientos que en la malla propuesta

por la distancia de Manhattan.

Direccion Probabilidad

Adelante 0.66Derecha 0.12Izquierda 0.12Atras 0.04Detenerse 0.06

Cuadro 2.2 Probabilidad para cada punto de decision al generar los caminos aleato-rios.

Para la comparacion entre los diferentes Mecanismos de Privacidad se escogieron

las siguientes variantes:

1. Teselacion, (Microagregacion): Se simula utilizando un numero mınimo de 3

caminantes (k = 3) para dividir la region de interes en celdas. Las celdas se

construyeron en orden aleatorio, escogiendo puntos regularmente distribuidos

en la superficie a partir de los cuales se procede a localizar a los k usuarios mas

cercanos para realizar la division.

2. Puntos de Interes, (Perturbacion): Para simular se divide la region utilizando

una malla regular de 5x5 celdas.

3. Perturbacion por Ruido Aletorio, (Perturbacion): Se utiliza una distribucion

normal con media µ = 0 y varianza σ2 = 5 unidades para la simulacion.

4. Mecanismo Hıbrido, (Puntos de Interes y cifrado): Para la simulacion de esta

variante se utiliza k0 = 25 celdas iniciales y un tamano mınimo de celda Smin =

Page 31: Falta título de la tesis - Javeriana

Capıtulo 2. Mecanismos de Proteccion de la Privacidad 31

200. El tamano mınimo se escogio de acuerdo a los resultados que se muestran

en el cuadro 2.1.

2.6.2. Resultados y Analisis

A continuacion se muestran y valoran los resultados obtenidos para cada metrica.

Calidad de la Informacion

La figura 2.6 muestra el desempeno de cada mecanismo de acuerdo a la calidad de

la informacion. Puede observarse que el Modelo hıbrido ofrece muy buenos resultados,

mientras que el peor desempeno lo ofrece Teselacion, esto se debe al desplazamiento

aleatorio de los usuarios en la region de interes, que provoca que la division de las

celdas sea muy irregular y por lo tanto los centros de algunas celdas suelen estar

muy alejados de la posicion real donde se genera el reporte. Se asume que los valores

negativos del coeficiente de determinacion que arroja la simulacion son nulos, pues

no tienen sentido siendo R2 un valor cuadratico.

Figura 2.6 Coeficiente de Determinacion (R2) para cada Mecanismo de Privacidad.

Page 32: Falta título de la tesis - Javeriana

Capıtulo 2. Mecanismos de Proteccion de la Privacidad 32

Probabilidad de Localizar al Usuario

A continuacion se analiza el desempeno de cada mecanismo en cuanto a la pro-

teccion de la privacidad segun los escenarios descritos en la seccion 2.4.2.

1. El adversario tiene acceso al Servidor Proxy (PLocSPr):

Los resultados de este escenario se muestran en la primera columna del cuadro

2.3. Si se emplean las tecnicas basadas en k-anonimizacion (Teselacion), el

usuario debe reportar su localizacion real a la entidad que realiza la anonimi-

zacion, por lo que la probabilidad de localizar al usuario es la unidad.

En el caso de las tecnicas de perturbacion de los datos solamente se tiene acceso

a las observaciones ofuscadas, para las perturbaciones por Ruido Aleatorio la

probabilidad de encontrar al usuario depende de la varianza del ruido anadi-

do para ofuscar las localizaciones, como esta debe mantenerse dentro de un

lımite aceptable para brindar una buena calidad de informacion, se tiene una

probabilidad alta de encontrar al usuario. Para el caso de POI se tiene una

probabilidad PLocSPr = 0.9830 de encontrar al usuario, la cual depende de la

cantidad de puntos de interes que se utilicen para ofuscar las localizaciones.

En el mecanismo Hıbrido se tiene acceso a la fraccion de las observaciones que

utilizan como mecanismo de privacidad la perturbacion de los datos por POI,

la probabilidad de encontrar al usuario es 0.9882, pero como solo un 89.60 %

(cuadro 2.1) de los usuarios emplea POI para reportar las observaciones, la

probabilidad resultante es PLocSPr = 0.8855.

2. El adversario tiene acceso al servidor de Datos Ambientales (PLocSPd):

Estos resultados corresponden a la segunda columna del cuadro 2.3. En Tesela-

cion este escenario equivale a que se tengan los datos ofuscados de los usuarios,

pero no las localizaciones exactas, por lo que para k = 3 y 60 usuarios como

promedio en el area, el tamano de celda promedio es1

20del area total, lo que

resulta en una probabilidad de 0.95 para observacion anonimizada. Como las

observaciones anonimizadas representan 3 observaciones reales, la probabilidad

de localizar al usuario es PLocSPr =0,95

3= 0.317.

Page 33: Falta título de la tesis - Javeriana

Capıtulo 2. Mecanismos de Proteccion de la Privacidad 33

Para el metodo basado en perturbacion de los datos por Ruido Aleatorio se

mantienen las probabilidades halladas en el escenario anterior puesto que la

ofuscacion ocurre a nivel de cada usuario, por lo que las dos entidades compar-

ten los datos. En el caso de POI, para 60 usuarios y utilizando una malla de

5x5 celdas regulares (el tamano de celda es1

25), se tiene una probabilidad de

0.96 de encontrar al usuario. Como las simulaciones arrojaron un promedio de

2.4 usuarios por celda, la probabilidad de localizar a un usuario es PLocSPd =0,96

5= 0.4.

Para el caso Hıbrido se tienen los reportes ofuscados por POI que reenvıa

el SPr y las observaciones cifradas, pero como la identidad del usuario fue

removida de ambos registros al enviarse al SPd, la probabilidad de encontrar

al usuario en un area determinada es de 0.9882.

3. El adversario tiene acceso a los dos servidores (PLocSPrPd):

En este caso (tercera columna del cuadro 2.3), ambos niveles de seguridad

estan comprometidos, por lo que para el caso de Microagregacion, se tienen las

localizaciones exactas de cada usuario, PLocSPrPd = 1. En el caso de POI

la probabilidad de encontrar al usuario es la probabilidad que se tiene para

el primer escenario, pues este es el caso donde se tienen mas detalles sobre

el reporte de los usuarios. Para el caso hıbrido, si se comprometen los dos

servidores, se tiene acceso a la localizacion exacta de la fraccion de usuarios

que utilizan cifrado para reportar los datos (10.4 %) y los reportes que utilizan

POI. La probabilidad de encontrar a un usuario en estas condiciones es la suma

de estas probabilidades: 1 en el caso de los datos cifrados, como el porcentaje

de reportes cifrados es 10.40 % del total, resulta en 0.104. En el caso de los

datos ofuscados la probabilidad para la fraccion de reportes que utilizan POI

resulta en 0.8855, sumando una probabilidad de encontrar al usuario PLoc =

0.9895.

Consumo de energıa

Los consumos de energıa estimados para cada mecanismo se observan en el cuadro

2.4. Como se realizan las pruebas partiendo de que los registros ya estan almacenados

Page 34: Falta título de la tesis - Javeriana

Capıtulo 2. Mecanismos de Proteccion de la Privacidad 34

Mecanismo PLocSPr PLocSPd PLocSPrPd

POI 0.983 0.400 0.983Ruido Aleatorio 0.989 0.989 0.989Teselacion 1.000 0.317 1.000Hıbrido 0.885 0.988 0.989

Cuadro 2.3 Probabilidades de localizar al usuario segun el mecanismo de proteccionde la privacidad.

Mecanismo E [J ]

POI 1.914Ruido Aleatorio 1.914k-anonimizacion 1.914Doble cifrado 8.886Hıbrido 8.161

Cuadro 2.4 Variacion del consumo energetico segun el mecanismo de proteccion dela privacidad.

en la memoria del celular, se tienen valores semejantes de consumo en las tecnicas

que emplean solamente sockets TCP para la trasmision de los mensajes. Los metodos

de doble cifrado presentan los niveles de consumo mas elevados, ya que emplean los

procesos de cifrar el registro utilizando la llave simtrica AES y la conexion segura SSL

cada vez que se envıan los datos al servidor. Se observa que el empleo del Mecanismo

Hıbrido logra disminuir en parte este consumo, puesto que solo cifra una fraccion de

los mensajes.

Conclusiones

En los analisis anteriores se evidencia la robustez del Mecanismo Hıbrido frente a

otras tecnicas de proteccion de la privacidad del usuario, lo que justifica su adopcion

en el Sistema de Monitoreo de la Calidad del Aire en el campus de la Javeriana. Es

importante recalcar que segun sea el dimensionado del sistema y los parametros del

compromiso entre energıa y privacidad que se quieran alcanzar, se debe variar el area

Smin que determina los porcentajes de cifrado.

Page 35: Falta título de la tesis - Javeriana

Capıtulo 3

Mecanismos de Incentivos

Los sistemas PS dependen de la participacion de los usuarios, ya que son el medio

a partir del cual se centraliza y/o recolecta la informacion. Es evidente por tanto la

necesidad de disenar un esquema de incentivos acorde con el objetivo de la aplicacion

y los recursos con que cuenta la misma.

3.1. Antecedentes

El tema de los mecanismos de incentivos en sistemas de SP ha sido tratado

en trabajos previos, observandose que los mecanismos que implican compensacion

monetaria son los mas extensamente abordados y aplicados [13, 15, 17, 22, 26, 28, 29].

El cuadro que se muestra en la figura 3.1 ofrece una comparacion general de los

principales mecanismos de incentivos empleados en esquemas de SP .

Se evidencia en los datos recopilados que la base fundamental del incentivo en las

aplicaciones sin compensacion monetaria [3, 6, 7, 19] es el interes propio del usuario,

ya sea por obtener informacion general relativa a la variable que se esta sensando

o satisfaccion personal relacionada con filantropıa o la culminacion exitosa de la

tarea propuesta. Como el sistema que se desea poner en marcha en el campus de la

Pontificia Universidad Javeriana (PUJ) no cuenta con presupuesto para remunerar

la participacion, este debe hacer uso de las ideas propuestas en estos trabajos, para

lograr que el usuario obtenga informacion relativa a la calidad del aire en el campus

de la universidad, y se sienta comprometido con el sistema, ya que con su aporte

35

Page 36: Falta título de la tesis - Javeriana

Capıtulo 3. Mecanismos de Incentivos 36

Figura 3.1 Cuadro comparativo de los principales mecanismos de incentivos parasistemas de sensado participativo.

esta beneficiando a la comunidad del campus.

En el caso del metodo de Subasta Inversa, como esta modalidad implica que el

usuario informa a una entidad central que esta en la capacidad de realizar medicio-

nes en un punto determinado, con lo cual indirectamente esta dando a conocer su

localizacion, el metodo queda descartado para el sistema que se desea dienar. Los

mecanismos que emplean pseudonimos y credenciales, si pueden ser adaptados al

sistema actual, para que se pueda asociar al usuario a la realizacion de una tarea

de sensado sin comprometer sus datos sensibles. Los metodos de gamificacion y de

recompensas con metricas de reputacion proveen al usuario de metodos de interac-

cion mas atractivos con el sistema, y pueden ser disenados tomando en cuenta la

proteccion de la privacidad del usuario.

Page 37: Falta título de la tesis - Javeriana

Capıtulo 3. Mecanismos de Incentivos 37

3.2. Marco Teorico

Segun el analisis anterior, la solucion adecuada para un sistema de SP sin presu-

puesto para recompensar la colaboracion de los usuarios es el empleo de mecanismos

de gamificacion, por lo que la aplicacion con la que interactua el usuario para obtener

las mediciones de los sensores y trasmitirlas hacia los servidores se disena como un

juego. Las tecnicas empleadas para el desarrollo del mecanismo del juego se describen

a continuacion.

Tecnicas de Gamificacion Los mecanismos de gamificacion o ludificacion se ba-

san en el uso de la forma de pensar y mecanica de los juegos en otros contextos para

comprometer a los usuarios en la solucion de problemas. Para lograr el compromiso,

las tecnicas de ludificacion se apoyan en los deseos y necesidades de los usuarios, alre-

dedor de la idea de “Estatus” (Rango o nivel del jugador) y “Logros” (Competencias

adquiridas durante el juego).

Se aclara que para dar un caracter mas competitivo y orientado al juego, la apli-

cacion para el celular se refiere a las tareas de sensado como “Misiones”. Con este

termino se denomina a partir de ahora a las acciones que debe realizar el participante

para recopilar los datos y enviarlos al servidor.

Las mecanicas empleadas para realizar el “Estatus” y los “Logros” son:

Puntuacion: Cada mision realizada satisfactoriamente por el usuario aumenta

este marcador, en dependencia del valor asociado a la mision completada. Las

puntuaciones de las misiones varıan de acuerdo con la localizacion del punto

donde se deba realizar las mediciones y la necesidad de cifrar los datos a enviar.

La puntuacion se acumula hasta un lımite, a partir del cual vuelve a cero y se

aumenta el marcador de Nivel.

Nivel: El Nivel aumenta cuando se alcanza la puntuacion necesaria, por lo que

va aumentando mas lentamente y necesita mayor compromiso por parte del

usuario para cambiar.

Distinciones: Las Distinciones son formas de remunerar al usuario por haber

logrado algo. Estan bloqueadas para cada usuario hasta que este vaya com-

Page 38: Falta título de la tesis - Javeriana

Capıtulo 3. Mecanismos de Incentivos 38

pletando una serie de tareas requeridas. Se pueden otorgar Distinciones por la

rapidez con que un usuario sea capaz de completar una tarea de medicion, y

por cada localizacion nueva donde el usuario realice una tarea.

3.3. Seleccionar una solucion de acuerdo a las ca-

racterısticas especıficas del sistema

A pesar de que parten de la idea de la recompensa monetaria, las soluciones

en [13, 15, 17, 22, 26, 28, 29], pueden ser reutilizadas en un sistema que no sea

basado en remuneracion, para reforzar los incentivos. Especialmente interesan las

ideas planteadas en [22, 28, 29], que pueden ser adaptadas al proyecto actual. En

general, las ideas principales de estos proyectos que se modificaran para nuestro

esquema son:

Emplear un esquema que combine las tecnicas de proteccion de la privacidad

del usuario con los mecanismos de incentivos, para lograr eficiencia en la trans-

mision de la informacion y a la vez fomentar la participacion de los usuarios

[28].

Comprometer a los usuarios en la solucion de problemas, basandose en sus

deseos y necesidades de alcanzar determinadas metas, girando alrededor de

conceptos como “estado” y “logros” [22].

Utilizar los mecanismos de recompensa como un subconjunto de las tecnicas

de ludificacion [16] para aumentar el interes de los participantes [29].

De lo anteriormente expuesto, se derivan las principales caracterısticas del meca-

nismo de incentivos seleccionado para el sistema de monitoreo de la calidad del aire

de la PUJ:

1. Explotar el sentimiento de participacion dentro de una comunidad, promo-

viendo el bienestar general, aprovechando que el esquema se desarrollara en el

campus de la universidad.

Page 39: Falta título de la tesis - Javeriana

Capıtulo 3. Mecanismos de Incentivos 39

2. Poner a disposicion del publico la informacion recuperada por los participan-

tes, a traves de un servidor web que permite la visualizacion de las variables

sensadas dispuestas sobre un mapa del campus.

3. Utilizar un esquema de incentivos que tenga en cuenta la proteccion de la

privacidad del usuario, siendo capaz de reconocer al usuario su participacion

en el sistema sin comprometer su informacion privada. Para ello se asignan

identificadores a las tareas de sensado, que cumplan la doble funcionalidad

de asociar las recompensas asociadas a cada tarea a la vez que enmascaran la

informacion que pueda comprometer al usuario (localizacion espacio-temporal).

4. Utilizar los metodos de gamificacion para recompensar la participacion de los

usuarios en el sistema, dando la categorıa de misiones a las tareas de sensado,

asignando puntuaciones y condecoraciones asociadas a los logros individuales,

como metrica para premiar su colaboracion. Para ello se implementa una base

de datos independiente a la base de datos ambientales, donde se asocia a cada

usuario la informacion cuantitativa que describe sus aportes en el esquema.

La interfaz grafica de la aplicacion celular juega un papel importante en la con-

cepcion del juego, puesto que a traves de esta el usuario interactua con el sistema. Un

requisito mınimo que debe tener la aplicacion es ser capaz de mostrar en un mapa la

posicion actual del usuario y de los dispositivos de medicion de la polucion Pollution

Spots.

En la seccion 4.1 se describe la dinamica del juego y en la seccion 4.2 se muestran

las pantallas utilizadas en la aplicacion celular.

3.4. Rendimiento del Mecanismo de Incentivos

La evaluacion del mecanismo de incentivos a partir de usuarios en el campus de

la universidad no se realizo, puesto que aun no se encuentran listos los modulos para

medir la calidad del aire o Pollution Spots, sin embargo se efectuaron simulaciones

en Matlab que permiten comprobar parcialmente el desempeno de los incentivos.

Page 40: Falta título de la tesis - Javeriana

Capıtulo 3. Mecanismos de Incentivos 40

3.4.1. Organizacion de las pruebas

Para analizar el rendimiento del Mecanismo de Incentivos, se desarrollo en el

entorno de Matlab un Banco de Pruebas que tiene la estructura mostrada en la

figura 3.2. Se destaca que la simulacion de los transeuntes dentro del sistema de SP

utilizando el Banco de Pruebas disenado es escalable, ya que para anadir nuevos

parametros al mismo basta agregar la nueva variable a la suma y recalcular los pesos

de cada modulo para que su suma sea igual o menor que la unidad. Los modulos con

los que cuenta actualmente el Banco se describen en los siguientes numerales.

Figura 3.2 Estructura del Banco de Pruebas para la simulacion de los Mecanismosde Incentivos.

1. Camino Aleatorio:

Este modulo calcula los desplazamientos en X e Y de los transeuntes, a partir

de la asignacion de diferentes pesos a cada direccion posible que pueda tomar

el usuario (cuadro 2.2), de acuerdo con su direccion anterior θt−1 (determinada

por las posiciones ultima y penultima), los cuales son evaluados usando una

variable aleatoria con distribucion normal. Este modulo calcula el desplaza-

miento utilizando las ecuaciones en 3.1 y 3.2, donde θRt es la nueva direccion

Page 41: Falta título de la tesis - Javeriana

Capıtulo 3. Mecanismos de Incentivos 41

del caminante, que se obtiene a partir de la variable aleatoria y la direccion

anterior, y Vt es la velocidad instantanea, calculada utilizando una distribu-

cion normal cuya media es la velocidad promedio de los caminantes (1,5m/s)

y varianza de 0,2m/s (tomando en cuenta que una caminata rapida equivale a

1,67m/s).

dXRt = Vt ∗ cos(θRt) (3.1)

dYRt = Vt ∗ sen(θRt) (3.2)

2. Camino con Destino:

A partir de este modulo se calculan los desplazamientos en X e Y en la direccion

mas adecuada para acercar al usuario a su destinacion. La ecuaciones 3.3 y 3.4

se utilizan para calcular estos desplazamientos, θDt es el angulo formado entre

la posicion actual del usuario Xi e Yi y su posicion de destinacion Xf e Yf .

dXDt = Vt ∗ cos(θDt) (3.3)

dYDt = Vt ∗ sen(θDt) (3.4)

3. Camino Probables:

Este modulo simula las rutas mas probables que pueden seguir los usuarios en

su desplazamiento por la superficie F , aportando mas peso a los caminos mas

probables que a caminos menos transitados (es mas probable que los usuarios

transiten por las calles internas del campus que a traves del cesped, etc.).

Debido a los alcances de la investigacion, la superficie que simula los caminos

es generica (figura 3.3), sin embargo como la superficie es una entrada del

modulo, no es necesario realizar otros cambios si se modifica la superficie, solo

basta que la superficie de entrada este normalizada.

Las ecuaciones 3.5 y 3.6 muestran los desplazamientos para cada eje, las can-

tidades δFδX

y δFδX

representan los gradientes de la superficie en cada eje, de

Page 42: Falta título de la tesis - Javeriana

Capıtulo 3. Mecanismos de Incentivos 42

Figura 3.3 Superficie F para simular los caminos mas probables y los Pollution Spots.

forma tal que cuando el usuario esta cerca de un camino, tiene mas tendencia

a ir acercandose al centro de este, y una vez dentro posee menor probabilidad

de salirse del mismo. En las areas donde el camino esta alejado (las regiones

centrales de los cuadrados en la figura 3.3), el gradiente es cero y por tan-

to este parametro no afecta a los transeuntes. El calculo de los gradientes se

realizo utilizando la funcion gradient de Matlab, la cual calcula la diferencia

entre puntos consecutivos a lo largo de la dimension que se le especifique como

entrada.

dXDt = Vt ∗δF

δX(3.5)

dYDt = Vt ∗δF

δX(3.6)

4. Camino con Incentivos:

Este es el modulo mas importante del Banco de Pruebas, ya que permite la

comprobacion de la efectividad de aplicar mecanismos de incentivos sobre el

sistema de SP para lograr buenos resultados en cuanto a la calidad de la infor-

Page 43: Falta título de la tesis - Javeriana

Capıtulo 3. Mecanismos de Incentivos 43

macion que brinda el sistema. Funciona con el mismo principio del modulo de

Camino con Destinacion, pero en este caso la posicion de destino es el Pollution

Spot mas cercano (PSx y PSy) donde el usuario no ha realizado mediciones

(para evitar que el caminante se quede alrededor del mismo Pollution Spot).

Tambien debe cumplirse que el Pollution Spot no cambie drasticamente la di-

reccion final del usuario, para ello se comparan los angulos entre el usuario

y su destino ( θDt), y el usuario y el Pollution Spot, si el valor absoluto de

la diferencia entre los angulos no es menor que 90 se desecha ese punto y se

procede a buscar uno que si cumpla con estas condiciones.

Las ecuaciones que describen el comportamiento del usuario de acuerdo con

los incentivos se muestran en 3.7 y 3.8.

dXIt = Vt ∗ cos(θIt) ∗ wJi (3.7)

dYIt = Vt ∗ sen(θIt) ∗ wJi (3.8)

donde wJi es el paso instantaneo que tienen los incentivos para cada jugador en

cada iteracion, el cual depende de tres factores: St, Gt y wPS, que representan el

marcador actual del usuario, el coeficiente “ambientalista” (que tan dispuesto

esta el participante a desviarse de su ruta para medir en un Pollution Spot) y

el peso o puntuacion que le otorgarıa medir en el Pollution Spot por el cual se

esta desviando, respectivamente. La ecuacion 3.9 muestra el calculo de wJi en

cada iteracion. Los valores St, Gt y wPS estan normalizados.

wJi =St +Gt + wPS

3(3.9)

La salida de cada modulo es multiplicada por el peso que tiene cada modulo

en el movimiento de los transeuntes en la superficie de simulacion. Los valores de

los pesos fueron escogidos mediante prueba y error, para simular lo mas cercano

a la realidad el comportamiento promedio de las personas caminando. Los valores

escogidos finalmente se muestran en el cuadro 3.1. El valor del peso de los incentivos

es el maximo valor que puede tener este modulo sobre cada transeunte en cada

Page 44: Falta título de la tesis - Javeriana

Capıtulo 3. Mecanismos de Incentivos 44

iteracion de las pruebas, su valor instantaneo se calcula como la suma normalizada

de los diferentes factores que promueven al usuario a participar en el juego, segun la

ecuacion 3.9.

Para evaluar la calidad de la informacion antes y despues de la aplicacion de

los mecanismos de incentivos, cuando un transeunte se encuentra a una distancia

BLE inferior a la distancia de trasmision maxima especificada para un dispositivo

Bluetooth de clase 2 [1] (BLE = 30m), se actualiza una matriz con la posiciones

donde se han realizado mediciones Mi. Utilizando las posiciones almacenadas en Mi

y las posiciones de todos los Pollution Spots ubicados en la superficie de simulacion,

se calcula el coeficiente de determinacion (R2) (ecuacion 2.1), para cada escenario.

Modulo Parametro Peso

Camino Aleatorio wR 0.01Camino con Destino wD 0.30Camino Probable wC 0.34Camino con Incentivos wJ 0.35

Cuadro 3.1 Peso de cada parametro durante la caminata.

3.4.2. Analisis de los Resultados

Se realizaron dos conjuntos de pruebas para la evalucaion del aporte de los Me-

canismos de Incentivos a la calidad de la informacion.

1. Variacion del coeficiente “ambientalista” Gt

Estas pruebas se realizaron para simular el comportamiento de las personas

segun lo tan dispuestos que esten a participar en el sistema segun su criterio

personal. El comportamiento de R2 se muestran en el grafico de la figura 3.5.

Se hicieron las pruebas con un peso de wJ = 0.35 para los mecanismos de

incentivos y un total de N = 20 transeuntes.

2. Variacion del numero de transeuntes N

Los resultados de este conjunto de pruebas demuestran la necesidad de tener

un numero mınimo de participantes en el sistema para que la calidad de la

Page 45: Falta título de la tesis - Javeriana

Capıtulo 3. Mecanismos de Incentivos 45

Figura 3.4 Variacion de la Calidad de Informacion segun la variacion del coeficienteambientalista G

informacion mantenga valores apropiados. Se utilizo un coeficiente Gt medio

de 0.8 y un peso de wJ = 0.35 para los mecanismos de incentivos.

Puede observarse que es mayor el efecto sobre el coeficiente de calidad de la

informacion al variar la cantidad de usuarios en el sistema que al variar la forma en la

que estos se comportan una vez que tengan la aplicacion. Esto indica la necesidad de

lograr una amplia difusion de la aplicacion, un vez que este completamente montado

el sistema.

Conclusiones

Del analisis anterior se evidencia que el diseno correcto de un algoritmo para

promover la participacion de los usuarios en un sistema SP juega un papel funda-

mental en la calidad de la informacion de las variables recopiladas por el sistema,

especialmente cuando el esquema no cuenta con presupuesto para remunerar la par-

ticipacion. El empleo de tecnicas de gamificacion presenta un buen rendimiento en

aplicaciones SP sin presupuesto.

Page 46: Falta título de la tesis - Javeriana

Capıtulo 3. Mecanismos de Incentivos 46

Figura 3.5 Variacion de la Calidad de Informacion segun la variacion del numero detranseuntes N

Page 47: Falta título de la tesis - Javeriana

Capıtulo 4

Implementacion del Sistema

En el capıtulo 1 se describio el sistema SP para la Red de Monitoreo de la

Calidad del Aire para la Pontificia Universidad Javeriana, presentando los modulos

con los que cuenta el esquema. En el presente, se describen los procesos y rutinas

mas importantes en la implementacion del sistema.

4.1. Algoritmo Combinado de Incentivos y Pro-

teccion de la Privacidad

Los mecanismos analizados en los capıtulos 2 y 3 no funcionan por separado en

el sistema, sino que deben combinar sus funcionalidades para el desempeno correcto

en el esquema: lograr recompensar al usuario por su participacion sin comprometer

sus datos sensibles. Para ello se emplean las etiquetas IDMision mencionadas ante-

riormente, las cuales identifican de forma inequıvoca a cada Mision que se publica

en la Red en la ronda Rt.

4.1.1. Ronda de juego Rt

Para poder llevar un control de las misiones que se lanzan, se define cada itera-

cion del sistema como un intervalo llamado ronda del juego (Rt) que comprende el

perıodo de tiempo entre la publicacion de las misiones asociadas a un Rt especıfico,

la realizacion de estas por parte del usuario, la recopilacion de la informacion, y el

47

Page 48: Falta título de la tesis - Javeriana

Capıtulo 4. Implementacion del Sistema 48

Figura 4.1 Flujo de procesos y mensajes durante una ronda del juego Rt.

procesamiento de los datos para el lanzamiento de las misiones asociadas a la ronda

siguiente (Rt+1).

En la figura 4.1 se detalla el flujo de procesos y mensajes entre las aplicaciones

en los nodos Terminal Movil, Servidor Proxy y Servidor de Aplicacion durante una

ronda del juego Rt, asumiendo que el usuario ya tiene la aplicacion P-Spots instalada

en su Smartphone, esta registrado en el sistema y ha iniciado la sesion (seccion 4.1.2).

La ronda Rt comienza cuando el Servidor de Aplicacion envıa o publica las nuevas

misiones en el servidor Proxy. Los datos asociados a las misiones que necesita conocer

el Servidor de Proxy son:

IDMision: el identificador de la Mision que corresponde con el campo ID de las

tablas 1.3 y 1.5, para poder compensar a los participantes con la puntuacion

correspondiente a cada Mision con la que contribuyan. Es un valor unico que

se calcula a partir del hash de la suma de las coordenadas de latitud y longitud

de las localizaciones donde se debe medir.

Puntos: La puntuacion correspondiente con cada Mision, que se otorgara como

recompensa a los usuarios que colaboren con esta. Corresponde con el campo

Page 49: Falta título de la tesis - Javeriana

Capıtulo 4. Implementacion del Sistema 49

MISSION de las tablas 1.3 y 1.5.

Latencia: Este dato indica al Servidor Proxy el tiempo de vigencia de la Mision,

cuando se vence puede borrar las entradas correspondientes con el IDMision en

la Tabla de Misiones. El valor de la latencia es el campo EXPIRES de las

tablas 1.3 y 1.5.

Esto campos se actualizan en la tabla 1.3 cada vez que el Proxy recibe las nuevas

misiones.

Cuando un usuario desea jugar, abre la aplicacion P-Spots, la cual muestra la

pantalla (b) de la figura 4.2. Al presionar el boton “Ver tareas”, la aplicacion envıa el

mensaje “Solicita Mision” hacia el Servidor de Aplicacion, y el Servidor de Aplicacion

contesta con las misiones generadas para la rondaRt. Este intercambio de mensajes se

hace por un canal TCP ya que el Servidor envıa todas las Misiones correspondientes

con la ronda, lo cual no implica que el usuario vaya a realizar o este cerca de la

ubicacion de alguna. Los datos de las Misiones que necesita la aplicacion son:

Localizacion: Son las coordenadas de Latitud y Longitud de la Mision, para

que la aplicacion pueda mostrar al usuario donde se debe medir. Corresponde

con los valores de los campos LATITUDE y LONGITUDE de la tabla 1.5.

Mecanismo: Este valor es la bandera que indica a la aplicacion si debe cifrar

u ofuscar los datos asociados a cada Mision que se le envio al usuario. Esta

bandera corresponde con el campo ENCRY PT de la tabla 1.5

POI: Los Puntos de Interes necesarios para ofuscar los Datos, los cuales son

generados el el Servidor de Aplicacion para cada ronda, utilizando el algoritmo

descrito en la seccion 2.5.

Cuando la aplicacion recibe estos datos cambia la actividad actual para mostrar

la usuario las 3 misiones mas cercanas a el en un mapa donde la localizacion del

usuario se representa con un marcador color azul, y las misiones se representan

con banderas (pantalla (c) de la figura 4.2). Cuando el usuario desee reportar los

datos presiona el boton “Medir”, lanzando con esta accion una Tarea Asıncrona1

1http://developer.android.com/reference/android/os/AsyncTask.html

Page 50: Falta título de la tesis - Javeriana

Capıtulo 4. Implementacion del Sistema 50

(AsyncTask) de Android en la que la aplicacion adquiere los datos desde Pollution

Spot, a traves de un socket Bluetooth (seccion 4.2.1). Si no existe un Pollution Spot

lo suficientemente cercano al usuario para que pueda ser accesible la tarea se cancela

e informa al usuario.

Figura 4.2 Pantallas de la Aplicacion P-Spots : (a) Pantalla de Inicio, (b) PantallaPrincipal, (c) Pantalla de Misiones.

En el caso en que sı se descargan los datos, estos son procesados de acuerdo a

como indica la bandera Mecanismo y se envıan usando las tecnicas de cifrado o las de

ofuscacion. Ademas se calcula el IDMision puesto que la aplicacion tambien conoce

las coordenadas de las misiones, y se adjunta a la trama que se envıa al Servidor

Proxy. La trama que se envıa al servidor tambien contiene el ID del usuario, para

que este pueda ser recompensado. Para el envıo de la trama se utiliza el modulo de

comunicacion correspondiente (TCP o SSL, seccion 4.2.3).

Capa extra de seguridad En el capıtulo 1 se menciono que el Servidor Proxy

actua como mediador entre el Primer Nivel (aplicacion en el Terminal Celular) y el

Quinto Nivel (Servidor de Aplicacion) de la arquitectura de la Red de Monitoreo,

Page 51: Falta título de la tesis - Javeriana

Capıtulo 4. Implementacion del Sistema 51

anadiendo un capa extra de proteccion. Esta mediacion tiene efecto cuando se envıan

los datos recolectados desde el Terminal al Proxy: cuando el Servidor Proxy recibe

la trama desde el celular, primero revisa si la Mision aun esta vigente mediante el

campo EXPIRES de la tabla 1.3, y luego remueve el ID del usuario de la trama

(cuadro 4.1) y el IDMision y reenvıa los datos asociados a las variables de interes

hacia el Servidor de Aplicacion.

Cuando recibe la trama con las variables de interes, el Servidor de Aplicacion las

guarda en su base de datos. Si la operacion de guardar los datos concluye sin errores

envia un mensaje de confirmacion al Servidor Proxy (ACK), con lo cual este procede

a actualizar la puntuacion del usuario y los demas campos en la tabla 1.2 y alerta

al usuario de la conclusion satisfactoria de la Mision. De ocurrir un error durante el

almacenamiento de los datos (los valores no cumplan con las restricciones puestas

sobre los campos de la tabla 1.4), se envıa un mensaje de confimacion negativo hacia

el Servidor Proxy y este alerta al usuario que la tarea no termino correctamente.

4.1.2. Registro e Inicio de Sesion del usuario en el Sistema

En la pantalla (a) de la figura 4.2 se observa la interfaz grafica de la primera

pantalla que aparece cuando se abre la aplicacion P-Spots por primera vez o cuando

el usuario no guardo su sesion en el telefono.

Registro del usuario en el sistema En el caso en que el usuario nunca se ha

registrado en el sistema, cuando este llena los campos “Usuario” y “Contrasena”

y presiona el boton “Registrarse”, la aplicacion envıa un mensaje hacia el servidor

Proxy por un canal SSL, con la estructura especificada en la segunda fila del cuadro

4.1. Cuando el Servidor Proxy recibe esta trama procede a insertar al nuevo usuario

en la tabla 1.2, almacenando la contrasena como se explico en la seccion 1.3.4. Luego

envıa al usuario el IDUsuario que genero, pues con este identificador se asegura que

la participacion del usuario en el sistema sea reconocida. Si la casilla “No cerrar se-

sion” estaba marcada la aplicacion guarda el IDUsuario en el almacenamiento interno

de la aplicacion, de forma tal que este dato no pueda ser accesible al resto de las

aplicaciones o al usuario2.

2Exceptuando los casos en que el telefono tiene los permisos de control avanzado (root).

Page 52: Falta título de la tesis - Javeriana

Capıtulo 4. Implementacion del Sistema 52

Inicio de sesion La estructura de la trama para este escenario se muestra en la

tercera fila del cuadro 4.1. Este mensaje tambien se envıa utilizando un canal seguro.

Cuando el Servidor Proxy recibe la solicitud de inicio de sesion, revisa que en efecto

la combinacion de USER y PASSWORD que representa el mensaje recibido se

encuentre registrada. En caso afirmativo contesta con el IDUsuario (al cual se le da

el tratamiento explicado en el parrafo anterior). En caso de no estar previamente

registrado, el Proxy devuelve un mensaje de error a la aplicacion, que alerta al

usuario.

Luego de la culminacion exitosa de cualesquiera de estos dos procesos, la apli-

cacion envıa la trama mostrada en la ultima columna del cuadro 4.1 al Servidor de

Aplicacion, solicitando la contrasena del keyStore que tiene en su almacenamiento

interno, para poder obtener la llave secreta que se utilizara al aplicar las tecnicas de

cifrado. Luego de recibir la contrasena, se muestra al usuario la pantalla principal

del juego (pantalla (b) de la figura 4.2), desde la cual el usuario puede ver su Status

en el juego a partir de la opcion “Mis Resultados”, familiarizarse con el ambiente de

la aplicacion presionando “¿Como jugar?”, o comenzar a jugar.

4.2. Lado del Terminal Celular

En el terminal celular se encuentra la aplicacion P-Spots, disenada con una inter-

faz grafica amigable para el usuario, con las funcionalidades de conectividad Bluetooth

con los modulos Pollution Spots, TCP/SSL con los niveles superiores del sistema, y

procesamiento de los datos para su adecuacion con las diferentes interfaces. Como

se especifico en el capıtulo 3 la aplicacion tambien funciona como un juego para el

usuario. Los principales algoritmos y modulos de la aplicacion se describen a conti-

nuacion.

4.2.1. Comunicacion con los Pollution Spots

La comunicacion con los Pollution Spots comienza por el escaneo en busca de

estos, si alguno es detectado se procede a interrogar al adaptador de Bluetooth local

para saber si esta previamente pareado, en caso negativo se procede al pareado a

traves de un servicio del sistema. Una vez pareado el adaptador local con el Po-

Page 53: Falta título de la tesis - Javeriana

Capıtulo 4. Implementacion del Sistema 53

Figura 4.3 Tarea Asıncrona para la comunicacion por Bluetooth

llution Spot se abre un canal RFCOMM para la comunicacion con el modulo de

sensores y ocurre el intercambio de las tramas especificadas en la figura 4.4. Todos

los componentes de la trama son cadenas de caracteres de tamano fijo (especificado

por la cantidad de veces que aparece) excepto la cadena de caracteres inicial “C”,

que tiene tamno variable e indica la cantidad de tramas con la misma estructura que

se envıan.

Cuando la actividad termina le comunica a la actividad que la lanzo que ya

termino y le pasa los resultados. Si la adquisicion de datos fue correcta, se llama al

modulo de Procesamiento de los Datos Ambientales.

Figura 4.4 Comunicacion con los Pollution Spots.

Page 54: Falta título de la tesis - Javeriana

Capıtulo 4. Implementacion del Sistema 54

4.2.2. Procesamiento de los Datos Ambientales.

En la figura 4.5 se observa el flujo de la Tarea Asıncrona de Procesamiento de los

Datos Ambientales. El primer paso en esta tarea es analizar los datos que se recibieron

por Bluetooth para convertirlos a formatos mas acordes para su procesamiento y

transmision al Servidor Proxy. Luego se obtiene la localizacion a partir del Google

API Client3.

Figura 4.5 Procesamiento de las variables de interes en la aplicacion P-Spots

En dependencia de la bandera ENCRY PT asociada a la mision que el usuario

esta realizando se procede a cifrar u ofuscar los datos.

Cifrar los datos En el caso en que se deba cifrar los datos, se utiliza el algoritmo

de llave simetrica AES, con una llave de tamano 128 bits, la cual se encuentra

almacenada en un keyStore bajo contrasena en el almacenamiento interno de la

3https://developer.android.com/google/auth/api-client.html

Page 55: Falta título de la tesis - Javeriana

Capıtulo 4. Implementacion del Sistema 55

aplicacion. Como se menciono en la seccion 4.1.2, la contrasena para obtener la llave

se recibe desde el Servidor de Aplicacion a traves de un canal SSL.

Ofuscar los datos Si la bandera indica que los datos deben ofuscarse, un algo-

ritmo escoge de entre los POI el mas cercano a la localizacion real del usuario y se

sustituye la localizacion real por el POI.

El proximo paso es calcular el valor de IDMision como el Hash SHA1 de la

suma de las localizaciones reales de la mision, y concatenar este valor al paquete.

Por ultimo se anade el IDUsuario y el caracter que indica que es una trama de datos

ambientales, quedando como se muestra en la primera fila del cuadro 4.1.

4.2.3. Comunicacion con los Niveles Superiores

La comunicacion con los Niveles Superiores se implementa a partir de dos tareas

Asıncronas, que implementan un socket TCP y un socket SSL respectivamente, para

brindar las funcionalidades necesarias en cada caso. El cuadro 4.1 muestra los tipos

de trama que envıa la aplicacion, su destino, y el tipo de canal que utilizan. La trama

con cabecera S se utiliza para solicitar el Estatus del usuario, el cual se solicita con

el boton “Ver mis Resultados” (pantalla (b) de la figura 4.2).

Cuadro 4.1 Estructura de la trama de datos desde el Segundo Nivel (Aplicacioncelular) al Cuarto (Servidor Proxy) y Quinto (Servidor de Aplicacion) Nivel

Destino Canal Cabecera Identificacion Complemento

Proxy TCP o SSL M IDUsuario IDMision + Datos Ambientales

Proxy SSL R IDUsuario Contrasena

Proxy SSL I IDUsuario Contrasena

Proxy TCP S IDUsuario -

Aplicacion TCP K IDUsuario -

Page 56: Falta título de la tesis - Javeriana

Capıtulo 4. Implementacion del Sistema 56

4.3. Lado del Servidor Proxy

A continucacion se explican las funcionalidades del Servidor Proxy, que actua

como un mediador en la comunicacion entre el Segundo y Quinto Nivel, y es el

encargado del funcionamiento de los mecanismos de Incentivos (funciones que se

describieron en la seccion ). El funcionamiento del Servidor Proxy es bastante sim-

ple, puesto que no le tocan tareas que exijan mucha carga de procesamiento. Las

aplicaciones en los Servidores Proxy y de Aplicacion se escribieron en Java.

4.3.1. Manejo de las Bases de Datos

Dentro de este modulo estan integrados el conjunto de metodos que permiten

a la aplicacion corriendo en el servidor comunicarse con la base de datos, insertar,

modificar y extraer datos. Estas acciones se llevan a cabo a partir de consultas

basadas en el lenguaje estructurado de MySQL4. Las aplicaciones en el Servidor

Proxy el Servidor de Aplicacion tiene esta funcionalidad, puesto que ambas manejan

bases datos.

4.3.2. Comunicacion el Segundo y Quinto Nivel

El Servidor Proxy debe estar escuchando constantemente por los puertos desti-

nados a los canales TCP y SSL por pedidos tanto desde el Servidor de Aplicacion,

como de las aplicaciones en los terminales celulares, los cuales pueden ocurrir de for-

ma simultanea, por lo que los modulos de comunicacion funcionan como hilos, cada

nueva solicitud de conexion lanza un nuevo hilo que corre los metodos necesarios

para la lectura y escritura de los puertos.

4.4. Lado del Servidor de Aplicacion

El Servidor de Aplicacion implementa las funcionalidades mas pesadas dentro de

la Red de Monitoreo de la Calidad del Aire de la PUJ ya que es el nodo donde se

centraliza los datos recopilados del sistema, se realiza la interpolacion de estos, se

4https://www.mysql.com/

Page 57: Falta título de la tesis - Javeriana

Capıtulo 4. Implementacion del Sistema 57

generan los archivos JSON para los mapas la Aplicacion Web, corre el Mecanismo

Hıbrido descrito en la seccion 2.5, y determina el peso o valor de cada nueva mision

generada para que el Servidor Proxy pueda recompensar a los participantes, entre

otras funcionalidades.

Los modulos de comunicacion con los Niveles Segundo y Cuarto funcionan de

forma similar a como se explico en la seccion 4.3.2, de esta forma, cada vez que

se reciba desde el Servidor Proxy una solicitud de conexion para enviar los datos

Ambientales, se crea un nuevo hilo que procesa la trama recibida, y llama a una

funcion del modulo de manejo de la base de datos para insertar los nuevos valores.

Los modulos para el manejo de las Bases de Datos son tambien similares, cambiando

solamente la sintaxis de las consultas debido a que la estructura de las bases de datos

son diferentes en el Servidor de Aplicacion.

4.4.1. Procesamiento de las variables de interes en la ronda

Rt+1

La aplicacion que corre en el Servidor de Aplicacion ejecuta al principio de cada

ronda Rt+1 las rutinas de procesamiento que dan soporte a las funcionalidades del

Servidor de Aplicacion. Las principales rutinas son:

Interpolacion de las variables de Interes Los datos que se reciben de cada

variable de interes no son continuos en la dimension espacial, por lo que es necesario

realizar la interpolacion de los mismos para poder obtener una superficie continua de

datos. La interpolacion se realiza a partir de un archivo shellscript de Unix compilado

desde Matlab, que contiene la funcion de interpolacion scatteredInterpolant propia

de Matlab, que construye una superficie interpoladora para una entrada de datos de

tres dimensiones. Para poder correr los shellscripts desde la aplicacion del servidor,

se utiliza la clase de Java ProcessBuilder 5, que brinda funcionalidades para crear

procesos en el sistema operativo.

La funcion de interpolacion ha dado muy buenos resultados, en las pruebas rea-

lizadas, donde para un promedio de 20 localizaciones donde se realizaron mediciones

sobre el campus de la PUJ , la superficie obtenida permite la representacion de los

5http://docs.oracle.com/javase/6/docs/api/java/lang/ProcessBuilder.html

Page 58: Falta título de la tesis - Javeriana

Capıtulo 4. Implementacion del Sistema 58

datos en los mapas de Google (figura 4.7), y su procesamiento posterior para obtener

los Puntos de Interes y Localizaciones de las nuevas misiones. Ademas, se realizaron

pruebas con datos sinteticos obteniendose los resultados mostrados en la figura 4.6.

Figura 4.6 Interpolacion de datos sinteticos para mostrar el desempeno de la funcioninterpoladora. Desde la izquierda: Superficie con todos los valores, centro: Superficieinterpolada para 10 muestras, derecha: Superficie interpolada para 50 muestras.

Mecanismo Hıbrido El funcionamiento del Mecanismo Hıbrido se explico pre-

viamente en la seccion 2.5. La aplicacion corre el mecanismo como un shellscript

compilado en Matlab, debido a la complejidad de los algoritmos implementados y

al alcance del proyecto. El shellscript recibe como entrada un archivo que contiene

la superficie de datos previamente interpolada, y devuelve los Puntos de Interes,

localizacion de las Misiones y decision de cifrar u ofuscar cada reporte de Mision de

la proxima ronda de Juego del sistema.

Actualemente la puntuacion de cada Mision se esta generando de acuerdo con el

algoritmo de decision del Mecanismo Hıbrido: si los datos relativos a una mision debe

ser cifrados, se le otorga mayor puntuacion que a las misiones que utilizan ofuscacion,

puesto que cifrar los datos demanda ms recursos del terminal. Se debe trabajar a

futuro en la implementacion de un algoritmo que determine los lugares que tengan

menos densidad de mediciones, y otorgrale a estos mas puntuacion para promover

que el usuario se dirija a los mismos a realizar tareas de sensado.

Page 59: Falta título de la tesis - Javeriana

Capıtulo 4. Implementacion del Sistema 59

4.4.2. Aplicacion web

En la figura 4.7 se muestra la interfaz grafica de la aplicacion web que se desa-

rrollo para facilitar el acceso a los datos recopilados por la Red de Monitoreo, y

apoyar los Mecanismos de Incentivos.

Figura 4.7 Interfaz grafica de la aplicacion web.

La aplicacion se escribio usando Javascript para aprovechar las ventajas que ofrece

este lenguaje en la implementacion de paginas web dinamicas, uso de poca memoria

del servidor ya que el codigo de la aplicacion se ejecuta del lado del cliente, y en

cuanto a su soporte en los navegadores mas populares. Como se intenta acceder lo

menos posible a las Bases de Datos del Servidor, la aplicacion muestra los mapas

a partir de archivos JSON generados previamente por un script que ejecuta la

aplicacion en el Servidor de Aplicacion (seccion 4.3.1) cada vez que se tienen los

datos de la ronda Rt−1.

La visualizacion de las variables de Interes sobre un mapa del campus de la PUJ

permite la identificacion rapida del comportamiento de las variables, a partir del uso

de gradientes de color y escalas. Otra funcionalidad que se agregara al sitio es la

visualizacion de tendencias, para conocer el comportamiento de las variables en el

tiempo.

Page 60: Falta título de la tesis - Javeriana

Capıtulo 5

Conclusiones

En el presente informe se resume el estudio, seleccion e implementacion de al-

goritmos que cumplen con las funcionalidades de proteccion de la privacidad del

usuario, promocion de su disposicion a colaborar en el sistema, a la vez que se utili-

zan eficientemente los recursos de energıa y procesamiento de los nodos involucrados

en el desarrollo de un sistema basado en SP .

5.1. Resultados de la investigacion

De las tecnicas de proteccion de la privacidad de los usuarios dentro del para-

digma de SP , se ajustan mejor a las caracterısticas de la Red de Monitoreo de la

Calidad del Aire de la PUJ las que emplean varias tecnicas de proteccion de la

privacidad simultaneamente, para aprovechar las ventajas de cada una y compensar

sus limitaciones de acuerdo al escenario. En el proyecto que se realizo, la restriccion

principal es que no se cuenta con presupuesto para compensar a los usuarios por su

particpacion, lo cual deriva en la necesidad de ahorro de los recursos de energıa y

procesamiento del terminal celular del usuario para que al menos la relacion entre

lo que esta dispuesto a aportar de su tiempo y baterıa no resulte apreciable. Dentro

de este marco, el mecanismo de privacidad hıbrido que decide cifrar u ofuscar la

informacion sensible segun el tamano de las celosıas de la region de interes, ofrece el

mejor desempeno de acuerdo con los resultados de las pruebas realizadas.

El tamano mınimo del area umbral (Smin) para decidir si se debe cifrar u ofuscar

60

Page 61: Falta título de la tesis - Javeriana

Capıtulo 5. Conclusiones 61

la informacion sensible asociada a una celosıa de la region de interes afecta el desem-

peno del mecanismo hıbrido, por lo que se escogio una Smin que ofreciera un buen

intercambio entre los recursos energeticos y y la calidad de la informacion reportada.

Las tecnicas mas generalizadas para fomentar los incentivos en los sistemas SP

son aquellas que parten de la compensacion monetaria, por lo que no son las ade-

cuadas para la Red de Monitoreo de la PUJ . Sin embargo, se pueden aprovechar las

ideas de metricas para medir la particpacion de los usuarios dentro del sistema, y

recompensar a cada uno segun su aporte. Las tecnicas de gamificacion constituyen

el sistema de recompensas que ofrece mas atractivo al adaptarse al marco de la Red

de Monitoreo de la PUJ , puesto que miden a cada participante por su contribucion

individual, y explotan la necesidad de cumplir metas intrınsecas de las personas.

Para comprobar la funcionalidad de los mecanismos de incentivos se diseno un

Banco de Pruebas, que simula el comportamiento de los participantes desplazandose

por una region donde este presente una Red de Sensores basada en SP . La carac-

terıstica mas atractiva del Banco de Pruebas es su escalabilidad, ya que considera

como entradas los diferentes parametros que pueden afectar la direccion de las per-

sonas al caminar en un area (que tambien permite ser ajustada), y tiene como salida

la sumatoria del efecto de todos los parametros de entrada que afectan el comporta-

miento de los participantes. Por lo tanto el sistema puede ser adecuado para simular

diferentes localizaciones, y diferentes comportamientos de los usuarios. En las simu-

laciones realizadas se comprobo que la cantidad de usuarios que colaboren con el

Sistema es fundamental en el desempeno del coeficiente de calidad de la informacion

(R2), ya que se observan mejores resultados aumentando la cantidad de usuarios que

colaboren, que variando su disposicion a participar de las tareas una vez que estan

dentro de la Red.

La implementacion de las tecnicas de Proteccion de Privacidad e Incentivos debe

realizarse en conjunto, por lo que se desarrollo un Algoritmo Combinado basado en

las etiquetas de misiones (IDMision), que logra asociar al usuario con su particpacion

en el sistema, sin romper el esquema de proteccion del mecanismo hıbrido.

Page 62: Falta título de la tesis - Javeriana

Capıtulo 5. Conclusiones 62

5.2. Trabajos Futuros

Las areas en las que podrıan enfocarse trabajos futuros a partir de los resultados

del presente proyecto de investigacion son:

Integracion de las simulaciones para probar los Mecanismos de Privacidad al

Banco de Pruebas que se creo para la simulacion de los Mecanismos de Incenti-

vos. De este modo se tendra una plataforma mas completa que permita probar

las diferentes variantes en que puede implementarse un sistema de Sensado

Participativo.

Como uno de los parametros de entrada del banco de Pruebas son los caminos

mas probables que pueden tomar los usuarios dentro de las superficie simula-

da, realizar un estudio del comportamiento de los transeuntes en el interior del

campus es de vital importancia para obtener resultados que describan especıfi-

camente la Red de Monitoreo de la Calidad del Aire de la PUJ .

Extension de la compatibilidad de la aplicacion celular Pollution Spots a otros

Sistemas Operativos para aumentar la penetracion de la aplicacion. Como se

afirma en la seccion anterior, mientras mas usuarios tenga el sistema, mejor es

la calidad de la informacion final.

Migracion del codigo compilado en Matlab como shellscrip que se ejecuta den-

tro de la Aplicacion Java del Servidor de Aplicacion a lenguajes como Java o

C++, para proveer de mas uniformidad al codigo del Servidor de Aplicacion,

dandole a la solucion una estructura que sea mas facilmente adaptable a los

cambios a los que sea sometido.

Page 63: Falta título de la tesis - Javeriana

Apendice A

Listado de los archivos incluidos

en el DVD

A continuacion se presenta un listado de los archivos incluidos en el DVD que

acompana este proyecto, el cual contiene los Apendices.

Carpeta Descripcion

P-Spots Fuentes del proyecto de aplicacion del lado del Terminal Ce-

lular.

Proxy-Server Fuentes del proyecto de aplicacion del lado del Servidor

Proxy.

Application-Server Fuentes del proyecto de aplicacion del lado del Servidor de

Aplicacion.

Web-Application Fuentes del proyecto de aplicacion web lado del Servidor de

Aplicacion.

Incentivos Fuentes del Banco de Pruebas disenado en Matlab para emu-

lar el comportamiento de los transeuntes en la Red de SP .

Privacidad Fuentes de las simulaciones realizadas en Matlab para evaluar

cualitativamente el funcionamiento de los diferentes mecanis-

mos de proteccion de la privacidad.

63

Page 64: Falta título de la tesis - Javeriana

Bibliografıa

[1] Honey Access. Bluetooth marketing. 2014. URL http://www.bluair.pl/

bluetooth-range.

[2] Rakesh Agrawal y Ramakrishnan Srikant. Privacy-preserving data mining. En

Proceedings of the 2000 ACM SIGMOD International Conference on Manage-

ment of Data, SIGMOD ’00, pags. 439–450. 2000. ISBN 1-58113-217-4.

[3] Syarulnaziah Anawar y Saadiah Yahya. Empowering health behaviour inter-

vention through computational approach for intrinsic incentives in participa-

tory sensing application. En Research and Innovation in Information Systems

(ICRIIS), 2013 International Conference on, pags. 281–285. IEEE, 2013.

[4] Ross J. Anderson. Why cryptosystems fail. Commun. ACM, 37(11):32–40, 1994.

ISSN 0001-0782.

[5] Paul E. Black. Manhattan distance. 2006. URL http://www.nist.gov/dads/

HTML/manhattanDistance.html.

[6] Jeffrey A Burke, Deborah Estrin, Mark Hansen, Andrew Parker, Nithya Rama-

nathan, Sasank Reddy, y Mani B Srivastava. Participatory sensing. Center for

Embedded Network Sensing, 2006.

[7] James Carrapetta, Nik Youdale, y Amanda Chow. Haze watch. 2010. URL

http://www.pollution.ee.unsw.edu.au/.

[8] Delphine Christin. Privacy in Participatory Sensing - User-controlled Privacy-

preserving Solutions for Mobile Sensing Applications. Tesis Doctoral, TU

Darmstadt, 2013.

64

Page 65: Falta título de la tesis - Javeriana

Bibliografıa 65

[9] Cory Cornelius, Apu Kapadia, David Kotz, Dan Peebles, Minho Shin, y Nikos

Triandopoulos. Anonysense: Privacyaware people-centric sensing. En In Proc.

ACM 6th Intl Conf. on Mobile Systems, Applications and Services (MOBISYS

08). 2008.

[10] Raghu K. Ganti, Nam Pham, Yu-En Tsai, y Tarek F. Abdelzaher. Poolview:

Stream privacy for grassroots participatory sensing. En Proceedings of the 6th

ACM Conference on Embedded Network Sensor Systems, SenSys ’08, pags. 281–

294. 2008. ISBN 978-1-59593-990-6.

[11] Raghu K Ganti, Fan Ye, y Hui Lei. Mobile crowdsensing: current state and

future challenges. Communications Magazine, IEEE, 49(11):32–39, 2011.

[12] Kuan Lun Huang, Salil S Kanhere, y Wen Hu. Preserving privacy in participa-

tory sensing systems. Computer Communications, 33(11):1266–1280, 2010.

[13] L.G. Jaimes, I. Vergara-Laurens, y M.A. Labrador. A location-based incentive

mechanism for participatory sensing systems with budget constraints. En Per-

vasive Computing and Communications (PerCom), 2012 IEEE International

Conference on, pags. 103–108. 2012.

[14] S.S. Kanhere. Participatory sensing: Crowdsourcing data from mobile smartp-

hones in urban spaces. En Mobile Data Management (MDM), 2011 12th IEEE

International Conference on, tomo 2, pags. 3–6. 2011.

[15] Iordanis Koutsopoulos. Optimal incentive-driven design of participatory sensing

systems. En INFOCOM, 2013 Proceedings IEEE, pags. 1402–1410. IEEE, 2013.

[16] Bdard J. Lands Nathan. Gamification wiki. 2010. URL http://badgeville.

com/wiki//.

[17] Juong-Sik Lee y Baik Hoh. Sell your experiences: a market mechanism based in-

centive for participatory sensing. En Pervasive Computing and Communications

(PerCom), 2010 IEEE International Conference on, pags. 60–68. 2010.

Page 66: Falta título de la tesis - Javeriana

Bibliografıa 66

[18] Ashwin Machanavajjhala, Daniel Kifer, Johannes Gehrke, y Muthuramakrish-

nan Venkitasubramaniam. -diversity: Privacy beyond k-anonymity. En IN IC-

DE. 2006.

[19] Ourcast. Minutely.the minute-by-minute rain forecast at your exact location.

2013. URL http://www.minutely.com/.

[20] Martin T. Pietrucha Richard L. Knoblauch y Marsha Nitzburg. Study compares

older and younger pedestrian walking speeds. 1997. URL http://www.usroads.

com/journals/p/rej/9710/re971001.htm.

[21] Immanuel Schweizer, Tu Darmstadt, Florian Probst, Roman Brtl, Tu Darms-

tadt, Max Mhlhuser, Tu Darmstadt, Axel Schulz, y Tu Darmstadt. Noisemap

- real-time participatory noise maps. En In Second International Workshop on

Sensing Applications on Mobile Phones. 2011.

[22] Y. Ueyama, M. Tamai, Y. Arakawa, y K. Yasumoto. Gamification-based in-

centive mechanism for participatory sensing. En Pervasive Computing and

Communications Workshops (PERCOM Workshops), 2014 IEEE International

Conference on, pags. 98–103. 2014.

[23] IdalidesJ. Vergara-Laurens, Diego Mendez-Chaves, y MiguelA. Labrador. On

the interactions between privacy-preserving, incentive, and inference mecha-

nisms in participatory sensing systems. En Network and System Security, tomo

7873 de Lecture Notes in Computer Science, pags. 614–620. Springer Berlin

Heidelberg, 2013. ISBN 978-3-642-38630-5. doi:10.1007/978-3-642-38631-2 47.

[24] I.J. Vergara-Laurens y M.A. Labrador. Preserving privacy while reducing power

consumption and information loss in lbs and participatory sensing applications.

En GLOBECOM Workshops (GC Wkshps), 2011 IEEE, pags. 1247–1252. 2011.

[25] I.J. Vergara-Laurens, D. Mendez, y M.A. Labrador. Privacy, quality of informa-

tion, and energy consumption in participatory sensing systems. En Pervasive

Computing and Communications (PerCom), pags. 199–207. 2014.

[26] Hao Wang, Yunlong Zhao, Yang Li, Kai Zhang, N. Thepvilojanapong, y Y. To-

be. An optimized directional distribution strategy of the incentive mechanism

Page 67: Falta título de la tesis - Javeriana

Bibliografıa 67

in senseutil-based participatory sensing environment. En Mobile Ad-hoc and

Sensor Networks (MSN), 2013 IEEE Ninth International Conference on, pags.

67–71. 2013.

[27] Junsong Zhang, Jian Ma, Wendong Wang, y Yazhi Liu. A novel privacy pro-

tection scheme for participatory sensing with incentives. En Cloud Computing

and Intelligent Systems (CCIS), tomo 03, pags. 1017–1021. 2012.

[28] Junsong Zhang, Jian Ma, Wendong Wang, y Yazhi Liu. A novel privacy pro-

tection scheme for participatory sensing with incentives. En Cloud Computing

and Intelligent Systems (CCIS), 2012 IEEE 2nd International Conference on,

tomo 03, pags. 1017–1021. 2012.

[29] Yu Zhang y Mihaela van der Schaar. Reputation-based incentive protocols

in crowdsourcing applications. En INFOCOM, 2012 Proceedings IEEE, pags.

2140–2148. IEEE, 2012.