Comparativa de servicios de localización

Anuncio
TRABAJO FIN DE GRADO
Título
Comparativa de servicios de localización
Autor/es
Óscar Martínez Oliván
Director/es
Angel Luis Rubio García
Facultad
Facultad de Ciencias, Estudios Agroalimentarios e Informática
Titulación
Grado en Ingeniería Informática
Departamento
Curso Académico
2012-2013
Comparativa de servicios de localización, trabajo fin de grado
de Óscar Martínez Oliván, dirigido por Angel Luis Rubio García (publicado por la
Universidad de La Rioja), se difunde bajo una Licencia
Creative Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported.
Permisos que vayan más allá de lo cubierto por esta licencia pueden solicitarse a los
titulares del copyright.
©
©
El autor
Universidad de La Rioja, Servicio de Publicaciones, 2013
publicaciones.unirioja.es
E-mail: [email protected]
FACULTAD DE CIENCIAS, ESTUDIOS AGROALIMENTARIOS E
INFORMÁTICA
TITULACIÓN: Grado en Ingeniería Informática
TÍTULO DEL PROYECTO O TRABAJO FIN DE GRADO:
Comparativa de servicios de localización
DIRECTOR DEL PROYECTO O TRABAJO:
Ángel Luis Rubio García
DEPARTAMENTO: Matemáticas y Computación
ALUMNO: Óscar Martínez Oliván
CURSO ACADÉMICO: 2012 / 2013
CONVOCATORIA: Junio de 2013
ÍNDICE DE CONTENIDOS
Resumen ……………………………………………………………………………………................. 3
Summary ……………………………………………………………………………………................. 3
Introducción …………………………………………………………………………………............... 4
1. Contexto …………………………………………………………………………………………... 4
2. Objetivos …………………………………………………………………………………………... 6
3. Primer contacto ………………………………………………………………………………….. 7
Desarrollo ……………………………………………………………………………………………... 11
4. Tecnologías ……………………………………………………………………………………… 11
4.1. GPS …………………………………………………………………………………….... 11
4.2. WPS ……………………………………………………………………………………… 13
4.3. Redes móviles (GSM) ………………………………………………………………... 15
4.4. Direcciones IP …………………………………………………………………………. 18
5. Aplicaciones …………………………………………………………………………………….. 20
5.1. Aplicaciones online ………………………………………………………………….. 21
5.1.1. Mapas ………………………………………………………………………. 21
5.1.2. Imágenes y geoetiquetado ……………………………………………. 22
5.1.3. Redes sociales …………………………………………………………….. 23
5.2. Aplicaciones para teléfonos móviles …………………………………………….. 24
5.2.1. Mapas ………………………………………………………………………. 25
5.2.2. Navegación GPS …………………………………………………………. 26
5.2.3. Redes sociales …………………………………………………………….. 27
5.2.4. Puntos de interés …………………………………………………………. 28
5.2.5. Realidad aumentada ……………………………………………………. 29
6. Privacidad ……………………………………………………………………………………….. 30
7. Seguridad ………………………………………………………………………………………… 37
7.1. Sistema operativo ……………………………………………………………………. 37
7.2. Software de geolocalización ……………………………………………………… 40
7.3. Comunicaciones en la red …………………………………………………………. 42
7.4. Seguridad física ……………………………………………………………………….. 44
7.5. Desarrollo de aplicaciones seguras ………………………………………………. 46
8. Ejemplo aplicación de geolocalización ……………………………………….………….. 50
Conclusiones …………………………………………………………………………………………. 54
Bibliografía ……………………………………………………………………………………………. 55
-2-
RESUMEN
La geolocalización ha tenido una gran evolución en los últimos años y se
ha convertido en una parte importante de nuestras vidas. En este trabajo
hablaré de las diferentes tecnologías de localización actuales, de sus
aplicaciones en la vida diaria de los usuarios, de los diferentes problemas que
puede tener para la privacidad de las personas y así como de las
precauciones que deben tomar tanto los usuarios como los desarrolladores
con esta tecnología. En la última parte del trabajo realizaré una pequeña
explicación técnica de una aplicación de ejemplo que utilizará servicios de
geolocalización.
SUMMARY
The geolocation has had a great evolution in recent years and it has
become an important part of our lives. In this research I will discuss the different
current location technologies, their applications in daily life of users, the
different problems that may have for personal privacy and as well as the
precautions to take by users and developers with this technology. In the last
part of the research I will make a small technical explanation of a sample
application that uses geolocation services.
-3-
INTRODUCCIÓN
1. CONTEXTO
Para encontrar los comienzos de las tecnologías de localización nos
tenemos que remontar miles de años, cuando los indios americanos
empezaron a utilizar señales de humo para localizar sus hogares e incluso para
comunicar mensajes.
Pero fue a partir del siglo XX cuando las tecnologías de localización han
experimentado una gran evolución.
A principios de 1900, mediante la medición de la fuerza de las señales
de radio, tanto barcos como aviones como tropas militares de tierra
empezaron a ser capaces de calcular sus coordenadas desde distancias muy
largas.
En los años 60, un grupo de satélites orbitaban alrededor del planeta
Tierra permitiendo triangular la posición de un receptor. Los satélites enviaban
mensajes con marcas de tiempo y el receptor calculaba la distancia a cada
satélite basándose en la velocidad de los mensajes entrantes en comparación
con el momento en que fueron enviados.
Debido a propósitos militares, el tamaño de dichos receptores se fue
viendo reducido con el paso de los años. Hasta que en los 90, el GPS de
navegación para automóviles se convirtió en el primer dispositivo de
localización creado para ganar fuerza entre los consumidores.
El siguiente gran salto se produjo con la llegada de los teléfonos móviles.
Aunque los teléfonos móviles empezaron a llevar tecnologías de localización a
principios del siglo XXI, la aparición del iPhone de Apple trajo consigo el mayor
cambio en la industria. Permitió que una gran cantidad de terceros
empezaran a desarrollar programas que aprovechaban las ventajas del
hardware de posicionamiento que integraban los teléfonos móviles.
Actualmente, con la tecnología ya en las manos de millones de
consumidores, el coste de crear una aplicación de geolocalización que señale
la localización precisa de un usuario en el planeta Tierra es realmente cero.
Cualquiera que tenga la paciencia de estudiarse unos cuantos tutoriales de
programación es capaz de crear una de dichas aplicaciones.
-4-
La idea de la realización de este Trabajo de Fin de Grado parte del
Proyecto de Fin de Carrera que realice durante el curso académico 2008/2009.
En esa época yo me encontraba trabajando en una empresa que
utilizaba dispositivos bluetooth de reconocimiento de teléfonos móviles y me
surgió la idea de que mi Proyecto de Fin de Carrera podría consistir en el
desarrollo de un Sistema de Control de Acceso de Personal vía Bluetooth.
Dicho sistema consistía en la colocación de emisores bluetooth en las
distintas entradas de una empresa, que registrarían la entrada y la salida de los
empleados mediante el bluetooth de sus teléfonos móviles y que permitirían el
envío de notificaciones a los empleados cuando pasasen cerca de alguno de
dichos emisores bluetooth.
Actualmente parece que la tecnología bluetooth ha desaparecido del
mapa de las tecnologías de localización. Esto se debe principalmente al gran
auge que han experimentado en los últimos tiempos otras tecnologías que
permiten conexiones más rápidas, un rango de distancias mayor y mejores
mecanismos de seguridad, y lo que es más importante, permiten que cualquier
dispositivo conectado a Internet (bien se trate de un teléfono móvil, un
ordenador portátil, un equipo de sobremesa, etc.) pueda obtener todo tipo de
información en tiempo real, así como la localización de la misma con total
precisión.
En particular, los dispositivos móviles se prestan especialmente a la
aplicación de las tecnologías de geolocalización. Aparte del desarrollo de
múltiples mecanismos que permiten la localización geográfica de un
dispositivo, el desarrollo de la banda ancha móvil permite la conexión
permanente a Internet para los denominados “teléfonos inteligentes”
(smartphones).
Además, la combinación de esta tecnología con los sistemas de
almacenamiento “en la nube” (cloud) permite la sincronización automática
de información entre dispositivos heterogéneos.
Por tanto, debido a mi experiencia previa en el campo de la
localización de personas, así como la extensión de estas tecnologías y su
demanda actual, he decidido que el tema de mi Trabajo de Fin de Grado va
a ser la geolocalización.
-5-
2. OBJETIVOS
Por un lado, realizaré un análisis de las diferentes tecnologías que se
utilizan hoy en día para geolocalizar personas, así como de las diferentes
aplicaciones prácticas de dichas tecnologías.
Y por otra parte, debido a la naturaleza de la información utilizada por
las tecnologías de geolocalización, en general información privada o por lo
menos sensible, realizaré un estudio de los riesgos relacionados con la
geolocalización, tanto para la privacidad como para la seguridad, además de
una enumeración de ciertas recomendaciones para el uso de aplicaciones de
geolocalización.
A continuación presento una lista con los objetivos que se esperan
alcanzar en el desarrollo de este Trabajo de Fin de Grado:
•
Realizar una buena planificación de las tareas previstas para
la elaboración del Trabajo de Fin de Grado, preparando un
calendario de desarrollo del trabajo, a partir de las horas que
se pueden invertir cada día, así como de las horas estimadas
para cada tarea, teniendo en cuanta tanto los días festivos
como las reuniones de control del tutor.
•
Recopilar documentación relacionada con el tema del
trabajo desde distintos puntos de vista, no simplemente desde
un
punto
de
vista
tecnológico.
Dicho
proceso
de
recopilación de documentación se intentará realizar de
forma ordenada y sistemática, para que sea fácilmente
accesible a lo largo de la elaboración de la memoria.
•
Explicar las principales tecnologías de georreferenciación
que
se
utilizan
actualmente,
explicando
tanto
su
funcionamiento como sus principales características.
•
Detallar los diferentes tipos de aplicaciones que utilizan
geolocalización, además de señalar ejemplos y casos de
éxito de cada uno de los tipos.
•
Analizar
los
riesgos
existentes
en
los
procesos
de
geolocalización en cuanto a la privacidad de las personas e
intentar redactar una serie de consejos para un buen uso de
aplicaciones que utilizan dichos procesos.
-6-
•
Examinar las amenazas de seguridad asociadas a los
procesos de geolocalización, tanto para el software como
para el hardware.
•
Redactar la memoria de manera continuada y en paralelo a
otras tareas del Trabajo de Fin de Grado, intentando de esta
manera que la revisión final y el cierre del trabajo no lleven
demasiado tiempo.
•
Preparar la defensa del Trabajo de Fin de Grado según las
pautas dadas para la realización de una buena presentación
en la asignatura “Taller transversal II: bases de datos y sistemas
de información”.
3. PRIMER CONTACTO
Por último, antes de empezar con el desarrollo del trabajo, creo
necesario hablar de ciertos aspectos generales sobre la geolocalización, así
como dar un glosario de términos.
Empecemos definiendo el término geolocalización. La geolocalización
consiste en la unión de una serie de tecnologías que tienen como fin la
utilización de cierta información vinculada a una localización geográfica del
mundo real.
Se pueden distinguir principalmente tres componentes asociados a
todo proceso de geolocalización:
•
Un dispositivo hardware, que actuará como plataforma en la
que se desarrollará el proceso de geolocalización. Puede
tratarse de un ordenador de sobremesa, un ordenador
portátil, un dispositivo móvil, un navegador GPS, una cámara
de fotos, etc. En ciertos casos, el propio dispositivo hardware
tiene incorporada la tecnología necesaria para permitir
dicha localización (por ejemplo, un receptor GPS).
•
Un programa software, que ejecutará el proceso de
geolocalización. Este software se ejecutará en el dispositivo
hardware, y se apoyará en éste para llevar a cabo la
búsqueda
de
información,
-7-
la
determinación
de
localizaciones geográficas, y la asociación de ambos
elementos.
•
Una conexión a Internet, que actuará como medio de
obtención e intercambio de información y, en ocasiones,
como sistema de almacenamiento y procesamiento de la
misma (según el modelo cloud). Excepcionalmente, pueden
ejecutarse procesos de geolocalización sin utilizar una
conexión a Internet (modo fuera de línea), cuando los datos
necesarios se encuentren cargados con antelación en la
memoria del dispositivo.
También se pueden diferenciar principalmente tres procesos comunes
para las tecnologías de geolocalización:
•
La georreferenciación, que se basa en la localización física
de un objeto o individuo en un sistema de coordenadas, para
posteriormente
acceder
a
información
específica.
Un
ejemplo de esto sería la utilización de un sistema de
navegación mediante GPS.
•
La geocodificación, que consiste en la búsqueda de
información y su localización física en un sistema de
coordenadas. Un ejemplo de esto sería la utilización de un
servicio de mapas para buscar museos en una ciudad
determinada.
•
El geoetiquetado, que consiste en la adición de información
geográfica a un contenido generado, usualmente como
paso posterior a un proceso de georreferenciación. Un
ejemplo de esto sería la creación de una fotografía,
incluyendo en sus metadatos las coordenadas del lugar en
que fue tomada.
Dada la importancia del proceso de georreferenciación, y debido a
que juega un papel importante en la gran mayoría de las aplicaciones de
geolocalización, en ocasiones se utilizan ambos términos indistintamente.
-8-
A
continuación
se
presenta
un
glosario
de
términos
geolocalización:
•
Almacenamiento en la nube (cloud): Hace referencia al
sistema que permite a los usuarios almacenar toda su
información, ficheros y datos en servidores de terceros, de
forma que puedan ser accesibles desde cualquier sistema
con acceso a Internet.
•
Geocodificación:
Proceso
de
asignación
de
unas
coordenadas geográficas a un punto del mapa.
•
Geocodificación
Proceso
inversa:
consistente
en
la
obtención, a partir de una coordenada geográfica, de una
localización legible por humanos (dirección, nombres de
lugares, etc.).
•
Geoetiquetado:
Proceso
de
adición
de
información
geográfica a los metadatos de un fichero, de forma que se
permite su posterior georreferenciación.
•
Geomática:
Conjunto
de
dominios
del
conocimiento
orientados a la captura, procesamiento, almacenamiento, y
difusión de información geográfica. Las tecnologías de
geolocalización se inscribirían dentro de la geomática.
•
Georreferenciación: Proceso de definición de un objeto en
un espacio físico, mediante el cálculo de su localización en
un sistema de coordenadas.
•
GPS: Global Positioning System o Sistema de Posicionamiento
Global.
•
Latitud y longitud: Coordenadas que miden el ángulo entre
un punto cualquiera y su referencia (el ecuador para la
latitud y el meridiano de Greenwich para la longitud). En la
práctica, la combinación de ambos ángulos permiten
expresar cualquier posición en la superficie de la Tierra.
•
Metadatos: Pueden definirse como un conjunto de datos que
definen o caracterizan a una cierta información a la que
están asociados.
-9-
sobre
•
Triangulación:
Método
geométrico
basado
en
la
trigonometría de triángulos que, usando como referencia la
posición de varios puntos conocidos, permite determinar de
forma precisa la posición de otro desconocido.
- 10 -
DESARROLLO
4. TECNOLOGÍAS
Como
ya
geolocalización
se
al
ha
comentado
conjunto
de
anteriormente,
tecnologías
que
se
denomina
combinan
la
georreferenciación de elementos del mundo real con la información obtenida
a través de una conexión a Internet.
Debido a que es la base de la geolocalización, empezaré el desarrollo
de la memoria describiendo las tecnologías de georreferenciación más
relevantes. El orden que he elegido para presentarlas está basado en la
precisión actual de cada una de las tecnologías (de más precisa a menos
precisa).
4.1. GPS
Los objetivos iniciales del desarrollo del Sistema de Posicionamiento
Mundial, más conocido por sus siglas en inglés GPS (Global Positioning System),
fueron militares. El surgimiento de esta tecnología fue similar al de la actual
Internet, creado e instalado a comienzos de los años 60 por el Departamento
de Defensa y la Agencia Espacial Estadounidenses. Sin embargo, sus utilidades
están hoy relacionadas con servicios que permiten mejorar la calidad de vida
de las personas.
El GPS funciona a través de un Sistema Global de Navegación por
Satélite (GNSS) que permite establecer la posición de una persona, un vehículo
o una nave en todo el mundo a través de la latitud, la longitud y la altitud.
La red GPS está formada por 24 satélites en órbita. Dichos satélites están
sincronizados para cubrir en todo momento la superficie de la tierra. Mediante
la triangulación de los satélites GPS, es posible georreferenciar un dispositivo
con una precisión de entre 1 y 15 metros (en torno a los 3 metros en el 95% de
las ocasiones).
- 11 -
En la utilización de dicha tecnología es imprescindible contar con un
aparato receptor de GPS, ya que los satélites actúan únicamente como
emisores de señal, siendo imposible localizar a un receptor concreto desde la
red GPS.
Para ubicar la posición exacta donde nos encontramos situados, el
receptor GPS tiene que localizar por lo menos 3 satélites que le sirvan de
puntos de referencia. En realidad eso no constituye ningún problema porque
normalmente siempre hay 8 satélites dentro del “campo visual” de cualquier
receptor GPS. Para determinar en que lugar exacto se encuentran los satélites
en un momento concreto, el receptor tiene en su memoria un calendario
electrónico que contiene datos sobre la órbita de los satélites.
Generalmente los receptores GPS no trabajan con precisión o
directamente no funcionan cuando se encuentran bajo techo. Por lo tanto,
hay que situarlos preferiblemente donde no existan obstáculos que impidan la
visibilidad y reduzcan su capacidad de captar las señales que envían a la
Tierra los satélites.
Cuando el receptor detecta el primer satélite se genera una esfera
virtual, cuyo centro es el propio satélite. El radio de la esfera será igual a la
distancia que separa al satélite del receptor. Éste último asume entonces que
se encuentra situado en un punto cualquiera de la superficie de la esfera, que
aún no puede precisar.
Después se calcula la distancia hasta un segundo satélite y se genera
otra esfera virtual. La esfera anteriormente creada se superpone a esta otra y
se crea un anillo imaginario que pasa por los dos puntos donde se interceptan
ambas esferas.
A continuación el receptor calcula la distancia a un tercer satélite y se
genera una tercera esfera virtual. Esa esfera se corta con el anillo
anteriormente creado en dos puntos, uno en el espacio y el otro en la
superficie de la Tierra. El receptor GPS discrimina como ubicación el punto
situado
en
el
espacio
utilizando
ciertos
recursos
matemáticos
de
posicionamiento que almacena y toma como posición correcta el punto
situado en la Tierra.
De esta forma el receptor GPS ya conoce las coordenadas de su
posición, es decir, la latitud y la longitud.
- 12 -
Para detectar también la altitud a la que se encuentra situado el
receptor GPS sobre el nivel del mar, tendrá que medir adicionalmente la
distancia que lo separa de un cuarto satélite y generar otra esfera virtual que
permitirá determinar esa medición.
Una vez visto el funcionamiento de esta tecnología tan precisa, se debe
comentar que existen ciertos factores que pueden influir en el desplazamiento
de la señal entre los satélites y los aparatos receptores, como son las
condiciones atmosféricas locales, el ángulo existente entre el satélite y el
receptor GPS o la interferencia de obstáculos en el campo de transmisión, ya
sean de tipo natural (elevaciones montañosas, vegetación) o artificial
(presencia de líneas eléctricas, edificaciones, estructuras).
Si sumamos el tiempo que necesita cada señal en viajar desde los
satélites hasta el punto donde el receptor GPS se encuentra situado y el
tiempo necesario para realizar los correspondientes cálculos matemáticos
para conocer la localización del receptor GPS, se puede decir sin lugar a
equivocarnos que GPS es la tecnología de geolocalización más lenta de
todas, pero también es con diferencia la más precisa.
4.2. WPS
Gracias a la utilización de enormes bases de datos de miles de millones
de puntos de acceso Wi-Fi, creadas y recopiladas por distintas empresas,
como por ejemplo Google o Skyhook, es posible georreferenciar un dispositivo
con una precisión proporcional al alcance de una red Wi-Fi inalámbrica,
normalmente entre 30 y 100 metros. El funcionamiento de esta tecnología
depende de la cobertura del servicio inalámbrico en la zona, así como de la
actualización de sus bases de datos.
Conocido como WPS (Wi-Fi Positioning System), esta tecnología
obviamente sólo es útil para determinar la ubicación de un dispositivo con
capacidad Wi-Fi, como puede ser un teléfono móvil, un tablet o un ordenador
portátil.
Al igual que la geolocalización por GPS, dicha tecnología se basa en el
método geométrico de la triangulación para situar los dispositivos. Por lo tanto,
debe usar 3 o más puntos de referencia y ciertas distancias conocidas para
calcular la ubicación exacta de un objeto.
- 13 -
Primero, el dispositivo comienza a analizar las distintas señales
inalámbricas provenientes de routers o puntos de acceso Wi-Fi que hay en su
radio de alcance. Da exactamente igual que las redes sean privadas o
públicas. No importa que la red esté protegida, que sea WPA2 o que la clave
tenga mil caracteres porque está tecnología no usa el nombre de la red, ni los
paquetes que se transmiten por ella. Principalmente utiliza la dirección MAC
del router o punto de acceso Wi-Fi, que como ya sabemos es un identificador
único de cada dispositivo de red que nunca cambia y siempre va en texto
claro entre las ondas.
Luego el dispositivo se conecta a Internet para consultar alguna de las
bases de datos con miles y miles de puntos de acceso Wi-Fi y compararlas con
los valores capturados. Debido a que dichas bases de datos tienen
información muy específica sobre cada uno de esos puntos de acceso Wi-Fi,
como la intensidad de la señal, la localización geográfica, pero sobre todo la
dirección MAC, esta tecnología puede determinar rápidamente el primer
punto de referencia más próximo al dispositivo a localizar.
Una vez localizado el primer punto de referencia, ya se conoce que el
dispositivo puede estar en un radio de 100 metros alrededor de las
coordenadas de dicho punto de acceso Wi-Fi. Esa es toda la información que
un solo punto de referencia nos brinda.
A continuación, se determina que, por ejemplo, el dispositivo está a 50
metros de un segundo punto de referencia. De la misma forma, se precisa,
gracias a la base de datos, que el primer punto de acceso Wi-Fi localizado y el
segundo están a 200 metros el uno del otro.
Al agregar un tercer punto de referencia, gracias al método de
triangulación, rápidamente se puede determinar la ubicación “exacta” del
dispositivo.
Pero, ¿cómo hacen Google o Skyhook para saber dónde se encuentra
un determinado router o punto de acceso Wi-Fi? Lo que hacen realmente es
peinar las ciudades con flotas de vehículos, equipados con sistemas para
escanear las redes Wi-Fi que tengan a su alrededor, e ir asociando sus
identificadores únicos, es decir, sus direcciones MAC, a los lugares en los que
han sido escaneadas.
- 14 -
Así, por ejemplo, si tenemos una red Wi-Fi en nuestra casa, y el coche de
Google o Skyhook pasa por debajo de ella, automáticamente obtendrá el
identificador único de nuestro router Wi-Fi, y lo asociará a la localización por la
que estaba circulando. Obviamente no lo asociará con una precisión exacta,
debido al alcance variable según la intensidad de la señal inalámbrica de las
redes Wi-Fi.
De este modo, algunas empresas han acabado teniendo una base de
datos con millones de identificadores únicos Wi-Fi, asociados a localizaciones
geográficas específicas.
Dichas bases de datos son actualizadas cada cierto tiempo mediante
nuevas búsquedas en zonas ya rastreadas, para captar nuevas redes y corregir
redes desubicadas, lo que les permite tener una base de datos actualizada y
útil. En algunos casos, cuando un dispositivo combina esta tecnología con la
de GPS también permite realimentar y actualizar dichas bases de datos.
Por lo tanto, la tecnología WPS, mediante una constante recopilación
de información, puede ubicar un dispositivo con tarjeta inalámbrica Wi-Fi en
una localización muy aproximada en cuestión de segundos.
4.3. REDES MÓVILES (GSM)
Todo terminal conectado a una red móvil de telefonía y/o datos puede
ser georreferenciado, con una precisión que depende directamente del radio
de cobertura del dispositivo y del número de torres de telefonía que hay
alrededor del terminal. Dicho número es mucho más alto en los núcleos
urbanos, permitiendo una precisión de entre 50 y 500 metros, que en zonas
más alejadas de las ciudades, con una precisión entre 2 y 4 kilómetros.
GSM (siglas en inglés de Sistema Global de Comunicaciones Móviles) es
el protocolo más extendido de la telefonía móvil en el mundo y el que se ha
implantado en España. La tecnología de las redes de telefonía móvil ha
evolucionado durante los últimos años, principalmente en el transporte de
datos.
- 15 -
Dicha tecnología la usan sobre todo los navegadores de los dispositivos
móviles y se basa en la distancia relativa a las distintas torres de telefonía móvil.
Actualmente es una tecnología rápida y si el dispositivo se encuentra en un
entorno urbano con muchas torres de telefonía pude dar una precisión
bastante aceptable de forma casi instantánea.
Cualquier teléfono móvil puede utilizar esta tecnología ya que no es
necesario que tenga ningún complemento extra, como puede ser un receptor
GPS o una tarjeta inalámbrica Wi-Fi.
Igual que en las tecnologías anteriores, se usa el método geométrico de
la triangulación, esta vez utilizando los repetidores de telefonía móvil, para
geolocalizar los dispositivos. Pero en cambio existen varias técnicas diferentes
para la ubicación de los terminales móviles.
Algunas técnicas se basan en la identidad del celular. La posición se
obtiene mediante la identidad de la celda en la que se encuentra el terminal
móvil. Sirve para ubicar todo tipo de dispositivos móviles tanto en redes GSM
como en redes GPRS, UMTS o CDMA, sin ningún tipo de requisito hacia las
torres o repetidores de la red.
Un ejemplo de estas técnicas sería CGI (Cell Global Identity), que
identifica la célula en la que está el terminal móvil realizando una estimación
de la distancia desde dicho terminal a la torre de telefonía móvil. La medición
está basada en el retardo de acceso entre el principio de un intervalo de
tiempo y la llegada de las ráfagas del terminal móvil.
Existen otras técnicas que tienen ciertos requisitos en los equipos de red
existentes, pero que permiten obtener mayor precisión.
Por ejemplo, AOA (Angle of Arrival) utiliza antenas multiarray situadas en
la estación base para determinar el ángulo de la señal incidente. Si un terminal
que transmite una señal está en la línea de visión de la antena multiarray,
entonces puede determinar de qué dirección viene la señal. Para conocer la
posición del terminal es necesaria al menos una segunda estimación
procedente de otra estación base con la misma tecnología que la primera. La
segunda estación base localizará al terminal y comparará sus datos con los de
la primera estación para después calcular la posición del usuario mediante
trigonometría. En principio sólo son necesarias dos estaciones base para
estimar la posición del terminal móvil, por este motivo AOA resulta efectiva en
- 16 -
entornos rurales, donde es complicado disponer de visión de varias estaciones
base al mismo tiempo.
Otro ejemplo sería TOA (Time of Arrival). Esta técnica se basa en la
medición del tiempo de llegada de una señal transmitida por un terminal móvil
a diferentes estaciones base. Para obtener una precisión aceptable en el
cálculo de la posición de un terminal es necesario efectuar medidas al menos
respecto a tres estaciones base, que deben estar sincronizadas para evitar
errores de precisión. Las medidas permiten trazar circunferencias con centro en
cada una de las estaciones base, dando su intersección como resultado el
punto donde se encuentra el terminal que se desea localizar. Posteriormente
se transmiten al servidor de localización, que realiza los cálculos y corrige los
errores utilizando ciertos métodos matemáticos. Una desventaja que presenta
esta técnica es que la ausencia de visión directa entre el terminal y la estación
base puede causar un error que desemboque en una falsa estimación.
Existen muchas más técnicas de geolocalización mediante antenas de
telefonía móvil, lo que hace a esta tecnología ser la que más variables tiene a
la hora de georreferenciar un dispositivo.
Pero la principal característica que diferencia esta tecnología de las
comentadas anteriormente es que es posible localizar a un dispositivo
concreto desde las redes móviles sin necesidad de que lo solicite el propio
terminal. Esto se conoce como localización pasiva. A través del uso de las
redes GSM para localizar un teléfono celular, ya no es necesario efectuar una
llamada a dicho teléfono móvil con el fin de poder ubicar geográficamente al
dispositivo (lo que se conoce como localización activa, una de las técnicas
más antiguas para establecer la ubicación correcta de un teléfono móvil),
aunque cabe destacar que el equipo debe estar encendido para que la
búsqueda pueda concluir con resultados exitosos. Hoy en día, incluso se usa
para reconstruir la posición de algún acusado en base a la posición de su
móvil en un día determinado y de los ficheros que guarda su operadora.
- 17 -
4.4. DIRECCIONES IP
Esta tecnología es la menos precisa y se usa ya desde hace mucho
tiempo. Relaciona la dirección IP con tu proveedor de servicios (ISP) y a través
de ello te da la ciudad donde tu proveedor tiene el centro de datos.
Básicamente se utilizan bases de datos de asignación de direcciones IP
a proveedores y su distribución geográfica. En la práctica, no es un
mecanismo de localización “válido” para establecer georreferenciación,
excepto en ocasiones muy específicas donde la precisión no es un factor
importante.
Habitualmente nos encontramos con páginas web o anuncios que nos
muestran, con mayor o menor acierto, la ciudad desde la que estamos
accediendo a Internet. El problema de esta tecnología es que depende de la
información sobre la localización de las direcciones IP que los datacenters del
ISP tienen almacenada en sus registros. Pero resulta que los ISP no son
demasiado metódicos al mantener actualizada dicha información, y si a esto
le añadimos que entre un 2% y un 5% de las direcciones IP cambian
mensualmente, debido a que las direcciones IP se reasignan o que los usuarios
reinician sus módems, entre otros factores, dicha tecnología resultar no ser
demasiado precisa.
Estamos hablando de un error que, de media y utilizando la mejor
técnica actual, alcanza los 35 kilómetros.
¿Pero realmente es ésta la mayor precisión que podemos alcanzar con
esta tecnología? Hasta ahora sí. Pero resulta que un grupo de científicos de la
Universidad de Illinois ha anunciado la implementación de una nueva técnica
que es capaz de reducir este error medio hasta los 690 metros, llegando incluso
a localizar a usuarios con tan sólo 100 metros de diferencia respecto a su
ubicación real. Este nuevo proceso se divide en tres pasos:
•
En primer lugar, se hace un ping a la dirección IP que se
desea localizar desde varios servidores. Con el tiempo de
tránsito y otras variables se puede obtener la distancia con
una exactitud de unos 200 kilómetros, según dicho estudio. El
objetivo es ubicar la IP en una región concreta, aunque aún
no se tenga la ubicación exacta.
- 18 -
•
En el segundo paso, se localizan empresas, instituciones
académicas
o
edificios
del
gobierno,
previamente
almacenadas en una base de datos, que estén en la región
que se ha calculado anteriormente. Muchos de ellos
hospedan sus páginas web de forma local y, en ellas, suelen
incluir
la
dirección
Lógicamente,
se
física
(calle,
descartarían
los
código
postal,
dominios
que
etc.).
usan
alojamiento compartido o alojamiento de forma no local. La
localización y uso de estos puntos de referencia, de nuevo
para medir tiempos, es clave en todo este proceso.
•
Finalmente, se vuelve a repetir todo el proceso de manera
local y tomando una región más pequeña con los datos
obtenidos en el punto anterior.
Posiblemente la conclusión más importante que se puede sacar de este
nuevo proceso (mucho más preciso que el actual) para la geolocalización de
direcciones IP, es que, al igual que pasaba con la localización pasiva de
terminales en las redes móviles, tendríamos otra tecnología bastante precisa
con la cual no es necesario que el usuario proporcione su permiso para
geolocalizarlo, ya que el rastreo puede llevarse a cabo de forma totalmente
independiente al usuario.
- 19 -
5. APLICACIONES
Las aplicaciones prácticas de las tecnologías de geolocalización son
muy variadas, y al tratarse de un entorno relativamente novedoso y
emergente, las posibilidades de futuro del mismo son muy prometedoras.
Se pueden diferenciar claramente dos entornos de uso de las
aplicaciones de geolocalización: de ámbito personal y de ámbito profesional
o empresarial.
En el ámbito personal, la gran mayoría de las aplicaciones están
relacionadas con el ocio. Existen multitud de tipos, que van desde las redes
sociales (tradicionales como Facebook o Twitter, y específicas como
Foursquare) hasta el uso de ciertas utilidades (navegadores GPS, trazado de
rutas en mapas de carretera, senderismo, etc.).
En el ámbito profesional o empresarial, se encuentran aplicaciones que
van
desde
la
seguridad
(localización
de
vehículos
siniestrados,
georreferenciación de seguros de automóviles para conductores noveles,
localización de vehículos robados, etc.) hasta los estudios de mercado (por
ejemplo, mediante estadísticas generadas por redes sociales como Facebook
o Foursquare).
Dentro del conjunto de aplicaciones que hacen uso de las tecnologías
de la geolocalización, se pueden distinguir principalmente dos grupos, en
función de la interacción del usuario con dicha aplicación:
•
Las aplicaciones online, que son generalmente aplicaciones
web utilizadas desde cualquier tipo de dispositivo, en las
cuales el usuario solicita una localización y la aplicación
responde con información ya existente en Internet.
•
Las aplicaciones para teléfonos móviles, que han sido
diseñadas específicamente para su uso en dichos dispositivos.
En estos casos, la localización del dispositivo móvil se utiliza
como una variable más del sistema a la hora de calcular la
información solicitada.
A
continuación,
analizaré
ambos
conjuntos
de
aplicaciones,
desglosándolos en categorías según su ámbito de actuación y enunciando
algunos ejemplos ilustrativos.
- 20 -
5.1. APLICACIONES ONLINE
Se entiende por aplicación online aquella cuya funcionalidad
solamente
puede
ser
utilizada
mediante
una
conexión
a
Internet.
Normalmente, se trata de servicios web accesibles mediante un navegador
estándar. Pero en ocasiones se ofrece como una aplicación independiente
que debe ser instalada en el sistema operativo del dispositivo.
Estas
aplicaciones,
mediante
el
uso
de
las
tecnologías
de
geolocalización, interrelacionan la información existente en la Red, con
aquella proporcionada por el usuario.
Propiamente dicho, estas aplicaciones no realizan procesos de
georreferenciación, sino que funcionan nutriéndose de información ya
existente, y ofreciendo servicios de geocodificación y geocodificación
inversa.
5.1.1. Mapas
En este conjunto se engloban aquellas aplicaciones destinadas a la
búsqueda de información en mapas.
Entre los servicios típicos de este tipo de aplicaciones se encuentran la
búsqueda de información y su geocodificación inversa, la consulta de diversos
tipos de mapas (geográficos, físicos o callejeros), el cálculo de rutas (a pie o
utilizando vehículos) o la creación de mapas personalizados.
Usualmente, la utilización de estos servicios conlleva la asociación de
una cuenta de usuario, permitiendo almacenar información como puntos de
interés, mapas personalizados, etc.
Algunos ejemplos de aplicaciones online de mapas son:
•
Google Maps, que es posiblemente el servicio de mapas más
extendido, propiedad de la compañía Google, integra otras
funcionalidades de la compañía e información de diversos
servicios mediante el uso de capas adicionales.
•
Google Earth, que se trata de un Sistema de Información
Geográfica (SIG), propiedad de Google, combina las
funcionalidades de diversos servicios con recreaciones en 3D
- 21 -
de la superficie del planeta Tierra, de la Luna, e incluso de
Marte.
•
Bing Maps, que es la contrapartida de la compañía Microsoft
al servicio de Google Maps, ofrece funcionalidades muy
similares y tecnologías equivalentes a la mayoría de las
integradas por Google.
5.1.2. Imágenes y geoetiquetado
Este conjunto de aplicaciones de geolocalización utiliza imágenes
como medio de transmisión de la información. Las imágenes son capturadas y
geoetiquetadas por algún tipo de dispositivo móvil, para posteriormente
incluirse en una base de datos que permita su búsqueda y geocodificación
como un servicio online.
Algunos ejemplos de aplicaciones online de imágenes y geoetiquetado
son:
•
Google Street View, que es una funcionalidad incluida en
Google Maps y Google Earth, permite la visualización en
dichas aplicaciones de imágenes panorámicas de las calles.
Actualmente, incluye imágenes de 50 países diferentes,
algunos de ellos, como por ejemplo España, con una
cobertura casi total.
•
Street Side, que es una característica de Bing Maps análoga
a Google Street View, tiene una cobertura muy inferior que
por ahora se centra principalmente en Estados Unidos y
ciertas zonas de Canadá, Francia, Holanda, Reino Unido y
Alemania.
•
Panoramio, que pertenece a Google, es un servicio de
compartición de fotografías realizadas, geoetiquetadas y
georreferenciadas por los propios usuarios.
•
Flickr Maps, que es una aplicación que permite la búsqueda
de fotografías geoetiquetadas, cuenta con más de 100
millones de fotografías geoposicionadas.
- 22 -
5.1.3. Redes sociales
En este conjunto se engloban las aplicaciones de geolocalización
relacionadas con las redes sociales, la gran mayoría de las cuales se
presentan en forma de funcionalidades extra para las redes sociales
tradicionales, y que permiten integrar herramientas de georreferenciación
mediante la utilización de dispositivos móviles.
No obstante, existen algunos ejemplos de redes sociales geolocalizadas
orientadas al entorno online, y no delimitadas únicamente a los dispositivos
móviles, pero que, como se puede comprobar, van tendiendo a desaparecer:
•
Dopplr, que es una red social destinada a la organización de
viajes, itinerarios y puntos de reunión, permite definir viajes de
placer o de trabajo, compartir dicha información, recibir
avisos en los alojamientos, así como recibir consejos de otros
usuarios.
•
Plazes, que finalmente quedó fuera de servicio a mediados
del año pasado, era una red social destinada a compartir la
ubicación y actividad de sus usuarios.
•
Fire Tagle, que es una red social propiedad de Yahoo!, actúa
como almacén de localizaciones de sus usuarios y permite
centralizar y manejar desde un solo lugar y de manera
cómoda nuestros datos de geolocalización. Dicha red social
se encuentra fuera de servicio desde febrero de este año.
- 23 -
5.2. APLICACIONES PARA TELÉFONOS MÓVILES
La mayoría de las aplicaciones de geolocalización se enmarcan
dentro del ámbito de las tecnologías móviles. La incursión en el
mercado de los denominados “teléfonos inteligentes” (smartphones),
así como la extensión de las tecnologías de banda ancha móvil, han
ayudado al crecimiento de este tipo de aplicaciones, de la misma
manera que las comunidades de usuarios que las utilizan y respaldan.
Según el informe sobre la Sociedad de la Información en España
que la Fundación Telefónica realiza cada año, la proporción de
smartphones en España en 2012 era del 63,2%, cuando en 2010 apenas
era de un 28,3%. La compañía comScore realizó el año pasado un
estudio sobre la penetración de dispositivos móviles en los principales
mercados europeos, según el cual España ocupa la primera posición
europea en uso de smartphones, por delante de países como Reino
Unido, Francia, Italia o Alemania.
España también lidera a nivel europeo en número de habitantes
que acceden a Internet mediante conexiones de banda ancha móvil.
Según el ministerio de Industria, Energía y Turismo, el 96% de los
españoles tiene cobertura banda ancha móvil 3,5G.
Dentro del mercado de los teléfonos inteligentes, se pueden
encontrar los siguientes sistemas operativos, ordenados por cuota de
mercado:
•
Android de Google (68,1%)
•
iOS de Apple (16,9%)
•
BlackBerry OS de RIM (4,8%)
•
Symbian OS (4,4%)
•
Windows Mobile de Microsoft (3,5%)
•
Linux (2,3%)
•
Otros (0,1%)
Las aplicaciones de geolocalización para dispositivos móviles suelen
hacer uso típicamente de la georreferenciación del propio dispositivo, bien
para geoetiquetar contenido multimedia, o bien para llevar a cabo procesos
de geocodificación o geocodificación inversa.
- 24 -
5.2.1. Mapas
En este conjunto se engloban aquellas aplicaciones destinadas a la
búsqueda de información en mapas. La posición geográfica del usuario se
utiliza como un elemento relevante en el proceso de búsqueda de
información. Asimismo, también es habitual que estas aplicaciones se
encuentren integradas con algún servicio online (e incluso aplicaciones de
escritorio), permitiendo la sincronización de información en la nube.
Algunos ejemplos de aplicaciones de mapas para dispositivos móviles
son:
•
Google Maps, que está disponible para sistemas Android,
BlackBerry, iOS, Symbian y Windows Mobile (de todas
maneras las funcionalidades difieren de un sistema operativo
a otro), es una aplicación que incorpora el servicio Google
Maps online y la mayoría de sus funcionalidades en el
dispositivo móvil.
•
Google Earth, que está disponible para algunos sistemas
Android e iPhone, es una aplicación para teléfonos móviles
que integra el servicio Google Earth y ciertas de las
funcionalidades presentes en la aplicación de escritorio.
•
MyTracks (disponible para Android) y Map My Tracks
(disponible para iOS, Symbian, BlackBerry y Windows Mobile)
son
dos
aplicaciones
que
permiten
grabar
recorridos
geolocalizados, así como añadirlos en otros servicios y redes
sociales.
•
Sports Trackers, que está disponible de forma gratuita para
Android, iOS, Symbian y Windows Mobile, es una aplicación
que,
a
parte
de
registrar
y
compartir
recorridos
geolocalizados, calcula la velocidad media, la velocidad
máxima o el desnivel (junto con otros parámetros), y además
permite
tomar
fotos
que
automáticamente en la ruta.
- 25 -
son
geoposicionadas
5.2.2. Navegación GPS
En este conjunto se engloban aquellas aplicaciones destinadas a la
navegación paso a paso (tanto a pie como en vehículos) haciendo uso de un
dispositivo GPS. Su principal aplicación se encuentra en el mundo de la
automoción.
Algunos ejemplos de aplicaciones de navegación GPS para dispositivos
móviles son:
•
Tom Tom Navigator, que es posiblemente el navegador GPS
más extendido y utilizado, funciona sobre plataformas
hardware propias (dispositivos embebidos), así como en
Android, iOS, Windows Mobile o Symbian, cuya versión se
encuentra actualmente descontinuada. Esta aplicación
soporta
varios
idiomas,
mapas
para
distintas
zonas
geográficas, puntos de interés personalizados e información
del tráfico en tiempo real.
•
Google Maps Navigator, que es el navegador GPS de
Google, está integrado con los mapas y funcionalidades del
servicio Google Maps. Esta aplicación facilita información del
tráfico en tiempo real y requiere de una conexión de datos
para el uso de los mapas. Actualmente únicamente se
encuentra disponible para Android.
•
CoPilot Live es un sistema de navegación GPS que funciona
sobre plataformas hardware propias, pero que también es
compatible con Android, iOS y Windows Mobile.
•
Waze, que está disponible para Android, iOS, Windows Mobile
y
Symbian,
es
un
sistema
de
navegación
GPS
con
información colaborativa sobre el estado del tráfico e
incidencias en la carretera. Se trata de un GPS social basado
en la información que los usuarios comparten en tiempo real.
•
Nokia OviMaps, que es el navegador GPS de Nokia, es
compatible únicamente con algunos dispositivos con sistema
operativo Symbian del fabricante finlandés.
- 26 -
5.2.3. Redes sociales
En este conjunto se engloban aquellas aplicaciones cuya finalidad
principal consiste en la integración de información en redes sociales, bien
tradicionales (como Facebook o Twitter) o bien específicas para aplicaciones
móviles. Estas aplicaciones son las que mayor difusión presentan dentro del
ámbito de la geolocalización en teléfonos móviles.
Algunos ejemplos de dichas aplicaciones de redes sociales específicas
para dispositivos móviles son:
•
Facebook Places es una aplicación de la red social
Facebook que, haciendo uso de la georreferenciación de
dispositivos móviles, permite compartir la posición del usuario
con sus amigos.
•
Twitter Places es una funcionalidad de la red social Twitter
que permite a los usuarios, mediante georreferenciación o
especificación explícita, definir el lugar exacto asociado a un
mensaje concreto. Incluye integración con las redes sociales
Foursquare y Gowalla.
•
Foursquare
es
una
red
geosocial
basada
en
la
georreferenciación de sus usuarios, que pueden hacer
“check-in” en diversos lugares. Con dicha información se
puede participar en juegos sociales, promociones y eventos
especiales. Su aplicación está disponible para Android, iOS,
BlackBerry, Windows Phone y Linux.
•
Gowalla, que está disponible para Android, iOS, BlackBerry y
Linux, así como a través de su página web, es una red
geosocial basada en la georreferenciación de usuarios, y con
un funcionamiento básico muy similar a Foursquare.
•
Google Latitude, que es una aplicación de geolocalización
para dispositivos móviles de Google, se encuentra integrado
con la mayoría de los servicios de Google y es compatible
con Android, iOS, BlackBerry, Windows Mobile y Symbian.
Permite a un usuario que otras personas de su lista de
contactos puedan rastrear donde esta ubicado.
- 27 -
5.2.4. Puntos de interés
En este conjunto se engloban las aplicaciones que permiten al usuario
localizar lugares de interés cercanos (restaurantes, tiendas, etc.) a partir de su
posición geográfica.
Algunos ejemplos de aplicaciones de puntos de interés para dispositivos
móviles son:
•
Bliquo, que es una aplicación que se define como un
“buscador de ocio urbano”, permite consultar directorios
especializados
de
restaurantes,
bares,
discotecas,
etc.
Incorpora un componente social, al permitir la creación y
consulta de comentarios y evaluaciones. Está disponible para
iOS y Android.
•
AroundMe, que es una aplicación de búsqueda de puntos
de interés cercanos disponible para Android, iOS y Windows
Mobile, también permite reservar un hotel o ver la cartelera
de un cine cercano.
•
Google Places Directory, que es un servicio de búsqueda de
puntos de interés de Google, permite su integración en
Google
Maps,
así
como
la
definición
de
categorías
personalizadas. Solamente se encuentra disponible para
Android.
•
Buzzd, que dejo de operar a mediados del año pasado tras
cinco años de funcionamiento, era otra red geosocial de
búsqueda de puntos de interés. Dicha aplicación estaba
disponible para Android, iOS y BlackBerry, y como servicio de
red social a través de su página web.
•
McDonald’s podría ser un ejemplo de empresa que crea su
propia aplicación de puntos de interés para que sus clientes
más fieles puedan llegar fácilmente hasta el restaurante más
cercana según la posición actual del usuario.
- 28 -
5.2.5. Realidad aumentada
En este conjunto se engloban aquellas aplicaciones que, haciendo uso
de la georreferenciación, así como de otras tecnologías de detección
(sensores de movimiento y orientación, brújula, etc.), permiten al usuario
enriquecer la visión del mundo real, combinándola con la información virtual
extraída de Internet.
Gracias a la georreferenciación, es posible determinar la posición del
usuario, y gracias a los sensores de orientación, es posible determinar hacia
dónde está mirando. En cuanto a lo que observa, la aplicación captura la
imagen del mundo real obtenida a través de una cámara y añade en la
pantalla la información obtenida a través de Internet.
Algunos ejemplos de aplicaciones de realidad aumentada para
dispositivos móviles son:
•
Layar es una aplicación que funciona cargando desde
Internet “capas” de información, que van desde transportes
públicos hasta juegos sociales, pasando por información de
Wikipedia, etc. Está disponible para terminales Android, iOS y
Symbian.
•
Wikitude es un explorador de realidad aumentada centrado
especialmente en el ámbito del turismo, incluyendo guías de
viaje y rutas con navegación paso a paso. Está disponible
para dispositivos Android, iOS, BlackBerry, Windows Phone y
Symbian.
- 29 -
6. PRIVACIDAD
Como se ha visto en el apartado anterior, las aplicaciones de
geolocalización forman parte de nuestras vidas y actualmente son utilizadas
constantemente por millones y millones de personas.
¿Pero realmente son los usuarios conscientes de los riesgos que pueden
tener el uso de dichas aplicaciones? Lo primero que habría que dejar claro es
que la propia naturaleza de los datos que manejan las aplicaciones de
geolocalización, referente a la posición georreferenciada de los usuarios,
hace que se consideren aplicaciones especialmente sensibles desde el punto
de vista de la privacidad.
Posiblemente, el aspecto más importante relacionado con los riesgos
de las aplicaciones de geolocalización sea el de la privacidad. Los datos
manejados por las aplicaciones de geolocalización resultan especialmente
delicados y su integración en las redes sociales agrava aún más el problema.
De esta forma, resultaría peligroso que no existiera algún tipo de
restricción en el medio en el que los datos estuvieran disponibles. El hecho de
que cualquier persona pueda conocer la localización de un ciudadano
conlleva riesgos que van desde el robo de datos, el hurto o robo físico, a la
agresión contra su persona.
Asimismo, el hecho de que pueda conocerse la posición de un usuario
en todo momento, puede derivar en la creación de un perfil del mismo, y a ser
utilizado sin autorización en estudios de mercado, envío de publicidad, etc.
También conviene ser conscientes del riesgo que representa la
ingeniería social en el caso de las redes sociales. Se conoce como ingeniería
social a la práctica de obtener información confidencial a través de la
manipulación de usuarios legítimos. Un usuario podría hacerse pasar por otra
persona o entablar amistad o contacto con alguna excusa, ocultando algún
interés malicioso.
Otro aspecto importante, relacionado con la privacidad y la
geolocalización, es la revelación involuntaria de información privada. Se
encuentran ejemplos de personas que han comunicado a través de redes
sociales su posición, encontrándose después con problemas al conocerse
dicha información en su círculo laboral o personal.
- 30 -
El mayor problema, relacionado con la privacidad y la geolocalización,
en la mayoría de las ocasiones, recae en el tratamiento irresponsable de los
datos llevado a cabo por las empresas: cesión de datos de usuarios sin su
consentimiento, utilización indebida de datos para estudios de mercado fuera
de las cláusulas de privacidad, vulneración de la configuración de privacidad
de los usuarios, etc.
Es conocido el caso de la red geosocial Foursquare que, en su página
principal, mostraba información aleatoria sobre un cierto número de usuarios y
su última localización anunciada. El problema radicaba en que los usuarios
seleccionados y anunciados públicamente, lo eran a pesar de que hubieran
configurado su cuenta de forma privada, y sólo quisieran que su información
fuera
conocida
por
sus
contactos.
Tras
hacerse
público
(http://www.wired.com/threatlevel/2010/06/foursquare-privacy/),
el
fallo
Foursquare
cambió la configuración de su política de privacidad.
Otro caso conocido que deja patente la importancia de los datos que
manejan las aplicaciones de geolocalización es la cantidad de demandas
que ha sufrido la empresa Google por la recopilación de datos personales sin
autorización, gracias a los vehículos utilizados por su servicio de mapas Street
View (método que se ha explicado anteriormente en el apartado sobre la
tecnología Wi-Fi Positioning System). Actualmente Google ha aceptado pagar
7 millones de dolares por capturar datos de redes Wi-Fi privadas,
convirtiéndose en la mayor indemnización que Google ha pagado por ahora
en
Estados
Unidos
(http://sociedad.elpais.com/sociedad/2013/03/12/
actualidad/1363112492_149222.html).
Pero la aplicación Street View de Google tiene otros frentes abiertos
aparte de la captura de datos de redes Wi-Fi. Numerosos abogados privados
han opinado sobre esta aplicación, que permite encontrar, por ejemplo, a
hombres dejando un club de striptease, mujeres ante una clínica de abortos,
gente en playas nudistas, padres azotando a sus hijos, así como otros acciones
embarazosas que no cuentan con el permiso del ciudadano afectado.
- 31 -
Google mantiene que todas las imágenes se obtienen de una
propiedad pública (la calle). De todas maneras, antes de lanzarse dicha
aplicación, Google asegura que eliminó las imágenes que representasen
violencia doméstica, y permite a los usuarios pedir la eliminación de las
fotografías que muestren actos o situaciones no deseadas o indebidas.
En Europa, la introducción del servicio Street View en ciertos países
podría no ser legal. Como las leyes entre países varían, muchos no permiten la
revelación de forma no consentida de imágenes de personas para su
exhibición pública.
Uno de los remedios que Google ha aplicado es la difuminación de
rostros y matrículas de vehículos. Sin embargo, esta aplicación aún no es
perfecta, y en muchas ocasiones aparecen algunas matrículas y algunos
rostros revelados. Al mismo tiempo, el programa confunde algunos elementos
de la fotografía (aceras, buzones, carteles de direcciones...) con rostros y
matrículas, y son difuminados innecesariamente.
¿Y en concreto en España? ¿Cómo se gestiona legalmente la
privacidad de dichos datos? En el ámbito de la geolocalización, el marco
legal abarca diferentes aspectos de la privacidad de los datos personales.
La Constitución Española establece, en su artículo 18.1, que se
garantiza el derecho al honor, a la intimidad personal y familiar y a la propia
imagen. En este sentido, la Ley Orgánica 1/1982 de Protección Civil del
Derecho al Honor, a la Intimidad Personal y Familiar y a la Propia Imagen
establece, en su artículo primero, que dicho derecho será protegido
civilmente frente a todo género de intromisiones ilegítimas, de acuerdo con lo
establecido en dicha ley. La propia Constitución también establece, en su
artículo 18.3, que se garantiza el secreto de las comunicaciones y en su
artículo 18.4, que la Ley limitará el uso de la informática para garantizar el
honor y la intimidad personal y familiar de los ciudadanos y el pleno ejercicio
de sus derechos.
En la legislación española, la principal ley dedicada a garantizar el
cumplimiento del artículo 18.4 de la Constitución, es la Ley Orgánica 15/1999
de Protección de Datos de Carácter Personal (LOPD), junto con el Real
Decreto 1720/2007 de desarrollo de la Ley Orgánica de Protección de Datos
(RLOPD).
- 32 -
El RLOPD define en su artículo 81 tres niveles de protección (básico,
medio y alto), atendiendo al tipo de datos considerados y su papel en la
privacidad del individuo:
•
Nivel alto: tratamientos con datos relacionados con la
ideología, creencias, religión, raza, vida sexual, salud,
aquellos recabados para fines policiales sin el consentimiento
de los afectados (ficheros de las Fuerzas de Seguridad del
Estado) y derivados de actos de violencia de género.
•
Nivel medio: tratamientos con datos relativos a información
laboral, fiscal, financiera, de solvencia, infracciones penales y
administrativas,
que
ofrezcan
una
definición
de
la
personalidad y de los operadores de comunicaciones
electrónicas, respecto a los datos de tráfico y localización.
•
Nivel básico: tratamientos con datos de carácter personal.
También datos sobre ideología, afiliación sindical, religión,
creencias, salud, origen racial o vida sexual, cuando se
utilicen en el marco de una transferencia dineraria, son
accesorios en la realización de una operación o se refieran a
la condición de discapacidad o invalidez (este último caso
relativo a los datos de salud).
Partiendo de esta clasificación, en el caso concreto de la utilización de
servicios de geolocalización destaca que:
•
Con carácter general, los datos de geolocalización, y
siempre que dichos datos se refieran a una persona
identificada o identificable, se considerarían datos de nivel
básico.
•
Por otro lado, la LOPD también contempla la posibilidad de
que datos de nivel básico lleguen a ser considerados de nivel
medio, mediante la combinación con otros datos que, bien
de manera directa o por inferencia, ofrezcan una definición
de las características o de la personalidad de los ciudadanos
y que permitan evaluar determinados aspectos de la
personalidad o del comportamiento de los mismos. Esto
- 33 -
resulta especialmente importante en el caso de las redes
geosociales como Foursquare, que combinan información de
geolocalización con otros datos privados de sus usuarios.
•
Asimismo la LOPD presenta una excepción para los datos de
localización de los que sean responsables operadores que
presten servicios de comunicaciones electrónicas disponibles
al público o exploten redes públicas de comunicaciones
electrónicas, en cuyo caso se aplicará la medida de
seguridad de nivel alto, relativa al registro de accesos.
En toda aplicación o servicio de geolocalización que haga uso de los
datos de un ciudadano, dicho usuario deberá ser informado de modo preciso,
previo e inequívoco de los siguientes aspectos:
•
La existencia de un fichero o proceso de tratamiento de
datos.
•
La finalidad en la recogida de los datos, exponiendo la
finalidad legítima con absoluta sinceridad.
•
El
carácter
obligatorio
u
optativo
de
las
preguntas
planteadas durante la recogida de los datos.
•
Las consecuencias de la negativa a suministrar ciertos datos.
•
La
posibilidad
de
ejercer
los
derechos
de
Acceso,
Rectificación, Cancelación y Oposición, definidos en la LOPD.
•
La identidad y dirección del responsable del tratamiento de
los datos.
Es importante reseñar que, salvo por razones de seguridad pública,
como se establece en el artículo 25 de la LOPD, todo ciudadano podrá
ejercer sus derechos de acceso (consulta de la información existente sobre sí
mismo), rectificación (modificación de datos incorrectos), cancelación
(eliminación de los datos de un fichero) y oposición (impedir la inclusión de sus
datos en un fichero) sobre los datos que cualquier fichero almacene sobre
dicho ciudadano.
- 34 -
El organismo encargado de velar por el cumplimiento de la LOPD es la
Agencia Española de Protección de Datos (AEPD). Todo fichero adscrito a la
LOPD deberá ser puesto en conocimiento de dicha agencia. En el caso de
ficheros de titularidad pública, mediante su publicación en el Boletín Oficial
del Estado, y en el caso de ficheros de titularidad privada, mediante
notificación explícita a la AEPD por parte del responsable.
La falta de atención de los derechos de los ciudadanos establecidos
por la legislación, la violación de los mismos, la ausencia de colaboración con
las autoridades o la AEPD, así como la falta de notificaciones en las
circunstancias establecidas por la Ley, son causas que derivan en la
pertinente investigación por parte de la AEPD, pudiendo imponerse las
medidas y sanciones oportunas previstas en la LOPD.
Cualquier ciudadano que acredite el incumplimiento de la LOPD
puede dirigir una denuncia a la AEPD.
La intervención de la AEPD no sólo tiene lugar cuando se presenta una
denuncia, sino que la Agencia también puede actuar de oficio, cuando se
considera que los derechos de los ciudadanos, en materia de privacidad y
protección de datos, han podido ser violados. Un ejemplo en este sentido sería
el caso anteriormente mencionado sobre Google. Particularizando en España,
la AEPD abrió una investigación a Google en 2010, debido a la mencionada
captura
de
información
de
redes
Wi-Fi
(http://tecnologia.elpais.com/
tecnologia/2010/05/19/actualidad/1274259665_850215.html).
En conclusión, todos los ciudadanos están amparados por la Ley en
cuanto a la protección de sus datos personales, según establece la legislación
vigente y la propia Constitución. Precisamente por esto, el uso responsable y
seguro de estas tecnologías de geolocalización es fundamental para poder
disfrutar de sus servicios sin poner en peligro el aspecto íntimo y personal de los
ciudadanos, y también para que puedan evolucionar y aportar más
funcionalidades al usuario.
- 35 -
A continuación, voy a enunciar algunas recomendaciones de
privacidad para el uso de aplicaciones de geolocalización:
•
Leer con detenimiento y comprender las cláusulas de
privacidad de los servicios de geolocalización y las redes
sociales.
•
En general, restringir al máximo la información que se ofrece
de forma pública.
•
Desconfiar, como norma general, de toda persona que no
sea conocida.
•
Adaptar
la
precisión
de
las
publicaciones
sobre
georreferenciación. Por ejemplo, en una red social orientada
al turismo podría ser suficiente con anunciar la ciudad de
estancia, siendo innecesario anunciar también el hotel
concreto.
•
Elegir con cuidado el grupo de usuarios que podrán ver la
información
de
geolocalización
generada
por
las
aplicaciones. La mayoría de las redes sociales permiten
configurar este aspecto, restringiendo las publicaciones a
grupos privados.
•
Configurar correctamente los vínculos entre aplicaciones de
georreferenciación y redes sociales, evitando a toda costa el
envío indiscriminado de información.
•
No aportar información que pueda conducir a deducir el
lugar en que se encuentra un usuario en un momento dado.
Para ello, conviene evitar anunciar los desplazamientos
habituales (por ejemplo, al entorno laboral) y los períodos de
vacaciones.
- 36 -
7. SEGURIDAD
Por otro lado, el hecho de que esta información se integre en ocasiones
dentro de redes sociales, aumenta las posibles consecuencias de los fallos de
seguridad asociados, al conjugar la información de geolocalización con toda
clase de datos personales. Al transmitir información sensible asociada a su
georreferenciación, los riesgos para el ciudadano no se limitan a posibles
robos de información o datos a través de Internet, sino que pueden llegar
incluso a suponer un peligro para su integridad física y personal.
En este apartado, empezaré por intentar diferenciar los principales
elementos existentes en todo proceso de geolocalización, para analizar los
posibles riesgos y amenazas asociados a dicha tecnología, y definir algunas
recomendaciones y configuraciones de seguridad que permitan utilizar dichas
aplicaciones de geolocalización de un modo más seguro.
Para finalizar, intentaré, desde un punto de vista más práctico, enunciar
una serie de procedimientos recomendados para la creación de aplicaciones
seguras.
7.1. SISTEMA OPERATIVO
Todo dispositivo, para poder desempeñar sus funciones, ejecuta su
sistema operativo. Éste se encarga de gestionar los recursos del sistema y
juega un papel fundamental en la seguridad.
En el ámbito de los ordenadores personales (sobremesa o portátiles), los
sistemas operativos más utilizados son Microsoft Windows, Mac OS X y
GNU/Linux. Todos ellos ofrecen al usuario servicios muy similares, permitiendo
manejar fácilmente los recursos del sistema.
En el ámbito de los dispositivos móviles, y obviando sistemas embebidos
propios (como dispositivos de navegación GPS), los sistemas operativos más
utilizados son Android de Google, iOS de Apple, Blackberry OS de RIM,
Symbian OS y Windows Mobile de Microsoft. Nuevamente, todos ellos ofrecen
servicios similares al usuario y permiten acceder con cierta facilidad a los
recursos del sistema.
- 37 -
Al actuar el sistema operativo como instrumento de administración de
recursos, se convierte en el punto central de gestión de la información
almacenada y procesada por el dispositivo. Es, por tanto, uno de los
elementos más sensibles desde el punto de vista de la seguridad.
Una de las amenazas más evidentes es el código malicioso o malware,
que usualmente se presenta en forma de virus, troyanos o programas espía.
Este tipo de programas infectan el sistema operativo anfitrión con el fin de
dañar el sistema o la información contenida en él.
El daño causado por estos virus puede ir desde la inutilización del
sistema operativo (posible denegación de servicios) hasta el robo de
información.
Existen ciertos troyanos que tienen por objetivo la creación de botnets o
redes de ordenadores infectados, controlados de forma remota para la
realización de operaciones conjuntas. Investigaciones en seguridad han
demostrado que el modelo de generación de botnets por infección de
troyanos resulta extrapolable a teléfonos inteligentes, por lo que el peligro de
este tipo de ataques no se limita únicamente a ordenadores personales.
Por otro lado, el sistema operativo, como cualquier software, no está
exento de fallos de seguridad (“bugs”) que permitan la intrusión de un
hipotético atacante.
Los fallos de seguridad más peligrosos en un sistema operativo son
aquellos que permiten su explotación de forma remota. En el caso de los
dispositivos portátiles, el hecho de contar con múltiples interfaces de
comunicación de red (redes de telefonía, redes Wi-Fi inalámbricas, Bluetooth,
infrarrojos…), aumenta los posibles vectores de ataque en caso de fallo de
seguridad.
Además, en el caso concreto de los teléfonos inteligentes y dispositivos
portátiles, es habitual la modificación no autorizada del sistema operativo, con
el fin de acceder a funciones que se encuentran bloqueadas por el
fabricante. Un ejemplo de este tipo de modificaciones sería el jailbreak en
dispositivos iOS, o el rooteo en dispositivos Android.
- 38 -
El hecho de habilitar la instalación de programas no firmados puede
provocar la entrada de software malicioso que, bien suplantando a uno
original o no, llegue a infectar el sistema operativo y los programas y
aplicaciones en él instalados.
En cuanto al uso del sistema operativo, se recomienda:
•
Mantener siempre actualizado el sistema operativo y los
programas
instalados,
aplicando
las
actualizaciones
periódicas que el fabricante suministra.
•
Utilizar, siempre que esté disponible, un sistema de protección
de red de tipo cortafuegos para proteger el sistema de
conexiones peligrosas.
•
Utilizar, cuando esté disponible, un sistema antivirus. La base
de datos de definiciones de virus, así como el propio
software, deberán mantenerse siempre actualizadas.
•
Utilizar software original, cuya procedencia sea conocida y
pueda ser certificada.
•
Evitar las modificaciones no autorizadas del software o el
hardware, puesto que pueden ocasionar problemas de
seguridad no contemplados por el fabricante.
•
Utilizar usuarios con privilegios bajos en el sistema, reservando
el uso del usuario privilegiado (administrador o root) para las
ocasiones en que sea estrictamente necesario.
•
En los dispositivos móviles, configurar las opciones de
geolocalización de forma adecuada a las necesidades de la
aplicación a utilizar. No todas las aplicaciones requieren de la
precisión del GPS, o no siempre es conveniente que esté
habilitada la georreferenciación mediante redes Wi-Fi.
- 39 -
7.2. SOFTWARE DE GEOLOCALIZACIÓN
Cualquier software de geolocalización, y al igual que ocurría en el caso
del sistema operativo, es susceptible de contener fallos de seguridad. Aún
cuando el sistema operativo se encuentre funcionando perfectamente y libre
de fallos (situación utópica), un fallo en el software encargado de gestionar el
proceso de geolocalización puede suponer un potencial vector de ataque,
siendo posible incluso la escalada del fallo hasta llegar al propio sistema
operativo.
En la mayoría de las aplicaciones, estos fallos de seguridad tienen una
gravedad directamente proporcional a la clase o nivel de privilegios que tiene
el usuario que las ejecuta, restringiendo de esta forma un posible daño al
sistema operativo.
En el caso concreto de los dispositivos móviles, estos suelen funcionar
sobre algún sistema de sandboxing mediante máquinas virtuales, que permite
aislar el entorno de ejecución de la aplicación. El sandboxing (o aislamiento
de procesos) básicamente consiste en la ejecución separada de ciertas
aplicaciones, controlando y aislando los recursos del sistema a los que dichas
aplicaciones acceden.
Sin embargo, en caso de un fallo de estas características que proviniera
del software de geolocalización, la información gestionada por la propia
aplicación siempre se encontrará comprometida, pudiendo ocasionar fallos
de privacidad.
En el caso de aplicaciones online, el rango de los posibles fallos de
seguridad aumenta. Algunas de las amenazas existentes son:
•
Inyección de código en sitios cruzados (Cross-site scripting).
•
Falsificación de petición en sitios cruzados (Cross-site request
forgery).
•
Ataques de inyección de código SQL (SQL injection).
•
Secuestro de clic (Clickjacking).
•
Falsificación de información en formularios (Form tampering).
- 40 -
En cuanto al uso del software de geolocalización, se recomienda:
•
Utilizar únicamente aplicaciones de confianza, obtenidas a
través de los canales de distribución pertinentes, por ejemplo,
las páginas web oficiales de los proyectos y las tiendas de
aplicaciones.
•
Mantener
siempre
actualizadas
las
aplicaciones
de
geolocalización.
•
Tener en cuenta los permisos que solicita una aplicación para
su instalación en el sistema. No tiene sentido, por ejemplo,
que
un
juego
solicite
acceso
al
hardware
de
georreferenciación y a la red de comunicaciones, ya que
podría tratarse de un software destinado a espiar al usuario.
•
Vigilar, en las actualizaciones de las aplicaciones, los posibles
cambios en los permisos requeridos del sistema.
•
Establecer, en la configuración de la aplicación, en qué
momento
se
permite
la
utilización
de
funciones
de
geolocalización y con quién se va a compartir dicha
información.
•
Tener en consideración la vinculación de datos que
establecen ciertas aplicaciones de geolocalización con las
redes sociales.
•
En el caso de aplicaciones online, utilizar una versión
actualizada del navegador web, además de mantener
actualizados todos sus complementos y plugins.
•
En aplicaciones online, utilizar algún complemento destinado
a la prevención de ataques web y explotación de
vulnerabilidades. Por ejemplo, NoScript para Mozilla Firefox.
- 41 -
7.3. COMUNICACIONES EN LA RED
Dejando a un lado el hecho de que una conexión a Internet supone un
posible vector de ataque, el principal problema asociado a una conexión de
red es la intercepción de las comunicaciones (eavesdropping).
Debido a la propia arquitectura de Internet, la información, en su
camino entre el origen y el destino de la comunicación, viaja por un número
indeterminado de máquinas. De este modo, toda comunicación que no se
encuentre protegida por métodos criptográficos, es susceptible de ser
intervenida por personas no autorizadas.
En el caso de las aplicaciones de geolocalización (tanto para
dispositivos móviles como de escritorio), no siempre es posible conocer los
mecanismos de comunicación utilizados y si éstos funcionan sobre una
conexión segura o no.
Desde el punto de vista lógico de la conexión, existen diversos ataques
de tipo “hombre en el medio” (man in the middle) que permiten interponerse
en una comunicación e interceptar la información no cifrada que viaje por la
red, aunque no esté destinada al sistema del propio intruso. Un ejemplo de
este tipo de ataques sería el clásico envenenamiento de la caché ARP (ARP
poisoning).
Desde el punto de vista físico, la posible intercepción de la
comunicación depende fuertemente del tipo de red utilizada.
En el caso de las redes cableadas, típicas del entorno doméstico y
laboral, el riesgo de una intercepción física es bajo.
Este
riesgo
aumenta
enormemente
en el
caso
de
las
redes
inalámbricas, al estar exponiendo de forma abierta el medio físico de la red.
En el caso de las redes abiertas, es decir, sin contraseña, no existe
ningún tipo de protección física y los datos se encuentran, en consecuencia,
expuestos.
En cambio, en las redes inalámbricas que sí tienen contraseña, se
utilizan algoritmos de cifrado, como WPA y WPA2, con los que la protección
física aumenta al tratarse de algoritmos robustos. No obstante, no resulta
infalible, pues la efectividad del algoritmo está también ligada al tipo de
contraseña utilizada como clave de protección.
- 42 -
En el caso de las redes móviles la situación es similar. Las redes móviles
de tercera generación (3G) se consideran bastante robustas, en cuanto a la
seguridad de sus algoritmos de cifrado y protección. Por otro lado, la
seguridad de las redes móviles de segunda generación (2G y 2.5G) se ha
puesto en entredicho en diversos estudios, por lo que actualmente no se
consideran seguras.
Por último, comentar que actualmente es posible adquirir en Internet
dispositivos “distorsionadotes” (jammers) que impiden la utilización de
determinadas bandas de frecuencia utilizadas por las tecnologías móviles.
Usando un dispositivo de estas características, se podría impedir la conexión
de un dispositivo a las redes de telefonía móvil, forzándolo a conectarse a una
red inalámbrica maliciosa. También se podría imposibilitar la conexión a las
redes 3G y de este modo forzar una conexión mediante tecnologías 2.5G
(como GPRS y EDGE).
En cuanto al uso de comunicaciones en la red, se recomienda:
•
No enviar nunca información o documentos sensibles a través
de
una
conexión
sin
cifrar.
Asegurarse
de
que
los
credenciales de conexión (nombre de usuario y contraseña)
viajan cifrados a través de SSL.
•
Conectarse, en la medida de lo posible, a redes de
confianza. Es preferible utilizar la red doméstica o laboral,
antes que otro tipo de redes.
•
En redes locales, comprobar que la conexión con la puerta
de enlace es directa y el equipo no está sufriendo un ataque
de hombre en el medio. Para ello, se pueden utilizar
herramientas de trazado de conexiones (como tracert en
Microsoft Windows o traceroute en GNU/Linux y Mac OS X) o
consultar la tabla de correspondencias ARP.
- 43 -
•
No utilizar en ningún caso redes inalámbricas abiertas, cuyo
origen resulta desconocido, y desconfiar de redes Wi-Fi
inalámbricas gratuitas, como las ofrecidas en bares.
•
Configurar nuestra propia red Wi-Fi doméstica con seguridad
WPA2.
•
En redes móviles, preferir el uso de redes de tercera
generación (3G) frente a las de segunda generación (2G,
2.5G, GPRS o EDGE).
7.4. SEGURIDAD FÍSICA
Se entiende por seguridad física aquella que está relacionada con los
dispositivos hardware, en este caso aquellos en los que tiene lugar algún
proceso de geolocalización. El riesgo más evidente supone la pérdida o
sustracción de un dispositivo hardware, en el que podrían estar almacenados
datos personales, contraseñas de acceso a servicios de geolocalización, etc.
Este riesgo, en el caso de los ordenadores de sobremesa, es bajo. Sin
embargo, en los ordenadores portátiles y especialmente en el caso de
dispositivos móviles y teléfonos inteligentes, resulta bastante elevado.
Por otro lado, debe considerarse también el riesgo de una modificación
no autorizada en el hardware, cuyas consecuencias pueden ir desde el
funcionamiento defectuoso del mismo (posible denegación de servicios)
hasta la captura de contraseñas de acceso mediante keyloggers, que
básicamente son un tipo de software o dispositivo hardware que se encarga
de registrar las pulsaciones que se realizan en el teclado, para posteriormente
memorizarlas en un fichero o enviarlas a través de internet.
- 44 -
A continuación presento algunas recomendaciones para mejorar la
seguridad física de nuestros dispositivos móviles:
•
Instalar programas de borrado remoto que, en caso de
sustracción o pérdida del dispositivo sin posibilidad alguna de
recuperación, nos permitan eliminar toda la información
privada del dispositivo.
•
Instalar programas que impidan su utilización en el caso de
que se cambie la tarjeta SIM instalada en el dispositivo.
•
En caso de pérdida o sustracción de un teléfono móvil,
solicitar al operador de la red su bloqueo mediante IMEI
(International Mobile Equipment Identity), tras establecer la
correspondiente denuncia en las dependencias policiales.
•
Establecer contraseñas de acceso para todos los dispositivos,
incluyendo
ordenadores
de
sobremesa,
portátiles
o
dispositivos móviles.
•
Asegurarse de que tras activar un dispositivo suspendido se
solicita nuevamente la contraseña de acceso o una
diferente.
•
Utilizar contraseñas fuertes con una longitud mínima de 8
caracteres, que combinen números, letras mayúsculas y
minúsculas, e incluso símbolos. De igual manera, se deben
cambiar las contraseñas con cierta periodicidad.
- 45 -
7.5. DESARROLLO DE APLICACIONES SEGURAS
Proteger las aplicaciones basadas en red contra posibles hackers es
clave para garantizar el éxito de cualquier sistema. Un ejemplo de ello sería
Google, que invierte miles de millones de dólares en tecnología, personal y
procesos para garantizar que los datos de los usuarios de sus aplicaciones
estén a salvo, seguros y mantengan su privacidad.
Por ejemplo, Google protege la transmisión de datos por la red con
conexiones SSL (Secure Socket Layer) para evitar que los datos confidenciales
de los usuarios se intercepten. Además el acceso a la mayoría de servicios de
sus aplicaciones es a través de HTTPS, lo que consigue que todos los accesos
del usuario y todas las interacciones de datos estén encriptados. Por otro lado,
Google nunca utiliza cookies para almacenar contraseñas o datos del usuario
en su equipo. Solamente utiliza las cookies para guardar la información de la
sesión y a conveniencia del usuario, pero nunca se utilizan para guardar
información confidencial que pueda utilizarse, por ejemplo, para entrar en la
cuenta del usuario.
A continuación, enumeraré algunos consejos prácticos a la hora de
crear aplicaciones seguras:
•
Desarrollar aplicaciones utilizando un framework que atienda
a los aspectos fundamentales de seguridad y privacidad.
•
Establecer y cumplir directivas de seguridad para garantizar
que la aplicación funciona de manera segura, como por
ejemplo, longitud y período de validez de las contraseñas o
métodos para el cifrado de claves.
•
Optar por tecnologías que utilicen el cifrado para proteger la
privacidad de los usuarios y la integridad de los datos en toda
la red. Establecer un protocolo admitido por la comunidad
de internet, como por ejemplo, SSL (Secure Socket Layer), TLS
(Transport Layer Security) o IPSec (Internet Protocol Security).
- 46 -
•
Utilizar mecanismos de control de acceso, que limiten la
llegada a los recursos en función de la identidad de los
usuarios y de su pertenencia a varios grupos predefinidos.
•
Limitar el acceso a los recursos a aquellos usuarios que
realmente lo necesiten. Por ejemplo, abrir únicamente los
puertos 80 (HTTP) y 443 (HTTPS) del protocolo TCP para
obtener acceso a los servicios web y desactivar los demás.
•
Cuando se intente obtener acceso a un recurso protegido,
comprobar los permisos de toda la cadena de llamadas con
la intención de garantizar que se está autorizado para
obtener dicho acceso. Básicamente, el comportamiento del
código está restringido por el componente menos fiable de la
cadena de llamadas.
•
Utilizar una autentificación mediante certificados de clave
pública, que permite a los usuarios comunicarse con un sitio a
través
de
internet
sin
exponer
contraseñas
ni
datos
susceptibles de ser interceptados con facilidad. Si bien, los
certificados no proporcionan cifrado por sí solos, pero son
fundamentales para establecer un canal de comunicación
seguro.
•
Fomentar el uso de contraseñas rigurosas, procurando que
contengan al menos siete caracteres, haya tanto mayúsculas
como minúsculas, incluya números y signos de puntuación, y
no figure en ningún diccionario de contraseñas.
•
Utilizar algún estándar de autorización integrado en el sistema
para controlar el acceso a los recursos. No confiar en el
acceso a los recursos desde las aplicaciones.
- 47 -
•
Evitar desbordamientos de búfer, ya que representan una
gran amenaza para la seguridad. Las aplicaciones que
escuchan en un socket o puerto de E/S constituyen un blanco
para ataques que introducen código malintencionado que
después se ejecuta en el sistema. Es muy importante que
cuando se tengan que escribir datos en algún búfer, no se
sobrepase la capacidad permitida del búfer.
•
Exigir privilegios mínimos, o lo que es lo mismo, no se deben
exigir privilegios de administrador para ejecutar todas las
aplicaciones.
Un
desbordamiento
del
búfer
en
una
aplicación que se ejecuta con privilegios de administrador
permite que un atacante cause estragos en todo el sistema.
•
Dividir la aplicación en capas independientes. En el núcleo
de la aplicación debe encontrarse la parte que más se desee
proteger;
normalmente,
el
almacén
de
datos
de
la
aplicación. La comunicación entre una capa y la capa
siguiente
debe
producirse
sólo
a
través
de
canales
específicos. Cada capa agrega un obstáculo adicional a la
entrada de un atacante.
•
Validar
los
datos
proporcionados
por
el
usuario.
Es
conveniente desconfiar siempre de los datos proporcionados
por el usuario hasta que sean validados. Cualquier dato
introducido por un usuario puede causar daños a un sistema.
Hay que examinar y comprobar siempre que los datos sean
correctos y que estén correctamente formados antes de
actuar sobre ellos. Es conveniente recordar que, cuando se
validan los datos, a veces resulta más fácil identificar
información incorrecta (por ejemplo, buscar caracteres no
válidos) que verificar que la información sea correcta.
- 48 -
•
Desarrollar planes de emergencia a los que se pueda recurrir
si no funciona la defensa ante los ataques. Estos planes
deben tener como objetivo reducir los daños al mínimo y
determinar en qué medida se ha visto afectada la
aplicación.
•
Realizar
copias
de
seguridad
programadas
ante,
por
ejemplo, posibles ataques que den lugar a una denegación
de servicios, como el bloqueo de un sistema de servidores, ya
que resultan difíciles de evitar e incluso de pronosticar. La
realización de copias de seguridad rutinarias es uno de los
mecanismos más importantes de un plan de recuperación.
•
Por último, pero por ello no menos importante, realizar una
vigilancia constante, que como suele decirse, para obtener
seguridad no hay que bajar la guardia. Es preciso realizar
exámenes periódicos de seguridad para identificar modelos
de abuso y brechas potenciales. La vigilancia constante es el
único medio que existe para defenderse de los riesgos
imprevistos o no paliados.
- 49 -
8. EJEMPLO APLICACIÓN DE GEOLOCALIZACIÓN
En este último apartado voy a explicar brevemente los puntos más
importantes de una aplicación básica de geolocalización. He decidido
realizar dicho ejemplo para Android, ya que tenía algo de experiencia previa
en la programación para dichos dispositivos. La aplicación realizada muestra
la ubicación actual del dispositivo en un mapa, utilizando su GPS. Dicha
localización se actualizará periódicamente. Para el desarrollo de dicha
aplicación he utilizado la librería Google APIs [Android 4.2.2].
En principio, por razones de seguridad, acceder a la información de
localización está prohibido a las aplicaciones. Si éstas desean hacer uso de
este servicio han de solicitar los diferentes permisos al usuario. Estos permisos
deben ser indicados en el fichero AndroidManifest.xml. Posteriormente,
durante la instalación de la aplicación, se le comunicará al usuario los distintos
servicios de los que va a hacer uso dicha aplicación y si desea darle permiso
para usarlos.
Para esta aplicación voy a pedir permiso para tener acceso a Internet,
ya que el mapa lo va a necesitar para cargarse, y para precisar la ubicación
vía GPS:
También hay que reflejar en el AndroidManifest.xml que la aplicación
va a utilizar la librería de mapas de Google:
Una vez creado el Manifest, lo siguiente que voy a hacer es diseñar la
disposición que va a tener la interfaz de la actividad principal en el
activity_main.xml, que se encuentra dentro de la carpeta layout de los
recursos.
- 50 -
Para esta aplicación va ser muy sencillo. Simplemente voy a utilizar una
vista para el mapa que rellene toda la pantalla del dispositivo y que sea
clickable:
Para la utilización de la vista de mapas de Google es necesaria la
obtención de una clave del servicio del API de Google Maps. En el siguiente
enlace se explica como obtener dicha clave:
https://developers.google.com/maps/documentation/android/start#obtaining_an_api_key
Para finalizar voy a programar la funcionalidad de la clase de la
actividad principal (MainActivity.java) de la aplicación. Primero, la clase
extenderá de MapActivity para facilitar la gestión del mapa e implementará
la interfaz LocationListener para poder detectar los cambios en la localización
del dispositivo.
De los métodos disponibles en la interfaz LocationListener, utilizaré
onProviderDisabled, para forzar al usuario a tener el GPS funcionando antes de
que la aplicación se inicie, y onLocationChanged, para llamar al método
updateLocation que voy a implementar más tarde y que dibujará un nuevo
marcador de posición cada vez que se actualice la localización.
- 51 -
A continuación, voy a crear una clase que dibuje un marcador en la
localización detectada. Para ello extenderé la clase Overlay (capa
superpuesta) y de esta manera podré seleccionar la imagen que desee como
marcador. En este caso utilizaré la imagen de ejemplo de Android, pero se
podría cambiar por cualquier otra imagen que añadamos a los recursos del
proyecto. La clase MiOverlay será privada ya que está definida dentro de la
clase principal.
Dentro de esta clase, crearé una variable que represente el punto
donde se colocará el marcador de posición y que pasaré como parámetro al
constructor, y sobrescribiré el método draw para que dibuje la imagen que yo
desee como marcador.
Ahora
voy
a
crear
el
método
mencionado
anteriormente
updateLocation que dibujará el marcador de posición al iniciar la aplicación y
cada vez que haya una actualización.
Primero voy a obtener la vista del mapa definida anteriormente en el
diseño de la interfaz y de ella crearé un controlador para el mapa.
Después creo un punto a partir de la latitud y la longitud de la
localización que se pase como parámetro al método.
Una vez que tengo el punto, centro el mapa en la posición del punto
con el controlador y hago zoom.
- 52 -
Finalmente
instancio
la
clase
MiOverlay
que
he
construido
anteriormente para agregar el nuevo marcador en el listado de overlays del
mapa e invalido la vista del mapa para que vuelva a dibujarse de nuevo con
el último marcador.
Para finalizar, en el método onCreate, que es invocado cuando la
actividad principal se inicia, selecciono como interfaz de la aplicación la vista
activity_main anteriormente diseñada, habilito el control del zoom en el mapa,
obtengo el servicio de geolocalización del sistema y llamo al método
updateLocation para dibujar el marcador en la última posición detectada por
el GPS.
Por último, cada 5 minutos, consulto la ubicación del dispositivo a través
de su GPS. Si su nueva posición tiene más de 100 metros de distancia con la
última almacenada, entonces se registra que ha habido un cambio de
localización y, por tanto, automáticamente se hará una llamada al método
onLocationChanged, mencionado anteriormente, que a su vez ejecutará
nuevamente el método updateLocation para dibujar el marcador de la
nueva posición en el mapa.
- 53 -
A continuación se muestra una captura de ejemplo de la aplicación de
geolocalización:
Figura: Captura ejemplo aplicación de geolocalización
- 54 -
CONCLUSIONES
Este Trabajo de Fin de Grado se ha basado en el estudio de la situación
actual de los servicios de geolocalización. Junto a la parte más tecnológica y
técnica de la materia, he querido abordar otros aspectos que se han tratado
en clase en este último curso (como la privacidad y la seguridad) y en los que
no me había parado a pensar en exceso en mi anterior Proyecto de Fin de
Carrera.
Las conclusiones más importantes del estudio realizado sobre la
geolocalización son las siguientes:
•
La tecnología hacia la que está evolucionando claramente
el sector es la triangulación mediante satélites (GPS). Ninguna
otra tecnología puede competir con ella en lo que se refiere
a precisión, pero aun así todavía está un peldaño por debajo
de las demás en cuanto a velocidad y tiempo de cálculo.
•
Las aplicaciones basadas en servicios de geolocalización
están invadiendo nuestra vida diaria, debido a la gran
cantidad de usos que tienen, desde localizar direcciones o
lugares hasta situar a nuestros amigos.
•
Lo especialmente sensible que son los datos que manejan las
aplicaciones de geolocalización, así como la importancia
que debemos darle a la privacidad y a la seguridad de
dichos datos, tanto si somos un usuario como un desarrollador
de alguna de estas aplicaciones.
Por último, cabe destacar que la realización de este Trabajo de Fin de
Grado ha sido muy positiva por lo gratificante que resulta, desde un punto de
vista personal, notar la evolución que ha habido tanto en la planificación, la
organización y la estimación de horas previas al desarrollo del trabajo, así
como en la redacción de la memoria.
- 55 -
BIBLIOGRAFÍA
•
Android Developers
http://developer.android.com/index.html
•
Encuesta sobre equipamiento y Uso de Tecnologías de Información y
comunicación (TIC) en los Hogares, 2012
http://www.ine.es/prensa/np738.pdf
•
Fundamentals of GPS Receivers: A Hardware Approach
Dan Doberstein
Springer New York, 2012
•
Guía de Seguridad de Datos de la Agencia Española de Protección de
Datos, 2010
http://www.agpd.es/portalwebAGPD/canaldocumentacion/publicacio
nes/common/Guias/GUIA_SEGURIDAD_2010.pdf
•
Guía
sobre
seguridad
y
privacidad
de
las
herramientas
de
geolocalización
Pablo Pérez San José
INTECO, 2011
•
La Sociedad de la Información en España, 2012
http://e-libros.fundacion.telefonica.com/sie12/aplicacion_sie.html
•
Protección de los datos personales y geolocalización
Didier Gasse
La revista de la Agencia de Protección de Datos de la Comunidad de
Madrid, nº. 23, 2006
- 56 -
•
Resumen exhaustivo de protección de seguridad y vulnerabilidad para
Google Apps
http://static.googleusercontent.com/external_content/untrusted_dlcp/
www.google.com/en/us/a/help/intl/es/admins/pdf/ds_gsa_apps_white
paper_0207.pdf
•
Servicios móviles de localización
Ana Mª Bernardos Barbolla
Ceditec, 2003
•
Towards Street-Level Client-Independent IP Geolocation
http://static.usenix.org/events/nsdi11/tech/full_papers/Wang_Yong.pdf
- 57 -
Descargar