Вы находитесь на странице: 1из 108

Seguridad y

privacidad en las
smart cities
Joan Borrell Viader
Jordi Casas Roma
Carles Garrigues
Cristina Pérez Solà
Xavier Perramon Tornil
Helena Rifà
Sergi Robles Martínez
PID_00228248
© FUOC • PID_00228248 Seguridad y privacidad en las smart cities

Ninguna parte de esta publicación, incluido el diseño general y la cubierta, puede ser copiada,
reproducida, almacenada o transmitida de ninguna forma, ni por ningún medio, sea éste eléctrico,
químico, mecánico, óptico, grabación, fotocopia, o cualquier otro, sin la previa autorización escrita
de los titulares del copyright.
© FUOC • PID_00228248 Seguridad y privacidad en las smart cities

Índice

Introducción............................................................................................... 5

Objetivos....................................................................................................... 6

1. Introducción a la criptografía....................................................... 7
1.1. Conceptos básicos de criptografía .............................................. 8
1.1.1. Criptografía de clave simétrica ...................................... 10
1.1.2. Criptografía de clave pública ......................................... 16
1.1.3. Infraestructura de clave pública (PKI) ........................... 19
1.2. Sistemas de autenticación ........................................................... 21
1.2.1. Autenticación de mensaje ............................................. 21
1.2.2. Autenticación de entidad .............................................. 23
1.3. Protección a nivel de enlace, red y transporte ........................... 25
1.3.1. Conceptos básicos de las redes Wi-Fi ............................ 26
1.3.2. Métodos de autenticación de las estaciones Wi-Fi ........ 29
1.3.3. Protección de tramas con WEP ..................................... 30
1.3.4. WPA ................................................................................ 31
1.3.5. WPA2 .............................................................................. 33
1.3.6. Protección del nivel de red: IPsec .................................. 33
1.3.7. Protección del nivel de transporte: SSL/TLS/WTLS ....... 36
1.4. Redes privadas virtuales (VPN) ................................................... 37
1.4.1. Definición y tipos de VPN ............................................ 37
1.4.2. Configuraciones y protocolos utilizados en VPN .......... 38

2. Arquitectura de redes: seguridad en redes emergentes............ 41


2.1. Redes emergentes ........................................................................ 41
2.1.1. Descripción de las redes ................................................ 41
2.1.2. Vulnerabilidades ............................................................ 43
2.2. Redes de sensores ........................................................................ 45
2.2.1. Gestión de claves ........................................................... 46
2.2.2. Agregación de datos ...................................................... 50

3. Protocolos de redes: seguridad en redes de área local y


personal................................................................................................. 52
3.1. RFID ............................................................................................. 52
3.1.1. Descripción de la tecnología RFID ................................ 53
3.1.2. Seguridad en dispositivos RFID ..................................... 55
3.2. Bluetooth ..................................................................................... 63
3.2.1. Descripción de la especificación Bluetooth ................... 63
3.2.2. Seguridad en dispositivos Bluetooth ............................. 64
3.3. ZigBee .......................................................................................... 69
© FUOC • PID_00228248 Seguridad y privacidad en las smart cities

3.3.1. Descripción de la especificación ZigBee ........................ 69


3.3.2. Seguridad en dispositivos ZigBee ................................... 73
3.4. Comparativa y discusión de la seguridad ................................... 77

4. Privacidad en las smart cities........................................................ 80


4.1. Introducción ................................................................................ 80
4.1.1. Publicación de datos ...................................................... 81
4.1.2. Preservación de la privacidad en la publicación de
datos ............................................................................... 81
4.2. Métodos de enmascaramiento .................................................... 85
4.2.1. Métodos perturbativos ................................................... 86
4.2.2. Métodos no perturbativos ............................................. 89
4.2.3. Generación sintética de datos ....................................... 91
4.3. El modelo de k-anonimidad ....................................................... 92
4.4. Privacidad más allá del uso de las tablas .................................... 93
4.4.1. Localización y tiempo ................................................... 94
4.4.2. Registros de búsqueda y acceso ..................................... 95
4.4.3. Documentos ................................................................... 95
4.4.4. Redes sociales ................................................................. 95

Resumen....................................................................................................... 97

Glosario........................................................................................................ 99

Bibliografía................................................................................................. 106
© FUOC • PID_00228248 5 Seguridad y privacidad en las smart cities

Introducción

Las smart cities aglutinan un amplio conjunto de tecnologías y sistemas infor-


máticos, ordenadores y dispositivos electrónicos, y redes de comunicaciones,
que permiten crear nuevos servicios dirigidos a una eficiente gestión de la in-
formación de una ciudad para mejorar la calidad de vida de sus ciudadanos.
Uno de los principales retos de las smart cities es que sean seguras, ya que los
usuarios implícitamente esperan que los servicios ofrecidos sean seguros y ga-
ranticen su privacidad.

La complejidad de la smart city provoca que la seguridad deba tratarse desde un


enfoque holístico, teniendo en cuenta la seguridad de cada una de las partes
pero también las interacciones y los efectos en cascada que se pueden produ-
cir por el hecho de unir una cantidad tan grande de elementos de diferente
naturaleza.

En este módulo repasaremos las propiedades de seguridad más importantes


que se deben tener en cuenta a la hora de montar una smart city, así como
las tecnologías que actualmente son más apropiadas para implementar esta
seguridad.

En primer lugar, vamos a hacer un repaso a uno de los principales mecanismos


de protección de las redes y sus datos: la criptografía. Veremos qué tipo de
algoritmos son adecuados en cada caso y cuáles son sus principios básicos de
funcionamiento.

En segundo lugar, repasaremos los problemas principales de las arquitecturas


de redes inalámbricas –y en concreto de las redes de sensores– que tanto se
utilizan en la construcción de smart cities para recoger datos del entorno.

En el apartado siguiente pasaremos a ver la seguridad de los protocolos de


comunicación, centrándonos en las tecnologías de RFID, Bluetooth y ZigBee.

En el último apartado de este módulo didáctico trataremos el papel que tie-


ne la preservación de la privacidad en el proceso de publicación de datos. En
concreto, veremos los principales métodos de enmascaramiento de datos y el
modelo de k-anonimidad, que representa uno de los modelos más conocidos
y empleados en los procesos de anonimización. El objetivo de estos procesos
es asegurar la privacidad de los datos de la ciudadanía cuando se publica in-
formación que contiene datos personales. Por un lado, la publicación de estos
datos es muy útil para la investigación que realizan instituciones, universida-
des y empresas; pero por otro lado, se debe evitar la violación de privacidad
que pudieran sufrir los ciudadanos que aparecen en estos conjuntos de datos.
© FUOC • PID_00228248 6 Seguridad y privacidad en las smart cities

Objetivos

En los materiales didácticos asociados a este módulo, el alumnado encontra-


rá las herramientas y los contenidos necesarios para alcanzar los objetivos si-
guientes:

1. Adquirir un conocimiento genérico de las técnicas criptográficas que se


utilizan para afrontar los problemas de seguridad TIC y que son aplicables
a las smart cities.

2. Entender los problemas de seguridad de las redes emergentes que confor-


marán las arquitecturas de smart cities. Se analizará en particular el caso
de las redes de sensores.

3. Conocer el funcionamiento de diversos mecanismos y protocolos de se-


guridad diseñados para redes de sensores donde los costes computaciona-
les, de energía y de transmisión de datos a través de la red son realmente
importantes.

4. Conocer las tecnologías y los estándares básicos para redes inalámbricas de


alcance personal (WPAN), así como identificar los problemas de seguridad
que surgen en estos entornos.

5. Conocer las principales amenazas relacionadas con la privacidad de los


usuarios que puede suponer la publicación de datos.

6. Saber qué mecanismos de enmascaramiento de datos pueden evitar o di-


ficultar la tarea de identificación de usuarios por parte de un atacante.

7. Entender las limitaciones de cada una de las tecnologías expuestas y tam-


bién lo que estas limitaciones implican a la hora de diseñar sistemas segu-
ros para las smart cities.
© FUOC • PID_00228248 7 Seguridad y privacidad en las smart cities

1. Introducción a la criptografía

Para proteger las redes de comunicaciones en una smart city, la criptografía


es la herramienta que nos permite evitar que alguien intercepte, manipule o
falsifique los datos transmitidos. Dedicaremos el primer subapartado a intro-
ducir los conceptos de criptografía necesarios para entender cómo se aplica a
la protección de las comunicaciones.

La finalidad básica de la criptografía es el envío de información secreta. Si


aplicamos una transformación, conocida como cifrado, a la información que
queremos mantener en secreto, aunque un adversario consiga ver qué datos
estamos enviando le serán completamente ininteligibles. Solo el destinatario
legítimo será capaz de realizar la transformación inversa y recuperar los datos
originales.

Pero más allá de mantener la información en secreto, existen otros servicios


que pueden ser igualmente necesarios, como, por ejemplo, la autenticación.
Debemos evitar, de esta manera, que después de tomar todas las medidas ne-
cesarias para que solo el destinatario final pueda leer la información, resulte
que este destinatario sea un impostor que haya conseguido hacerse pasar por
el auténtico destinatario. En el subapartado 1.2 veremos algunos sistemas para
garantizar la autenticidad en las comunicaciones en una smart city, la mayoría
de ellas basadas en técnicas criptográficas.

En el resto de este apartado estudiaremos ejemplos de protocolos de comuni-


cación que, aplicados los mecanismos anteriores, permiten proteger la infor-
mación que se transmite entre ordenadores. Esta protección se puede obtener
en distintos niveles de la arquitectura de comunicaciones. En las redes inalám-
bricas que podemos encontrar en cualquier smart city, uno de los niveles más
vulnerables que tenemos que proteger es el nivel�de�enlace. Veremos las so-
luciones propuestas por las especificaciones Wi-Fi. A nivel�red, el mecanismo
principal en un entorno de interconexión basado en IP es el conjunto de pro-
tocolos conocido como IPsec.

Alternativamente, se puede implementar la protección a nivel�de�transporte,


aprovechando así la infraestructura IP existente, principalmente los encami-
nadores o routers. Como ejemplo de protección a nivel de transporte veremos
la familia de protocolos SSL�TLS�WTLS.

Para finalizar el apartado, introduciremos la tecnología de redes�privadas�vir-


tuales o VPN, que permite utilizar una red pública ampliamente extendida
como es internet para comunicaciones seguras, como si fuera una red privada
dedicada.
© FUOC • PID_00228248 8 Seguridad y privacidad en las smart cities

1.1. Conceptos básicos de criptografía

A lo largo de la historia se han diseñado distintas técnicas para ocultar el sig- Criptografía
nificado de la información que no interesa que sea conocida por extraños.
Los términos criptografía, crip-
Algunas de ellas ya se usaban en tiempos de la antigua Grecia o del Imperio tología, etc., provienen de la
romano: por ejemplo, se atribuye a Julio César la invención de un cifrado para raíz griega kryptós, que signifi-
ca ‘escondido’.
enviar mensajes que no pudieran ser interpretados por el enemigo.

La criptografía estudia, desde un punto de vista matemático, los mé-


todos de protección de la información. Por otro lado, el criptoanálisis
estudia las posibles técnicas utilizadas para contrarrestar los métodos
criptográficos, y es de gran utilidad para ayudar a que estos sean más
robustos y difíciles de atacar. El conjunto formado por estas dos disci-
plinas, criptografía y criptoanálisis, se conoce como criptología.

Cuando la protección que queremos obtener consiste en garantizar el secreto Uso de cifrado
de la información, es decir, la confidencialidad, utilizamos el método cripto-
El hecho de usar técnicas de ci-
gráfico conocido como cifrado. frado parte de la idea de que
es muy costoso intentar evitar
que un intruso intercepte la in-
Si M es el mensaje que queremos proteger o texto�en�claro, cifrarlo consiste formación. Enviar mensajes ci-
frados es más fácil, ya que no
en aplicarle un algoritmo�de�cifrado�f, que lo transforma en otro mensaje que podrá interpretar la informa-
ción que contienen.
llamaremos texto�cifrado, C. Esto lo podemos expresar como:

C = f(M)

Para que este cifrado sea útil, debe existir otra transformación o algoritmo�de
descifrado� , que permita recuperar el mensaje original a partir del texto
cifrado:

El cifrado de César

Por ejemplo, el cifrado de César que hemos mencionado anteriormente consistía en sus-
tituir cada letra del mensaje por la que hay tres posiciones más adelante en el alfabeto
(volviendo a empezar por la letra A si llegamos a la Z). De este modo, si aplicamos este
algoritmo de cifrado al texto en claro “ALEA JACTA EST” (y utilizando el alfabeto latino
actual, porque en tiempos del César no existían letras como la W), obtenemos el texto
cifrado “DOHD MDFWD HVW”. El descifrado en este caso es muy simple: solo es nece-
sario sustituir cada letra por la que hay tres posiciones antes en el alfabeto.

Un esquema como el del cifrado de César tiene el inconveniente de que, si el


enemigo descubre cuál es el algoritmo de cifrado (y a partir de aquí deduce el
algoritmo inverso), será capaz de interpretar todos los mensajes cifrados que
capture. Entonces se requeriría instruir a todos los “oficiales de comunicacio-
© FUOC • PID_00228248 9 Seguridad y privacidad en las smart cities

nes” del ejército para que aprendieran un nuevo algoritmo, lo cual podría re-
sultar complejo. En lugar de ello, lo que se hace en la actualidad es utilizar
como algoritmo una función con un parámetro llamado clave.

En este caso podemos hablar de una función de cifrado e con una clave�de
cifrado�k, y una función de descifrado d con una clave�de�descifrado�x:

Ejemplo de uso de una clave

El algoritmo de Julio César se puede generalizar definiendo una clave k que indique
cuántas posiciones hay que avanzar cada letra en el alfabeto. El cifrado de César utiliza
k = 3. Para descifrar se puede utilizar el mismo algoritmo pero con la clave invertida
( ).

De este modo, una solución al problema del espía que llega a conocer cómo
descifrar los mensajes podría ser seguir utilizando el mismo algoritmo, pero
con una clave distinta.

Una premisa fundamental en la criptografía moderna es la suposición


de�Kerckhoffs, que establece que los algoritmos deben ser conocidos
públicamente y su seguridad solo depende de la clave. En lugar de in-
tentar ocultar el funcionamiento de los algoritmos, es mucho más se-
guro y efectivo mantener en secreto solamente las claves.

Seguridad por ocultismo

A lo largo de la historia ha habido casos que han demostrado la peligrosidad de basar


la protección en mantener los algoritmos en secreto (lo que se conoce como seguridad
por ocultismo). Si el algoritmo es conocido por muchos, es más fácil que se detecten
debilidades o vulnerabilidades y se puedan corregir rápidamente. Si no, un experto podría
deducir el algoritmo por ingeniería inversa, y terminar descubriendo que tiene puntos
débiles por donde se puede atacar, como sucedió con el algoritmo A5/1 de la telefonía
móvil GSM.

Un algoritmo se considera seguro si a un adversario le es imposible obtener el


texto en claro M aun conociendo el algoritmo e y el texto cifrado C. Es decir,
resulta imposible descifrar el mensaje sin saber cuál es la clave de descifrado.
La palabra imposible debe tomarse en consideración con distintos matices. Un
algoritmo criptográfico es computacionalmente�seguro si, aplicando el me-
jor método conocido, la cantidad de recursos necesarios (tiempo de cálculo,
número de procesadores, etc.) para descifrar el mensaje sin conocer la clave es
mucho más grande (unos cuantos órdenes de magnitud) de lo que está al al-
cance de cualquier persona. En el límite, un algoritmo es incondicionalmen-
te�seguro si no se puede invertir ni con recursos infinitos. Los algoritmos que
se utilizan en la práctica son (o intentan ser) computacionalmente seguros.
© FUOC • PID_00228248 10 Seguridad y privacidad en las smart cities

La acción de intentar descifrar mensajes sin conocer la clave de descifrado se


conoce como ataque. Si el ataque tiene éxito, se suele decir coloquialmente
que se ha conseguido romper el algoritmo. Existen dos formas de llevar a cabo
un ataque:

• Mediante el criptoanálisis, es decir, estudiando matemáticamente la for-


ma de deducir el texto en claro a partir del texto cifrado.

• Aplicando la fuerza�bruta, es decir, probando uno a uno todos los valores


posibles de la clave de descifrado x hasta encontrar uno que produzca un
texto en claro con sentido.

Ataques al cifrado de César

Continuando con el ejemplo del algoritmo del César generalizado (con clave), un ataque
criptoanalítico podría consistir en el análisis de las propiedades estadísticas del texto ci-
frado. Las letras cifradas que más se repiten probablemente corresponderán a vocales o
a las consonantes más frecuentes, las combinaciones más repetidas de dos (o tres) letras
seguidas probablemente corresponden a los dígrafos (o trígrafos) que normalmente apa-
recen más veces en un texto.

Por otro lado, el ataque por fuerza bruta consistiría en intentar el descifrado con cada
uno de los 25 posibles valores de la clave ( , si el alfabeto tiene 26 letras) y ver
cuál de ellos da un resultado inteligible. En este caso, la cantidad necesaria de recursos
es tan modesta que incluso se puede realizar el ataque a mano. Por lo tanto, este cifrado
sería un ejemplo de algoritmo inseguro o débil.

A continuación veremos las características de los principales sistemas cripto-


gráficos utilizados en la protección de las comunicaciones. A partir de ahora,
consideraremos los mensajes en claro, los mensajes cifrados y las claves como
secuencias de bits.

1.1.1. Criptografía de clave simétrica

Los sistemas criptográficos de�clave�simétrica se caracterizan por que


la clave de descifrado x es idéntica a la clave de cifrado k, o se puede
deducir directamente a partir de esta.

Para simplificar, supondremos que en este tipo de criptosistemas la clave de


descifrado es igual a la de cifrado: x = k (si no, siempre podemos considerar
que en el algoritmo de descifrado el primer paso es calcular la clave x a partir
de k). Por ello estas técnicas criptográficas se denominan de clave simétrica, o
a veces también de clave�compartida. Así, tenemos:
© FUOC • PID_00228248 11 Seguridad y privacidad en las smart cities

La seguridad del sistema recae pues en mantener en secreto la clave k. Cuando


los participantes en una comunicación quieren intercambiarse mensajes con-
fidenciales, tienen que elegir un clave secreta y usarla para cifrar los mensajes.
Entonces, pueden enviar estos mensajes por cualquier canal de comunicación,
con la confianza de que, aunque el canal sea inseguro y susceptible de ser ins-
peccionado por terceros, ningún espía Z será capaz de interpretarlos (figura 1).

Figura 1. Mensaje M cifrado con la clave k entre A y


B

Si el sistema es de clave compartida, es necesario que el valor de la clave se-


creta k que usan A y B sea el mismo. ¿Cómo podemos asegurar que esto sea
así? Está claro que no pueden mandar la clave elegida mediante el canal de
comunicación del que disponen porque la hipótesis inicial es que este canal
es inseguro y todo el mundo podría descubrir la información que se transmite
por él. Una posible solución consiste en utilizar un canal aparte, que se pueda
considerar suficientemente seguro (figura 2).

Figura 2. Establecimiento de un canal seguro entre A


yB

Esta solución, sin embargo, presenta algunos inconvenientes. Por un lado, se Canales seguros
supone que el canal seguro no será de uso tan ágil como el canal inseguro
Podrían ser ejemplos de cana-
(si lo fuera, sería mucho mejor enviar todos los mensajes confidenciales sin les seguros el correo tradicio-
cifrar por el canal seguro y olvidarnos del canal inseguro). Por tanto, puede ser nal (no electrónico) o un ser-
vicio de mensajería física, una
difícil ir cambiando la clave. Y por otro lado, este esquema no es suficiente- conversación telefónica, o cara
a cara, etc.
mente general: puede que tengamos que enviar información cifrada a alguien
con quien no podemos contactar de ningún otro modo. Como veremos más
adelante, estos problemas relacionados con el intercambio�de�claves se solu-
cionan con la criptografía de clave pública.

A continuación repasaremos las características básicas de los principales algo-


ritmos criptográficos de clave simétrica, que agruparemos en dos categorías:
algoritmos de cifrado en flujo y algoritmos de cifrado en bloque.
© FUOC • PID_00228248 12 Seguridad y privacidad en las smart cities

Algoritmos de cifrado en flujo

Suma y resta de bits


El funcionamiento de una cifrado en flujo consiste en la combinación
de un texto en claro M con un texto de cifrado S que se obtiene a partir Cuando trabajamos con arit-
mética binaria o aritmética
de la clave simétrica k. Para descifrar, solo se requiere realizar la opera- módulo 2, se cumple que:
ción inversa con el texto cifrado y el mismo texto de cifrado S.

La operación de combinación que se utiliza normalmente es la suma, y por


tanto la operación inversa es la resta. Si el texto está formado por caracteres,
este algoritmo sería como una cifra de César en la que la clave va cambiando
de un carácter a otro. La clave que corresponde cada vez viene dada por el
texto de cifrado S (llamado keystream en inglés).

Si consideramos el texto formado por bits, la suma y la resta son equivalentes.


En efecto, cuando se aplican bit a bit, ambas son idénticas a la operación lógica
O exclusiva, denotada con el operador XOR (eXclusive OR) o el símbolo .
Así pues:

En los esquemas de cifrado en flujo, el texto en claro M puede ser de cualquier


longitud, y el texto de cifrado S ha de ser como mínimo igual de largo. De
hecho, no es necesario disponer del mensaje entero antes de empezar a cifrarlo
o descifrarlo, ya que se puede implementar el algoritmo para que trabaje con
un flujo de datos que se va generando a partir de la clave (el texto de cifrado).
De ahí procede el nombre de este tipo de algoritmos. La figura 3 ilustra el
mecanismo básico de su implementación.

Figura 3. Esquema de cifrado y descifrado en flujo

La forma más habitual de obtener el texto de cifrado S en función de la clave k


es utilizar funciones que generan secuencias pseudoaleatorias a partir de una
semilla (un número que actúa como parámetro del generador), y lo que se
intercambia como clave secreta k es solamente esta semilla. Son ejemplos de
funciones pseudoaleatorias las basadas en registros de desplazamiento reali-
mentados (feedback shift registers o FSR). El valor inicial del registro es la semi-
© FUOC • PID_00228248 13 Seguridad y privacidad en las smart cities

lla. Para ir obteniendo cada bit pseudoaleatorio se desplazan todos los bits del
registro una posición y se toma el que sale fuera del registro. El bit que queda
libre al otro extremo se llena con un valor que es función del resto de los bits.

Un ejemplo de algoritmo de cifrado en flujo muy utilizado es el RC4 (Ron’s


Code 4); es el algoritmo de cifrado en flujo más utilizado en muchas aplica-
ciones gracias a su simplicidad y velocidad.

Algoritmos de cifrado en bloque

En una cifra de bloque, el algoritmo de cifrado o descifrado se aplica


separadamente a bloques de entrada de longitud fija b, y para cada uno
de ellos el resultado es un bloque de la misma longitud.

Para cifrar un texto en claro de L bits debemos dividirlo en bloques de b bits


cada uno y cifrar estos bloques uno a uno. Si L no es múltiplo de b, se pueden
agregar bits adicionales hasta llegar a un número lleno de bloques, pero luego
puede ser necesario indicar de alguna manera cuántos bits había realmente en
el mensaje original. El descifrado también se debe realizar bloque a bloque.

La figura 4 muestra el esquema básico del cifrado de bloque.

Figura 4. Esquema de cifrado en bloque

Muchos de los algoritmos del cifrado de bloque se basan en la combinación


de dos operaciones básicas:

1) La sustitución, que consiste en traducir cada grupo de bits de la entrada a Clave de la sustitución
otro, de acuerdo con una permutación determinada. alfabética

Está claro que la clave ha de


2) La transposición, que consiste en reordenar la información del texto en ser una permutación del alfa-
beto, es decir, no puede haber
claro según un patrón determinado. Un ejemplo podría ser la formación de letras repetidas ni faltar ningu-
na. Si no, la transformación no
grupos de cinco letras, incluidos los espacios en blanco, y rescribir cada grupo sería invertible en general.
(1, 2, 3, 4, 5) en el orden (3, 1, 5, 4, 2):
© FUOC • PID_00228248 14 Seguridad y privacidad en las smart cities

Texto en claro: A L E A J A C T A E S T

Texto cifrado: E A A L C J A T A S T E

La transposición por sí sola no dificulta extraordinariamente el criptoanálisis,


pero puede combinarse con otras operaciones para añadir complejidad a los
algoritmos de cifrado.

El producto�de�cifras, o combinación en cascada de distintas transformacio-


nes criptográficas, es una técnica muy efectiva para implementar algoritmos
bastante seguros de forma sencilla. Por ejemplo, muchos algoritmos de cifrado
de bloque se basan en una serie de iteraciones de productos sustitución-trans-
posición.

Ejemplos muy conocidos de algoritmos de cifrado en bloque son el TripleDES o el AES


(Advanced Encryption Standard).

Funciones hash seguras

Aparte de cifrar datos, existen algoritmos basados en técnicas criptográficas


que se usan para garantizar la autenticidad de los mensajes. Un tipo de algorit-
mos de estas características son las llamadas funciones�hash�seguras, también
conocidas como funciones de resumen�de�mensaje (message digest, en inglés).

En general, podemos decir que una función hash nos permite obtener una
cadena de bits de longitud fija, relativamente corta, a partir de un mensaje de
longitud arbitraria:

Para mensajes M iguales, la función h debe dar resúmenes H iguales. Pero si


dos mensajes dan el mismo resumen H, no deben ser necesariamente iguales.
Esto es así porque solo existe un conjunto limitado de posibles valores H, ya
que su longitud es fija, y en cambio puede haber muchos más mensajes M (si
la longitud puede ser cualquiera, habrá infinitos).

Para poderla aplicar en un sistema de autenticación, la función h debe ser una


función hash segura.

Secreto de los algoritmos


Se entiende que una función hash o de resumen es segura si cumple las
siguientes condiciones: Observad que las funciones
hash son conocidas, puesto
que todo el mundo debe po-
• Es unidireccional, es decir, si tenemos es computacional- der calcular los resúmenes del
mismo modo.
mente inviable encontrar M a partir del resumen H.
© FUOC • PID_00228248 15 Seguridad y privacidad en las smart cities

• Es resistente�a�colisiones, es decir, dado un mensaje M cualquiera


es computacionalmente inviable encontrar un mensaje tal
que .

Estas propiedades permiten el uso de las funciones hash seguras para dar un
servicio de autenticidad basado en una clave secreta s compartida entre dos
partes A y B. Aprovechando la unidireccionalidad, cuando A quiere mandar un
mensaje M a B puede preparar otro mensaje : por ejemplo, concatenando
el original con la clave: . Entonces manda a B el mensaje M y el
resumen del mensaje (figura 5).

Figura 5

Para comprobar la autenticidad del mensaje recibido, B verifica que el resumen


corresponda efectivamente a . Si es así, quiere decir que lo ha generado
alguien que conoce la clave secreta s (que debería ser A), y también que nadie
ha modificado el mensaje.

Otra técnica consistiría en calcular el resumen del mensaje M y cifrarlo utili-


zando s como clave de cifrado (figura 6).

Figura 6

Para verificar la autenticidad, se debe recuperar el resumen enviado, descifrán- Autenticidad y


dolo con la clave secreta s, y compararlo con el resumen del mensaje M. Un confidencialidad

atacante que quisiera modificar el mensaje sin conocer la clave podría intentar Cifrar solamente el resumen,
sustituirlo por otro que diera el mismo resumen, con lo cual B no detectaría en lugar del mensaje entero, es
más eficiente porque hay que
la falsificación. Pero si la función de resumen es resistente a colisiones, esto cifrar menos bits. Esto, eviden-
temente, suponiendo que so-
le sería imposible al atacante. lamente se precise autentici-
dad, y no confidencialidad. Si
también interesa que el men-
Hasta hace poco, el algoritmo de hash más usado era el MD5 (Message Digest saje sea confidencial, entonces
sí es necesario cifrarlo entero.
5). Pero como el resumen que da es de solo 128 bits, y aparte se han encontra-
do otras formas de generar colisiones parciales en el algoritmo, actualmente
se recomienda utilizar algoritmos más seguros, como el SHA-1 (Secure Hash
Algorithm-1).
© FUOC • PID_00228248 16 Seguridad y privacidad en las smart cities

1.1.2. Criptografía de clave pública

Algoritmos de clave pública

Como hemos visto en el subapartado anterior, uno de los problemas de la crip-


tografía de clave simétrica es el de la distribución de las claves. Este problema
se puede solucionar si utilizamos algoritmos�de�clave�pública, también lla-
mados de�clave�asimétrica.

En un algoritmo criptográfico de clave pública se utilizan claves distin-


tas para el cifrado y el descifrado. Una de ellas, la clave�pública, se pue-
de obtener fácilmente a partir de la otra, la clave�privada, pero por el
contrario es computacionalmente de muy difícil obtención la clave pri-
vada a partir de la clave pública.

Los algoritmos de clave pública típicos permiten cifrar con la clave pública
( ) y descifrar con la clave privada ( ):

Pero también puede haber algoritmos que permitan cifrar con la clave privada
y descifrar con la pública (más adelante veremos cómo se puede utilizar esta
propiedad):

Los algoritmos de clave pública se basan en problemas matemáticos “fáciles” Adaptación de los
de plantear a partir de la solución, pero “difíciles” de resolver. En este contexto, problemas difíciles

se entiende que un problema es fácil si el tiempo para resolverlo, en funciones Si los adelantos de la tecnolo-
de la longitud n de los datos, se puede expresar en forma polinómica como, gía reducen el tiempo de re-
solución, se puede aumentar
por ejemplo, (en teoría de la complejidad, se dice que estos problemas la longitud n, con lo cual se
necesitarán unas cuantas ope-
son de la “clase P”). Si el tiempo de resolución crece más rápidamente, como raciones más para el plantea-
n miento, pero la complejidad
por ejemplo con 2 , el problema se considera difícil. Así, se puede elegir un de la solución crecerá expo-
nencialmente.
valor de n tal que el planteamiento sea viable pero la resolución sea compu-
tacionalmente intratable.

Un ejemplo de problema fácil de plantear pero difícil de resolver es el de los


logaritmos discretos. Si trabajamos con aritmética módulo m, resulta fácil cal-
cular esta expresión:
© FUOC • PID_00228248 17 Seguridad y privacidad en las smart cities

El valor x se llama logaritmo discreto de y en base b módulo m. Eligiendo con-


venientemente b y m, puede ser difícil calcular el logaritmo discreto de cual-
quier y. Una posibilidad es ir probando todos los valores de x: si m es un núme-
ro de n bits, el tiempo para encontrar la solución aumenta proporcionalmente
n
a 2 . Hay otros métodos más eficientes para calcular logaritmos discretos, pero
el mejor algoritmo conocido también necesita más tiempo del que se puede
expresar polinómicamente.

Ejemplo de operaciones módulo m

Por ejemplo, para obtener podemos multiplicar 11 veces el número 14, dividir
el resultado entre 19 y tomar el residuo de la división, que es igual a 13. Pero también se
puede aprovechar que el exponente 11 es 1011 en binario ( ),
y entonces , para obtener el resultado con menos multiplicaciones:

Así, sabemos que (mod 19). Pero si hubiéramos calculado el logaritmo de


cualquier otro número y, tendríamos que ir probando uno a uno los exponentes hasta
encontrar uno que dé como resultado y. Y si en lugar de tratarse de números de 4 o 5 bits
como estos fueran números de más de 1.000 bits, el problema sería intratable.

Así pues, los algoritmos de clave pública han de ser diseñados de manera que Velocidad de la
sea inviable calcular la clave privada a partir de la pública, y lógicamente tam- criptografía de clave
pública
bién ha de ser inviable invertirlos sin saber la clave privada, pero el cifrado y
el descifrado se han de poder realizar en un tiempo relativamente corto. El cifrado y descifrado con al-
goritmos de clave pública pue-
de llegar a ser dos o tres órde-
nes de magnitud más lentos
En la práctica, los algoritmos utilizados permiten cifrar y descifrar fácilmente, que con criptografía simétrica.
pero todos ellos son considerablemente más lentos que los equivalentes con
criptografía simétrica. Por ello, la criptografía de clave pública se suele utilizar
solo en los problemas que la criptografía simétrica no puede resolver: el inter-
cambio de claves y la autenticación con no repudio (firmas digitales).

• Los mecanismos de intercambio� de� claves permiten que dos partes se


pongan de acuerdo en las claves simétricas que utilizarán para comunicar-
se, sin que un tercero que esté escuchando el diálogo pueda deducir cuáles
son estas claves. Por ejemplo, A puede elegir una clave simétrica k, cifrarla
con la clave pública de B, y enviar el resultado a B. Luego B descifrará con
su clave privada el valor recibido, y sabrá cuál es la clave k que ha elegi-
do A. El resto de la comunicación irá cifrada con un algoritmo simétrico
(mucho más rápido), y utilizará esta clave k. Los atacantes, al no conocer
la clave privada de B, no podrán deducir el valor de k.

• La autenticación basada en clave pública se puede utilizar si el algoritmo


permite utilizar las claves a la inversa: la clave privada para cifrar y la clave
© FUOC • PID_00228248 18 Seguridad y privacidad en las smart cities

pública para descifrar. Si A envía un mensaje cifrado con su clave privada,


todo el mundo podrá descifrarlo con la clave pública de A, y al mismo
tiempo todo el mundo sabrá que el mensaje solo lo puede haber generado
quien conozca la clave privada asociada (que debería ser A). Esta es la base
de las firmas�digitales.

Ejemplos�de�algoritmos�de�clave�pública

Veamos algunos ejemplos de algoritmos de clave pública:

• Intercambio� de� claves� Diffie-Hellman. Es un mecanismo que permite


que dos partes se pongan de acuerdo de forma segura sobre una clave se-
creta. El algoritmo se basa en la dificultad de calcular logaritmos discretos.
Estos mecanismos fueron propuestos por Whitfield Diffie y Martin Hell-
man en el año 1976. Dos participantes eligen sus claves privadas a y b y
hacen públicos los valores y en aritmética módulo n. Los dos pueden
calcular exponenciando a su clave privada la clave pública del otro, y
pueden utilizar este valor como clave secreta entre ellos. Dada la dificul-
tad de calcular logaritmos discretos, nadie más puede deducir cuál es este
valor.

• RSA. Es el algoritmo más utilizado en la historia de la criptografía de clave


pública. Su nombre procede de las iniciales de quienes lo diseñaron en
1977: Ronald Rivest, Adi Shamir y Leonard Adleman.

• ElGamal. Otro esquema de cifrado, en este caso, basado en el problema


de Diffie-Hellman.

• DSA�(Digital�Signature�Algorithm). Publicado por el NIST en distintas


versiones del Digital Signature Standard (DSS), la primera de ellas en 1991,
es una variante del algoritmo de firma ElGamal, que a su vez sigue el es-
quema de cifrado de ElGamal. El DSA no es un algoritmo de cifrado, sino
que solo permite generar firmas y verificarlas.

• Curvas�elípticas. Mientras que los algoritmos anteriores trabajan básica-


mente con productos de números muy grandes en aritmética modular, es-
ta nueva rama de la criptografía de clave pública utiliza operaciones defi-
nidas sobre puntos de curvas elípticas en un espacio de coordenadas en-
teras bidimensionales. La ventaja de esta técnica es que proporciona una
seguridad equivalente a la de los otros algoritmos con muchos menos bits
de clave, y con un tiempo de cálculo también mucho menor.
© FUOC • PID_00228248 19 Seguridad y privacidad en las smart cities

Uso de la criptografía de clave pública

Hemos visto antes que las principales aplicaciones de la criptografía de clave


pública son el intercambio de claves para proporcionar confidencialidad y la
firma digital para proporcionar autenticidad y no repudio.

1) El problema de la confidencialidad entre dos partes que solo disponen de Sobre digital
un canal inseguro para comunicarse se resuelve con la criptografía de clave
Como veremos más adelante,
pública. Cuando A quiere mandar un mensaje secreto M a B, no hace falta esta técnica para proporcionar
cifrar todo el mensaje con un algoritmo de clave pública (esto podría resultar confidencialidad con cripto-
grafía de clave pública se suele
muy lento), sino que se elige una clave simétrica , en ocasiones llamada llamar sobre digital en el con-
texto del correo electrónico se-
clave�de�sesión o clave�de�transporte, y se cifra el mensaje con un algoritmo guro.
simétrico usando esta clave. Lo único que hace falta cifrar con la clave pública
de B ( ) es la clave de sesión. En recepción, B utiliza su clave privada ( )
para recuperar la clave de sesión , y entonces ya puede descifrar el mensaje
cifrado (figura 7).

Figura 7

2) Una firma�digital es básicamente un mensaje cifrado con la clave privada


del firmante. Pero por cuestiones de eficiencia, lo que se cifra no es directa-
mente el mensaje que hay que firmar, sino solamente su resumen calculado
con una función hash segura.

Cuando A quiera mandar un mensaje firmado, tendrá que obtener su resumen


y cifrarlo con la clave privada . Para verificar la firma, el receptor debe
descifrarla con la clave pública y comparar el resultado con el resumen
del mensaje: si son iguales, quiere decir que el mensaje lo ha generado A y
nadie lo ha modificado. Dado que se supone que la función de resumen es
resistente a colisiones, un atacante no podrá modificar el mensaje sin que la
firma deje de ser válida (figura 8).

Figura 8

1.1.3. Infraestructura de clave pública (PKI)

Como hemos visto hasta ahora, la criptografía de clave pública permite resol-
ver el problema del intercambio de claves utilizando las claves públicas de los
participantes. Pero se plantea otro problema: si alguien afirma ser A y su clave
© FUOC • PID_00228248 20 Seguridad y privacidad en las smart cities

pública es , ¿cómo podemos saber que realmente es la clave pública de


A? Porque es perfectamente posible que un atacante Z genere su par de claves
( , ) y afirme “yo soy A, y mi clave pública es ”.

Una posible solución a este problema es que exista una entidad de confianza PKI
que nos asegure que, efectivamente, las claves públicas pertenecen a sus su-
La sigla PKI corresponde al
puestos propietarios. Esta entidad puede firmar un documento que afirme “la nombre en inglés de la infraes-
clave pública de A es ”, y publicarlo para que todos los usuarios lo sepan. tructura de clave pública (pu-
blic key infrastructure).
Este tipo de documento se llama certificado�de�clave�pública o certificado
digital, y es la base de lo que se conoce como infraestructura�de�clave�pú-
blica.

Certificados de clave pública

Un certificado de clave pública o certificado digital consta de tres partes


básicas:

• Una identificación de usuario, como, por ejemplo, su nombre.


• El valor de la clave pública de este usuario.
• La firma de las dos partes anteriores.

Si el autor de la firma es alguien en quien confiamos, el certificado nos sirve CA


como garantía de que la clave pública pertenece al usuario que figura identi-
CA es la sigla inglesa de certifi-
ficado en el certificado. Quien firma el certificado puede ser una autoridad cation authority.
que se responsabilice de verificar fehacientemente la autenticidad de las cla-
ves públicas. En este caso, se dice que el certificado ha sido generado por una
autoridad�de�certificación (CA).

Puede haber distintos formatos de certificados, pero el más usado es el de los El directorio X.500
certificados�X.509, especificado en la definición del servicio�de�directorio
La especificación del directorio
X.500. X.500 está publicada en la Se-
rie de Recomendaciones ITU-T
X.500, una de las cuales es la
Cadenas de certificados y jerarquías de certificación Recomendación X.509.

Un certificado nos soluciona el problema de la autenticidad de la clave públi-


ca si está firmado por una CA en la cual confiamos, pero ¿qué sucede si nos
comunicamos con un usuario que tiene un certificado emitido por una CA
que no conocemos?

Existe la posibilidad de que una CA tenga un certificado que garantice la au-


tenticidad de su clave pública, firmado por otra CA. Esta otra CA puede que
sí que la conozcamos, o puede que a su vez tenga un certificado firmado por
una tercera CA, y así sucesivamente. De esta manera, se puede establecer una
© FUOC • PID_00228248 21 Seguridad y privacidad en las smart cities

jerarquía de autoridades de certificación, donde las CA de nivel más bajo emi-


ten los certificados de usuario, y las CA de cada nivel son certificadas por una
de nivel superior.

En un mundo ideal, podría haber una CA raíz que estuviera en la parte superior
de la jerarquía y tuviera la máxima autoridad. En la práctica, esta CA raíz global
no existe, y seguramente no existirá nunca (sería difícil que fuera aceptada por
todo el mundo). En lugar de haber un solo árbol que incluya a todas las CA
del mundo, lo que existe en la realidad son árboles independientes (algunos,
posiblemente con una sola CA), cada uno con su CA raíz.

Para que podamos verificar la autenticidad de su clave pública, un usuario nos


puede enviar su certificado, más el certificado de la CA que lo ha emitido, más
el de la CA que ha emitido este otro certificado, etc., hasta llegar al certificado
de una CA raíz. Esto es lo que se denomina una cadena�de�certificados. Los
certificados de las CA raíz tienen la propiedad de ser autofirmados, es decir,
están firmados por ellas mismas.

1.2. Sistemas de autenticación

Uno de los servicios de seguridad que se requiere en muchas aplicaciones es el


de la autenticación. Este servicio permite garantizar que nadie ha falsificado
la comunicación.

Podemos distinguir dos tipos de autenticación:

• La autenticación�de�mensaje o autenticación�de�origen�de�datos,
que permite confirmar que el originador A de un mensaje es autén-
tico, es decir, que el mensaje no ha sido generado por un tercero Z
que quiere hacer creer que lo ha generado A. Como efecto adicional,
la autenticación de mensaje proporciona implícitamente el servicio
de integridad�de�datos, que permite confirmar que nadie ha modi-
ficado un mensaje enviado por A.

• La autenticación�de�entidad, que permite confirmar la identidad


de un participante A en una comunicación, es decir, que no se trata
de un tercero Z que dice ser A.

A continuación veremos cómo se pueden conseguir cada uno de estos dos


tipos de autenticación.

1.2.1. Autenticación de mensaje

Existen dos grupos de técnicas para proporcionar autenticación de mensaje:


© FUOC • PID_00228248 22 Seguridad y privacidad en las smart cities

• Los códigos�de�autenticación�de�mensaje o MAC, basados en claves si- MAC


métricas.
MAC es la sigla de message
• Las firmas�digitales, que se basan en la criptografía de clave pública. authentication code.

Códigos de autenticación de mensaje (MAC)

Un código�de�autenticación�de�mensaje o MAC se obtiene con un al-


goritmo a que tiene dos entradas: un mensaje M de longitud arbitraria
y una clave secreta k compartida por el originador y el destinatario del
mensaje. Como resultado da un código de longitud fija.
El algoritmo MAC debe garantizar que sea computacionalmente invia-
ble encontrar un mensaje que dé el mismo código que M, y tam-
bién obtener el código de un mensaje cualquiera sin conocer la clave.

Las propiedades de los algoritmos MAC hacen que dado un par un


atacante no pueda obtener otro par , ni en general cualquier par
. Por tanto, el código MAC sirve como prueba de autenticidad del
mensaje.

Normalmente, los algoritmos MAC usados en la actualidad suelen estar basa- Código HMAC
dos en una función hash. Por ejemplo, la técnica de calcular el resumen a par-
Para calcular el código HMAC,
tir de la concatenación del mensaje y la clave, o la de calcular el resumen del al mensaje se le añade como
mensaje y cifrarlo con la clave, podrían servir como algoritmos MAC. Para me- prefijo una cadena de bits deri-
vada de la clave, se calcula su
jorar la seguridad contra ciertos ataques, muchos protocolos usan una técnica hash, al resultado se le prefija
otra cadena de bits derivada
de autenticación de mensajes un poco más sofisticada, conocida como HMAC. de la clave, y se vuelve a cal-
cular el hash (aunque se ten-
ga que llamar dos veces la fun-
Firmas digitales ción hash, la segunda será mu-
cho más rápida puesto que los
datos que resumir serán más
Los códigos MAC, dado que se basan en una clave secreta, solo tienen signi- cortos).

ficado para quienes conozcan dicha clave. Si A envía mensajes a B autentica-


dos con una clave compartida, solo B podrá verificar la autenticidad de estos
mensajes.

Por otro lado, en caso de un conflicto en el que A denegase la autoría de un


mensaje autenticado, B no podría demostrar delante de un tercero imparcial
(por ejemplo, un árbitro o un juez) que el mensaje lo generó A. Revelar la clave
secreta no sería prueba suficiente ya que, por el hecho de ser conocida por las
dos partes, siempre existiría la posibilidad de que el mensaje en disputa y su
código de autenticación los hubiera generado B.

En cambio, si A autentica los mensajes adjuntándoles la firma digital calculada


con su clave privada, todo el mundo podrá verificarlos con su clave pública.
Esta técnica de autenticación proporciona, como efecto adicional, el servicio
de no�repudio. Esto quiere decir que un destinatario B puede demostrar feha-
cientemente ante un tercero que un mensaje ha sido generado por A.
© FUOC • PID_00228248 23 Seguridad y privacidad en las smart cities

Como hemos visto en el subapartado 1.2, los algoritmos de firma digital usa-
dos normalmente se basan en el cálculo de un hash y en un cifrado mediante
una clave privada. Son ejemplos de algoritmos de firma el RSA, el ElGamal y
el estándar DSA (digital signature algorithm).

1.2.2. Autenticación de entidad

La autenticación de entidad se utiliza cuando en una comunicación una de las


partes quiere asegurarse de la identidad de la otra. Normalmente, esta auten-
ticación es un requisito para permitir el acceso a un recurso restringido, como,
por ejemplo, una cuenta de usuario en un ordenador, dinero en efectivo en
un cajero automático, acceso físico a una habitación, etc.

En general, las técnicas utilizadas para la identificación de un usuario A pueden


estar basadas en:

• Algo que A sabe, como por ejemplo una contraseña o una clave privada.
• Algo que A tiene, como por ejemplo una tarjeta con banda magnética o
con chip.
• Algo que A es o, dicho de otro modo, alguna propiedad inherente a A,
como por ejemplo sus características biométricas.

La biometría es una disciplina relativamente moderna que es posible que ten- Técnicas biométricas
ga una cierta implantación en un futuro próximo. Aun así, en este módulo
Las técnicas biométricas hacen
nos centraremos en las técnicas basadas en el intercambio de información por uso de características fisiológi-
medios electrónicos. cas humanas (como la huella
dactilar, el iris, la retina, la cara
o la mano) o características del
comportamiento humano (co-
Una diferencia entre la autenticación de mensaje y la autenticación de enti- mo el habla, la firma manual o
la pulsación de teclas).
dad es que la primera puede ser intemporal (es posible verificar la autentici-
dad de un documento firmado, por ejemplo, diez años atrás), mientras que
la segunda normalmente se realiza en tiempo real. Esto quiere decir que para
la autenticación de entidad se puede llevar a cabo un protocolo interactivo,
en el que ambas partes se intercambien mensajes hasta que la identidad en
cuestión quede confirmada.

A continuación veremos dos grupos de técnicas que se pueden utilizar para la


autenticación de entidad:

• Las basadas en contraseñas (o passwords, en inglés), también llamadas téc-


nicas de autenticación débil.

• Las basadas en protocolos�de�reto-respuesta (challenge-response, en inglés),


también llamadas técnicas de autenticación fuerte.
© FUOC • PID_00228248 24 Seguridad y privacidad en las smart cities

Contraseñas

La idea básica de la autenticación basada en contraseñas es que el usuario A


manda su identidad (su identificador de usuario, su nombre de login, etc.) se-
guida de una contraseña secreta (una palabra o combinación de caracteres
que el usuario pueda memorizar). El verificador B comprueba que la contrase-
ña sea válida, y si lo es da por buena la identidad de A.

Protocolos de reto-respuesta

El problema que tienen los esquemas de autenticación basados en contrase-


ñas es que cada vez que se quiere realizar la autenticación se tiene que enviar
el mismo valor al verificador. Cualquier atacante que consiga interceptar es-
te valor fijo podrá suplantar la identidad del usuario a quien corresponda la
contraseña.

Hay otro grupo de mecanismos donde el valor que se envía para la autenti-
cación no es fijo, sino que depende de otro, generado por el verificador. Este
último valor se llama reto, y se debe enviar al usuario A como primer paso
para su autenticación. Entonces A, haciendo uso de una clave secreta, calcula
una respuesta a partir de este reto, y la envía al verificador B. Por este moti-
vo, estos mecanismos de autenticación reciben el nombre de protocolos�de
reto-respuesta.

El algoritmo para calcular la respuesta debe garantizar que no se pueda obtener


sin saber la clave secreta. Esto permite al verificador confirmar que la respuesta
solo ha podido enviarla A. Si se utiliza un reto distinto cada vez, un atacan-
te no podrá sacar provecho de la información que descubra interceptando la
comunicación.

Dependiendo del protocolo, el verificador puede generar los retos de varias


maneras:

• Secuencialmente: en este caso el reto es simplemente un número que se


va incrementando cada vez (lo más normal es incrementarlo de uno en
uno), y que por tanto no se repetiré nunca.

• Aleatoriamente: el reto puede ser generado con un algoritmo pseudoalea-


torio, pero la propiedad que tiene en este caso es que no es predecible para
los atacantes.

• Cronológicamente: el reto se obtiene a partir de la fecha y hora actuales


(con la precisión que sea adecuada para el protocolo). Este tipo de reto
también se llama marca�de�hora o timestamp. El receptor, es decir, quien
quiere validar la identidad, puede utilizar la marca de hora para saber si se
trata de una nueva autenticación o si alguien quiere reutilizar los mensa-
jes de otra autenticación para intentar un ataque de repetición. La ventaja
© FUOC • PID_00228248 25 Seguridad y privacidad en las smart cities

de los retos cronológicos es que, para obtenerlos, solo es necesario un re-


loj, que seguramente estará disponible en cualquier sistema, mientras que
con los secuenciales y los aleatorios es preciso mantener información de
estado (el número de secuencia o la entrada para calcular el siguiente nú-
mero pseudoaleatorio) para evitar repeticiones. El inconveniente es que se
precisa una cierta sincronía entre los relojes. Si se utilizan técnicas como
un servidor de tiempo que da la hora actual, también es preciso verificar
que la hora obtenida sea auténtica, es decir, que un atacante no nos está
engañando haciéndonos creer que es la hora que le interesa.

Los protocolos de reto-respuesta se pueden clasificar en dos grupos:

• Los basados en técnicas simétricas, en las cuales la clave secreta es com-


partida por el usuario A y el verificador B.

• Los basados en técnicas de clave pública, en las cuales A utiliza una clave
privada para calcular la respuesta.

1.3. Protección a nivel de enlace, red y transporte

En los subapartados anteriores hemos visto los mecanismos básicos de protec-


ción, que proporcionan servicios como la confidencialidad o la autenticación.

En el momento de aplicar estos mecanismos a las redes de computadores, exis-


ten diversas opciones en cuanto al nivel de las comunicaciones donde se in-
troduzcan las funciones de seguridad:

• La protección a nivel�físico consiste en asegurar que los atacantes no pue-


dan interferir en el medio de comunicación o los equipos de transmisión
(cables, repetidores, etc.). Esto incluiría, por ejemplo, impedir que se pue-
da “pinchar” físicamente el cable para capturar o inyectar tráfico, o cerrar
los equipos de conmutación en una sala con acceso físico restringido. En
este módulo no entraremos a considerar este tipo de protección.

• La protección a nivel�de�enlace tiene por objetivo evitar que las tramas


que se envían en los niveles bajos de la comunicación puedan ser intercep-
tadas o modificadas. Dentro de esta categoría toman especial relevancia
los mecanismos para proteger el tráfico de las redes inalámbricas, puesto
que el medio de transmisión utilizado en este caso, es decir, el aire, no se
puede “proteger” en el nivel físico.

• La protección a nivel�de�red garantiza que los datos que se envíen a los


protocolos de nivel superior, como TCP o UDP, se transmitirán protegidos.
El inconveniente es que puede ser necesario adaptar la infraestructura de
la red, y en particular los encaminadores (routers), para que entiendan las
© FUOC • PID_00228248 26 Seguridad y privacidad en las smart cities

extensiones que es preciso añadir al protocolo de red (IP) para proporcio-


nar esta seguridad.

• La protección a nivel�de�transporte, por su parte, tiene la ventaja de que


solo se precisa adaptar las implementaciones de los protocolos (TCP, UDP,
etc.) que haya en los nodos extremos de la comunicación, que normal-
mente están incorporadas al sistema operativo o en bibliotecas especiali-
zadas. En este caso, pues, solo sería necesario un cambio en el software.

• La protección a nivel�de�aplicación puede responder mejor a las necesi-


dades de ciertos protocolos. Un ejemplo concreto es el del correo electró-
nico, en el que interesa proteger los datos de aplicación, es decir, los men-
sajes de correo, más que los paquetes a nivel de transporte o de red. Esto
es así porque un mensaje es vulnerable a ataques de acceso ilegítimo o de
falsificación no solo cuando se está transmitiendo por la red, sino también
cuando está almacenado en el buzón del destinatario.

En primer lugar, veremos protección de las tramas que se envían en las redes
de comunicación inalámbrica. El problema que resolver es específico de este
tipo de redes puesto que, a diferencia de las redes con hilo, el acceso al medio
de transmisión es libre, en el sentido de que no hay que hacer nada especial
para conectarse físicamente. Por ejemplo, cualquier usuario que tenga un dis-
positivo Wi-Fi en modo monitor puede ver las tramas que se transmiten en su
entorno, sin más limitación que la distancia a la estación emisora.

1.3.1. Conceptos básicos de las redes Wi-Fi

El estándar más utilizado actualmente para las comunicaciones en redes loca-


les inalámbricas (WLAN) es el llamado IEEE 802.11, más conocido como Wi-
Fi. La primera versión de la especificación, que data de 1997, permitía comu-
nicaciones de hasta 2 Mbit/s. Desde entonces, se han ido añadiendo extensio-
nes que contemplan velocidades máximas de transmisión cada vez más altas:
11 Mbit/s (802.11b), 54 Mbit/s (802.11a y 802.11g) y 600 Mbit/s (802.11n).

Uno de los criterios de diseño iniciales de este estándar era facilitar la


interoperabilidad, lo que no siempre ha sido del todo compatible con
la seguridad. Las primeras versiones basaban la protección de las comu-
nicaciones en el protocolo WEP, que pronto se demostró que era dema-
siado débil. En el año 2004 se publicó la norma IEEE 802.11i con el ob-
jetivo de corregir las deficiencias del sistema de seguridad WEP.

IEEE 802.11 permite la comunicación entre dispositivos, denominados esta- WLAN


ciones, que tengan una interfaz de red inalámbrica. Cada interfaz tiene una
WLAN es la sigla de wireless lo-
dirección MAC de 48 bits, con el mismo formato que las direcciones Ethernet. cal area network.
Dos o más estaciones que por su proximidad pueden comunicarse entre sí for-
© FUOC • PID_00228248 27 Seguridad y privacidad en las smart cities

man un basic service set (BSS). Se distinguen dos tipos de BSS: los independien-
tes y los infraestructurales. Un BSS�independiente, también conocido como
red ad hoc, es una red aislada donde las únicas comunicaciones posibles son
las directas de una estación a otra. En un�BSS�infraestructural, en cambio,
hay una estación específica llamada punto�de�acceso (AP) que permite la in-
terconexión con otras redes, con o sin hilo. Un extended service set (ESS) es un
conjunto de uno o más BSS infraestructurales interconectados por medio de
sus AP. Desde el punto de vista de las estaciones, la ESS funciona como si fuera
un único BSS.

Figura 9. Componentes de las redes Wi-Fi

Configuraciones Wi-Fi

La configuración típica de las redes Wi-Fi domésticas es la de un router que, por un lado,
da acceso a internet vía ADSL, y por el otro actúa como AP permitiendo la conexión desde
las estaciones que se encuentren en su radio de alcance. En esta configuración hay un ESS
formado por un único BSS. En una red Wi-Fi corporativa, en cambio, es habitual tener
varios AP en diferentes partes de un edificio: en este caso, todos los BSS normalmente
pertenecen a un mismo ESS.

Los BSS se identifican con su BSSID, que en los infraestructurales es la dirección


MAC de su AP. Los ESS tienen un identificador de formato libre de hasta 32
bytes. Se utiliza el término genérico service set identifier (SSID) para referirse al
identificador de un BSS independiente o de un ESS.

Las estaciones pueden entrar y salir de un BSS de forma dinámica. En un BSS


infraestructural, el AP anuncia su presencia enviando periódicamente tramas
baliza, típicamente cada 100 ms. Los diferentes campos de una baliza indican
la SSID de la red, las velocidades de transmisión que permite, etc.

Una estación pasa a ser miembro de un BSS infraestructural cuando establece


una asociación con el AP correspondiente. En cada momento una estación
solo puede estar asociada a un AP. Una vez establecida la asociación, la estación
© FUOC • PID_00228248 28 Seguridad y privacidad en las smart cities

normalmente envía y recibe todas sus tramas a través de este AP. Sin embargo,
para poder hacer la asociación y entrar en el BSS, es necesario que previamente
la estación haya realizado una autenticación ante el AP.

Las tramas que pueden enviar y recibir las estaciones Wi-Fi pertenecen a uno
de estos tres tipos: tramas de gestión, tramas de datos y tramas de control. Las
tramas de gestión incluyen, entre otras, las balizas, las tramas de autenticación
y desautenticación, y las de asociación y disociación.

Figura 10. Formato de las tramas de datos

Las tramas de datos que se transmiten en un BSS infraestructural constan de


las partes siguientes:

• La cabecera MAC, de 24 bytes, con la estructura que se describe a conti-


nuación.

• Los datos que se envían en la trama, con una longitud de hasta 2.304 bytes,
o 2.312 si los datos incluyen encapsulamiento WEP.

• Un código de comprobación de errores, que es un código CRC de 32 bits


calculado sobre la cabecera y los datos.

La cabecera MAC de estas tramas está formada por los campos siguientes (fi-
gura 11):

• Control de trama: incluye varios subcampos, como, por ejemplo, la ver-


sión del protocolo, el tipo y subtipo de trama, un flag para indicar si es el
último fragmento de una trama fragmentada, etc.

• Duración/ID: en una trama de datos este campo se utiliza para indicar el


tiempo en que se ha de transmitir una trama de control ACK.

• Dirección de la estación receptora: indica la estación a la cual se envía


directamente la trama.

• Dirección de la estación transmisora: indica la estación que ha enviado


esta trama.

• Dirección de la estación origen/destino. Si es una trama enviada desde


una estación al AP, este campo indica el destino final, que puede ser el
propio AP (y entonces esta tercera dirección coincide con la primera) u
otra estación a la que el AP retransmitirá la trama. Por el contrario, si es
una trama enviada por el AP a una estación, este campo indica el origen
© FUOC • PID_00228248 29 Seguridad y privacidad en las smart cities

de la trama, que puede ser el mismo AP (y la tercera dirección coincidirá


con la segunda) u otra estación que ha enviado la trama a través del AP.

• Control de secuencia: incluye un número de secuencia de la trama y un


número de fragmento.

Figura 11. Campos de la cabecera MAC de una trama de datos

1.3.2. Métodos de autenticación de las estaciones Wi-Fi

Las primeras versiones del estándar Wi-Fi anteriores al IEEE 802.11i, siguiendo
el criterio de simplicidad y de facilitar al máximo la interoperabilidad, preveían
dos tipos de autenticación de las estaciones Wi-Fi ante el AP.

1) Autenticación de sistema abierto. Esta autenticación, si el AP está configu-


rado para permitirla, es muy simple: cada estación que solicita la autenticación
recibe automáticamente la confirmación. Por eso también se conoce como al-
goritmo de autenticación nulo.

La ventaja de esta autenticación es que no hace falta que las estaciones hagan
nada especial para completarla. Así se logra el objetivo de facilitar la conexión
de las estaciones que se incorporen a la red.

2) Autenticación de clave compartida. Este método de autenticación se utiliza


junto con el sistema de cifrado WEP. En este caso, el AP hace uso de una clave
WEP que tiene preconfigurada y que solo habrían de conocer las estaciones
que se tuvieran que autenticar. Cuando una estación solicita la autenticación,
el AP le manda un mensaje con 128 bytes aleatorios, y la estación tiene que
responder con una trama que contenga este mismo mensaje, cifrada con la
clave WEP.

Se trata, pues, de un protocolo de reto-respuesta con clave simétrica. El pro-


blema que tiene es que está basado en el cifrado WEP, y descubrir una clave
WEP no es excesivamente complicado para un atacante que pueda capturar
una cantidad suficiente de tramas cifradas.

Pero además este protocolo de autenticación tiene otro problema, y es que la


respuesta cifrada no incluye ningún identificador de la estación que se quiere
autenticar. Esto permite a un atacante que capture un solo intercambio de
mensajes utilizar los datos capturados para autenticarse con éxito ante el AP.

A partir de la publicación del estándar IEEE 802.11i, el uso de la autenticación


de clave compartida está desaconsejado, y solo se contempla en situaciones
en las que se quiera mantener la compatibilidad con sistemas anteriores. Para
© FUOC • PID_00228248 30 Seguridad y privacidad en las smart cities

realizar una autenticación más segura, IEEE 802.11i introduce el concepto de


robust security network association (RSNA), basado en el extensible authentication
protocol (EAP) de acuerdo con el estándar IEEE 802.1X.

1.3.3. Protección de tramas con WEP

La primera versión del estándar IEEE 802.11 definía un mecanismo de


seguridad para proteger las tramas enviadas vía radio: se trata del proto-
colo wired equivalent privacy (WEP). Como su nombre indica, este proto-
colo tiene por objetivo principal conseguir una privacidad de los datos
transmitidos, ante los simples curiosos que se encuentren por los alre-
dedores, que sea parecida a la de las redes con hilo. Del mismo modo
que en un lugar donde hay una red con hilo los curiosos no pueden ver
nada de la comunicación a menos que dispongan de algún medio para
interceptar el cable, en una red inalámbrica con WEP tampoco pueden
ver los datos que se transmiten. El método para lograr esta privacidad
es cifrar los datos. Además del servicio de privacidad, WEP proporciona
también el servicio de integridad a través de un código de integridad
de los datos.

El AP puede tener configuradas hasta cuatro claves secretas WEP. Esto permite,
por ejemplo, utilizar claves distintas con grupos de estaciones diferentes, o ir
cambiando periódicamente la clave, pero casi siempre únicamente se emplea
una sola clave WEP.

Cada trama WEP se cifra con una clave de cifrado independiente. Así se difi-
culta, entre otras cosas, que un atacante pueda detectar datos repetidos. La
clave de cifrado utilizada en una trama concreta se obtiene a partir de la clave
WEP en uso más un vector de inicialización diferente para cada trama. El valor
de este vector de inicialización se tiene que incluir en la propia trama para que
el receptor sepa cómo descifrarla.

El algoritmo criptográfico utilizado para cifrar las tramas WEP es una cifra de
flujo, concretamente el RC4 (Ron’s Code 4), diseñado por Ronald Rivest. Fue
elegido por su simplicidad y por el nivel de seguridad que proporciona en
relación con la poca complejidad de los cálculos que requiere.

Este criterio era especialmente importante teniendo en cuenta que la mayo-


ría de los dispositivos Wi-Fi pueden ser dispositivos móviles, en los que un
bajo consumo de energía desempeña un papel relevante. Si se hubiera elegido
un algoritmo más sofisticado, que comportara más potencia de cálculo para
cifrar y descifrar los mismos datos, y por lo tanto consumiera más energía, la
autonomía de las baterías de los dispositivos móviles se podría ver reducida
sensiblemente.
© FUOC • PID_00228248 31 Seguridad y privacidad en las smart cities

Como ya hemos indicado antes, el problema del protocolo WEP es que tiene
una serie de vulnerabilidades, algunas de las cuales son independientes de la
elección del RC4 como algoritmo de cifrado, y otras que están directamente
relacionadas con la manera como se usa este algoritmo. A continuación se
mencionan algunos ejemplos de ataques:

• Un atacante que capture una trama WEP correspondiente a una asociación


determinada puede retransmitir tantas veces como desee. Si la asociación
sigue existiendo, el receptor dará la trama por válida, y si la asociación ya
no existe, el atacante puede cambiar las direcciones de la estación trans-
misora y/o receptora por las de otras estaciones que sí estén asociadas, y
el nuevo receptor también dará la trama para válida.

• Si un atacante captura las tramas intercambiadas durante una autentica-


ción de clave compartida entre una estación y un AP, puede autenticarse
con éxito ante el mismo AP sin necesidad de conocer la clave WEP corres-
pondiente.

• Con el ataque PTW, un atacante que conozca los bytes de keystream del
tercero al decimoquinto ( ) de aproximadamente 35.000 tramas
WEP, encriptados con la misma clave raíz, puede recuperar el valor de la
clave con una probabilidad de éxito del 50%.

Cuando se vio que el diseño inicial de la seguridad en el estándar IEEE 802.11


tenía deficiencias importantes, se propusieron varias soluciones para intentar
corregir estos problemas. La asociación de fabricantes Wi-Fi Alliance desarro-
lló la solución llamada WPA, con la intención de que se pudiera utilizar con
el mismo hardware de las tarjetas Wi-Fi existentes, o introduciendo solo unas
cuantas modificaciones en el firmware. Esta solución estaba basada en los bo-
rradores que iba publicando el grupo de trabajo IEEE 802.11i. Cuando se apro-
bó la versión oficial en 2004, el estándar IEEE 802.11i fue incorporado a las
especificaciones de la Wi-Fi Alliance con el nombre de WPA2.

1.3.4. WPA

El estándar WPA introduce cambios fundamentales tanto en el método de au-


tenticación de las estaciones como en el algoritmo de cifrado de las tramas.

RSNA
A diferencia del protocolo WEP, en el que normalmente hay una sola
clave secreta compartida por el AP y las estaciones, WPA prevé el uso de RSNA es la sigla de robust secu-
rity network association.
claves diferentes en cada asociación�segura, es decir, en cada RSNA, y
define los mecanismos para establecer estas claves dinámicamente.
© FUOC • PID_00228248 32 Seguridad y privacidad en las smart cities

El uso de una clave única compartida entre el AP y las estaciones, como prevé
el protocolo WEP, puede ser apropiada para una red inalámbrica doméstica,
pero es más problemática en una red corporativa media o grande. Cuando hay
decenas o centenares de estaciones con la misma clave, si un atacante accede a
la clave en una de las estaciones, automáticamente las comunicaciones de to-
das las otras quedan comprometidas. Además, cambiar la clave puede requerir
actualizaciones manuales en cada una de las estaciones, lo que puede resultar
poco práctico.

Por ello, WPA prevé el uso del método de control de acceso a la red definido
en otro estándar de la serie IEEE 802, concretamente el IEEE� 802.1X. Este
estándar facilita el intercambio seguro de claves de sesión entre dos nodos de
la red, previa autenticación mutua entre ellos. Que la autenticación sea mutua
en WPA implica que la estación se autentica ante el AP, pero el AP también
se autentica ante la estación, para que esta se pueda asegurar de que no está
hablando con un AP falsificado.

El estándar IEEE 802.1X, a su vez, se basa en el protocolo EAP, que permite EAP
llevar a cabo una autenticación trabajando al nivel de enlace, es decir, sin
EAP es la sigla de extensible
necesidad de tener asignada todavía una dirección de red (IP). EAP prevé el authentication protocol. Este
uso de varios métodos de autenticación, y, como su nombre indica, se pueden protocolo está definido en la
especificación RFC 3748.
añadir otros definidos en otras especificaciones. Así, por medio del EAP se
puede realizar una autenticación basada, por ejemplo, en nombres de usuario
y contraseñas, en claves públicas y certificados X.509, en dispositivos físicos
como tarjetas con chip, etc.

Lo que hace IEEE 802.1X es definir un formato de tramas denominado EAPOL EAPOL
para enviar los mensajes del protocolo EAP por una red local. Por otro lado, en
EAPOL es la sigla de EAP over
la terminología IEEE 802.1X el extremo de la comunicación EAP que solicita LAN.
la autenticación se denomina suplicante, y el otro extremo, el que la concede,
se denomina autenticador. El autenticador puede conceder la autenticación
por sí mismo o puede comunicarse con un servidor� de� autenticación que
toma la decisión final. Típicamente el servidor utilizará un protocolo, como
por ejemplo RADIUS o Diameter, para llevar a cabo la autenticación.

WPA también continúa permitiendo el uso de una clave compartida o PSK, por PSK
simplicidad en el caso de redes pequeñas como suelen ser las redes domésticas.
PSK es la sigla de pre-shared
Pero en este caso la clave de cifrado no es directamente la clave compartida key.
más un IV, como en el protocolo WEP, sino que la clave compartida se utiliza
para derivar las correspondientes claves de sesión para cada asociación.

En cualquier caso, cada pareja estación-AP utiliza sus propias claves para pro-
teger sus comunicaciones. Así se consigue que una estación no pueda espiar
las tramas enviadas entre el AP y otra estación del mismo BSS.
© FUOC • PID_00228248 33 Seguridad y privacidad en las smart cities

Este esquema, no obstante, tiene un inconveniente: mientras que con una


clave compartida es fácil enviar una trama cifrada simultáneamente a más de
un nodo, como en el caso del tráfico de difusión (broadcast) o de difusión
selectiva (multicast), con claves independientes sería necesario enviar tantas
tramas como destinatarios, cada una cifrada con la clave correspondiente. Para
evitar esta ineficiencia, en WPA se trabaja con dos tipos de claves:

• Las claves�entre�parejas, que son las que se utilizan para las tramas entre
cada par de nodos, es decir entre el AP y cada estación.

• Las claves�de�grupo, que son conocidas por todos los miembros del BSS
y se utilizan para las tramas de difusión (broadcast) o de difusión selectiva
(multicast). Se puede generar una nueva clave de grupo cada vez que una
estación abandona el BSS y se disocia del AP para evitar que pueda conti-
nuar descifrando el tráfico del grupo.

1.3.5. WPA2

La especificación WPA2 incorpora toda la funcionalidad del estándar IEEE


802.11i. Los cambios que introduce respecto a WPA son de dos tipos:

• Por un lado, define mecanismos como la preautenticación y el almacena- CCMP


miento de claves maestras (PMK caching), que hacen más rápida y eficiente
CCMP es la sigla de CTR with
la reautenticación de una estación móvil cuando sale de un BSS y entra en CBC-MAC protocol.
un BSS adyacente del mismo ESS (roaming).

• Por otro lado, introduce un nuevo algoritmo de cifrado, denominado


CCMP, que no está basado en el RC4 sino en la cifra AES-128. Este método
de cifrado es mucho más seguro, puesto que actualmente no se conocen
vulnerabilidades significativas, y a pesar de que no es tan sencillo de im-
plementar como el RC4, es bastante más eficiente que la mayoría de otras
cifras de bloque existentes.

1.3.6. Protección del nivel de red: IPsec

En el subapartado 1.3 hemos visto la protección básica de las redes de comu-


nicación inalámbrica. En este subapartado y posteriores veremos la protección
de protocolos de comunicaciones de niveles más altos, aplicables tanto a redes
cableadas como inalámbricas.
© FUOC • PID_00228248 34 Seguridad y privacidad en las smart cities

En este subapartado veremos la arquitectura IPsec, diseñada para proteger el


protocolo de red usado en internet, es decir, el protocolo IP. En el subapartado
siguiente veremos mecanismos para proteger las comunicaciones a nivel de
transporte, y en el módulo de aplicaciones seguras veremos ejemplos de pro-
tección de los protocolos a nivel de aplicación.

La arquitectura IPsec

La arquitectura�IPsec (RFC 2401) añade servicios de seguridad al proto-


colo IP (versión 4 y versión 6), que pueden ser usados por los protocolos
de niveles superiores (TCP, UDP, ICMP, etc.).

IPsec se basa en el uso de una serie de protocolos seguros, de los cuales hay
dos que proporcionan la mayor parte de los servicios:

• El protocolo�AH (Authentication Header, RFC 2402), que ofrece el servicio


de autenticación de origen de los datagramas IP (incluyendo la cabecera
y los datos de los datagramas).

• El protocolo�ESP (Encapsulating Security Payload, RFC 2406), que puede


ofrecer el servicio de confidencialidad, el de autenticación de origen de los
datos de los datagramas IP (sin incluir la cabecera), o los dos a la vez.

Opcionalmente, cada uno de estos dos protocolos también puede proporcio-


nar otro servicio, el de protección contra repetición de datagramas.

Para la autenticación y la confidencialidad es necesario utilizar unas determi- Pasarelas seguras


nadas claves, correspondientes a los algoritmos criptográficos que se apliquen.
Un encaminador IPsec normal-
Una posibilidad es configurar estas claves de forma manual en los nodos IPsec. mente actúa como pasarela,
Sin embargo, normalmente se utilizaran otros protocolos para la distribución pero puede suceder que en al-
guna comunicación actúe co-
de�claves, como pueden ser: mo nodo extremo, como por
ejemplo cuando se le envían
comandos de configuración
con el protocolo de gestión
• ISAKMP (Internet Security Association and Key Management Protocol, SNMP.
RFC 2408).
• IKE (Internet Key Exchange, RFC 2409).
• El protocolo de intercambio de claves OAKLEY (RFC 2412).

Los agentes que intervienen en la arquitectura IPSec son los siguientes:

• Los nodos extremos de la comunicación: el origen y el destino final de los


datagramas.

• Los nodos intermedios que soportan IPsec, llamados pasarelas� seguras,


como por ejemplo los encaminadores o cortafuegos con IPsec.
© FUOC • PID_00228248 35 Seguridad y privacidad en las smart cities

El tráfico IPsec también puede pasar por nodos intermedios que no soporten
IPsec. Estos nodos son transparentes al protocolo porque para ellos los data-
gramas IPsec son como cualquier otro datagrama IP.

La relación que se establece entre dos nodos que se envían datagramas IPsec SA
el uno al otro se llama asociación�de�seguridad (SA). Estos dos nodos pueden
SA es la sigla de security asso-
ser o no los extremos de la comunicación, es decir, el origen de los datagramas ciation.
o su destino final. Por tanto, podemos distinguir dos tipos de SA:

• Las SA extremo a extremo: se establecen entre el nodo que origina los


datagramas y el nodo al cual van destinados.

• Las SA con una pasarela segura: al menos uno de los nodos es una pasarela
segura (también pueden serlo ambos). Por tanto, los datagramas vienen de
otro nodo y/o van hacia otro nodo.

Además, se considera que las SA son unidireccionales, es decir, si A envía da-


tagramas IPsec a B, y B envía datagramas IPsec a A, tenemos dos SA, una en
cada sentido.

Por otro lado, cuando se establece una SA entre dos nodos, se utiliza uno de
los dos protocolos básicos IPsec: o AH o ESP. Si se quieren utilizar ambos a la
vez, se deberán establecer dos SA, una para cada protocolo.

Por tanto, puede suceder que en una comunicación entre dos nodos extremos
intervengan diversas SA, cada una con sus nodos de inicio y de final y con
su protocolo.

Figura 12. Ejemplo de combinación de asociaciones de seguridad

Cada nodo debe guardar información sobre sus SA, como por ejemplo los al- SAD
goritmos criptográficos que utiliza cada una, las claves, etc. En la terminología
SAD es la sigla de security asso-
IPsec, el lugar donde se guarda esta información se denomina base�de�datos ciation database.
de�asociaciones�de�seguridad o SAD. A cada SA le corresponden un número
llamado índice�de�parámetros�de�seguridad o SPI. Todas las SA que un nodo
© FUOC • PID_00228248 36 Seguridad y privacidad en las smart cities

tenga establecidas con otro nodo han de tener SPI diferentes. Por tanto, cada SPI
SA en la que participa un nodo queda identificada por la dirección IP de des-
SPI es la sigla de security para-
tino y su SPI. meters index.

Para cada datagrama que llega a un nodo IPsec, se consulta una base�de�datos SPD
de�políticas�de�seguridad (SPD), donde se especifican criterios para determi-
SPD es la sigla de security policy
nar cuál de las siguientes tres acciones se debe realizar: database.

• Aplicar servicios de seguridad IPsec al datagrama, es decir, procesarlo según


AH y/o ESP.

• Procesarlo como un datagrama IP normal, es decir, de forma transparente


a IPsec.

• Descartar el datagrama.

1.3.7. Protección del nivel de transporte: SSL/TLS/WTLS

Tal y como hemos visto en el subapartado 1.3.6, el uso de un protocolo seguro


a nivel de red puede requerir la adaptación de la infraestructura de comuni-
caciones, por ejemplo cambiar los encaminadores IP por otros que entiendan
IPsec.

Un método alternativo que no necesita modificaciones en los equipos


de interconexión es introducir la seguridad en los protocolos de trans-
porte. La solución más usada actualmente es el uso del protocolo SSL o
de otros basados en SSL.

Este grupo de protocolos comprende:

• El protocolo de transporte Secure Sockets Layer (SSL), desarrollado por


Netscape Communications a principios de los años noventa. La primera
versión de este protocolo ampliamente difundida e implementada fue la
2.0. Poco después Netscape publicó la versión 3.0, con muchos cambios
respecto a la anterior, que hoy ya casi no se utiliza.

• La especificación Transport Layer Security (TLS), elaborada por la IETF (In-


ternet Engineering Task Force). La versión 1.0 del protocolo TLS está pu-
blicada en el documento RFC 2246. Es prácticamente equivalente a SSL
3.0 con algunas pequeñas diferencias, por lo que en ciertos contextos se
considera el TLS 1.0 como si fuera el protocolo SSL 3.1.

• El protocolo Wireless Transport Layer Security (WTLS), perteneciente a la


familia de protocolos WAP (Wireless Application Protocol) para el acceso
© FUOC • PID_00228248 37 Seguridad y privacidad en las smart cities

a la red desde dispositivos móviles. La mayoría de los protocolos WAP son


adaptaciones de los ya existentes a las características de las comunicacio-
nes inalámbricas, y en particular el WTLS está basado en el TLS 1.0. Las
diferencias se centran principalmente en aspectos relativos al uso eficiente
del ancho de banda y de la capacidad de cálculo de los dispositivos, que
puede ser limitada.

1.4. Redes privadas virtuales (VPN)

Los protocolos seguros que hemos visto hasta este punto permiten proteger VPN
las comunicaciones, por ejemplo, de una aplicación implementada como un
VPN es la sigla de virtual priva-
proceso cliente que se ejecuta en un ordenador y un proceso servidor que se te network.
ejecuta en otro ordenador. Si hay otras aplicaciones que también necesiten
una comunicación segura entre estos dos ordenadores, o entre ordenadores
situados en las mismas redes locales, pueden hacer uso de otras instancias de
los protocolos seguros: nuevas asociaciones de seguridad IPsec, nuevas cone-
xiones SSL TLS, etc. Una posibilidad alternativa es establecer una red�privada
virtual o VPN entre estos ordenadores o las redes locales donde están situa-
dos. En este subapartado veremos las características principales de las redes
privadas virtuales.

1.4.1. Definición y tipos de VPN

Una red�privada�virtual (VPN) es una configuración que combina el


uso de dos tipos de tecnologías:

• Las tecnologías de seguridad, que permiten la definición de una red


privada, es decir, un medio de comunicación confidencial que no
puede ser interceptado por usuarios ajenos a la red.

• Las tecnologías de encapsulamiento de protocolos, que permiten


que, en lugar de una conexión física dedicada para la red privada,
se pueda utilizar una infraestructura de red pública, como internet,
para definir por encima de ella una red�virtual.

Por tanto, una VPN es una red lógica o virtual creada sobre una infraestructura
compartida, pero que proporciona los servicios de protección necesarios para
una comunicación segura. Dependiendo de la situación de los nodos que uti-
lizan esta red, podemos considerar tres tipos de VPN:

• VPN� entre� redes� locales� o� intranets. Este es el caso habitual en el que


una empresa dispone de redes locales en diferentes sedes, geográficamente
separadas, en cada una de las cuales hay una red privada o intranet, de
acceso restringido a sus empleados. Si interesa que desde una de sus sedes
© FUOC • PID_00228248 38 Seguridad y privacidad en las smart cities

se pueda acceder a las intranets de otras sedes, se puede usar una VPN para
interconectar estas redes privadas y formar una intranet única.

• VPN�de�acceso�remoto. Cuando un empleado de la empresa quiere acce-


der a la intranet desde un ordenador remoto, puede establecer una VPN
de este tipo entre este ordenador y la intranet de la empresa. El ordenador
remoto puede ser, por ejemplo, un PC que el empleado tiene en su casa,
o un ordenador portátil desde el cual se conecta a la red de la empresa
cuando está de viaje.

• VPN�extranet. A veces, a una empresa le interesa compartir una parte de


los recursos de su intranet con determinados usuarios externos, como por
ejemplo proveedores o clientes de la empresa. La red que permite estos
accesos externos a una intranet se llama extranet, y su protección se con-
sigue mediante una VPN extranet.

1.4.2. Configuraciones y protocolos utilizados en VPN

A cada uno de los tipos de VPN que acabamos de ver le suele corresponder
una configuración específica:

1) En las VPN entre intranets, la situación más habitual es que en cada intra-
net hay una pasarela�VPN, que conecta la red local con internet. Esta pasarela
se comunica con la de las otras intranets, aplicando el cifrado y las proteccio-
nes que sean necesarias a las comunicaciones de pasarela a pasarela a través
de internet. Cuando los paquetes llegan a la intranet de destino, la pasarela
correspondiente los descifra y los reenvía por la red local hasta el ordenador
que los tenga que recibir.

De esta manera se utiliza la infraestructura pública de internet, en lugar de


establecer líneas privadas dedicadas, que supondrían un coste más elevado.
También se aprovecha la fiabilidad y redundancia que proporciona internet,
ya que si una ruta no está disponible siempre se pueden encaminar los paque-
tes por otro camino, mientras que con una línea dedicada la redundancia su-
pondría un coste aún más elevado.

2) En las VPN de acceso remoto, a veces llamadas VPDN, un usuario se puede VPDN
comunicar con una intranet a través de un proveedor de acceso a internet,
VPDN es la sigla de virtual pri-
utilizando tecnología convencional como por ejemplo a través de un módem vate dial network.
ADSL. El ordenador del usuario ha de disponer de software cliente�VPN para
comunicarse con la pasarela VPN de la intranet y llevar a cabo la autenticación
necesaria, el cifrado, etc.
© FUOC • PID_00228248 39 Seguridad y privacidad en las smart cities

De este modo también se aprovecha la infraestructura de los proveedores de


internet para el acceso a la intranet, sin necesidad de llamadas a un módem
de la empresa, que pueden llegar a tener un coste considerable.

3) El caso de las VPN extranet puede ser como el de las VPN entre intranets,
en el que la comunicación segura se establece entre pasarelas VPN, o como
el de las VPN de acceso remoto, en el que un cliente VPN se comunica con
la pasarela de la intranet. La diferencia es que en este caso normalmente el
control de acceso es más restrictivo para permitir solamente el acceso a los
recursos autorizados.

La definición de una red virtual se lleva a cabo mediante el establecimiento


de túneles, que permiten encapsular paquetes de la red virtual, con sus pro-
tocolos, dentro de paquetes de otra red, que normalmente es internet, con su
protocolo, es decir, IP.

Para la comunicación entre las distintas intranets, o entre el ordenador que


accede remotamente y la intranet, se pueden utilizar los protocolos que sean
más convenientes. Los paquetes de estos protocolos, para poderlos hacer llegar
a su destino a través de internet, se pueden encapsular en datagramas IP, que
dentro contendrán los paquetes originales. Cuando lleguen a su destino, se
desencapsulan estos datagramas para recuperar los paquetes con el formato
nativo del protocolo correspondiente.

Figura 13. Uso de túneles en una VPN

Hay protocolos que pueden ser utilizados para establecer los túneles, depen-
diendo del nivel de la comunicación al cual se quiera realizar la protección:

• Túneles�a�nivel�de�red. El protocolo utilizado en la gran mayoría de las


configuraciones VPN es IPsec en modo túnel, generalmente con ESP para
cifrar los datos, y opcionalmente con AH para autenticar los paquetes en-
capsulados. Las pasarelas VPN son, en este caso, pasarelas seguras IPsec.
© FUOC • PID_00228248 40 Seguridad y privacidad en las smart cities

• Túneles�a�nivel�de�enlace. En el caso de las VPN de acceso remoto o VPDN,


existe la posibilidad de encapsular tramas PPP, que son las que transmite
normalmente un cliente VPN de este tipo, sobre datagramas IP. Hay di-
versas opciones para encapsular PPP (que a su vez puede encapsular otros
protocolos de red, como IPX, etc., o posiblemente IP) sobre IP:
– El protocolo PPTP (Point-to-Point Tunneling Protocol, RFC 2637), que
especifica una técnica para el encapsulamiento de tramas PPP pero no
añade servicios de autenticación. Estos servicios se pueden realizar con
los mismos protocolos que utiliza PPP, como PAP (Password Authenti-
cation Protocol) o CHAP (Challenge Handshake Authentication Pro-
tocol).

– El protocolo L2F (Layer Two Forwarding, RFC 2341), que es parecido


al PPTP pero también puede trabajar con SLIP además de PPP. Para la
autenticación puede utilizar protocolos auxiliares como RADIUS (Re-
mote Authentication Dial-In User Service).

– El protocolo L2TP (Layer Two Tunneling Protocol, RFC 2661), que


combina las funcionalidades que ofrecen PPTP y L2F.

• Túneles�a�nivel�de�transporte. El protocolo SSH (Secure Shell), como ve-


remos en el módulo de aplicaciones seguras, ofrece la posibilidad de redi-
rigir puertos TCP sobre un canal seguro, que podemos considerar como
un túnel a nivel de transporte. Desde este punto de vista, también se po-
dría considerar una conexión SSL TLS como un túnel a nivel de transpor-
te que proporciona confidencialidad y autenticación. Habitualmente, este
último tipo de túnel no sirve para cualquier tipo de tráfico, sino solamente
para datos TCP, y por tanto no se considera parte integrante de una VPN.
© FUOC • PID_00228248 41 Seguridad y privacidad en las smart cities

2. Arquitectura de redes: seguridad en redes


emergentes

En este apartado presentamos algunos de los principales problemas de segu-


ridad relacionados con las nuevas redes que están surgiendo en los últimos
años y que serán la base para crear smart cities. Se trata principalmente de redes
inalámbricas, distribuidas e incluso autoorganizadas, que están formadas por
dispositivos móviles y con limitaciones de recursos mucho más estrictas que
las computadoras que se utilizan en las redes tradicionales.

Primero explicaremos qué entendemos por redes emergentes y cuáles son las
nuevas vulnerabilidades de seguridad que plantean.

Después estudiaremos las características de una de las redes que más se usan
en smart cities, las redes de sensores, y veremos cómo se pueden resolver dos
de sus principales problemas de seguridad: la gestión de claves y la agregación
de datos. Las limitaciones de los sensores provocan que todas las soluciones
tengan que basarse en operaciones criptográficas muy ligeras, como funciones
resumen (hash).

2.1. Redes emergentes

A continuación resumiremos las características básicas de las redes emergen-


tes que nos permitirán construir las smart cities y describiremos cuáles son las
vulnerabilidades a las que son susceptibles dada su naturaleza básica de fun-
cionamiento.

2.1.1. Descripción de las redes

La infraestructura de una red tradicional, es decir, el conjunto de elementos


que conforma la red, excepto los terminales finales, pertenece a una empresa u
operadora que da servicio de conexión a sus usuarios. Los usuarios que utilizan
la red confían en la operadora y asumen que esta les proporcionará un buen
servicio de transmisión y recepción de paquetes.

(1)
En los últimos años, la tecnología inalámbrica ha bajado mucho de precio, En inglés, wireless mesh networks
(WMN).
lo que ha facilitado el desarrollo de sistemas basados en esta tecnología y la
adquisición de equipamiento por parte de los usuarios. El incremento de ter-
minales inalámbricos ha provocado que surjan las redes inalámbricas basadas
en una topología en malla1. En una topología de este tipo, cada nodo está co-
nectado a uno de los otros nodos o a más de uno. La infraestructura de dichas
redes puede ser descentralizada, sin servidor central ni el soporte de una ope-
radora, o centralizada.
© FUOC • PID_00228248 42 Seguridad y privacidad en las smart cities

En el caso de redes WMN descentralizadas, los nodos utilizan la imple-


mentación del modo ad hoc del estándar IEEE 802.11. Por este motivo,
también se denominan redes�ad�hoc.

En las redes ad hoc, la comunicación se basa en la cooperación de un gran MANET


número de dispositivos individuales inalámbricos, que permiten que un men-
Las MANET (mobile ad-hoc net-
saje acabe llegando, salto a salto, de un punto a otro de la red. Cada usuario works) son redes ad hoc ge-
debe tener unas capacidades de encaminamiento: una especie de carrera de neradas por la autoconfigura-
ción de nodos encaminadores
relevos en la que la densidad de usuarios consigue que el relevo represente un que forman una topología ar-
bitraria. Dado que los nodos se
esfuerzo menor. pueden mover libremente, se
considera que la topología de
red cambia muy rápido y de
Las redes WMN centralizadas corresponden a una mezcla de topologías ad hoc forma impredecible.

e infraestructura (o modo con punto de acceso). Se trata de redes con infraes-


tructura que, además, permiten la unión de dispositivos que están fuera del (2)
En inglés, transit access points
rango de cobertura de los puntos de acceso, pero dentro del rango de cobertura (TAP).

de algún punto de acceso de tráfico2. Los TAP son nodos especiales controlados
por la operadora que permiten la retransmisión de los paquetes de los clientes
más allá de su radio de cobertura.

(3)
Otro de los tipos de redes que se han extendido en los últimos años y que son En inglés, wireless sensor network
3 (WSN).
una pieza fundamental de las smart cities son las redes de sensores . Se trata de
redes inalámbricas formadas por dispositivos autónomos que pueden trabajar
de manera cooperativa para monitorizar las condiciones físicas o ambientales
(por ejemplo, temperatura, sonido, vibración, presión, movimiento, polución,
etc.) de una zona.

Las redes�de�sensores se pueden considerar un subconjunto muy espe-


cializado de las WMN, en el que los nodos tienen recursos muy limita-
dos (son pequeños nodos sensores) y están orientados a una tarea muy
específica de monitorización.

En la literatura de las WSN se utiliza, por lo general, una nomenclatura dife-


rente de la utilizada en WMN, en la que los TAP se denominan estaciones base
o supernodos. Por tanto, las estaciones base son nodos de la WSN con capa-
cidad computacional ampliada y más recursos en lo que concierne a batería
y comunicaciones.
© FUOC • PID_00228248 43 Seguridad y privacidad en las smart cities

2.1.2. Vulnerabilidades

Las características más relevantes de las redes emergentes son que se basan
en tecnologías de comunicación inalámbricas (normalmente radio, aunque
también se considera el uso de infrarrojos o ultrasonidos) y que la cooperación
de los usuarios o dispositivos es uno de los puntos clave para hacerlas atractivas
y viables.

Las redes inalámbricas facilitan al atacante el acceso al medio y, por tanto, son
especialmente vulnerables a lo siguiente:

(4)
• Escuchas�no�autorizadas�(eavesdropping). Colocando una antena de re- En inglés, spread spectrum.
cepción en el lugar adecuado, un atacante puede oír la información que
(5)
se envía o recibe por el medio radio. El ataque de escuchas no autorizadas En inglés, frequency hopping.

se clasifica en la categoría de ataques pasivos, que consisten en escuchar el


(6)
medio y analizar los datos capturados sin interactuar con él. Los ataques En inglés,intrussion detection sys-
tem (IDS).
pasivos se pueden evitar, y así se suele hacer, cifrando la información in-
tercambiada.

• Alteración�de�los�datos. Se trata de un ataque activo en el que una entidad


maliciosa modifica el contenido de los mensajes que se intercambian dos
entidades o más. Normalmente, estos ataques se llevan a cabo mediante el
ataque del hombre a medio camino (man-in-the-middle, MITM), en el que
el atacante se convierte en una pasarela entre dos entidades y, por tanto,
tiene control absoluto sobre el tráfico entre ellas.

• Ataques�de�suplantación�de�identidad�(spoofing). Un atacante se hace


pasar por otro nodo para tener acceso a zonas restringidas o limitadas a las
que solo puede acceder un nodo autorizado.

• Ataques�por�múltiples�falsas�identidades�(sybil). En este caso, un ata-


cante adopta de forma deliberada múltiples identidades legítimas de la red
(roba los datos de otros usuarios o genera datos nuevos) con el objetivo de
tener una gran influencia en la red o grupo, por ejemplo en servicios en
los que se utilizan votaciones, reputaciones, etc.

• Negación�del�servicio�(DoS). Este tipo de ataque tiene lugar en el ámbito


físico, cuando un nodo malicioso envía de forma indiscriminada mensajes
que consumen el ancho de banda disponible de la red, y consigue así la
indisponibilidad temporal o permanente de un servicio. En redes inalám-
bricas se dan básicamente dos tipos de ataques DoS:
– Bombas�electrónicas, en las que el atacante genera una señal de gran
potencia por el mismo medio de comunicación, de modo que impide
que se produzca el intercambio de mensajes. Este tipo de ataque es
difícil de evitar, aunque se puede paliar un poco por medio de técnicas
de espectro ensanchado4 y salto de frecuencias5.
© FUOC • PID_00228248 44 Seguridad y privacidad en las smart cities

– Inundación�de�datos, donde los nodos comprometidos envían gran-


des cantidades de información a otros nodos para saturarlos. En este
caso, los ataques se pueden evitar mediante sistemas de detección de
6
intrusos y el posterior control de acceso que inhabilite (deje fuera del
grupo seguro) el nodo que inunda/ataca.

Por otro lado, el hecho de que los nodos de las redes inalámbricas puedan ser
dispositivos pequeños y móviles también introduce ciertas vulnerabilidades
en el sistema:

• Ataques�físicos. Los usuarios maliciosos tienen acceso físico a los nodos


de la red y pueden llevar a cabo ataques, como por ejemplo destruir nodos,
capturarlos y sustraerles información sensible o comprometer las claves
criptográficas para transmitir información falsa a la red.

• Localización. En muchos casos, para garantizar la movilidad de un dispo-


sitivo, es preciso trazar su ubicación, lo cual se puede considerar un ataque
a la privacidad.

• Limitación�de�recursos. Generalmente, los dispositivos móviles son pe-


queños y, por tanto, con recursos más limitados de potencia, almacena-
miento y batería. De las tres limitaciones, la de batería es la más represen-
tativa, ya que su progreso tecnológico es mucho más lento que el de pro-
cesadores y memorias. Normalmente, las limitaciones de batería llevan a
reducir el número de operaciones computacionales que realiza el disposi-
tivo inalámbrico, lo que suele derivar en una implementación de proto-
colos de seguridad pobre.

Y finalmente, las redes que se basan en la cooperación de sus nodos se pueden Maliciosos y egoístas
ver perjudicadas por la existencia de nodos no colaboradores. Los nodos que
Utilizando la terminología de
no colaboran correctamente con la red con el objetivo de dañarla o perjudicar nodos maliciosos y egoístas,
a sus integrantes son nodos maliciosos. Los que no colaboran para ahorrar podríamos indicar que un di-
señador de virus es malicio-
recursos y al mismo tiempo utilizan los servicios de la red a expensas de los so, mientras que un emisor de
correo basura (spammer) es
demás usuarios son nodos egoístas. egoísta.

Los nodos maliciosos y egoístas pueden atacar a los protocolos colaborativos


de la red, en particular a los protocolos de encaminamiento. En redes descen-
tralizadas en las que todos los usuarios colaboran en el encaminamiento de
paquetes, los ataques al encaminamiento degradan el servicio de forma indi-
recta por inhabilitación de las comunicaciones:

• Disrupción�de�rutas. Un atacante evita que se descubra una ruta entre dos


nodos. El objetivo es degradar la calidad de servicio de la red.

• Desviación�de�rutas. En este caso, el adversario no evita que se cree una


ruta, pero consigue que esta se establezca de forma diferente a lo que mar-
ca el protocolo (no se crean las rutas más cortas, rápidas, fiables, etc.). El
© FUOC • PID_00228248 45 Seguridad y privacidad en las smart cities

objetivo es incrementar el control del adversario sobre algunas víctimas,


y poder escuchar o incluso modificar los paquetes de datos que envía.

Existen diferentes formas de implementar tales ataques, pero podemos desta-


car las siguientes:

• Ataques�blackhole/sinkhole. En este caso, un nodo atacante se presenta


como una buena opción para el encaminamiento y se convierte en un
nodo atractivo por el que pasa gran parte de los paquetes de la red. Una vez
que el nodo ha conseguido atraer el tráfico de la red, elimina los paquetes,
con lo que provoca una disrupción de rutas (ataque blackhole) o utiliza el
tráfico para fines maliciosos (ataque sinkhole).

• Ataques�warmhole. En este caso, un nodo atacante crea un túnel oculto


entre dos partes diferentes de una red descentralizada al que encamina
ciertos mensajes de control de una zona a otra con el objetivo de distor-
sionar los mecanismos de encaminamiento.

• Ataques�al�control�de�errores. En este caso, un atacante envía mensajes


de error falsos que invalidan el establecimiento correcto de una ruta.

• Ataques�de�reinyección�de�paquetes. En este caso, un nodo envía paque-


tes de encaminamiento antiguos con información que en su momento era
correcta pero que ahora ya ha quedado desfasada y, por tanto, es inválida.

• Ataques� de� generación� y� modificación� de� paquetes. En este caso, un


nodo crea o modifica paquetes con información de encaminamiento falsa.

A continuación veremos cómo afectan estas vulnerabilidades al buen funcio-


namiento de las redes de sensores, que son las que más se usan en smart cities.

2.2. Redes de sensores

Una red de sensores inalámbrica puede estar formada por una serie de mi-
les, incluso millones, de sensores (nodos), que poseen capacidad de almace-
namiento y procesado y energía limitada. Estas redes se suelen distribuir por
toda la ciudad para obtener datos del estado de diferentes variables o servicios
(contaminación, tráfico, aparcamiento, basuras, etc.). Cabe destacar que en la
ciudad los nodos están expuestos a ataques físicos y de software, por lo que
la prevención y el control de la seguridad es un elemento esencial de estudio
en las redes de sensores.

Los nodos sensores se pueden considerar como pequeños computadores, ex-


tremadamente rudimentarios en términos de características técnicas (número
y tipo de interfaces y componentes). Normalmente, consisten en una unidad
de procesado (microprocesador) con capacidad computacional limitada y no
mucha memoria (lo que sería el sensor propiamente dicho), algún dispositi-
© FUOC • PID_00228248 46 Seguridad y privacidad en las smart cities

vo de comunicaciones (generalmente radio) y alguna fuente de energía (por


lo general, una batería). Algunas implementaciones pueden incluir elementos
adicionales, como sistemas de recarga de batería, procesadores secundarios y
dispositivos de comunicaciones adicionales (RS-232, USB, etc.). El tamaño del
nodo puede variar desde el equivalente a una caja de zapatos hasta dispositi-
vos tan pequeños como granos de arroz. Las restricciones de tamaño y coste de
los nodos sensores afectan en gran medida a la energía, memoria, capacidad
computacional y ancho de banda que después podrán utilizar las aplicaciones
que requieren su uso.

En este subapartado estudiaremos los principales problemas de seguridad re-


lacionados con las redes de sensores. En primer lugar, veremos los esquemas
de gestión de claves encargados de la distribución y actualización del material
criptográfico en la red para dotar de seguridad a sus comunicaciones. En se-
gundo lugar, veremos cómo se puede optimizar la transferencia de datos des-
de los sensores hacia una estación base de manera que se pueda garantizar la
integridad y autenticidad de los datos.

2.2.1. Gestión de claves

El establecimiento de claves de seguridad es el servicio básico para poder ofre-


cer mecanismos de prevención y detección de ataques en redes. Las redes
inalámbricas son particularmente vulnerables a escuchas y al hecho de que los
nodos pueden ser capturados y comprometidos.

Las soluciones basadas en clave pública son complicadas de desplegar por tres
motivos:

1) los sensores poseen capacidades de procesado, almacenaje y fuentes de ener-


gía limitadas, el uso de protocolos basados en clave pública como Diffie-Hell-
man resulta demasiado costoso, y

2) la red no tiene una infraestructura estable y, por tanto, la verificación de


revocación de los certificados de clave pública por medio de una autoridad de
confianza no se puede llevar a cabo adecuadamente.

Así pues, se considera que la criptografía de clave asimétrica no siempre se


puede implementar en las redes de sensores. Las soluciones basadas en claves
simétricas son computacionalmente más eficientes, pero más vulnerables a
ataques. Los sistemas tienen que asegurar que si un intruso consigue capturar
un nodo, no pueda acceder a todas las claves de la red y, por tanto, a la infor-
mación confidencial del sistema.

El objetivo es la creación y gestión de claves simétricas que puedan enfrentarse


a todas las necesidades de la red. Los requisitos para el establecimiento de
claves dependen de los patrones de comunicación de la red, que son:
© FUOC • PID_00228248 47 Seguridad y privacidad en las smart cities

1) unidestino, es decir, enviar un mensaje a un único nodo;

2) difusión local, es decir, enviar un mensaje a los nodos vecinos, con los que
hay conexión directa, y

3) difusión global, es decir, enviar un mensaje a todos los nodos de la red.

Los mensajes unidestino (unicast) se utilizan para enviar información de los


datos capturados por un sensor a una estación base o a otro sensor, que desem-
peñará funciones de agregación de datos. La agregación de datos permite re-
ducir la cantidad de bits transmitidos en una red e incrementa la eficiencia y
el tiempo de vida de la red.

(7)
Los mensajes de difusión local7 se utilizan para el control y la gestión de la red, En inglés, local broadcast.

sobre todo para las operaciones de encaminamiento. Los mensajes de difusión


(8)
En inglés, global broadcast.
global8 se originan en la estación base y se utilizan para distribuir información
de control que involucra a toda la red.

A partir de estos requisitos de comunicación, se definen cuatro tipos de claves:

• Clave�de�nodo: clave que comparten un nodo y la estación base.


• Clave�de�enlace: clave que comparten un par de nodos vecinos.
• Clave�de�grupo: clave compartida entre un nodo y todos sus vecinos.
• Clave�de�red: clave compartida por todos los nodos de la red y la estación
base.

Las claves de los nodos se pueden cargar en los sensores en el proceso de des-
pliegue de una red. La clave de grupo puede ser generada por un nodo y en-
viada de manera individual a cada uno de sus vecinos protegida con la clave
de enlace que comparten los dos. Finalmente, la clave de red también se puede
cargar en los nodos antes del despliegue de la red. Si se detecta que un nodo ha
sido comprometido, sus vecinos tienen que generar nuevas claves de grupo y
distribuirlas entre los vecinos honrados. Entonces, la estación base debe gene-
rar una nueva clave de red y distribuirla salto a salto por toda la red protegida
con las claves de grupo.

Fijaos en que la clave más difícil de generar y gestionar es la clave de enlace


entre dos nodos vecinos.

Para generar la clave de enlace, se podría pensar en usar protocolos de cripto-


grafía simétrica como Kerberos. En este caso, la estación base desempeñaría el
papel de servidor. Para ejecutar el protocolo, se requiere poder enviar mensajes
de la estación base a los demás nodos de la red. El problema es que en una red
de sensores, el encaminamiento puede depender de otros nodos de la red y, por
tanto, puede necesitar que ya estén establecidas las claves de enlace. Además,
© FUOC • PID_00228248 48 Seguridad y privacidad en las smart cities

la carga de comunicación asociada a este protocolo sería muy desigual entre


los diferentes sensores de la red. Por último, el esquema sería poco robusto a
causa de la presencia de la estación base como punto único de fallo.

Otra aproximación sería precargar las claves de enlace en el sensor antes del
despliegue de la red, pero esta opción plantea varios problemas. En primer
lugar, en muchas aplicaciones es difícil conocer a priori cuál será el mapa exacto
de la red, ya que si, por ejemplo, los sensores se posicionan en su lugar cuando
son lanzados por una avioneta, no hay forma de saber con antelación cuáles
serán los vecinos de cada nodo. Además, en una red se pueden añadir sensores
a posteriori para reemplazar a los sensores defectuosos o que han acabado su
ciclo de vida. Es difícil anticipar en tiempo de despliegue de la red dónde se
añadirán estos nodos y, por tanto, qué sensores necesitan estar precargados
con claves criptográficas adicionales para poder interactuar con los nuevos
sensores cuando estos lleguen.

A continuación se presenta una breve introducción de las diferentes aproxi-


maciones a cómo se puede solucionar el problema del establecimiento de una
clave de enlace entre dos nodos vecinos. El primer método se basa en una cla-
ve maestra de corto plazo que está presente en cada nodo durante un tiempo
limitado después de cada despliegue. Los otros métodos se basan en precargar
claves en los sensores de una manera inteligente, sin tener que conocer la to-
pología de la red final y soportando la adición posterior de nuevos nodos en
la red.

Establecimiento de claves a partir de una clave maestra de corto


plazo

Los nodos son preconfigurados con una clave maestra que es igual para todos.
A partir de esta clave maestra cada nodo deriva una clave individual aplicando
una función pseudoaleatoria. Cuando los nodos son desplegados en el lugar
del servicio, estos contactan con los nodos vecinos enviando mensajes de corto
alcance y se intercambian las claves individuales asegurando su integridad a
partir de una función HMAC. Finalmente, cada nodo calcula una clave secreta
de enlace entre él y cada nodo vecino aplicando una función que combina las
claves individuales de cada uno de ellos.

Piscinas de claves

Este tipo de esquemas se basan en una predistribución aleatoria de claves lo


más óptima y eficiente posible. En un principio, se genera un amplio conjunto
de claves, lo que llamamos piscina de claves. Antes de desplegar la red, se
entrega a cada nodo un subconjunto aleatorio de la piscina de claves, un anillo
de claves. El hecho de que los nodos solo tengan que almacenar un anillo
permite reducir los requisitos de memoria y hace que el sistema sea escalable
y apropiado para sensores. Del mismo modo, es evidente que inicialmente
no todos los pares de vecinos de la red comparten una clave. Veremos que
© FUOC • PID_00228248 49 Seguridad y privacidad en las smart cities

los protocolos basados en piscina permiten que cualquiera de los dos nodos
que al principio no comparten una clave puedan establecer otra con una alta
probabilidad, a través de la comunicación con nodos intermedios.

Cuando la red se despliega, los nodos deben llevar a cabo un protocolo para
descubrir con qué vecinos comparten una clave común. Esto se hace a partir
de protocolos reto-respuesta, nunca enviando las claves directamente. Una
manera de hacerlo sería enviar el hash de las claves que cada nodo posee. Así,
los vecinos podrían verificar si ellos tienen la misma clave sin necesidad de
que nadie hiciera público el valor de dicha clave.

Algunos pares de vecinos pueden no tener ninguna clave en común. Si esto


sucede, lo que hacen es ejecutar la fase de establecimiento multisalto de una
clave en la que los nodos acuerdan una clave compartida a través de una ruta
formada por nodos de la red que ya tienen una clave de enlace definida y que
permiten unir el par de sensores. La clave compartida viene definida por uno
de los dos nodos a partir de una clave no utilizada de su anillo de claves.

La principal ventaja de este esquema es que los sensores no tienen que hacer
cálculos intensivos; además, es escalable y es fácil añadir nodos al sistema. El
problema es que si un nodo es capturado y comprometido, sus claves pueden
ser utilizadas por otros nodos. Por otro lado, si el nodo comprometido parti-
cipa en el establecimiento multisalto de una clave para un nodo vecino, la
clave del vecino también resulta comprometida. Finalmente, este sistema no
proporciona autenticación nodo a nodo. Esto significa que un nodo puede
establecer unas claves compartidas con sus vecinos, pero no sabe exactamen-
te quiénes son dichos vecinos. Así pues, la expulsión de nodos maliciosos o
comprometidos de la red no es posible.

Predistribución�de�claves�q-compuesta

Una forma para mejorar la capacidad de recuperación del esquema básico de la


piscina de claves ante ataques de captura de nodos es utilizar una predistribu-
ción aleatoria de claves q-compuesta. Este esquema se diferencia del esquema
básico en que los nodos han de tener como mínimo q claves en común en sus
anillos de claves para poder establecer una clave de enlace. La clave de enlace
se calcula como el resumen de todas las claves compartidas.

Este esquema es más robusto al compromiso de una clave de enlace, ya que Nota
para ello el atacante debe ser capaz de capturar un nodo y descubrir qué sub-
Cuando q = 1, el esquema q-
grupo del anillo de claves se está utilizando en cada enlace. Por otro lado, los compuesto tiene el mismo
requisitos del protocolo también son mayores, ya que la probabilidad de esta- comportamiento que el esque-
ma básico de la piscina de cla-
blecer una clave directamente como otro usuario es menor que en el esquema ves.

de la piscina de claves (es menos probable tener q claves comunes con un ve-
cino que tener solo una), y para solventarlo se puede incrementar el tamaño
© FUOC • PID_00228248 50 Seguridad y privacidad en las smart cities

del anillo de claves (con la necesidad consiguiente de más memoria) o el ta-


maño de la piscina de claves ha de ser más pequeño (con el efecto negativo
que esto tendría sobre la captura de nodos).

Refuerzo�de�la�clave�a�través�de�multicamino

Otra alternativa de mejora en el esquema básico de la piscina de claves es


establecer las claves por medio de caminos disjuntos.

Este sistema comporta una mayor sobrecarga para el establecimiento de claves,


pero tiene la ventaja de que comprometer una clave de enlace resulta más
costoso. Para hacerlo, un atacante necesitaría comprometer como mínimo una
clave de enlace de cada una de las rutas que participan en el establecimiento
de claves.

Predistribución aleatoria de claves basada en polinomios

El objetivo de este esquema es minimizar la información sensible que un ata-


cante obtiene cuando captura un sensor. La idea es que no sea posible obtener
información útil si no se captura un número mínimo t de nodos, y por ello
se utiliza la criptografía umbral.

El esquema es incondicionalmente seguro y resistente a ataques de t coalicio-


nes, es decir, cualquier ataque que comprometa hasta t nodos no puede ob-
tener ninguna información sobre las claves compartidas calculadas por cual-
quier par de los nodos comprometidos. Sin embargo, es un esquema que tie-
ne requisitos de memoria relevantes por nodo. Esto hace que el umbral t esté
limitado por la capacidad de memoria de los sensores.

Predistribución de claves basada en matrices

Los esquemas de predistribución de claves basada en matrices se fundamen-


tan en el esquema de Blom propuesto en 1985. En este esquema, una matriz
simétrica guarda todas las claves de un grupo de n nodos, donde cada
elemento kij es la clave de enlace entre los nodos i y j. El esquema de Blom
puede resistir ataques de hasta t nodos. Todas las claves de enlace de los nodos
no comprometidos de una red se mantienen seguras mientras no haya más
de t nodos corruptos.

2.2.2. Agregación de datos

Los datos recogidos por los sensores se tienen que procesar de alguna mane-
ra para poder extraerles información interesante. En muchas ocasiones no es
preciso enviar todos los datos recogidos por los sensores (uno a uno) a la apli-
© FUOC • PID_00228248 51 Seguridad y privacidad en las smart cities

cación final, sino que los datos se pueden presentar en un único punto de
vista que sintetice todo lo recogido por los sensores (suma de todos los datos,
media, etc.).

La agregación de datos es una forma eficiente de ahorrar energía a los sensores.


Del mismo modo, también crea un conjunto de nuevos riesgos de seguridad:

1) Si los datos tienen que viajar a través de una red multisaltos, los nodos que
reenvían la información de los sensores pueden manipular los datos.

2) Se pierde la identificación de las fuentes de información, con lo que la de-


tección de nodos maliciosos resulta más difícil.

3) El nodo agregador puede falsificar el resultado de la agregación de datos.

Para evitar estos problemas, deberíamos proporcionar servicios de integridad


y autenticidad de datos desde que salen del sensor hasta que llegan a la aplica-
ción final. Generalmente, esto se podría conseguir con códigos de autentica-
ción de mensajes o con firmas digitales, pero ambas opciones son demasiado
costosas para ponerlas en práctica con todos los datos que salen de los senso-
res. En las redes de sensores, todas las operaciones tienen que ser muy eficien-
tes, dadas las limitaciones de los nodos.

Uno de los métodos que se utilizan para autenticar la agregación de datos Ralph Merkle
en entornos muy limitados es el árbol de Merkle. Un árbol de Merkle es una
El árbol de Merkle es una cons-
construcción formada por valores hash de los datos que se quieren validar y trucción introducida por Ralph
en el que una sola firma que aglutina los resúmenes hash de todos los datos Merkle en 1979 con el objeti-
vo principal de hacer más efi-
permite validar que los datos no han sido manipulados. ciente el manejo de múltiples
firmas de un solo uso.
© FUOC • PID_00228248 52 Seguridad y privacidad en las smart cities

3. Protocolos de redes: seguridad en redes de área local


y personal

Las redes inalámbricas de alcance personal (también conocidas como WPAN


por su nombre en inglés, wireless personal area networks) son redes formadas por
dispositivos, posiblemente heterogéneos, que se encuentran a poca distancia
(por lo general, del orden de pocos metros). La magnitud exacta de la distancia
a la que se pueden comunicar varios dispositivos, así como las características
específicas de la comunicación, estarán determinadas por la tecnología espe-
cífica que se utilice en cada caso. En el caso de las smart cities, y más concreta-
mente, en las múltiples redes de sensores que podemos encontrar en este tipo
de ciudades, las WPAN son muy habituales y utilizan tecnología ZigBee con
mucha frecuencia.

En este apartado veremos a qué problemas de seguridad se enfrentan las


WPAN, así como las alternativas que se suelen utilizar habitualmente para so-
lucionarlos. Para ello, nos centraremos en tres de las tecnologías más popula-
res para crear este tipo de redes: RFID, Bluetooth y ZigBee.

En primer lugar, veremos una descripción de la tecnología RFID. A continua-


ción, veremos qué se puede hacer para conseguir primitivas criptográficas pa-
ra dispositivos RFID, haciendo hincapié en los recursos necesarios para imple-
mentarlas, y detallaremos algunos de los protocolos que se emplean para pro-
porcionar seguridad en estos sistemas.

En segundo lugar, describiremos el estándar Bluetooth y los mecanismos de


seguridad que prevé. Repasaremos los diferentes modos de seguridad de Blue-
tooth y detallaremos algunos de sus procesos básicos, como los que permiten
autenticar dispositivos.

Finalmente, comentaremos el estándar ZigBee y examinaremos los mecanis-


mos de seguridad que incorpora. Expondremos los diferentes servicios de se-
guridad que ZigBee ofrece para cada una de las capas, analizando algunos de
los protocolos del estándar, como el protocolo de establecimiento de claves o
el protocolo de autenticación mutua.

3.1. RFID

Comenzaremos el estudio de las tecnologías para redes WPAN analizando la


identificación mediante radiofrecuencia (RFID). En primer lugar, describire-
mos esta tecnología y clasificaremos los diferentes tipos de dispositivos RFID
© FUOC • PID_00228248 53 Seguridad y privacidad en las smart cities

según su capacidad de cómputo. Esta clasificación nos será útil más tarde para
analizar las soluciones criptográficas que se presentan y su adaptabilidad a los
diferentes dispositivos.

A continuación, pasaremos a enumerar los ataques a los que son vulnerables


los sistemas RFID, para proponer, después, soluciones que permitan minimi-
zar o evitar completamente los efectos de tales ataques. En este sentido, vere-
mos cómo podemos crear primitivas criptográficas adecuadas a los dispositi-
vos RFID y estudiaremos algunos de los protocolos que permiten garantizar
ciertas propiedades de los sistemas seguros.

3.1.1. Descripción de la tecnología RFID

(9)
La RFID9 es una tecnología que permite la comunicación inalámbrica a partir Del inglés, radio frequency identi-
fication.
de la emisión de ondas de radiofrecuencia. Los principales componentes de un
sistema RFID son el lector y el transponedor (o etiqueta). La tecnología RFID se
utiliza hoy en día en una gran variedad de escenarios, desde pasaportes hasta
sistemas de control de acceso, pasando por sistemas de tiques o mecanismos
de protección contra falsificaciones.

Los principales elementos de una etiqueta RFID son la antena y el chip. La


antena es la encargada de emitir y recibir las ondas de radiofrecuencia que po-
sibilitan la comunicación. Por su parte, el chip incorpora un modulador y un
desmodulador, que procesan las señales, y unos circuitos, que implementan la
memoria y las herramientas de procesado de la información. Opcionalmente,
las etiquetas pueden incorporar otros circuitos con tareas más específicas.

(10)
Con el nombre de etiqueta RFID, en realidad se engloba un amplio abanico Del inglés, gate equivalent.
de dispositivos con características muy diferentes. Mientras que algunas de
las etiquetas RFID no disponen de batería y utilizan la señal que les llega del
lector para inducir una pequeña corriente eléctrica suficiente para operar (eti-
quetas pasivas), otras etiquetas sí disponen de una fuente de energía propia y
pueden funcionar de manera autónoma (etiquetas activas). A medio camino,
encontramos los dispositivos semipasivos, que disponen de una batería que
solo se utiliza para computaciones internas pero que necesitan energía externa
para hacer posible la comunicación. La fuente de energía no es lo único que
diferencia a las etiquetas RFID. Otros parámetros, como el tamaño, también
varían enormemente de un tipo de etiqueta a otro. Dado que el tamaño del
área del chip está condicionado por la tecnología que se utiliza, la medida de
la capacidad del chip no se hace directamente con el área disponible, sino que
se realiza en puertas lógicas equivalentes (o GE10).
© FUOC • PID_00228248 54 Seguridad y privacidad en las smart cities

La puerta lógica NAND


Una puerta�equivalente o GE corresponde al área del chip necesaria pa-
ra implementar una puerta NAND de dos entradas. Las GE permiten es- Las puertas NAND son espe-
cialmente importantes en el di-
pecificar la complejidad de un circuito electrónico independientemente seño de circuitos lógicos, ya
que cualquier función boo-
de la tecnología con la que este se haya creado. leana se puede implementar
simplemente con utilizar una
combinación de puertas de es-
te tipo.
Así pues, la capacidad de cómputo de una etiqueta RFID medida en GE es uno
de los parámetros que puede variar mucho según el tipo concreto de etique-
ta. Estas diferencias hacen que las soluciones de seguridad propuestas para las
etiquetas con más recursos puedan no ser viables para las más limitadas y que,
por tanto, sea necesario tener muy claro con qué tipo de dispositivo RFID se
desea trabajar antes de definir los mecanismos de seguridad que se quieren im-
plementar. En general, podemos clasificar las etiquetas RFID en tres categorías:

1)�Gama�baja. Etiquetas de bajo coste con menos de cinco mil GE. Mientras
que algunas de estas etiquetas no disponen de ningún tipo de mecanismo de
seguridad ni privacidad, otras incorporan funcionalidades de seguridad bási-
cas, como sumas de verificación (checksums), un comando kill protegido me-
diante contraseña, una contraseña de acceso o un generador de números pseu-
doaleatorios. Las RFID de gama baja se utilizan, principalmente, para realizar
identificación automática.

Por ejemplo, se encuentran dispositivos de gama baja como etiquetas antirrobo adheridas
a los productos en venta de una tienda. Las etiquetas EPC (electronic product code) Class 1
Gen 2 son un ejemplo comercial de esta categoría.

2)�Gama�media. Etiquetas de coste moderado con transponedores que permi- El comando kill
ten efectuar tanto operaciones de lectura como de escritura. Disponen de me-
El comando kill permite a un
moria de datos no volátil que puede variar desde los cien bytes hasta más de lector desactivar de forma per-
cien kB. Las etiquetas de esta gama suelen implementar protocolos de auten- manente una etiqueta RFID.

ticación mutua y control de acceso a la memoria del transponedor. Durante la


comunicación entre la etiqueta y el lector, se establecen claves de sesión que
permiten enviar los datos cifrados y asegurar su integridad.

Encontramos etiquetas de gama media en inmovilizadores de automóviles (que evitan


que el motor se ponga en marcha sin la presencia de la llave correcta), mecanismos de
control de acceso a edificios o sistemas de tiques. Entre las etiquetas de esta gama, las
más conocidas son las MiFare Classic.

3)�Gama�alta. Etiquetas de coste más elevado que contienen chips de tarjetas


inteligentes (smartcards) y que están equipadas con sistemas operativos espe-
cíficos para dichas tarjetas. Las etiquetas de gama alta incorporan mecanismos
de seguridad con funciones criptográficas avanzadas, normalmente específicas
para cada aplicación. Las etiquetas con más prestaciones de esta gama pueden
llegar a incorporar un coprocesador criptográfico que permite efectuar opera-
ciones de criptografía de clave pública, como la creación de firmas digitales.
© FUOC • PID_00228248 55 Seguridad y privacidad en las smart cities

(11)
Con las siglas NFC11 se engloba un conjunto de estándares basados en RFID Del inglés, near field communi-
cation.
que requieren que la etiqueta y el lector estén muy cerca, del orden de pocos
centímetros, para establecer una comunicación entre ellos. El hecho de limi-
Ejemplos de NFC
tar la distancia existente entre dos dispositivos para que puedan comunicarse
podría ser una limitación, pero también resulta deseable a la hora de mejorar Ejemplos de aplicaciones que
utilizan NFC son dispositivos
la seguridad del sistema. de pago con el teléfono mó-
vil, tarjetas de fidelización de
líneas aéreas o billetes de me-
Así pues, las características de los diferentes dispositivos RFID estarán determi- tro multiviaje.

nadas en gran medida por el coste máximo que se pueda asumir a la hora de
producirlos. La capacidad de cómputo de dichos dispositivos limitará también
el grado de seguridad que puede alcanzar cada uno de ellos.

3.1.2. Seguridad en dispositivos RFID

Existe un conjunto de propiedades objetivo cuando se intentan crear disposi-


tivos RFID seguros. Mientras que las propiedades más básicas ofrecerán nive-
les de seguridad elementales, algunas de las más avanzadas garantizarán nive-
les de seguridad más elevados. El conjunto específico de propiedades que hay
que garantizar vendrá determinado por las necesidades de la aplicación que
se quiera dar al sistema:

• Identificación. La función principal de un lector RFID es, precisamente,


identificar un valor único (una ID) que se asigna a cada etiqueta RFID.
La propiedad de identificación permite a un lector descubrir la identidad
de una etiqueta a partir de la salida de esta. A grandes rasgos, las etique-
tas RFID reciben un identificador único cuando están en producción. Este
identificador se escribe en la ROM (memoria solo de lectura) de la etiqueta,
de manera que resulta muy difícil cambiarlo. Se puede conseguir identifi-
cación sin utilizar ningún tipo de técnica criptográfica, aunque esto puede
dar como resultado una fuga de datos secretos, lo que podría dar lugar, por
ejemplo, a ataques de tracking como los que veremos más adelante.

• Autenticación. Cuando un lector lee datos de una etiqueta, no puede sa-


ber si los datos que está recibiendo son de una etiqueta válida o no a menos
que se añada un sistema de validación. El mismo escenario se presenta en
la dirección opuesta, cuando una etiqueta recibe datos de un lector. Para
asegurar que las comunicaciones se hacen entre dispositivos válidos, hay
que incorporar un mecanismo de autenticación en el sistema que permita
garantizar que un lector solo aceptará los datos de una etiqueta y que una
etiqueta solo aceptará los datos de un lector si pueden asegurar su validez.
Los sistemas de control de acceso a edificios son un ejemplo de RFID que
necesitarán implementar autenticación.

• Privacidad. El hecho de que la propiedad de identificación sea la básica de


un sistema RFID y de que cada etiqueta contenga un identificador único
provoca que aparezcan problemas de privacidad asociados al uso de dispo-
sitivos RFID. Así, por ejemplo, se podrían seguir los movimientos de una
© FUOC • PID_00228248 56 Seguridad y privacidad en las smart cities

persona o de un objeto que lleve una etiqueta RFID adherida. Las necesi-
dades específicas de privacidad dependerán en gran medida de la aplica-
ción concreta que se esté empleando en las etiquetas RFID.

• Indistinguibilidad. La indistinguibilidad es una propiedad muy relacio-


nada con la privacidad. Decimos que una etiqueta tiene indistinguibilidad
si un atacante que realiza una escucha pasiva no es capaz de distinguir
entre dos etiquetas diferentes solo observando sus salidas.

(12)
• Seguridad�hacia�delante12. Se trata de una extensión de las propiedades En inglés, forward security.

de autenticidad e indistinguibilidad que garantiza que dichas propiedades


se mantienen para transacciones pasadas cuando un atacante es capaz de
corromper una etiqueta en un momento determinado. Por ejemplo, es fá-
cil imaginar un escenario en el que se tira a la basura una etiqueta RFID que
disponía de mecanismos para garantizar la autenticidad y la indistingui-
bilidad una vez acabada su vida útil. En ese momento, un atacante puede
recuperar la etiqueta, manipularla y obtener los valores secretos que con-
tiene. Si, incluso con esta información, el atacante sigue sin ser capaz de
distinguir entre las salidas de dos etiquetas que registró en el pasado (una
de las cuales pertenecía a la etiqueta comprometida), entonces decimos
que tiene seguridad hacia delante para la propiedad de indistinguibilidad.

• Delegación�y�restricción. Estas propiedades son necesarias en aplicacio-


nes en las que las etiquetas son reutilizadas por varios propietarios. En es-
tas aplicaciones, se quiere que el propietario original pueda delegar el de-
recho de rastrear una etiqueta en un nuevo propietario, al asegurar que,
una vez delegados los derechos, el propietario original pierde la capacidad
de rastrearla.

• Prueba�de�existencia. La prueba de existencia es una propiedad que per-


mite garantizar la existencia de una etiqueta particular en una localización
concreta, en un tiempo determinado y con un conjunto de otras etiquetas
particulares. Esta propiedad es necesaria, por ejemplo, en aplicaciones en
las que se asignan etiquetas RFID a los diferentes componentes que for-
man parte de una cadena de suministro, de manera que varios lectores
distribuidos a lo largo de la cadena puedan controlar su funcionamiento.
En este caso, es interesante que el lector sea capaz de detectar que una se-
rie de componentes se encuentran juntos en un espacio en un momento
determinado (por ejemplo, si estos componentes se tienen que combinar
para formar una sola pieza).

• Límite�de�distancia. Con el fin de dificultar los ataques de relay (que des-


cribiremos más adelante), se puede intentar limitar la distancia aceptable
entre una etiqueta y un lector. Para ello, se limita el tiempo de ida y vuelta
(round trip time) de los intercambios entre el lector y la etiqueta.
© FUOC • PID_00228248 57 Seguridad y privacidad en las smart cities

• Sincronización. En protocolos basados en máquinas de estados (donde


las diferentes partes van cambiando de estado a medida que avanza el pro-
tocolo), un atacante puede provocar que el protocolo no se complete con
éxito perturbando o retardando las comunicaciones entre la etiqueta y el
lector, es decir, provocando una desincronización. La propiedad de sincro-
nización permite a una etiqueta y a un lector volver a sincronizarse des-
pués de haberse desincronizado durante la ejecución de un protocolo.

Ataques a sistemas RFID

Los sistemas RFID son vulnerables a diferentes tipos de ataques, algunos de


los cuales aparecen también en muchos otros sistemas de información. De-
pendiendo del método utilizado para atacar al sistema, podemos clasificar los
ataques a dispositivos RFID en varias categorías:

1)�Lectura�pasiva. El método de lectura pasiva permite a un atacante escuchar


los mensajes transmitidos entre el lector y la etiqueta, normalmente con la
intención de descubrir información secreta. Al tratarse de un método pasivo,
el atacante solo tiene la habilidad de escuchar los mensajes, sin poder mani-
pularlos de ninguna forma. Lo que exponemos a continuación conforma un
ataque que necesita realizar una lectura pasiva:

(13)
• Escuchas no autorizadas13. Es el ataque de lectura pasiva en el que el ata- En inglés, eavesdropping.

cante simplemente escucha la comunicación entre una etiqueta y un lec-


tor. Dado que las comunicaciones RFID se producen de forma inalámbrica,
es relativamente fácil para un atacante interceptar tales comunicaciones,
siempre que se pueda situar cerca de los otros dispositivos. Este tipo de ata-
ques puede ser difícil de detectar y puede comprometer la identificación,
la autenticación o la privacidad del sistema RFID.

2)� Lectura� activa. El método de lectura activa consiste en intentar leer in-
formación (de la etiqueta, del lector o del mismo canal inalámbrico) pero en
este caso con la capacidad de modificar los mensajes que se intercambian la
etiqueta y el lector, y de interactuar con las distintas partes. La intención del
atacante es descubrir información secreta o atacar al mecanismo de autenti-
cación. Se pueden identificar diferentes ataques que necesitan poder realizar
lecturas activas para perpetrarse:

(14)
• Ataques de reinyección14. En un ataque de reinyección, el atacante registra En inglés, replay attacks.

la salida de una etiqueta y después envía esta salida hacia el lector. Nor-
malmente, el momento en el que el atacante registra la salida y el momen-
to en que este la reproduce se encuentran separados en el tiempo. Los ata-
ques de reinyección permiten romper algunos sistemas de autenticación.

(15)
• Ataques de retransmisión15. En un ataque de retransmisión, el atacante En inglés, relay attacks.

lee la salida de una etiqueta, transporta esta salida a otra localización y


© FUOC • PID_00228248 58 Seguridad y privacidad en las smart cities

envía la salida hacia un lector remoto. Este tipo de ataques también puede
conseguir romper sistemas de autenticación.

• Ataque de modificación del mensaje. En ataques de modificación del men-


saje, el atacante intercepta y modifica la comunicación entre una etique-
ta y un lector. Para evitar este tipo de ataques, se añaden mecanismos de
control de integridad a los datos que se envían. Los ataques de este tipo
pueden romper la identificación, la autenticación o la privacidad de un
sistema RFID.

3)� Reescritura. El método de reescritura permite a un atacante reescribir la


información almacenada en la etiqueta para obtener información secreta o
para burlar al mecanismo de autenticación. Algunos ataques que emplean la
reescritura son los siguientes:

• Ataque de reescritura de la etiqueta/del lector. En un ataque de reescritura


de la etiqueta, el atacante reescribe los contenidos de la memoria de una
etiqueta utilizando un lector falso. Este tipo de ataques se puede prevenir
o bien exigiendo a las etiquetas que autentiquen los lectores antes de per-
mitir reescribir contenido, o bien desplegando mecanismos de bloqueo
de memoria. Del mismo modo, también se pueden considerar ataques de
reescritura del lector, donde una etiqueta falsa consigue comprometer la
memoria de un lector. Los ataques de este tipo pueden romper la identifi-
cación, la autenticación o la privacidad de un sistema RFID.

• Virus/software malicioso. Los ataques de reescritura pueden permitir la


transmisión de software malicioso entre dispositivos RFID. Por ejemplo,
un lector puede leer código malicioso de una etiqueta contaminada al eje-
cutar el código y pasar a reescribirlo en otras etiquetas a su alcance, con lo
que se propaga el software malicioso.

4)�Clonación. El método de clonación consiste en crear una copia (un clon)


de una etiqueta o de un lector. Un ataque de clonación sería el siguiente:

• Ataque de clonación de una etiqueta/lector. En un ataque de clonación, el


atacante consigue una copia completa de otra etiqueta o lector. El uso de
mecanismos de autenticación o la creación de etiquetas y lectores a prueba
de manipulaciones son mecanismos de defensa contra la clonación. Este
tipo de ataques puede romper la identificación y la autenticación de un
sistema RFID.

5)�Destrucción/denegación�de�servicio. Este tipo de ataques inhabilita el uso


de los dispositivos RFID, ya sea destruyéndolos físicamente, saturándolos al
crear más peticiones de las que se pueden atender o creando interferencias en
el canal. Algunos ataques de denegación de servicio son los siguientes:
© FUOC • PID_00228248 59 Seguridad y privacidad en las smart cities

• Denegación de servicio y destrucción. En este ataque, el adversario intenta


destruir físicamente una etiqueta para dejarla inutilizable o lleva a cabo
un ataque de denegación de servicio que impide el uso del sistema a los
usuarios legítimos.

(16)
• Ataques de creación de interferencias16. En este tipo de ataques, el adver- En inglés, jamming.

sario intenta bloquear el canal de comunicación inalámbrico creado entre


una etiqueta y un lector, o interferir sobre él.

(17)
6)�Rastreo17. Este método de ataque consiste en escanear una etiqueta, bien En inglés, tracking.

para obtener información, bien para detectar sus movimientos. Como ejem-
plos de ataques de rastreo tenemos los siguientes:

• Ataques de escaneo. En un ataque de escaneo, el atacante intenta obtener


información sobre el objeto que lleva una etiqueta RFID.

• Ataques de rastreo. En un ataque de rastreo, el atacante sigue a una etiqueta


(o a la persona u objeto que lleva dicha etiqueta).

7)�Canales�laterales. Este método consiste en aprovechar información lateral,


como el consumo energético de las etiquetas o el tiempo de respuesta, para
tratar de obtener información secreta. El siguiente es un ataque que utiliza el
método de canales laterales:

(18)
• Ataques de canal lateral18. Dadas las características técnicas y físicas de los En inglés, side channel attacks.

dispositivos RFID, un atacante puede observar la fuerza del campo electro-


magnético que se genera o analizar los tiempos de adquisición y procesado
de datos para obtener información secreta almacenada en una etiqueta o
un lector RFID.

Soluciones criptográficas para RFID

Con el fin de prevenir, detectar o mitigar los ataques a sistemas RFID que aca-
bamos de exponer, se pueden implementar soluciones criptográficas en los
dispositivos RFID. Como hemos visto, los sistemas RFID disponen de unos re-
cursos limitados que vendrán determinados por el tipo de etiquetas o lectores
que se utilicen. Así pues, la necesidad de conseguir dispositivos de bajo cos-
te limita la complejidad de los algoritmos que se pueden implementar y, por
tanto, las soluciones criptográficas aplicables.

(19)
En inglés, lightweight crypto-
El conjunto de técnicas criptográficas diseñadas para dispositivos con graphy.
recursos limitados que intentan ofrecer un compromiso entre rendi-
miento, seguridad y coste se conoce como criptografía�ligera19.
© FUOC • PID_00228248 60 Seguridad y privacidad en las smart cities

Para conseguir implementaciones criptográficas utilizables en dispositivos


RFID, normalmente se siguen cuatro enfoques distintos:

• implementar de manera eficiente sistemas de cifra ya existentes;


• utilizar sistemas de cifra ya existentes con parámetros más pequeños;
• diseñar nuevos mecanismos de cifrado, y
• desarrollar soluciones totalmente dedicadas.

En los siguientes subapartados, repasaremos algunas de las soluciones de crip-


tografía ligera que se suelen utilizar en dispositivos RFID, tanto si son adap-
taciones de sistemas que originalmente necesitaban muchos recursos como
nuevas propuestas que se adaptan a los recursos disponibles en dispositivos
RFID. En primer lugar, veremos algunas de las primitivas criptográficas más
utilizadas y cómo se pueden utilizar en dispositivos RFID. Después, pasaremos
a repasar algunos de los protocolos que permiten ofrecer ciertas garantías de
seguridad en RFID.

Generadores�de�números�pseudoaleatorios

Los generadores de números pseudoalteatorios son algoritmos deterministas


que permiten generar secuencias de números que parecen aleatorias. Estos al-
goritmos tienen como parámetro de entrada un valor inicial o semilla que
permite inicializarlos y ofrecen una salida con unas propiedades similares a las
que se observan en secuencias aleatorias.

Uno de los métodos más populares para generar PRNG es a partir de registros
de desplazamiento realimentados linealmente, o LFSR.

Un LFSR de longitud n es un dispositivo formado por n celdas de me-


moria (o registros).

Cada ciclo de reloj, el estado del LFSR se actualiza, de manera que el contenido
de la celda si pasa a ser el que había en la celda si-1.

El nuevo bit de entrada, sn+1 se calcula a partir del estado de los registros
y del polinomio de conexiones que definen el LFSR:

A pesar de que los LFSR son muy fáciles de implementar por lo que respecta
al hardware, utilizados directamente también son muy predecibles, lo que li-
mita su uso como PRNG. Para romper la linealidad de los LFSR (y, por lo tan-
© FUOC • PID_00228248 61 Seguridad y privacidad en las smart cities

to, hacerlos menos predecibles), se utilizan varias técnicas, como aplicar una
función de filtrado no lineal a los bits que se extraen o combinar la salida de
diferentes LFRS mediante una función no lineal.

Cifras�de�bloque

Entre los sistemas de cifra de bloque más conocidos se encuentran el AES y el


TripleDES. Como hemos visto, una de las alternativas más directas para obte-
ner herramientas criptográficas para dispositivos con recursos limitados es la
implementación eficiente de sistemas ya existentes.

En el caso del AES, este es un algoritmo de cifra que ya fue diseñado con la
eficiencia como uno de sus requisitos. El AES (128 bits) en modo de solo cifrado
se puede implementar utilizando 3.100 GE y necesita 1.044 ciclos de reloj para
realizar el cifrado de un bloque de datos.

Cifras�de�flujo

A diferencia de las cifras de bloque, las cifras de flujo generan una cadena de
bits a partir de la clave y realizan la operación de cifrado haciendo una xor del
texto claro con la cadena obtenida.

El algoritmo RC4 es una cifra de flujo bastante popular. A pesar de ello, no re-
sulta en absoluto adecuada para sistemas con recursos limitados, ya que con-
tiene una permutación que necesita más de doce mil puertas para ser imple-
mentada.

En el caso de las cifras de flujo, la alternativa de diseñar nuevos sistemas que


requieran pocas GE es la que ha tenido una mayor aceptación. Así pues, siste-
mas de cifra como Grain o Trivium se diseñaron específicamente para dispo-
sitivos con recursos muy limitados.

El funcionamiento de Trivium se basa en tres LFSR de 93, 84 y 11 bits de lon-


gitud. Para generar un bit de salida, se extraen dos bits de cada uno de los LFSR
y se realiza una xor de todos ellos. Trivium se puede implementar con 3.090
GE y necesita 176 ciclos de reloj para cifrar 128 bits de datos.

Grain utiliza dos registros de desplazamiento y una función no lineal de salida


para operar. Grain puede ser implementado con 3.360 GE y requiere 104 ciclos
de reloj para cifrar 128 bits.

Funciones�hash

Una función hash H es una función que hace corresponder a un mensaje m de


tamaño variable un valor H(m) de tamaño fijo.
© FUOC • PID_00228248 62 Seguridad y privacidad en las smart cities

Después de que la popular función de hash MD5 se considerase rota, la familia


de funciones SHA ha tomado el relevo. Existen implementaciones de SHA-256
con 10.868 GE que requieren 1.128 ciclos de reloj para calcular el hash de un
bloque de 512 bits. Para SHA-1, las implementaciones requieren algo menos de
espacio (8.120 GE). Sin embargo, en ambos casos el número de GE necesarias
es muy elevado para usarlas en RFID de gama media-baja.

Criptografía�de�clave�pública

(20)
La utilización de criptografía basada en curvas elípticas20 para sistemas RFID En inglés,eliptic curve crypto-
graphy o ECC.
es un campo muy prometedor pero todavía en desarrollo. Se estima que una
implementación de ECC de 192 bits necesitaría 23.600 GE y más de quinientos
mil ciclos de reloj para realizar una operación de multiplicación de puntos.

Protocolos�para�autenticar

El protocolo de Hopper y Blum (HB) es un esquema que ofrece autenticación


sin ofrecer privacidad. El protocolo original, que se conoce como protocolo
HB, solo es seguro ante atacantes pasivos que se limitan a escuchar la comu-
nicación, sin interferir en ella ni modificarla de ninguna manera. La principal
ventaja de este protocolo es su gran simplicidad, lo que lo hace más adecuado
para dispositivos RFID con pocas GE. Dado un lector y una etiqueta que com-
parten una tira de k bits secreta, x, el protocolo permite al lector autenticar
una etiqueta sin que un atacante que hace una escucha pasiva pueda aprender
el valor secreto x.

Protocolos�para�garantizar�la�seguridad�hacia�delante

Como hemos visto, una de las propiedades de seguridad que puede ser intere-
sante garantizar en sistemas RFID es la seguridad hacia delante, que permite
evitar que un atacante pueda identificar transacciones pasadas que involucra-
ban a una etiqueta dada si consigue descubrir los datos secretos que contiene
en un instante de tiempo concreto. Una de las alternativas propuestas para
conseguir garantizar esta propiedad es el uso de cadenas de funciones hash.

El esquema propuesto por Ohkubo, Suzuki y Kinoshita utiliza dos funciones


de hash, H y G. Cada etiqueta tiene un valor secreto si, donde i es un conta-
dor de transacciones, de manera que el valor secreto cambia en cada nueva
transacción. Para identificarse, una etiqueta enviará al lector el valor ,
que es el resultado de aplicar la función hash G al valor secreto que tiene en
aquel momento. Entonces, la etiqueta renueva su valor secreto usando la fun-
ción hash H, de manera que , y a continuación borra el valor secreto
si. El lector mantiene una base de datos con las correspondencias entre cada
identificador de etiqueta y la información secreta inicial s0 asociada a esta. En
el momento en el que el lector recibe un valor ai, comprueba si corresponde a
algún valor para algún s0 de las etiquetas que conoce, y recupera así el
© FUOC • PID_00228248 63 Seguridad y privacidad en las smart cities

identificador de la etiqueta. Mientras que el número de operaciones que debe


realizar la etiqueta es bajo, el lector debe calcular salidas de la función hash pa-
ra cada uno de los valores i y para cada una de las etiquetas que tiene en la base
de datos, lo que puede suponer un coste elevado en escenarios determinados.

3.2. Bluetooth

En este subapartado describiremos el estándar Bluetooth y los mecanismos de


seguridad que prevé. En primer lugar, examinaremos qué clases de dispositivos
Bluetooth existen y cuál es la estructura de las redes de dispositivos Bluetooth.

Después repasaremos los diferentes modos de seguridad de Bluetooth y deta-


llaremos algunos de los procesos básicos, como los que permiten autenticar
dispositivos; también veremos las diferentes claves que permiten ofrecer segu-
ridad a los dispositivos Bluetooth.

3.2.1. Descripción de la especificación Bluetooth

Bluetooth es un estándar industrial para comunicaciones inalámbricas baratas El origen del nombre
de corto alcance. Tiene como principal objetivo sustituir los cables de tecla- Bluetooth

dos, ratones y periféricos en general, así como permitir comunicaciones entre La palabra bluetooth deriva del
dispositivos portátiles. El estándar Bluetooth se desarrolla por medio del Blue- nombre del rey danés y no-
ruego Harald Blåtand. La tra-
tooth Special Interest Group, al que pertenecen compañías del sector de las ducción directa al inglés de su
nombre es Harold Bluetooth.
telecomunicaciones, las redes y la electrónica de consumo. Este rey es conocido por ser un
buen comunicador y por unifi-
car a las tribus danesas, norue-
Los dispositivos Bluetooth se clasifican en tres clases, dependiendo de su po- gas y suecas.

tencia y de su alcance de comunicación. La tabla 1 muestra las clases dispo-


nibles.

Tabla 1. Dispositivos Bluetooth

Clase Potencia máxima Rango aproximado

1 100 mW 100 m

2 2,5 mW 10 m

3 1 mW 1m

El estándar Bluetooth está enfocado a dispositivos que disponen de batería.


Así pues, tanto el rendimiento de las aplicaciones que se ejecuten como la
seguridad de los dispositivos Bluetooth estarán limitados, por un lado, por el
consumo energético y, por otro, por su coste.

Las redes Bluetooth se crean siguiendo una topología de estrella con ocho
miembros como máximo, uno de los cuales actúa como maestro. Los demás
miembros adoptan el papel de esclavos. Cada una de estas redes se conoce con
el nombre de piconet. Dada la topología de las piconets, las comunicaciones con
Bluetooth siempre implican un dispositivo maestro, lo cual permite que se
© FUOC • PID_00228248 64 Seguridad y privacidad en las smart cities

produzca comunicación tanto desde un maestro hacia un esclavo como desde


un esclavo hacia un maestro. Si dos dispositivos esclavos quieren comunicarse
entre sí, necesitan que un dispositivo maestro actúe como intermediario. Pa-
ra optimizar esta comunicación, uno de los dispositivos esclavos implicados
puede decidir crear una nueva piconet y convertirse en su maestro, ya que así
puede comunicarse directamente con el otro dispositivo. Un dispositivo puede
pertenecer a más de una piconet al mismo tiempo, pero solo puede ser maestro
de una como máximo.

3.2.2. Seguridad en dispositivos Bluetooth

La arquitectura de seguridad de Bluetooth permite obtener las propiedades


de confidencialidad, integridad y autenticación. El hecho de que los sistemas
de cifrado que se utilizan sean de clave simétrica implica que no se puede
conseguir la propiedad de no repudio.

Poca seguridad
Los dispositivos Bluetooth pueden operar en tres modos de seguridad:
De hecho, el modo de seguri-
• Modo�de�seguridad�1. Este es el modo más inseguro, ya que no in- dad 1 no se debería considerar
de seguridad, pero las especifi-
corpora ningún mecanismo de seguridad. Así, permite la conexión caciones de la arquitectura así
lo indican.
entre cualquier dispositivo o aplicación.

• Modo�de�seguridad�2 (nivel de servicio). Este es el modo de seguri-


dad que actúa en el ámbito del servicio. El dispositivo deja realizar
conexiones pero después aplica la seguridad y restringe el uso de las
aplicaciones. En este caso, la política de seguridad se aplica después
de la conexión.

• Modo�de�seguridad�3 (nivel de enlace). Este es el modo de seguri-


dad que actúa directamente en los enlaces. Por tanto, la política de
seguridad se aplica ya antes de hacer la conexión.

A continuación pasaremos a detallar los diferentes modos de seguridad de la


arquitectura Bluetooth. Nos centraremos solo en los modos de seguridad 2 y 3,
es decir, el que opera en el ámbito del servicio y el que lo hace en los enlaces, ya
que el modo de seguridad 1 no tiene ningún interés porque no ofrece ningún
tipo de seguridad.

Modo de seguridad 2: nivel de servicio

El modo de seguridad que actúa en el ámbito de servicio tiene una seguridad


más débil que el modo de seguridad 3. Esto se debe a que las restricciones se
aplican cuando la comunicación entre los dispositivos ya ha sido efectuada.
La justificación para utilizar este nivel de seguridad en lugar del nivel 3 reside
© FUOC • PID_00228248 65 Seguridad y privacidad en las smart cities

en que si se restringen las conexiones en los enlaces, no es posible diseñar


aplicaciones más abiertas, como el intercambio de tarjetas de negocio o la
consulta de los servicios ofrecidos por un dispositivo.

(21)
El componente clave que implementa la política de seguridad es el gestor�de En inglés, security manager.
21
seguridad .

El gestor�de�seguridad se encarga, entre otras tareas, de:

• almacenar información de seguridad de los servicios; El PIN

Los dispositivos Bluetooth dis-


• almacenar información de seguridad de los dispositivos; ponen de un PIN para auten-
ticar a los usuarios. Dicho PIN
tiene una longitud de entre
• aceptar o rechazar las peticiones de acceso generadas por los protocolos o uno y dieciséis bytes (normal-
mente, cuatro dígitos) y el
las aplicaciones; usuario puede cambiar su valor
cuando desee.

• forzar la autenticación o el cifrado antes de conectar con la aplicación, y

• pedir el PIN al usuario o a la aplicación correspondiente.

La política de seguridad que interpreta el gestor de seguridad se basa en la


información almacenada en dos bases de datos: la de los dispositivos y la de
los servicios.

La base de datos de los dispositivos mantiene información de los requisitos


de seguridad de los dispositivos en función de la confianza que se tiene sobre
dichos dispositivos. Así, se especifican dos niveles de confianza:

• Dispositivos�de�confianza. Son aquellos que han sido previamente au-


tenticados, hay una clave de enlace almacenada y en la base de datos están
marcados como dispositivos de confianza.

• Dispositivos�untrusted. Son aquellos que han sido previamente autenti-


cados, hay una clave de enlace almacenada y en la base de datos no están
marcados como dispositivos de confianza. Normalmente, se aplica este ni-
vel de seguridad a los dispositivos con los que no se tiene una relación
permanente.

La base de datos de los dispositivos puede estar especificada para cualquier


servicio o se puede mantener separada para cada servicio o para un conjunto
de servicios.

La base de datos de los servicios especifica las necesidades de seguridad de los


diferentes servicios. Así, los servicios se dividen en:
© FUOC • PID_00228248 66 Seguridad y privacidad en las smart cities

• Servicios�abiertos: aquellos en los que no se restringe el acceso y para los


que no se requiere ningún tipo de información.

• Servicios�con�autenticación: aquellos en los que los diferentes dispositi-


vos tienen que autenticarse para acceder a ellos.

Ejemplo

En muchas webs solo hay que registrarse para obtener un servicio. Este sería el caso de
servicio con autenticación. En cambio, en otras webs, como por ejemplo las de las enti-
dades bancarias, aparte de identificarte, es preciso estar autorizado para poder operar.

• Servicios� con� autenticación� y� autorización: son los servicios más res-


tringidos que existen y requieren tanto un proceso de autenticación como
un proceso de autorización. Es decir, no es suficiente con el hecho de decir
quién eres, sino que además tienes que estar autorizado.

La base de datos de servicios también especifica si un servicio requiere que los


datos que se intercambien estén cifrados o sean texto claro.

El gestor de seguridad, situado desde un punto de vista conceptual entre el


nivel de enlace y el nivel de aplicación, implementa la política de seguridad
por la vía de peticiones y respuestas de los dos niveles y basándose en las
informaciones incluidas en las dos bases de datos mencionadas. Además, el
gestor de seguridad se encargará también de la petición y comprobación del
PIN del usuario para realizar los procesos de autenticación.

Modo de seguridad 3: nivel de enlace

El modo de seguridad en el nivel de enlace es el sistema más seguro especi-


ficado en la arquitectura Bluetooth, ya que las restricciones de seguridad se
aplican antes de la conexión entre los dispositivos y, de esta manera, se puede
minimizar el riesgo de ataques de dispositivos ya conectados. Este modo de
seguridad permite obtener las propiedades de autenticación, confidencialidad
e integridad.

Para obtener estas propiedades, la arquitectura Bluetooth dispone de las si-


guientes entidades:

• Dirección�del�dispositivo�Bluetooth�(BD_ADDR). Cada dispositivo Blue-


tooth tiene una dirección única de cuarenta y ocho bits. Esta dirección
equivale a las direcciones MAC de las tarjetas de red.

(22)
• Clave�de�enlace22�(Ke). Para llevar a cabo el proceso de autenticación de En inglés, link key.

los dispositivos, la arquitectura Bluetooth utiliza una clave de 128 bits.

• Clave�de�cifrado�(Kx). La confidencialidad en la transmisión de los datos


se obtiene por medio de una clave de cifrado, diferente de la clave de enla-
ce, que puede tener una longitud de entre 8 y 128 bits. Esta clave también
© FUOC • PID_00228248 67 Seguridad y privacidad en las smart cities

se utiliza para obtener la propiedad de integridad, propiedad que queda


incluida cuando se obtiene la confidencialidad.

• Número� aleatorio� (RAND). Los dispositivos Bluetooth disponen de un


generador pseudoaleatorio que les permite obtener, cuando es preciso, di-
ferentes valores pseudoaleatorios de 128 bits.

Basándose en las entidades que acabamos de describir, el proceso de autenti-


cación de un dispositivo con el modo de seguridad 3 se describe en la figura 14.

Figura 14. Proceso de autenticación

El proceso de autenticación sigue el modelo reto-respuesta. Los pasos que se


siguen en el esquema de la figura 14 son los siguientes:

(23)
1) El verificador envía al probador un reto en forma de valor aleatorio RAND. Del inglés, authenticated ciphe-
ring offset.
Utilizando la función E1 con las entradas RAND, la dirección de P, BD_ADDRP
y la clave de enlace Ke, el verificador obtiene SRES'. Además, también obtiene
Nomenclatura
un valor ACO23, que se utiliza después para obtener la clave de cifrado.
Denominaremos al dispositivo
que quiere autenticarse proba-
2) El probador, con el valor RAND y el resto de los valores, calcula una respues- dor, mientras que el dispositi-
vo que valida la autenticación
ta SRES al mismo tiempo que obtiene el mismo valor ACO que el verificador. será el verificador.

3) El probador envía la respuesta al verificador, que comprueba que SRES' =


SRES y, por tanto, valida la identidad del probador.

Para obtener autenticación mutua, se repite el proceso intercambiando el rol


que representan las dos partes en el protocolo anterior. Como ya hemos men-
cionado, un proceso de autenticación reto-respuesta como el descrito requiere
que los dos interlocutores conozcan un valor antes del proceso de autentica-
ción, en este caso la clave de enlace, Ke.
© FUOC • PID_00228248 68 Seguridad y privacidad en las smart cities

En cuanto a la propiedad de confidencialidad, el modo de seguridad 3 de la


arquitectura Bluetooth utiliza un criptosistema de cifrado en flujo denomina-
do E0.

Tal como se muestra en la figura 15, a partir de la dirección de A, BD_ADDRA,


y la clave de cifrado, Kx, el criptosistema E0 genera una secuencia aleatoria,
denotada en la figura por Kstr, que se utiliza para cifrar o para descifrar la
información que circula entre los dos dispositivos. De este modo, por medio
de los datos que se envían cifrados, se obtienen las propiedades de integridad
y confidencialidad.

Figura 15. Generación de la clave de cifrado Kx

Como vemos, la clave de cifrado es el único elemento secreto que comparten


los dos dispositivos. Este valor se genera a partir de un valor aleatorio, la clave
de enlace, y un tercer valor llamado ciphering offset number (COF), tal como se
muestra en la figura 16.

Figura 16. Generación


del COF

El valor COF es, en general, el valor ACO intercambiado durante el proceso de


autenticación. La longitud de la clave de cifrado obtenida varía de 8 a 128 bits,
y en cada caso se fija por medio de una negociación entre los dos dispositivos.
En cada dispositivo hay un parámetro que define la máxima longitud de clave
permitida. Cada aplicación tiene también un mínimo aceptable de longitud
de clave.
© FUOC • PID_00228248 69 Seguridad y privacidad en las smart cities

3.3. ZigBee

Como hemos comentado anteriormente, la tecnología ZigBee es utilizada muy


frecuentemente en las redes de sensores que podemos encontrar en una smart
city. Por ello, el estudio de esta tecnología resulta de especial interés para la
presente asignatura. En este subapartado describiremos algunas de las funcio-
nalidades que ofrece el estándar ZigBee. En primer lugar, expondremos las
principales características de las redes ZigBee y su arquitectura. A continua-
ción, repasaremos los dispositivos que reconoce la especificación de ZigBee y
las posibles configuraciones que permiten agruparlos.

Después de la descripción de la especificación de ZigBee, nos centraremos en El origen del nombre


los aspectos de seguridad que prevé: analizaremos los diferentes modos de se- ZigBee

guridad, estudiaremos las diferentes claves que utilizan los dispositivos ZigBee Se dice que el nombre ZigBee
y su función, y detallaremos los diferentes servicios de seguridad que ZigBee viene de un paralelismo con la
forma en que se comunican las
especifica para cada una de las capas. abejas, realizando una especie
de danza para comunicar in-
formación importante a otros
miembros de la colmena. Esta
3.3.1. Descripción de la especificación ZigBee danza es la que los diseñado-
res de ZigBee intentan emular
con este protocolo, al permitir
ZigBee es el nombre con el que se conoce la especificación de un conjunto de a un conjunto de dispositivos
sencillos comunicarse y traba-
protocolos para redes WPAN basadas en el estándar IEEE 802. Está diseñado jar juntos para llevar a cabo ta-
para ser utilizado en dispositivos de radiofrecuencia de corto alcance que dis- reas complejas.

ponen de baja potencia y que requieren una tasa de transmisión de datos baja.
ZigBee se diferencia así de otros protocolos para WPAN, como por ejemplo
Bluetooth, que permiten alcanzar tasas de transmisión de datos mucho más
elevadas pero que tienen un consumo energético también mucho más alto.
Precisamente el bajo consumo energético es lo que hace que la especificación
ZigBee se utilice con mucha frecuencia para el despliegue de redes de sensores
en ciudades, puesto que estos sensores suelen ser dispositivos con poca poten-
cia y se alimentan con batería, por lo que necesitan consumir poca energía.

Las principales características de ZigBee son las siguientes:

• Bajo�consumo. Los dispositivos ZigBee pueden estar funcionando durante


años con el mismo par de baterías AA. Esto es posible porque no es preciso
que los dispositivos de una red ZigBee estén constantemente enviando
mensajes (pueden estar dormidos).

• Estándar�abierto. La especificación de ZigBee es un estándar abierto, lo


que permite asegurar, por un lado, la interoperabilidad de dispositivos y,
por otro, el acceso libre a la especificación. A pesar de todo, la licencia de
ZigBee permite utilizar el estándar libremente solo para aplicaciones no
comerciales, lo que supone conflictos con ciertas licencias como la GPL.

• Seguridad. ZigBee permite añadir seguridad a las comunicaciones median-


te una serie de servicios que permiten la gestión de claves criptográficas, el
© FUOC • PID_00228248 70 Seguridad y privacidad en las smart cities

cifrado de los mensajes transmitidos y la autenticación de los dispositivos,


entre otras características que veremos a lo largo de este apartado.

• Bajo�coste�de�implementación. Manteniendo una especificación senci-


lla, ZigBee intenta minimizar el coste de crear nuevas aplicaciones que la
utilicen.

• Baja�velocidad�de�transmisión. Para poder ofrecer dispositivos de bajo


consumo y de bajo coste, ZigBee no permite alcanzar velocidades de trans-
misión de datos elevadas, y limita su uso a aplicaciones poco exigentes en
este ámbito.

ZigBee opera en las bandas de frecuencia de 868 MHz (en Europa), 915 MHz
(en América) y 2,4 GHz (en el ámbito global). La tasa de transmisión de datos
máxima que puede alcanzar es de 250 kb/s cuando opera a 2,4 GHz (dieciséis
canales), 40 kb/s a 915 MHz (diez canales) y 20 kb/s a 868 MHz (un canal). La
distancia máxima a la que dos dispositivos ZigBee pueden comunicarse es muy
variable y depende de la potencia de salida y de las condiciones ambientales,
pudiendo variar desde diez metros hasta mil seiscientos.

La especificación de ZigBee está desarrollada por la ZigBee Alliance, una aso-


ciación de empresas, universidades y gobiernos fundada en el 2002 con el ob-
jetivo de desarrollar estándares y productos para redes inalámbricas de bajo
consumo. La ZigBee Alliance se encarga tanto de mantener y actualizar la es-
pecificación de ZigBee como de promocionar y fomentar su uso.

Dado que ZigBee es una especificación de protocolos de alto nivel, se puede


utilizar en multitud de escenarios diferentes. Así, por ejemplo, podemos en-
contrar dispositivos ZigBee utilizados en domótica y automatización, en apli-
caciones comerciales, en dispositivos de fitness o en electrónica de consumo,
por poner varios ejemplos.

Evolución de la especificación ZigBee

La especificación de ZigBee ha ido cambiando con el tiempo, implementando mejoras en


cada nueva versión. La primera versión de la especificación fue aprobada en diciembre
del 2004. Esta primera versión se conoce como ZigBee v1.0 o como ZigBee 2004, y ac-
tualmente se considera obsoleta. Dos años después, en diciembre de 2006, se publicó una
nueva versión (ZigBee 2006). En octubre de 2007, se anunció otra revisión. Esta última
especificación contiene dos perfiles de pila diferentes, ZigBee 2007 y Pro, que presentan
algunas diferencias en relación con las características disponibles y, en consecuencia, con
la memoria necesaria para ejecutarlas.

Arquitectura

ZigBee adopta la especificación de la capa física y de la subcapa de control


de acceso al medio (MAC) del estándar IEEE 802.15.4. De este modo, ZigBee
proporciona una especificación para la capa de red (NWK) y un framework
para la capa de aplicación (APL), y delega en el estándar IEEE 802.15.4 toda
la especificación de bajo nivel.
© FUOC • PID_00228248 71 Seguridad y privacidad en las smart cities

Como se puede apreciar en la figura 17, por lo que respecta a la aplicación


(APL), ZigBee ofrece una subcapa de soporte a las aplicaciones (APS), unos
objetos de dispositivo ZigBee (ZDO) y un framework de aplicación.

Figura 17. Modelo de capas ZigBee

La subcapa APS es una interfaz entre la capa de red (NWK) y la capa de apli- Ved también
cación (APL) que ofrece una serie de servicios disponibles tanto para las apli-
Analizaremos los servicios de
caciones como para el ZDO. Estos servicios incluyen, entre otros, sistemas de seguridad con más detalle en
emparejamiento de dispositivos, fragmentación de mensajes, generación de el subapartado 3.3.2.

PDU de aplicación y servicios de seguridad.

Los objetos ZDO proporcionan una interfaz entre los objetos de aplicación, el PDU
perfil del dispositivo y la subcapa APS. El ZDO es el encargado de inicializar la
PDU, o protocol data unit, es el
subcapa de aplicación (APS) y la capa de red (NWK). Además, también ofrece nombre que recibe el conjunto
servicios de gestión de la red, como el descubrimiento de otros dispositivos o de la información de control
del protocolo y de los datos de
el descubrimiento de servicios. usuario en una capa concreta.

El framework de aplicación puede contener hasta doscientos cuarenta objetos


de aplicación, es decir, de módulos definidos por el usuario que forman parte
de la aplicación ZigBee.
© FUOC • PID_00228248 72 Seguridad y privacidad en las smart cities

Tipos de dispositivos y topologías

Como hemos visto, ZigBee adopta la especificación del IEEE 802.15.4


para la capa de control de acceso al medio. Esta especificación define
dos tipos de dispositivos:

• Dispositivos� con� funcionalidad� completa. Pueden realizar cual-


quier papel dentro de la red, es decir, pueden funcionar como coor-
dinadores, direccionadores o dispositivos finales. Además, pueden
comunicarse con cualquier otro dispositivo de la red.

• Dispositivos�con�funcionalidad�reducida. Solo pueden actuar co-


mo dispositivos finales y solo pueden interaccionar con un único
dispositivo FFD.

ZigBee identifica, por lo que respecta a la red, tres tipos de dispositivos dife- FFD y RFD
rentes:
En inglés, llamamos full-fun-
ction devices o FFD a los dispo-
• Dispositivo�final. Se trata del dispositivo más sencillo, normalmente co- sitivos de funcionalidad com-
pleta y reduced-function devices
nectado a sensores, que corresponde o bien a un RFD o bien a un FFD que o RFD a los dispositivos de fun-
cionalidad reducida.
actúa como dispositivo simple.

• Direccionador. Es un FFD con capacidades de direccionamiento de red. ZE, ZR y ZC

En inglés, llamamos ZigBee end


• Coordinador�ZigBee. Es un FFD que coordina toda la red. device o ZE al dispositivo fi-
nal, ZigBee router o ZR al dis-
positivo direccionador y ZigBee
Teniendo en cuenta los papeles de cada dispositivo en la red y sus intercone- coordinator o ZC al dispositivo
coordinador.
xiones, ZigBee permite estructurar los nodos desplegados en tres topologías
diferentes:

• Estrella. Se trata de la topología más sencilla, formada por un único dis-


positivo coordinador conectado a múltiples dispositivos finales. Con esta
topología, los dispositivos finales no pueden comunicarse directamente.
El coordinador es el responsable de gestionar todas las comunicaciones,
así como de inicializar y mantener todos los dispositivos de la red.

• Árbol. Es una topología jerárquica, en la que cada dispositivo tiene un


único padre (excepto el nodo raíz, que no tiene ninguno). El nodo raíz es
el dispositivo coordinador, que se encarga de la inicialización de la red.
La red se puede extender añadiendo dispositivos direccionadores, que se
encargan de transportar los datos y los mensajes de control utilizando una
estrategia jerárquica.

• Malla. Se trata de una topología no jerárquica, en la que cada dispositivo


puede intentar comunicarse con cualquier otro dispositivo de la red, ya
sea directamente, ya sea por medio de algún dispositivo direccionador.
© FUOC • PID_00228248 73 Seguridad y privacidad en las smart cities

Las rutas entre nodos se crean bajo demanda y pueden ser modificadas
dinámicamente, lo que permite a esta topología adaptarse a los cambios
de la red.

3.3.2. Seguridad en dispositivos ZigBee

La seguridad de ZigBee se basa en un modelo de confianza abierta en el que las


diferentes aplicaciones que corren en un mismo dispositivo, así como las dife-
rentes capas de la pila de comunicaciones, confían unas en otras. Este modelo
de confianza permite que tanto las diferentes aplicaciones como las diferentes
capas compartan las claves, con lo que se consigue ahorrar recursos, normal-
mente escasos en redes de sensores. El uso de este modelo implica que solo
existe protección en el ámbito criptográfico entre los diferentes dispositivos
de la red.

Otras decisiones de diseño de la arquitectura de ZigBee también afectan a la


seguridad, como por ejemplo el principio de que cada capa es responsable de
la seguridad de los mensajes que se originan en ella.

(24)
La especificación de ZigBee proporciona herramientas para garantizar la au- En inglés, freshness.
tenticación, la confidencialidad y la integridad de los datos transmitidos. Ade-
más, también ofrece herramientas para garantizar el frescor24, es decir, para
asegurar que un atacante no podrá reutilizar paquetes capturados durante una
comunicación válida.

(25)
La especificación de ZigBee define la existencia de un dispositivo especial en En inglés, trust center.
25
cada red llamado centro de confianza , que goza de la confianza de todos los
dispositivos de aquella red.
© FUOC • PID_00228248 74 Seguridad y privacidad en las smart cities

El centro de confianza se puede utilizar para la distribución de claves y


puede operar en dos modos diferentes:

• Modo�de�alta�seguridad. Este modo está diseñado para aplicacio-


nes comerciales que necesiten un alto nivel de seguridad. Cuando
el centro de confianza se encuentra configurado en este modo, de-
be mantener una lista con todos los dispositivos y todas las claves
necesarias para asegurar que se cumplen las políticas de renovación
de claves y de admisión en la red. Además, cuando se está operando
en este modo, se verifica el frescor de todas las tramas entrantes, y
se asegura así que no son tramas duplicadas.

• Modo�de�seguridad�estándar. Este modo está diseñado para aplica-


ciones residenciales que necesiten un nivel de seguridad bajo. Cuan-
do el centro de confianza se encuentra configurado en este modo,
no es necesario que mantenga todas las claves (solo la clave de red,
que describiremos más adelante), aunque sí que debe controlar las
políticas de admisión de la red. De este modo, se consigue que la
memoria necesaria para que opere el centro de confianza no crezca
con el número de dispositivos de la red, como sucedía en el modo
de alta seguridad.

Claves

ZigBee utiliza claves simétricas para establecer comunicaciones seguras. La se-


guridad de las comunicaciones depende de la correcta inicialización e instala-
ción de dichas claves. La arquitectura de seguridad se vale de tres claves dife-
rentes para ofrecer seguridad:

• Clave�de�enlace. Se trata de una clave de 128 bits solo compartida por dos
dispositivos que se utiliza para asegurar la comunicación unicast entre dos
entidades APL. Un dispositivo puede adquirir una clave de enlace o bien
utilizando los servicios de la subcapa APS de transporte de clave o de esta-
blecimiento de clave, o bien por medio de la preinstalación de la clave (por
ejemplo, en la fábrica). La clave de enlace también se utiliza para generar
claves derivadas para diferentes servicios de la red usando funciones de
un solo sentido. De este modo, se consigue utilizar claves independientes
para ejecutar diferentes protocolos de seguridad, y se evitan interacciones
no deseadas.

• Clave�maestra. La clave maestra se emplea en el protocolo de estableci-


miento de claves simétricas (por ejemplo, para generar claves de enlace).
Un dispositivo puede adquirir la clave maestra por medio del servicio de
transporte de clave, mediante preinstalación o a partir de alguna informa-
ción que proporciona el usuario (como una contraseña, por ejemplo).
© FUOC • PID_00228248 75 Seguridad y privacidad en las smart cities

• Clave�de�red. Es una clave de 128 bits compartida entre todos los disposi-
tivos de la red que se utiliza tanto para enviar mensajes de broadcast desde
la subcapa de aplicación (APS) como para enviar mensajes desde la capa de
red (NWK). Un dispositivo debe adquirir una clave de red o bien mediante
el servicio de transporte de la clave o bien mediante preinstalación.

La clave de enlace y la clave maestra solo son accesibles desde la subcapa APS,
mientras que la clave de red se encuentra disponible tanto desde la capa APL
como desde la capa NTW.

Seguridad en la capa de red

Los mensajes ZigBee se protegen criptográficamente en la capa de red cuando


se originan en esta capa (según el principio de que cada capa es responsable
de la seguridad de los mensajes que se originan en ella) o cuando se originan
en una capa superior y se especifica explícitamente que se tienen que proteger
en el ámbito de la red.

La especificación de ZigBee exige el uso de AES (Advanced Encryption Stan-


dard) como algoritmo de cifrado. Dado que AES es un algoritmo de cifrado
en bloque, la especificación también fija cómo hay que utilizarlo para prote-
ger los mensajes, es decir, el modo de operación. ZigBee utiliza AES en modo
CCM* (counter with cipher block chaining message authentication code), un modo
que combina cifrado y autenticación, de manera que tanto el mensaje cifrado
como el valor del campo de integridad son el resultado de aplicar AES-CCM*
sobre la carga de la trama de red. El modo CCM* también permite operar en
modo solo de cifrado (sin autenticación) o en modo solo de autenticación (sin
cifrado).

Seguridad en la capa de aplicación

La subcapa APS se encarga de la seguridad de los mensajes originados en la


capa de aplicación, utilizando o bien la clave de enlace (para mensajes unicast)
o bien la clave de red (para mensajes broadcast).

La subcapa APS de la capa de aplicación también es la responsable de ofrecer


servicios de seguridad a las aplicaciones y al ZDO. En los siguientes subapar-
tados, veremos qué servicios de seguridad ofrece la subcapa APS y cómo fun-
cionan.

Gestión�de�claves

La subcapa APS ofrece cuatro servicios básicos de gestión de claves: el estable-


cimiento de clave, el transporte de clave, la petición de una clave y el cambio
de clave.
© FUOC • PID_00228248 76 Seguridad y privacidad en las smart cities

El servicio de establecimiento�de�clave permite que dos dispositivos ZigBee


puedan derivar una clave secreta compartida (una clave de enlace) a partir de
una información secreta compartida previamente (la clave maestra). El proto-
colo de establecimiento de claves se lleva a cabo entre dos dispositivos, uno
que inicia el protocolo y otro que responde a la petición de establecimiento
de claves. Antes, los dos dispositivos deben compartir algún secreto, que se
puede obtener a través del centro de confianza. Así pues, para establecer una
clave, se siguen los pasos que exponemos a continuación:

1) establecer una relación de confianza;

2) intercambiar datos efímeros;

3) utilizar los datos efímeros para derivar una clave de enlace, y

4) confirmar que las claves se han calculado de forma correcta.

Otra alternativa para obtener una clave es el envío de dicha clave a través de
un canal, preferiblemente seguro. El servicio de transporte�de�clave del APS
permite que un dispositivo envíe una clave a otros dispositivos. El servicio
puede operar de manera segura, protegiendo criptográficamente las claves en-
viadas, o de manera no segura, sin ofrecer ningún tipo de protección sobre
el contenido enviado. En este último caso, se entiende que la seguridad del
transporte de la clave se garantizará por algún otro medio (no criptográfico).

Cuando el transporte de clave se hace en modo seguro, se utilizan claves es- Clave de transporte y
pecíficas para cifrar los mensajes que transportan las claves. Si la clave que se clave de carga

transporta es una clave maestra, se utiliza la clave para carga de clave (key-load La clave de transporte de cla-
key), mientras que para cualquier otra clave se utiliza la clave para transporte ves se obtiene utilizando co-
mo entrada el valor 0x00 y co-
de clave (key-transport key). Tanto la clave para carga como la de transporte de mo clave la clave de enlace. En
cambio, la clave de carga de
claves son claves derivadas de la clave de enlace utilizando HMAC (hash-based clave utiliza como entrada el
valor 0x02 (y también la clave
message authentication code) con la función de hash Matyas-Meyer-Oseas. de enlace como clave).

La subcapa APS también proporciona servicios para solicitar una clave o para
informar a otro dispositivo de que debería cambiar de clave. El servicio de
solicitud�de�clave permite a un dispositivo pedir una clave (o bien la clave de
red activa o bien una clave maestra) a otro dispositivo de manera segura. El
servicio de cambio�de�clave permite a un dispositivo informar a otro de que
debería cambiar a una clave de red activa diferente de manera segura.

Modificación�de�la�red

La capa APL también dispone de servicios para eliminar un dispositivo de la red


de manera segura y para informar de tales cambios, así como de cualesquiera
otros cambios de estado, a otros dispositivos de la red.
© FUOC • PID_00228248 77 Seguridad y privacidad en las smart cities

El servicio para eliminar un dispositivo permite a un dispositivo como el cen-


tro de confianza informar a otro dispositivo, por ejemplo al direccionador, de
que uno de sus hijos debería ser eliminado de la red. Este servicio puede re-
sultar útil, por ejemplo, si se quiere eliminar de la red un dispositivo que no
cumple los requisitos de seguridad que establece el centro de confianza.

El servicio de actualización permite a un dispositivo informar a un segundo


de que un tercero ha cambiado su estado. Así, el centro de confianza puede
mantener una lista actualizada de los dispositivos activos en la red.

Autenticación

La subcapa de soporte de aplicación también ofrece el servicio de autentica-


ción de entidades, lo cual permite a los dispositivos sincronizar información y
asegurar al mismo tiempo la autenticidad de los dispositivos implicados. Op-
cionalmente, también permite autenticar no solo los dispositivos, sino tam-
bién los datos que se están transmitiendo. La autenticación se lleva a cabo a
partir de un secreto compartido previamente, en este caso, una clave compar-
tida entre los dispositivos.

3.4. Comparativa y discusión de la seguridad

Como hemos visto, la tecnología RFID se utiliza en dispositivos muy diversos,


desde etiquetas pasivas que no disponen de ningún tipo de batería para operar
de manera autónoma y con unos recursos de cómputo muy limitados, hasta
dispositivos activos, que disponen de batería y de una capacidad de cómputo
mucho más elevada. Toda esta gama de dispositivos RFID responde a diferentes
exigencias del mercado, donde el coste de cada etiqueta es un factor clave. El
área de la etiqueta, medida en puertas lógicas equivalentes, determinará las
capacidades de cómputo del dispositivo y, por tanto, limitará los mecanismos
de seguridad que se puedan desplegar. Así pues, el nivel de seguridad que se
pueda conseguir depende en gran medida del dispositivo RFID concreto que
se esté utilizando.

Como hemos visto, se está trabajando en desarrollar protocolos y primitivas


criptográficas que requieran pocos recursos de cálculo para ser implementa-
dos. De este modo, se puede dotar incluso a los dispositivos más sencillos de
algún nivel de seguridad. A pesar de ello, las necesidades de recursos de ciertos
mecanismos, como por ejemplo la criptografía de clave pública, todavía están
muy lejos de los que se encuentran disponibles en la mayoría de los disposi-
tivos RFID.
© FUOC • PID_00228248 78 Seguridad y privacidad en las smart cities

Los dispositivos Bluetooth no se encuentran tan limitados por los recursos


disponibles. A diferencia de la RFID, Bluetooth tiene una especificación de
seguridad que describe sus modos de uso y los mecanismos de seguridad que
se tienen que utilizar con cada configuración. A pesar de ello, algunos puntos
del diseño de la seguridad hacen disminuir su robustez.

Desde el punto de vista del cifrado, el criptosistema de flujo E0 no es lo bas-


tante robusto, ya que se ha demostrado que se puede romper bajo ciertas cir-
cunstancias.

Sin embargo, la problemática más importante proviene de los mecanismos


de autenticación. Como hemos visto, la clave de enlace es muy importante
y puede ser de diferentes tipos. En el caso de no existir una conexión previa
entre los dispositivos, la clave de enlace se obtiene por medio de la clave de
inicialización. Esta clave se genera, básicamente, a partir del PIN, ya que el va-
lor aleatorio se transmite como texto claro de un dispositivo a otro. Teniendo
en cuenta que los PIN están formados por cuatro dígitos, el número de posi-
bilidades es bastante bajo. Por otro lado, se produce un caso peor cuando se
utiliza la clave de dispositivo como clave de enlace. Ya hemos comentado que
la clave de dispositivo se genera al inicializarlo y raramente se cambia. Este
hecho provoca que, una vez que un dispositivo A ha utilizado su clave de dis-
positivo como clave de enlace para autenticarse ante B, el siguiente proceso de
autenticación de A ante un tercer dispositivo con su clave de dispositivo como
clave de enlace no puede ser fiable, ya que el dispositivo B podría hacerse pasar
por A (dado que conoce su clave de dispositivo).

Finalmente, hay que destacar que los esquemas de seguridad que incorpora la
arquitectura Bluetooth autentican dispositivos pero no a usuarios. Este hecho,
junto con la poca longitud del PIN, hace que no resulte adecuado en ciertas
aplicaciones.

Al igual que Bluetooth, ZigBee es una especificación de un conjunto de pro-


tocolos de comunicaciones. La especificación de seguridad de ZigBee también
prevé el uso de diferentes modos de seguridad que permiten ajustar las nece-
sidades de seguridad según la aplicación. Como hemos visto, la seguridad de
ZigBee se basa en el uso de dos claves de 128 bits: la clave de enlace y la clave
de red. Esta última, compartida entre todos los dispositivos de una misma red,
es uno de los puntos por los que se puede atacar fácilmente una red ZigBee.
Un atacante puede obtenerla, por ejemplo, interceptando su transmisión por
el canal fuera de banda o consiguiendo acceder a uno de los dispositivos de
la red y extrayendo la información que contiene. Conociendo esta clave, un
atacante puede descifrar todas las comunicaciones broadcast de la red.

ZigBee también propone el uso de un centro de confianza en el que confían


todos los nodos de la red. El centro de confianza es responsable del control de
admisión de los nodos y de la distribución de claves. Mientras que disponer
© FUOC • PID_00228248 79 Seguridad y privacidad en las smart cities

de un centro de confianza permite mantener un control centralizado sobre la


seguridad de la red, también supone un único punto de error que un atacante
puede aprovechar.

Más allá de los mecanismos de seguridad que implementan, ZigBee y Blue-


tooth presentan algunas similitudes, aunque también numerosas diferencias.
Mientras que una red ZigBee puede tener hasta 65.535 nodos (en subredes de
255), una piconet Bluetooth solo puede tener ocho. El consumo de los dispo-
sitivos también es un punto diferenciador: mientras que los dispositivos Zig-
Bee consumen menos de 1 mW, los dispositivos Bluetooth pueden consumir
hasta 100 mW. En relación con la velocidad de transmisión, Bluetooth ofrece
hasta 3 Mb/s (velocidad nominal en la versión 2.2), mientras que con ZigBee
solo se llega a los 250 kb/s. Tales diferencias provocan que Bluetooth se utilice
normalmente en teléfonos móviles o dispositivos portátiles y que el uso de
ZigBee se encuentre más extendido en otros ámbitos, como la domótica o las
redes de sensores de una smart city.
© FUOC • PID_00228248 80 Seguridad y privacidad en las smart cities

4. Privacidad en las smart cities

La minería de datos (data mining, en inglés) es el proceso de extraer informa- Lecturas


ción útil, interesante y desconocida hasta el momento de conjuntos de datos. complementarias

El éxito de la minería de datos se basa en la disponibilidad de datos de cali- D.�M.�Carlisle;�M.�L.�Ro-


dad sobre los que ejecutar estos procesos. En este sentido, la recopilación de la drian;�C.�L.�Diamond (2007,
julio). California inpatient da-
información digital por parte de gobiernos, corporaciones e individuos debe ta reporting manual, medical
information reporting for Ca-
facilitar el intercambio y la disponibilidad de datos a gran escala para su pos-
lifornia (5.ª ed.). Technical
terior análisis. Existe una demanda de intercambio de datos entre varios acto- report, Office of Statewide
Health Planning and Deve-
res impulsada, por una parte, por los beneficios mutuos y, por otra parte, por lopment.
las regulaciones que requieren que ciertos datos sean publicados. Por ejemplo,
en Estados Unidos se requiere que los hospitales de California publiquen los
datos demográficos específicos de todos los pacientes dados de alta en sus ins-
talaciones. Generalmente, la publicación de datos en abierto (open data, en
inglés) que incluyan datos personales puede inducir a un quebrantamiento de
la privacidad, si no se tratan adecuadamente.

4.1. Introducción

En junio de 2004, el Comité Consultivo de Tecnologías de la Información (In-


formation Technology Advisory Committee) de Estados Unidos publicó un in-
forme titulado “Revolucionando la atención sanitaria a través de las tecnolo-
gías de la información”. Un punto clave fue establecer un sistema nacional de
registros médicos electrónicos que fomentara el intercambio de conocimien-
tos médicos. Ejemplos similares se pueden encontrar en prácticamente todos
los dominios. Por ejemplo, Netflix, un popular servicio de alquiler de películas
en línea, publicó un conjunto de datos que contiene calificaciones de sus pe-
lículas de 500.000 suscriptores, en un intento por mejorar la precisión de las
recomendaciones de las películas basadas en las preferencias personales. De
modo similar, AOL, un conocido buscador de páginas web que opera en Esta-
dos Unidos, publicó un conjunto de registros de consultas, pero rápidamente
se vio obligado a retirar los datos debido a la identificación de un usuario en
esos datos.

Una tarea de gran importancia en este contexto es el desarrollo de métodos Lecturas


y herramientas que permitan la publicación de datos, de manera que estos complementarias

mantengan su utilidad al mismo tiempo que preservan la privacidad de los M.�Barbaro;�T.�Zeller (2006,
usuarios que aparecen en ellos. Este proceso se llama preservación de la priva- 9 de agosto). “A face is ex-
posed for AOL searcher no.
cidad en la publicación de datos (en inglés, privacy-preserving data publishing o 4417749”. New York Times.
PPDP), y puede ser visto como una respuesta de carácter técnico para comple-
mentar las políticas de privacidad que cada país o región implementa.
© FUOC • PID_00228248 81 Seguridad y privacidad en las smart cities

4.1.1. Publicación de datos

El escenario típico de la recopilación y publicación de datos se describe en la


figura 18. En la fase de recogida de datos, el titular de los datos recopila infor-
mación de los distintos usuarios. A continuación, el propietario de los datos
recopilados, datos originales en la figura, debe proteger y asegurar la privaci-
dad de los usuarios que aparecen antes de hacer público ese conjunto de datos.
Este proceso, llamado anonimización o preservación de la privacidad, será el
encargado de asegurar que no es posible identificar a un usuario dentro del
conjunto de datos protegidos o anónimos. En la fase de publicación, el pro-
pietario de los datos recopilados publica los datos protegidos para su posterior
explotación. Esta publicación de datos protegidos puede hacerse de forma pú-
blica y accesible para cualquier persona o entidad, o de manera privada a un
conjunto de empresas o centros autorizados.

Figura 18. Escenario básico para la publicación de datos

Publicación de datos médicos

Por ejemplo, un hospital recoge datos de los pacientes y comparte los registros de los
pacientes con un centro médico externo. En este ejemplo, el hospital es el titular de los
datos, los pacientes son propietarios de sus propios datos y el centro médico externo es el
receptor de los datos. Las tareas de minería de datos que el centro médico externo puede
realizar sobre los datos protegidos pueden ser de cualquier tipo, desde un simple recuento
del número de hombres con diabetes hasta un sofisticado análisis de grupos de pacientes
según sus características fisiológicas y demográficas.

4.1.2. Preservación de la privacidad en la publicación de datos

Tradicionalmente, los datos se han presentado en forma de tablas, donde cada


fila corresponde a un registro o elemento (un usuario en nuestro caso) y cada
columna corresponde a un atributo, propiedad o característica. Por lo tanto,
cada registro tiene un valor concreto para cada uno de los atributos de la tabla.
La tabla 2 muestra el formato típico de un conjunto de datos en forma de
tabla. En este caso, podemos ver un total de n filas o registros y m atributos.

Tabla 2. Ejemplo de tabla con n registros y m atributos

Atributo 1 Atributo 2 ... Atributo m

valor 1-1 valor 1-2 ... valor 1-m

... ... ... ...

valor n-1 valor n-2 ... valor n-m


© FUOC • PID_00228248 82 Seguridad y privacidad en las smart cities

Los atributos de una tabla se dividen en cuatro clases según el tipo de infor-
mación que contienen:

• Los identificadores son un conjunto de atributos que permiten identifi-


car de forma explícita a un individuo. El nombre, DNI o número de la
seguridad social son ejemplos de atributos identificadores.

• Los cuasi-identificadores son un conjunto de atributos que potencial-


mente podrían identificar a un individuo.

• Los atributos�sensibles presentan información específica y sensible de un


individuo en concreto, como por ejemplo las enfermedades que padece,
su salario o sus preferencias sexuales o religiosas.

• Finalmente, los atributos�no�sensibles son todos los atributos que no ca-


ben en ninguna de las categorías anteriores.

Obviamente, los atributos identificadores deben ser eliminados antes de pu-


blicar los datos. En caso contrario, la identificación de los usuarios es directa
y trivial en los datos publicados.

Aun eliminando todos los identificadores, un estudio de Sweeney en el año Lectura complementaria
2002 consiguió romper la privacidad de un gobernador de Estados Unidos. En
L.�Sweeney (2002). “Achie-
este trabajo, el nombre y otros datos públicos del censo electoral fueron com- ving k-anonymity privacy
binados con una base de datos médicos utilizando el código postal, la fecha protection using generaliza-
tion and suppression”. Inter-
de nacimiento y el género. La figura 19 muestra la intersección de datos entre national Journal of Uncertainty,
Fuzziness, and Knowledge-ba-
los dos conjuntos. Ninguno de estos atributos puede utilizarse para identificar
sed Systems (vol. 10 (5), págs.
a una persona de forma única, pero su combinación conduce frecuentemente 571-588).
a identificar a una única persona o a un grupo reducido de personas. Estos
atributos son los llamados cuasi-identificadores. De esta forma, los autores de
este trabajo consiguieron identificar los datos médicos del gobernador después
de combinarlos con los datos públicos del censo electoral. Estudios posteriores
mostraron que el 87% de la población de Estados Unidos podía ser identifica-
da de modo similar utilizando información públicamente accesible.
© FUOC • PID_00228248 83 Seguridad y privacidad en las smart cities

Figura 19. Combinación de atributos cuasi-identificadores usado por Sweeney en 2002

En el ejemplo anterior, la identidad de un registro se ve comprometida a través


de la combinación de distintos cuasi-identificadores. Para llevar a cabo este
tipo de ataques a la privacidad de los usuarios, es necesario que el atacante
tenga cierto conocimiento externo del usuario objetivo. Este conocimiento
puede ser obtenido de muchas y muy distintas fuentes. Por ejemplo, un ata-
cante puede darse cuenta de que su jefe ha sido hospitalizado durante unos
días concretos, por lo tanto puede saber que aparecerá en los registros que se
hagan públicos de los pacientes del hospital. Por otro lado, no le será muy
difícil descubrir el código postal, fecha de nacimiento y género del individuo
en cuestión, con lo cual puede efectuar este ataque para descubrir información
confidencial de su jefe.

La tabla 3 presenta un ejemplo de conjunto de datos médicos. Como se pue-


de ver, los identificadores han sido eliminados del conjunto, los cuasi-identi-
ficadores contienen los valores originales (código postal, género y edad) y se
mantiene inalterable el atributo sensible (enfermedad), que normalmente es la
información más interesante para el análisis o minería de datos, pero también
es la información que debemos evitar que pueda ser vinculada a un usuario
concreto.

Tabla 3. Ejemplo de tabla de datos médicos

ID Código postal Género Edad Enfermedad

1 08500 Hombre 29 Cáncer

2 17600 Mujer 48 Hepatitis

3 08242 Hombre 21 Gripe

4 25128 Hombre 36 Cáncer

5 17488 Mujer 45 Diabetes

6 08401 Mujer 58 Gripe


© FUOC • PID_00228248 84 Seguridad y privacidad en las smart cities

ID Código postal Género Edad Enfermedad

7 08760 Mujer 72 Hepatitis

8 43840 Mujer 22 Cáncer

9 43500 Hombre 25 Diabetes

10 25310 Mujer 43 Gripe

En estos datos de ejemplo, un atacante puede identificar a un usuario de forma


similar al ataque realizado por Sweeney en el año 2002. Utilizando una combi-
nación de los cuasi-identificadores obtenemos registros individuales, que per-
miten identificar de forma única a un usuario dentro del conjunto. Por ejem-
plo, si una persona conocida por el atacante fue hospitalizada durante el pe-
riodo previo a la publicación de los datos, y el atacante sabe que es un hom-
bre, que reside en la población con código postal 08242 y que tiene 21 años,
entonces el atacante puede saber, sin lugar a dudas, que el registro médico del
usuario corresponde al registro número 3 de los datos publicados, y que por
lo tanto esta persona sufrió una gripe.

Para evitar este tipo de ataques, el propietario de los datos debe aplicar una
serie de operaciones sobre los cuasi-identificadores para impedir que puedan
ser usados para identificar a cualquier usuario dentro de los datos protegidos.

La anonimización o PPDP persigue ocultar la identidad y la información sen-


sible de los usuarios que aparecen en conjuntos de datos, asumiendo al mismo
tiempo que la utilidad de los datos debe ser retenida en los datos protegidos. Es
decir, el análisis ejecutado sobre los datos protegidos debe revelar información
útil y verdadera, de manera similar a los resultados que se obtendrían en los
mismos análisis utilizando los datos originales (no protegidos).

Existen multitud de estrategias de anonimización, pero en general este tipo de


técnicas buscan las formas de ocultar los detalles que puedan hacer a un indi-
viduo único dentro del conjunto de datos. El objetivo es que un único indivi-
duo sea indistinguible respecto a un conjunto de individuos suficientemente
grande para proteger su identidad, de tal modo que el atacante solo puede
deducir cierta información con una cierta probabilidad. La figura 20 muestra
que, a diferencia del escenario básico de publicación de datos visto anterior-
mente, en este caso se añade la tarea de anonimización o PPDP previamente
a la publicación de los datos.
© FUOC • PID_00228248 85 Seguridad y privacidad en las smart cities

Figura 20. Escenario básico considerando la preservación de la privacidad en la publicación de datos

4.2. Métodos de enmascaramiento

Los métodos de enmascaramiento permiten modificar los datos originales con


el objetivo de impedir o dificultar la identificación de un usuario en los datos
protegidos. Estos métodos se pueden clasificar en tres categorías básicas en
función de cómo se manipulan los datos originales para definir el conjunto
de datos protegidos:

• Métodos�perturbativos. El conjunto de datos original es perturbado de


algún modo, y el nuevo conjunto de datos puede contener información
errónea. Por ejemplo, se puede introducir ruido en algunos atributos, es
decir, alterar su valor de manera más o menos aleatoria. De este modo,
algunas combinaciones de valores desaparecen en el conjunto de datos
protegidos. Al mismo tiempo, las combinaciones en los datos protegidos
ya no corresponden a los del conjunto de datos original. Esta ofuscación
dificulta la identificación de usuarios en el conjunto de datos protegidos
por parte de los atacantes.

• Métodos�no�perturbativos. La protección se logra mediante la sustitución


del valor original por otro valor que no es incorrecto pero es menos espe-
cífico, es decir, más general. Por ejemplo, reemplazamos un número por
un intervalo. En general, los métodos no perturbativos reducen el nivel de
detalle del conjunto de datos. Esta reducción del nivel de detalle provoca
que diferentes registros tengan las mismas combinaciones de valores, lo
que dificulta la identificación de usuarios por parte de un atacante.

• Generadores�de�datos�sintéticos. En este caso, en lugar de distorsionar los


datos originales, se crean nuevos datos artificiales para sustituir los valores
originales. Formalmente, los generadores de datos sintéticos construyen
un modelo de datos nuevos a partir del conjunto de datos original y, pos-
teriormente, generan de manera aleatoria un nuevo (y protegido) conjun-
to de datos que si bien sigue las pautas de los datos originales, no contiene
información privada de ningún usuario. Por ejemplo, podemos sustituir
la edad de un conjunto de individuos por valores aleatorios generados a
partir del valor medio y la varianza observada en los datos originales.
© FUOC • PID_00228248 86 Seguridad y privacidad en las smart cities

Por otro lado, los métodos de enmascaramiento deben considerar las peculia-
ridades de los distintos tipos de atributos para reducir las probabilidades de
identificación mientras se mantiene la utilidad de los datos protegidos. Los
atributos se pueden clasificar en dos categorías básicas:

• Los atributos�numéricos, que permiten realizar operaciones aritméticas


entre ellos, como por ejemplo la sustracción o adición. Los ingresos y la
edad son ejemplos típicos de tales atributos. Con respecto al riesgo de iden-
tificación, los valores de los atributos numéricos son propensos a ser úni-
cos en una base de datos y, por lo tanto, pueden provocar la identificación
de usuarios si no se toman medidas oportunas para su anonimización.

• Los atributos�categóricos, que pueden tomar valores en un conjunto fi-


nito; las operaciones numéricas estándar no tienen sentido en este tipo de
atributos. Podemos distinguir tres grupos principales dentro de los atribu-
tos categóricos:
– Nominales. El valor de estos atributos se representa mediante etique-
tas que proporcionan información. Por ejemplo, el color del pelo o el
estado civil son atributos categóricos nominales.

– Ordinales. En este caso los atributos presentan un orden o escala re-


levante entre ellos. Por ejemplo, el nivel de estudios (primaria, secun-
daria, bachillerato, grado, etc.) es un atributo categórico ordinal. En
estos atributos las operaciones de mínimo y máximo tienen sentido.

– Estructurados. Estos atributos mantienen una relación de clase y sub-


clase entre ellos. Por ejemplo, las profesiones pueden seguir una jerar-
quía dada, donde por ejemplo dentro de la clase “médico” podemos
encontrar muchos especializaciones, tales como “ginecólogo”, “pedia-
tra”, etc. En algunos casos la jerarquía puede ser explícita y en otros se
puede inferir a partir de los valores dados y de sus relaciones.

A continuación veremos cada uno de los tres tipos de métodos de enmascara- Lectura complementaria
miento y presentaremos algunos métodos concretos y ejemplos que faciliten
B.�C.�M.�Fung;�K.�Wang;
la comprensión de su funcionamiento. Aun así, una revisión exhaustiva de los A.�Wai-Chee�Fu;�Ph.�S.�Yu
métodos de enmascaramiento queda fuera del alcance de este texto. (2011). Introduction to Pri-
vacy-Preserving Data Publis-
hing: Concepts and Techniques.
United States of America:
4.2.1. Métodos perturbativos
CRC Press.

Los métodos perturbativos alteran los datos e introducen ruido para dificultar
el proceso de identificación de un usuario por parte de un atacante. Existen
multitud de métodos en la literatura, aunque una revisión completa de todos
ellos escapa a los objetivos de este texto y solo veremos aquí algunos de los
métodos más comunes y utilizados en la actualidad.
© FUOC • PID_00228248 87 Seguridad y privacidad en las smart cities

El primer método que veremos es conocido como ruido aditivo (additive noise) Distribución normal
y consiste en añadir distorsión o ruido en los datos originales, ya sea siguien-
La distribución normal, tam-
do o no la misma distribución de los datos originales. Un ejemplo simple de bién conocida como distribu-
este tipo de método es introducir el ruido siguiendo una distribución normal ción gaussiana, es una distribu-
ción de probabilidad de varia-
, donde representa la desviación estándar de los datos originales y p es ble continua. La gráfica de su
función de densidad tiene una
el parámetro que controla la cantidad de ruido introducido en los datos. Este forma acampanada y es simé-
trica respecto a un determina-
método fue desarrollado originalmente para tratar con atributos numéricos, do punto.
aunque posteriormente se han añadido extensiones para poder trabajar con
atributos categóricos.

La tabla 4 muestra una nueva versión del ejemplo que hemos presentado en
la tabla 3. En este caso, hemos aplicado el método additive noise al atributo
“edad”, introduciendo ruido en este atributo y disminuyendo, por lo tanto, la
probabilidad de que un atacante puede identificar a un usuario dentro de los
datos protegidos utilizando información externa.

Tabla 4. Datos médicos después de aplicar additive noise en el atributo “edad”

ID Código postal Género Edad Enfermedad

1 08500 Hombre 32 Cáncer

2 17600 Mujer 46 Hepatitis

3 08242 Hombre 28 Gripe

4 25128 Hombre 38 Cáncer

5 17488 Mujer 48 Diabetes

6 08401 Mujer 61 Gripe

7 08760 Mujer 59 Hepatitis

8 43840 Mujer 20 Cáncer

9 43500 Hombre 24 Diabetes

10 25310 Mujer 55 Gripe

El segundo método que veremos, y que es ampliamente conocido y utilizado


por empresas y administraciones, es conocido como microagregación (micro-
aggregation). Este método se basa en crear grupos de datos según su similitud, y
posteriormente reemplazar el valor original de cada dato por el valor prome-
dio de todos los valores del grupo al que pertenece. Por lo tanto, para cada
valor específico de uno o más atributos existirá siempre un conjunto de regis-
tros, nunca un registro único que permita que sea identificado un usuario. Este
método se puede aplicar sobre un único atributo, y entonces se conoce como
microagregación univariante, o sobre dos o más atributos, y en este caso se
conoce como microagregación multivariante.

El método permite decidir cuántos registros se juntan en un mismo grupo. Es


importante notar que cuantos más registros se juntan en cada grupo, mayor es
el nivel de privacidad que se consigue, pero también es mayor el nivel de ruido.
© FUOC • PID_00228248 88 Seguridad y privacidad en las smart cities

Al igual que el método anterior, este también fue desarrollado para atributos
numéricos, aunque posteriormente también se han desarrollado extensiones
que permiten tratar con atributos categóricos.

La nueva versión del ejemplo, después de aplicar microagregación univariante


sobre el atributo “edad” se puede ver en la tabla 5. En este caso hemos para-
metrizado el método para que cree grupos de dos registros. Como podemos
ver en la tabla, para cada posible valor del atributo “edad”, siempre existen
dos o más registros con el mismo valor. Por ejemplo, en el conjunto de datos
original mostrado en la tabla 3, la edad de los usuarios de la fila 1 y 9 es de
29 y 25 años, respectivamente. Después del proceso aplicado, se ha asignado
la edad de 27 años a ambos usuarios. Así, no es posible que un atacante pue-
da identificar de forma única a un usuario utilizando la información de los
atributos que hemos utilizado para crear los grupos, en este caso concreto, la
edad de los individuos.

Tabla 5. Datos médicos después de aplicar micro-agregación univariante en el atributo “edad”

ID Código postal Género Edad Enfermedad

1 08500 Hombre 27 Cáncer

2 17600 Mujer 46 Hepatitis

3 08242 Hombre 21 Gripe

4 25128 Hombre 39 Cáncer

5 17488 Mujer 46 Diabetes

6 08401 Mujer 65 Gripe

7 08760 Mujer 65 Hepatitis

8 43840 Mujer 21 Cáncer

9 43500 Hombre 27 Diabetes

10 25310 Mujer 39 Gripe

Para finalizar con los métodos perturbativos, veremos un tercer método que
también es muy conocido y utilizado en entornos empresariales y guberna-
mentales. El método, conocido como intercambio de rango (rank swapping, en
inglés), se basa en intercambiar aleatoriamente los valores de un mismo atri-
buto entre distintos registros. Para conseguir que los datos no sean excesiva-
mente perturbados, este método ordena todos los valores del atributo presen-
tes en la tabla, y a continuación el intercambio se realiza entre valores que se
encuentren dentro de un rango acotado y definido como parámetro del mé-
todo. De esta manera se intenta minimizar el ruido y mantener la utilidad de
los datos protegidos. Este método puede ser aplicado a atributos numéricos y
categóricos ordinales.
© FUOC • PID_00228248 89 Seguridad y privacidad en las smart cities

La tabla 6 muestra los resultados de aplicar el método rank swapping sobre el


atributo “edad”. Como se puede ver, los valores del atributo han sido inter-
cambiados entre los registros con valores próximos. Por ejemplo, si ordena-
mos los valores del atributo “edad” de los datos originales, mostrados en la
tabla 3, obtenemos el vector {21, 22, 25, 29,...}. Si aplicamos este método en
un rango de solo dos posiciones obtenemos el vector {22, 21, 29, 25,...}, que
corresponde a los datos presentados en la tabla 6. Los dos primeros valores
corresponden a los registros 3 y 8, que, como se puede apreciar en la tabla,
han intercambiado sus valores. De modo similar, los registros 1 y 9 también
han intercambiado sus valores durante el proceso de anonimización. Y así su-
cesivamente todos los registros de la tabla. Cuanto mayor es el rango que se
utiliza en el intercambio, mayor es el grado de privacidad y mayor es, también,
la distorsión de los datos originales.

Tabla 6. Datos médicos protegidos aplicando rank swapping en el atributo “edad”

ID Código postal Género Edad Enfermedad

1 08500 Hombre 25 Cáncer

2 17600 Mujer 45 Hepatitis

3 08242 Hombre 22 Gripe

4 25128 Hombre 43 Cáncer

5 17488 Mujer 48 Diabetes

6 08401 Mujer 72 Gripe

7 08760 Mujer 58 Hepatitis

8 43840 Mujer 21 Cáncer

9 43500 Hombre 29 Diabetes

10 25310 Mujer 36 Gripe

4.2.2. Métodos no perturbativos

A diferencia de los métodos vistos en el subapartado anterior, los métodos que


veremos en este subapartado no introducen ruido o distorsión en los datos ori-
ginales. La información protegida que se publica continúa siendo totalmente
verdadera, aunque se generalizan o suprimen algunas partes de la información
que podrían ayudar a un atacante a identificar de forma única a un usuario
dentro de los datos protegidos.

Distinguiremos dos métodos básicos: la generalización de atributos y la supre-


sión de atributos.

El método de generalización se aplica normalmente a atributos categóricos,


aunque se puede aplicar a atributos numéricos sin problema alguno. En este
caso los datos se protegen reemplazando un conjunto de atributos por un va-
lor más general que los incluya a todos. Por lo tanto, este método no intro-
© FUOC • PID_00228248 90 Seguridad y privacidad en las smart cities

duce ruido o falsea los datos, simplemente los hace más generales o menos
específicos, de modo que las individualidades de cada usuario del conjunto de
datos original quedan difuminadas entre los demás usuarios en el conjunto
de datos protegido.

En el caso de los atributos numéricos, la agregación se puede implementar me-


diante la construcción de rangos de valores. Por ejemplo, si tenemos registros
con los valores 3,11,7,19, podemos crear dos grupos y asociar un rango con-
creto a cada grupo. En este caso, podríamos crear los rangos [0,10) y [10,20),
y en este caso el primer y el tercer registro tendrían el mismo valor [0,10) en
los datos protegidos.

Por otro lado, en el caso de los atributos categóricos, es necesario disponer


de la jerarquía de los atributos, ya sea de forma implícita o explícita. La figu-
ra 21 muestra la jerarquía del atributo “código postal”. Podemos ver que los
distintos municipios se agrupan en provincias, y estas, a su vez, se agrupan
formando la raíz de toda la estructura, que en este caso sería el nivel del país.
Vemos que podríamos haber incluido un nivel extra que hiciera referencia a
las comunidades autónomas, pero se han obviado para mantener la simplici-
dad del ejemplo. De este modo, si queremos generalizar la información sin
perturbarla, podemos generalizar el código postal a nivel de provincia, de tal
modo que los datos son absolutamente correctos, pero más generales que los
datos originales.

Figura 21. Jerarquía del atributo “código postal”

La tabla 7 muestra el resultado de aplicar la generalización sobre los atributos


“código postal” y “edad”. En el primer caso, como se puede observar, se han
generalizado todos los valores a nivel de provincia, de manera que no es po-
sible identificar un municipio de forma única. En el segundo caso, el atributo
“edad” ha sido generalizado usando rangos de valores, de modo que en lugar
de indicar que la edad del individuo que aparece en el registro 1 es 29 años,
en los datos protegidos indicamos que la edad del individuo está en el rango
comprendido entre 20 y 30 años.
© FUOC • PID_00228248 91 Seguridad y privacidad en las smart cities

Tabla 7. Datos médicos protegidos aplicando generalización en los atributos “código postal” y
“edad”

ID Código postal Género Edad Enfermedad

1 08*** Hombre [20,30) Cáncer

2 17*** Mujer [30,50) Hepatitis

3 08*** Hombre [20,30) Gripe

4 25*** Hombre [30,50) Cáncer

5 17*** Mujer [30,50) Diabetes

6 08*** Mujer [50,80) Gripe

7 08*** Mujer [50,80) Hepatitis

8 43*** Mujer [20,30) Cáncer

9 43*** Hombre [20,30) Diabetes

10 25*** Mujer [30,50) Gripe

El método de supresión de atributos consiste, simplemente, en eliminar los


atributos. Cuando no es posible utilizar la generalización u otro método y el
atributo puede presentar una brecha de privacidad, se utiliza este recurso para
eliminar el valor del atributo e indicar que el valor ha sido suprimido.

4.2.3. Generación sintética de datos

En los últimos años, ha surgido una nueva tendencia para la preservación de la


privacidad de los datos. Consiste en la publicación de datos sintéticos en lugar
de los datos originales. La idea principal es que datos sintéticos no pueden
poner en peligro la privacidad de los individuos dado que los datos no son
“reales”. Los métodos de generación de datos sintéticos consisten en construir
un modelo de los datos, y a continuación generar datos artificiales utilizando
el modelo generado.

Este enfoque presenta dos dificultades: por un lado, aunque los datos son sin-
téticos, la identificación de usuarios es aún posible y, por lo tanto, el riesgo de
divulgación debe ser analizado para este tipo de datos. Por otra parte, como
los datos sintéticos se generan a partir de un modelo de datos particular, cons-
truido a partir de los datos originales, todos aquellos aspectos que no están
incluidos explícitamente en el modelo no son incluidos en los datos. Debido a
esto, el análisis de los datos protegidos podría llevar a resultados sensiblemen-
te diferentes a los que llevaría el análisis de los datos originales.
© FUOC • PID_00228248 92 Seguridad y privacidad en las smart cities

Existen multitud de métodos para la generación de datos sintéticos. La dis-


torsión de datos a través de la probabilidad de distribución (data distortion by
probability distribution) fue uno de los primero procedimientos de protección
que pueden ser clasificados como generación sintética de datos. Este procedi-
miento se define por los tres pasos siguientes:

• En primer lugar, identificar una función de densidad de probabilidad sub- Función de densidad de
yacente a los datos y determinar sus parámetros. probabilidad

En la teoría de la probabilidad,
• A continuación, generar series distorsionadas mediante la función de den- la función de densidad de pro-
babilidad de una variable con-
sidad de probabilidad estimada. tinua describe la probabilidad
relativa según la cual dicha va-
riable aleatoria tomará deter-
minado valor.
• Para finalizar, se sustituye la serie original por la serie distorsionada en los
datos protegidos.

El procedimiento se definió originalmente para funciones de densidad uni-


variante (aplicados sobre una variable, en nuestro caso un atributo), aunque
también puede ser aplicado a funciones de densidad de multivariantes (más
de un atributo).

4.3. El modelo de k-anonimidad

El modelo de k-anonimidad no es un método de enmascaramiento o protec- Lectura complementaria


ción, sino un modelo o condición que debe ser satisfecho por el conjunto de
L.�Sweeney (2002). “k-
datos protegido. Aun así, generalmente conseguimos cumplir la k-anonimidad anonymity: a model for pro-
a través de los métodos de protección o enmascaramiento que hemos visto en tecting privacy”. Internatio-
nal Journal of Uncertainty, Fuz-
los subapartados anteriores. Es decir, sobre el conjunto de datos originales se ziness and Knowledge-Based
Systems (vol. 10 (5), págs.
les aplica uno o más de los métodos de enmascaramiento vistos anteriormente,
557-570).
con la finalidad de conseguir un conjunto de datos protegido que cumpla con
las restricciones o condiciones necesarias para el modelo de la k-anonimidad.

Un conjunto de datos cumple el modelo de la k-anonimidad si, y solo


si, para cualquier combinación de atributos cuasi-identificadores exis-
ten k o más registros que comparten los mismos valores.

En otras palabras, cada registro en un conjunto de datos k-anónimo es in-


distinguible de, como mínimo, otros k - 1 registros con respecto al conjunto
de cuasi-identificadores. Por lo tanto, la probabilidad de identificación de un
usuario en un conjunto de datos k-anónimo con respecto a los cuasi-identifi-
cadores es de como máximo 1/k.

La tabla 8 muestra el conjunto de datos de ejemplo 2-anónimo, es decir, ano-


nimizado para cumplir con la k-anonimidad con un valor de k = 2. Según in-
dica el modelo, para cada posible conjunto de atributos cuasi-identificadores
(código postal, género y edad) siempre existen, al menos, dos registros con los
© FUOC • PID_00228248 93 Seguridad y privacidad en las smart cities

mismos valores. Por lo tanto, la probabilidad de identificación de un usuario


es de 1/2 como máximo. Como se puede apreciar en la tabla, para el enmas-
caramiento de los datos hemos aplicado generalización en el “código postal”,
supresión en el “género” y microagregación univariante en la “edad”.

Tabla 8. Datos médicos protegidos que cumple con el modelo de k-anonimidad con valor k = 2

ID Código postal Género Edad Enfermedad

1 08*** Hombre 25 Cáncer

2 17*** Mujer 46,5 Hepatitis

3 08*** Hombre 25 Gripe

4 25*** * 39,5 Cáncer

5 17*** Mujer 46,5 Diabetes

6 08*** Mujer 65 Gripe

7 08*** Mujer 65 Hepatitis

8 43*** * 23,5 Cáncer

9 43*** * 23,5 Diabetes

10 25*** * 39,5 Gripe

Después del proceso de anonimización, la tabla puede ser publicada con la


certeza de que un atacante solo podrá identificar a un usuario con una proba-
bilidad de, como máximo, 1/2. Es importante subrayar que en los casos reales,
donde los conjuntos de datos son muy grandes (con miles o millones de re-
gistros) se debe elegir un valor de k mucho más grande que en el ejemplo que
acabamos de presentar, donde la probabilidad de identificar a un individuo

será mucho más baja, es decir, .

4.4. Privacidad más allá del uso de las tablas

Tradicionalmente los datos se han almacenado en formato de tablas. Durante Datos estructurados
mucho tiempo este ha sido el formato estándar de almacenamiento y trans-
Los datos estructurados son
ferencia de la información. Debido a esto, la preservación de la privacidad se aquellos que siguen un patrón
ha centrado durante muchos años en los datos en formato de tablas, también igual para todos los elementos
y que además es conocido a
llamados datos estructurados, como por ejemplo los datos contenidos en bases priori. Por ejemplo, los datos
de una hoja de cálculo presen-
de datos relacionales o en hojas de cálculo. tan los mismos atributos para
cada fila.

Todos los métodos vistos hasta ahora han sido desarrollados para trabajar con
datos estructurados, aunque muchos de ellos han sido extendidos para poder
trabajar con otros tipos de datos.

En el contexto de una smart city se generan datos en multitud de formatos


distintos, que van mucho más allá de las tradicionales tablas. Por un lado, es
innegable que los datos que generan los propios ciudadanos en las distintas
© FUOC • PID_00228248 94 Seguridad y privacidad en las smart cities

redes sociales son una fuente de información muy importante para la propia
ciudad. De estas redes podemos obtener datos sobre las opiniones o preferen-
cias de los ciudadanos, sus localizaciones en distintos momentos del día y un
largo etcétera que crece día a día con la aparición de nuevas redes sociales. Por
otro lado, es habitual que todo tipo de administraciones públicas de la ciudad,
especialmente en el contexto de las smart cities, generen y publiquen informa-
ción en distintos formatos; desde documentos censales de los comercios de
la ciudad hasta todo tipo de servicios que se ofrecen a los ciudadanos. Por lo
tanto, en este contexto es necesario, pero no suficiente, tratar la privacidad
de los datos en formato estructurado. La diversidad de formatos de los datos
irá en aumento en los próximos años, y se deberán tratar de forma específica
cada uno de los nuevos formatos, considerando sus características y especifi-
caciones.

A continuación veremos, aunque brevemente, otros tipos de datos que por sus
características o auge reciente han recibido mucha atención desde el punto de
vista de la privacidad.

4.4.1. Localización y tiempo

En algunos casos los datos llevan asociados información referente a la locali- Foursquare
zación y el momento exacto en el que se han producido. En estos casos, ge-
Foursquare es una red social
neralmente, la información relativa a la localización y el momento en que se creada en el año 2009 y basa-
produce es muy importante y puede resultar de gran interés para el estudio del da en localización de los usua-
rios.
comportamiento humano. No obstante, estos datos también pueden suponer
una brecha para la privacidad de un usuario y pueden ser utilizados por un
atacante para conseguir su identificación. Por ejemplo, supongamos que se
publican datos relacionados con la movilidad y la localización de los ciudada-
nos. La red social Foursquare es un ejemplo de servicio de localización y mo-
vilidad, donde los usuarios marcan (check-in) lugares específicos en los que se
encuentran y los comparten con los demás usuarios. En el conjunto de datos
protegidos, los distintos registros de un mismo usuario indican el conjunto de
sitios donde un usuario ha estado en un determinado intervalo de tiempo. Si
un usuario es identificado dentro de un conjunto protegido, el atacante puede
obtener información de los lugares en los que este ha estado y el momento
exacto en que ha estado en cada lugar.

Para preservar la privacidad en este contexto se puede entender la localización GPS


como un atributo numérico (por ejemplo, a través de la coordenadas GPS del
El sistema de posicionamien-
punto) y aplicar sobre este dato los métodos de enmascaramiento para datos to global o GPS (global positio-
numéricos, o también entender la localización como un punto dentro de un ning system, en inglés) es un
sistema que permite determi-
municipio, comarca y provincia y, por lo tanto, convertir estos datos en atri- nar la posición de un objeto fa-
cilitando su latitud y longitud.
butos categóricos y aplicar el concepto de generalización para enmascarar la
localización real del usuario. Una aproximación similar puede ser empleada
para tratar con los datos referentes al tiempo.
© FUOC • PID_00228248 95 Seguridad y privacidad en las smart cities

4.4.2. Registros de búsqueda y acceso

Cada vez que un usuario realiza una búsqueda a través de un motor de búsque- Google Flu Trends
da de internet, este almacena información sobre el usuario, el momento y el
Mediante la agregación de re-
dispositivo desde donde se produce la búsqueda y los términos introducidos. gistros de búsqueda en el mo-
Esta información es muy útil para el estudio del comportamiento humano e tor de Google, el proyecto in-
tentó intenta hacer prediccio-
incluso para la predicción de epidemias, como el proyecto Google Flu Trends. nes precisas sobre la actividad
de la gripe durante los años
2008-2014.
El ejemplo de AOL del que hemos hablado anteriormente demostró que una
insuficiente anonimización de los datos puede conducir a un atacante a iden-
tificar ausuarios dentro de los datos protegidos a través de sus búsquedas. La
particularidad de este tipo de datos es que debemos tratar con la semántica de
las consultas. Por ejemplo, si se quiere poder aplicar el concepto de generaliza-
ción, es necesario “entender” el significado de una consulta para poder genera-
lizarla y así evitar las particularidades que pueden conducir a la identificación
de un usuario. Pero la semántica de las consultas puede resultar muy compleja
y es necesario disponer de ontologías u otras herramientas semánticas para
poder establecer equivalencias y jerarquías entre las distintas consultas.

4.4.3. Documentos

La publicación de documentos también lleva implícitos algunos problemas de


privacidad. A diferencia de los casos hasta ahora comentados, cuando se pu-
blican documentos estamos trabajando con datos no estructurados, frente a
las tablas o registros, que son datos estructurados. Ciertamente, los documen-
tos no presentan patrones de atributos conocidos a priori, esto es, no presentan
ningún tipo de estructura y para su análisis es necesario analizar todo el texto
considerando la gramática y la semántica para poder extraer conocimiento.
En este sentido, es habitual crear índices que permiten asociar documentos o
partes de los estos a determinadas palabras o conjuntos de palabras.

La preservación de la privacidad en el caso de los documentos debe ser estu-


diada y analizada desde este doble punto de vista: por un lado, el propio do-
cumento y, por el otro, los índices creados a partir del conjunto total de do-
cumentos que pueden guiar al atacante a la identificación de datos personales
privados dentro de estos.

4.4.4. Redes sociales

En el caso de las redes sociales, los datos se suelen representar utilizando los Grafo
grafos, dado que permiten una representación natural de las relaciones exis-
Un grafo es una pareja de
tentes entre un conjunto de usuarios (llamados nodos o vértices en el contexto conjuntos , don-
de los grafos) de la red. Existen varios formatos de grafo que permiten repre- de es el con-
junto de nodos o vértices y
sentar cada una de las redes existentes en la realidad y que se adaptan a las
es un conjun-
particularidades de cada una de ellas. Por ejemplo, podemos encontrar redes to de aristas o arcos que unen
dos nodos ei = {vi, vj}.
con relaciones asimétricas entre los usuarios (Twitter sería un buen ejemplo
© FUOC • PID_00228248 96 Seguridad y privacidad en las smart cities

de ello), que se representan mediante grafos dirigidos o asimétricos, o redes


que relacionan productos y consumidores, que se suelen representar mediante
grafos bipartitos.

Ejemplo de representación mediante grafos

Vamos a suponer que deseamos modelar las relaciones entre los usuarios de Twitter, mos-
trando la relación “seguir” que se establece entre dos usuarios de la red. Para represen-
tar la información que nos interesa, podemos utilizar un grafo dirigido o asimétrico, en
donde creamos un arco entre los nodos a y b si el usuario a sigue al usuario b. La figura
22a muestra un posible escenario donde podemos ver que los usuarios A, B y C siguen al
usuario D. Por su parte, el usuario D sigue al usuario A y a los usuarios E, F y G.

A continuación veremos cómo modelar las relaciones en una red simétrica o no dirigida,
como puede ser, por ejemplo, Facebook. En esta red los usuarios establecen relaciones de
“amistad” bidireccionales, es decir, si un usuario a es amigo de un usuario b, entonces
implícitamente el usuario b también es amigo del usuario a. La figura 22b muestra un
posible ejemplo en el que vemos las relaciones de amistad entre siete usuarios. Podemos
ver que el usuario A es amigo de D, el cual es también amigo de A y de B, E y G.

Figura 22. Ejemplo de grafo dirigido o asimétrico (a) y no dirigido o simétrico


(b)

En estos casos, la propia estructura de la red contiene información de gran uti-


lidad para el análisis y el estudio de las redes, pero también puede ser utilizado
por un atacante para obtener información e identificar a un usuario dentro de
los datos protegidos. Los métodos de enmascaramiento específicos para redes
sociales se basan en modificar la estructura de los grafos, ya sea añadiendo o
eliminando aristas o vértices del grafo, para introducir ruido en los datos y
dificultar el proceso de identificación de usuarios en los datos protegidos.
© FUOC • PID_00228248 97 Seguridad y privacidad en las smart cities

Resumen

En este módulo didáctico hemos visto los problemas de seguridad que afron-
tan las smart cities y hemos dado algunas pinceladas a los esquemas que se
utilizan para afrontar estos problemas.

En el primer apartado hemos visto que las técnicas criptográficas permiten ci-
frar un texto mediante una clave de cifrado, y solo quien conozca la clave de
descifrado correspondiente es capaz de obtener el texto original. Según la re-
lación que haya entre las dos claves, los algoritmos criptográficos se clasifican
en algoritmos simétricos si la clave de cifrado y la de descifrado son la misma,
o algoritmos de clave pública si las claves son diferentes.

Como la criptografía de clave pública es computacionalmente más costosa que


la simétrica, no se utiliza nunca directamente para obtener confidencialidad,
sino siempre a través de una clave de sesión simétrica. Del mismo modo, la
firma de un texto no se calcula directamente a partir del texto, sino aplicando
una función hash segura.

También hemos visto la posibilidad de proteger las comunicaciones a nivel de


transporte y aplicación. Hemos visto los protocolos SSL/TLS, que utilizan el
servicio de transporte TCP estándar, y el protocolo HTTPS, que es una combi-
nación de HTTP con el transporte seguro SSL/TLS. Y hemos introducido las
redes privadas virtuales (VPN), que permiten utilizar la red pública internet
como si fuera una red privada dedicada.

En el segundo apartado hemos hecho referencia a mecanismos y protocolos de


seguridad para redes formadas por dispositivos inalámbricos con limitaciones
en cuanto a autonomía y capacidad de cálculo. Centrándonos en las redes de
sensores, hemos visto diferentes protocolos de gestión de claves criptográficas
para poder poner las bases de una infraestructura de seguridad en redes de
sensores.

En el tercer aparato hemos repasado las tecnologías de comunicación de las


redes de sensores. La tecnología RFID se encuentra altamente limitada por el
coste que se puede asumir en la producción de cada dispositivo. Hemos vis-
to que estas limitaciones afectan al nivel de seguridad que se puede llegar a
implementar en estos dispositivos. La tecnología Bluetooth puede trabajar en
diferentes modos de seguridad y hemos destacado los dos más importantes: el
modo de seguridad en el ámbito de enlace y el modo de seguridad en el ámbi-
to de servicio. La especificación de ZigBee también prevé el uso de diferentes
© FUOC • PID_00228248 98 Seguridad y privacidad en las smart cities

modos de seguridad para sus redes. Durante el apartado, hemos repasado di-
ferentes aspectos de la seguridad en sistemas ZigBee, desde la gestión de claves
hasta los mecanismos de seguridad que se pueden aplicar a las diferentes capas.

En el último apartado del módulo didáctico hemos presentado, brevemente,


la problemática básica que implica la publicación de datos en relación con la
preservación de la privacidad. Hemos visto los métodos básicos de enmasca-
ramiento y hemos introducido el modelo de k-anonimidad, que es probable-
mente el modelo más utilizado en la actualidad, tanto en el sector industrial
como en el sector académico, para anonimizar datos previamente a su publi-
cación.
© FUOC • PID_00228248 99 Seguridad y privacidad en las smart cities

Glosario
AES  m  Advanced Encryption Standard.

AH  m  Véase Authentication Header.

asociación de seguridad  f Relación entre un nodo origen y un nodo destino que utilizan
uno de los protocolos IPsec (AH o ESP) para enviar datagramas IP protegidos.
sigla SA

ataque  m  Acción realizada por una tercera parte, distinta del emisor y del receptor de la
información protegida, para intentar contrarrestar esta protección.

ataque de cumpleaños  m  Ataque contra las funciones hash, consistente en encontrar


dos mensajes que den el mismo resumen, en lugar de encontrar un mensaje que dé el mismo
resumen que otro determinado, cosa, esta última, que requiere muchas más operaciones.

ataque de diccionario  m  Ataque contra los métodos de autenticación de entidad basa-


dos en contraseñas consistente en probar las palabras de un diccionario hasta encontrar la
correcta.

ataque de fuerza bruta  m  Ataque contra las funciones criptográficas consistente en


probar todos los posibles valores de la clave hasta encontrar el correcto.

ataque del hombre a medio camino  m  Ataque contra la autenticación en los proto-
colos de comunicación seguros en que el atacante intercepta los mensajes de autenticación
y los sustituye por otros con las claves públicas cambiadas, de modo que se puede producir
una suplantación si no se comprueba la autenticidad de estas claves.

ataque DoS  (del inglés denial of service) m Ataque de denegación del servicio.

ataque MITM  (del inglés man-in-the-middle) m Ataque del hombre a medio camino.

ataque Sybil  m  Ataque en el que un usuario adopta diferentes identidades para tener más
influencia en la red.

atributos identificadores  m  Conjunto de atributos que permiten identificar de forma


explícita a un individuo, como por ejemplo el nombre, el DNI o el número de la seguridad
social.

atributos cuasi-identificadores  m pl  Conjunto de atributos que potencialmente po-


drían identificar a un individuo.

atributos sensibles  m pl  Conjunto de atributos que presentan información específica y


sensible de un individuo en concreto, y como tales deben poder ser asociados a un único
individuo.

autenticidad  f En relación con la información, propiedad de encontrarse en el mismo


estado en el que fue producida, sin modificaciones no autorizadas.
en authenticity

autenticación de entidad  f  Servicio de seguridad que permite confirmar que un parti-


cipante en una comunicación es auténtico y no se trata de un impostor que está intentando
suplantarlo.

autenticación de mensaje  f  Servicio de seguridad que permite confirmar que el origina-


dor de un mensaje es auténtico y que el mensaje no ha sido creado o modificado por un
falsificador.

autenticación de origen de datos  f  Nombre con el que se conoce a veces la autentica-


ción de mensaje.

Authentication Header  m Protocolo de la arquitectura IPsec que proporciona autentica-


ción de los datagramas IP.
sigla AH

autoridad  f Entidad que emite certificados de clave pública que sirven para que los usuarios
que confíen en esta autoridad se convenzan de la autenticidad de las claves públicas.
sigla CA
© FUOC • PID_00228248 100 Seguridad y privacidad en las smart cities

autoridad de certificación raíz  f Autoridad de certificación que no tiene ninguna otra


superior que certifique la autenticidad de su clave pública y que, por tanto, tiene un certifi-
cado firmado por ella misma.
CA Véase autoridad de certificación.

cadena de certificados  f  Lista de certificados en la que cada uno de ellos permite veri-
ficar la autenticidad de la clave pública de la CA que ha emitido el anterior, hasta llegar al
certificado de una CA raíz.

centro de confianza  m  En una red ZigBee, dispositivo especial que goza de la confianza
de todos los demás dispositivos de la red. en trust center

certificado de clave pública  m Estructura de datos que contiene un nombre de usuario


y su clave pública y que está firmado digitalmente por una autoridad de certificación, que
da fe de esta asociación usuario-clave pública.
sin. certificado digital

certificado digital  m  Véase certificado de clave pública.

cifra  f  Véase criptosistema.

cifrado  m  Transformación de un texto en claro, mediante un algoritmo que tiene como


parámetro una clave, en un texto cifrado ininteligible para quien no conozca la clave de
descifrado.

cifrado en bloque  m  Transformación criptográfica en la que el texto en claro se divide


en bloques y se aplica un algoritmo de cifrado a cada uno de estos bloques.

cifrado en flujo  m  Transformación criptográfica en la que el texto en claro se combina


con una secuencia pseudoaleatoria obtenida a partir de la clave.

clave  f  Parámetro, normalmente secreto, que controla los procesos de cifrado o descifrado.

clave combinación  f  Clave generada conjuntamente por dos dispositivos Bluetooth y


utilizada como clave de enlace.

clave de dispositivo  f  Clave específica de cada dispositivo Bluetooth a menudo utilizada


como clave de enlace.

clave de enlace  f  En la tecnología Bluetooth, clave utilizada para llevar a cabo el proceso
de autenticación entre dispositivos. En ZigBee, clave que comparten dos dispositivos ZigBee
utilizada en la comunicación unicast.

clave de inicialización  f  Clave utilizada en la tecnología Bluetooth para proteger el in-


tercambio de la clave de enlace.

clave de red  f  Clave que comparten todos los dispositivos ZigBee en una misma red. Se
utiliza para la comunicación broadcast en el ámbito de la aplicación o para la comunicación
en el ámbito de red.

clave de sesión  f  Clave simétrica generada ad hoc para proteger un determinado inter-
cambio de información y que es conocida por las dos partes utilizando criptografía de clave
pública, para que no pueda ser descubierta por un atacante.

clave maestra  f  En Bluetooth, clave temporal que se utiliza en una red Bluetooth con más
de dos dispositivos conectados cuando el dispositivo maestro quiere transmitir simultánea-
mente a los otros dispositivos. En ZigBee, clave que comparten dispositivos ZigBee que sirve
como secreto compartido inicial para derivar nuevas claves.

clave privada  f  Clave que permite realizar la transformación criptográfica inversa a la que
se obtiene con una clave pública y que es computacionalmente inviable obtener a partir de
esta última.

clave pública  f  Clave que permite realizar la transformación criptográfica inversa a la que
se obtiene con una clave privada.

clave simétrica  f  Clave que permite realizar tanto una transformación criptográfica como
la transformación inversa, es decir, cifrado y descifrado.

código de autenticación de mensaje  m Valor calculado a partir de un texto con una


clave secreta y que puede ser utilizado por quien conozca la clave para comprobar la auten-
ticidad del mensaje.
© FUOC • PID_00228248 101 Seguridad y privacidad en las smart cities

sigla MAC

confidencialidad  f Propiedad que asegura que solo los que están autorizados tendrán ac-
ceso a la información.
en secrecy

contraseña  f Palabra o cadena de caracteres secreta, de longitud relativamente corta, usada


por una entidad para autenticarse.
en password

criptoanálisis  m  Estudio de las técnicas matemáticas para anular la protección que pro-
porciona la criptografía.

criptografía  f  Ciencia que estudia las técnicas matemáticas utilizadas para la protección
de la información.

criptografía de clave compartida  f  Grupo de criptosistemas que basan su seguridad


en una sola clave, que emisor y receptor utilizan tanto para cifrar como para descifrar.

criptografía ligera  f Conjunto de técnicas criptográficas diseñadas para dispositivos con


recursos limitados que intentan ofrecer un compromiso entre rendimiento, seguridad y coste.
en lightweight cryptography

criptología  f  Disciplina que engloba la criptografía y el criptoanálisis.

criptosistema  m Método que permite cifrar un texto claro para obtener un texto cifrado
ininteligible.
sin. cifra

criptosistema de flujo  m  Criptosistema que basa su funcionamiento en un generador


pseudoaleatorio que, por medio de una clave como valor de entrada, genera una secuencia
de cifrado.

CRL  m  Véase lista de revocación de certificados.

datos estructurados  m pl  Aquellos que siguen un patrón igual para todos los elementos
y que además es conocido a priori. Por ejemplo, los datos de una hoja de cálculo presentan
los mismos atributos para cada fila.

denegación de servicio  f Ataque que consiste en conseguir o bien que el servicio no


esté disponible para los usuarios legítimos, o bien que el servicio que se dé se retrase o se
interrumpa.
en denial of service
sigla DoS

denial of service   m  Véase denegación de servicio.

DES  m  data encryption standard.

descifrado  m  Transformación inversa al cifrado para obtener el texto en claro a partir del
texto cifrado y la clave de descifrado.

deterministic random bit generator   m  Véase generador pseudoaleatorio.

digest   m  Nombre que se da a veces a un resumen o hash.

dispositivo con funcionalidades completas  m En la especificación ZigBee, dispositivo


que puede realizar cualquier papel dentro de la red.
en full-function device
sigla FFD

dispositivo con funcionalidades reducidas  m En la especificación ZigBee, dispositivo


que solo puede actuar como dispositivo final y que solo puede interaccionar con un único
dispositivo con funcionalidades completas.
en reduced-function device
sigla RFD

DoS  m  Véase denegación de servicio.

DRBG  m  Véase generador pseudoaleatorio.


© FUOC • PID_00228248 102 Seguridad y privacidad en las smart cities

Encapsulating  m Protocolo de la arquitectura IPsec que proporciona autenticación y/o


confidencialidad de los datos de los datagramas IP.
sigla ESP

ESP  m  Véase Encapsulating Security Payload.

extranet  f  Red privada de una organización en la que una parte de sus recursos son acce-
sibles a determinados usuarios externos a esta organización.

FFD  m  Véase dispositivo con funcionalidades completas.

firma digital  f  Valor calculado a partir de un texto con una clave privada y que puede ser
comprobado con la correspondiente clave pública, lo cual permite confirmar que solamente
lo puede haber generado el poseedor de la clave privada.

forward security   f  Véase seguridad hacia delante.

full-function device   m  Véase dispositivo con funcionalidades completas.

gate equivalents   f Puertas equivalentes a una NAND de dos entradas.


sigla GE

GE  f  Véase gate equivalents.

generador pseudoaleatorio  m Proceso determinista capaz de generar una secuencia


pseudoaleatoria.
en deterministic random bit generator
sigla DRBG

gestor de seguridad  m  Entidad de la tecnología Bluetooth que implementa la política de


seguridad especificada en el modo de seguridad 2.

global positioning system   m  Véase sistema de posicionamiento global.

GPS  m  Véase sistema de posicionamiento global.

grafo  m  Pareja de conjuntos , donde es el conjunto de no-


dos o vértices y es un conjunto de aristas o arcos que unen dos nodos

hash   m Cadena de bits, de longitud predeterminada, que se obtiene a partir de una secuen-
cia de bits de longitud arbitraria, como “resumen” de esta secuencia.
es resumen

IBC  f  Véase identity-based cryptography.

identity-based cryptography   f Criptografía basada en la identidad.


sigla IBC

índice de parámetros de seguridad  m Número que, junto con la dirección IP del nodo
de destino, permite a un nodo origen identificar una asociación de seguridad IPsec.
sigla SPI

indistinguibilidad  f  En RFID, propiedad que impide que un adversario pueda distinguir,


es decir, diferenciar, dos etiquetas distintas solo observando sus salidas.

infraestructura de clave pública  f Conjunto de estructuras de datos, procedimientos y


agentes que permiten el uso de la criptografía de clave pública.
sigla PKI

integridad  f  Propiedad que asegura la no alteración de la información.

jamming   m  Ataque que consiste en atenuar la señal de radio para provocar interferencias
en el servicio.

intranet  f Red privada corporativa de una organización, con acceso restringido a los usua-
rios que pertenecen a esta organización.
IPsec Conjunto de protocolos a nivel de red (AH, ESP, etc.) que añaden seguridad al protocolo
IP.
© FUOC • PID_00228248 103 Seguridad y privacidad en las smart cities

LFSR  m  Véase registro de desplazamiento realimentado linealmente.

lightweight cryptography   f  Véase criptografía ligera.

lista de revocación de certificados  f Lista de certificados que han dejado de ser válidos
antes de su fecha de caducidad, emitida y firmada por la misma CA que emitió estos certi-
ficados.
sigla CRL

MAC  m  Véase código de autenticación de mensaje.

MANET  (del inglés mobile ad hoc network) m Redes ad hoc móviles.

método perturbativo  m  Método de enmascaramiento que altera los datos introduciendo


cierto ruido o distorsión para dificultar el proceso de identificación de un usuario por parte
de un atacante.

método no perturbativo  m  Método de enmascaramiento basado en la generalización o


el borrado de algunas partes de la información que podrían conducir a un atacante a identi-
ficar de forma única a un usuario dentro de los datos protegidos.

NLFSR  m  Registro de desplazamiento realimentado no linealmente.

nonce  m  Véase number used once.

no repudio  m  Protección de la información contra denegación de autoría por parte de


su originador.

number used once   m  Número arbitrario que se utiliza una única vez y que permite, por
ejemplo, evitar ataques de replay.

padding   m  Datos adicionales que puede ser necesario añadir a un texto en claro antes de
aplicarle un algoritmo de cifrado en bloque, para que su longitud sea múltiplo de la longitud
del bloque.

paquete RREP  (del inglés route reply) m Mensaje de respuesta del protocolo de descubri-
miento de rutas para crear tablas de encaminamiento.

paquete RREQ  (del inglés route request) m Mensaje de solicitud de descubrimiento de rutas
para crear tablas de encaminamiento.

passphrase   f  Cadena de caracteres secreta, de longitud generalmente mayor que una


contraseña, usada por una entidad para autenticarse.

password   m  Véase contraseña.

PKI  f  Véase infraestructura de clave pública.

PPDP  f  Véase preservación de la privacidad en la publicación de datos.

preservación de la privacidad en la publicación de datos  f Proceso que estudia


cómo publicar datos de manera que una vez publicados mantengan su utilidad al mismo
tiempo que preservan la privacidad de los usuarios que aparecen en ellos.
en privacy-preserving data publishing
sigla PPDP

privacidad  f  Véase confidencialidad.

privacy-preserving data publishing   f  Véase preservación de la privacidad en la


publicación de datos.

PRNG  m  Véase generador pseudoaleatorio.

pseudorandom number generator   m  Véase generador pseudoaleatorio.


sigla PRNG

reduced-function devices   m  Véase dispositivo con funcionalidades reducidas.

red  f Red lógica (virtual) definida sobre una red pública, como por ejemplo internet, y que
funciona, mediante túneles, como si fuera una red privada dedicada.
sigla VPN
© FUOC • PID_00228248 104 Seguridad y privacidad en las smart cities

registro de desplazamiento realimentado linealmente  m  Dispositivo físico o lógico


formado por n celdas de memoria y una función de alimentación lineal.
sigla LFSR

resumen  m  Véase hash.

reto-respuesta  m  Sistema de autenticación por el cual dos partes se pueden autenticar de


forma remota. Este sistema de autenticación requiere que las dos partes se hayan intercam-
biado cierta información antes del proceso de autenticación.

RFD  m  Véase dispositivo con funcionalidades reducidas.

RFID  f  Identificación mediante radiofrecuencia.

SA  Véase asociación de seguridad.

sal  Conjunto de bits aleatorios que se generan ad hoc para modificar una clave de cifrado
y que permiten que un mismo texto resulte en textos cifrados distintos aunque se cifre con
la misma clave.

Secure Sockets Layer  m  Protocolo para proteger las comunicaciones a nivel de transporte;
ofrece unos servicios de comunicación segura análogos a los que ofrece la interfaz de los
sockets.
sigla SSL

seguridad computacional  f  Seguridad que proporciona una técnica criptográfica cuyo


criptoanálisis requeriría una cantidad de recursos computacionales mucho mayor de lo que
está al alcance de nadie.

seguridad hacia delante  f Extensión de las propiedades de autenticidad y de indistin-


guibilidad que garantiza que dichas propiedades se mantienen para transacciones pasadas
cuando un atacante es capaz de corromper una etiqueta en un momento determinado.
en forward security

seguridad incondicional  f  Seguridad que proporciona una técnica criptográfica que no


permite obtener ninguna información sobre el texto en claro, independientemente de la
cantidad de recursos disponibles para el criptoanálisis.

sistema de posicionamiento global  m Sistema que permite determinar la posición de


un objeto facilitando su latitud y longitud.
en global positioning system
sigla GPS

SPI  m  Véase índice de parámetros de seguridad.

SSL  m  Véase Secure Sockets Layer.

texto en claro  m  Información directamente inteligible.

texto cifrado  m  Resultado de aplicar un cifrado a un texto en claro.

TLS  m  Véase Transport Layer Security.

Transport Layer Security  m Versión del protocolo SSL estandarizada por la IETF (Internet
Engineering Task Force).
sigla TLS

trust center   m  Véase centro de confianza.

túnel  m  Asociación entre dos nodos de una red para intercambiarse paquetes de un proto-
colo determinado, posiblemente con origen y destino final en otros nodos, encapsulados en
paquetes del protocolo de comunicación que utiliza la red (típicamente, la red es internet y
el protocolo de encapsulación es IP).

VPN  f  Véase red privada virtual.

wireless mesh network   f Red con topología de malla.


sigla WMN

wireless sensor network   f Red de sensores.


sigla WSN
© FUOC • PID_00228248 105 Seguridad y privacidad en las smart cities

Wireless Transport Layer Security  m Versión del protocolo TLS adaptada a las comu-
nicaciones inalámbricas en un entorno WAP (Wireless Application Protocol).
sigla WTLS

WTLS  m  Véase Wireless Transport Layer Security.

WMN  f  Véase wireless mesh networks.

WSN  f  Véase wireless sensor network.


© FUOC • PID_00228248 106 Seguridad y privacidad en las smart cities

Bibliografía
Aggarwal, Ch. C.; Yu, Ph. S. (2008). Privacy-Preserving Data Mining: Models and Algorithms.
Nueva York: Springer.

Baronti, P.; Pillai, P.; Chook, V.; Chessa, S.; Gotta, A.; Hu, Y. (2007). Wireless Sensor
Networks: a Survey on the State of the Art and the 802.15.4 and ZigBee Standards. Amsterdam:
Elsevier Science Publishers B. V.

Buttyan, L.; Hubaux, J.-P. (2008). Security and Cooperation in Wireless Networks: Thwarting
Malicious and Selfish Behavior in the Age of Ubiquitous Computing. Cambridge University Press.

Çayirci, E.; Rong, C. (2009). Security in Wireless Ad Hoc and Sensor Networks. John Wiley &
Sons. http://books.google.co.uk/books?id=3EvhTrocBZUC.

Chaum, D. (1985). “Security without identification: transaction systems to make big brother
obsolete”. Commun. ACM (vol. 28, núm. 10, págs. 1030-1044). ISSN 0001-0782. doi: http://
doi.acm.org/10.1145/4372.4373.

Chow, S.; Susilo, W. (2005). “Generic Construction of (Identity-Based) Perfect Concurrent


Signatures”. Lecture Notes in Computer Science 3783: Information and Communications Security
(págs. 194-206).

Domingo, J.; Herrera, J. (1999). Criptografia. Barcelona: UOC.

Eschenauer, L.; Gligor, V. D. (2002). “A key-management scheme for distributed sensor


networks”. En: Proceedings of the 9th ACM conference on Computer and communications security,
CCS ’02, (págs. 41-47). Nueva York: ACM. ISBN 1-58113-612-9. doi: 10.1145/586110.586117.
http://doi.acm.org/10.1145/586110.586117.

Farahani, S. (2008). ZigBee Wireless Networks and Transceivers. Newton, MA, EE. UU.: New-
nes.

Finkenzeller, K. (2003). RFID Handbook: Fundamentals and Applications in Contactless Smart


Cards and Identification. John Wiley & Sons.

Fung, B. C. M.; Wang, K.; Wai-Chee Fu, A.; Yu, Ph. S. (2011). Introduction to Privacy-Pre-
serving Data Publishing: Concepts and Techniques. United States of America: CRC Press.

Gehrmann, C.; Persson, J; Smeets, B. (2001). Bluetooth security. Artech House Publishers.

Gislason, D. (2008). ZigBee Wireless Networking. Newton, MA, EE. UU.: Newnes.

Jakobsson, M.; Wetzel, S. (2001). “Security weaknesses in Bluetooth”. En: Proceedings of


RSA 2001 (LNCS 2020, págs. 176-191). Springer Verlag.

Knospe, H.; Lemke-Rust, K. (2010). “Towards Secure and Privacy-Enhanced RFID Sys-
tems”. En: RFID Systems - Research Trends and Challenges (cap. 16). John Wiley & Sons.

Lee, J. S.; Su, Y. W.; Shen, C. C. (2007). A Comparative Study of Wireless Protocols: Bluetooth,
UWB, ZigBee, and Wi-Fi. Taiwan: Proceedings of the 33rd Annual Conference of the IEEE
Industrial Electronics Society.

Maimut, D.; Ouafi, K. (2012). “Lightweight Cryptography for RFID Tags”. IEEE Security
and Privacy. IEEE Computer Society.

Menezes, A.; Oorschot, P.; Vanstone, S. A. (2001). Handbook of Applied Cryptography (5.ª
ed.). CRC-Press.

Vainio, J. T. (2000). “Bluetooth security”. En: Proceedings of Helsinki University of Technology,


Telecommunications Software and Multimedia Laboratory. Helsinki.

Torra,V. (2010). Privacy in Data Mining. Data Mining and Knowledge Discovery Handbook
(págs. 687-716). Springer.

Torra, V.; Navarro-Arribas, G. (2014). “Data privacy”. Wiley Interdisc. Rew.: Data Mining
and Knowledge Discovery (vol. 4(4), págs. 269-280).

Torra, V.; Navarro-Arribas, G. (2015). Advanced research in data privacy. New York: Sprin-
ger.
© FUOC • PID_00228248 107 Seguridad y privacidad en las smart cities

Stallings, W. (2003). Cryptography and Network Security, Principles and Practice (3.ª ed.). Upper
Saddle River: Prentice Hall

Shukla, S.; Bulusu, N.; Jha, S. (2004). “Cane-toad Monitoring in Kakadu National Park
Using Wireless Sensor Networks”. Proc. Network Research Workshop, as part of 18th APAN
Meetings, Cairns, Australia. http://www.cse.unsw.edu.au/sensar/publications/kakadu.pdf.

Yuan, R.; Strayer, W. T. (2003). Virtual Private Networks, Technologies and Solutions. Boston:
Addison-Wesley.

Zhang, J.; Varadharajan, V. (2010). “Wireless sensor network key management survey
and taxonomy”. Journal of Network and Computer Applications (vol. 33, núm. 2, págs. 63-75).
ISSN 1084-8045. doi: 10.1016/j.jnca.2009.10.001. http://www.sciencedirect.com/science/ar-
ticle/pii/S1084804509001313.

ZigBee Alliance (2007). ZigBee Specification. ZigBee Document 053474r17.

Вам также может понравиться