Recsi 2014 PDF

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 372

Rafael Álvarez · Joan Josep Climent · Francisco Ferrández · Francisco M.

Martínez
Leandro Tortosa · José Francisco Vicent · Antonio Zamora
(editores)

Actas de la XIII Reunión Española sobre


Criptología y Seguridad de la Información

RECSI XIII
Alicante, 2-5 de septiembre de 2014

PUBLICACIONES UNIVERSIDAD DE ALICANTE


Actas de la XIII Reunión Española sobre Criptologı́a y Seguridad de la Información

RECSI XIII
Alicante, 2-5 de septiembre de 2014

Rafael Álvarez · Joan Josep Climent · Francisco Ferrández · Francisco M. Martı́nez


Leandro Tortosa · José Francisco Vicent · Antonio Zamora
(editores)

Publicaciones de la Universidad de Alicante

Campus de San Vicente, s/n


03690 San Vicente del Raspeig
Publicaciones@ua.es - http://publicaciones.ua.es
Teléfono: 965 903 480
2014
c los editores, Universidad de Alicante
ISBN: 978-84-9717-323-0
Organización XIII RECSI

Comité Cientı́fico
Abascal Fuentes, Policarpo (Universidad de Oviedo)
Álvarez Sánchez, Rafael (Universidad de Alicante)
Amigó Garcı́a, José Marı́a (Universidad Miguel Hernández de Elche)
Areitio Bertolı́n, Javier (Universidad de Deusto)
Arenaza Nuño, Ignacio (Mondragón Unibertsitatea)
Borrell Viader, Joan (Universidad Autónoma de Barcelona)
Bras Amorós, Maria (Universidad Rovira i Virgili)
Caballero Gil, Pino (Universidad de La Laguna)
Castellà Roca, Jordi (Universidad Rovira i Virgili)
Climent Coloma, Joan Josep (Universidad de Alicante)
Domingo Ferrer, Josep (Universidad Rovira i Virgili)
Durán Dı́az, Raúl (Universidad de Alcalá)
Fernández-Medina Patón, Eduardo (Universidad de Castilla-La Mancha)
Ferrer Gomila, Josep Lluı́s (Universidad de las Illes Balears )
Fúster Sabater, Amparo (C.S.I.C.)
Garcı́a Bringas, Pablo (Universidad de Deusto)
Garcı́a Teodoro, Pedro (Universidad de Granada)
González Vasco, Ma Isabel (Universidad Rey Juan Carlos)
Gutiérrez Gutiérrez, Jaime (Universidad de Cantabria)
Hernández Encinas, Luis (C.S.I.C.)
Hernández Goya, Candelaria (Universidad de La Laguna)
Herrera Joancomartı́, Jordi (Universidad Autónoma de Barcelona)
Huguet Rotger, Llorenç (Universidad de las Illes Balears)
Jacob Taquet, Eduardo (Universidad del Paı́s Vasco/Euskal Herriko Unibertsitatea)
López Muñoz, Javier (Universidad de Málaga)
Martı́n del Rey, Ángel (Universidad de Salamanca)

V
VI

Martı́nez López,Consuelo (Universidad de Oviedo)


Megı́as Jiménez, David (Universitat Oberta de Catalunya)

Miret Biosca, José Marı́a (Universidad de Lleida)


Morillo Bosch, Paz (Universidad Politécnica de Catalunya)
Muñoz Muñoz, Alfonso (Universidad Politécnica de Madrid)

Peinado Domı́nguez, Alberto (Universidad de Málaga)


Ramió Aguirre, Jorge (Universidad Politécnica de Madrid)
Ramos Álvarez, Benjamı́n (Universidad Carlos III de Madrid)
Ribagorda Garnacho, Arturo (Universidad Carlos III de Madrid)

Rifá Coma, Josep (Universidad Autónoma de Barcelona)


Sáez Moreno, Germán (Universidad Politécnica de Catalunya)
Salazar Riaño, José Luis (Universidad de Zaragoza)

Sánchez Ávila, Carmen (Universidad Politécnica de Madrid)


Sebé Feixa, Francesc (Universidad de Lleida)
Soriano Ibáñez, Miguel (Universidad Politécnica de Catalunya)
Tortosa Grau, Leandro (Universidad de Alicante)

Uribeetxeberria Ezpeleta, Roberto (Mondragón Unibertsitatea)


Tena Ayuso, Juan (Universidad de Valladolid)
Vicent Francés, José Francisco (Universidad de Alicante)

Villar Santos, Jorge (Universidad Politécnica de Catalunya)


Zamora Gómez, Antonio (Universidad de Alicante)
Zurutuza, Urko (Mondragón Unibertsitatea)

Comité Organizador
Álvarez Sánchez, Rafael (Universidad de Alicante, Vicepresidente)

Climent Coloma, Joan Josep (Universidad de Alicante)


Ferrández Agulló, Francisco (Universidad de Alicante)
Martı́nez Pérez, Francisco Miguel (Universidad de Alicante)

Tortosa Grau, Leandro (Universidad de Alicante)


Vicent Francés, José Francisco (Universidad de Alicante, Vicepresidente)
Zamora Gómez, Antonio (Universidad de Alicante, Presidente)
Contenidos

Prefacio XIII

Ponencias invitadas XV

Juan G. Tena XVII

Moti Yung XXV

Criptologı́a 1
A new linear consistency test attack on noised irregularly clocked linear feedback shift registers 3

Modelización lineal de los generadores shrinking a través de las leyes 102 y 60 7

Calculando Equivalentes Débiles de Filtrados No Lineales 13

Aportes para el estudio de anillos en ataques cı́clicos al criptosistema RSA 19

Modelado de un criptoprocesador mediante LISA 25

Retos en el diseño de un generador caótico en tecnologı́a CMOS submicrónica 29

Familias de curvas elı́pticas adecuadas para Criptografı́a Basada en la Identidad 35

Códigos con propiedades de localización basados en matrices de bajo sesgo 39

Mejorando la seguridad de un criptosistema OPE mediante la uniformización de los datos 45

Análisis e Implementación del Generador SNOW 3G Utilizado en las Comunicaciones 4G 51

Criptosistemas de clave publica basados en acciones del anillo Ep(m) 57

Diseño de cifradores en flujo DLFSR con alta complejidad lineal para implementación hardware 63

Privacy-Preserving Group Discounts 69

Autenticación No Interactiva para Internet de las Cosas 75

IX
X CONTENIDOS

An Elliptic Curve Based Homomorphic Remote Voting System 81

On the revocation of malicious users in anonymous and non-traceable VANETs 87

Sistema de telepeaje en zonas urbanas 93

Utilizando Certificados Implı́citos para Asignar Identidades en Overlays P2P 101

Cálculo Privado de Distancias entre Funciones de Preferencia 107

Optimización en la generación de claves para firmas en anillo, espontáneas y enlazables 113

Un Enfoque Tolerante a Interrupciones para la Seguridad del Internet de las Cosas 119

Smart-Shopping: Aplicación de un Protocolo de Firma de Contratos Multi-Two-Party Atómico 125

Seguridad de la Información 131


Análisis de Riesgos Dinámico aplicado a Sistemas de Respuesta Automática frente a Intrusiones 133

Simulación de la propagación del malware: Modelos continuos vs. modelos discretos 139

Contramedidas en la suplantación de autoridades de certificación. Certificate pinning 145

Simulaciones Software para el Estudio de Amenazas contra Sistemas SCADA 151

Capacidades de Detección de las Herramientas de Análisis de Vulnerabilidades en Aplicaciones Web 157

Sistema de Detección de Atacantes Emascarados Basado en Técnicas de Alineamiento de Secuencias 163

Cadena de Custodia en el Análisis Forense. Implementación de un Marco de Gestión de la Evidencia Digital 167

Esteganografı́a en zonas ruidosas de la imagen 173

FastTriaje: un asistente para la clasificación de vı́ctimas en situaciones de emergencia con autenticación robusta 179

La transformada de Walsh-Hadamard y otros parámetros en la autenticación biométrica 185

Hacia un Proceso de Migración de la Seguridad de Sistemas heredados al Cloud 191

Virtual TPM for a secure cloud: fallacy or reality? 197

Information System for Supporting Location-based Routing Protocols 203

SoNeUCON(ADM): the administrative model for SoNeUCON(ABC) usage control model 209

La ventana de AREM. Una herramienta estratégica y táctica para visualizar la incertidumbre 215

Seguridad en smart cities e infraestructuras crı́ticas 221

Desarrollando una metodologı́a de análisis de riesgos para que el sector asegurador pueda tasar los riesgos en las
PYMES 227

Arquitectura de Seguridad Multinivel: Una Guı́a para las Organizaciones Modernas 233

Hacia la seguridad criptográfica en sistemas DaaS 237

Bitcoins y el problema de los generales bizantinos 241


CONTENIDOS XI

Evaluación del Rendimiento de una Solución de Cupones Electrónicos para Dispositivos Móviles 247

Análisis Visual del Comportamiento de Aplicaciones para Android 253

Estudio práctico de mecanismos de seguridad en dispositivos Android 259

Identificación de la Fuente en Vı́deos de Dispositivos Móviles 265

Clasificación sin Supervisión de Imágenes de Dispositivos Móviles 271

Identificación de la Fuente de Imágenes de Dispositivos Móviles basada en el Ruido del Sensor 277

Aprendizaje supervisado para el enlace de registros a través de la media ponderada 281

Gestión de identidades digitales basada en el paradigma de la reducción de tiempo de exposición 285

Sistema P2P de protección de la privacidad en motores de búsqueda basado en perfiles de usuario 291

Refinamiento Probabilı́stico del Ataque de Revelación de Identidades 297

Herramienta para la Compensación de Parámetros de QoS y Seguridad 303

Monitorización y selección de incidentes en seguridad de redes mediante EDA 309

Sistema de Detección de Anomalı́as para protocolos propietarios de Control Industrial 315

Protocolo para la Notificación y Alerta de Eventos de Seguridad en Redes Ad-hoc 321

Implementación de un ataque DoS a redes WPAN 802.15.4 327

Análisis y Desarrollo de un Canal Encubierto en una Red de Sensores 333

Índice de autores 341


Prefacio

Si tuviéramos que elegir un conjunto de palabras clave para definir la sociedad actual, sin duda el término
información serı́a uno de los más representativos. Vivimos en un mundo caracterizado por un continuo flujo
de información en el que las Tecnologı́as de la Información y Comunicación (TIC) y las Redes Sociales
desempeñan un papel relevante. En la Sociedad de la Información se generan gran variedad de datos en for-
mato digital, siendo la protección de los mismos frente a accesos y usos no autorizados el objetivo principal
de lo que conocemos como Seguridad de la Información.
Si bien la Criptologı́a es una herramienta tecnológica básica, dedicada al desarrollo y análisis de siste-
mas y protocolos que garanticen la seguridad de los datos, el espectro de tecnologı́as que intervienen en la
protección de la información es amplio y abarca diferentes disciplinas. Una de las caracterı́sticas de esta
ciencia es su rápida y constante evolución, motivada en parte por los continuos avances que se producen en
el terreno de la computación, especialmente en las últimas décadas. Sistemas, protocolos y herramientas en
general considerados seguros en la actualidad dejarán de serlo en un futuro más o menos cercano, lo que
hace imprescindible el desarrollo de nuevas herramientas que garanticen, de forma eficiente, los necesarios
niveles de seguridad.
La Reunión Española sobre Criptologı́a y Seguridad de la Información (RECSI) es el congreso cientı́fico
español de referencia en el ámbito de la Criptologı́a y la Seguridad en las TIC, en el que se dan cita periódi-
camente los principales investigadores españoles y de otras nacionalidades en esta disciplina, con el fin de
compartir los resultados más recientes de su investigación. Del 2 al 5 de septiembre de 2014 se celebrará la
decimotercera edición en la ciudad de Alicante, organizada por el grupo de Criptologı́a y Seguridad Compu-
tacional de la Universidad de Alicante. Las anteriores ediciones tuvieron lugar en Palma de Mallorca (1991),
Madrid (1992), Barcelona (1994), Valladolid (1996), Torremolinos (1998), Santa Cruz de Tenerife (2000),
Oviedo (2002), Leganés (2004), Barcelona (2006), Salamanca (2008), Tarragona (2010) y San Sebastián
(2012).

XIII
Ponencias invitadas

XV
RECSI 2014, Alicante, 2-5 septiembre 2014

25 Años de Criptografı́a con


Curvas Elı́pticas
Juan G. Tena
IMUVA
Universidad de Valladolid
Email: tena@agt.uva.es

Resumen—Se describe brevemente el nacimiento y los prin- mathematicians’eyes to something that was ready from prime
cipales hitos en el desarrollo histórico de la Criptografı́a con time. (N. Koblitz).
Curvas Elı́pticas, sus fortalezas y vulnerabilidades. Se examinan
las condiciones exigibles a una curva elı́ptica para ser criptográfi-
camente fuerte y las estrategias para encontrar tales curvas. Actualmente la Criptografı́a con Curvas Elı́pticas (ECC)
Finalmente se analiza el caso particular de la Criptografı́a con es una disciplina madura y consolidada, teórica y tecnológi-
Curvas Elı́pticas en el contexto de las tarjetas inteligentes. camente. Los libros y artı́culos, los congresos y seminarios
Palabras clave—curvas elı́pticas; logaritmo discreto; curvas sobre el tema son muy numerosos y compañı́as e instituciones
criptográficamente buenas; isogenias; pairings; tarjetas inteligen-
como NIST, Certicom, IEEE, RSA Laboratories, etc incluyen
tes
Criptografı́a Elı́ptica en sus standards.
I. I NTRODUCCI ÓN Sin embargo, el camino recorrido no ha estado exento de
obstáculos. Algunos de ellos han sido debidos a problemas de
Las curvas elı́pticas han ocupado un papel central en Ma-
implementación:
temáticas desde hace tres siglos y sus notables propiedades,
aritméticas y geométricas, han encontrado aplicación en múlti- 1. Cálculo del cardinal del grupo de puntos de la curva
ples problemas y campos matemáticos. elı́ptica. Los algoritmos para su determinación (SEA, T.
Su empleo en Criptografı́a es sin embargo reciente, pu- Satoh, etc, [1], [2]) son costosos.
diéndose situar su inicio en los dos artı́culos siguientes: 2. Identificación de los mensajes a cifrar m con puntos Pm
V. Miller: Use of elliptic curves in Cryptography, CRY- de la curva elı́ptica utilizada.
PTO’85, 1985, [13]. 3. Optimización de las operaciones (suma y multiplicación
N. Koblitz: Elliptic Curve Cryptography, Math. Comp., escalar) con puntos de la curva. Diversos algoritmos,
1987, [9]. utilizando diferentes tipos de coordenadas (afines, pro-
yectivas, etc) y diferentes ecuaciones para la curva
En ambos, los autores proponen implementar el Problema
(Weiertrass, Hess, Montgomery, Edwards, etc), [8], [1]
del Logaritmo Discreto (PLD) en el grupo de puntos de
han sido propuestos.
una curva elı́ptica definida sobre un cuerpo finito, en lugar
de en el grupo multiplicativo de un tal cuerpo, como se Por otra parte, en Criptografı́a, ninguna propuesta está exen-
hacı́a clásicamente. La motivación aducida es que tal grupo ta de vulnerabilidades. En el caso de las curvas elı́pticas, su
de puntos resulta inmune a ataques criptoanalı́ticos, como el rica estructura matemática es un arma de doble filo, ya que
Index-Calculus, lo que permite una seguridad equivalente con puede ser explotada también por el criptoanálisis.
longitudes de clave mucho menores. Un ejemplo clásico es el algoritmo de Menezes–Okamoto–
Sin embargo, la idea de Miller y Koblitz Vanstone (MOV, 1993), [14], que permite reducir el PLD para
permaneció inicialmente en el ámbito académico y aún una curva elı́ptica E, definida sobre el cuerpo finito Fq , al
en 1997 R. Rivest escribı́a: PLD sobre un cuerpo extensión Fqk , para un cierto número k
(dependiente de E) al cual se denomina grado de inmersión
The security of cryptosystems based on elliptic curves is de la curva E. El algoritmo MOV utiliza como herramienta el
not well understood, due in large part to the abstruse nature denominado pairing de Weil. Los pairing (de Weil, Tate, etc)
of elliptic curves. son aplicaciones bilineales definidas sobre una curva elı́ptica
y con valores en un grupo cı́clico, ver [2], [6].
La implantación del nuevo paradigma debe mucho a la La utilidad criptoanalı́tica del algoritmo MOV depende del
compañı́a Certicom (creada en 1985 por S.A. Vanstone y R. grado de inmersión k, ya que solo resulta eficiente si k
Mullin) y al grupo investigador de la Universidad de Waterloo es pequeño. En particular Menezes, Okamoto y Vanstone
(A.J. Menezes, S.A.Vanstone, etc). muestran que esto ocurre para las curvas elı́pticas denominadas
supersingulares, en las que el valor de k es a lo sumo 6. Por
It was enterely Scott Vanstone and his students and ello tales curvas se consideran vulnerables para criptosistemas
collaborators who transformed ECC from a gleam in two basados en el PLD. Cabe señalar que, sin embargo, las curvas
XVIII J. Tena

supersingulares son idóneas para su empleo en otra rama de Car(k) 6= 2, 3 (es decir cuerpo no binario ni ternario) la forma
la Criptografı́a, la Criptografı́a Basada en la Identidad, [12]. de Weiertrass puede reducirse a la ecuación más simple:
La idea de Criptografı́a Basada en la Identidad fue intro-
E : y 2 = x3 + Ax + B, A, B ∈ k
ducida por A. Shamir (CRYPTO 1984), ver [12]. En ella la
clave pública de un usuario puede deducirse de su nombre La gráfica de esta curva, para el cuerpo R de los números
(o cualquier otra información relacionada con su identidad). reales, toma una de las dos formas siguientes:
Shamir propuso esquemas de firma e intercambio de claves
basadas en la identidad, pero no sistemas de cifrado. D.
Bonech y M. Franklin (CRYPTO 2001), [3], proponen un
criptosistema basado en la identidad, utilizando el pairing de
Weil sobre curvas elı́pticas.
Actualmente existen propuestas de criptosistemas, esquemas
de firma y esquemas de intercambio de claves basadas en
pairings. A diferencia de los criptosistemas basados en el PLD
elı́ptico la Criptografı́a basada en la identidad requiere curvas
elı́pticas con grado de inmersión pequeño, las denominadas
pairing friendly curves.
Otra herramienta, propia de las curvas elı́pticas, que permite
el diseño de criptosistemas y protocolos criptográficos son
las isogenias. Una isogenia es una aplicación lineal entre dos
curvas elı́pticas, ver [6]. En el caso de un cuerpo base finito
Fq dos curvas elı́pticas, definidas sobre Fq , son isógenas (es
decir existe una isogenia no nula entre ellas) si y solo si tienen
igual cardinal.
Sin embargo, dadas dos curvas elı́pticas sobre Fq y con
igual cardinal, encontrar explı́citamente una isogenia entre
ambas es un problema computacionalmente difı́cil, lo que po-
sibilita utilizar este problema en el diseño de criptosistemas de
clave pública. A. Rostovsov y A. Stolbunov (Eurocrypt’ 2006), Denotaremos con E(k) al conjunto de puntos de la curva
proponen un criptosistema basado en estrellas de isogenias, E con coordenadas en el cuerpo k (incluido el punto en
[18]. el infinito O). La utilidad de las curvas elı́pticas deriva de
Como un último ejemplo de la fecundidad de las curvas la posibilidad de dotar a E(k) de una estructura de grupo
elı́pticas citemos su aplicación en dos técnicas auxiliares abeliano (con O como elemento neutro). La ley de grupo
del criptosistema RSA, métodos de factorización y tests de puede definirse geométricamente. Por simplicidad supongamos
primalidad: Car(k) 6= 2, 3 y E : y 2 = x3 + Ax + B y recordemos que, por
Métodos de factorización: algoritmo de H.W. Lenstra Jr., el teorema de Bezout, una recta L corta a E en tres puntos.
1987, [1], [6]. Definición 2: La suma de dos puntos P, Q ∈ E(k) es
Tests de primalidad: test de S. Goldwaser–J. Kilian, 1996 el punto simétrico, respecto del eje x, del tercer punto de
y test de A.O.L. Atkins–F. Morain, 1993, [4]. intersección con la cúbica de la recta que une P y Q. Si
P = Q, (en cuyo caso se habla de doblado del punto) se
II. C URVAS E L ÍPTICAS sustituye cuerda por tangente.
Las dos figuras siguientes muestran gráficamente las operacio-
En la sección anterior hemos resumido la aparición y el nes de suma y doblado de puntos:
desarrollo de la Criptografı́a basada en curvas elı́pticas, pero
no hemos precisado que son tales curvas. Podemos tomar
como definición la siguiente, [1], [6],
Definición 1: Una Curva Elı́ptica E definida sobre un
cuerpo k (por ejemplo el cuerpo de los números complejos C,
los reales R, un cuerpo finito Fq , etc) es una curva proyectiva,
no singular, admitiendo una ecuación, definida sobre k, en la
denominada Forma Normal de Weierstrass:

E : y 2 + a1 xy + a3 y = x3 + a2 x2 + a4 x + a6 , ai ∈ k

Una tal curva admite un único punto en el infinito, el O =


(0 : 1 : 0) (punto del infinito en la dirección del eje y). Si
25 Años de Criptografı́a con Curvas Elı́pticas XIX

Definición 4: Una curva elı́ptica E definida sobre el cuerpo


finito Fq , q = pm , se llama supersingular si p divide a t
III. L OGARITMO D ISCRETO E L ÍPTICO
 Recordemos el Problema del Logaritmo Discreto (PLD),
 [6].
Definición 5: Sea G = hgi un grupo cı́clico finito con
cardinal N (clásicamente el grupo G considerado era F∗q =
Fq − {0} con cardinal N = q − 1). Si x ∈ G, se denomina
   logaritmo discreto de x en la base g al entero natural n ≤ N
tal que g n = x.
Conocidos g y n es computacionalmente sencillo calcular
x. Sin embargo conocidos g y x, es computacionalmente intra-
table determinar n (Problema del Logaritmo Discreto).
Diversos sistemas criptograficos (J. Massey–J. Omura, T.
ElGamal), esquemas de firma electronica (T. ElGamal, C.
P. Schnorr, DSA) e intercambio de claves (W. Diffie–M. E.
Hellman) están basados en el PLD, [8].
Suma de Puntos en Curva Elı́ptica La seguridad del logaritmo discreto ha sido exhaustivamente
estudiada. Podemos clasificar los algoritmos para resolver el
PLD en tres tipos, [6]:
1. Algoritmos válidos en cualquier grupo (todos los cuales
tienen un coste exponencial): Rho de J. M. Pollard, Baby
Steps Giant Steps (BSGS), etc.
 2. Algoritmo de R. Silver– G. C. Pohlig–M.E. Hellman:
Eficiente para grupos cuyo cardinal tiene todos sus
factores primos pequeños. En consecuencia el cardinal
del grupo deberı́a poseer un factor primo grande para
ser seguro.
3. Algoritmos tipo Index Calculus.
El método del Index-Calculus se ha aplicado con éxito
 (coste subexponencial) a los cuerpos finitos Fq , en particular
los binarios F2m . Actualmente se considera necesario un
tamaño mı́nimo para el cardinal de estos cuerpos de 1024 bits,
lo que obliga a aumentar el tamaño de las claves y por tanto
los recursos computacionales necesarios.
Una posibilidad alternativa es substituir el grupo G = F∗q
por otros inmunes al Index Calculus. Esta fué la motivación de
Miller y Koblitz para su propuesta del Problema del Logaritmo
Discreto Elı́ptico (PLDE): Dada una curva elı́ptica E sobre
Doblado de Punto en Curva Elı́ptica Fq y puntos P y Q = nP en E(Fq ) encontrar n.
El PLDE ofrece las siguientes ventajas sobre el PLD clásico:
Consideremos ahora el caso particular de un cuerpo base Flexibilidad: Fijado el cuerpo Fq existen muchas curvas
finito k = Fq , q = pm . Se tiene entonces, [1], [6]. elı́pticas sobre él, lo que ofrece la posibilidad de cambiar
Teorema 3: Sea E una curva elı́ptica definida sobre Fq . periódicamente la curva, manteniendo Fq (y su aritméti-
1. Sea N = #(E(Fq )) el cardinal de la curva. Se verifica ca).
el teorema de Hasse: El grupo E(Fq ) es inmune al Index Calculus, lo que lo
√ √ hace más seguro que el grupo F∗q :
q+1−2 q ≤N ≤q+1+2 q 1. El ataque al PLDE (utilizando el algoritmo de Po-

Es decir N = q + 1 − t, con |t| ≤ 2 q. llard) para una curva elı́ptica sobre Fp , p primo de
2. El grupo abeliano finito tiene la estructura siguiente, 160 bits, exige aproximadamente 1024 operaciones
E(Fq ) ' Z/n1 Z × Z/n2 Z elementales.
donde N = n1 n2 , n2 |n1 , n2 |q − 1. 2. El ataque al DLP (utilizando el método del Index
En la Introducción se ha hecho referencia a las curvas Calculus) para F∗p , p primo de 160 bits, necesita
elı́pticas supersingulares, solo 109 operaciones.
XX J. Tena

Esta posibilidad de claves más cortas hace especialmente ellas como imágenes por isogenias serán también buenas. Ello
idónea a la Criptografı́a con curvas elı́pticas para su uso justifica el estudio de tales relaciones de isogenia.
en plataformas con capacidad computacional reducida Consideremos el conjunto de todas las curvas elı́pticas (defi-
como tarjetas inteligentes, RFID, redes de sensores, etc. nidas salvo isomorfı́a) sobre un cuerpo finito dado Fq , q = pm
y con cardinal N . Sea ` un primo diferente de la caracterı́stica
Comparación de tamaños de clave (NIST) p del cuerpo y consideremos todas las posibles isogenias de
grado ` entre tales curvas (ver [6] para el concepto de grado de
P LD/RSA P LDE Ratio una isogenia). Tal conjunto puede considerarse como un grafo
1024 163 1:6 dirigido G(N , `), con aristas dichas `-isogenias. Es posible
3072 256 1 : 12 asignar a estas aristas un cierto sentido (horizontal, ascendente
7680 384 1 : 20 o descendente) y por tanto estratificar a G(N , `) en pisos o
15360 512 1 : 30 niveles, [11].
Definición 6: Cada componente conexa de G(N , `) se
Ataques al PLDE, como el ya mencionado método MOV, denomina un `-volcán.
propiciaron la búsqueda de otras alternativas como base del El nombre de volcán responde a su similitud con un cono
logaritmo discreto. Es el caso de las Curvas Hiperelı́pticas, volcanico, de hecho en un `-volcán se habla de cráter, ladera y
[10], generalización de las elı́pticas. Estas curvas vienen dadas suelo. La noción de grafo de `-isogenias y `-volcanes se debe
por una ecuación del tipo: a D. R. Kohel (Ph. D. Thesis, 1996), [11] y posteriormente
su estructura y propiedades han sido estudiadas por otros
investigadores: M. Fouquet–F. Morain (LNCS 2369, 2002)
C : y 2 + h(x)y = f (x) | gr(h) ≤ g, gr(f ) = 2g + 1 [5], J.Miret–R.Moreno–D.Sadornil–J.Tena–M.Valls (Applied
Mathematics and Computation, 2006 y 2008), [15], etc.
(Las curvas elipticas corresponden al caso g = 1).
Sin embargo el PLD sobre (las jacobianas de) curvas
hiperelı́pticas se ha mostrado vulnerable, para g > 2, frente a
variantes del Index Calculus: algoritmos de L. M. Adleman–J.
De Marrais–M. D. Huang (1994) y de P. Gaudry (2000), [2],
[6].
III-A. Curvas elı́pticas criptográficamente buenas
Aunque actualmente el PLDE se considera seguro, algunas
precauciones son necesarias en la elección de la curva elı́ptica
base E:
1. El cardinal de E debe ser adecuado (primo o con un
factor primo grande) para evitar el ataque de Silver-
Pohlig-Hellman.
2. Con grado de inmersión “grande”(en particular no su-
persingulares) para evitar el ataque MOV.
3. Evitar las denominadas curvas Anómalas, curvas sobre
Fp (p primo), y con cardinal p, curvas para las que
el PLDE es fácil: ataques de I.A. Semaev (1998), T.
Satoh–K. Araki (1998) y N. Smart (1999), [6].
4. E debe ser inmune al ataque por Descenso de Weil, tipo
de ataque propuesto por G. Frey en 2001 y desarrollado
por P. Gaudry, A.J. Menezes, N. Smart, etc [2]. Estructura de un 3-Volcán
Dos vı́as, ambas costosas, pueden utilizarse para elegir una
curva elı́ptica buena (a salvo de las debilidades mencionadas):
El grafo total G(N , `) está formado por varios `-volcanes
Tomar curvas aleatoriamente, calcular su cardinal y com-
y puede denominarse una `-cordillera, [16].
probar si es adecuado.
Construcción de curva elı́ptica con cardinal adecuado IV. C URVAS E L ÍPTICAS Y TARJETAS I NTELIGENTES
prefijado. Ello es factible empleando un método debido Aunque las primeras tarjetas de crédito se remontan a 1950
a A. O. L. Atkin–F. Morain, [4] (Diners Club), las Tarjetas Inteligentes (Smart Cards), con chip
Una tercera vı́a consiste en el empleo de isogenias. Como incorporado, se popularizan a partir de 1980 (en 1986 se define
se ha señalado, dos curvas isógenas tienen igual cardinal. Por el standard ISO para ellas) y se integran en la telefonı́a móvil
tanto, partiendo de una curva criptográficamente buena (con (Tarjetas SIM: Subscriber Identificatio Module) a partir de
cardinal adecuado N ), todas las curvas obtenidas a partir de 1990.
25 Años de Criptografı́a con Curvas Elı́pticas XXI

Los usos actuales de las tarjetas hacen necesaria la implan- ` tiempo (seg.)
tación en las mismas de sistemas criptográficos (esquemas de 5 0.04
cifrado, certificados, firma digital, etc). 11 0.91
La posibilidad ya mencionada de claves más cortas y la 13 5.97
flexibilidad en la elección de las mismas, convierten a las cur- 23 44.30
vas elı́pticas en candidatos privilegiados para la Criptografı́a 37 267.04
implementada en tarjetas inteligentes: 59 995.20
En 1996 un grupo de empresas, Europay, MasterCard 73 3474.73
y VISA (EMV) definieron la especificación de tarjetas
inteligentes para su uso en servicios financieros. Si una curva resistente no se encuentra para los primeros
En 2001 este grupo propone el empleo (EMV 40 Ellip- primos `, el coste de encontrar una curva buena puede ser
tic Curve Technical Report), de curvas elı́pticas como disuasorio.
alternativa al RSA para Autenticación Estática de Da- Un método alternativo (J.M. Miret–D. Sadornil–J. Tena–R.
tos (SDA), Autenticación Dinámica de Datos (DDA) y Tomas–M. Valls, [17], consiste en la construcción de caminos
cifrado autónomo. de isogenias mediante búsquedas en los ` volcanes. Tal método
encuentra la forma más rápida para ir de una curva vulnerable
Además de los ataques criptoanalı́ticos especı́ficos, propios dada a otra resistente.
del sistema criptográfico concreto utilizado, la Criptografı́a en La tabla siguiente compara los resultados obtenidos
tarjetas es susceptible de un tipo de ataques activos denomi- (para la curva 192r1 del SECG) con el método de Smart
nados Side Channel Attacks, [2]. Estos ataques se basan en y el alternativo. Con el método de Smart la primera curva
que la alimentación y el reloj de las tarjetas inteligentes son resistente se obtiene mediante una 23-isogenia. En nuestro
proporcionados por el lector. caso se obtiene con una 5-isogenia seguida de una 13-isogenia.
Es posible entonces, si se tiene acceso a la tarjeta y
se dispone de instrumentos adecuados, medir el consumo,
tiempo de computación, etc de la tarjeta, mientras ésta realiza
192r1 Smart Nuestra propuesta
operaciones criptográficas. Tal información puede ser usada
por un atacante para obtener la clave privada guardada en la Grado Isógena resistente 23 5-13
tarjeta. Veamos en particular un tipo de side channel attacks Tiempo de cálculo (seg.) 44.30 6.01
especı́fico de la Criptografı́a con curvas elı́pticas. Tiempo de la búsqueda (seg.) 51.24 6.99

IV-A. Zero-Value Point Attacks


AGRADECIMIENTOS
L. Goubin, 2003, [7], muestra como un atacante puede
detectar, midiendo el consumo de la tarjeta, la aparición de Este trabajo ha sido parcialmente financiado por el proyecto
puntos de la curva con abscisa u ordenada nulos y después de de investigación MTM2010-21580-C02-02 del Ministerio de
varias ejecuciones, conseguir la clave secreta d almacenada Economı́a y Competitividad.
en la tarjeta. De forma más precisa, suponiendo que un cierto R EFERENCIAS
bit de la clave d es 0 ó 1, el atacante intenta crear un punto
con alguna de sus coordenadas cero. Si tal punto realmente [1] I. Blake, G. Seroussi, N. Smart, “Elliptic Curves in Cryptography”,
London Mathematical Society Lecture Note Series 265, Cambridge
aparece su suposición era correcta. Posteriormente T. Akishita University Press, 2000.
y T. Takagi (LNCS 2851, Springer, 2003) generalizan el ataque [2] I. Blake, G. Seroussi, N. Smart, “Advances in Elliptic Curves in
de Goubin a curvas en las que algunos parámetros intermedios Cryptography”, London Mathematical Society Lecture Note Series 317,
Cambridge University Press, 2005.
usados en el doblado y suma de puntos de la curva elı́ptica [3] D. Bonech, M. Franklin, “Identity-based encryption from the Weil
son cero. pairing”, CRYPTO 2001, LNCS 2139, pp. 213-229, Springer, 2001.
¿Es posible obtener curvas inmunes a los ZVPA? N. Smart [4] R. Crandall, C. Pomerance, “Prime Numbers”, Second Edition, Springer,
2005.
(LNCS 2779, Springer, 2003) y Akishita-Takagi proponen, [5] M. Fouquet, F. Morain, “Isogeny Volcanoes and the SEA Algorithm”,
partiendo de una curva buena (con cardinal adecuado, etc) Proc. ANTS-V, LNCS 2369, pp. 276-291, Springer, 2002.
buscar curvas isogenas a la dada hasta encontrar una ade- [6] S.D. Galbraith, “The Mathematics of Public Key Cryptography”, Cam-
bridge U. Press, 2012.
cuada (en particular sin puntos con coordenadas nulas). Para [7] L. Goubin, ““A refined power-analysis attack on elliptic curve cryptosys-
ello construyen `-isogenias, para sucesivos primos `, hasta tems”, PKC 2003, LNCS 2567, pp. 199-211, Springer, 2003.
encontrar una curva resistente. [8] D. Hankerson, A. Menezes, S. Vanstone, “Guide to Elliptic Curve
Cryptography”, Springer, 2004.
Un problema de este método es que el coste de las ` [9] N. Koblitz, “Elliptic curve cryptosystems”, Math. Comp. 48, pp. 203-
-isogenias aumenta con el grado `, como puede apreciarse en 209, 1987.
la tabla adjunta para la curva 192r1 del SECG (Standard for [10] N. Koblitz, “Hyperelliptic criptosystems”, J. Crypt. 1, pp. 139-150, 1989.
[11] D. R. Kohel, “Endomorphism rings of elliptic curves over finite fields”,
Efficient Cryptography): Ph. D. Thesis, U. California, Berkeley, 1996.
[12] L. Martin, “Identity-Based Encryption”, Artech House, 2008.
XXII J. Tena

[13] V.S. Miller, “Use of elliptic curves in Crypography”, CRYPTO 1985,


LNCS 218, pp. 417-426, Springer, 1986.
[14] A. Menezes, “Elliptic Public Key Cryptography”, Kluwer, 1993.
[15] J. Miret, R. Moreno, D. Sadornil, J. Tena, M. Valls, “Computing the
height of volcanoes of `–isogenies of elliptic curves over finite fields”,
Applied Mathematics and Computation 196, no. 1, pp. 67-76, 2008.
[16] J. Miret, D. Sadornil, J. Tena, R. Tomas, M. Valls, “Exploiting Isogeny
Cordillera Structure to Obtain Cryptography Good Elliptic Curves”, J.
Research and Practice in Information Technology, Vol. 47, no 4, pp.
255-265, 2008.
[17] J. Miret, D. Sadornil, J. Tena, R. Tomas, M. Valls, “On avoiding ZVP
attacks using isogeny volcanoes”, LNCS 5379, pp. 266-277, Springer,
2009.
[18] A. Rostovtsev, A. Stolbunov, “Public-key cryptosystem based on
isogenies”, Cryptology ePrint Archive, Report 2006/145, 2006,
http://eprint.iacr.org/.
Juan G. Tena

Juan Tena Ayuso es doctor en Teorı́a de Núme-


ros por la Universidad de Grenoble (1973) y en Ma-
temáticas por la Universidad Complutense de Ma-
drid (1973). Durante el periodo 1973-82 fue profesor
en las Universidades de Valladolid, Complutense de
Madrid y Santander y desde 1983 es catedrático de
Algebra en la Universidad de Valladolid.
Sus áreas de investigación incluyen Criptografı́a,
Teorı́a de Números y Códigos Correctores de Erro-
res y en la actualidad su interés se centra en el es-
tudio de la Aritmética y Geometrı́a de las Curvas
Elı́pticas y sus aplicaciones criptográficas. Sobre es-
tos temas tiene publicados numerosos libros y artı́cu-
los cientı́ficos e impartidos cursos, conferencias y
seminarios. Ha dirigido seis tesis doctorales en el
campo de la Criptografı́a y los Códigos Correctores
y ha sido investigador principal y miembro investi-
gador de proyectos de investigación subvencionados
por los diversos ministerios españoles competentes
(Educación, Educación y Ciencia, Ciencia y Tecno-
logı́a, Ciencia e Innovación, Economı́a y Competiti-
vidad), Junta de Castilla y León, Unión Europea y
Acciones Integradas Hispano-Francesas. Ha sido or-
ganizador y miembro de los comités cientı́ficos de di-
versos congresos de su especialidad ası́ como árbitro,
recensor y evaluador de artı́culos cientı́ficos y pro-
yectos de investigación.

XXIII
Moti Yung

Moti Yung es especialista en criptografı́a e informático en


Google Inc. Obtuvo su tı́tulo de Doctor en la Universidad de
Columbia en 1988, y trabajó en el Centro de Investigación de
IBM Thomas J. Watson. Ha sido vicepresidente y cientı́fico en
CertCo, además de director de Investigación sobre Autentica-
ción Avanzada en los Laboratorios RSA. También ha ocupado
puestos como profesor adjunto y visitante en la Universidad de
Columbia, donde ha dirigido a varios estudiantes de doctora-
do. En una publicación del año 1996, junto con Adam Young,
Yung acuñó el término ((criptovirologı́a)) para el uso de la crip-
tografı́a como herramienta de ataque usada por virus y otros
tipos de malware (prediciendo ataques de tipo ransomware o
rescate). Young y Yung son los autores del libro: Malicious
Cryptography: Exposing Cryptovirology (John Wiley & Sons,
2004). También introdujeron la noción de ((Cleptografı́a)) para
describir el uso de sistemas criptográficos dentro, a su vez, de
otros sistemas criptográficos como herramientas de ataque para
diseñadores y creadores donde la criptologı́a maliciosa incrus-
tada tiene fuertes propiedades de seguridad contra ingenierı́a
inversa (además, este tipo de ataques han sido publicados y su-
puestamente se han empleado).
El Dr. Yung ha contribuido extensamente a la creación de
los protocolos y sistemas criptográficos básicos (como la no-
ción de seguridad con texto cifrado escogido, que actualmen-
te es un requerimiento fundamental de los sitemas de cifrado
de clave pública que funcionan en Internet). Su contribución
también abarca muchas áreas de investigación en criptografı́a
y seguridad de los datos, ası́ como estructuras conducentes a
su utilización práctica e implementaciones en sistemas y redes.
El Dr. Yung recibió el premio anual Distinguished Lecturer in
Cryptography de la International Association for Cryptologic
Research (IACR) en el Eurocrypt 2010. En 2013 se convirtió en
miembro de la Association for Computing Machinery (ACM) y
en 2014 de la IACR.

XXV
Criptologı́a

1
RECSI 2014, Alicante, 2-5 septiembre 2014

A new linear consistency test attack on noised


irregularly clocked linear feedback shift registers
Slobodan Petrović
NISlab, Department of Computer Science and Media Technology
Gjøvik University College, p.o. box 191, N-2802 Gjøvik, Norway
Email: slobodan.petrovic@hig.no

Abstract—Linear Consistency Test (LCT) is a widely used equations involving the guessed complemented bits. Suppose
algebraic attack against pseudorandom generator schemes. A that the length of the intercepted output sequence is sufficient
system of linear equations depending on a guessed part of for making decisions about consistency of the system assigned
the key is assigned to the analyzed generator and checked for
consistency. If the guessed part of the key is not the right one, the to the analyzed generator. If the choice of the guessed portion
system will be inconsistent with high probability. In the presence of the key is right, and the guess of the positions of the
of noise, additional measures are necessary for this attack to intercepted bits affected by noise is right, the remaining system
be successful. They must reduce the influence of intercepted will be consistent. If the guessed portion of the key is the
output bits complemented by noise. In this paper, a technique is right one but the choice of the positions of the intercepted
described that tries to guess which bit(s) of the intercepted output
sequence are complemented by noise and remove all the equations output bits degraded by noise is wrong, the resulting system
from the linear system assigned to the generator that depend might be consistent (the probability for this is significant).
on those bits. The technique is demonstrated on cryptanalysis But if the guess of the key portion is wrong, the system will
of a Binary Rate Multiplier (BRM). The experiments on this remain inconsistent with high probability even if the guess of
generator show that such an attack is feasible if the noise level the positions of the bits of the intercepted output sequence
is up to moderate.
Index Terms—Cryptanalysis, Irregular Clocking, Linear Con-
degraded by noise is right.
sistency Test (LCT), Linear Feedback Shift Register (LFSR) We apply the attack described in the previous paragraph on
a representative of a special class of pseudorandom sequence
I. I NTRODUCTION generators, so-called irregular clocking generators. Specifi-
cally, we analyze how the new LCT attack can be applied
Linear Consistency test (LCT) is an algebraic attack against on a noised Binary Rate Multiplier (BRM) [2], but the same
a pseudorandom generator scheme that tries to recover its ideas can be applied in attacks against other representatives
whole initial state starting from some guessed bits of it. A of the class as well - the Stop/Go generator, the Shrinking
linear system in the unknown bits of the key is set up, in which generator, the Alternative Step generator and so on.
the right-hand side of every equation is an intercepted bit of The attacks against BRM have been studied by many
the output sequence of the generator, and its consistency is authors, since that scheme is widely used in practice due to the
checked. If the guessed part of the key is not the right one, such desirable properties of the output sequence achievable with it
a system will be inconsistent with high probability, see [7]. (extremely long period and linear complexity, good statistical
The attack proceeds as follows: first, a subset of the key bits properties etc.) Most attacks against BRM are correlation
is guessed. Then, a system of equations, in which the rest of attacks (for example [3], [4], etc.) The LCT attack against
the key bits are variables is set up. If the guessed key bit subset BRM has also been attempted [5], but in a known-plaintext
is not the right one, the consistency probability of the obtained attack scenario, i.e. without noise. The possibility of an LCT
system will be very small. The consistency of the system is attack against noised BRM was studied in [1] and [6]. This
tested for all the possible choices of the guessed portion of attack tries to avoid influence of the bits of the intercepted
the key. If the length of the intercepted output sequence of the sequence affected by noise by changing the starting point in
generator is sufficient (see [7]), the right choice of the guessed the intercepted sequence from which the setting up of the
part of the key will lead to a consistent system, whose solution system of equations starts. The attack might be successful if
will be the rest of the key. the noise level (i.e. the probability of ’1’ in the noise sequence)
If we consider a ciphertext-only attack scenario, in which is small, but false alarms and missing the event regarding the
some of the intercepted output bits of the generator are right guess of the part of the key are inevitable and because of
degraded (i.e. complemented) by noise, we have to com- that a more precise localisation of the bits affected by noise
pensate the influence of the complemented intercepted bits is needed.
on the consistency of the system in order for the attack to The structure of this paper is as follows: In Section II, the
be successful. In this paper, we first guess which of the BRM-based pseudorandom sequence generator is described.
intercepted bits are complemented by noise and then we In Section III, the detailed description of the new attack is
remove from the system assigned to the generator all the given. In Section IV, the experimental results are presented
4 S. Petrović

and discussed. Section V concludes the paper. system are the bits of the output sequence of LFSRu without
decimation together with the bits of the initial state of the same
II. T HE ANALYZED GENERATOR
LFSR and the right-hand side of any equation in the system is
We analyze the LCT attack on a noised pseudorandom the corresponding bit of the intercepted sequence. In our new
sequence generator involving a primitive known as The Binary LCT attack on a noised BRM, we use the same approach. We
Rate Multiplier (BRM). BRM consists of 2 linear feedback guess the initial state of LFSRs and make a system of linear
shift registers (LFSRs). One of them, the clocking LFSR equations in the unknowns of the initial state of LFSRu and
(LFSRs ), determines the clocking sequence for the clocked the unknown bits of the output sequence of LFSRu without
LFSR (LFSRu ), see Fig. 1. decimation. The main point of our attack is the algorithm that
eliminates the influence of the bits of the intercepted sequence
clk. complemented by noise.
LFSRs LFSRu
k positions Example 1
Suppose the BRM from Fig. 1 uses 4-bit LFSRs and the
primitive feedback polynomials of LFSRs and LFSRu are
integer seq. fs (x) = 1 + x + x4 and fu (x) = 1 + x3 + x4 , respectively.
Let the number of output taps of LFSRs be k = 2 and the
Fig. 1. The BRM primitive tap positions are the first and the second (from the left).
Let the initial states of LFSRs and LFSRu be 1010 and
The BRM operates as follows (Fig. 2): Without clocking by 0110, respectively. Then the clocking sequence for LFSRu (i.e.
LFSRs , the register LFSRu produces the binary sequence un . the integer sequence sn ) is 31021002333 . . . and the output
At the clock pulse i of LFSRs , the bits from k positions of sequence of the BRM is 11010110111 . . .
LFSRs determine the integer si that represents the number of Let the cryptanalyst’s guess of the initial state of LFSRs
bits from the sequence un that are going to be discarded. The be right, i.e. 1010. In the LCT attack against the generator
integers si , i = 1, 2, . . . make the sequence sn . The process of without noise, the so-called decimation sequence is gen-
discarding bits in this way is called non-uniform decimation erated, containing the symbol ’2’ in the positions of the
of the sequence un . The maximum value of the integer si unknown bits. Each symbol ’2’ will correspond to a new
determines the maximum number of bits from the sequence variable in the system of equations assigned to the gener-
un that can be discarded at a time. The binary sequence zn is ator. In this case, the decimation sequence will be 2222 |
the output sequence of the whole BRM. 22212102212011220222122212221 . . .. The symbol | delimits
the variables of the initial state of the clocked register LFSRu
un from the rest of the variables. The variables to the left from
LFSRu
Non-uniform zn the symbol | are given in the order x4 , x3 , x2 , x1 , whereas
sn decimation the variables to the right from the symbol | are given in the
LFSRs increased order of indexing, i.e. x5 , x6 , etc. Then the system
k positions of linear equations assigned to the given BRM is:
{

x3 + x4 + x5 = 0
x2 + x3 + x6 = 0
x1 + x2 + x7 = 0
x1 + x5 = 1
Fig. 2. Operation of the BRM
x5 + x6 + x8 = 0
..
The BRM primitive has become popular in the design of .
stream ciphers since it can be shown [2] that the produced
2
sequence zn has extremely long period and high linear com-
The new ciphertext-only attack against a BRM is described
plexity preserving at the same time good statistical properties
below:
of a single LFSR.
1. Guess the initial state of the LFSRs .
III. T HE NEW LCT ATTACK 2. Set up a system of equations assigned to such a BRM
In this section, we give details of the new LCT-based attack without involving the intercepted bits. Such a system is
against a noised BRM. The general description and remarks homogeneous and always consistent.
about LCT have been exposed in the Introduction. To design 3. Set up a system of equations involving only the equa-
an LCT attack against BRM, we have to determine which tions containing the intercepted bits.
part of the BRM key (which consists of the initial states of 4. Join the obtained systems and check the consistency of
LFSRs and LFSRu , as usual) is to be guessed. It is shown in the joint system. The following cases are possible:
[5] that assigning a linear system to a BRM when the initial 4.1 There is no noise and the right initial state of LFSRs
state of LFSRs is guessed is easy. Then the unknowns in the was guessed - the joint system will be consistent and
A new linear consistency test attack on noised irregularly clocked linear feedback shift registers 5

the missing bits of the initial state of LFSRu can be intercepted sequence is t = 1). We guess the position of the
obtained by solving the system. complemented bit. Suppose our guess is right, i.e. the first bit
4.2 There is no noise and the guess of the initial state of in the intercepted sequence is complemented by noise. If we
LFSRs was wrong - the joint system will be inconsis- remove all the equations involving that bit from the system, it
tent with high probability, see [7]. will become consistent again, since, as we said in Example 1,
4.3 The intercepted sequence was degraded by noise and our guess of the initial state of LFSRs was right. By solving
the guess of the initial state of LFSRs was right - the the system, we get the initial state of LFSRu . If the guess of the
joint system will be inconsistent with high probability position of the complemented bit in the intercepted sequence
because of the bits of the intercepted sequence com- is wrong, there is some probability that the system remains
plemented by noise. consistent if the guess of the initial state of LFSRs was right.
4.4 The intercepted sequence was degraded by noise and 2
the guess of the initial state of LFSRs was wrong - the Regarding the time complexity of the attack, we should note
joint system will be inconsistent with high probability. that it is necessary to check all the possible initial states of
5. Suppose that t bits of the intercepted sequence were LFSRs in the attack, which gives the time complexity of the
degraded by noise. Guess their positions. Remove all the attack of O(c · 2Ls ), where Ls is the length of LFSRs and c
equations involving these complemented bits from the is the number of combinations for complementing the bits of
joint system. Provided the intercepted sequence is long the intercepted sequence. c is small for low levels of noise,
enough (see [7]), the following cases are possible: which makes the attack feasible in those cases.
5.1 The guess of the initial state of LFSRs was right - if IV. E XPERIMENTAL WORK
the guess of the positions of the bits of the intercepted
sequence that were complemented by noise was right, The experimental setup involved LFSRs and LFSRu , both
the system will become consistent and solving the sys- of length 4, with primitive feedback polynomials (fs (x) =
tem will give the missing bits of the key of the BRM. If 1 + x + x4 and fu (x) = 1 + x3 + x4 ). 2 positions of the
the guess of the positions of the bits of the intercepted register LFSRs determined the clocking of LFSRu , i.e. k = 2,
sequence complemented by noise was wrong, there will which means that up to 3 bits of the output sequence of LFSRu
be relatively high probability (compared with that in without decimation could be discarded at a time. The length
the case of a wrong guess of the initial state of LFSRs ) of the intercepted output sequence was 20 and up to 2 bits
that the system will become consistent. of the output sequence of the BRM could be complemented
5.2 The guess of the initial state of LFSRs was wrong - by the noise, i.e. p(1) ≤ 10% in the noise sequence. The
the system will not become consistent even if the guess experiment consisted of the following: for a fixed number of
of the positions of the bits of the intercepted sequence bits of the intercepted sequence complemented by noise t,
complemented by noise was right. t = 1, 2, all the possible combinations of positions of bits
complemented by noise were tried. For each such combination,
6. Repeat the step 5. of the algorithm for all the combi-
after complementing the intercepted sequence bits accordingly,
nations of guesses for the positions of the t bits com-
the new LCT attack was run and the number of cases in
plemented by noise in the intercepted sequence, starting
which the guess of the initial state of LFSRs was right and
from t = 1, then t = 2 and so on, until a consistent
the consistent system was obtained was recorded. The number
system is obtained.
of cases in which the guess of the initial state of LFSRs was
The success of the attack described above depends on wrong and a consistent system was obtained (false alarms) was
the level of noise, i.e. the ratio between the number of bits also recorded. The cases where the number of false alarms
complemented by noise in the intercepted sequence and the was greater than the number of correct guesses followed by
length of the intercepted sequence. A relatively small level consistent systems were of particular interest, since in such
of noise ensures relatively small number of combinations for a case the solution of the cryptanalytic problem given by our
the guesses of the complemented bits, which makes the attack algorithm would be wrong. The goal of the experimental work
feasible. In that case the attack is likely to be successful. was to investigate how the number of such cases behaves when
Example 2 t increases. In addition to the number of false alarms, the
Refer to the Example 1 above and suppose that the first number of initial states of LFSRs that the LCT-based attack
bit of the intercepted output sequence from the generator is algorithm would label as solution states would be important
complemented by the noise sequence. This affects the equation to study since in the case of a false alarm, the cryptanalyst
x1 +x5 = 1 from Example 1 and other equations involving the would have to check those states further in order to eliminate
complemented bit (2 more equations, since the weight of the the wrong solutions. We should bear in mind that the right
feedback polynomial of LFSRu is 2). The system of linear solution is always offered by the attack algorithm, even when
equations assigned to the given BRM becomes inconsistent we get false alarms. The experimental results are given in
(with high probability). To mitigate this, we have to remove Table I. In that table, for t = 1 and t = 2, the numbers of false
the equations from the system that involve the complemented alarms nf are listed. In addition, the maximum numbers of
bits (in our example, the number of complemented bits in the solutions (i.e. the initial states of LFSRs offered by the attack
6 S. Petrović

TABLE I
T HE NUMBERS OF FALSE ALARMS OBTAINED WITH THE NEW LCT sequence complemented by noise is small, which means that
ATTACK ( SEE TEXT ) the level of noise is up to moderate.

N nf nf % ns fs fs % R EFERENCES
t=1 20 1 5 2 1 5 [1] G. Bu, ”Linear consistency test (LCT) in cryptanalysis of irregularly
t=2 190 62 33 5 2 1 clocked LFSRs in the presence of noise, ” Master thesis, Gjøvik
University College, Gjøvik, Norway, 2011.
[2] W. Chambers and S. Jennings, ”Linear equivalence of certain BRM shift-
register sequences, ” Electronics Letters, vol. 20, no. 24, pp. 1018–1019,
algorithm) ns are given together with the numbers of cases fs , 1984.
[3] J. Golić and M. Mihaljević, ”A generalized correlation attack on a
in which the false alarms were generated with the maximum class of stream ciphers based on the Levenshtein distance, ” Journal
number of solutions (that would be the worst possible case for of Cryptology, vol. 3, no. 3, pp. 201–212, 1991.
the cryptanalyst). In the table, N represents the total number [4] T. Johansson, ”Reduced complexity correlation attacks on two clock-
controlled generators, ” in: Ohta K. (Ed.), Advances in Cryptology:
of possible combinations for complementing the bits of the Proceedings of ASIACRYPT ’98, Lecture Notes in Computer Science
intercepted sequence. LNCS 1514, pp. 342–356, Springer–Verlag, 1998.
[5] H. Molland, T. Helleseth, ”An improved correlation attack against
From the Table I it can be noted that for t = 2 the irregular clocked and filtered keystream generators, ” in Proceedings
number of false alarm cases is quite high, approx. 33% of of CRYPTO 2004, Lecture Notes in Computer Science LNCS 3152, pp.
all the cases. The maximum number of solution initial states 373–389, Springer–Verlag, 2004.
[6] S. Petrović, ”Application of linear consistency test in a ciphertext-only
of LFSRs offered by the attack algorithm in that case is attack on irregularly clocked linear feedback shift registers, ” in Pro-
ns = 5, which is 1/3 of the possible number of initial ceedings of XII Spanish Conference on Cryptography and Information
states of that register. This number is also quite high, but to Security (RECSI2012), U. Zurutuza, R. Uribeetxeberria, I. Arenaza-
Nuño, Eds. Arrasate - Mondragon: Servicio Editorial de Mondragon
recover from such a situation, ordering of these solution states Unibertsitatea, pp. 113-117, 2012.
according to the corresponding numbers of consistent systems [7] K. Zeng, C. Yang, and T. Rao, ”On the linear consistency test (LCT) in
obtained in the attack is possible to perform, which in most cryptanalysis with applications, ” in Advances in Cryptology, Proceed-
ings of CRYPTO ’89, Lecture Notes in Computer Science LNCS 435,
cases places the right initial state to the second position. This pp. 164–174, Springer–Verlag, 1990.
eliminates the problem of too many solutions offered by the
attack algorithm and also makes the problem of too many
false alarms easier. The greatest advantage of the new attack
compared with the attack from [1] and [6] is in the fact that
the new algorithm always produces the right solution, even
when it is accompanied by a false alarm.

V. C ONCLUSION
In this paper, a new Linear Consistency Test (LCT)-based
attack against a noised pseudorandom generator scheme em-
ploying irregular clocking is described and analyzed. The
attack was applied against a specific representative of this class
of generators known as The Binary Rate Multiplier (BRM).
The attack first assigns a system of linear equations to the
BRM based on a guessed initial state of its clocking LFSR.
This system is then checked for consistency and if consistent,
the right initial state of the clocking LFSR was guessed. If
the obtained system is inconsistent, the equations involving
complemented bits of the intercepted sequence are eliminated
from the system and then the consistency of the system is
checked again. Which bits of the intercepted sequence are
complemented is also guessed. If the guess of those bits
is right, the obtained system will surely become consistent.
Otherwise, if the guess of the initial state of the clocking
LFSR was right, there is a significant chance that the newly
obtained system becomes consistent. In a contrary case, the
new system will be inconsistent with high probability. The
attack always gives the right solution for the initial state of
the clocking LFSR, but that solution may be accompanied
by other solutions (false alarms). The recovery procedure in
those cases is proposed as well. The attack is feasible if the
number of possible combinations for the bits of the intercepted
RECSI 2014, Alicante, 2-5 septiembre 2014

Modelización lineal de los generadores shrinking


a través de las leyes 102 y 60
Sara D. Cardell Amparo Fúster Sabater
Departament d’Estadı́stica Instituto de Tecnologı́as Fı́sicas
i Investigació Operativa y de la Información
Universitat d’Alacant C.S.I.C.
Email: s.diaz@ua.es Email: amparo@iec.csic.es

Resumen—En este trabajo se presenta la modelización lineal de junto con la ley 90, en otros ámbitos, como la construcción del
los generadores shrinking y auto-shrinking a través de autómatas triángulo de Sierpinski [7], [8]. También es posible encontrar
celulares lineales uniformes utilizando la ley 102 (ó la 60). ambas leyes en el análisis de autómatas celulares complemen-
La linealidad de estos autómatas se puede utilizar para el
criptoanálisis de estos generadores de secuencias. tados derivados del grupo de autómatas lineales hı́bridos [9]
Palabras clave—Autómatas celulares, criptoanálisis, generado- o como parte de métodos propuestos para generar familias de
res shrinking. grafos expandidos a través de autómatas con frontera nula [10].

I. I NTRODUCCI ÓN II. P RELIMINARES


En la actualidad, los cifradores en flujo son los procedimien- En esta sección, se presentan algunas definiciones necesarias
tos de cifrado más rápidos que existen, por lo tanto, se utilizan para la comprensión del resto del trabajo. En la primera
en numerosas aplicaciones tecnológicas, como puede ser el subsección se introducen las definiciones de generador shrin-
algoritmo A5 para la telefonı́a en el GSM (véase [1]), el algo- king y generador auto-shrinking. En la segunda subsección, el
ritmo E0 para Bluetooth (las especificaciones de Bluetooth se concepto de autómata celular es recordado.
pueden ver en [2]) o el generador J3Gen para etiquetas RFID II-A. Generadores
de bajo coste [3]. A través de una clave corta secreta y un
algoritmo público (el generador de la secuencia), un cifrador El generador shrinking consta de dos LFSR, R1 y R2 ,
en flujo genera una secuencia pseudoaleatoria, la secuencia tales que la secuencia {ai } producida por el primer registro
cifrante. Para cifrar nuestro mensaje, éste se suma mediante R1 decima la secuencia {bi } producida por el segundo registro
operaciones XOR con la secuencia cifrante, obteniendo de R2 . La secuencia de salida del generador {sj } se obtiene del
este modo el texto cifrado. Para recuperar el mensaje inicial, siguiente modo:
(
simplemente hay que volver a ejecutar una operación XOR Si ai = 1 entonces sj = bi .
entre la secuencia cifrante y el texto cifrado. De aquı́, se
Si ai = 0 entonces bi es rechazado.
deduce la importancia de que la clave sea secreta y conocida
únicamente entre las dos partes que comparten la información. Si L1 y L2 son las longitudes de R1 y R2 , respectivamente,
Muchos generadores de secuencias cifrantes utilizan LFSR el perı́odo de la secuencia {sj } es T = (2L2 − 1)2L1 −1 , siem-
(Linear Feedback Shift Registers) [4] de máxima longitud pre que L1 y L2 sean primos entre sı́. A su vez, la complejidad
combinados con una función booleana no lineal. Existen otros lineal, denotada por LC cumple L2 2L1 −2 < LC ≤ L2 2L1 −1 .
tipos de generadores de secuencias muy populares en cripto- Además, es una secuencia casi equilibrada, ya que el número
grafı́a. Todos ellos producen secuencias de cifrado con una de unos en dicha secuencia viene dado por 2L1 +L2 −2 . El
complejidad lineal alta, largo periodo y buenas propiedades generador shrinking tiene buenas propiedades criptográficas
estadı́sticas. y es fácil de implementar [11], por lo tanto, es adecuado para
Por otro lado, se ha probado que algunos autómatas li- su implementación en sistemas de cifrado en flujo.
neales de una dimensión generan exactamente las mismas Por otro lado, el generador auto-shrinking fue diseñado
secuencias que un LFSR de máxima longitud. Por lo tanto, un por Meier y Staffelbach para uso en aplicaciones de cifrado en
autómata puede ser considerado un generador alternativo a un flujo [12]. Es bastante atractivo, debido a su simplicidad ya que
LFSR de longitud máxima [5]. Además, algunos generadores implica el uso de un solo LFSR. Este generador consiste en un
criptográficos diseñados a través de varios LFSR pueden ser LFSR de máxima longitud que produce una secuencia que es
modelados como autómatas celulares lineales. En [5], [6], decimada por ella misma, por lo tanto, es un caso simplificado
los autores modelizaron los generadores shrinking y auto- y concreto del generador shrinking. La regla de decimación es
shrinking usando las leyes 150 y 90. La idea principal de bastante simple; dado un par de bits consecutivos {a2i , a2i+1 }
este trabajo es modelizar esos mismos generadores utilizando de la secuencia {ai } generada por el LFSR, la secuencia de
las leyes 102 y 60. Estas leyes se han utilizado previamente, salida {sj } se obtiene del siguente modo:
8 S.D. Cardell, A. Fúster

( mal de la linealidad. Gracias al algoritmo de Belekamp-


Si a2i = 1 entonces sj = a2i+1 . Massey [15], si se intercepta como mı́nimo un número de
Si a2i = 0 entonces a2i+1 es rechazado. bits igual al doble de la complejidad lineal de la secuencia
de salida de un LSFR, ésta puede ser recuperada totalmente.
El periodo de la secuencia viene dado por T = 2L−1 Por esta razón, se introdujo el uso de funciones booleanas no
[12], siendo L la longitud del LFSR que genera la secuencia lineales que rompieran esa linealidad.
de entrada del generador. Además, la complejidad lineal, Los generadores shrinking fueron introducidos para romper
denotada por LC, cumple 2L−2 < LC ≤ 2L−1 −(L−2) [13]. esta linealidad, sin embargo, se puede comprobar en las
Para ambos generadores, la clave es el estado inicial del secciones III-A y III-B, que las secuencias producidas por
LFSR y el polinomio de realimentación, también recomendado estos generadores, pueden ser obtenidas a su vez como salida
como parte de la clave. de una estructura lineal, autómatas celulares uniformes lineales
en este caso. Esto implica que las secuencias sean sensibles a
II-B. Autómatas Celulares sufrir un criptoanálisis que explote esta linealidad.
Un autómata celular (CA) de una dimensión es un registro
III-A. Modelizando el generador shrinking
compuesto de n celdas cuyo contenido (binario en este trabajo)
se actualiza de acuerdo a una ley o función de k variables [14]. Sea F2 el cuerpo de Galois de dos elementos. Dados dos
Ası́, el estado de la celda que hay en la posición i en el instante polinomios primitivos p1 (x), p2 (x) ∈ F2 [x], cuyos grados son
t + 1, xt+1
i , depende del estado de las k celdas vecinas en L1 y L2 , respectivamente, primos entre sı́, el periodo de la
el instante t. Si estas leyes se componen exclusivamente de secuencia de salida del generador es T = (2L2 − 1)2L1 −1 .
operaciones XOR, entonces el autómata se dice que es lineal. Existe un autómata celular uniforme periódico de longitud
En un autómata, todas las celdas pueden obedecer la misma T que genera la secuencia de salida utilizando la ley 102.
ley; en ese caso el autómata se dice que es uniforme o En algunos casos, sin embargo, la longitud del autómata se ve
regular. Si obedecen distintas leyes, se dice que es hı́brido. reducida hasta llegar a ser un divisor de T . Veamos el siguiente
Por otro lado, se dice que el autómata tiene frontera nula o ejemplo.
que es nulo, si se consideran nulos los valores adyacentes a las Ejemplo 1: Dados los polinomios primitivos p1 (x) = 1+x+
celdas de los extremos. Si, por el contrario, las celdas de los x2 y p2 (x) = 1+x+x3 , la secuencia generada por el generador
extremos se consideran adyacentes, se dice que el autómata shrinking tiene periodo T = (23 − 1)22−1 = 14. Si se toman
tiene frontera cı́clica o que es periódico. como estados iniciales 10 y 100, respectivamente, la secuencia
En este trabajo, se consideran solamente autómatas unifor- de salida del generador shrinking es 10111000110101. En
mes de una dimensión tanto nulos como periódicos con las la Tabla I podemos ver un ejemplo de autómata uniforme
leyes 102 y 60. Para k = 3, estas leyes vienen dadas por: periódico que genera la secuencia dada. Si se considera el
Ley 102: xt+1 = xti + xti+1 autómata celular uniforme periódico de longitud 14 que utiliza
i
la ley 60, en vez de la ley 102, la secuencia buscada aparecerı́a
111 110 101 100 011 010 001 000 en último lugar en vez de en primer lugar como pasa en el
0 1 1 0 0 1 1 0 autómata celular de la Tabla I. De hecho, el resto de secuencias
serı́an las mismas pero aparecerı́an en orden inverso. 
Ley 60: xt+1
i = xti−1 + xti Diversas simulaciones para distintos valores de las longitu-
des L1 y L2 se han llevado a cabo utilizando Matlab. Para
111 110 101 100 011 010 001 000 todos los casos en los que la longitud del autómata celular
0 0 1 1 1 1 0 0 que genera la secuencia del generador shrinking es el T y
no un divisor de éste, es posible observar que aparecen 2L1 −1
Los números 01100110 y 00111100 son las representaciones
secuencias diferentes repetidas 2L2 − 1 veces y todas ellas con
binarias de 102 y 60, respectivamente. De ahı́ que sean
periodo T .
llamadas ley 102 y ley 60.
La idea principal de este trabajo es proporcionar autómatas III-B. Modelizando el generador auto-shrinking
celulares lineales uniformes, donde una de las secuencias de
Dado un polinomio primitivo p(x) ∈ F2 [x] de grado L,
salida corresponde a la secuencia generada por los generadores
sabemos que el periodo de la secuencia de salida del generador
shrinking. La finalidad de esta modelización es expresar una
auto-shrinking es 2L−1 .
secuencia pseudoaleatoria no lineal en términos de un modelo
Para esta secuencia con periodo T = 2L−1 , existe un
lineal, para facilitar el posible criptoanálisis de estas secuen-
autómata celular uniforme nulo que la genera utilizando la ley
cias.
102. Observando las simulaciones obtenidas en Matlab para
III. M ODELIZACI ÓN diversos valores de L, se deduce en todos los casos que la
longitud del autómata es exactamente la complejidad lineal de
Las secuencias producidas por LFSR de longitud máxima la secuencia dada. Véase el siguiente ejemplo.
gozan de buenas propiedades criptográficas, pero sufren del
Modelización lineal de generadores por decimación 9

Tabla I
AUT ÓMATA CELULAR QUE GENERA LA SECUENCIA CONSIDERADA EN EL EJEMPLO 1

102 102 102 102 102 102 102 102 102 102 102 102 102 102
1 1 0 1 0 0 1 0 0 1 1 0 1 1
0 1 1 1 0 1 1 0 1 0 1 1 0 0
1 0 0 1 1 0 1 1 1 1 0 1 0 0
1 0 1 0 1 1 0 0 0 1 1 1 0 1
1 1 1 1 0 1 0 0 1 0 0 1 1 0
0 0 0 1 1 1 0 1 1 0 1 0 1 1
0 0 1 0 0 1 1 0 1 1 1 1 0 1
0 1 1 0 1 0 1 1 0 0 0 1 1 1
1 0 1 1 1 1 0 1 0 0 1 0 0 1
1 1 0 0 0 1 1 1 0 1 1 0 1 0
0 1 0 0 1 0 0 1 1 0 1 1 1 1
1 1 0 1 1 0 1 0 1 1 0 0 0 1
0 1 1 0 1 1 1 1 0 1 0 0 1 0
1 0 1 1 0 0 0 1 1 1 0 1 1 0

Tabla II
AUT ÓMATA CELULAR QUE GENERA LA SECUENCIA CONSIDERADA EN EL III-C1. Generador shrinking: En el caso del generador
EJEMPLO 2 shrinking, las secuencias de salida tienen como polinomio ca-
racterı́stico PM (x) = P (x)p , con P (x) ∈ F2 [x] un polinomio
102 102 102 102 102 de grado L2 y p un entero tal que 2L1 −2 < p ≤ 2L1 −1 , donde
0 0 0 1 1 L1 y L2 son los grados de los polinomios de realimentación
0 0 1 0 1 de los LFSR que generan las secuencias de entrada para el
0 1 1 1 1 generador. En [5], un algoritmo basado en la concatenación
1 0 0 0 1 de autómatas y en el algoritmo de Cattell y Muzio [16]
1 0 0 1 1 es propuesto. Este algorimto proporciona autómatas celulares
nulos de longitud L2 2L1 −1 basados en las leyes 150 y 90, que
1 0 1 0 1
generan las mismas secuencias que el generador shrinking.
1 1 1 1 1
0 0 0 0 1
Estos autómatas tienen una longitud notablemente inferior a
la longitud de los autómatas considerados en la sección III-A.
Los autómatas propuestos en este trabajo tienen una longitud
igual al periodo de la secuencia, T = (2L2 − 1)2L1 −1 , frente
Ejemplo 2: Dado el polinomio primitivo p(x) = 1 + x + x4 ,
a la longitud L2 2L1 −1 de los autómatas considerados en [5].
la secuencia generada por el generador auto-shrinking tiene
Sin embargo, en los autómatas propuestos en la sección III-A
periodo T = 23 = 8. Si se toma el estado inicial 1001, la
aparecen 2L1 −1 secuencias repetidas 2L2 −1 veces, por lo que,
secuencia de salida del generador es 00011110. El polinomio
conociendo las primeras 2L1 −1 secuencias, se deduce el resto
caracterı́stico de esta secuencia es PM (x) = (1 + x)5 , por
del autómata celular. Por lo tanto, tienen un comportamiento
lo que la complejidad lineal será cinco. En la Tabla II
más predecible que puede ser de ayuda para recuperar la se-
se proporciona un ejemplo de autómata uniforme nulo de
cuencia, dada una cantidad de bits interceptada. En la Tabla I,
longitud cinco que genera la secuencia dada. Como sucedı́a
se puede observar que la primera secuencia es la misma que
en el ejemplo 1, si se considera el autómata celular uniforme
la tercera secuencia después de haber sufrido un traslación
nulo de longitud 5 que utiliza la ley 60, en vez de la ley 102,
cı́clica de cuatro posiciones. A su vez, la quinta secuencia es
las secuencias de salida serı́an las mismas que en el autómata
la misma que la segunda secuencia después de haber sufrido
celular de la Tabla II pero aparecerı́an en orden inverso. 
una traslación cı́clica de cuatro posiciones también. En total,
la misma secuencia aparece siete veces pero trasladada. Lo
III-C. Comparación con otros modelos lineales basados en mismo ocurre con la segunda secuencia; aparece siete veces
autómatas celulares después de sufrir traslaciones de cuatro posiciones. Cuando la
En [5], [6], otros modelos basados en autómatas celulares longitud del autómata es un divisor de T , tenemos la misma
hı́bridos y nulos fueron propuestos. En este caso, los autores cantidad de secuencias 2L1 −1 , pero se repiten una cantidad de
propusieron autómatas celulares basados en las leyes 150 y veces inferior a 2L2 − 1; hecho favorable a la hora de realizar
90, que también generaban las secuencias de salida de los un posible criptoanálisis.
generadores shrinking. Por otro lado, para obtener los autómatas celulares pro-
10 S.D. Cardell, A. Fúster

L2 L1 −1
puestos en [5], habı́a que aplicar el algoritmo de Cattell y porcional a 2(2 −1)2 . Sin embargo, en este autómata
Muzio [16] y habı́a que aplicar, posteriormente, una conca- aparecen 2L1 −1 secuencias repetidas 2L2 − 1 veces, por
tenación. En este caso, con saber el periodo de la secuencia lo que sólo serı́a necesario generar las 2L1 −1 primeras
conocemos el autómata, ya que éste será un autómata uniforme secuencias. Una vez generadas estas secuencias, se puede
que utilizará la ley 102 (ó la 60) en todas sus celdas, y deducir el resto de las secuencias. La complejidad ascen-
L1 −1
tendrá longitud T . derı́a a 22 . En este caso, serı́a más eficiente hacer una
III-C2. Generador auto-shrinking: Para el generador auto- búsqueda exhaustiva entre los posibles estados iniciales
shrinking, al ser un caso especı́fico del generador shrinking, de los LFSR, ya que habrı́a que considerar 2L1 +L2 casos.
el polinomio caracterı́stico es de la forma PM = (1 + x)p , Para el generador auto-shrinking, sucede algo parecido.
con 2L−2 < p ≤ 2L−1 , donde L es la longitud del LFSR que Sea L la longitud del LFSR que genera la secuencia de
genera la secuencia de entrada para el generador. En este caso entrada para este generador. Si se quisieran probar todos
existe un autómata celular nulo de longitud 2L−1 basado en los estados iniciales del LFSR, el número de estados
las leyes 150 y 90 que genera las mismas secuencias que el asciende a 2L . Por otro lado, la longitud del autómata
generador auto-shrinking. Los autómatas celulares obtenidos LC, cumple 2L−2 < LC ≤ 2L−1 − (L − 2). Por lo
tienen una estructura definida; se considera siempre la ley 90 tanto, el número total de estados iniciales del autómata
L−2
en las celdas de los extremos y la ley 150 en el resto de celdas que se tendrı́an que probar 2LC , es mayor que 22 y,
L−2
(véase [6]). a su vez, 22 > 2L para L > 4.
Los autómatas celulares propuestos en este trabajo, poseen Por otro lado, si se recupera una cantidad de bits con-
también una estructura definida. Para los que utilizan la ley secutivos igual a 2L1 −1 + t, siento t la longitud de la
102, aparece siempre la secuencia de unos en último lugar y en traslación cı́clica que sufren las secuencias obtenidas
penúltimo lugar aparece siempre una secuencia de periodo dos por los autómatas que generan la secuencia de salida
(la secuencia 0101 . . . o la secuencia 1010 . . .). Después hay del generador shrinking, podemos recuperar la secuencia
dos secuencias de periodo cuatro, cuatro secuencias de periodo entera. Es posible ver que esta traslación se puede obtener
ocho y, ası́ sucesivamente, hasta encontrar 2L−3 secuencias de dividiendo la longitud del autómata entre el número de
periodo 2L−2 . El resto de secuencias (la longitud del autómata secuencias diferentes, esto es, 2L1 −1 . Por lo tanto, con
menos 2L−2 ) son de periodo 2L−1 , incluida la secuencia de sa- 2L1 bits consecutivos es posible recuperar la totalidad de
lida del generador auto-shrinking. Por otro lado, sabemos que la secuencia. Nótese que esta cantidad es menor que la
la complejidad lineal cumple 2L−2 < LC ≤ 2L−1 − (L − 2), complejidad lineal de la secuencia, véase la sección II-A.
por lo tanto, la longitud de estos autómatas (exactamente LC) Para el generador auto-shrinking, basta interceptar una
es menor que 2L−1 , la longitud de los autómatas propuestos cantidad de bits igual a la complejidad lineal de la
en [6], con lo que se reduce la complejidad de computar estos secuencia para recuperar la totalidad de ésta. En ambos
modelos. casos cabe resaltar que la complejidad lineal es la mitad
En la Tabla II, podemos observar que de las cinco secuen- de la cantidad de bits que se necesitan para llevar a cabo
cias, existe una secuencia de periodo uno, la secuencia de unos, el algoritmo de Berlekamp-Massey [15].
en el último lugar. También aparece la secuencia de periodo Es posible combinar los autómatas celulares propuestos
dos en el penúltimo lugar y otras dos secuencias de periodo en este trabajo y los autómatas celulares propuestos en
cuatro. Por último aparece una sola secuencia de periodo [5], [6] con les leyes 150 90, para recuperar pequeñas
ocho, la secuencia de salida del generador auto-shrinking. Para cantidades de bits de las secuencias del autómata, que
modelizar esta misma secuencia utilizando las leyes 90 y 150, pueden ayudar a recuperar la totalidad de la secuencia.
se necesita un autómata celular de longitud seis (véase [6]). Por ejemplo, cuando el autómata que modeliza el genera-
dor shrinking comienza con la ley 150, las dos primeras
IV. A PLICACIONES
secuencias de estos autómatas y los propuestos en la
La principal aplicación de modelizar las secuencias de sección II-A, son las mismas. Por lo que recuperar una
salida de este tipo de generadores es el criptoanálisis, ya que parte de una de las secuencias en uno de los autómatas
estos generadores tienen buenas propiedades criptográficas y nos lleva a recuperar otra parte en el otro autómata.
son adecuados para ser usados en cifrado en flujo. Dado un
modelo lineal que describe el comportamiento del generador, V. C ONCLUSI ÓN
el criptoanálisis puede llevarse a cabo utilizando diferentes Los esfuerzos por parte de los criptógrafos de incluir genera-
herramientas. dores por decimación con la finalidad de romper la linealidad
En primer lugar, se puede hacer una búsqueda exhaustiva de las secuencias generadas por LFSR han sido inútiles, ya
entre todos los estados iniciales posibles del autómata que, las secuencias de salida de estos generadores pueden
celular. En el caso del generador shrinking, si los grados modelizarse como secuencias de salida de estructuras linea-
de los dos polinomios que se utilizan para generar las les. Este trabajo analiza una familia de autómatas celulares
secuencias de entrada son L1 y L2 , respectivamente, el uniformes lineales, basados en la ley 102 (60) que describen el
autómata tendrı́a longitud (2L2 − 1)2L1 −1 . La compleji- comportamiento de los generadores shrinking, diseñados como
dad computacional de probar todos los estados serı́a pro- no lineales.
Modelización lineal de generadores por decimación 11

AGRADECIMIENTOS
El trabajo del primer autor ha sido financiado por una
beca postdoctoral de la Generalitat Valenciana con referencia
APOSTD/2013/081 y por el proyecto MTM2011-24858 del
Ministerio de Ciencia e Innovación del Gobierno de España.
El trabajo del segundo autor ha sido financiado por el
Ministerio de Ciencia e Innovación del Gobierno de España
bajo el proyecto “TUERI: Technologies for secure and efficient
wireless networks within the Internet of Things with applica-
tions to transport and logistics”, TIN2011-25452.
R EFERENCIAS
[1] GSM, Global Systems for Mobile Communications,
http://cryptome.org/gsm-a512.htm
[2] Bluetooth, Specifications of the Bluetooth system,
http://www.bluetooth.com
[3] A. Peinado, J. Munilla, y A. Fúster-Sabater, “EPCGen2 Pseudorandom
Number Generators: Analysis of J3Gen,” Sensors, vol. 14, no. 4, pp.
6500–6515, 2014.
[4] S. W. Golomb, Shift Register-Sequences. Laguna Hill, California:
Aegean Park Press, 1982.
[5] A. Fúster-Sabater y P. Caballero-Gil, “Linear solutions for cryptographic
nonlinear sequence generators,” Physics Letters A, vol. 369, pp. 432–
437, 2007.
[6] A. Fúster-Sabater, M. E. Pazo-Robles, y P. Caballero-Gil, “A simple
linearization of the self-shrinking generator by means of cellular auto-
mata,” Neural Networks, vol. 23, no. 3, pp. 461–464, 2010.
[7] S. Wolfram, “Computation theory of cellular automata,” Communica-
tions in Mathematical Physics, vol. 96, no. 1, pp. 15–57, 1984.
[8] S. Wolfram, A new kind of science. Wolfram-Media, 2002.
[9] S. Cho, U. Choi, H. Kim y Y. Hwang, “Analysis of complemented CA
derived from linear hybrid group CA,” Computers and Mathematics with
Applications, vol. 53, no. 1, pp. 54–63, 2007.
[10] S. Cho, U. Choi, H. Kim, Y. Hwang y J. Kim, “60/102 Null Boundary
Cellular Automata based expander graphs,” in 16th Intl. Workshop on
CA and DCS. Discrete Mathematics and Theoretical Computer Science
(DMTCS) Proceedings, 2010, pp. 19–28.
[11] D. Coppersmith, H. Krawczyk, y Y. Mansour, “The shrinking generator,”
in Advances in Cryptology – CRYPTO ’93, ser. Lecture Notes in
Computer Science. Springer-Verlag, 1993, vol. 773, pp. 23–39.
[12] W. Meier y O. Staffelbach, “The self-shrinking generator,” in Advances
in Cryptology – EUROCRYPT 1994, ser. Lecture Notes in Computer
Science. Springer-Verlag, 1994, vol. 950, pp. 205–214.
[13] S. R. Blackburn, “The linear complexity of the self-shrinking generator,”
IEEE Transactions on Information Theory, vol. 45, no. 6, pp. 2073–
2077, 1999.
[14] A. K. Das, A. Ganguly, A. Dasgupta, S. Bhawmik, y P. P. Chaudhuri,
“Efficient characterisation of cellular automata,” IEE Proceedings E:
Computers and Digital Techniques, vol. 137, no. 1, pp. 81–87, 1990.
[15] J. L. Massey, “Shift-register synthesis and BCH decoding,” IEEE Tran-
sactions on Information Theory, vol. 15, no. 1, pp. 122–127, 1969.
[16] K. Cattell y J. C. Muzio, “One-dimensional linear hybrid cellular
automata,” IEEE Transactions on Computer-Aided Design, vol. 15, no. 3,
pp. 325–335, 1996.
RECSI 2014, Alicante, 2-5 septiembre 2014

Calculando Equivalentes Débiles de Filtrados No


Lineales
A. Fúster-Sabater P. Caballero-Gil
Inst. Tecnologı́as Fı́sicas y de la Información Departamento de Informática
Consejo Superior Investigaciones Cientı́ficas Universidad de La Laguna
Email: amparo@iec.csic.es Email: pcaballe@ull.edu.es

Resumen—Dada una secuencia binaria generada con una fun-


ción filtro no lineal aplicada sobre un registro de desplazamiento
lineal o LFSR (Linear Feedback Shift Register), siempre es
posible generar la misma secuencia a partir de cualquier otro
LFSR de la misma longitud mediante el uso de otra función filtro.
El problema aún sin resolver es el cálculo de la función filtro
equivalente para cada LFSR. En este trabajo se analiza el caso en
el que se utiliza un LFSR recı́proco para generar un equivalente
de un filtrado no lineal de partida mediante el cálculo de la
relación especı́fica entre ambas funciones filtro. Además, desde un
punto de vista criptográfico, el método aquı́ desarrollado permite
determinar filtrados equivalentes inseguros de otros que son
aparentemente seguros. Este resultado puede considerarse como
una demostración de que, para que un generador de secuencia
cifrante pueda llegar a ser considerado totalmente seguro, debe
Figura 1. Filtrado No Lineal
cumplir diferentes propiedades, algunas de las cuales son aún
desconocidas.
Palabras clave—Criptografı́a de clave secreta (Secret key cry-
ptography), Generador pseudoaleatorio (Pseudorandom generator), Un interesante generador de secuencia cifrante basado en
Cifrado en flujo (Stream cipher), Filtrado no lineal, LFSR. un LFSR es el filtrado no lineal, que produce una secuencia
cifrante a partir de la salida de una función booleana no lineal
aplicada sobre los estados de un LFSR. En particular, un
I. I NTRODUCCI ÓN
filtrado no lineal consta de dos partes (ver Fig. 1):
Un cifrado en flujo está compuesto por un generador de 1. Un LFSR de longitud L, con polinomio caracterı́stico
secuencia cifrante cuya secuencia pseudoaleatoria de salida P (x) = xL +c1 ·xL−1 +···+cL−1 ·x+cL de coeficientes
se suma módulo 2 con los bits del texto en claro. Dado que binarios que, a partir de un estado inicial IS (Initial
la operación de cifrado es muy rápida, se considera que los State), genera una secuencia de salida {an }.
cifrados en flujo son en general más eficientes que cualquier 2. Una función booleana no lineal F : GF (2)L → GF (2),
otro tipo de cifrado. Esta es la razón principal por la que llamada función filtro, cuyas variables de entrada son
resultan especialmente adecuados para las comunicaciones los L bits de los sucesivos estados del LFSR, y cuya
inalámbricas como las de telefonı́a móvil, Wi-Fi o Bluetooth. imagen es la secuencia binaria {Zn }.
Una de las formas más habituales de construir generadores Aunque las secuencias producidas por LFSR están bien
de secuencia cifrante es mediante el uso de un generador pseu- estudiadas, no puede decirse lo mismo de las secuencias
doaleatorio conocido como registro de desplazamiento lineal o obtenidas con filtrados no lineales.
LFSR (Linear Feedback Shift Register) [9], cuya secuencia de Este trabajo trata sobre la relación entre los diferentes filtra-
salida es la imagen de una función lineal aplicada sobre sus dos no lineales que producen exactamente la misma secuencia.
estados sucesivos. Si se cumplen determinadas condiciones, El objetivo principal es mostrar que, aunque el estudio de
esta estructura produce secuencias con caracterı́sticas muy las propiedades de un generador puede llevar a la conclusión
deseables para uso criptográfico. En particular, si su polinomio de que las propiedades de la secuencia generada son buenas,
caracterı́stico es primitivo, la secuencia generada, llamada m- a veces esa deducción puede ser errónea. En particular, este
secuencia, tiene algunas propiedades muy útiles, tales como un trabajo muestra que dos estructuras con niveles de seguridad
perı́odo grande y una buena distribución estadı́stica de ceros aparentemente diferentes pueden producir la misma secuencia
y unos. Sin embargo, la secuencia producida por un LFSR cifrante. De hecho, este resultado puede verse como una
nunca debe utilizarse como secuencia cifrante en un cifrado demostración de que el nivel de seguridad real de un generador
en flujo porque la linealidad inherente de la estructura podrı́a es siempre el nivel de seguridad del elemento más débil de la
ser fácilmente utilizada para romper el cifrado. clase de generadores equivalentes.
14 A. Fúster-Sabater, P. Caballero-Gil

La organización de este trabajo es de la siguiente forma. La ataques son el gran número de bits de secuencia cifrante
sección II incluye una breve revisión de algunos trabajos rela- interceptados que son necesarios para llevarlos a cabo, y la
cionados. En la sección III, tras los preliminares necesarios, se suposición de que la función filtro no es altamente no lineal.
aborda el problema del recuento general de filtrados no lineales Un ataque general de inversión fue propuesto en [8] contra
equivalentes, ası́ como un estudio de la relación entre ellos. cualquier función filtro. Como consecuencia, se obtuvo una
Después, la sección IV presenta una breve explicación de la caracterización sencilla de los filtrados que son resistentes
propuesta, que está basada en el nuevo concepto de filtrados contra dicho ataque de inversión. Por otra parte, los trabajos
recı́procos, e introduce un nuevo método para el cálculo [6] y [4] propusieron el llamado ataque por decimación contra
de equivalentes débiles de filtrados no lineales mediante un cualquier generador de secuencia cifrante basado en un LFSR.
ejemplo didáctico. Finalmente, la sección V describe algunas La idea es considerar una secuencia decimada de la secuencia
conclusiones y posibles lı́neas futuras de investigación. cifrante interceptada de manera que la secuencia decimada
pueda ser generada a partir de una secuencia generada por el
II. T RABAJOS R ELACIONADOS LFSR decimada. Sin embargo, según [16] si la longitud L del
Una herramienta bastante útil para estudiar secuencias bina- LFSR es un número primo, entonces el ataque por decimación
rias es el algoritmo de Berlekamp-Massey [12], que determina no proporciona ninguna ventaja.
el LFSR más corto que permite generar cualquier secuencia En los últimos años se han publicado varios ataques alge-
binaria finita de entrada. La longitud de dicho LFSR se co- braicos contra cifrados en flujo. En ellos, el atacante utiliza
noce como complejidad lineal de la secuencia. Algunas cotas los bits de la secuencia interceptada para establecer un sistema
generales, tanto inferiores como superiores, de la complejidad no lineal de ecuaciones polinómicas en función de los bits
lineal de las secuencias filtradas han sido publicadas en [10] generados por el LFSR. El principal problema con respecto
y [5], mientras que cotas más ajustadas pero para casos a este tipo de ataques es que, como se muestra en [7], el
especı́ficos pueden encontrarse en [16] y [17]. problema para obtener la solución de un sistema no lineal
El proyecto eSTREAM [3] representa el esfuerzo más de ecuaciones multivariantes es NP-duro, incluso si todas las
importante en cuanto al diseño de cifrados en flujo. Fue un ecuaciones son de segundo grado y el cuerpo subyacente es
proyecto de varios años que tenı́a como objetivo promover el GF (2). Para hacer frente a este problema, se propuso el
diseño de sistemas de cifrado en flujo eficientes adecuados conocido como método algebraico XL [2] que permite resolver
para su adopción generalizada. Como resultado fueron esco- un sistema no lineal de ecuaciones cuadráticas para algunos
gidos siete generadores de secuencia cifrante con dos perfiles filtrados no lineales. Con el fin de incrementar la resistencia
diferentes, software y hardware. Uno de ellos, el llamado frente a este ataque, la función filtro debe ser no sólo altamente
SOSEMANUK, es un generador basado en un LFSR donde no lineal, sino también tener una gran distancia con respecto
la longitud del LFSR utilizado es 10 y el contenido de cada a aproximaciones de pequeño grado algebraico.
etapa es un elemento de GF (232 ). Dicho generador responde Los ataques basados en el equilibrio tiempo-memoria-datos
a principios de diseño similares a los del generador SNOW (time-memory-data tradeoff) [1] pueden evitarse fácilmente en
2.0, predecesor del generador SNOW 3G, que constituye el los filtrados no lineales mediante el uso de LFSR de gran
núcleo de los algoritmos de protección de la confidencialidad longitud. Hay otro ataque interesante, llamado de suposición
y de la integridad en la cuarta generación de comunicaciones y determinación (guess and determine) [14], que explota la
de telefonı́a móvil, LTE y LTE-Advanced, [19]. relación entre los valores internos (tales como la recurrencia
Existen varias referencias bibliográficas interesantes de ata- lineal en el LFSR), y la relación utilizada para construir la
ques criptográficos contra filtrados no lineales. secuencia cifrante a partir de esos valores internos. Como su
El primer ataque de correlación básico contra un filtrado no nombre indica, este ataque trata de adivinar algunos valores
lineal fue publicado en [18]. En él, las correlaciones entre la m- internos para luego usar las relaciones mencionadas y determi-
secuencia {an } producida por el LFSR y la secuencia filtrada nar otros valores internos. Después de un ataque de ese tipo,
{Zn } son utilizadas para construir un generador equivalente el cifrado se considera roto cuando un estado interno completo
consistente en una combinación no lineal de varios LFSR. ha podido ser determinado a partir de valores adivinados. Este
Los principales inconvenientes de ese ataque son la enorme tipo de ataque puede evitarse mediante la elección adecuada
cantidad de tiempo requerido para calcular las correlaciones del polinomio del LFSR.
necesarias, y el requisito de que la función filtro F debe Uno de los trabajos más estrechamente relacionados con el
tener una alta correlación con una función afı́n. Tras definir presente es [11], donde se propuso un ataque por transfor-
la no linealidad de una función booleana como la distancia de mación lineal contra un filtrado no lineal. La idea detrás de
Hamming mı́nima entre esa función y una función afı́n, una ese ataque es transformar el generador dado en un filtrado no
consecuencia práctica del ataque de correlación básico es que lineal equivalente con el mismo LFSR pero con una función
todo diseñador debe elegir siempre funciones filtro altamente filtro más adecuada para algunos de los ataques mencionados.
no lineales para los filtrados no lineales. Luego, el concepto Otro trabajo reciente es [15], donde se define una clase
subyacente a los ataques de correlación básicos fue mejorado, de equivalencia de los filtrados no lineales, demostrando que
proponiéndose el ataque de correlación rápido descrito en [13]. un número importante de propiedades criptográficas no son
Dos desventajas comunes de las diferentes versiones de esos invariantes entre los elementos de la misma clase de equiva-
Calculando Equivalentes Débiles de Filtrados No Lineales 15

Tabla I
lencia. Los propios autores reconocen que la determinación E JEMPLOS DE RECUENTO DE FILTRADOS EQUIVALENTES
del cifrado equivalente más débil de dicha clase es una tarea
muy difı́cil debido a que el tamaño de la clase de equivalencia L 3 4 5 6
es muy grande. El presente trabajo no estudia dicha clase 2L − 1 7 15 31 63
de equivalencia completa, sino sólo uno de sus elementos, N. filtrados 2 2 6 6
que hemos identificado que en muchos casos conduce a un k por filtro 1,2,4 1,2,4,8 1,2,4,8,16 1,2,4,8,16,32
generador equivalente más débil que el filtrado de partida. 3,5,6 7,11,13,14 3,6,12,24,17 5,10,20,40,17,34
En conclusión, cada ataque contra el filtrado no lineal suele 5,10,20,9,18 11,22,44,25,50,37
conducir a nuevas conclusiones sobre propiedades deseables 7,14,28,25,19 13,26,52,41,19,38
del LFSR y/o de la función filtro. En consecuencia, uno 11,22,13,26,21 23,46,29,58,53,43
de los principales temas de investigación con respecto a 15,30,29,27,23 31,62,61,59,55,47
los filtrados no lineales es sobre cómo construir una buena
función booleana para aumentar la resistencia contra los L−1
ataques mencionados. Este trabajo se ocupa de esta cuestión ya polinomios correspondientes a las raı́ces α y β = α2 −1
que demuestra que las propiedades del generador no siempre son siempre recı́procos.
garantizan la seguridad de las secuencias producidas. Cualquier m-secuencia {an } puede escribirse en función de
las raı́ces del polinomio caracterı́stico del LFSR mediante la
III. E STUDIO G ENERAL DE F ILTRADOS E QUIVALENTES PL−1
función traza, de modo que an = T r(αn ) = i=0 αn2 . En
i

En esta sección se obtiene el número de filtrados equiva- consecuencia, dada una secuencia {an } generada por un LFSR
lentes y luego se analiza la relación entre ellos. con polinomio P1 (x) y raı́z α, y otra secuencia {bn } generada
Dado un filtrado no lineal consistente en un LFSR con por otro LFSR con P polinomio P2 (x) y raı́z β tal que β = αk ,
L−1 n2i PL−1 i
polinomio caracterı́stico P1 (x) y función filtro F1 (x), siempre se tiene que an = i=0 α y bn = i=0 αkn2 . Esto se
es posible generar la misma secuencia con cualquier otro muestra con un ejemplo en la tabla II.
LFSR de la misma longitud y otra función filtro. Si dos filtrados definidos por los correspondientes poli-
Si α es una raı́z del polinomio caracterı́stico P1 (x) a la vez nomios y funciones filtro (P1 (x), F1 (x)) y (P2 (x), F2 (x))
que un elemento primitivo de GF (2L ) y (k, 2L − 1) = 1, generan la misma secuencia, entonces se tiene que:
entonces se tiene que αk es también un elemento primitivo de
GF (2L ). Por tanto, se concluye que hay φ(2L − 1) elementos F1 (an , an+1 , ..., an+L−1 ) =
primitivos de GF (2L ). En particular, los L conjugados de L−1
X i
L−1
X i
L−1
X i
cualquier elemento (que son las sucesivas potencias cua- = F1 ( αn2 , α(n+1)2 , ..., α(n+L−1)2 ) =
L−1
dradas), por ejemplo, α, α2 , α4 , α8 , ..., α2 , son elementos i=0 i=0 i=0
primitivos de GF (2L ) además de raı́ces del mismo
QL−1polinomio, F2 (bn , bn+1 , ..., bn+L−1 ) =
i
que puede calcularse mediante la expresión i=0 (x − α2 )
L−1 L−1 L−1
en GF (2L ). X i X i X i
= F2 ( αkn2 , αk(n+1)2 , ..., αk(n+L−1)2 ).
Por tanto, hay φ(2L − 1)/L polinomios primitivos de
i=0 i=0 i=0
GF (2L ), cada uno con L raı́ces que son todos los conjugados
de un elemento primitivo. Puesto que cada uno de estos La forma algebraica normal de una función booleana permi-
polinomios define un LFSR de longitud L, hay Φ(2L − 1)/L te escribir la secuencia generada por un filtrado (P1 (x), F1 (x))
LFSR diferentes de longitud L, cada uno correspondiente a un en función de una raı́z α del polinomio P1 (x) y coeficientes
conjunto de conjugados de un elemento primitivo de GF (2L ). binarios, de la siguiente manera:
En conclusión, dado que cualquier secuencia obtenida con
un filtrado no lineal puede ser generada mediante una función F1 (an , an+1 , ..., an+L−1 ) =
filtro sobre cada LFSR, entonces hay Φ(2L −1)/L filtrados no = c0 an + · · · + cL−1 an+L−1 + c0,1 an an+1 +
lineales diferentes que pueden ser utilizados para generarla.
La relación entre dos elementos primitivos, α y β, raı́ces + · · · +cL−2,L−1 an+L−2 an+L−1 + · · ·+
de dos polinomios caracterı́sticos de dos LFSR diferentes
+c0,1,...L−1 an an+1 · · · an+L−1 =
de longitud L viene dada por la expresión β = αk siendo
mcd(k, 2L − 1) = 1 y k 6= 2i · j (mod 2L − 1) con i, j > 0. L−1
X i
L−1
X i
Esta información sobre la relación entre los polinomios = c0 αn2 + · · · + cL−1 α(n+L−1)2 +
caracterı́sticos P1 (x) y P2 (x) de dos LFSR podrı́a ayudar i=0 i=0
a definir la relación entre las dos funciones filtro F1 (x) y L−1 L−1
X i X i
F2 (x) que forman parte de los dos generadores equivalentes +c0,1 αn2 α(n+1)2 + · · ·+
que producen la misma secuencia filtrada. i=0 i=0
Como se puede ver en la tabla I, los casos k = 1 y L−1 L−1
k = 2L−1 − 1 siempre determinan diferentes conjuntos de i i
X X
+cL−2,L−1 α(n+L−2)2 α(n+L−1)2 +
raı́ces conjugadas que definen diferentes LFSR. De hecho, los i=0 i=0
16 A. Fúster-Sabater, P. Caballero-Gil

Tabla II
E JEMPLOS DE RELACIONES ENTRE RA ÍCES , POLINOMIOS Y m- SECUENCIAS

Raı́ces Polinomio m-secuencia


α, α2 , α4 , α8 , α16 x5 + x4 + x3 + x2 +1 {an }
α15 , α30 , α29 , α27 , α23 recı́proco= x5 + x3 + x2 + x + 1 {bn } inverso de {an }
Q4 i
α3 , α6 , α12 , α24 , α17 i=0 (x − α3·2 ) = x5 + x4 + x2 + x + 1 {cn }
(α3 )15 = α14 , α28 , α25 , α19 , α7 recı́proco= x5 + x4 + x3 + x + 1 {dn }inverso de {cn }
5·2i ) = x5 + x3 + 1
Q4
α5 , α10 , α20 , α9 , α8 i=0 (x − α {en }
(α5 )15 = α13 , α26 , α21 , α11 , α22 recı́proco= x5 + x2 + 1 {fn } inverso de {en }

L−1 L−1 L−1


X i X i X i con el algoritmo de Berlekamp-Massey corresponde a
+ · · · +c0,1,...L−1 αn2 α(n+1)2 · · · α(n+L−1)2 .
los cosets complementarios especulares en los grupos
i=0 i=0 i=0
definidos por cada uno de los LFSR, sobre el orden de
Por tanto, si la expresión se divide en cosets (conjuntos de las funciones filtro influyen los pesos de esos cosets. En
enteros E · 2i mod(2L − 1) con 0 ≤ i ≤ L − 1), entonces la particular, se puede concluir que orden(Fi ) = max(L-
función se puede expresar como: (peso de cada clase lateral vinculado a la factorización
del polinomio de la secuencia)).
F1 (an , an+1 , ..., an+L−1 ) = Por tanto, si existe un filtrado que produce una secuencia en
L−1
X i i
la que la factorización del polinomio sólo corresponde a cosets
= Ccoset1 αn·coset1·2 + Ccoset2 αn·coset2·2 + · · · de peso > L/2, entonces existe un filtrado equivalente que es
i=0 menos fuerte ya que tiene orden < L/2. Con respecto a este
con Ccosetj ∈ GF (2L ). filtrado equivalente, es bien sabido que el LFSR es recı́proco
Los pesos de los cosets cuyos coeficientes son distintos de del original. Sin embargo, descubrir cómo es la función filtro
cero en la expresión anterior proporcionan información sobre es más complejo.
el orden de la función. En particular, si se conoce la relación Por otra parte, si una función filtro tiene orden ∼ L/2, dado
β = αk entre dos filtrados (P1 (x), F1 (x)) y (P2 (x), F2 (x)) que el orden viene dado por el máximo de los pesos de los
que generan la misma secuencia, entonces: cosets asociados a la factorización, entonces existe un filtrado
equivalente de orden ≥ L/2, pues ese grado viene dado por
F2 (bn , bn+1 , ..., bn+L−1 ) = el máximo de los pesos de los cosets. En consecuencia, si se
usa un LFSR recı́proco, se sabe que su peso es al menos L −
L−1
X i i L/2. Esto puede verse como una demostración de la conocida
= Dcoset1 αn·coset1·2 + Dcoset2 αn·coset2·2 + · · ·
recomendación de uso de funciones filtro de orden ∼ L/2.
i=0
De todo lo anterior se puede concluir que para cualquier
con Dcosetj ∈ GF (2L ). filtrado, siempre puede obtenerse un filtrado equivalente para
Entonces, los cosets que aparecen en ambas expresiones generar la misma secuencia, llamado filtrado recı́proco. Con el
están vinculados de manera que para cada coset cosetv en la fin de determinar el filtrado recı́proco para cualquier filtrado
primera expresión, existe otro coset cosetw en la segunda: conocido, el procedimiento propuesto incluye los siguientes
cuatro pasos básicos:
L−1 L−1 1. Determinar las relaciones entre las raı́ces de los polino-
n·cosetv·2i i
X X
Ccosetv α = Dcosetw αn·cosetw·2 . mios caracterı́sticos del LFSR inicial y su recı́proco.
i=0 i=0 2. Expresar ambas m-secuencias mediante la función traza.
IV. F ILTRADOS R EC ÍPROCOS 3. Calcular los coeficientes de los cosets en la expresión
A partir de los resultados mostrados en la sección anterior, de la función filtro.
si se consideran dos LFSR con polinomios recı́procos P1 (x) 4. Elegir los coeficientes adecuados para construir la fun-
y P2 (x), se pueden obtener dos conclusiones. ción filtro recı́proca.
1. Si se aplica la misma función filtro F (x) a ambos LFSR, Este procedimiento se ilustra con un ejemplo didáctico.
se generan secuencias diferentes. Se puede utilizar el Ejemplo:
Dado un LFSR de longitud L = 5, polinomio caracterı́stico
algoritmo de Berlekamp-Massey sobre las secuencias
P1 (x) = x5 + x3 + 1, y estado inicial IS1 = (1, 0, 0, 0, 0), se
filtradas resultantes y a partir de las factorizaciones de
aplica la función filtro de orden 4:
los polinomios obtenidos, se concluye que siempre se
corresponden exactamente con los mismos cosets. F1 (a0 , a1 , a2 , a3 , a4 ) =
2. Para generar la misma secuencia con esos LFSR, se
= a0 a1 a3 a4 + a0 a2 a3 a4 + a0 a1 a4 + a0 a1 a3 + a1 a3 a4 +
deben utilizar dos funciones filtro diferentes F1 (x) y
F2 (x). Dado que la factorización del polinomio obtenido +a0 a3 a4 + a1 a2 + a1 a3 + a2 a4 + a0 a2 + a0 a3 + a1 + a2 + a3
Calculando Equivalentes Débiles de Filtrados No Lineales 17

Tabla III
para producir la secuencia filtrada de periodo 25 − 1: C OEFICIENTES DE LOS COSETS 3, 5 Y 1 PARA TODOS LOS POSIBLES
T ÉRMINOS DE ORDEN 2
0010110110101101110000100101011.
D3 D5 D1
El LFSR recı́proco tiene polinomio caracterı́stico P2 (x) =
b0 b1 β 19 β 30 β 16
x + x2 + 1, cuya raı́z β se relaciona con la raı́z α de P1 (x)
5
5−1 b0 b2 β7 β 29 β
según la expresión β = α2 −1 = α15 . Además, gracias al
b0 b3 β β 19 β 17
inverso modular de 15 (mod 31), puede obtenerse la relación
b0 b4 β 14 β 27 β2
inversa α = β 29 .
b1 b2 β 22 β4 β 17
Al mismo tiempo, las m-secuencias {an } y {bn } obtenidas b1 b3 β 10 β3 β2
de P1 (x) y P2 (x), respectivamente, pueden expresarse me- b1 b4 β4 β 24 β 18
diante sus expresiones traza: b2 b3 β 25 β9 β 18
an = αn + α2n + α4n + α8n + α16n b2 b4 β 13 β8 β3
b3 b4 β 28 β 14 β 19
bn = β n + β 2n + β 4n + β 8n + β 16n .
En consecuencia, las funciones filtro F1 y F2 pueden
expresión de F2 . Como antes, para cada término no lineal de
expresarse en función de los φ(25 − 1)/5 = 6 cosets
orden 2, se pueden obtener los coeficientes D3 y D5 mediante
{15, 11, 7, 5, 3, 1}. En particular, el coeficiente C15 correspon-
el test de presencia de raı́ces, mientras que el coeficiente D1
diente al coset de orden máximo 4 puede conseguirse mediante
correspondiente al coset de peso 1 puede calcularse agrupando
el test de presencia de raı́ces [16], mientras que los coeficientes
términos, como se muestra en la tabla III.
C7 y C11 correspondientes a los cosets de orden 3 pueden
Una versión interesante del problema de la mochila discreta
calcularse mediante agrupación de términos:
definido mediante los coeficientes de la tabla III es entonces
C15 = α6 , C7 = α24 , C11 = α4 . resuelto de manera que para cada una de las dos primeras
columnas correspondientes a los cosets de peso máximo, se
A partir de estos valores se puede concluir que no existen calculan los elementos cuya suma coincide con el correspon-
más cosets de menor peso en la expresión de la función filtro diente coeficiente conocido. En particular, la solución muestra
F1 . Por tanto, que los coeficientes correspondientes a los productos b0 b2 ,
F1 = C15 α15n + C15
2 30n 4 29n
α + C15 8 27n
α + C15 16 23n
α + C15 α + b1 b2 , b1 b3 , b1 b4 y b3 b4 dan dos valores:

+C7 α7n + C72 α14n + C74 α28n + C78 α25n + C716 α19n + D3 = β 7 + β 22 + β 10 + β 4 + β 28 = β 28

+C11 α11n + C11


2 22n
α 4 13n
+ C11 α 8 26n
+ C11 α 16 21n
+ C11 α . D5 = β 29 + β 4 + β 3 + β 24 + β 14 = β 30 .

Si se sustituye α = β 29 en esa expresión, la función filtro Este resultado aplicado sobre la última columna implica que,
F2 que genera la misma secuencia se puede expresar como: para obtener la suma final D1 = β 19 , tienen que incluirse los
elementos lineales b1 + b2 + b4 en la función filtro F2 :
F2 = C15 β 29·15n + C15
2 29·30n
β 4 29·29n
+ C15 β +
D1 = β + β 17 + β 2 + β 18 + β 19 + β + β 2 + β 4 = β 19 .
8 29·27n 16 29·23n 29·7n
+C15 β + C15 β + C7 β + C72 β 29·14n +
Por tanto, se obtiene la expresión final de la función filtro
+C74 β 29·28n + C78 β 29·25n + C716 β 29·19n + C11 β 29·11n + equivalente:
2 29·22n 4 29·13n 8 29·26n 16 29·21n F2 (b0 , b1 , b2 , b3 , b4 ) =
+C11 β + C11 β + C11 β + C11 β =
= b0 b2 + b1 b2 + b1 b3 + b1 b4 + b3 b4 + b1 + b2 + b4 .
= C15 β n + C15
2 2n 4 4n
β + C15 8 8n
β + C15 16 16n
β + C15 β +
Esta función aplicada sobre el LFSR recı́proco con poli-
+C7 β 17n + C72 β 3n + C74 β 6n + C78 β 12n + C716 β 24n + nomio caracterı́stico P2 (x) = x5 + x2 + 1 y estado inicial
+C11 β 9n + C11
2 18n
β 4 5n
+ C11 8 10n
β + C11 β 16 20n
+ C11 β . IS2 = (1, 0, 0, 1, 0), produce la misma secuencia que el
filtrado de entrada
En consecuencia, se puede concluir que en esta expresión
sólo aparecen los cosets 1, 3 y 5. Por otra parte, sus coefi- 0010110110101101110000100101011.
cientes D1 , D3 y D5 vienen dados por: F2 es una función de orden 2 con el mismo número de
D1 = C15 = α = β 6 29·6
=β 19 términos de orden 2 y de orden 1 que F1 , pero sin términos
de orden 3 ni de orden 4. Por tanto, desde un punto de vista
D3 = C72 = α24·2 = α17 = β 29·17 = β 28 criptográfico, el atacante podrı́a lanzar un ataque más eficaz
4 contra F2 que contra F1 , aunque ambos filtrados generan
D5 = C11 = α4·4 = α16 = β 29·16 = β 30 .
exactamente la misma secuencia.
Dado que el peso máximo de los cosets en esa expresión Por tanto, este ejemplo muestra que el método propuesto se
es 2, se analizan los términos no lineales de orden 2 en la puede aplicar sobre cualquier filtrado conocido para producir
18 A. Fúster-Sabater, P. Caballero-Gil

un filtrado equivalente, que en el caso del LFSR recı́proco es [8] Golic, J.D., Clark, A., Dawson, E. Generalized inversion attack on
de un orden inferior. Esta es una demostración de que para nonlinear filter generators. IEEE Transactions on Computers, 49(10),
pp. 1100-1109, 2000.
algunos generadores aparentemente seguros pueden existir [9] Golomb, S.W., Shift Register-Sequences, Aegean Park Press, Laguna
equivalentes más débiles, y lo que es más importante, que Hill, 1982.
estos equivalentes pueden ser calculados. [10] Key, E.L. An analysis of the structure and complexity of nonlinear binary
sequence generators. IEEE Transactions on Information Theory, 22(6),
pp. 732-736, 1976.
V. C ONCLUSIONES Y T RABAJOS F UTUROS [11] Lohlein, B. Design and analysis of cryptographic secure keystream
generators for stream cipher encryption. PhD thesis, Faculty of Electrical
Este trabajo ha abordado el problema del cálculo de filtrados and Information Engineering, University of Hagen, Germany, 2001.
no lineales equivalentes que producen la misma secuencia que [12] Massey, J. L. Shift-register synthesis and BCH decoding, IEEE Tran-
un filtrado conocido. En particular, se presenta el análisis sactions on Information Theory, IT-15 (1), pp. 122-127, 1969.
[13] Meier W., Staffelbach, O.J. Fast correlation attacks on stream ciphers.
de un caso en el que un LFSR recı́proco se utiliza para Journal of Cryptology, 1(3), pp. 159-176, 1989.
definir un filtrado equivalente. De hecho, en esas condiciones [14] Pasalic, E. On guess and determine cryptanalysis of LFSR-based stream
existen relaciones especı́ficas entre ambas funciones filtro que ciphers. IEEE Transactions on Information Theory, 55(7), pp. 3398–
3406, 2009.
permiten la definición de un método especı́fico para calcular [15] Ronjom, S., Cid, C. Nonlinear equivalence of stream ciphers. Fast
la función filtro equivalente de una de partida. El estudio Software Encryption, pp. 40–54. Springer-Verlag, 2010.
concluye que el generador equivalente puede tener un nivel de [16] Rueppel, R.A. Analysis and Design of Stream Ciphers. Springer-Verlag,
1986.
seguridad inferior al del filtrado original. Por tanto, el método [17] Schneider, M. Methods of generating binary pseudo-random sequences
propuesto permite la construcción de equivalentes más débiles for stream cipher encryption. PhD thesis, Faculty of Electrical Enginee-
que los filtrados de partida. En conclusión, este trabajo muestra ring, University of Hagen, Germany, 1999.
[18] Siegenthaler, T. Decrypting a class of stream ciphers using ciphertext
que dos estructuras con niveles de seguridad aparentemente only. IEEE Transactions on Computers, 100(1), pp. 81–85, 1985.
diferentes en función de sus propiedades, pueden de hecho [19] SNOW 3G specification. Specification of the 3GPP Confidentiality and
producir exactamente la misma secuencia cifrante, por lo que Integrity Algorithms UEA2 and UIA2. Available from http://www.3gpp.
org/DynaReport/35216.htm
en realidad ambos generadores debe ser considerados tan
inseguros como el más débil de los dos.
Dada la dificultad del tema, todavı́a quedan muchas cues-
tiones abiertas. En particular, una de ellos es el desarrollo
de métodos óptimos para la elección de los coeficientes
correspondientes que aparecen en la última fase del método
propuesto. Además, un estudio similar al que se muestra en
este trabajo, pero sobre otros equivalentes que no se basen
en el LFSR recı́proco, podrı́a ser útil para llevar a cabo
potenciales ataques contra los filtrados no lineales.

AGRADECIMIENTOS
Investigación financiada por el MINECO y la fundación
Europea FEDER mediante los proyectos TIN2011-25452 e
IPT-2012-0585-370000.

R EFERENCIAS
[1] Biryukov, A., Shamir, A. Cryptanalytic time/memory/data tradeoffs for
stream ciphers. Advances in Cryptology, ASIACRYPT00, Lecture Notes
in Computer Science 1976, pp. 1-13. Springer-Verlag, 2000.
[2] Courtois, N., Klimov, A., Patarin, J., Shamir, A. Efficient algorithms
for solving overdefined systems of multivariate polynomial equations.
Advances in Cryptology, EUROCRYPT00, Lecture Notes in Computer
Science 1807, pp. 392-407. Springer-Verlag, 2000.
[3] eSTREAM: the ECRYPT Stream Cipher Project. Available from http:
//www.ecrypt.eu.org/stream/
[4] Filiol, E. Decimation attack on stream ciphers. Advances in Cryptology,
INDOCRYPT 2000, Lecture Notes in Computer Science 1977, pp. 31-
42. Springer-Verlag, 2000.
[5] Fuster-Sabater A., Caballero-Gil, P. On the linear complexity of nonli-
nearly filtered pn-sequences. Advances in Cryptology, ASIACRYPT94,
Lecture Notes in Computer Science 917, pp. 80-90. Springer-Verlag,
1995.
[6] Games, R.A., Rushanan, J.J. Blind synchronization of m- sequences with
even span. Advances in Cryptology, EUROCRYPT93, Lecture Notes in
Computer Science 765, pp. 168-180. Springer-Verlag, 1994.
[7] Garey, M.R., Johnson, D.S. Computers and Interactability. Freeman and
Company, 1979.
RECSI 2014, Alicante, 2-5 septiembre 2014

Aportes para el estudio de anillos en ataques


cı́clicos al criptosistema RSA
Juan Pedro Hecht, Universidad de Buenos Aires, Jorge Ramió Aguirre, Abel Casado,
Universidad Politécnica de Madrid

Resumen—Se aporta un análisis teórico sobre un software producen en dicho ataque, utilizando el software educacional
desarrollado para analizar experimentalmente los anillos o ciclos RingRSA desarrollado en el proyecto que será próximamente
de recifrado en el algoritmo RSA. La idea es predecir analı́tica- de dominio público, planteándose un interesante tema alge-
mente las longitudes de anillos observadas y en casos particulares
predecir la frecuencia de aparición de las distintas longitudes braico vinculado a dos aplicaciones criptográficas; a saber, el
cuando se aplica el método a los mensajes m ∈ Zn . También se orden de los generadores congruenciales modulares (ver Blum-
discuten consideraciones vinculadas a la potencial factorización Blum-Shub [3]) y el ataque cı́clico al criptosistema RSA [3,
del módulo y la obtención de la clave privada a partir de la clave 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]. Ambos han sido estudiados
pública. de manera extensa a lo largo de los años; basta consultar la
Palabras clave—Aritmética modular (modular arithmetics), ata- bibliografı́a citada en las referencias arriba indicadas.
que cı́clico (cycle attack), campos finitos (finite fields), criptografı́a Para el caso del ataque a RSA, está demostrado que este
de clave pública (public key cryptography), criptosistema RSA
método de cifrado cı́clico permite descifrar un criptograma que
(RSA cryptosystem), grupos cı́clicos (cyclic groups), generado-
res congruenciales modulares (modular congruential generators), cuenta con confidencialidad, es decir un mensaje secreto que
teorı́a de números (number theory). se ha cifrado con la clave pública de destino, contando para
ello solamente con los datos públicos de la clave en cuestión de
la vı́ctima, esto es los valores n y e. En teorı́a, permite además
I. N OMENCLATURA
quebrar el criptosistema ya que brinda un método para obtener
Adoptamos la siguiente nomenclatura: la clave privada d a partir de la clave pública e a través de
p, q primos la factorización del módulo [3, 4]. El objetivo del presente
n = pq módulo del cifrado RSA trabajo es:
ϕ(n) = (p-1)(q-1) función indicador de Euler a. Computar analı́ticamente las posibles longitudes de los
λ(n) = ϕ(n)/(p-1, q-1) =[p-1, q-1] anillos generados por el programa RingRSA.
donde λ() es la función de Carmichael b. Para determinados casos, calcular analı́ticamente las
e coprimo con λ(n) frecuencias de aparición de las distintas longitudes de los
exponente público de cifrado RSA anillos generados por el programa RingRSA.
d exponente privado de cifrado RSA Como se demuestra más adelante, ambos objetivos se cum-
donde ed ≡ 1 mod λ (n) plen satisfactoriamente.
m (entero, (0 ≤ m ≤ n-1) mensaje a cifrar
c (cifrado) = me (mod n)
III. P LANTEAMIENTO DEL PROBLEMA
k longitud de anillo o perı́odo de ciclo
Zn enteros módulo n El problema central consiste en computar sucesivamente
Z∗n enteros módulo n coprimos con n cifrados iterados (mod n) hasta completar un ciclo u órbita
a|b a divide a b del exponente.
(a, b) máximo común divisor de a y b 2 3 k
[a,b] mı́nimo común múltiplo de a y b me , me , me , ..., me ≡ m (mod n)
{A}conjunto A
|A|cardinal u orden del conjunto A m ∈ Zn y (e, λ (n)) = 1
<g> grupo cı́clico generado por g
ordm (e) orden multiplicativo de e módulo m Dado que las referencias a las ecuaciones serán siempre
locales, éstas no se enumerarán.
La existencia de k está asegurada [3, 9, 12]; existe un
II. I NTRODUCCI ÓN exponente de cifrado para el cual se recupera el mensaje m,
Fruto de la investigación realizada durante los últimos meses exactamente una iteración previa al volver al cifrado original
de 2013 e inicio de 2014 en el Proyecto Fin de Grado c [3].
de tı́tulo “Software para el estudio del comportamiento de Queda claro que los sucesivos exponentes de recifrado
los ataques por cifrado cı́clico en RSA” [1] en la Escuela forman un grupo multiplicativo cı́clico cuyo generador es el
Técnica Superior de Ingenierı́a de Sistemas Informáticos de la exponente e:
Universidad Politécnica de Madrid, su director presenta en [2]
< e > : e1 , e2 , e3 , e4 , ..., ek ≡ 1 mod λ (n)

unos primeros resultados sobre la generación de anillos que se
20 J.P. Hecht, J. Ramió, A. Casado

V. D ISTRIBUCI ÓN ANAL ÍTICA DE LONGITUDES DE



CICLOS EN Zλ(n)
k = ordλ(n) (e)
Formalizando el análisis de los generadores congruenciales
Donde k es el orden multiplicativo de e módulo λ (n). El modulares, se parte de
máximo valor de k, la cota superior de recifrados necesarios
para recuperar el mensaje, está dada por: my ≡ my−1 e (mod n) 0 ≤ my ≤ n − 1


Zλ(n) = max(k) = λ(λ(n))
y = 1, 2, 3, ...
Los posibles valores de k son divisores de max (k) [12]: Donde m0 el valor inicial debe ser coprimo con n y el
k | λ(λ(n)) exponente e ≥ 2. Se demuestra [6] que si (e, λ (n)) = 1 la
secuencia resulta periódica pura (sin fase aperiódica inicial)
ya que los órdenes de los subgrupos son divisores del orden con perı́odo k, entonces
de un grupo [10].
k = ordx (e) donde x = ordn (m0 )

IV. D ISTRIBUCI ÓN ESTAD ÍSTICA DE VALORES Zλ(n) Evidentemente esta última relación [6] permite calcular,
Para el estudio de la distribución estadı́stica, se buscan para cada m0 coprimo con n y cada e coprimo con λ (n), la
primos p, q al azar y sin estructura. longitud del perı́odo multiplicativo o longitud del anillo, con
Sabemos que los posibles valores de k son divisores de lo cual se cumple uno de los objetivos del trabajo. Obviamente
λ (λ (n)). Se puede estudiar su distribución analı́tica o es- cada resultado obtenido con RingRSA ası́ lo verifica.
tadı́sticamente según cómo se elijan los valores de los primos De aquı́ en adelante consideramos que m y e se ajustan a
p, q. las condiciones que generan secuencias periódicas puras. Para
Desde el punto de vista estadı́stico, si se define r el mayor estudiar la distribución analı́tica, se buscan primos p, q con
factor primo del indicador (y de lambda) de uno de los primos, estructura especial.
digamos p, entonces r es un divisor de p-1. Acorde a lo Sea n = pq donde p, q son primos de Sophie Germain.
demostrado en [9] respecto a la factorización tı́pica y el mayor Entonces p = 2r+1 y q = 2s+1 donde r, s son primos, que si
factor primo, r tendrá un tamaño cercano al 63 % del tamaño también fuesen de Sophie Germain, r = 2t+1 y s = 2u+1 donde
de p-1. O sea para n de 1.024 bits, r será del orden de 322 t, u son primos. Ambos conjuntos de primos (t, r, p) y (u, s,
bits (el 63 % de 512 bits). Según [4] esto implica que: q) constituyen cadenas de Cunningham de primera especie.
Los órdenes multiplicativos posibles de los integrantes del
1. Si se elige al azar un e cuyo k es múltiplo de r, la grupo multiplicativo Z*n de cifrados RSA [9, 10] son los
longitud del ciclo será al menos de tamaño r, lo que divisores de:
hace inviable el ataque cı́clico.
ϕ (n) (p − 1) (q − 1)
2. La probabilidad de elegir al azar un e con un orden λ (n) = = = 2rs
multiplicativo que no sea múltiplo de r es 1/r, lo que M CD(p − 1, q − 1) 2
resulta despreciable (para n de 1024 bits p˜10−322 ). La De las propiedades bien conocidas de los grupos cı́clicos
deducción de esta consecuencia puede obtenerse de la (por ejemplo ver 2.172 y 2.173 de [3]) surge claramente que
discusión planteada en [4]. cada divisor d | 2rs define un único subgrupo cı́clico de orden
3. Debe quedar en claro que lo antedicho es válido para ϕ(d). Obviamente se cumple el conocido teorema [10]
todo valor e. X
ϕ (n) = ϕ(d)
En conclusión, la inmensa mayorı́a de pares de los valores d|ϕ(n)
(m,e,p) elegidos para el ataque cı́clico resultan ser extrema-
y el cardinal del grupo es:
damente costosos en tiempo [4]. Obviamente, los ensayos
computacionales con RingRSA ası́ lo ilustran. Dado que ∗
|Z n | = ϕ(n) = 4rs
el generador congruencial modular representa un generador
pseudoaleatorio de calidad criptográfica [3] y que no parece Ası́ resulta que ϕ(d) es la multiplicidad de veces con las
haber regularidad en la distribución de divisores de λ(n), no cuales se presenta cada divisor d, o sea cuántos elementos
tiene sentido buscar una función de densidad de probabilidades tienen un orden determinado. A su vez, los órdenes multipli-

a priori cuando los primos se eligen al azar y son desconocidos cativos de los integrantes del grupo multiplicativo Zλ(n) de
[7]. Sin embargo, para ciertos valores especiales de primos exponentes de cifrados RSA [5, 6, 7, 8] son los divisores de:
p, q es posible dar una respuesta. Para dar sustento analı́tico
λ (λ (n)) = [λ (2) , λ (r) , λ (s)] = [1, 2t, 2u] = 2tu
a lo antedicho, en el siguiente apartado se deduce que es
posible obtener la función de densidad de longitudes de anillos
si se conoce la factorización del módulo n en sus primos
componentes.
Aportes para el estudio de anillos en ataques cı́clicos al criptosistema RSA 21

Y el cardinal del grupo en cuestión es [12]:


 

|Z λ(n) | = ϕ (λ (n)) = ϕ (2) ϕ (r) ϕ (s) = M ultiplicidad orden 2 en Z ∗λ(n)

= 1 (2t) (2u) = 4tu = ϕ (1) ϕ (2) + ϕ (2) ϕ (1) + ϕ (2) ϕ (2) = 3


También los exponentes forman un grupo multiplicativo Finalmente, los divisores de λ (λ (n)) = 2tu resultan ser:
cı́clico, por lo tanto vale lo expresado antes (2.172 y 2.173
de [3]), por lo cual es evidente que cada divisor d | λ(λ (n)) {1, 2, t, u, 2t, 2u, tu, 2tu}
define un único subgrupo cı́clico de orden ϕ(d) y se cumple y generan los siguientes subgrupos de exponentes que se
[10]: presentan en la siguiente tabla.
X
λ(λ (n)) = ϕ(d) ∗
Cuadro III: SUBGRUPOS DE EXPONENTES EN Zλ(n)
d|λ(λ(n))
Orden Multiplicidad Detalle
Para λ (n) = 2rs, resulta:
1 1 =ϕ(1)ϕ(1)
c ∈ Z ∗λ(n) , donde c ≡ a (mod r) y c ≡ b (mod s) 2 3 =ϕ(1)ϕ(2) + ϕ(2)ϕ(1) + ϕ(2)ϕ(2)
t t-1 =ϕ(t)
y se cumple la siguiente relación entre los órdenes de ciclos
u u-1 =ϕ(u)
de potencias modulares: 2t 3t-3 =ϕ(2t)ϕ(1) + ϕ(t)ϕ(2) + ϕ(2t)ϕ(2)
2u 3u-3 =ϕ(1)ϕ(2u) + ϕ(2)ϕ(u) + ϕ(2)ϕ(2u)
ord (c, λ (n)) = [ord (a, r) , ord (b, s)]
tu tu-t-u+1 =ϕ(t)ϕ(u)
Y se generan los siguientes subgrupos de exponentes para 2tu 3tu-3t-3u+3 =ϕ(2t)ϕ(u) + ϕ(t)ϕ(2u) + ϕ(2t)ϕ(2u)
Zr∗ y Zs∗ : Suma 4tu ∗
=|Zλ(n) |

Cuadro I: SUBGRUPOS DE EXPONENTES PARA Zr∗ Disponiendo de esta tabla y su segunda columna, verdadero
Orden Multiplicidad Detalle aporte de este trabajo al no existir antecedentes publicados, se
1 1 =ϕ(1)
posee la distribución estadı́stica de las frecuencias de aparición
2 1 =ϕ(2) de los ocho órdenes posibles, cualesquiera sean los primos
t t-1 =ϕ(t) t, u y el valor del mensaje m y exponente e al aplicar el
2t t-1 =ϕ(2t) ataque cı́clico al RSA. A continuación se ilustra su aplicación
Suma 2t =|Zr∗ | a un ejemplo numérico sobre dos cadenas de Cunningham de
primera especie.

Cuadro II: SUBGRUPOS DE EXPONENTES PARA Zs∗ VI. E JEMPLO NUM ÉRICO DE LA DISTRIBUCI ÓN
ANAL ÍTICA DE VALORES DE LONGITUDES DE CICLOS EN
Orden Multiplicidad Detalle ∗
Zλ(n)
1 1 =ϕ(1)
Adoptando los sı́mbolos del apartado previo, sean:
2 1 =ϕ(2)
u u-1 =ϕ(u) t = 5, r = 11, p = 23 y u = 89, s = 179, q = 359 cadenas
2u u-1 =ϕ(2u) de primos Cunningham de primera especie. Ası́ resulta:
Suma 2u =|Zs∗ |
n = pq = 8.257
Cuando se computan las multiplicidades de los órdenes en |Z*n |= ϕ(n) = (p-1)(q-1) = (2r)(2s) = 4rs = 7.876
Z ∗λ (n) hay que considerar las combinaciones de órdenes de λ(n) = ϕ(n)/2 = 2rs = 3.938
Zr∗ y Zs∗ .
Por ejemplo, para el orden 2 en Z ∗λ (n) es necesario que la |Z*λ( n) |= ϕ(λ(n)) = ϕ(2rs) = ϕ(2)ϕ(r)ϕ(s)
combinación de órdenes en Zr∗ y Zs∗ genere un mcm cuyo = 1*2t*2u = 4tu = 1.780
resultado sea 2. En este caso, hay tres combinaciones posibles λ(λ(n)) = [λ(2), λ(r), λ(s)] = [1, 2t, 2u] = 2tu = 890
con ese resultado : [1,2], [2,1] y [2,2]. La multiplicidad de Divisores de λ (λ(n)) = {1, 2, t, u, 2t, 2u, tu, 2tu} =
2 en Z ∗λ (n) resulta en la suma de los productos de las {1, 2, 5, 89, 10, 178, 445, 890]
multiplicidades de estas tres combinaciones:
Y se generan los siguientes ciclos de anillos:
22 J.P. Hecht, J. Ramió, A. Casado


Cuadro IV: SUBGRUPOS DE EXPONENTES EN Zλ(n)
Orden Multiplicidad Detalle del cómputo
1 1 =1
2 3 =3
5 4 =t − 1
89 88 =u − 1
10 12 =3t − 3
178 264 =3u − 3
445 352 =tu − t − u + 1
890 1056 =3tu − 3t − 3u + 3
Suma 1780 ∗
=|Zλ(n) |

Es menester aclarar que esta tabla emplea las mismas


fórmulas deducidas para la tabla final del apartado previo.
Cualquiera sea me (mod n), la longitud del ciclo de recifrado
será un miembro de la lista de la primera columna. La función
de densidad de longitudes se desprende de la segunda columna.
Analizando dicha columna, se observa que la mayorı́a de
longitudes de ciclo son relativamente grandes. Ası́ de las ocho
longitudes de ciclo disponibles para combinaciones de (m, e)
tomadas al azar, el 60 % posee la máxima longitud posible.
En la figura 1 se genera esta clave con RingRSA eligiendo
un exponente válido al azar.
Una vez generada la clave, puede comprobarse de manera
experimental que las longitudes de los ciclos de recifrado son
miembros divisores de λ(λ(n)), que están reflejados en la lista
de la primera columna. Figura 1: Generación de la clave p=23, q=359, e=17
Este exponente, al igual que cualquier otro, genera su órbita
de valores divisores. En la Figura 2 se ven que están presentes
los valores de la primera columna {1, 10, 89, 890}; pero no
los valores {2, 5, 178, 445}.
Por ejemplo si ahora elegimos e=31, se generan anillos de
longitudes {1, 5, 89, 445} como se nuestra en la figura 3.

VII. T RABAJOS F UTUROS


1. El ataque cı́clico al RSA como algoritmo de factoriza-
ción
Si se obtiene alguna longitud de anillo (orden k de
recifrado), parece ser posible llegar a factorizar [4] y
obviamente obtener luego la clave privada. Este te-
ma está siendo analizado por nosotros. También hay
evidencia de que es posible factorizar si se obtiene
computacionalmente un múltiplo de ϕ(n) [13]. De todas
maneras, cabe añadir que completar experimentalmente
un anillo no es tarea fácil si el orden del módulo
es suficientemente grande, por lo cual el método de
factorización de ataque cı́clico es inviable en la práctica.
Sin embargo, el ataque siempre es teóricamente exitoso
al menos para obtener el mensaje original.

Figura 2: Anillos que se generan en la clave p = 23,


q = 359 utilizando e = 17
Aportes para el estudio de anillos en ataques cı́clicos al criptosistema RSA 23

de ejemplo, una clave RSA de 50 bits con primos p y q


de 25 bits cada uno (n = pq = 29.221.417 x 24.917.353 =
728.120.362.549.201) para e=15.131 encuentra el men-
saje secreto 2 en 300 milisegundos, realizando tan sólo
259.956 cálculos; pero si la clave pública es e=65.537,
el mismo ataque tardará 21 segundos al necesitar ahora
realizar 13.777.668 cálculos.
En la figura 4 se muestra el resultado del ataque cı́clico
al mensaje 2 para dicha clave con exponente 65.537 en
21 segundos.
Más aún. Con RingRSA elegimos otra clave de dimen-
siones similares pero con un tamaño un 20 % menor (n =
pq = 20.713.829 x 28.164.079 = 583.385.916.348.491)
usando e=65.537 y se buscan los anillos de la cla-
ve comenzando como siempre por el número 2. Des-
pués de mil minutos, se detiene la búsqueda y con
48.040.766.272 valores ya obtenidos no se encuentra aún
ese primer anillo. Queda por tanto la posibilidad de que
Figura 3: Anillos que se generan en la clave p = 23, el número 2 se encuentre en uno de estos cuatro divi-
q = 359 utilizando e = 31 sores de Carmichael: 54.452.402.235, 72.603.202.980,
108.904.804.470 o bien 217.809.608.940 [14]. Para el
2. Cómo prevenir el ataque cı́clico al RSA mayor divisor de Carmichael de esta clave, a una tasa
de 800.000 cifrados por segundo, el programa tardarı́a
Para prevenir o dificultar que prospere el quiebre de más de 75 horas en encontrar ese anillo.
RSA a través de un ataque cı́clico [12] se debe cumplir,
dados los recursos actuales, que:

λ (λ (n)) y ordλ(n) (e) > 10200


Esta condición se logra con primos fuertes p, q tales
que:
p−1 p−3
y sean primos
2 4
Y lo mismo para q. Si p y q lo fuesen, se verifica:
p−1 q−1
λ (n) = 2
2 2
 
p−3 q−3
λ (λ (n)) = mcm 2, , = (p−3)(q−3)/8
2 2
Sin embargo hay opinión fundada que la primera condi-
ción p−1
2 serı́a suficiente para bloquear el ataque cı́clico
[3].
3. Complejidad computacional del ataque cı́clico
Este ataque, a pesar de ser teóricamente eficaz, parece
pertenecer a la clase de complejidad NP, es decir un
problema de tanta dificultad como el propio problema Figura 4: Ataque al valor secreto 2 para la clave
de la factorización de enteros [3, 12]. La evidencia con datos públicos n = 728.120.362.549.201 y e = 65.537
empı́rica de lo antedicho es que si n se incrementa
lo suficiente, el ataque cı́clico se vuelve inútil con los En otras palabras, para un par de claves muy similares,
recursos computacionales actuales. De hecho, en [6] se en el primer caso el ataque por cifrado cı́clico reque-
demuestra que si se consideran primos tomados
√ al azar, rirá un cómputo y un tiempo casi un millón de veces
el ataque cı́clico es de complejidad O( n), lo que lo menor que en el segundo, siendo incluso la primera clave
hace equivalente al método de factorización por división un 20 % mayor que la segunda. Otro aspecto interesante
de primos menores a la raı́z cuadrada [9]. a estudiar en el futuro.
No obstante, la aparición de anillos basados en el
cifrado cı́clico y comentado en este artı́culo, presenta
interesantes aspectos para un posterior estudio. A modo
24 J.P. Hecht, J. Ramió, A. Casado

VIII. C ONCLUSIONES
Se ilustra que es factible calcular las longitudes de ciclos
(anillos), las frecuencias de longitudes de ciclos de recifrado Pedro Hecht (M 2012) nació en Buenos Aires,
en el método de ataque cı́clico al RSA para elecciones Argentina, el 14 de Julio de 1944. Se graduó como
determinadas de valores n, m, e y que a partir de un único Licenciado en Análisis de Sistemas (ESIO-DIGID)
y como Doctor de la Universidad de Buenos Aires.
ataque cı́clico exitoso al RSA serı́a posible, en teorı́a, hallar Actualmente es Profesor Titular de Criptografı́a I y II
la clave privada a partir de la pública. de la Maestrı́a en Seguridad Informática dependiente
Este trabajo plantea algunos temas abiertos como trabajo de las Facultades de Cs. Económicas, Cs. Exactas
y Naturales y de Ingenierı́a de la Universidad de
futuro, entre los que se encuentran los presentados en el Buenos Aires (UBA) e idéntico cargo en la Facultad
apartado anterior: la deducción práctica de la clave privada de Ingenierı́a del Ejército (EST). Además es el Coor-
d mediante este tipo de ataques cı́clicos completando un solo dinador Académico de la citada Maestrı́a (UBA) y
es investigador en modelos matemáticos en UBACyT (UBA). Es miembro de
anillo, la posibilidad de dificultar o bloquear este ataque si se Criptored, IEEE Argentina, ACM SIGCSE, ACM SIGITE y otras. Áreas de
utilizan primos seguros en el diseño de las claves, todo ello interés actual: álgebra no conmutativa aplicada a la criptografı́a.
con el soporte del mencionado software y el correspondiente
desarrollo analı́tico.

R EFERENCIAS
[1] A. Casado, J Ramió, Software para el estudio del comportamiento de
los ataques por cifrado cı́clico en RSA, programa RingRSA de próxima Jorge Ramió Jorge Ramió nació en Barcelona,
publicación en Internet, Proyecto Fin de Grado de Abel Casado Gimeno, España, el 22 de Enero de 1952. Doctor en Sistemas
ETSISI-UPM, 2014. Inteligentes en la Ingenierı́a por la Universidad de
[2] J Ramió, , RSA cumple 36 años y se le ha caducado el carné joven, León (2013), Máster en Ingenierı́a de Sistemas y
Rooted CON Madrid,Marzo 2014. Servicios Accesibles para la Sociedad de la Infor-
http://www.criptored.upm.es/guiateoria/gt m001k1.htm mación por la Universidad Politécnica de Madrid
[3] A. J. Menezes, P. C. van Oorschot and S. A. Vanstone, Handbook of (2011) y Doctor Ingeniero de Telecomunicación
Applied Cryptography, CRC Press, Boca Raton, FL, 1996. Diplomado por la Universidad Politécnica de Madrid
[4] T. Pornin, Cycle Attack on RSA, (1983). Creador de Criptored y sus proyectos deri-
http://crypto.stackexchange.com/questions/1572/cycle-attack-on-rsa vados intypedia y crypt4you, ası́ como el Congreso
[5] T. W. Cusick, Properties of the x2 mod N pseudorandom number Iberoamericano CIBSI y el Taller de Enseñanza
generator, IEEE Trans. Inform. Theory, 41 (1995), 1155?1159. TIBETS. Imparte asignaturas de seguridad y criptografı́a en la UPM desde el
[6] J. B. Friedlander, C. Pomerance, and I. E. Shparlinski Period of the año 1994.
power generator and small values of Carmichael’s function, Math. Profesor invitado en posgrados de España y Latinoamérica, actualmente se
Comp., 70 (2001), 1591.1605.Corrigendum.Math.Comp., 71 (2002), encuentra desarrollando los proyectos de pı́ldoras formativas Thoth y Mapa
1803.1806. de Enseñanza de la Seguridad de la Información MESI.
[7] M. Gysin and J. Seberrye, Generalized cycling attacks on RSA and
strong RSA primes, Chapter 3, J. Pieprzyk, R. Safavi-Naini, and J.
Seberry (Eds.): ACISP’99, LNCS 1587, pp. 149-163, 1999. Springer-
Verlag Berlin Heidelberg, 1999.
[8] H. Riesel, Prime Numbers and Computer Methods for Factorization,
Progress in Mathematics, 2nd Ed., Birkhäuser, Boston, 1994.
[9] R. Lidl and H. Niederreiter, Finite Fields, Cambridge University Press,
Cambridge, 1997. Abel Casado nació en Madrid, España, el 2 de
[10] N. J. A. Sloane, Sequence A181776 a(n) = lambda(lambda(n)), where Noviembre de 1989. Está finalizando los estudios
lambda(n) is the Carmichael lambda function, The On-Line Encyclope- de Grado de Ingeniera de Computadores en la Es-
dia of Integer Sequences, http://oeis.org/A181776 cuela Técnica Superior de Ingenierı́a de Sistemas
[11] G. L. Miller Riemann‘s hypothesis and tests for primality, Journal of Informáticos, (ETSISI-UPM), a falta de entregar el
Computer and System Sciences, 13:3, 300-317, 1976. PFG. Actualmente se encuentra trabajando como be-
[12] Divisores de Carmichael para el módulo n=583.385.916.348.491. cario para el Departamento de Matemática Aplicada
https://www.wolframalpha.com/input/?i= de la ETSISI, llevando a cabo labores relativas a
Divisors[Carmichael[CarmichaelLambda[583385916348491]]] geometrı́a computacional y renderizado en 3D en
la empresa ACA España. Áreas de interés actual:
Computación Gráfica, Desarrollo de aplicaciones
Java, Criptografı́a y Seguridad de la Información.
RECSI 2014, Alicante, 2-5 septiembre 2014

Modelado de un criptoprocesador mediante LISA


José Molins Rafael Rico
Departamento de Ingenierı́a Departamento de Automática
Mecanizados Escribano S.L. Universidad de Alcalá
Email: jose.molins@mecaes.es Email: rafael.rico@uah.es

Resumen—Para acortar los ciclos de diseño y desarrollo modulares, etc.) asociadas a otros tantos códigos de operación
de criptoprocesadores se propone utilizar LISA, un lenguaje del repertorio de instrucciones. Esta caracterı́stica contribuye
de descripción de arquitecturas programables. LISA, además, a la minimización del coste hardware y del consumo.
permite minimizar el coste hardware del procesador criptográfico
ası́ como su consumo. Como caso de estudio se propone un El artı́culo está estructurado de la siguiente manera: En la
operador que da soporte al código operación de la exponenciación Sección II se hace una somera revisión del estado del arte
modular. Desde el punto de vista del hardware, el operador de los criptosistemas. En la Sección III se describe LISA
de exponenciación se implementa mediante cauces multifunción mostrando el flujo de trabajo y las mejoras que aporta al
aptos para el procesamiento vectorial. Como caracterı́stica más desarrollo de criptoprocesadores. La Sección IV muestra un
sobresaliente, las operaciones se podrán efectuar sobre operandos
de tamaño arbitrario, es decir, la longitud k de la representación caso de estudio referente a la implementación de un código de
binaria de los operandos no estará limitada por el tamaño n de operación para efectuar la exponenciación modular mediante
los registros del operador y se pasará como un operando más un operador implementado con cauces multifunción. Y ya por
del código de operación. último, en la Sección V se ofrecen algunas conclusiones.
Palabras clave—ASIP, Criptografı́a (Cryptography), Cripto-
procesador (Cryptoprocessor), Exponenciación modular (Modu- II. T RABAJOS RELACIONADOS
lar exponentiation), RSA, M2M, Montgomery, LISA.
Los distintos sistemas hardware destinados a dar servicios
criptográficos se diseñan en base a primitivas, algoritmos y
I. I NTRODUCCI ÓN
protocolos criptográficos. Éstos pueden clasificarse en distintos
En los últimos años, el mercado de la conectividad máquina tipos en función de las necesidades: procesadores de propósito
a máquina (M2M) ha aumentado notablemente. La necesidad general modificados, criptocoprocesadores, criptoprocesadores
de incluir mayor seguridad en los sistemas crece dı́a a dı́a. y criptoarrays.
Se prevé que a nivel global la demanda de dispositivos con Los procesadores de propósito general (PPG) ofrecen una
seguridad añadida se eleve hasta los 529 millones de unidades gran flexibilidad pero no son apropiados para aplicaciones de
en 2017 [1] especialmente en sistemas empotrados y en alto rendimiento. Las amenazas de seguridad pueden apare-
sistemas que gestionan el Internet de las Cosas (IoT). cer asociadas a cualquiera de los niveles de abstracción del
Los criptosistemas están diseñados para proporcionar los dispositivo.
servicios de confidencialidad, autenticación e integridad de Los procesadores de propósito general modificados con-
datos. En este escenario los procesadores criptográficos se tienen unidades funcionales para ejecutar operaciones crip-
están haciendo imprescindibles. tográficas tales como Data Encryption Standard (DES) o
En este trabajo se propone LISA como herramienta de Advanced Encryption Standard (AES). Estas unidades están
diseño. Su uso favorece minimizar el tiempo de desarrollo, el asociadas a un conjunto de instrucciones especı́ficas. Esta
coste hardware y el consumo energético. LISA es un lenguaje solución aumenta el rendimiento aunque el diseño del reper-
de descripción de arquitecturas programables y repertorios de torio de instrucciones adicional presenta una gran dificultad.
instrucciones, unificado en una sola herramienta y centrado en Un ejemplo claro de ello es el procesador CryptoBlaze [3]
facilitar el diseño y desarrollo de procesadores de propósito basado en el soft-core de Xilinx Picoblaze. Cryptoblaze ofrece
especı́fico como son los criptoprocesadores. Los requisitos una serie de funciones y códigos de operación enfocados a
del procesador se describen sobre 6 modelos arquitecturales. funciones criptográficas. Recientemente los procesadores Intel
Como caso de estudio se propone un ejemplo de instrucción [4] comercializados a partir de 2010 incluyen en sus reper-
de un criptoprocesador implementada sobre un operador que torios 6 nuevas instrucciones especı́ficas para trabajar con un
calcula la exponenciación modular mediante Montgomery. operador criptográfico AES implementado en la arquitectura
La arquitectura del operador está basada en 3 cauces multi- del procesador.
función configurables. El código de operación ejemplo utiliza El término criptocoprocesador hace referencia a un dispo-
dichos cauces para computar el algoritmo de Montgomery sitivo hardware dedicado a la ejecución de funciones crip-
sobre una longitud de operandos de k-bits parametrizable. Evi- tográficas. Estos dispositivos no son programables pero puede
dentemente, los 3 cauces multifunción son capaces de realizar ser controlados y configurados utilizando un procesador host.
otras muchas operaciones (sumas, desplazamientos, cálculos Un ejemplo de este concepto es la arquitectura SAFES [5]
26 J. Molins, R. Rico

que propone un sistema que utiliza monitores para detectar comportamientos de arquitecturas ASIP. La estructura del
distintos tipos de ataques. Ası́, la contra-medida del sistema de lenguaje esta basada en la declaración de recursos y de las
seguridad depende del ataque perpetrado. Pueden existir una operaciones que se van a realizar. El flujo de trabajo de
contra-medida individual o una contra-medida global cuando LISA se desarrolla en cuatro fases principales [9]. Primera:
se intenta una modificación del sistema. Esta arquitectura exploración de la arquitectura. Se realiza el co-diseño del
posee una parte reconfigurable en lógica programable donde sistema decidiendo qué tareas se harán por hardware y cuáles
se implementan las primitivas de seguridad. Por el contrario, se harán por software. También se lleva a cabo el diseño del
los criptoprocesadores son dispositivos hardware programables repertorio de instrucciones. Por último se diseña la micro-
con un conjunto de instrucciones especializado en funciones arquitectura que dará soporte a ese repertorio. Segunda: im-
criptográficas que incorporan uno o varios operadores dedica- plementación de la arquitectura. Se genera un modelo HDL
dos a la computación criptográfica. del ASIP donde, con herramientas de sı́ntesis y a nivel de
El procesador Criptonita [6] posee un repertorio especı́fico puertas, se analiza el tamaño ocupado en silicio, velocidad
enfocado a operaciones tales como permutación, rotación del sistema y consumo de potencia. Si algunos de estos
y XOR. La propuesta HCrypt [7] es segura ante ataques parámetros no son los esperados será necesario iterar de nuevo
software ya que la ruta de datos se divide en dos zonas: una sobre la primera fase. Tercera: generación de las herramientas
zona protegida (claves y su almacenamiento) y una zona no software para el desarrollo de aplicaciones. Es prácticamente
protegida (almacenamiento de datos y proceso). Las claves automática dando lugar al compilador-C, linkador y debugger
almacenadas nunca pueden pasar sin cifrar a los registros de para la arquitectura diseñada. Por último, la cuarta: integración
datos. Los criptoprocesadores están diseñados para ser empo- y verificación. Se generan los simuladores para verificar el
trados en entornos multiprocesador system-on-chip (MP-SoC) correcto funcionamiento de las herramientas software con la
o en procesadores dedicados (como los DSP) representando arquitectura hardware.
una eficiente solución en términos de flexibilidad, prestacio- Para que LISA pueda generar arquitectura y herramientas
nes y rendimiento. Los sistemas multi-núcleo aumentan el de desarrollo son necesarios una serie de requisitos agrupados
rendimiento y proporcionan soluciones para aplicaciones con en 6 modelos [9]. En primer lugar, un modelo de memoria
necesidades de cálculos criptográficos heterogéneos siendo donde se definen los registros de la arquitectura y los rangos
posible la configuración al vuelo en lógica programable. de la memoria de datos y de la memoria de programa. En
Otro tipo de dispositivo seguro es el criptoarray. La investi- el segundo modelo se describen los recursos requeridos y
gación ha demostrado que las arquitecturas reconfigurables son unidades funcionales utilizados por las operaciones que se van
altamente eficientes para computación intensiva en sistemas a ofrecer. El tercer modelo describe el comportamiento de las
empotrados y para seguridad en los datos. La arquitectura estructuras del hardware y se utiliza únicamente para fines de
Celator [8] es un ejemplo de ello. Está compuesta de una simulación. El cuarto modelo, uno de los más importantes,
matriz de elementos de proceso optimizada para computar describe el repertorio de instrucciones, expresando la sintaxis,
paralelamente el algoritmo AES y otros cifradores simétricos la codificación y los operandos de una manera muy rápida e
como DES. El encaminamiento de las unidades de proceso intuitiva. El quinto, es el modelo temporal que especifica la ac-
de Celator es configurable, siendo la lógica de control la que tivación secuencial de los distintas operaciones en el hardware.
determina la arquitectura y los elementos de proceso. Se describe, por ejemplo, la secuencia de funcionamiento de
Los procesadores criptográficos citados trabajan con opera- los cauces. Y por último, el sexto modelo (micro-arquitectural)
dores de un tamaño k fijo, es decir, con longitudes de 64, 512 define las operaciones que se van a realizar en cada una de
o 1024 bits como máximo. las unidades funcionales.
III. F LUJO DE DISE ÑO LISA Como se ha dicho anteriormente, el cuarto modelo describe
el repertorio de instrucciones. Este modelo es responsable
Actualmente las técnicas de diseño de procesadores de de la definición de los recursos lógicos que darán soporte a
propósito especifico (ASIP) tales como los criptoprocesadores, las instrucciones. Es importante realizar un diseño ajustado
implican un diseño manual de las herramientas de desarrollo. del repertorio de instrucciones. Si un procesador posee un
El flujo de diseño de los ASIP cuenta primariamente con repertorio de instrucciones I y, por otro lado, tiene un conjunto
un diseño de la arquitectura, un diseño de las herramientas de recursos hardware R para dar soporte al conjunto I de
software (compilador, enlazador, etc.) y, por último, una fase instrucciones, se puede declarar un conjunto RI de recursos
de integración y validación del conjunto. Esta metodologı́a hardware que da soporte a todo el repertorio de instrucciones
conlleva una separación de los grupos de trabajo de ingenierı́a I [10]. Dada una instrucción i del repertorio de instrucciones
y fácilmente supone aumentar el tiempo del desarrollo en el I, diremos que el subconjunto de recursos hardware Ri es el
caso que uno de los grupos se demore en sus tareas. responsable de dar soporte a esa única instrucción i Ri ⊂ R
En este artı́culo se propone LISA (Language for Instruction- siendo N el número de subconjuntos.
Set Architecture) como un lenguaje, una metodologı́a y un
entorno de trabajo adecuado para desarrollar un criptopro- N
cesador de manera eficiente. LISA es, principalmente, un [
RI = Ri (1)
lenguaje enfocado a describir repertorios de instrucciones y i=1
Modelado de un procesador criptográfico mediante LISA 27

Si aumenta el conjunto I de instrucciones soportadas por el trabaje de manera concurrente con respecto a las otras cuatro
procesador irremediablemente el hardware RI se incremen- entidades operativas.
tará también. No obstante, dentro del conjunto R de recursos Cada entidad se implementa arquitecturalmente mediante
hardware, algunos son comunes a todas las instrucciones del segmentación aritmética encauzada. A continuación se muestra
repertorio I. Lo ideal serı́a que el hardware común fuera usado un ejemplo de especificación de recursos y declaración de
por muchas instrucciones con el fin de minimizar el coste de etapas en LISA haciendo uso del hardware propuesto:
implementación. RESOURCE
Un problema especı́fico puede usar un conjunto determinado {
de instrucciones A cuyos recursos RA están contenidos en PIPELINE p p u c a u c e m u l t i f u n c i o n = {LD ; EXE1 ;
EXE2 ; EXE3 ; ST } ;
los recursos R del procesador RA ⊂ RI . Si el conjunto A PIPELINE REGISTER IN p p u c a u c e m u l t i f u n c i o n {
está contenido en I se reducirá el conjunto de recursos RA . b i t [ 6 ] OpCode ;
S32 ∗opA , ∗opE , ∗opM , ∗opK ; } ; }
|RA |  |RI | (2)
OPERATION EXMODMT{
En definitiva, la adecuada sintonización del repertorio de DECLARE { . . }
CODING { OpCode opA opE opM opK }
instrucciones y de los recursos hardware puede optimizar el SYNTAX { ”EXMODMT” opA” , ” opE ” , ”opM” , ”opK }
coste y el consumo. BEHAVIOR{ E x p o n e n c i a c i o n M o d u l a r ( ) ; }}

IV. O PERADOR DE EXPONENCIACI ÓN MODULAR OPERATION EXE1{


DECLARE { ENUM op= ADD, SUB; }
Como caso de estudio que ilustre el ciclo de desarrollo con SWITCH ( op ) {
LISA, se describirá el hardware requerido para implementar CASE ADD: BEHAVIOR { R [ . . ] += R [ . . ] ; }
CASE SUB : BEHAVIOR { R [ . . ] −= R [ . . ] ; } } }
el opcode de la exponenciación modular según el algoritmo
de Montgomery (mnemonico EXMODMT opA, opE, opM, OPERATION EXE2 { . . }
opK). tal que:
OPERATION EXE3{
DECLARE { ENUM op= SHIFT R , SHIFT L ; }
C ≡ AE modM (3) SWITCH ( op ) {
CASE SHIFT R : BEHAVIOR { R [ . . ] = R [ . . ] >> R
Siendo C,A, E y M cuatro enteros representados en binario [..];}
CASE SHIFT L : BEHAVIOR { R [ . . ] = R [ . . ] << R
sobre k-bits donde C,A y E pertenecen a ZM . [..];}}}
Para calcular la exponenciación modular utilizaremos el
algoritmo expuesto a continuación: El objetivo principal al encauzar la resolución de estas ope-
raciones, es conseguir un alto nivel de paralelismo y alcanzar
E x p o n e n c i a c i o n M o d u l a r (A, E ,M, k )
{ un esquema de ejecución vectorial que permita realizar cálcu-
/ ∗ Fase 1 . ∗ / los sobre operandos de k-bits. Si los registros del operador
A1 = R e p r e s e n t a c i o n M o n t g o m e r y ( 1 , k ,M) ; tienen una anchura de n-bits, siendo k > n, será necesario
A2 = R e p r e s e n t a c i o n M o n t g o m e r y (A, k ,M) ;
while E != 0 un total de nk iteraciones sobre dicho operando para conseguir
{ computarlo en su totalidad.
/ ∗ Fase 2 . ∗ / Otro objetivo importante en el diseño de este criptosiste-
A3 = A l g o r i t m o M o n t g o m e r y ( A1 , A2 ,M) ;
A2 = A l g o r i t m o M o n t g o m e r y ( A2 , A2 ,M) ; ma es conseguir optimizar el uso de los recursos hardware
i f E ( 0 ) == 1 favoreciendo que puedan ser utilizados por muchos códigos
{ de operación. Ası́, es posible diseñar un único tipo de entidad
A1 = A3 ;
} encauzada multifunción (configurable) para que pueda resolver
E = E >> 1 ; la operación presentada como caso de estudio y otras adicio-
} nales. Los cauces multifunción [11] pueden efectuar diferentes
r e t u r n ( A l g o r i t m o M o n t g o m e r y ( A1 , 1 ,M) ) ;
} operaciones variando adecuadamente la interconexión de sus
etapas a la vez que pueden iterar sobre los operandos para
La representación de Montgomery de un numero binario se resolver esquemas de ejecución vectorial. En la Figura 1 se
computa a través de operaciones básicas de desplazamiento y muestra la arquitectura del operador.
resta. Por otro lado, el algoritmo de Montgomery se computa Como se ve en la Figura, se establecen dos tipos de etapas:
en base a dos sumas y un desplazamiento. A priori es necesario etapas sumadoras-restadoras y etapas de desplazamiento. Cada
utilizar dos entidades RM idénticas trabajando en paralelo una de ellas necesita configurarse para establecer la operación
para que resuelvan estas dos representaciones de Montgomery a resolver. Dado el carácter vectorial del procesamiento de
y generen el resultado A1 y A2. Posteriormente es necesario números arbitrariamente grandes, cada una de las etapas posee
realizar dos entidades AM para operar en paralelo de nuevo una bandera de cero y otra de acarreo para propagar dicha
y resolver la exponenciación gracias al algoritmo de Montgo- información de estado al siguiente paso de cómputo.
mery. Para controlar la ejecución del bucle principal, desplazar Para diseñar una única entidad que pueda resolver la re-
y analizar el exponente es necesario una quinta entidad que presentación de Montgomery, el algoritmo de Montgomery y
28 J. Molins, R. Rico

miento de exponente para controlar el bucle de ejecución del


Memoria& algoritmo. Una vez desplazado todo el exponente se calcula
&
Operandos( una última iteración del algoritmo de Montgomery en uno de

Operandos(
Operandos(
los cauces.
Operandos(

Operandos(

Operandos(
Lectura(

Lectura(
Lectura(
Escritura(

Escritura(

Escritura(
V. C ONCLUSI ÓN
Cauce& Cauce& Cauce&
Los criptoprocesadores cubren necesidades de cálculo cada
Mul)función& Mul)función& Mul)función& vez más demandadas. Hemos visto que el lenguaje LISA
unifica en un solo entorno el flujo de diseño de procesadores
Configuración(

Configuración(

Configuración(
Estado(

Estado(

Estado(
de propósito especı́fico (ASIP), acortando el tiempo diseño y
Control(

Control(

Control(
disminuyendo los costes hardware y el consumo. La curva de
aprendizaje que deben experimentar los ingenieros implicados
Unidad&de&control& es inicialmente abrupta pero el esfuerzo queda compensado a
&
corto plazo por la reducción de los tiempos de desarrollo. Todo
apunta a que el empleo de LISA traerá innegables beneficios
Figura 1. Arquitectura del operador al área de los criptoprocesadores.
Como caso de estudio se ha propuesto la implementación
el desplazamiento del exponente, es necesario disponer de 2 de una instrucción que calcula la exponenciación modular. El
bloques con operadores de suma/resta y un bloque desplazador. hardware asociado está basado en cauces multifunción con
Cada una de estas etapas va a estar conectada entre sı́ mediante capacidad de procesamiento vectorial. Aunque dicho hardware
multiplexores M que obtienen y vuelcan los datos en 4 da soporte al código de operación objeto del caso de estudio,
buses A B C y D diferentes para ası́ variar el camino de también da soporte a operaciones de suma, resta y desplaza-
los datos según se necesite. A su vez cada etapa tiene una miento sobre números de tamaño arbitrario. Esta caracterı́stica
lı́nea de configuración donde se puede elegir la operación permite la reutilización del hardware para varios códigos de
exacta a realizar (suma o resta, desplazamiento a derecha operación abaratando el coste y disminuyendo el consumo.
o izquierda). La etapa de load tiene como función obtener Además, el tamaño k de los operandos es arbitrario.
los operandos desde la memoria y la etapa store se encarga AGRADECIMIENTOS
de volcar los resultados en memoria. Este cauce aritmético
Este trabajo ha sido parcialmente financiado por el Mi-
segmentado se puede utilizar para computar otras operaciones
nisterio de Economı́a y Competitividad mediante el proyecto
correspondientes a otros opcodes diseñados con LISA. En la
TIN2011–22668.
Figura 2 se muestra la arquitectura del cauce multifunción.
R EFERENCIAS
Memoria% [1] “Global Shipments of Cybersecurity Microcontrollers to Rise 91
Configuración%de%etapa%
Percent by 2017,” IHS Online Pressromm, Report 10/7/13. Dispo-
Etapa% nible en http://press.ihs.com/press-release/design-supply-chain-media/
Load% M%
global-shipments-cybersecurity-microcontrollers-rise-91-perc.
Configuración%de%etapa% [2] L. Bossuet, M. Grand, L. Gaspar, V. Fischer, G. Gogniat, “Architectures
Etapa%
of Flexible Symmetric Key Crypto Engines, A Survey: From hardware
M% M% Coprocessor to Multi-Crypto-Processor System on Chip,” ACM Compu-
+/+%
ting Systems Surveys, vol. 45, no. 4, Article 41, 2013.
Configuración%de%etapa%
[3] Xilinx, “CryptoBlaze: 8-Bit Security Microcontroller,” XAPP374,
Etapa% (v1.0), 2003.
M% M%
+/+% [4] S. Gueron, “Intel Advanced Encryption Standard (AES) Instructions
Configuración%de%etapa% Set,” White Paper, Intel Mobility Group, Israel Development Center.
[5] G. Gogniat, T. Wolf, W. Burleson, J.P. Bossuet, R. Vaslin “Reconfigu-
Etapa% rable hardware for high-security/high-performance embedded systems:
M% M%
<<%|%>>% The safes perspective,” en IEEE Trans. VLSI Syst., 16,2, pp. 144–155.
Configuración%de%etapa% [6] R. Buchty, N. Heintze, D. Oliva, “Criptonite - A programmable crypto
M% Etapa% processor architecture for high-bandwidth applications,” en Proc. of the
Store% Organic and Pervasive Computing Conf., vol 2981, Springer, 184-198.
Bus%A%
Bus%B%

Bus%D%
Bus%D%

Bus%C%
Bus%B%
Bus%A%

Bus%C%

[7] L. Gaspar, V. Fischer, F. Bernard, L. Bossuet, P. Cotret, “HCrypt:


A Novel Concept of Crypto-Processor with Secured key Manage-
ment,” en Int’l Conf. on Reconfigurable Computing, Cancun, Mexico:
Figura 2. Arquitectura del cauce multifunción DOI:10.1109/FPT.2011.6132722.
[8] D. Fronte, A. Perez, E. Payrat “Celator: a multi-algorithm cryptographic
co-processor,” en Int’l Conf. on Reconfigurable Computing, 2008.
De acuerdo al algoritmo propuesto, en la primera fase dos [9] A. Hoffmann, H. Meyr, R. Leupers, “Architecture Exploration for
cauces multifunción se configuran para resolver la represen- Embedded Processor with LISA,” Kluwe Academic Publishers, 2003.
tación de Montgomery. Posteriormente y una vez resueltas [10] C. Mutigwe, J. Kinyua, F. Aghdasi, “Instruction Set Usage Analysis
for Application-Specific Systems Design,” Int’l Journal of Information
ambas representaciones de Montgomery, se realiza el cambio Technology and Computer Science, vol. 7, no. 2, 2013.
de función en los cauces para que puedan resolver el algoritmo [11] K. Hwang, F. Briggs “Arquitectura de computadoras y procesamiento
de Montgomery mientras el tercer cauce computa el desplaza- paralelo,” McGraw Hill, 1988.
RECSI 2014, Alicante, 2-5 septiembre 2014

Retos en el diseño de un generador caótico


en tecnologı́a CMOS submicrónica
Francisco Aznar Carlos Sánchez-Azqueta, Cecilia Gimeno
Centro Universitario de la Defensa Departamento de Ingenierı́a Electrónica y Comunicaciones
Grupo de Diseño Electrónico Grupo de Diseño Electrónico
Universidad de Zaragoza Universidad de Zaragoza
Email: faznar@unizar.es Email: csanaz@unizar.es, cegimeno@unizar.es

Resumen—En este artı́culo se exponen los retos para llevar a


Transmisor
cabo el diseño de un generador caótico, basado en el circuito de Generador
Chua, en tecnologı́a CMOS submicrónica. El diseño analógico Señal
Señal Caótico
del generador caótico se complementa con un control digital,
que proporciona programabilidad para definir distintos estados encriptada
(claves) que aumenten la seguridad del cifrado. Además, se Generador Señal
analizan distintas variables (temperatura, mismatching...) que Caótico
pueden afectar a la sincronización de dos sistemas idealmente Receptor
idénticos, impidiendo el descifrado de la información transmitida.
Figura 1. Esquema conceptual de una transmisión basada en cifrado caótico
Palabras clave—Circuito de Chua, comunicación segura, ge-
nerador caótico, tecnologı́a CMOS (Chaotic generator, Chua’s
circuit, CMOS technology, secure communication).
por el emisor y el receptor. Este método evita que la señal
I. N OMENCLATURA se intercepte, por lo que impide, no solo que se conozca
CMOS Complementary Metal-Oxide Semiconductor la información transmitida, sino también la capacidad de
PSSR Power Supply Rejection Ratio localizar el emisor mediante triangulación. Además, la señal
VHF Very High Frequency transmitida se envı́a cifrada mediante un método solo conocido
FHSS Frequency-Hopping Spread System por el fabricante del sistema de radio.
Las señales caóticas, dada su naturaleza impredecible y su
amplio ancho de banda, son candidatas idóneas para cifrar
II. I NTRODUCCI ÓN señales vulnerables [1]. El sistema de comunicaciones (figura
Las comunicaciones representan un pilar esencial de nuestra 1) se basa en dos generadores caóticos idénticos y sincroniza-
sociedad. En particular, garantizar la privacidad se ha converti- dos [2]. La señal a transmitir se mezcla con la señal caótica
do en una temática de investigación prioritaria. Hasta el punto (representado simbólicamente como una suma) y se recupera
de que se trata de uno de los retos identificados en la Estrategia la señal transmitida mediante el desacoplo de la misma señal
Española de Ciencia y Tecnologı́a y de Innovación. De igual caótica (representado simbólicamente como una resta). Ya se
manera se consideran las TICs aplicables a este reto como ha demostrado que el cifrado caótico no es 100 % seguro [3],
una de las Tecnologı́as Facilitadoras Esenciales identificadas [4], pero incluir este sistema puede ofrecer un aumento del
en el Programa Europeo Horizonte 2020. Esto se debe a que nivel de seguridad por complementariedad a los métodos ya
la seguridad de las comunicaciones es fundamental en algunas implementados.
aplicaciones en el ámbito civil (transmisión de datos bancarios, El proceso de fabricación de circuitos integrados dominante
datos personales...) y toma mayor relevancia en el ámbito en la actualidad es el CMOS. Se basa en la construcción de los
militar. Existen multitud de sistemas de cifrado adaptados al elementos activos basados en transistores MOS en una misma
nivel de seguridad necesario para cada aplicación concreta. oblea de material semiconductor (silicio) mediante difusiones
Los avances en los algoritmos y potencia de cálculo de los donadoras (N) y aceptoras (P), un aislante (oxido de silicio) y
descifradores exigen una continua mejora de los métodos de un material conductor (polisilicio). Además, se añaden varias
cifrado. capas de metalización para la interconexión de los distintos
En el ámbito de la defensa, las comunicaciones por radio elementos (figura 2). Esta tecnologı́a ofrece las prestaciones
se transmiten cifradas en un rango de frecuencia reservado necesarias para trabajar en un rango de alta frecuencia con
de la banda VHF (30 - 88 MHz). El método de cifrado es bajo consumo [5].
doble, por un lado se usa el FHSS, que consiste en transmitir En este artı́culo se presenta el inicio de una lı́nea de
la información sobre una onda portadora cuya frecuencia investigación que tiene por objeto desarrollar un sistema de
va cambiando aleatoriamente siguiendo un patrón conocido comunicaciones seguro basado en tecnologı́a CMOS. En la
30 F. Aznar, C. Sánchez-Azqueta, C. Gimeno

I3 V2 V1 RN
C2 C1

Figura 3. Circuito de Chua

R1 VCC R4 VCC
Figura 2. Sección de un proceso de fabricación CMOS con tres niveles de
metalización

sección III se aborda el diseño del generador caótico en tec-


-VSS -VSS
nologı́a CMOS submicrónica, incorporando programabilidad
para dotar al sistema de multiples claves criptográficas. En la R2 R5
sección IV se analizan los aspectos más relevantes que afectan
R3 R6
al comportamiento de dos generadores caóticos teóricamente
idénticos, por lo que se perderı́a el sincronismo, y por lo tanto
no se podrı́a recuperar la señal transmitida. Por último, las
Figura 4. Implementación de la resistencia no lineal mediante amplificadores
conclusiones son expuestas en la sección V. operacionales
III. D ISE ÑO DEL GENERADOR CA ÓTICO
El generador caótico en el que nos basamos es el circuito
de Chua, mostrado en la figura 3, que representa el circuito
VCC
electrónico caótico más sencillo ya que cumple los requisitos R1 VCC
mı́nimos necesarios: un sistema de tres ecuaciones diferencia-
les de primer orden, formado por L, C1 y C2 , y un elemento R5
no lineal (RN ). Las ecuaciones que describen la dinámica del
sistema son:
R4 R4 -VSS
dv1 1 R5
C1 = (v1 − v2 ) − f (v1 ) R2
dt R
dv2 1 -VSS R3
C2 = (v1 − v2 ) + i3 (1)
dt R
di3
L = −v2
dt Figura 5. Implementación de la resistencia no lineal incluyendo diodos
Siendo f la función que define la resistencia no lineal. La
solución de este sistema de ecuaciones diferenciales puede
presentar un comportamiento caótico, tal y como se demuestra Afortunadamente, el hecho de que para cubrir algunas apli-
en [6]. caciones sea imprescindible contar con electrónica analógica
ha propiciado que el proceso de fabricación CMOS ofrezca
III-A. Implementación microelectrónica del circuito de Chua la implementación de resistencias fabricadas en polisilicio,
La industria microelectrónica ha realizado un increı́ble condensadores plano-paralelos entre dos de sus niveles de
avance tecnológico en los últimos años. Sin embargo, dicho metalización (o bien, dos capas de polisilicio) e inductores
avance se centra básicamente en la miniaturización del tran- basados en pistas metálicas con forma espiral.
sistor MOS, dotando de mejores prestaciones a los circuitos El orden de magnitud de la resistencia por cuadro (1kΩ)
digitales fundamentalmente. Si queremos diseñar en tecnologı́a y la capacidad por unidad de área (1f F/µm2 ) que ofrece
CMOS un circuito analógico como el circuito de Chua, nos un proceso CMOS de coste moderado conlleva que el área
encontramos con serias limitaciones a la hora de implementar ocupada por el circuito sea considerable. Por lo tanto, para
elementos tan comunes como resistencias y condensadores. minimizar el coste final, que está directamente relacionado con
Retos en el diseño de un generador caótico en tecnologı́a CMOS submicrónica 31

RL VCC
RL

C L
-VSS
R

Figura 6. Implementación del inductor mediante amplificadores operacionales

el área ocupada, deberemos buscar estrategias de optimización.


Pero el gran reto de la implementación microelectrónica del Figura 7. Variación de la relación entrada-salida para un amplificador
circuito de Chua viene de la mano de la resistencia no diferencial CMOS bajo una fluctuación del ±5 % en el voltaje de alimentación
lineal y, especialmente, el inductor. La implementación de
una resistencia no lineal se puede llevar a cabo mediante
digital).
dos resistencias negativas en paralelo [7], basándonos en
amplificadores operacionales (figura 4). Otra posibilidad es La programabilidad digital está basada en el hecho de
utilizar diodos [8] (figura 5), los cuales aportan la caracterı́stica que los transistores actúan como conmutadores entre dos
no lineal, derivado de su comportamiento asimétrico en cuanto estados (conducción y corte) en función del estado de la señal
a la conducción de la corriente. En la literatura se pueden de control asociada. Ası́, resultando en que uno (o varios)
encontrar diversos trabajos que demuestran el comportamiento elementos del circuito de Chua varı́an su valor al formarse
caótico con elementos discretos, por ejemplo para transmisión por varios elementos que están interconectados en paralelo
de audio en frecuencia modulada [9]. La resistencia no lineal cuando los transistores asociados están en conducción. En
también se puede implementar con amplificadores de trans- la literatura se encuentran trabajos realizados en tecnologı́a
conductancia [10], formados únicamente por transistores, lo CMOS que incluyen programabilidad digital y trabajan en
que facilita la integración en tecnologı́a CMOS [11], [12]. rangos frecuenciales elevados [14], [15].
El inductor es difı́cil de implementar debido a su natu-
raleza de elemento tridimensional. Existen implementaciones IV. S INCRONISMO
en tecnologı́a CMOS basadas en estructuras bidimensionales, L. M. Pecora y T. L. Carroll demostraron en 1990 que
pero ofrecen pobres prestaciones y contribuyen a aumentar dos circuitos caóticos idénticos se sincronizan [16], es de-
el área del circuito significativamente (para inductancias de cir, ofrecen un comportamiento dinámico idéntico. La señal
nH, factor de calidad limitado en torno a 10 y radios 100 transmitida cifrada puede actuar directamente como elemento
µm aproximadamente). Basándonos también en amplificadores sincronizador, como ya se reflejaba en la figura 1. El sin-
operacionales podemos emular un inductor [13] a partir de cronismo se degrada cuando los circuitos caóticos difieren.
resistencias y condensadores (figura 6). El valor de la in- Por lo tanto, queremos implementar un circuito programable
ductancia viene determinado por la expresión L = CRRL . con diferentes estados que sólo sincronicen con los estados
Esta alternativa optimiza el área integrada manteniendo una equivalentes. Para ello debemos estudiar y analizar el impacto
filosofı́a de integración común. que tienen diferentes factores que afectan a los valores de los
elementos que forman el circuito caótico. Los factores más
III-B. Programabilidad relevantes son el voltaje de alimentación, la temperatura y la
Dado que los valores de los elementos que componen el tolerancia propia de la fabricación microelectrónica.
sistema caótico son la clave para descifrar la transmisión, una
manera de aumentar la seguridad de la comunicación es dotar IV-A. Voltaje de Alimentación
al sistema de múltiples estados, ofreciendo la posibilidad de Los elementos activos requieren un voltaje de alimentación
cifrar la transmisión bajo más de una clave criptográfica. O, para su funcionamiento. La variación del valor de esa tensión
lo que es lo mismo, implementar un circuito programable. puede afectar a su punto de operación, y por tanto, al compor-
La programabilidad más robusta está basada en una señal tamiento del sistema caótico. El parámetro que cuantifica la
digital de control formada por un número determinado de bits, inmunidad del circuito activo frente a variaciones del voltaje
los cuales ofrecen dos estados claramente definidos. Para una de alimentación (VDD ) es el P SRR, definido como:
señal digital de n bits, dependiendo del código usado, podemos
tener hasta 2n posibles claves. Por tanto, la implementación del ∆VDD
circuito de Chua programable tiene carácter mixto (analógico- P SRR(dB) = 20log10 (AV ) (2)
∆VO
32 F. Aznar, C. Sánchez-Azqueta, C. Gimeno

Figura 8. Variación con la temperatura para una resistencia propia de la


tecnologı́a (no compensada) y una combinación de dos resistencias con
dependencia complementaria (compensada)
Figura 9. Curva intensidad-tensión para la resistencia no lineal para los
valores nominales y corners
Siendo VO y AV el voltaje de salida y la ganancia del
circuito activo, respectivamente.
El bloque constituyente básico de un amplificador opera-
cional es un amplificador diferencial. La figura 7 muestra la
variación de la respuesta de un amplificador CMOS diferencial
para una fluctuación del voltaje de alimentación de ±5 %. Esto
lleva a un resultado en torno a P SRR = 51dB. Los am-
plificadores operacionales comerciales basados en transistores
CMOS [17] ofrecen un PSRR de 75 dB como valor tı́pico,
lo que garantiza esta tecnologı́a puede ofrecer una inmunidad
sufienciente frente a variaciones del voltaje de alimentación.
IV-B. Temperatura
La temperatura de trabajo puede variar considerablemente
dependiendo del entorno. Como ejemplo, el rango de tempe-
raturas de trabajo para una circuito digital de aplicación civil
cubre de 0 a 70 o C, mientras que para aplicaciones militares
se extiende de -55 a 125 o C.
Los elementos que se ven alterados por los cambios de Figura 10. Distribución del valor de la pendiente para pequeña señal de la
resistencia no lineal según la simulación de Montecarlo
temperatura son las resistencias, los amplificadores de trancon-
ductancia [18] y los diodos que forman parte de la resistencia
no lineal. El valor de los condensadores se rige por factores a cambios de temperatura. Los diodos ven modificada su
geométricos y por el valor de la constante dieléctrica, mientras respuesta ya que la temperatura afecta a la tensión umbral
que los amplificadores operacionales se diseñan con una y a la corriente inversa de saturación. Este efecto podrı́amos
ganancia muy elevada, lo que ofrece inmunidad ante dicho considerarlo despreciable para el comportamiento del genera-
valor por lo que el comportamiento del circuito activo viene dor caótico, pero la construcción de la resistencia no lineal sin
determinado por los elementos pasivos que lo acompañan diodos ofrece un comportamiento más robusto en función de
(resistencias y condensadores). la temperatura, siendo por tanto la opción predilecta.
Las resistencias implementadas en tecnologı́a micro-
electrónica ofrecen una dependencia con la temperatura ca- IV-C. Mismatching
racterizada por el propio fabricante. Afortunadamente, existen La repetitibilidad de los valores a la hora de fabricar
varios tipos de resistencias que ofrecen un comportamiento con elementos electrónicos no esta garantizada. De hecho, las
la temperatura complementario. Ası́, combinando ambos tipos tolerancias de fabricación de elementos discretos varı́an entre
podemos implementar resistencias con un valor muy constante un 10 % y un 1 %. La industria microelectrónica propicia una
en el rango de temperaturas de trabajo [19], tal y como queda minimización de la variabilidad de los parámetros, derivada de
reflejado en la figura 8. la fabricación simultánea de varios circuitos. Además se siguen
Una implementación del circuito de Chua basada en ampli- criterios de optimización tales como respetar la orientación, no
ficadores de transconductancia ofrecerá una variabilidad frente usar dimensiones mı́nimas y estructuras en centroide común.
Retos en el diseño de un generador caótico en tecnologı́a CMOS submicrónica 33

Ası́, las tolerancias se minimizan, sobre todo para los valores [5] F. Aznar, S. Celma, B. Calvo, “CMOS Receiver Front-ends for Gigabit
relativos entre elementos fabricados en una misma oblea. Los Short-Range Optical Communications,” New York, NY: Analog Circuits
and Signal Processing Series, Springer, 2013.
fabricantes ofrecen modelos para el simulado de la variabilidad [6] L. O. Chua, G. Lin, “Canonical Realization of Chua’s Circuit Family,”
de los parámetros bajo criterios extremos (corner) y con IEEE Transaction of Circuits and Systems, vol. 37, no. 7, pp. 885–902,
dispersión gaussiana siguiendo modelos de Montecarlo. 1990.
[7] M. P. Kennedy, “Robust OpAmp Realization of Chua’s Circuit,” Fre-
Como ejemplo, la figura 9 muestra el efecto de las varia- quenz, vol. 46, no. 3-4, pp. 66–80, 1992.
ciones corner sobre la resistencia no lineal, fundamentalmente [8] P. Bratissol, L. O. Chua, “The double hook [nonlinear chaotic circuits],”
causadas por la variación del valor de las resistencias. Esta IEEE Transactions on Circuits and Systems, vol. 35, no. 12, pp. 1512–
1522, 1988.
simulación conlleva una variación de la pendiente para pe- [9] P. Khumsat, G. Nowlkeaw, “Chaotic radio for audio communications,”
queña señal (denominada m1 ) de −22 % y 37,5 % respecto en IEEE Region 10 Conference (TENCON2007), 2007, pp. 1–4.
del valor nominal. Estos valores están sobreestimados ya que [10] J. M. Cruz, L. O. Chua, “A CMOS IC Nonlinear Resistor for Chua’s
Circuit,” IEEE Transactions on Circuits and Systems - I: Fundamental
representan casos extremos. Una simulación de Montecarlo Theory and Applications, vol. 39, no. 12, pp. 985–995, 1992.
ofrece una dispersión gaussiana (figura 10) de menos de [11] A. Rodrı́guez-Vázquez, M. Delgado-Restituto, “CMOS Design of Chao-
3 % (bajo el criterio de dos veces la desviación tı́pica) sin tic Oscillators Using State Variables: A Monolithic Chua’s Circuit,”
IEEE Transactions on Circuits and Systems - II: Analog and Digital
implementar técnicas de minimización. Al implementar dichas Signal Processing, vol. 40, no. 10, pp. 596–613, 1993.
técnicas, quedarı́a garantizada una baja dispersión de los [12] J. M. Cruz, L. O. Chua, “An IC Chip of Chua’s Circuit,” IEEE
parámetros de la resistencia no lineal. Transactions on Circuits and Systems - II: Analog and Digital Signal
Processing, vol. 40, no. 10, pp. 614–625, 1993.
[13] B. Muthuswamy, T. Blain, K. Sundqvist, “A Synthetic Inductor Im-
V. C ONCLUSIONES plementation of Chua’s Circuit,” Technical Report No. UCB/EECS-
2009-20, Electrical Engineering and Computer Sciences, University of
El factor determinante para la viabilidad de un sistema California at Berkeley, 2009. Disponible en http://www.eecs.berkeley.
basado en cifrado caótico es el sincronismo entre transmisor edu/Pubs/TechRpts/2009/EECS-2009-20.html.
y receptor. La arquitectura del generador caótico basada en [14] B. Calvo, S. Celma, F. Aznar, J.P. Alegre, “Low-voltage CMOS pro-
grammable gain amplifier for UHF applications,” Electronics Letters,
resistencias, condensadores y amplificadores operacionales se vol. 43, no. 20, pp. 1087–1088, 2007.
postula como la más robusta. Un PSRR elevado, la compen- [15] A. Otin, S. Celma, C. Aldea, “CMOS filter with wide digitally pro-
sación de la dependencia con la temperatura de la resistencia grammable VHF range,” Electronics Letters, vol. 43, no. 1, pp. 21–23,
2007.
y la minimización de la dispersión causada por la fabricación [16] L. M. Pecora, T. L. Carroll, “Synchronization in Chaotic Systems,”
del circuito integrado son los factores detectados como clave Physical Review Letters, vol. 64, no. 8, pp. 821–824, 1990.
durante la etapa de diseño en un proceso CMOS submicrónico. [17] Texas Instruments, “250MHz, Rail-to-Rail I/O, CMOS Opertional
Amplifiers,” Datasheet, 2009. Disponible en http://www.ti.com/lit/ds/
Una tecnologı́a CMOS actual de bajo coste ofrece altas symlink/opa354.pdf.
prestanciones en términos de frecuencia y consumo. Además, [18] Texas Instruments, “LM13700 Dual Operational Transconductance Am-
se incluye la posibilidad de incluir programabilidad para plifiers with Linearizing Diodes and Buffers,” Datasheet, 2013. Dispo-
nible en http://www.ti.com/lit/ds/symlink/lm13700.pdf.
aumentar la seguridad de la transmisión. [19] C. Azcona, B. Calvo, S. Celma, “Voltage-to-Frequency Converters,”
New York, NY: Analog Circuits and Signal Processing Series, Springer,
AGRADECIMIENTOS 2013.

Los autores agradecen la ayuda concedida por el Centro


Universitario de la Defensa (2013-12) para iniciar esta lı́nea
de investigación, asi como la colaboración del Grupo de
Diseño Electrónico mediante el proyecto del Plan Nacional
de I+D+i TEC2011-23211. Además, agradecer la colaboración
del Capitán Javier Gil Marı́n, especialista en transmisiones de
la Academia General Militar, por el asesoramiento ofrecido.

R EFERENCIAS
[1] T. Yang, “A Survey of Chaotic Secure Communication Systems,” Inter-
national Journal of Computational Cognition, vol. 2, no. 2, pp. 81–130,
2004.
[2] A. Riaz, M. Ali, “Chaotic Communications, their Applications and Ad-
vantages over Traditional Methods of Communication,” en Proceedings
of 6th International Symposium on Communications Systems, Networks
and Digital Signal Processing (CNSDSP2008), 2008, pp. 21–24.
[3] G. Álvarez, F. Montoya, G. Pastor, M. Romera, “Breaking a secure
communication scheme based on the phase synchronization of chaotic
systems,” Chaos, vol. 14, no. 2, pp. 274–278, 2004.
[4] A. B. Orúe, M.J. Garcı́a-Martı́nez, G. Pastor, F. Montoya, C. Sánchez
Ávila, “Criptoanálisis de un criptosistema de dos canales basado en una
función no lineal caótica,” en Actas de la XII Reunión Española sobre
Criptologı́a y Seguridad de la Información (RECSI2012), U. Zurutu-
za, R. Uribeetxeberria, I. Arenaza-Nuño, Eds. Arrasate - Mondragon:
Servicio Editorial de Mondragon Unibertsitatea, 2012, pp. 119–124.
RECSI 2014, Alicante, 2-5 septiembre 2014

Familias de curvas elı́pticas adecuadas para


Criptografı́a Basada en la Identidad
Josep M. Miret Daniel Sadornil Juan G. Tena
Departament de Departamento de Departamento de
Matemàtica Matemáticas, Algebra, Análisis matemático
Universitat de Lleida Estadı́stica y Computación y Geometrı́a y Topologı́a
Email: miret@matematica.udl.cat Universidad de Cantabria Universidad de Valladolid
Email: sadornild@unican.es Email: tena@agt.uva.es

Resumen—La Criptografı́a Basada en la Identidad hace uso i) ` | (q k − 1).


de curvas elı́pticas que satisfacen ciertas condiciones (pairing- ii) F∗qk contiene un subgrupo cı́clico de orden `.
friendly curves), en particular, el grado de inmersión de dichas
curvas debe ser pequeño. En este trabajo se obtienen familias Si ` es el mayor divisor primo de N , k se denomina simple-
explı́citas de curvas elı́pticas idóneas para este escenario. Dicha mente grado de inmersión de E/Fq .
criptografı́a está basada en el cálculo de emparejamientos sobre Por razones computacionales, la Criptografı́a Basada en la
curvas, cálculo factible gracias al algoritmo de Miller. Propone-
mos una versión más eficiente que la clásica de este algoritmo
Identidad requiere curvas con grado de inmersión pequeño. En
usando la representación de un número en forma no adyacente particular, las denominadas curvas supersingulares (aquellas
(NAF). para las que p|t) son idóneas para este propósito ya que estas
Palabras clave—Algoritmo de Miller (Miller’s Algorithm); curvas tienen siempre k ≤ 6 ([9]). Por contra, las curvas
Criptografı́a Basada en la Identidad (Identity Based Encryption); elı́pticas ordinarias (aquellas no supersingulares) con grado de
Curvas elı́pticas (Elliptic curves); emparejamientos (pairings);
Forma No Adyacente (NAF); grado de inmersión (embedding
inmersión pequeño son una minorı́a en el conjunto de todas las
degree). curvas posibles y su caracterización es complicada (ver [7]).
Un cálculo efectivo de los emparejamientos se puede realizar
I. I NTRODUCCI ÓN usando el algoritmo de Miller ([10]).
Para evitar los problemas de la autentificación de las cla- En el presente artı́culo consideramos la familia de curvas
ves públicas (certificados y autoridades de certificación) que elı́pticas con ecuación de Weierstrass y 2 = x3 + Ax cuyas
planteaba la Criptografı́a de Clave Pública clásica, Shamir propiedades han sido estudiadas ampliamente, en particular la
en 1984 [12] propuso un nuevo paradigma: la Criptografı́a caracterización de sus clases de isomorfı́a ([11]). Esta familia
Basada en la Identidad, en la cual la clave pública de un proporciona ejemplos de curvas tanto supersingulares como
usuario es su propio nombre o cualquier otro atributo ligado al ordinarias. En la sección II se estudiará el grado de inmersión
mismo. Una de las formas en que es posible realizar la idea de de curvas en esta familia, en el caso supersingular, su grado
Shamir es utilizando emparejamientos (pairings) sobre curvas de inmersión puede ser obtenido fácilmente y para el caso
elı́pticas ([5]) (otras aproximaciones basadas en el problema ordinario proponemos un método para determinar las curvas
de la residuosidad cuadrática han sido desarrolladas por Cooks con un grado de inmersión pequeño y prefijado.
[1] o por Boneh [4]). En la sección III presentamos una variante del algoritmo
En lo que sigue, E representará una curva elı́ptica definida de Miller basada en la expresión en forma no adyacente de
sobre un cuerpo finito con q elementos Fq , q = pm , p primo, un número natural. En la sección IV se presentan ejemplos
p ≥ 5, con ecuación en la forma canónica de Weierstrass y 2 = numéricos y tiempos de ejecución de la implementación
x3 + Ax + B; A, B ∈ Fq . Recordemos ([9]) que el conjunto realizada del algoritmo de Miller y las variantes propuestas.
E(Fq ) de puntos de esta curva sobre Fq tiene cardinal N = Finalmente, en la sección V se detallan las conclusiones
√ obtenidas en la presente comunicación.
q + 1 − t, con |t| ≤ 2 q y E(Fq ) admite una estructura de
grupo abeliano.
Los emparejamientos, Weil, Tate, etc, ([3]) sobre la curva E II. C URVAS CON GRADO DE INMERSI ÓN PEQUE ÑO
son aplicaciones bilineales con valores en un cuerpo extensión
Fqk . El número k grado de inmersión, viene dado por la En [11] se caracterizan todas las clases de isomorfı́a de
siguiente, curvas elı́pticas con ecuación de Weierstrass del tipo y 2 =
Definición 1: Sea ` un divisor de N = ]E(Fq ) (habitual- x3 + Ax.
mente ` primo). Se denomina grado de inmersión de E/Fq Proposición 2: El número de clases de isomorfı́a de curvas
respecto de ` al mı́nimo entero positivo k verificando las elı́pticas de la familia mencionada sobre Fq , q = pm viene
condiciones equivalentes: dado por:
36 J.M. Miret, D. Sadornil, J G. Tena

i) Si q ≡ 1 mód 4 entonces existen cuatro clases con Tabla II


representantes C URVAS EL ÍPTICAS CON GRADO DE INMERSI ÓN 1 Ó 2

` x, y q Curva k
Ei : y 2 = x3 + ω i x, 0 ≤ i ≤ 3,
73 0,2 4`2 + 1 = 21317 E0 1
donde ω es un generador de F∗q . Para p ≡ 3 mód 4, (por 41 2,2 8`2 + 4` + 1 = 13613 E2 1
tanto m par), éstas son supersingulares. E1 , E3 tienen 79 1,1 2`2 + 2` + 1 = 12641 E1 (E3 ) 1

cardinal q +1 mientras que E0 tiene cardinal q +1±2 q 101 1,1 `2 + ` + 1 = 10301 E0 2

y el cardinal de E2 es q + 1 ∓ 2 q (el signo corresponde 101 3,1 9`2 + ` − 1 = 91909 E2 2
a m ≡ 2, 0 mód 4). 1013 2,2 4`2 + 2` − 1 = 4106701 E1 (E3 ) 2
Si p ≡ 1 mód 4 las cuatro curvas son ordinarias.
i) Si q ≡ 3 mód 4 (p ≡ 3 mód 4 y m impar) entonces
existen dos clases con representantes III. A LGORITMO DE M ILLER CON FORMAS NO
ADYACENTES
E10 2 3
: y = x + x, 0
E−1 2 3
: y = x − x.
Como se ha dicho en la introducción, un emparejamiento
Ambas curvas son supersingulares con cardinal q + 1. de orden `, e` , para una curva elı́ptica E sobre el cuerpo finito
En el caso supersingular, el grado de inmersión k de las Fq (usualmente ` primo y divisor del cardinal de la curva) es
curvas anteriores se deduce fácilmente a partir de su cardinal una aplicación bilineal que asigna a un par de puntos P, Q
(ver [9]). Explı́citamente, dicho grado se muestra en la tabla de la curva una raı́z de orden ` de la unidad. Supondremos
I. que estas raı́ces se encuentran inmersas en Fqk siendo k el
grado de inmersión de la curva (ver definición 1). En el caso
Tabla I particular del emparejamiento de Weil, los puntos P, Q son
G RADO DE INMERSI ÓN DE CURVAS SUPERSINGULARES ambos de `-torsión (designaremos por E(Fqk )[`], el subgrupo
de puntos de `-torsión de E). Nótese que un punto de `-torsión
Curva k
no necesariamente está definido en el cuerpo base pero si en
E0 , E2 1 Fqk ([2]).
E1 , E3 2 Para los puntos P, Q, el valor del emparejamiento e` se
0
E10 , E−1 2 calcula como el cociente
f`,P (Q + R)f`,Q (S)
En lo que sigue consideraremos únicamente las curvas e` (P, Q) = , (1)
f`,P (R)f`,Q (P + S)
ordinarias, es decir las curvas Ei sobre Fq , q ≡ 1 mód 4.
donde R, S son puntos auxiliares de la curva y las funciones
Para caracterizar su grado de inmersión respecto de ` será útil
f`,P , f`,Q son cociente de dos polinomios en dos variables
el resultado siguiente ([6]).
(para más detalles ver [9]). La dificultad de este cálculo reside
Lema 3: Una curva elı́ptica E tiene grado de inmersión k
en la construcción de estas funciones. El algoritmo de Miller
con respecto de ` si y sólo si t ≡ 1 + ζk mód `, con ζk una
([10]) permite realizar dicha construcción de forma eficiente.
raı́z de orden k de la unidad módulo `.
Las funciones f`,T para un punto cualquiera T , se obtienen
Por ejemplo, si k = 1 se tiene que t ≡ 2 mód ` y si k = 2
de forma recursiva a partir de las siguientes identidades:
se tiene que t ≡ 0 mód `. Por otra parte, ` debe dividir tanto
a q + 1 − t como a q k − 1. Fijado el grado de inmersión, para f0,T = f1,T = 1
cada primo `, se pueden obtener condiciones para entero q (2)
fm+n,T = fm,T fn,T gmT,nT
(primo o potencia de un primo). L
U,V
En particular para k = 1 y 2 hemos demostrado que: donde gU,V = L(U +V ),−(U +V )
y LU,V = 0 es la ecuación de la
Teorema 4: Una de las cuatro curvas Ei tiene grado de recta que pasa por los dos puntos U y V , o la recta tangente
inmersión 1 con respecto de ` si y sólo si si U = V . Nótese que L(U +V,−(U +V ) es la recta vertical que
pasa por el punto U +V y por tanto sólo depende de su abscisa.
q = (x2 + y 2 )`2 + 2x` + 1, x, y ∈ Z, x ≡ y mód 2. Por tanto, dado un entero ` y un punto T de orden `, el
cálculo de la función f`,T se realiza de la siguiente forma:
Teorema 5: Una de las cuatro curvas Ei tiene grado de
inmersión 2 con respecto de ` si y sólo si Algoritmo 6:
2 2
q = x ` + y` − 1, x ≡ y mód 2 y y` − 1 es un cuadrado. Input: T ∈ E(Fqk )[`],
` = (`r−1 , `r−2 , . . . , `0 )2 (representación binaria de `)
Nótese que tal q debe ser primo o potencia de primo. Output: f`,T
La curva concreta puede obtenerse teniendo en cuenta la f ← 1, W ← P .
Proposición 3.5 de [11]. for i from r − 2 to 0 do
Ejemplos concretos para algunos valores de los parámetros f ← f 2 LL0
x, y pueden verse en la tabla II. (L recta tangente en W , L0 recta vertical por 2W )
Familias de curvas elı́pticas adecuadas para Criptografı́a Basada en la Identidad 37

W ← 2W solución computacionalmente más eficiente nos ha llevado a


if `i = 1 then esta segunda forma.
f ← f LL0 Tenemos entonces, tres formas diferentes para el cálculo de
(L recta que pasa por T y W , L0 recta vertical por la función f`,T : método binario usando el algoritmo original
T + W) de Miller y dos versiones NAF I y NAF II utilizando la
W ←T +W representación en forma no adyacente. En realidad, la función
end if obtenida en cada caso es diferente, sin embargo, al calcular
end for el emparejamiento con la fórmula (1), el resultado obtenido
RETURN f con cualquiera de las tres funciones es el mismo, ya que dicho
valor e` (P, Q) es independiente del camino seguido ([3]).
El algoritmo anterior se basa en una estrategia de cuadrados
repetidos (doblado y suma) en la que se hace uso de la IV. E JEMPLOS NUM ÉRICOS
expresión binaria del entero `. Es claro que el número de Se han implementado las diferentes versiones mostradas del
iteraciones en el algoritmo anterior es log2 (`) y el número de algoritmo de Miller para el cálculo de la función f`,T usando
operaciones (cálculo de rectas) a realizar depende del peso de Maple v.13 en un ordenador con un procesador Intel Core 2
Hamming de `. Por tanto, el algoritmo será más rápido cuanto Duo de 2.13 GHz y 2 GB de memoria RAM.
menor sea tal peso. En la tabla III se muestran los tiempos de ejecución (en me-
Los algoritmos que se basan en este tipo de estrategia dia) de los tres algoritmos: es decir, usando la representación
pueden adaptarse para usar, en lugar de la representación binaria de ` en el primer caso, y en los otros dos tomando la
binaria, cualquier otra cadena de adición-sustracción. En par- forma no adyacente de `.
ticular, es posible minimizar el número de bits no nulos en Se han calculado previamente curvas elı́pticas con grado de
la representación binaria de un número usando el siguiente inmersión 1 respecto a algún primo ` de tamaño 20, 40, 60 y
concepto en el que se permiten restas (hay que tener en cuenta 100 bits (con sus correspondientes puntos de orden `) para las
que la resta de puntos de una curva elı́ptica se puede hacer dos primeras familias de curvas elı́pticas ordinarias mostradas
con el mismo coste que una suma). en la Tabla II.
Definición 7 ([8]): Dado un entero n, se define la forma no El primo ` se ha escogido de dos formas distintas. En el
Pr−1de n (N AF (n)) como una representación dada por
adyacente primer caso no se ha considerado ninguna restricción sobre
n = i=0 ki 2i donde ki ∈ {0, ±1}, kr−1 6= 0 y para todo él mientras que en el segundo caso, se han escogido primos
1 ≤ i ≤ r − 1, ki−1 ki = 0. ` cuya representación en forma no adyacente tiene peso de
A partir de las formas recurrentes dadas en (2), teniendo Hamming pequeño. Para cada tipo se han tomado 500 de estos
en cuenta que f0,T = f1,T f−1,T gT,−T , es posible determinar primos para cada longitud (100 cuando ` tiene 100 bits).
los pasos a añadir en el Algoritmo 6 cuando se cambia la
representación binaria del entero ` por su representación en Tabla III
forma no adyacente. Más concretamente, habrı́a que añadir T IEMPOS DE EJECUCI ÓN DEL ALGORITMO DE M ILLER ( MS )
las órdenes siguientes:
Curva/primo No de bits ` Binario NAF I NAF II
if `i = −1 then
20 4.1 3.8 3.8
f ← f L1LL0
40 12.1 10.6 10.6
(L1 recta vertical por T , L recta que pasa por −T y W , E0 , p = 4`2 + 1
60 23.5 21.9 20.7
L0 recta vertical por W − T )
100 61.4 56.3 54.1
W ←W −T
20 3.7 3.4 3.2
end if
E0 , p = 4`2 + 1 40 10.4 8.7 8.7
Sin embargo, existe otra forma de obtener la función f`,T a wN AF (`) ≤ 7 60 21.8 17.6 17
partir de la representación NAF de `. Para ello, se sustituirı́an 100 56.3 44.9 43.6
las instrucciones anteriores por las siguientes: 20 6.3 6 5.9
if `i = −1 then E2 , 40 11.2 10.1 9.8
0
f ← f LL p = 8`2 + 4` + 1 60 33.8 30.7 28.2
(L0 recta vertical por W y L la recta que pasa por los 100 65.6 58.8 56.4
puntos T y −W ) 20 5.5 5.1 4
W ←W −T E2 , 40 13.8 12.3 11.2
p = 8`2 + 4` + 1
end if wN AF (`) ≤ 8 60 29.4 23.8 22.5
Téngase en cuenta que en este caso cuando `i = −1, se 100 80.9 60.2 59.9
calculan dos rectas mientras que en la versión anterior son
necesarias tres rectas. Aunque la forma natural de trasladar Tal como era de esperar, en ambos casos las versiones
el algoritmo clásico de Miller a su versión usando la repre- basadas en formas no adyacentes son más eficientes y, en
sentación NAF es la propuesta primera, la búsqueda de una general, la versión NAF II es mucho más rápida.
38 J.M. Miret, D. Sadornil, J G. Tena

El mayor descenso en tiempo de ejecución se encontrarı́a [7] D. Freeman, M. Scott, E. Teske, “A taxonomy of pairing-friendly elliptic
cuando ` es un primo de Mersenne, 2p −1, cuya representación curves”, Journal of Cryptology, vol 23(2), pp. 224–280, 2010.
[8] D. Hankerson, A. Menezes, S. Vanstone, “Guide to Elliptic Curve
binaria es 1111 . . . 111, mientras que su expresión en forma Cryptography”, Springer, 2004.
no adyacente es 1000 . . . 000-1. [9] A. Menezes, “Elliptic Curves Public Key Cryptography” , Kluwer, 1993.
Finalmente, hemos considerado la curva elı́ptica E0 sobre [10] V. Miller “The Weil Pairing, and its Efficient Calculation” Journal of
Cryptology , vol. 17, pp. 235–261, 2004.
Fq , con q = 4`2 + 1 siendo ` = 2258 + 2242 − 1. Este primo [11] C. Munuera, J. Tena, “An algorithm to compute the number of points
` es un ejemplo de los denominados primos de Solinas, reco- on elliptic curves of j-invariant 0 or 1728 over a finite field”, Rendiconti
mendados para su uso en criptografı́a elı́ptica. Las expresiones del Circolo Matematico di Palermo, Serie 2, tomo XLII, pp. 106–116,
1993.
binaria y NAF de este primo ` son: [12] A. Shamir, “Identity-based cryptosystems and signature schemes“, Ad-
242bits vances in cryptology - CRYPTO 1984, Springer LNCS196, pp. 47–53,
z }| { 1985.
10000000000000000 111 . . . 11
1000000000000000 |1000{z
. . . 0-1}
243bits

Los tiempos de ejecución de las tres versiones del algoritmo


de Miller para este ejemplo son 468 ms para el caso binario,
234 ms para NAF I y 218 ms para NAF II.
V. C ONCLUSI ÓN
Partiendo de las curvas con el denominado j-invariante igual
a 1728, o lo que es lo mismo las curvas con ecuación y 2 =
x3 + Ax, hemos obtenido condiciones que permiten asegurar
que dichas curvas son buenas para su empleo en Criptografı́a
Basada en la Identidad. En particular, hemos proporcionado
ejemplos concretos de curvas elı́pticas con grado de inmersión
1 y 2.
La herramienta principal utilizada en Criptografı́a Basada
en la Identidad son los emparejamientos. Nos hemos ocupado
también de la implementación del algoritmo de Miller que
es el algoritmo básico en el cálculo de los emparejamientos,
tanto en su versión original como en variantes propuestas en el
trabajo basadas en la forma no adyacente del primo `. De esta
forma, se observa que las variantes propuestas, permiten un
ahorro significativo en los tiempos de ejecución del algoritmo
de Miller.
AGRADECIMIENTOS
Este trabajo ha sido financiado por el Ministerio de Eco-
nomı́a y Competitividad con los proyectos MTM2010-21580-
C02-01/02 y MTM2010-16051.
R EFERENCIAS
[1] C. Cocks, “An identity based encryption scheme based on quadratic
residues“, Proceedings of the 8th IMA Int. Conf. on Cryptology and
Coding, Springer LNCS 2260, pp. 360–363, 2001.
[2] R. Balasubramanian, N. Koblitz “The improbability that an elliptic curve
has subexponential discrete log problem under the Menezes-Okamoto-
Vanstone algorithm”,Journal of Cryptology vol 11 (2), pp. 141–145,
1998.
[3] I. Blake, G. Seroussi, N. Smart, “Advances in Elliptic Curve Crypto-
graphy”. London Mathematical Society, LNS 371. Cambdridge Univer-
sity Press, 2005.
[4] D. Boneh, C. Gentry, M. Hamburg. “Space-Efficient Identity Based
Encryption without Pairings“ FOCS’07: Proceedings of the 48th Annual
IEEE Symposium on Foundations of Computer Science, pp. 647-657,
2007.
[5] D. Boneh, M. Franklin “Identity based Encryption from the Weil
Pairing” Advances in Cryptology - CRYPTO 2001 , Springer LNCS
2139, pp. 213–229, 2001.
[6] F. Brezing, A. Weng, ”Elliptic curves suitable for pairings based cry-
ptography“, Designs, Codes and Cryptography 37, pp. 133–141, 2005.
RECSI 2014, Alicante, 2-5 septiembre 2014

Códigos con propiedades de localización basados en


matrices de bajo sesgo
José Moreira Marcel Fernández Grigory Kabatiansky
Departament d’Enginyeria Telemàtica Departament d’Enginyeria Telemàtica Institute for
Universitat Politècnica de Catalunya Universitat Politècnica de Catalunya Information Transmission Problems
Email: jose.moreira@entel.upc.edu Email: marcel@entel.upc.edu Russian Academy of Sciences
Email: kaba@iitp.ru

Resumen—En este artı́culo presentamos una construcción introducidos en [12]. En ese trabajo, se mostró su aplicación a
explı́cita de un código con propiedades de identificación de la construcción de códigos de fingerprinting, al estilo de [13],
traidores, aplicable a entornos de fingerprinting. Nuestro trabajo mejorando las cotas de existencia previas de dichos códigos.
parte del estudio de una familia de códigos conocidos como
códigos separables, que en el campo del fingerprinting también A efectos prácticos, la idea principal consiste en que el
se conocen como códigos seguros contra incriminaciones. A partir reemplazo de códigos SFP por códigos cuasi SFP en ese tipo
de estos códigos, nos centramos en una versión menos estricta de de construcciones permite al distribuidor utilizar códigos de
ellos, en los que no se requiere que la propiedad de separación se fingerprinting más cortos, reduciendo ası́ tanto el coste de
cumpla en todos los casos, sino con alta probabilidad. Este tipo de inserción de las marcas como el coste de identificación de
códigos se conocen como códigos cuasi seguros contra incrimina-
ciones. En este trabajo mostramos como construir explı́citamente traidores [12], [14].
estos códigos, basando nuestras construcciones en estructuras Sea C un código. Informalmente, diremos que dos conjuntos
conocidas como matrices de bajo sesgo. Además, mostramos disjuntos de palabras código U, V ⊆ C son separados si existe
cómo es posible utilizar dichos códigos para construir de forma una posición en la que el conjunto de valores de las palabras
explı́cita una familia de códigos binarios con propiedades de de U es disjunto al conjunto de valores de las palabras de V
identificación, baja tasa de error y decodificación eficiente.
Palabras clave—Fingerprinting, código seguro contra incrimi- en esa posición. El código C se denomina (c, c)-separable [5],
naciones (secure frameproof code), código separable (separating [6], [7], [8], [9], [10], [11] si cada par de conjuntos disjuntos
code), identificación de traidores (traitor tracing) U, V ⊆ C de tamaño c son separados.
Supongamos que, dado un conjunto U ⊆ C de ≤ c palabras
I. I NTRODUCCI ÓN código, generamos una nueva palabra en la que el valor en
Los códigos con propiedades de localización, también cono- cada posición pertenece a alguna de las palabras de U en esa
cidos como códigos de fingerprinting, se utilizan para luchar posición. Una palabra generada de esta forma se denomina
contra la redistribución ilegı́tima de contenidos, llevada a cabo descendiente del conjunto U . Dado que las palabras código
por usuarios deshonestos. Un distribuidor que desee proteger corresponden a las marcas de usuario, la generación de un
un determinado contenido entregará copias marcadas de éste descendiente modela la generación de la marca corrupta de
a los usuarios destinatarios. Cada marca introducida identi- la copia pirata. Un descendiente de U es unı́vocamente c-
ficará a un único usuario. Esto los disuadirá de realizar una decodificable si no es descendiente de cualquier otro conjunto
redistribución “ingenua” de su copia del contenido. No obstan- disjunto a U de ≤ c palabras código. Un código c-SFP es
te, puede suceder que diversos usuarios (traidores) confabulen aquel en el que todos los descendientes de conjuntos de ≤ c
y generen una copia pirata, que no es más que una mezcla, palabras son unı́vocamente c-decodificables [1], [2], [3], [4].
de acuerdo a unas determinadas reglas, de sus propias copias. No es difı́cil ver que esto es equivalente a la condición descrita
La copia pirata, por tanto, contendrá una marca corrupta. Por para los códigos (c, c)-separables. Es decir, un código (c, c)-
tanto, el objetivo del distribuidor consistirá en determinar un separable y un código c-SFP son el mismo concepto.
conjunto de marcas tales que sea posible identificar, al menos, Consideremos ahora una versión menos estricta de ambas
a uno de los traidores. definiciones, en el sentido de no exigir separabilidad completa
El término de código seguro contra incriminaciones (secure ni decodificación unı́voca completa. Esto nos lleva a considerar
frameproof code, código SFP) [1], [2], [3], [4] es el nombre dos nociones diferentes, como se expuso en [12]. Un código
que se dio a los códigos separables [5], [6], [7], [8], [9], cuasi (c, c)-separable es un código en el que un subconjunto
[10], [11] cuando fueron redescubiertos dentro de los campos de ≤ c palabras código está separado del resto de subconjuntos
del fingerprinting y de la identificación de traidores. Este disjuntos de tamaño ≤ c con alta probabilidad. Por otra parte,
artı́culo versa sobre la construcción de lo que denominamos un código cuasi c-SFP es un código en el que cada descen-
códigos cuasi seguros contra incriminaciones (almost secure diente es unı́vocamente c-decodificable con alta probabilidad.
frameproof code, código cuasi SFP) y su aplicación a la En este artı́culo conectaremos los conceptos definidos ante-
construcción explı́cita de códigos de fingerprinting. Estos códi- riormente con el concepto de matrices de bajo sesgo [15], que
gos, una versión menos restrictiva de los códigos SFP, fueron está estrechamente relacionado con el concepto de espacios
40 J. Moreira, M. Fernández, G. Kabatiansky

probabilı́sticos de bajo sesgo [16], [17]. Llamaremos a esa posición una posición separadora. También
Una matriz binaria de bajo sesgo es una matriz definida diremos que una c-coalición U es separada si está separada
sobre el cuerpo finito de dos elementos, F2 = {0, 1}, tal de cualquier otra c-coalición del código.
que cualquier combinación lineal de sus columnas tiene, Definición 1: Un código C es (c, c)-separable si cualquier
aproximadamente, el mismo número de ceros que de unos. par de c-coaliciones U, V ⊆ C tienen una posición separadora.
Bajo unas determinadas condiciones, una matriz binaria de Equivalentemente, si todas las c-coaliciones U ⊆ C son
bajo sesgo A ∈ Fn×M 2 exhibirá la siguiente propiedad: para separadas.
cualquier subconjunto S de ≤ t columnas y cada posible Los códigos separables fueron introducidos por Friedman et
vector a ∈ Ft2 , existirá una fila tal que su proyección en al. en [5] hace más de 40 años. Un código separable es una
las columnas de S coincidirá con a. Una matriz con esta estructura combinatoria con multitud de aplicaciones, como
propiedad genera inmediatamente lo que se conoce como un por ejemplo en la construcción de funciones de hash, testeo
conjunto (M, t)-universal. Esta observación será clave para de circuitos combinacionales y sı́ntesis de autómatas. Estos
nuestros propósitos, ya que un conjunto (M, 2c)-universal códigos han sido posteriormente estudiados por numerosos
genera inmediatamente un código (c, c)-separable, es decir, autores, por ejemplo en [6], [7], [8], [9], [10], [11]. Se han
c-SFP. investigado cotas superiores e inferiores sobre su tasa, y se
Como se ha comentado, es fácil ver que un código (c, c)- ha mostrado su relación con conceptos matemáticos similares.
separable y un código c-SFP son el mismo concepto. No Véase, por ejemplo, [6] y [10].
obstante, cuando se consideran sus versiones relajadas am- Con la aparición del fingerprinting digital, los códigos se-
bas nociones difieren. Intuitivamente, parece claro que un parables han vuelto a suscitar interés de nuevo. Consideremos
código cuasi separable es más restrictivo que un código una c-coalicón U = {u1 , . . . , uc } ⊆ C de un (n, M )-
cuasi SFP. Concretamente, se ha mostrado la existencia de código C ⊆ Qn . En un ataque de confabulación, las reglas
códigos cuasi SFP de tasa mucho mayor que códigos cuasi de marcado (marking assumption) [18] establecen que las
separables [12]. La estrategia utilizada para establecer dichas posiciones i tales que todas las palabras de U tienen el mismo
cotas de existencia está basada en métodos probabilı́sticos que, sı́mbolo deben permanecer inalteradas en cualquier palabra
desafortunadamente, no son métodos constructivos que nos pirata z que generen. En concreto, el modelo de generación
lleven a la construcción práctica de estos códigos. de palabras pirata que adoptaremos será el conocido como
Introducidos estos conceptos, podemos dar una visión gene- narrow-sense envelope model [13], donde para cada posición
ral de la estructura de este artı́culo. En la Sección II mostramos i tenemos que zi ∈ Pi (U ). El conjunto de todas las palabras
las definiciones formales que necesitaremos, ası́ como una piratas que U puede generar lo denotaremos por desc(U ), y
breve revisión de resultados anteriores. Nuestra contribución bajo las presuposiciones mencionadas, tenemos que
la presentaremos en la Sección III. Mostraremos como, par- def
tiendo de construcciones existentes de matrices de bajo sesgo, desc(U ) = {z = (z1 , . . . , zn ) ∈ Qn : zi ∈ Pi (U ), 1 ≤ i ≤ n}.
podemos obtener construcciones de lo que denominaremos Normalmente, a las palabras pirata de desc(U ) se les denomi-
conjuntos cuasi universales. Finalmente, mostramos como esas na descendientes. También se define el código c-descendiente
construcciones pueden emplearse para la construcción explı́ci- de C, denotado por descc (C), como
ta de códigos cuasi SFP, lo que culminará con la construcción def
[
explı́cita de un código de fingerprinting en la Sección IV. descc (C) = desc(U ).
U ⊆C,|U |≤c
II. D EFINICIONES Y RESULTADOS PREVIOS
Un descendiente z ∈ descc (C) es unı́vocamente c-
Dado un alfabeto Q de tamaño |Q| = q, denotamos por
decodificable si z ∈ desc(U ) para alguna c-coalición U ⊆ C,
Qn el conjunto de todos los vectores q-arios de longitud n.
yz∈ / desc(V ) para cualquier c-coalición V disjunta a U .
Por ejemplo, u = (u1 , . . . , un ) ∈ Qn . Un subconjunto C ⊆ Definición 2: Un código C es c-seguro contra incriminacio-
Qn de tamaño M se denomina un (n, M )-código q-ario. Los nes (c-SFP) si para cualesquiera U, V ⊆ C tales que |U | ≤ c,
elementos de C se denominan palabras código. Si Q es un |V | ≤ c y U ∩ V = ∅, entonces desc(U ) ∩ desc(V ) = ∅.
cuerpo finito de q elementos, lo denotaremos por Fq . Equivalentemente, si todos los descendientes z ∈ descc (C)
II-A. Códigos cuasi separables y cuasi SFP son unı́vocamente c-decodificables.
El concepto de código c-SFP fue introducido en [18], [1],
Dado un (n, M )-código C, un subconjunto U =
[2]. No es difı́cil ver que, en efecto, se trata de códigos (c, c)-
{u1 , . . . , uc } ⊆ C de tamaño c se denomina c-coalición.
separables.
Denotaremos por Pi (U ) la proyección de U en la posición def
i-ésima, es decir, el conjunto de elementos del alfabeto del Sea R = R(C) = n−1 logq |C| la tasa de un (n, M )-
código en dicha posición, código sobre un alfabeto q-ario Q. Denotaremos por Rq (n, c)
a la tasa máxima que puede alcanzar un código q-ario (c, c)-
def
Pi (U ) = {u1i , . . . , uci }. separable (equivalentemente, c-SFP) de longitud n. Es decir,
def
Dadas dos c-coaliciones U, V ⊆ C, diremos que U y V Rq (n, c) = máx R(C).
C ⊆ Qn : C es
están separadas si Pi (U ) ∩ Pi (V ) = ∅ para alguna posición i. (c, c)-separable
Códigos con propiedades de localización basados en matrices de bajo sesgo 41

Consideraremos también los lı́mites asintóticos de dicha tasa (n, M )-matriz binaria A y un subconjunto de posiciones
S ⊆ {1, . . . , M } de tamaño s, Denotamos por νS (a; A) al
Rq (c) = lı́m inf Rq (n, c), Rq (c) = lı́m sup Rq (n, c).
n→∞ n→∞ número de filas de A cuyas proyecciones en las posiciones
En este artı́culo nos centraremos en códigos sobre el alfabe- de S coincide con el vector a ∈ Fs2 . Obviamente, un vector
to binario, es decir, Q = {0, 1}. Para códigos binarios (2, 2)- u ∈ Fn2 puede verse como una (n, 1)-matriz binaria. En este
separables, se sabe que R2 (2) ≥ 0, 0642 [7], [6] (cota también caso, ν{1} (0; u) y ν{1} (1; u) denotan el número de ceros y el
válida para el caso de códigos lineales [7]) y R2 (2) < 0,2835 número de unos de u, respectivamente.
[6], [9]. Para valores arbitrarios de c, en [13] se obtiene que Definición 5: Sea u = (u1 , . . . , un ) ∈ Fn2 . El sesgo del
vector u se define como
log2 (1 − 2−2c+1 )
R2 (c) ≥ − . n−1 |ν{1} (0; u) − ν{1} (1; u)|.
2c − 1
Como puede observarse, las cotas de existencias de códigos Es decir, un vector u con, aproximadamente, el mismo
separables muestran que éstos poseen una tasa muy baja. número de ceros y de unos tendrá bajo sesgo.
Con el objetivo de obtener códigos de mejor tasa, en [12] Definición 6: Sea 0 ≤ ε < 1. Una (n, M )-matriz binaria
se proponen dos versiones menos estrictas de estos códigos. A es (ε,t)-sesgada si cualquier combinación lineal no trivial
Definición 3: Un código C ⊆ Qn es ε-cuasi (c, c)-separable de ≤ t de sus columnas tiene sesgo ≤ ε. Si t = M diremos
si la proporción de coaliciones separadas de tamaño c, entre simplemente que A es ε-sesgada (o que tiene sesgo ε).
todas las posibles coaliciones de tamaño c, es ≥ 1 − ε. Definición 7: Sea 0 ≤ ε < 1. Una (n, M )-matriz binaria
Una secuencia de códigos (Ci )i≥1 de longitud ni cre- A es ε-cuasi t-independiente si para cualquier subconjunto
ciente es una familia asintóticamente cuasi (c, c)-separable S ⊆ {1, . . . , M } de s ≤ t columnas satisface
si cada código Ci es un código εi -cuasi (c, c)-separable y X
lı́mi→∞ εi = 0. |n−1 νS (a; A) − 2−s | ≤ ε.
Definición 4: Un código C ⊆ Qn es ε-cuasi c-SFP si la a∈Fs2

proporción de descendientes z ∈ descc (C) unı́vocamente c- Para nuestros propósitos, el concepto más importante que
decodificables es ≥ 1 − ε. necesitaremos será el de conjunto (M, t)-universal.
Una secuencia de códigos (Ci )i≥1 de longitud ni creciente Definición 8: Un conjunto (M, t)-universal B es un sub-
es una familia asintóticamente cuasi c-SFP si cada código Ci conjunto de FM 2 tal que para cualquier subconjunto S ⊆
es un código εi -cuasi c-SFP y lı́mi→∞ εi = 0. {1, . . . , M } de t posiciones, el conjunto de las proyecciones
Cabe destacar que las definiciones anteriores permiten se- de los elementos de B en las posiciones S contiene todos los
parar los conceptos de “separación” y “decodificación unı́vo- vectores a ∈ Ft2 .
ca”, que coincidı́an en el caso de códigos completamente Dada una (n, M )-matriz binaria A, si para cualquier sub-
separables y SFP. Además, estas nuevas definiciones permiten conjunto S ⊆ {1, . . . , M } de t columnas y cualquier vector
obtener códigos con mayor tasa. a ∈ Fs2 , se satisface νS (a; A) > 0, entonces las filas de A
Para una familia de códigos C = (Ci )i≥1 definimos su tasa forman un conjunto (M, t)-universal. Nos interesan conjuntos
asintótica como universales del mı́nimo tamaño posible.
def
R(C) = lı́m inf R(Ci ). En [16] se establece la conexión entre conjuntos universales
i→∞ y matrices cuasi independientes.
Nuestro interés reside en estimar el valor máximo de dicha Proposición 9: Sea A una (n, M )-matriz binaria. Para ε ≤
tasa entre todas las familias de códigos asintóticamente cuasi 2−t , si A es ε-cuasi t-independiente, entonces las filas de A
(c, c)-separables y asintóticamente c-SFP. Denotaremos estas forman un conjunto (M, t)-universal de tamaño n.
tasas asintóticas por Rqsep∗ (c) y RqSFP∗ (c), respectivamente. Además, en [19], [20], [16] también se relacionan estos
Por ejemplo, para el caso binario y coaliciones de tamaño conceptos con matrices de bajo sesgo.
c = 2 tenemos que R2sep∗ (2) ≥ 0,1142, de [14], y R2SFP∗ (2) ≥ Corolario 10: Sea A una (n, M )-matriz binaria. Si A es
0,2075, de [12]. ε-sesgada, entonces A es 2t/2 ε-cuasi t-independiente.
Por tanto, la construcción de conjuntos universales se reduce
II-B. Matrices de bajo sesgo a la construcción de matrices cuasi independientes mediante
En esta sección presentamos los conceptos sobre matrices la Proposición 9, que a su vez se reduce a la construcción
de bajo sesgo que utilizaremos más adelante en nuestras de matrices de bajo sesgo, mediante el Corolario 10. Más
construcciones. Para una explicación más detallada, remitimos adelante, presentaremos una construcción de matrices cuasi
al lector a las referencias [17], [16], [15]. independientes aún más eficiente que la aplicación directa del
Como se ha comentado, nos centraremos en el caso binario, Corolario 10.
ya que nuestro objetivo final será la construcción de códigos
binarios. Por tanto, de aquı́ en adelante trabajaremos con el III. C ONSTRUCCIONES
alfabeto F2 . En esta sección presentamos nuestras construcciones de
Una (n, M )-matriz binaria A es una matriz de tamaño códigos cuasi SFP. Antes de entrar en detalles explı́citos,
n × M donde sus elementos pertenecen a F2 . Dada una daremos un razonamiento intuitivo de nuestra propuesta.
42 J. Moreira, M. Fernández, G. Kabatiansky

No es difı́cil ver que, en un (n, M )-código aleatorio bi- {1, . . . , M } de t posiciones el conjunto de proyecciones de
nario, la probabilidad de que dos coaliciones de tamaño c los elementos de B sobre los ı́ndices de S contiene todos los
esten separadas se maximiza cuando se generan las palabras vectores a ∈ Ft2 excepto, como máximo, z.
código según un vector de probabilidad p = (p1 , . . . , pn ) con De nuevo, si A es una (n, M )-matriz, las filas de A generan
p1 = · · · = pn = 1/2. Es decir, generamos al azar M palabras un conjunto (M, t, z)-universal siempre que existan al menos
código (u1 , . . . , un ) tales que Pr{ui = 1} = pi = 1/2. 2t − z vectores a ∈ Ft2 tales que νS (a; A) > 0, para todos los
Pero ya que estamos interesados en códigos ε-cuasi c-SFP, subconjuntos S ⊆ {1, . . . , M } de t columnas.
se permitirá un pequeño sesgo en estas probabilidades y, por De manera similar a la Proposición 9, el siguiente resultado
tanto, consideraremos matrices de bajo sesgo. muestra la conexión entre conjuntos (M, t, z)-universales y
Existen construcciones explı́citas de (n, M )-matrices ε- matrices ε-cuasi t-independientes.
−1
sesgadas con n = 2O(log M +log ε ) [16], que conducen a Proposición 12: Sea A una matriz binaria (n, M ). Para ε ≤
obtener conjuntos (M, t)-universales, de tamaño 2O(t) log M . (z + 1)2−t , si A es ε-cuasi t-independiente, entonces las filas
Si disponemos los vectores de este conjunto universal como de A generan un conjunto (M, t, z)-universal de tamaño n.
las filas de una matriz, las columnas de esta matriz formarán Demostración: Por contradicción, supondremos que las
un código c-SFP para t = 2c. Este código tendrá tamaño filas de A no generan generan un conjunto (M, t, z)-universal.
M , longitud 2O(2c) log M y tasa 2−O(2c) . Nuestra idea consist En otras palabras, existe un subconjunto S ⊆ {1, . . . , M } de
en relajar la propiedad de conjunto universal y permitir que t columnas tales que hay más de z vectores a ∈ Ft2 tal que
un determinado número de vectores a ∈ Ft2 no aparezcan en νS (a; A) = 0. Para este subconjunto particular S se tiene que
cada proyección de t posiciones del conjunto. Esto da lugar a X
conjuntos “cuasi universales”. Finalmente demostramos que |n−1 νS (a; A) − 2−t | ≥ (z + 1)2−t +
los conjuntos “cuasi universales” se pueden utilizar para a∈Ft2
generar códigos ε-cuasi c-SFP. X
|n−1 νS (a; A) − 2−t | ≥ (z + 1)2−t+1 > ε,
III-A. Conjuntos universales y cuasi universales a∈Ft2 t.q.
νS (a;A)>0
Los conjuntos universales se han descrito en la Definición 8,
y mostrado que la construcción de conjuntos universales se que contradice el hecho que la matriz A sea ε-cuasi t-
puede reducir a la construcción de matrices ε-sesgadas. independiente.
Es fácil ver que un conjunto (M, 2c)-universal de tamaño n
genera un (n, M )-código (c, c)-separable, es decir, c-SFP [21]. III-B. Conjuntos (M, t, z)-universales
Para ello, sea A una (n, M )-matriz cuyas filas forman un con- Según la Proposición 12, la construcción de conjuntos
junto (M, 2c)-universal, y tomemos las columnas de A como (M, t, z)-universales se reduce a construir una matriz binaria
las palabras de un código C. Consideremos dos c-coaliciones (z + 1)2−t -cuasi t-independiente, y según el Corolario 10,
disjuntas U, V ⊆ C, es decir, 2c columnas de A. Debido esto se reduce a la construcción de una matriz ε-sesgada.
a que las filas de A forman un conjunto (M, 2c)-universal, En realidad, la matriz A del Corolario 10 se puede tomar
entonces para las 2c columnas seleccionadas aparezcan todos como una matriz (ε, t)-sesgada, que es una condición menos
los posibles vectores a ∈ F2c 2 . En particular, hay una fila restrictiva que una matriz ε-sesgada.
i donde todas las columnas correspondientes a U contienen En [16] se puede encontrar una construcción estándar para
el sı́mbolo 0 y todas las columnas correspondientes a V matrices binarias (ε, t)-sesgadas.
contienen el sı́mbolo 1. Por tanto, i es una posición separadora Teorema 13: Sea A una (n, M 0 )-matriz binaria ε-sesgada,
para las coaliciones U, V . Es decir, Pi (U ) ∩ Pi (V ) = ∅, como y sea H la matriz de paridad de un código binario lineal de
se deseaba. longitud M , dimensión M − M 0 y distancia mı́nima t + 1.
Construcciones eficientes de conjuntos (M, 2c)-universales Entonces, el producto matricial A × H es una(n, M )-matriz
usando matrices ε-cuasi t-independiente se presentan en [16], binaria (ε, t)-sesgada.
en virtud de la Proposición 9 y el Corolario 10. Estas cons- Habitualmente, la matriz H utilizada en el Teorema 13
trucciones dan lugar a códigos c-SFP de longitud 2O(c) log M . es la matriz de paridad de un código BCH binario. En este
Utilizando esta idea, nuestro objetivo es relajar la restricción caso, la matriz H tendrá M columnas y M 0 = t log M
que la (M, 2c)-universalidad impone para asi obtener una filas. Entonces, empleando el Teorema 13 en el Corolario 10,
matriz más corta, es decir, un código de mejor tasa. De el número de filas de una (n, M )-matriz binaria ε-cuasi t-
hecho, no es necesario que todos los posibles vectores de F2c 2
−1
independiente se puede reducir de n = 2O(t+log M +log ε ) a
−1
aparezcan en el código. Por lo tanto, nos proponemos relajar la n = 2O(t+log log M +log ε ) [16].
Definición 8 permitiendo que un número máximo de vectores El problema ahora se reduce a obtener (n, M 0 )-matrices
a ∈ F2c 2 , por ejemplo z, no aparezcan en la proyección de binarias ε-sesgadas con el menor número posible de filas.
cualquier subconjunto S ⊆ {1, . . . , M } de 2c posiciones. Esto En [17] se presentan construcciones explicitas de dichas
se formaliza en la siguiente definición. matrices tales que su número de filas es
Definición 11: Un conjunto (M, t, z)-universal B es un 0
+log2 ε−1 )
subconjunto de FM 2 tal que para cada subconjunto S ⊆ n ≤ 22(log2 M .
Códigos con propiedades de localización basados en matrices de bajo sesgo 43

Tabla I
TASAS DE C ÓDIGO ALCANZABLES PARA CONSTRUCCIONES EXPL ÍCITAS DE C ÓDIGOS ε- CUASI c-SFP DE TAMA ÑOS ENTRE 103 Y 107

Tamaño del código


c z log2 ε M = 103 M = 104 M = 105 M = 106 M = 107
2 0 n/a 1,531 × 10−6 1,148 × 10−6 9,187 × 10−7 7,656 × 10−7 6,562 × 10−7
2 1 n/a 6,124 × 10−6 4,593 × 10−6 3,675 × 10−6 3,062 × 10−6 2,625 × 10−6
2 2 −5,336 × 105 1,378 × 10−5 1,034 × 10−5 8,268 × 10−6 6,890 × 10−6 5,906 × 10−6
2 3 −3,001 × 105 2,450 × 10−5 1,837 × 10−5 1,470 × 10−5 1,225 × 10−5 1,050 × 10−5
3 0 n/a 1,063 × 10−8 7,975 × 10−9 6,380 × 10−9 5,316 × 10−9 4,557 × 10−9
3 1 n/a 4,253 × 10−8 3,190 × 10−8 2,552 × 10−8 2,127 × 10−8 1,823 × 10−8
3 2 −3,567 × 107 9,569 × 10−8 7,177 × 10−8 5,742 × 10−8 4,785 × 10−8 4,101 × 10−8
3 3 −2,006 × 107 1,701 × 10−7 1,276 × 10−7 1,021 × 10−7 8,506 × 10−8 7,291 × 10−8
3 5 −8,917 × 106 3,828 × 10−7 2,871 × 10−7 2,297 × 10−7 1,914 × 10−7 1,640 × 10−7
3 6 −6,551 × 106 5,210 × 10−7 3,908 × 10−7 3,126 × 10−7 2,605 × 10−7 2,233 × 10−7

En [15, Teorema 10] se presenta una mejor construcción El siguiente corolario formaliza la relación entre códigos
explı́cita con un valor inferior de n. Lamentablemente, las ε-cuasi c-SFP y conjuntos (M, t, z)-universales.
condiciones requeridas en esa construcción hacen que no sea Corolario 14: Sean M > 0, c ≥ 2, z < 2c , y ε ≥
aplicable a nuestro caso, por lo que tenemos que recurrir a la p(M, c, z), donde
construcción de [17]. def
A continuación, resumimos los pasos para la construcción p(M, c, z) = M c (1 − 2−c )n .
explı́cita de un conjunto (M, t, z)-universal. Entonces, un conjunto (M, 2c, z)-universal de tamaño n ge-
1. Tomar ε = (z + 1)2−3t/2 . nera un código ε-cuasi c-SFP de tasa R = log M/n.
2. Construir una (n, M 0 )-matriz A0 ε-sesgada, donde M 0 = Demostración: Considérese un código C generado a par-
t log M . tir de un conjunto (M, 2c, z)-universal. Sea z un descendiente
3. Construir la matriz de paridad H de un código BCH generado por una c-coalición del código, z ⊆ descc (C). Por
binario de longitud M , codimensión M 0 = t log M y las suposiciones anteriores, la probabilidad que z pertenezca
distancia mı́nima t + 1. a otra c-coalición V es (1 − 2−c )n . Por tanto, usando la
4. El producto matricial A = A0 × H genera una (n, M )- desigualdad de Boole, se puede acotar la probabilidad de que
matriz binaria (ε, t)-sesgada. z sea generada por otra coalición del código como
5. La matriz A es también ε0 -cuasi t-independiente, con
ε0 = 2t/2 ε = (z+1)2−t . Por tanto, las filas de A generan p(M, c, z) = M c (1 − 2−c )n .
un conjunto (M, t, z)-universal. El cociente (probabilidad) de descendientes que no son
Empleando la construcción de (n, M 0 )-matrices binarias unı́vocamente c-decodificables en descc (C) es por tanto ≤
ε-sesgadas proporcionada en [17], el conjunto (M, t, z)- p(M, c, z), lo que significa que C es un código ε-cuasi c-SFP.
universal resultante tendrá tamaño

n = 22(3 t/2+log2 t+log2 log2 M −log2 (z+1)) . III-D. Resultados


En la Tabla I se muestran las tasas obtenidas de códigos
III-C. Códigos cuasi SFP
cuasi c-SFP para el caso de coaliciones de tamaños c = 2 y 3.
Se ha visto que un conjunto (M, 2c)-universal de tamaño n En número máximo de configuraciones {0, 1}2c que faltan se
genera un (n, M )-código c-SFP. Consideremos una (n, M )- denota como z, y la probabilidad que un descendiente no sea
matriz binaria A cuyas filas generan un conjunto (M, 2c, z)- unı́vocamente c-decodificable se denota mediante ε. Obsérvese
universal B, y tomemos las columnas de A como las palabras que cuando z < 2 el código es c-SFP, es decir ε = 0. El valor
de un código ε-cuasi c-SFP C, y por tanto tendrá tasa R = de ε dado para una fila corresponde al peor caso. Los valores
log M/n. Para z < 2c el conjunto (M, 2c, z)-universal B es, de tasa que se obtienen son del orden de, aproximadamente, 10
de hecho, un conjunto (M, c)-universal. Para ver esto, nótese veces el valor de la tasa que se obtendrı́a para construcciones
que si un vector de Fc2 no apareciese en una proyección de explı́citas de códigos SFP ordinarios.
c posiciones de B, significarı́a que faltan ≥ 2c vectores de
F2c IV. A PLICACI ÓN A C ÓDIGOS DE FINGERPRINTING
2 en alguna proyección de 2c columnas. Esto contradice la
definición de conjunto (M, 2c, z)-universal con z < 2c . En esta sección se muestra cómo un código binario ε-
Dado un código C construido usando un conjunto cuasi c-SFP se puede utilizar para construir una familia de
(M, 2c, z)-universal, para facilitar el análisis, supondremos códigos de fingerprinting equipados con un algoritmo de
que por cada c-coalición U ⊆ C, cada posible vector de Fc2 decodificación eficiente.
aparece aproximadamente con probabilidad uniforme (ya que Para que un esquema de fingerprinting tenga una pro-
el conjunto (M, 2c, z)-universal ha sido generado a partir de babilidad de error baja, un solo código no es suficiente y
una matriz cuasi independiente). se necesita una familia de códigos {Cj }j∈T , siendo T un
44 J. Moreira, M. Fernández, G. Kabatiansky

conjunto finito. La familia {Cj }j∈T es pública. El distribuidor AGRADECIMIENTOS


elige un código Cj con probabilidad π(j). Esta elección se J. Moreira y M. Fernández han sido financiados por el
mantiene en secreto. Gobierno de España mediante los proyectos CONSOLIDER
En [14, Corolario 1] se proponen condiciones de existencia INGENIO 2010 CSD2007-00004 “ARES” y TEC2011-26491
de una familia de códigos de fingerprinting concatenados, “COPPI”, y por la Generalitat de Catalunya mediante la ayuda
que usan un código cuasi separable como código interno. 2009 SGR-1362.
Obsérvese que el código cuasi separable puede ser sustituido G. Kabatiansky ha sido financiado por la Russian Founda-
por un código cuasi SFP. Combinando este hecho con los tion for Basic Research mediante las ayudas RFBR 13-07-
resultados presentados en este trabajo, obtenemos una cons- 00978 y RFBR 13-01-12458.
trucción explı́cita de un código de fingerprinting.
Corolario 15: Sea Cout ⊆ Fnq un código de Reed-Solomon R EFERENCIAS
extendido de tasa [1] D. R. Stinson, T. van Trung, and R. Wei, “Secure frameproof codes, key
1−σ distribution patterns, group testing algorithms and related structures,” J.
Ro = R(Cout ) < , Stat. Plan. Infer., vol. 86, no. 2, pp. 595–617, May 2000.
c(c + 1) [2] J. N. Staddon, D. R. Stinson, and R. Wei, “Combinatorial properties of
frameproof and traceability codes,” IEEE Trans. Inf. Theory, vol. 47,
y sea Cin un (l, q)-código ε-cuasi c-SFP de tasa Ri = R(Cin ), no. 3, pp. 1042–1049, Mar. 2001.
con ε < σ. Entonces, existe una construcción explı́cita de [3] D. Tonien and R. Safavi-Naini, “Explicit construction of secure frame-
proof codes,” Int. J. Pure Appl. Math., vol. 6, no. 3, pp. 343–360, 2003.
una famı́lia de códigos binarios de fingerprinting {Cj }j∈T con [4] D. R. Stinson and G. M. Zaverucha, “Some improved bounds for secure
código externo Cout y código interno Cin , con un algoritmo frameproof codes and related separating hash families,” IEEE Trans. Inf.
de identificación en tiempo polinómico, tasa R = Ri Ro y Theory, vol. 54, no. 6, pp. 2508–2514, June 2008.
[5] A. D. Friedman, R. L. Graham, and J. D. Ullman, “Universal single
probabilidad de error decreciendo exponencialmente como transition time asynchronous state assignments,” IEEE Trans. Comput.,
1−σ vol. C-18, no. 6, pp. 541–547, June 1969.
pe ≤ 2−n l( c Ri −(c+1)R+o(1)) + 2−nD(σkε) . [6] Y. L. Sagalovich, “Separating systems,” Probl. Inform. Transm., vol. 30,
no. 2, pp. 105–123, 1994.
Por último, vale la pena señalar aquı́ que, como se muestra [7] M. S. Pinsker and Y. L. Sagalovich, “Lower bound on the cardinality
en [12], [14], el uso de códigos ε-cuasi c-SFP en lugar de of code of automata’s states,” Probl. Inform. Transm., vol. 8, no. 3, pp.
59–66, 1972.
códigos SFP ordinarios introduce un término de error adicional [8] Y. L. Sagalovich, “Completely separating systems,” Probl. Inform.
en el proceso de identificación, como se indica en el Coro- Transm., vol. 18, no. 2, pp. 140–146, 1982.
lario 15. Afortunadamente, este término de error disminuye [9] J. Körner and G. Simonyi, “Separating partition systems and locally
different sequences,” SIAM J. Discr. Math. (SIDMA), vol. 1, no. 3, pp.
exponencialmente con la longitud del código exterior. 355–359, Aug. 1988.
[10] G. D. Cohen and H. G. Schaathun, “Asymptotic overview on separating
V. C ONCLUSIONES codes,” Deptartment of Informatics, University of Bergen, Norway, Tech.
Rep. 248, Aug. 2003.
Los códigos cuasi separables y cuasi SFP son dos versiones [11] G. D. Cohen and H. G. Schaathun, “Upper bounds on separating codes,”
menos restrictivas de los códigos separables. En este trabajo, IEEE Trans. Inf. Theory, vol. 50, no. 6, pp. 1291–1294, June 2004.
hemos presentado las primeras construcciones explı́citas de [12] M. Fernández, G. Kabatiansky, and J. Moreira, “Almost separating and
almost secure frameproof codes,” in Proc. IEEE Int. Symp. Inform.
códigos cuasi SFP. Theory (ISIT), Saint Petersburg, Russia, Aug. 2011, pp. 2696–2700.
Nuestro trabajo parte del estudio de la conexión entre [13] A. Barg, G. R. Blakley, and G. Kabatiansky, “Digital fingerprinting
matrices de bajo sesgo y conjuntos universales, y la posterior codes: Problem statements, constructions, identification of traitors,”
IEEE Trans. Inf. Theory, vol. 49, no. 4, pp. 852–865, Apr. 2003.
conexión entre conjuntos universales y códigos separables. [14] J. Moreira, G. Kabatiansky, and M. Fernández, “Lower bounds on
A partir de esta idea, hemos introducido una relajación almost-separating binary codes,” in Proc. IEEE Int. Workshop Inform.
en la definición de conjunto universal. Se demuestra que Forensics, Security (WIFS), Foz do Iguaçu, Brazil, Nov. 2011, pp. 1–6.
[15] J. Bierbrauer and H. Schellwat, “Almost independent and weakly biased
un conjunto cuasi universal se puede utilizar para construir arrays: Efficient constructions and cryptologic applications,” in Proc. Int.
un código cuasi SFP. Esta observación nos ha llevado a las Cryptol. Conf. (CRYPTO), ser. Lecture Notes Comput. Sci. (LNCS), vol.
construcciones explı́citas de códigos cuasi SFP. 1880, Santa Barbara, CA, Aug. 2000, pp. 533–544.
[16] J. Naor and M. Naor, “Small-bias probability spaces: Efficient construc-
También hemos demostrado cómo las construcciones pro- tions and applications,” SIAM J. Comput. (SICOMP), vol. 22, no. 4, pp.
puestas pueden ser usadas para construir de forma explı́cita 838–856, Aug. 1993.
una familia de códigos concatenados de fingerprinting. La [17] N. Alon, O. Goldreich, J. Håstad, and R. Peralta, “Simple constructions
of almost k-wise independent random variables,” Random Struct. Alg.,
construcción presentada se basa en los resultados teóricos de vol. 3, no. 3, pp. 289–304, 1992.
existencia de un trabajo anterior, que presupone la existencia [18] D. Boneh and J. Shaw, “Collusion-secure fingerprinting for digital data,”
de códigos cuasi SFP. Por lo tanto, una de las principales IEEE Trans. Inf. Theory, vol. 44, no. 5, pp. 1897–1905, Sept. 1998.
[19] U. V. Vazirani, “Randomness, adversaries and computation,” Ph.D.
aportaciones de este trabajo ha sido la de proporcionar una dissertation, Dept. Elect. Eng. Comp. Sci., Univ. California, Berkeley,
implementación “verdadera” de de dicha existencia teórica de 1986.
un esquema de fingerprinting. [20] P. Diaconis, Group Representations in Probability and Statistics. Beach-
wood, OH: Inst. Math. Stat., 1988.
Por último, cabe señalar que a pesar de que un conjunto [21] N. Alon, V. Guruswami, T. Kaufman, and M. Sudan, “Guessing secrets
universal genera un código separable, la relación entre un efficiently via list decoding,” ACM Trans. Alg., vol. 3, no. 4, pp. 1–16,
conjunto cuasi universal y un código cuasi separable no es Nov. 2007.
en absoluto evidente y será objeto de investigación futura.
RECSI 2014, Alicante, 2-5 septiembre 2014

Mejorando la seguridad de un criptosistema OPE


mediante la uniformización de los datos
Santi Martı́nez∗ , Daniel Sadornil† , Josep Conde∗ , Magda Valls∗ y Rosana Tomàs∗

Departament de Matemàtica, Universitat de Lleida
Email: {santi,jconde,magda,rosana}@matematica.udl.cat
† Departamento de Matemáticas, Estadı́stica y Computación, Universidad de Cantabria
Email: sadornild@unican.es

Resumen—La cantidad de información almacenada en bases Consideremos una base de datos médica cifrada y su-
de datos crece constantemente. Una base de datos contiene pongamos que queremos saber el número de pacientes en
múltiples registros divididos en varios campos. Algunos de éstos un grupo de edad. Si el criptosistema usado no conserva
pueden contener información sensible, ası́ que es necesario evitar
que se acceda a ellos. Tradicionalmente, para proteger este tipo el orden, esa consulta requerirá que cifremos cada uno de
de información, se hace uso de la criptografı́a, pero la criptografı́a los valores del intervalo de edad y los comparemos con el
convencional tiene el problema de que, para consultas que campo correspondiente, o, alternativamente, que descifremos
necesitan acceder a un campo para todos los registros, se requiere el campo de edad de todos los registros y los comparemos
descifrar el campo entero. con los lı́mites del intervalo. Si el algoritmo de cifrado no es
La criptografı́a ordenable asegura que comparar datos ci-
frados produce el mismo resultado que comparar los datos determinista (o si en lugar de un entero el campo contiene
originales, lo que permite ordenarlos sin descifrarlos. Por tanto, un número real, como el nivel de azúcar en sangre) sólo la
con este sistema se admiten búsquedas y consultas por intervalos segunda alternativa es válida.
en campos cifrados. En cambio, si la base de datos usa OPE, sólo necesitamos
En este artı́culo proponemos un complemento, compatible con
cifrar los extremos del intervalo y comprobar cuantos registros
múltiples criptosistemas ordenables, consistente en transformar
los datos de manera que se oculte su distribución estadı́stica como tienen su campo cifrado de edad entre esos dos valores.
paso previo al cifrado ordenable. En esencia, un esquema OPE es una función estrictamente
Palabras clave—bases de datos (databases), criptografı́a orde- creciente del conjunto de datos en claro al conjunto de
nable (order preserving encryption), criptografı́a simétrica (sym- datos cifrados. Su seguridad recae en que dicha función, aun
metric key cryptography), distribución de probabilidad (probability
distribution), privacidad (privacy), uniformización de datos (data
manteniendo el orden, parezca lo más aleatoria posible [2].
uniformization). Esto asegurará que sólo aquellos con un conocimiento exacto
de como calcularla (lo que está determinado por la clave del
I. I NTRODUCCI ÓN criptosistema) serán capaces de invertirla.
La criptografı́a permite esconder información sensible ante Los esquemas OPE son necesariamente simétricos, puesto
atacantes potenciales. Sin embargo, la información cifrada que el conocimiento de la función de cifrado permite apro-
puede tener diferentes usos que requieran técnicas criptográfi- ximar, hasta cualquier precisión, la función de descifrado.
cas especı́ficas. En particular, este trabajo se centra en la Nótese que, si un atacante con capacidad de cifrar valores
privacidad y/o seguridad en bases de datos. arbitrarios quiere descifrar un valor concreto, podrı́a realizar
La seguridad en bases de datos es esencial para evitar una búsqueda dicotómica de dicho valor, hasta llegar a una
un acceso no autorizado a información sensible. A tı́tulo de aproximación satisfactoria. Ası́, un hipotético OPE asimétrico
ejemplo, en The Toronto Star [1] se explicó como un banco serı́a automáticamente vulnerable a este ataque.
vendió un disco duro en eBay, olvidándose de borrar los datos Los esquemas OPE han sido diseñados para entornos en que
en claro de centenares de clientes. exista la posibilidad de que un intruso pueda acceder a la base
En bases de datos seguras, a veces se necesita permitir cier- de datos cifrada pero que no pueda cifrar ni descifrar valores
tas operaciones, o consultas, que requerirı́an que se descifrasen arbitrarios.
todos los campos necesarios para realizarlas, e.g. obtener los Desde el punto de vista de un atacante, saber que un campo
registros con un campo entre dos valores. concreto ha sido cifrado con un esquema OPE proporciona
La criptografı́a ordenable (OPE, Order Preserving Encry- una fuente útil de información si puede acceder a los datos
ption) permite hacer comparaciones de orden con datos cifra- almacenados. Si conociera los valores en claro de un conjunto
dos, pues garantiza que éstos conservan el orden establecido de valores cifrados, podrı́a crear una aproximación de la
entre datos en claro. Ası́, si un campo está cifrado de esta función de descifrado. Por lo que, si accediera a nuevos valores
manera, las consultas de rango se pueden realizar eficiente- cifrados, podrı́a usarla para aproximar los valores en claro
mente y asegurando que un atacante que tuviera acceso a la correspondientes.
información almacenada en la base de datos no pueda obtener Por ejemplo, un atacante conoce x1 , x2 , y1 , y2 y que y1 =
información de los datos en claro. Enc(x1 ) y y2 = Enc(x2 ); si obtuviera un valor cifrado y, con
46 S. Martı́nez, D. Sadornil, J. Conde, M. Valls, R. Tomàs

y1 < y < y2 , entonces sabrı́a que su descifrado, x, pertenece una muestra de valores de la distribución objetivo. Por tanto,
al intervalo (x1 , x2 ). Además, podrı́a deducir un valor x0 cuya el tiempo de generación de la clave es lineal en el tamaño
proximidad a x dependerı́a de la predictibilidad de la función de la base de datos. Al cifrar, los datos se transforman en una
y la distancia entre los valores que supiera de antemano. distribución uniforme y, desde ésta, en la distribución objetivo.
Por tanto, una función OPE deberı́a minimizar este pro- Para hacer esto, separan los datos en diversas particiones y,
blema asegurando un alto nivel de impredecibilidad siendo dentro de éstas, usan interpolación lineal. Si después de haber
lo más aleatoria posible [2]. Además, es deseable ocultar la generado la clave se añadieran una gran cantidad de datos a
distribución estadı́stica de los datos cifrados. la base de datos, podrı́a ser necesario escoger una nueva clave
En este artı́culo, proponemos la transformación de los datos y volver a cifrar la base de datos.
a cifrar con un esquema OPE de manera que la entrada al crip- En [6], Lee et al. propusieron el esquema COPE (Chaotic
tosistema acabe siendo lo más uniforme posible. Consideramos Order Preserving Encryption). En este esquema, que reparte
un esquema OPE que cifra datos pertenecientes al intervalo los datos en subconjuntos, se altera el orden de los mismos
[0, 1], por lo que, antes de cifrar, convertiremos los datos en función de la clave, por lo que no es un esquema OPE
desde la distribución inicial a una uniforme en [0, 1]. De forma puro. El hecho de que haya que reordenar los subconjuntos
similar, tras el descifrado del esquema OPE, convertiremos el para responder a una consulta afecta negativamente al coste.
valor obtenido, a un valor de la distribución inicial. Boldyreva et al. [2] presentaron una función OPE basada
El resto del artı́culo está estructurado en las siguientes en el uso de un algoritmo de muestreo para la distribución
secciones: La sección II, expone algunas de las propuestas hipergeométrica. Señalan el hecho de que, para funciones
anteriores. En la sección III se propone la forma de escoger OPE con datos en claro y cifrados tomando valores enteros,
la distribución más apropiada para los datos. La sección IV el conjunto de salida es mayor que el de entrada (lo que
explica cómo se complementa un sistema OPE concreto y permite que no haya dos valores en claro a los que corresponda
como afecta la transformación a su eficiencia. Finalmente, las el mismo valor cifrado). Ası́, una función de {1, ..., M } a
conclusiones se dan en la sección V. {1, ..., N }, con M < N , puede ser determinada unı́vocamente
mediante la elección de un subconjunto (de cardinal M ) del
II. T RABAJOS PREVIOS conjunto de salida que contendrá el cifrado de los valores
Durante la última década, debido, en parte, al aumento de del conjunto de entrada. Es más, basándose en las diferentes
la preocupación por la privacidad de los datos preservando el formas de hacer esta elección, proponen un criterio que debe
análisis de los mismos, la criptografı́a ordenable ha experi- cumplir una buena función OPE, recordando que, básicamente,
mentado un gran interés. la función, aun manteniendo el orden, tiene que ser lo más
Bebek, en [3], realizó una primera propuesta donde proponı́a aleatoria posible.
un método para cifrar un entero p añadiendo los p primeros En [7], se propuso un método OPE que cifraba datos
valores de una secuencia pseudo-aleatoria segura de enteros pertenecientes al intervalo real [0, 1]. La función de cifrado
positivos. Sin embargo, el coste de cifrar un valor p de n se obtenı́a como composición de varias funciones básicas y
bits mediante este método es exponencial en n. Además, si el descifrado consistı́a en componer sus inversas en orden
µ es la media de la distribución de la secuencia pseudo- inverso. Cada función básica se definı́a por dos segmentos,
aleatoria, entonces f (x) = µx aproxima la función de cifrado, el primero, desde el origen hasta el punto Pki = (xki , yki ), y
y f −1 (x) = x/µ, la de descifrado. Estas aproximaciones serán el segundo, de Pki al punto (1, 1). La colección de todos los
menos útiles si µ es cercano a 0 y la distribución tiene una Pki constituı́a la clave del criptosistema. Para evitar funciones
desviación grande. de mala calidad, la región donde se escogı́an los puntos de la
En [4], Ozsoyoglu et al. propusieron el uso de polinomios clave estaba acotada.
para el cifrado de enteros. Dichos polinomios no deben tener En [8], se exponen dos metodologı́as para analizar la calidad
ningún extremo en el intervalo al que pertenecen los datos. de una función OPE. La primera de ellas se basa en la
Pero, el hecho de que algunos polinomios no dispongan de una conversión de la función de cifrado en una secuencia que
fórmula explı́cita de su inversa, lleva a los autores a proponer poder analizar como una señal de ruido. La segunda se basa
la composición de varios polinomios fácilmente invertibles, en calcular las diferencias entre la función de cifrado y las
de manera que el descifrado consista en aplicar las inversas aproximaciones que un atacante puede calcular a partir de un
en orden inverso. Para evitar desbordamientos de enteros, pequeño conjunto de puntos conocidos.
deciden controlar los coeficientes y usar logaritmos, lo que Más recientemente, se ha desarrollado un nuevo esquema
requerirá tratar con números en coma flotante y errores de OPE [9], que construye de forma iterativa una serie de puntos
precisión. Esto hace que la elección de la clave sea un proceso por los que pasará la función de cifrado. Inicialmente, la
complejo. Además, descifrar es mucho más difı́cil que cifrar. función es la identidad de [0, 1] a [0, 1]. Ası́, en el primer
Agrawal et al. [5] propusieron la transformación de datos nivel, se considera el rectángulo, cuyos lados son paralelos
que siguieran cierta distribución estadı́stica en datos que a los ejes, y con esquinas en (0, 0) y (1, 1), y se elige un
mantuvieran el orden y siguieran una distribución distinta, punto en la diagonal descendiente. Este punto permite definir
escogida de antemano. Para generar la función de cifrado, dos nuevos rectángulos con un vértice en el nuevo punto y
hacen uso de todos los datos a cifrar disponibles, ası́ como otro en uno de los puntos extremos iniciales. En un segundo
Mejorando la seguridad de un criptosistema OPE mediante la uniformización de los datos 47

nivel, se elige un punto en la diagonal descendiente de cada En función del tipo de soporte hemos considerado las
uno de los dos rectángulos, lo que permite definir cuatro siguientes clases:
rectángulos más pequeños. El proceso se repite hasta obtener Distribuciones con un mı́nimo y un máximo que conoce-
la precisión deseada. Los puntos obtenidos constituyen la clave mos. La distribución de máxima entropı́a para esta clase
del criptosistema. es la distribución uniforme continua.
En este artı́culo, proponemos complementar un sistema OPE Distribuciones con mı́nimo y media conocidos. La dis-
mediante la transformación de los datos a cifrar, de manera tribución de máxima entropı́a para esta clase es la distri-
que oculte mejor la distribución estadı́stica que éstos tuvieran bución exponencial.
inicialmente. El objetivo es que, antes de aplicar la función Distribuciones con media y varianza conocidas. La dis-
OPE, los datos sigan una distribución uniforme en [0, 1]. tribución de máxima entropı́a para esta clase es la distri-
bución normal.
III. M ODELOS DE DISTRIBUCI ÓN DE PROBABILIDAD DE En la tabla I se muestran la CDF y la función cuantil de las
LOS DATOS distribuciones consideradas. Éstas son: la uniforme U(a, b),
Nuestra propuesta consiste en complementar un sistema donde a y b son el mı́nimo y el máximo del soporte; la
OPE mediante la ocultación de la distribución de probabili- exponencial E(λ, θ), donde θ es el mı́nimo, λ = (µ − θ)−1 y
dad de los datos a cifrar. Por tanto, la transformación que µ es la media; y la normal N (µ, σ 2 ), donde µ es la media y
proponemos no pretende servir como método de cifrado en σ 2 la varianza.
sı́ mismo, sino como un preproceso que mejore la seguridad Si tratamos con datos acotados sólo superiormente, cam-
del sistema completo (para que los datos cifrados no conserven biando el signo a cada valor, es posible usar también con
las propiedades de la distribución inicial). ellos la distribución exponencial. Una vez obtenido su valor
Dicha ocultación de la distribución se realizará median- uniformizado, habrá que reflejar el resultado para no invertir
te la función de distribución acumulada (CDF, Cumulative el orden de los datos, i.e. p = 1 − FE(λ,θ) (−x).
Distribution Function). De esta forma, si X es una variable
III-A. Determinación de la distribución
aleatoria continua con CDF FX , entonces la variable aleatoria
P = FX (X) tiene distribución uniforme en [0, 1]. Ası́, para Para poder determinar la distribución que se aproxima
recuperar la distribución original se usará la función cuantil más adecuadamente a los datos a cifrar, necesitamos conocer
−1 información de los mismos. Pues, en función de que estén
FX (inversa de la CDF). En realidad, la transformación no
necesita conocer la distribución real de los datos, pues es o no acotados inferiormente y/o superiormente, usaremos
suficiente utilizar una que tenga el mismo soporte (i.e. que el una distribución u otra. Si no conocemos esa información,
intervalo para el que la función de densidad es no nula coincida pero tenemos una muestra con algunos de los datos a cifrar,
en ambos casos). Esto se debe a que, para una variable X 0 con trataremos de inferir la distribución a partir de éstos.
el mismo soporte que X, la variable P 0 = FX (X 0 ) también De hecho, si no se dispone de ninguna información de los
está distribuida entre 0 y 1, aunque ya no siga una distribución datos a cifrar y ni siquiera tenemos una muestra que analizar,
uniforme. Evidentemente, si conocemos la distribución de los la opción más sensata es utilizar una distribución normal
datos a cifrar, lo ideal es utilizar la CDF y la cuantil de dicha N (0, 1). Con ello nos aseguramos que cualquier valor que
distribución, pues es lo que dará mejor resultado. nos encontremos se transforme en un valor entre 0 y 1.
Dependiendo del rango de valores que puedan tener los da- En lo sucesivo, se asume que disponemos únicamente de
tos a cifrar consideramos tres grandes familias de distribucio- una muestra S con n valores (x1 , x2 , . . . xn ) de los datos a
nes: con soporte finito, soporte infinito acotado inferiormente cifrar (donde puede haber valores repetidos). Con esta muestra,
(o superiormente), y soporte infinito no acotado. Dentro de deberemos determinar cual de las distribuciones consideradas
cada familia escogemos una distribución que, asumiendo un es la más adecuada.
mı́nimo de información adicional, maximice la entropı́a. En esta sección proponemos un método sencillo, basado
Según el principio de máxima entropı́a, la distribución de en la cantidad de datos que hay en tres subintervalos iguales
probabilidad que mejor representa a una variable aleatoria es entre el mı́nimo y el máximo. Existen métodos alternativos,
aquella en que, dadas unas ciertas condiciones, la desinfor- desde dividir el rango en una cantidad mayor de subintervalos
mación es máxima. Ası́, una distribución de máxima entropı́a (y proceder de manera similar), hasta estimar primero los
es aquella en que su entropı́a es al menos tan grande como parámetros de las distribuciones y luego hacer una prueba χ2
la de cualquier otra distribución de su clase (donde una clase de Pearson [10] para ver cuál se ajusta mejor.
es el conjunto de distribuciones que cumplen una serie de Para el método de los tres subintervalos, primero buscamos
restricciones). Por tanto, si de una distribución sólo se conocen el mı́nimo, m, y el máximo, M , de la muestra que tenemos.
unos pocos parámetros, la distribución a escoger es la que Ambos valores existirán siempre, incluso aunque la distribu-
tenga máxima entropı́a para esos parámetros, lo que asegura ción no esté acotada, ya que S es finito. A continuación,
que la distribución asume el mı́nimo de información adicional. partimos el intervalo [m, M ] en tres partes iguales, mediante
Además, muchos sistemas tienden a seguir distribuciones de los valores l1 = m + 31 (M − m) y l2 = m + 32 (M − m) y
este tipo de manera natural. contamos cuantos datos hay en cada uno de los subintervalos:
48 S. Martı́nez, D. Sadornil, J. Conde, M. Valls, R. Tomàs

Tabla I
F UNCIONES DE DISTRIBUCI ÓN ACUMULADA Y CUANTIL

Distribución CDF Cuantil



0
 para x < a
x−a
U (a, b) p= b−a
para a ≤ x < b x = a + p(b − a) para 0 ≤ p ≤ 1

1 para x ≥ b
( (
ln(1−p)
0 para x < θ θ− para 0 ≤ p < 1
E(λ, θ) p= x= λ
1 − e−λ(x−θ) para x ≥ θ +∞ para p = 1

h  i −∞ √
 para p = 0
1 x−µ
N (µ, σ 2 ) p= 2
1 + erf √ x = µ + 2σ 2 erf −1 (2p − 1) para 0 < p < 1
2σ 2 
+∞ para p = 1

c1 = #{x ∈ S|x < l1 }, c2 = #{x ∈ S|l1 ≤ x ≤ l2 }, Notemos que todo valor menor o igual que â (la estimación
c3 = #{x ∈ S|x > l2 }. de a) será interpretado como â y todo valor mayor o igual
Nótese que, si la distribución sólo está acotada inferior- que b̂ será interpretado como b̂, por tanto, si el estimador de a
mente, el máximo (cuando n crezca) tenderá a infinito, por tiene sesgo, es preferible que sea hacia la izquierda, i.e. â ≤ a.
lo que es razonable suponer que los datos se acumularán en De la misma manera, es preferible que b̂ ≥ b.
el primer subintervalo (o en el tercero, si está acotada sólo Para determinar los valores â y b̂ partiremos de los estima-
−m −m
superiormente). Asimismo, si la distribución no está acotada, dores UMVUE, que son â0 = m − Mn−1 y b̂0 = M + Mn−1 .
podemos asumir que los datos tenderán a acumularse en el Estos estimadores son insesgados, pero puede suceder que â0
segundo subintervalo. En cambio, si el soporte de la distribu- sea mayor que a o b̂0 sea menor que b, por lo que les aplica-
ción es finito, no se espera que los datos tiendan a acumularse remos unas correcciones para disminuir dicha posibilidad.
tanto en ningún subintervalo. En primer lugar, la media µ de la distribución deberı́a
Por tanto, si en el primer subintervalo hay tantos datos como coincidir con el valorPn medio de a y b. Por tanto, si la media
en los otros dos juntos (c1 ≥ c2 + c3 ) usaremos la CDF de muestral x̄ = n1 i=1 xi no coincide con µ0 = 12 (â0 + b̂0 ),
la exponencial, p = FE(λ,θ) (x), si es el central el que tiene modificaremos uno de los dos parámetros para forzar la
tantos como los otros dos (c2 ≥ c1 + c3 ) usaremos la CDF de coincidencia. Si x̄ < µ0 , disminuiremos el estimador de a:
la normal, p = FN (µ,σ2 ) (x), y, si es el tercero (c3 ≥ c1 + c2 ) â00 = 2x̄ − b̂0 , manteniendo b̂00 = b̂0 . Si x̄ > µ0 , aumentaremos
usaremos también la exponencial con los cambios necesarios el estimador de b: b̂00 = 2x̄ − â0 , manteniendo â00 = â0 .
(p = 1 − FE(λ,θ) (−x)). Finalmente, si ningún subintervalo En segundo lugar, la varianza σ 2 de la distribución deberı́a
1
domina a los otros dos, usaremos la CDF de la uniforme, coincidir con 12 (b − a)2 . Si la varianza muestral s2 =
2 00
Pn
p = FU (a,b) (x). n−1
1 2
i=1 (xi − x̄) es mayor que σ = 12 1
(b̂00 − â00 )2 ,
Una vez escogida la distribución más adecuada para modelar modificaremos ambos parámetros para forzar que coincidan.
los datos, deberemos estimar sus parámetros, lo que será di- Para ello, ampliaremos el soporte en ambas direcciones de
ferente en cada caso particular. manera que no se altere el punto medio √ del intervalo, ası́,
â = â00 − δ y b̂ = b̂00 + δ, donde δ = s 3 − 12 (b̂00 − â00 ). Nótese
III-B. Estimación de los parámetros 00
que, si s2 < σ 2 no haremos esta última modificación, pues
En esta sección proponemos los métodos de estimación de nos obligarı́a a reducir el soporte (lo que no es deseable), en
los parámetros de cada una de las distribuciones consideradas. tal caso, los estimadores serı́an â = â00 y b̂ = b̂00 .
Tal como se ha indicado para la determinación de la dis- III-B2. Distribución exponencial: Para determinar la dis-
tribución, si conocemos los valores exactos de los parámetros tribución exponencial adecuada se requiere el valor de los
que queremos estimar, los usaremos directamente. Si no es parámetros λ y θ.
el caso, podemos utilizar la muestra para tratar de hacer una Para λ nos basaremos en que su valor es el inverso de la
estimación. desviación estándar σ, i.e. λ = σ −1 . Por ello, usaremos
Pn un es-
1
De entre los diversos tipos de estimadores se ha optado timador UMVUE de este parámetro σ̂ = n−1 i=1 (x i − m)
por utilizar estimadores insesgados [11], [12] de mı́nima −1
y luego lo invertiremos, λ̂ = σ̂ . Como este parámetro
varianza (UMVUE, Uniformly Minimum-Variance Unbiased no afecta al soporte de la distribución no haremos ninguna
Estimator). Sin embargo, para los parámetros que afectan al corrección adicional.
soporte de la distribución se ha optado por realizar algunos Para el parámetro θ, que corresponde a la cota inferior del
ajustes que disminuyan la posibilidad de encontrarnos con soporte, es deseable que θ̂ ≤ θ, pues todo valor menor o
valores fuera de rango. igual que θ̂ será interpretado como θ̂. Por ello, escogeremos
A continuación exponemos los estimadores que se han el menor de dos estimadores, el primero de ellos el UMVUE,
usado para las distinta distribuciones. que es θ̂0 = m− σ̂/n, y el segundo θ̂00 = x̄− σ̂ (que se basa en
III-B1. Distribución uniforme: Ésta requiere dos paráme- que la media µ de la distribución deberı́a coincidir con θ + σ).
tros a y b que son los valores extremos del soporte. Ası́, θ̂ = mı́n(θ̂0 , θ̂00 ).
Mejorando la seguridad de un criptosistema OPE mediante la uniformización de los datos 49

III-B3. Distribución normal: Esta distribución requiere los coste temporal es logarı́tmico en el tamaño de la lista, o, lo
parámetros µ, la media, y σ 2 , la varianza. que es lo mismo, lineal en l.
Ninguno de los dos parámetros afecta al soporte de la dis- La tabla II muestra los resultados para el criptosistema
tribución, pues éste es infinito no acotado, por tanto, podemos DOPE básico (sin cambio de distribución) y usando cada
utilizar los estimadores UMVUE en ambos casos. una de las tres distribuciones contempladas. Se ha usado un
Ası́, para µ usaremos la media muestral: µ̂ = x̄ = ordenador portátil con 2,4 GHz de CPU, 4 GB de RAM y el
1
P n 2
n i=1 xi . Y, para σ , la varianza P muestral aplicando la sistema operativo Debian GNU/Linux.
corrección de Bessel: σˆ2 = s2 = n−1 1 n 2
i=1 (xi − x̄) .
Se han realizado pruebas con un nivel de seguridad 14 <
Nótese que la corrección de Bessel se necesita porque para l < 19, generando diez claves para cada valor de l. Con cada
el cálculo de la varianza muestral usamos la media muestral una de las claves se han cifrado y descifrado un millón de
x̄. De hecho, si conociéramos la media poblacional µ (pero no valores sin cambio de distribución, otro millón en el que los
la varianza), calcuları́amos la varianza muestral usando µ (en datos a cifrar seguı́an una distribución uniforme U, otro más
vez de x̄), enPcuyo caso no usarı́amos la corrección de Bessel, en que seguı́an una exponencial E y, finalmente, un millón
i.e. σˆ2 = n1 i=1 (xi − µ)2 .
n más de datos que seguı́an una normal N .
En la tabla II, las columnas T. cif. y T. des. indican el
IV. C OMPLEMENTANDO UN CRIPTOSISTEMA CONCRETO tiempo necesario para cifrar o descifrar un valor sin realizar
El complemento propuesto en este artı́culo puede adaptarse ningún cambio de distribución. Las columnas T. cif. U, E y
a múltiples esquemas OPE. Con el fin de evaluar el sobrecoste N muestran el tiempo necesario para cifrar un valor que siga
que conlleva en el tiempo de cifrado y descifrado hemos una de esas tres distribuciones, por lo que antes de usar la
decidido adaptarlo al criptosistema DOPE (Diagonal-based función de cifrado del esquema DOPE se debe uniformizar
Order Preserving Encryption) [9] y realizar una serie de el valor mediante la CDF de la distribución. Las columnas T.
experimentos cuyos resultados mostramos en la tabla II. des. U, E y N muestran el tiempo necesario para descifrar un
El esquema DOPE cifra datos en [0, 1], por lo que la valor y luego convertirlo a su distribución original mediante
adaptación es inmediata. Antes de cifrar, convertiremos los la función cuantil de la distribución.
datos iniciales utilizando la función CDF de la distribución Podemos observar que el sobrecoste que conlleva cifrar
escogida mediante los criterios de la sección III. El resultado, o descifrar datos que siguen una distribución uniforme es
que es un valor entre 0 y 1, se cifra mediante el esquema de unos 10 ns y que éste es ligeramente mayor en el caso
DOPE. Similarmente, después de descifrar, el valor obtenido del descifrado. Si los datos siguen una exponencial, ambos
se convierte a la distribución original mediante la función sobrecostes son inferiores a 100 ns, siendo el del cifrado
cuantil de la distribución correspondiente (ver tabla I). mayor que el del descifrado. Finalmente, en el caso de la
Para la implementación se ha utilizado el criptosistema normal, el sobrecoste al cifrado también es inferior a los 100
DOPE con pequeñas variaciones de seguridad y formato en ns (incluso menor que el sobrecoste de la exponencial), pero
los datos. Estos cambios han hecho que los tiempos de cifrado para el descifrado, la implementación de la función cuantil ha
y descifrado sean mayores que los presentados en el artı́culo causado un sobrecoste de más de 800 ns (y difı́cilmente podrı́a
original. ser mucho menor sin reducir la precisión).
Como se vio en las fórmulas de la tabla I, la conversión Como es lógico, el sobrecoste debido al cambio de distri-
para la distribución uniforme es trivial. En el caso de la bución es independiente del nivel de seguridad del esquema
distribución exponencial, antes de cifrar habrá que calcular DOPE (y, por tanto, del tamaño de la clave), pues conlleva
una exponenciación y, después de descifrar, un logaritmo. un proceso previo al cifrado o posterior al descifrado. Esto
Asimismo, antes de cifrar un dato que siga una distribución implica que, si se complementa cualquier otro criptosistema
normal habrá que calcular la función error complementaria OPE, se deberı́an obtener sobrecostes similares.
erfc (pues la conversión es más rápida con ésta que con otras
implementaciones de la CDF). Para cada una de estas tres V. C ONCLUSI ÓN
funciones, se ha usado la implementación de la biblioteca En este artı́culo se ha propuesto un método de uniformiza-
estándar de C para valores de tipo long double. La función ción de datos como paso previo a la función de cifrado de un
cuantil de la normal se ha implementado mediante el método criptosistema ordenable. La finalidad de esta transformación
de Newton-Raphson [13], por lo que consta de un bucle en es ocultar la distribución de probabilidad que siguen los datos
el que, en cada iteración, se calculan la CDF (que, a su vez, en claro. Antes de cifrar datos que sigan una distribución
calcula la función erfc) y la función de densidad (que requiere conocida usaremos su función de distribución acumulada para
una exponenciación). Se ha escogido este método por ser de convertirlos a una distribución uniforme en [0, 1], y similar-
convergencia cuadrática. mente, después de descifrar usaremos la función cuantil para
Fijado un nivel de seguridad l, la clave del criptosistema recuperar la distribución original.
DOPE es una lista de 2l puntos (por los que pasa la función de También se ha propuesto un método para asignar una
cifrado). El cifrado (y el descifrado) requieren una búsqueda distribución de probabilidad a datos cuya distribución real
dicotómica para localizar la posición del valor a cifrar (o a no sea conocida. Se han considerado tres posibles casos:
descifrar) en la lista de abscisas (u ordenadas), por lo que su si los datos aparentan estar acotados en ambas direcciones,
50 S. Martı́nez, D. Sadornil, J. Conde, M. Valls, R. Tomàs

Tabla II
R ESULTADOS DE LA EXPERIMENTACI ÓN

l T. cif. T. des. T. cif. U T. des. U T. cif. E T. des. E T. cif. N T. des. N


14 122,4 ns 122,7 ns 137,7 ns 135,1 ns 214,2 ns 195,6 ns 204,3 ns 976,2 ns
15 133,2 ns 136,2 ns 147,5 ns 148,9 ns 222,1 ns 207,0 ns 212,4 ns 1003,1 ns
16 195,1 ns 194,7 ns 204,4 ns 205,9 ns 285,2 ns 260,9 ns 265,9 ns 1074,3 ns
17 215,9 ns 212,7 ns 221,1 ns 223,3 ns 303,9 ns 285,1 ns 282,9 ns 1084,5 ns
18 236,9 ns 236,6 ns 244,5 ns 249,9 ns 326,1 ns 301,6 ns 307,1 ns 1122,9 ns
19 253,3 ns 253,4 ns 262,3 ns 275,0 ns 349,5 ns 328,7 ns 327,7 ns 1147,9 ns

se tratarán como si siguieran una distribución uniforme; si [3] G. Bebek, “Anti-tamper database research: Inference control techni-
aparentan estar acotados sólo por un lado, se tratarán como si ques,” Case Western Reserve University, Technical Report EECS 433,
2002, Final Report.
siguieran una exponencial (si la cota es superior requerirá una
[4] G. Ozsoyoglu, D. A. Singer, and S. S. Chung, “Anti-Tamper Databases:
pequeña modificación); y, si aparentan no estar acotados, se Querying Encrypted Databases,” in 17th Annual IFIP WG 11.3 Working
tratarán como si siguieran una distribución normal. Conference on Database and Applications Security, 2003.
Se han escogido estas distribuciones porque con ellas se [5] R. Agrawal, J. Kiernan, R. Srikant, and Y. Xu, “Order Preserving Encry-
pueden tratar datos definidos sobre cualquier tipo de intervalo, ption for Numeric Data,” in ACM SIGMOD international conference on
Management of data, 2004, pp. 563–574.
sea o no infinito. Además de eso, la uniforme es la distribución
[6] S. Lee, T.-J. Park, D. Lee, T. Nam, and S. Kim, “Chaotic Order
de máxima entropı́a de entre todas las que tienen soporte finito, Preserving Encryption for Efficient and Secure Queries on Databases,”
la exponencial lo es entre todas las que tienen al menos una IEICE Transactions on Information and Systems, vol. E92-D, no. 11,
cota y tienen la misma media y la normal es la distribución de pp. 2207–2217, 2009.
máxima entropı́a de entre todas las que tienen misma media [7] S. Martı́nez, V. Mateu, R. Tomàs, and M. Valls, “Criptografı́a ordenable
para bases de datos,” in XII Reunión Española sobre Criptologı́a y Segu-
y varianza. ridad de la Información (RECSI), U. Zurutuza, R. Uribeetxeberria, and
La elección de la distribución y la estimación de sus I. Arenaza-Nuño, Eds. Donostia–San Sebastián, España: Mondragon
parámetros se han realizado con el objetivo de disminuir la Unibertsitatea, September 2012, pp. 35–40, ISBN 978-84-615-9933-2.
[8] S. Martı́nez, J. M. Miret, R. Tomàs, and M. Valls, “Security Analysis
posibilidad de encontrarnos con valores fuera de su soporte. of Order Preserving Symmetric Cryptography,” Applied Mathematics &
Nótese que, si el error supone asignar una distribución con Information Sciences (AMIS), vol. 7, no. 4, pp. 1285–1295, July 2013,
soporte infinito a unos datos acotados o realizar una estimación ISSN 1935-0090.
de un máximo superior al real, dicho error, aunque no es [9] S. Martı́nez, J. M. Miret, R. Tomàs, and M. Valls, “Securing Databases
by using Diagonal-based Order Preserving Symmetric Encryption,”
deseable, no causará problemas. Applied Mathematics & Information Sciences (AMIS), vol. 8, no. 5, pp.
Los métodos propuestos se han implementado y se ha com- 2085–2094, September 2014, ISSN 1935-0090.
probado qué sobrecoste representan en el tiempo de cifrado y [10] K. Pearson, “On the criterion that a given system of deviations from the
descifrado de un criptosistema OPE. probable in the case of a correlated system of variables is such that it
can be reasonably supposed to have arisen from random sampling,” The
AGRADECIMIENTOS London, Edinburgh, and Dublin Philosophical Magazine and Journal of
Science, vol. 50, no. 302, pp. 157–175, 1900.
Este trabajo ha sido financiado parcialmente por los pro- [11] V. G. Voinov and M. S. Nikulin, Unbiased Estimators and Their Appli-
yectos MTM2010-21580-C02-01/02 y MTM2010-16051 del cations, ser. Mathematics and Its Applications. Dordrecht, Netherlands:
Gobierno de España y SGR2014-1666 de la Generalitat de Kluwer Academic Publishers, 1993, vol. 1: Univariate Case.
Catalunya. [12] K. Lam, B. K. Sinha, and Z. Wu, “Estimation of parameters in a two-
parameter exponential distribution using ranked set sample,” Annals of
R EFERENCIAS the Institute of Statistical Mathematics, vol. 46, no. 4, pp. 723–736,
[1] T. Hamilton, “Error sends bank files to eBay,” The Toronto Star, 1994.
September 15, 2003. [13] J. Raphson, Analysis Aequationum Universalis seu Ad Aequationes
[2] A. Boldyreva, N. Chenette, Y. Lee, and A. O’neill, “Order-Preserving Algebraicas Resolvendas Methodus Generalis, & Expedita, Ex nova
Symmetric Encryption,” Advances in Cryptology - EUROCRYPT 2009, Infinitarum Serierum Methodo, Deducta ac Demonstrata. London: Th.
vol. LNCS, no. 5479, pp. 224–241, 2009, ISSN 0302-9743. Braddyll, 1690.
RECSI 2014, Alicante, 2-5 septiembre 2014

Análisis e Implementación del Generador SNOW


3G Utilizado en las Comunicaciones 4G
J. Molina-Gil, P. Caballero-Gil A. Fúster-Sabater
Departamento de Informática Instituto de Fı́sica Aplicada.
Universidad de La Laguna Consejo Superior de Investigaciones Cientı́ficas
Email: jmmolina@ull.edu.es, pcaballe@ull.edu.es Email: amparo@iec.csic.es

Resumen—La cuarta generación de telefonı́a móvil, comercia- El objetivo de este trabajo es realizar un análisis del gene-
lizada como tecnologı́a 4G, y conocida como LTE (Long Term rador SNOW 3G, que constituye el núcleo tanto del algoritmo
Evolution) o su versión mejorada LTE-A (LTE-Advanced), se de confidencialidad UEA2 en LTE (EEA1 en LTE-A), como
está implantando con rapidez por todo el mundo. Teniendo en
cuenta su carácter inalámbrico y móvil, la seguridad de estas del de integridad UIA2 en LTE (EIA1 en LTE-A), [1]. Este
comunicaciones resulta crucial. En este trabajo se presenta un generador proporciona una gran velocidad en la generación de
estudio teórico y un análisis práctico del generador SNOW 3G, datos, lo que lo hace en general muy apropiado para su uso
que constituye el núcleo de la integridad y la confidencialidad de en dispositivos con recursos limitados.
las comunicaciones 4G. El objetivo es evaluar la implementación El contenido de este trabajo se organiza del siguiente
y funcionamiento de este generador en dispositivos móviles con el
fin de proponer mejoras, principalmente en cuanto a eficiencia. modo. En la Sección II se incluye un resumen de trabajos
Palabras clave—Criptografı́a de clave secreta (Secret key cry- relacionados con la temática. Los principales conceptos y
ptography), Generador pseudoaleatorio (Pseudorandom generator), notaciones utilizados se introducen en la Sección III. La
Cifrado en flujo (Stream cipher), SNOW 3G, 4G, LTE, LTE-A. Sección IV presenta algunos detalles de la implementación
llevada acabo en la plataforma iOS, ası́ como una evaluación
I. I NTRODUCCI ÓN de su rendimiento. Finalmente, la Sección V cierra este estudio
El aumento en el consumo de datos móviles, y la apari- con algunas conclusiones y trabajos futuros.
ción de numerosas aplicaciones y servicios de banda ancha
son, junto a debilidades detectadas en la seguridad de las II. E STADO DEL A RTE
comunicaciones, los principales motivos que han conducido Los predecesores del SNOW 3G fueron el SNOW 1.0 [2] y
a la progresiva sustitución de la tecnologı́a 3G o UMTS por el SNOW 2.0 [3]. La versión original, SNOW 1.0, fue presen-
la nueva tecnologı́a 4G, conocida como LTE o LTE-A. El tada al proyecto NESSIE, pero pronto se detectaron algunas
completo despliegue de las redes LTE comerciales en España debilidades y se lanzaron diversos ataques. Uno de ellos [4],
es inminente, encontrándose actualmente en funcionamiento con complejidad computacional de O(2224 ), se basó en la
solo en algunas grandes ciudades. En cuanto a otros paı́ses, posibilidad de recuperar la clave con solo conocer una salida
ya se ha implantado la tecnologı́a 4G en: cuatro paı́ses de del generador de longitud 295 . Otro criptoanálisis con similar
África, once de América, diecinueve de Asia, veintinueve de complejidad computacional fue el ataque por diferenciación
Europa, y dos de Oceanı́a. (distinguishing attack) [5], que también requerı́a de una salida
En general, la evolución de cualquier sistema de telecomu- de tamaño 295 .
nicaciones suele implicar la mejora de sus caracterı́sticas de Estos y otros ataques demostraron la existencia de algunas
seguridad gracias al aprendizaje a partir de las debilidades y debilidades en el diseño del generador SNOW 1.0, por lo que
los ataques sufridos por sus predecesores. Concretamente, la surgió una nueva versión, más segura, denominada SNOW 2.0.
evolución de los sistemas de cifrado utilizados para proteger Este es hoy en dı́a uno de los dos cifrados en flujo elegidos
la confidencialidad en telefonı́a móvil se puede resumir de la para el estándar ISO/IEC IS 18033-4 [6]. Este generador
forma siguiente. En primer lugar, el cifrado en flujo A5/1 y su se basa en unos principios de diseño similares a los del
versión A5/2 fueron utilizados en el estándar de telefonı́a 2G cifrado en bloque SOSEMANUK, que es uno de los cuatro
o GSM. En ambos cifrados se detectaron serias debilidades, cifrados finalistas dentro del perfil software seleccionados para
razón por la cual el sistema de cifrado en bloque conocido el eSTREAM Portfolio [7].
como Kasumi los sustituyó en la tecnologı́a 3G o UMTS. Posteriormente, durante su evaluación por el European
En 2010, el cifrado Kasumi fue atacado y roto con recursos Telecommunications Standards Institute (ETSI), el diseño del
computacionales muy modestos y en consecuencia, el sistema SNOW 2.0 fue modificado para aumentar su resistencia a
de cifrado tuvo que ser modificado de nuevo para la tecnologı́a ataque algebraicos [8] de forma que dicha modificación dio
del nuevo estándar 4G o LTE, de manera que fue el cifrado lugar al SNOW 3G. El ETSI publicó un informe técnico acerca
en flujo SNOW 3G el que se propuso para la protección de la de su diseño [9], pero hasta el momento no se ha hecho pública
confidencialidad e integridad de las comunicaciones. ninguna evaluación completa del diseño del SNOW 3G.
52 J. Molina-Gil, P. Caballero-Gil, A. Fúster-Sabater

En las publicaciones existentes, el SNOW 3G se ha revelado


como un generador con una gran resistencia a ataques por
diferenciación lineal [10] [11], pero débil frente a otro tipos
de ataques. Uno de los primeros y más sencillos intentos de
criptoanálisis fue el ataque propuesto en [12]. Otro ataque
[13], basado en la sincronización de la caché y en datos
de tiempo empı́ricos, permitió recuperar el estado inicial en
cuestión de segundos y sin necesidad de conocer ningún bit.
Este tipo de ataque se basa en el hecho de que operaciones
como las permutaciones y multiplicaciones por la constante α
y su inversa, son implementadas realmente utilizando tablas de
búsqueda. El trabajo presentado en [14] describe un estudio del
mecanismo de resincronización del SNOW 3G usando ataques
por colisión, con una complejidad de O(28 ). Finalmente, el Figura 1. Generador SNOW 3G
generador SNOW 3G ha sido sujeto de otros estudios de
complejidad, tales como las publicaciones [15] y [16]. En este La figura 1 muestra la estructura del generador SNOW
trabajo se proporciona un nuevo estudio, enfocado hacia los 3G. Como puede verse, consta de dos partes principales: un
aspectos más prácticos de su implementación. LFSR y una máquina de estados finitos o FSM (Finite State
Machine).
III. D ESCRIPCI ÓN T E ÓRICA DEL G ENERADOR S NOW 3G
El LFSR consta de 16 estados s0 , s1 , s2 , ..., s15 , de for-
Los cifrados en flujo están basados en generadores pseudo- ma que cada uno de ellos contiene 32 bits. La función de
aleatorios cuyos bits de salida son operados con los bits del realimentación se define mediante un polinomio primitivo
texto en claro mediante una XOR, para generar bit a bit el definido sobre un cuerpo extendido GF (232 ), e implica dos
texto cifrado. Su principal ventaja es que en general permiten multiplicaciones, una por una constante α ∈ GF (232 ) y otra
obtener el texto cifrado a una gran velocidad, lo que los hacen por la inversa de α. A continuación se muestra la expresión
especialmente apropiados para comunicaciones que requieran de dicha realimentación:
eficiencia, y para dispositivos con recursos limitados, como
por ejemplo los teléfonos móviles ya que la comunicación st+16 = αst ⊕ st+2 ⊕ α−1 st+11 , ∀t ≥ 0 (1)
debe ser inmediata y disponen de una baterı́a limitada.
La FSM constituye la parte no lineal del generador y se
El generador en flujo analizado en este trabajo tiene un
alimenta de dos valores de entrada procedentes del LFSR
estructura tı́pica de generador no lineal basado en un registro
correspondientes a los estados s5 y s15 . La FSM está formada
de desplazamiento con realimentación lineal o LFSR (Linear
por tres registros de 32 bits, R1, R2 y R3, y dos cajas de
Feedback Shift Register).
sustitución o S-boxes, S1 y S2, que se utilizan para actualizar
Los siguientes términos y notación se utilizan en este
los registros R2 y R3. Las dos S-Boxes S1 y S2 mapean los
documento para describir la estructura e implementación del
32 bits de entrada a 32 bits de salida mediante la aplicación
generador SNOW 3G:
de varias combinaciones de una S-box básica sobre cada
GF (2) = {0, 1} Cuerpo de Galois con dos elementos, 0 y
uno de los 4 bytes de entrada. La estructura de la caja S1
1.
se basa en la S-box utilizada en el cifrado estándar AES
GF (2)[x] Anillo de polinomios en una indeterminada x,
(Advanced Encryption Standard), mientras que la S-box S2
con coeficientes en GF (2).
fue especialmente diseñada para el SNOW 3G. Por último
p(x) Polinomio primitivo en GF (2)[x]. están las operaciones de mezcla que se utilizan en la FSM,
d Grado de un polinomio p(x). donde se realiza una XOR bit a bit, y una suma de enteros
GF (2d ) Cuerpo extendido de GF (2), definido por un módulo 232 .
polinomio p(x) de grado d, y con 2d elementos. El LFSR base del generador SNOW 3G puede usarse en
GF (2d )[x] Anillo de polinomios en una indeterminada x dos modos de operación diferentes: de inicialización y de
con coeficientes en GF (2d ). generación de secuencia cifrante. Por una parte, cuando opera
β ∈ GF (28 ) Raı́z del polinomio x8 + x7 + x5 + x3 + 1 en modo de inicialización, el generador se desplaza en cada
perteneciente a GF (2)[x]. pulso de reloj sin producir ninguna salida. Por otra parte, en
α ∈ GF (232 ) Raı́z del polinomio x4 + β 23 x3 + β 245 x2 + modo de generación, tras cada pulso de reloj el generador
β x + β 239 perteneciente a GF (28 )[x].
48
se desplaza y produce una salida de una palabra de 32 bits.
st estado de 32-bits perteneciente a un LFSR. De hecho, se puede decir que el SNOW 3G es un generador
= Operador de asignación. orientado a palabras ya que produce una secuencia de salida
⊕ Operación XOR bit a bit. de 32 en 32 bits, bajo el control de una clave de 128 bits y
 Suma de enteros módulo 232 . un vector de inicialización o IV (Initialization Vector) de 128
|| Concatenación de dos operandos. bits.
Análisis e Implementación del Generador SNOW 3G Utilizado en las Comunicaciones 4G 53

Con respecto a la implementación del SNOW 3G, que es Tabla I


el principal objeto de estudio de este trabajo, se pueden hacer D ISPOSITIVO UTILIZADO PARA LA EVALUACI ÓN
varias observaciones. iPhone 3GS
En primer lugar, las dos multiplicaciones implicadas en el Arquitectura Frecuencia CPU Cache L1I/L1D/L2 RAM
LFSR pueden ser implementadas como desplazamientos de Armv7-A 600 MHz 16Kb/16Kb/256Kb 256MB
bytes con una XOR con alguno de los 28 patrones posibles,
tal como se muestra a continuación. Dado que β es la raı́z
del polinomio primitivo x8 + x7 + x5 + x3 + 1, el cuerpo Ası́, la salida resultante del producto es el resto (c0 β 16 )x3 +
extendido GF (28 ) puede ser generado a partir de sucesivas po- (c3 + c0 β 39 )x2 + (c2 + c0 β 6 )x + (c1 + c0 β 64 ), o lo que es lo
8
tencias de β. Por tanto, el conjunto {0, 1, β, β 2 , β 3 , ..., β 2 −2 } mismo, la palabra de 4 bytes (c0 β 16 , c3 +c0 β 39 , c2 +c0 β 6 , c1 +
representa todo el cuerpo extendido GF (28 ). De ahı́ tenemos c0 β 64 ). En conclusión, una rápida implementación binaria de
que cualquier elemento de GF (28 ) puede ser representado esta operación puede estar basada en tablas precalculadas de
también mediante un polinomio en GF (2)[x] de grado menor los valores (cβ 16 , cβ 39 , cβ 6 , cβ 64 ), ∀c ∈ GF (28 ).
que 8, o bien con un byte cuyos bits se corresponden con los
coeficientes de dicho polinomio. De esa manera, las operacio- IV. I MPLEMENTACI ÓN EN I OS Y E VALUACI ÓN
nes en GF (28 ) se corresponden con operaciones módulo el Esta sección recoge un estudio y comparación de diferentes
polinomio x8 +x7 +x5 +x3 +1. Esto significa que en particular, implementaciones software con el fin de concluir cuál es la
la multiplicación de dos elementos en GF (28 ) resulta de la implementación óptima en dispositivos con recursos limitados,
multiplicación de los dos polinomios correspondientes, poste- como son los teléfonos móviles. Se ha analizado la imple-
riormente dividida por el polinomio x8 + x7 + x5 + x3 + 1 de mentación del SNOW 3G en plataformas móviles, en concreto
manera que el resto es la salida resultante. La implementación para la plataforma iOS, siendo Objective C el lenguaje de pro-
de esta operación como una multiplicación binaria se describe gramación utilizado. En particular, se han realizado diversos
a continuación. Teniendo en cuenta los dos bytes a multiplicar, estudios en un iPhone 3GS, cuyas caracterı́sticas principales
para cada bit igual a uno en uno de los multiplicandos, se se presentan en la Tabla I.
realizan varios desplazamientos a izquierda en el otro byte a El primer aspecto a tener en cuenta es que los LFSRs
multiplicar. Además, cada vez que el bit más a la izquierda han sido tradicionalmente diseñados para operar sobre el
del byte original antes del desplazamiento es 1, se realiza cuerpo de Galois GF (2), lo que es muy apropiado para
una XOR bit a bit con A916 = 101010012 , que es el byte implementaciones hardware. Sin embargo, cuando se trata de
correspondiente al polinomio x8 +x7 +x5 +x3 +1. El número implementaciones software, los LFSRs en los que cada etapa
de desplazamientos a izquierda a realizar viene dado por la contiene un solo bit tienen una eficiencia menor. Teniendo en
posición de los bits iguales a 1 en el primer multiplicador. cuenta que la mayorı́a de los microprocesadores en teléfonos
Por otra parte, dado que α es una raı́z del polinomio pri- móviles tienen una longitud de palabra de 32 bits, la imple-
mitivo en GF (28 )[x], x4 + β 23 x3 + β 245 x2 + β 48 x + β 239 , mentación del LFSR del SNOW 3G se espera que sea más
se puede generar el cuerpo extendido GF (232 ) como eficiente que la de esos otros generadores, ya que en el SNOW
sucesivas potencias de α, de forma que el conjunto 3G el LFSR se define sobre el cuerpo extendido GF (232 ).
82
{0, 1, α, α2 , α3 , ..., α2 −2 } define todo el cuerpo GF (232 ). Teniendo esto en cuenta, se puede afirmar que el hecho de
Por tanto se deduce que cualquier elemento de GF (232 ) puede que la implementación del SNOW 3G se realice teniendo en
ser representado mediante un polinomio en GF (28 )[x] de cuenta el cuerpo GF (232 ), resultará más adecuado para la
grado menor que 4, o bien con una palabra de 4 bytes corres- arquitectura que actualmente soportan los teléfonos móviles.
pondientes a los 4 coeficientes de dicho polinomio. De esa ma- El segundo aspecto a considerar está relacionado con las
nera, las operaciones en GF (232 ) corresponden a operaciones operaciones aritméticas que se deben realizar en el generador,
con polinomios módulo x4 + β 23 x3 + β 245 x2 + β 48 x + β 239 . y especı́ficamente, la multiplicación en el cuerpo extendido,
Esto significa que en particular, la multiplicación de α por porque la función de realimentación en el SNOW 3G implica
cualquier palabra de 4 bytes (c3 , c2 , c1 , c0 ) ∈ GF (232 ) re- diversas sumas y multiplicaciones, siendo la multiplicación la
sulta de la multiplicación de x por el polinomio c3 x3 + operación con mayor coste computacional.
c2 x2 + c1 x + c0 , que es entonces dividida por el polinomio Todos los resultados mostrados fueron obtenidos utilizando
x4 + β 23 x3 + β 245 x2 + β 48 x + β 239 , de forma que el resulta- Instruments, que es un analizador y visualizador del rendi-
do obtenido es el resto (c2 +c3 β 23 )x[3 +(c1 +c3 β 245 )x2 +(c0 + miento de aplicaciones en código OS X e iOS. Es una herra-
c3 β 48 )x + c3 β 239 , o lo que es lo mismo, la palabra de 4 bytes mienta flexible y potente, que permite realizar el seguimiento
(c2 + c3 β 23 , c1 + c3 β 245 , c0 + c3 β 48 , c3 β 239 ), ∀c ∈ GF (28 ). de uno o más procesos y examinar los datos obtenidos.
De idéntica manera, la multiplicación de α−1 por cualquier Los datos proporcionados corresponden a una media de 10
palabra de 4 bytes (c3 , c2 , c1 , c0 ) ∈ GF (232 ) resulta de la ejecuciones de las pruebas realizadas, en las cuales se gene-
multiplicación de x−1 por el polinomio c3 x3 +c2 x2 +c1 x+c0 , raron 107 bytes de secuencia cifrante utilizando la plataforma
que es c3 x2 + c2 x + c1 + c0 x−1 . Como xx−1 = 1 y β 255 = mencionada. La Tabla II muestra el tiempo total (en milise-
1, x−1 puede expresarse como β 255−239 x3 +β 255−239+23 x2 + gundos) de cada función correspondiente a la implementación
β 255−239+245 x + β 255−239+48 = β 16 x3 + β 39 x2 + β 6 x + β 64 . del SNOW 3G.
54 J. Molina-Gil, P. Caballero-Gil, A. Fúster-Sabater

Tabla II Tabla III


F UNCIONES CON M ÉTODO R ECURSIVO F UNCIONES CON TABLAS P RECOMPUTADAS

Resumen Coste Computacional


Función Tiempo (ms) % Función Tiempo (ms) %
MULxPow 29054,9 92,88 ClockLFSRKeyStreamMode 347,3 28,69
ClockLFSRKeyStreamMode 572 1,77 main 277,2 22,35
DIValpha 356,6 1,1 ClockFSM 182,2 14,95
main 264,7 0,8 S1 146 12,01
MULalpha 326,8 0,99 S2 138 11,3
GenerateKeystream 243,8 0,73 GenerateKeystream 107,3 8,84
ClockFSM 180,3 0,54 Generator 1,3 0,04
S2 128,1 0,34 Total 1199,4 100
S1 129,9 0,37
Generator 1,3 0
Total 30258,5 100 recursivo en cuando a tiempo consumido. Sin embargo, uno
de los mayores problemas de esta propuesta es la necesidad de
almacenamiento, lo que puede ser un problema en dispositivos
Los resultados muestran claramente que la multiplicación con recursos limitados. En particular, para SNOW 3G, la tabla
es la función más costosa. La segunda función más costosa es consta de 256 elementos de 32 bits cada uno, lo que supone
el desplazamiento del LFSR, que se realiza en cada pulso de un total de 32*256 bits. Además, la implementación implica
reloj. A continuación se presentan dos técnicas diferentes para dos tablas, una para la función M U Lα y otra para DIVα lo
llevar a cabo la multiplicación, ası́ como diferentes formas de que significa un total de 2048 bytes. Esta cantidad no supone
implementar el desplazamiento del LFSR propuestas en [11], un gran problema dadas las caracterı́sticas de los teléfonos
con el objetivo de descubrir cuál es la implementación óptima. móviles actuales, por lo que por eficiencia, la conclusión
obtenida es que este método parece bastante adecuado para
IV-A. Multiplicación los dispositivos analizados.
Tras realizar la implementación del SNOW 3G tal como
está propuesta en [1], la Tabla II muestra los resultados de IV-B. LFSR
tiempo consumido por cada función. Como puede verse, la Las estructuras de los LFSRs son en general bastante
función MULxPow utilizada para multiplicar por α y por α−1 difı́ciles de implementar en software de forma eficiente. La
es la que más tiempo consume. razón principal es el desplazamiento de los 16 estados en cada
En la implementación, la multiplicación puede ser progra- pulso de reloj. Este desplazamiento en una implementación
mada como una serie de desplazamientos de bytes recursivos hardware, se realiza de manera simultánea por lo que el
y XORs condicionales, o bien como una búsqueda en un proceso completo puede ser realizado en un simple pulso
tabla con resultados precalculados. Además, en cada pulso de reloj. Sin embargo, en una implementación software, el
de reloj del LFSR, el polinomio de realimentación usa dos proceso es iterativo y por lo tanto costoso.
funciones M U Lα y DIVα , que se definen como se muestra Como se ve en la Tabla III, una vez optimizada la mul-
a continuación: tiplicación, la función ClockLFSRKeyStreamMode es la que
más tiempo consume. Con el fin de buscar una mejora de los
M U Lα =
tiempo consumidos por esta función hemos utilizado diferentes
M U Lx P OW (c, 23, 0xA9)||M U Lx P OW (c, 245, 0xA9)
técnicas de optimización descritas en [17], junto con técnicas
M U Lx P OW (c, 48, 0xA9)||M U Lx P OW (c, 239, 0xA9)
secuenciales (hardcode) propuestas en la especificación del
DIVα = SNOW 3G.
M U Lx P OW (c, 16, 0xA9)||M U Lx P OW (c, 39, 0xA9) El método hardcode consiste en la incorporación de los
M U Lx P OW (c, 6, 0xA9)||M U Lx P OW (c, 64, 0xA9) datos directamente en el código fuente en vez de utilizar
bucles e ı́ndices como hacen el resto de propuestas. El coste de
La primera propuesta de implementación de la multipli-
este método de hardcode se corresponde con 15 asignaciones
cación resulta más apropiada para sistemas con recursos de
secuenciales. Esta técnica, a pesar de ser más larga, parece
memoria limitados, ya que no requiere de espacio de almace-
que requiere menos tiempo. A continuación se muestra la
namiento. Sin embargo, como se puede ver en la Tabla II, esta
implementación de este método.
implementación tiene un coste computacional significativo.
La segunda propuesta, que implica el uso de tablas precal- void ClockLFSRKeyStreamMode()
culadas, proporciona resultados óptimos, tal como se puede u32 v = (((LFSR_S0 << 8) & 0xffffff00 )ˆ
ver en la Tabla III. Tal como muestran los resultados, esta (MULalpha((u8)((LFSR_S0>>24) & 0xff))) ˆ
implementación se puede considerar la más rápida para la mul- (LFSR_S2) ˆ
tiplicación y supone una mejora del 96 % respecto al método ((LFSR_S11 >> 8) & 0x00ffffff)
Análisis e Implementación del Generador SNOW 3G Utilizado en las Comunicaciones 4G 55

Tabla IV
E JECUCI ÓN CON DIFERENTES M ÉTODOS DE IMPLEMENTACI ÓN PARA EL LFSR

Funciones Tradicional HardCode Búfer Circular Ventanas Deslizantes Desdoblamiento de Bucles


ClockLFSRKeyStreamMode 491,1 342,5 834 184,1 291,3
Generator 1,4 1,3 1,3 1,8 1,1
GenerateKeystream 65,8 65,8 198,3 88,2 68,4
main 246,6 306,8 296,8 297 294,4
Tiempo total 804,9 716,4 1330,4 571,1 655,2

(DIValpha((u8)((LFSR_S11) & 0xff))) Tabla V


); E JECUCI ÓN EN M ODO OPTIMIZADO
LFSR_S0 = LFSR_S1; Coste Computacional
LFSR_S1 = LFSR_S2; Función Tiempo (ms) %
LFSR_S2 = LFSR_S3; ClockLFSRKeyStreamMode 184,7 15,28
LFSR_S3 = LFSR_S4; main 282,3 22,23
LFSR_S4 = LFSR_S5; ClockFSM 195,4 17,68
LFSR_S5 = LFSR_S6; S1 135,9 12,65
LFSR_S6 = LFSR_S7; S2 163,4 16,33
LFSR_S7 = LFSR_S8; GenerateKeystream 118,2 10,95
LFSR_S8 = LFSR_S9; Generator 1,2 1,07
LFSR_S9 = LFSR_S10;
Total 1081,1 100
LFSR_S10 = LFSR_S11;
LFSR_S11 = LFSR_S12;
LFSR_S12 = LFSR_S13; LFSR puede afectar a otra parte del SNOW 3G como puede
LFSR_S13 = LFSR_S14; ser la FSM. Por esta razón, el principal objetivo ahora es
LFSR_S14 = LFSR_S15; determinar si la mejora en la implementación del LFSR puede
LFSR_S15 = v; afectar negativamente a otras partes del código, o bien concluir
El análisis llevado a cabo incluye una comparación de cuál es la mejora total que se puede llegar a alcanzar.
diferentes técnicas de implementación de un LFSR. Para ello Para analizarlo, se ha implementado el SNOW 3G con
se ha utilizado el método basado en tablas de multiplicaciones estas dos posibles mejoras. En la Tabla V se mues-
precalculadas descrito como óptimo en la sección anterior, y tra el resumen de los resultados obtenidos. Si se com-
se realiza cada experimento para 107 bytes de salida generados paran los resultados con los de la Tabla III, se puede
por el LFSR del SNOW 3G. ver claramente que esta implementación mejora los tiem-
Los valores obtenidos se resumen en la Tabla IV, que pos para las funciones ClockLF SRKeyStreamM ode, S1
muestra el tiempo consumido por las funciones que implican y GenerateKey. Sin embargo, otras funciones como
el desplazamiento del LFSR y sus operaciones, ası́ como ClockF SM, S2, GenerateKeystream han aumentado lige-
el tiempo total consumido por cada una de las diferentes ramente sus tiempos. La función con el peor resultado es
propuestas. S2, que ha incrementado su valor en un 26 % respecto a la
Los resultados muestran que el método de hardcode pro- propuesta previa. Por otra parte, la mejora más importante
puesto en la especificación del SNOW 3G no es la mejor ha sido para la función ClockLF SRKeyStreamM ode, con
opción. Aunque representa un 11 % de mejora sobre el método un 47 %. Todos estos resultados suponen en su conjunto una
tradicional, es el método de ventanas deslizantes el que pre- mejora del 10 % respecto a la propuesta de la especificación.
senta los mejores resultados, con un 29 % de mejora respecto
al método tradicional y un 20 % respecto a la propuesta de V. C ONCLUSIONES Y T RABAJOS F UTUROS
hardcode. Por otra parte, la peor propuesta es la de búfer En este trabajo se ha presentado un análisis, tanto desde
circular. Como puede deducirse de los tiempos obtenidos, un punto de vista teórico como práctico, del generador que se
el método no es aplicable debido a que la actualización de utiliza para la protección de la confidencialidad y la integridad
diferentes ı́ndices implica el uso de aritmética modular, lo que en la generación 4G de telefonı́a móvil. En particular, después
no resulta muy eficiente con ese método. de una introducción teórica del generador SNOW 3G, y varios
Por tanto, se podrı́a concluir que una óptima implementa- estudios de implementación del generador en la plataforma
ción del LFSR implica el uso de tablas precalculadas para móvil iOS, se ha realizado una comparación entre diferentes
la multiplicación y la técnica de ventanas deslizantes para el propuestas, y se han obtenido conclusiones interesantes sobre
desplazamiento del LFSR. cómo mejorar la eficiencia de su implementación a través de
Sin embargo, esta nueva propuesta de implementación del la optimización del software.
56 J. Molina-Gil, P. Caballero-Gil, A. Fúster-Sabater

Dado que este es un trabajo en progreso, todavı́a hay mu-


chos problemas abiertos, tales como el análisis de parámetros
no analizados en este trabajo, la utilización de diferentes
arquitecturas, ası́ como un estudio comparativo entre ellas.
También otro trabajo futuro es la propuesta de una versión
ligera del generador SNOW 3G para dispositivos con recursos
limitados, y el análisis de propiedades teóricas del generador.
AGRADECIMIENTOS
Investigación financiada por el MINECO y la fundación
Europea FEDER mediante los proyectos TIN2011-25452 e
IPT-2012-0585-370000.
R EFERENCIAS
[1] ETSI/SAGE. Specification of the 3GPP Confidentiality and Integrity
Algorithms UEA2 & UIA2. Document 2, “SNOW 3G Specification,
version 1.1”, http://www.3gpp.org/ftp/, 2006.
[2] P. Ekdahl, T. Johansson “SNOW - a new stream cipher”, Proceedings
of First Open NESSIE Workshop, 2000.
[3] P. Ekdahl, T. Johansson “A New Version of the Stream Cipher SNOW”,
Proceedings of Selected Areas in Cryptography, LNCS 2595, pp. 47-61,
2003.
[4] P. Hawkes, G.G. Rose, “Guess-and-determine attacks on SNOW”, Pro-
ceedings of Selected Areas in Cryptography, LNCS 2595, pp. 37-46,
2003.
[5] D. Coppersmith, S. Halevi, C. Jutla, “Cryptanalysis of stream ciphers
with linear masking”, Proceedings of CRYPTO, LNCS 2442, pp. 515-
532, 2002.
[6] ISO/IEC 18033-4:2005. Information technology - Security techniques -
Encryption algo-rithms - Part 4: Stream ciphers. http://www.iso.org/iso/
home/store/catalogue ics/
[7] C. Berbain, O. Billet, A. Canteaut, N. Courtois, H. Gilbert, A. Gou-
get, H. Sibert, “Sosemanuk, a fast software-oriented stream cipher
eSTREAM, ECRYPT Stream Cipher”, ECRYPT-Network of Excellence
in Cryptology, Call for stream Cipher Primitives-Phase 2, http://www.
ecrypt. eu. org/stream, 2005.
[8] O. Billet, H. Gilbert, “Resistance of SNOW 2.0 Against Algebraic
Attacks”, Proceedings of CT-RSA, LNCS 3376, pp. 19-28, 2005.
[9] ETSI/SAGE Technical report: Specification of the 3GPP Confidentiality
and Integrity Al-gorithms UEA2 & UIA2. Document 5: Design and
Evaluation Report, Version 1.1, September 2006.
[10] O. Nyberg, J. Wall “Improved Linear Distinguishers for SNOW 2.0”,
Proceedings of Fast Software Encryption, LNCS 4047, pp. 144-162,
2006.
[11] D. Watanabe, A. Biryukov, C. De Canniere, “A Distinguishing Attack
of SNOW 2.0 with Linear Masking Method”, Proceedings of Selected
Areas in Cryptography, LNCS 3006, pp. 222-233, 2004.
[12] B. Debraize, I.M. Corbella, “Fault Analysis of the Stream Cipher Snow
3G”, Proceedings of Workshop on Fault Diagnosis and Tolerance in
Cryptography, IEEE, pp. 103-110, 2009.
[13] B. Brumley, R. Hakala, K. Nyberg, B. Sovio, “Consecutive S-box
Lookups: A Timing Attack on SNO 3G”, Proceedings of Information
and Communications Security, LNCS 6476, pp. 171-185, 2010.
[14] A. Biryukov, D. Priemuth-Schmid, B. Zhang, “Multiset collision attacks
on reduced-round SNOW 3G and SNOW 3G”, Proceedings of Applied
Cryptography and Network Security, pp. 139-153, 2010.
[15] G. Orhanou, S. El Hajji, Y. Bentaleb,“NOW 3G stream cipher operation
and complexity study”, Contemporary Engineering Sciences-Hikari Ltd,
3(3), pp. 97-111, 2010.
[16] P. Kitsos, G. Selimis, O. Koufopavlou,“High performance ASIC im-
plementation of the SNOW 3G stream cipher”, IFIP/IEEE VLSI-SOC,
2008.
[17] O. Delgado-Mohatar, A. Fúster-Sabater,“Software Implementation of
Linear Feedback Shift Registers over Extended Fields,’ Proceedings of
CISIS/ICEUTE/SOCO Special Sessions, pp. 117-126, 2012.
RECSI 2014, Alicante, 2-5 septiembre 2014

Criptosistemas de clave pública basados en acciones


(m)
del anillo Ep
Joan-Josep Climent Juan A. López-Ramos Leandro Tortosa
Departament d’Estadı́stica Departamento de Matemáticas Departament de Ciència de la
i Investigació Operativa Universidad de Almerı́a Computació i Intel·igència Artificial
Universitat d’Alacant Email: jlopez@ual.es Universitat d’Alacant
Email: jcliment@ua.es Email: tortosa@ua.es

Abstract—El objetivo de este trabajo es la introducción de apli- clave pública, tales como el conjunto de puntos de una curva
caciones criptográficas de una extensión del anillo End(Zp ×Zp2 ), elı́ptica ([7] y [10]) o cómo la acción de un semigrupo sobre
(m)
denotado por Ep . Mostramos cómo las acciones del anillo un conjunto puede dar lugar también a este tipo de algoritmos
(m)
Ep sobre dos conjuntos distintos nos permiten introducir [8]. En este caso, los autores muestran cómo es posible definir
dos criptosistemas de clave pública diferentes y basados en la
un criptosistema similar al de ElGamal [5] aprovechando la
dificultad de resolver los problemas de la acción del semigrupo
y de la descomposición respectivamente. Observamos cómo la no acción del semigrupo sobre un conjunto. Sin embargo, en este
conmutatividad del anillo, ası́ como la existencia de un gran caso, un atacante debe resolver el conocido como Problema de
número de divisores de cero lo hacen apropiado para tales la Acción del Semigrupo o SAP (Semigroup Action Problem),
aplicaciones criptográficas. que consiste en dado un grupo abeliano finito G, un conjunto
Palabras clave—Criptosistema de Clave Pública (Public Key
finito S y una acción de G sobre S, si dados x, y ∈ S tales
Cryptosystem), Problema de la Descomposición (Decomposition
Problem), Problema de la Acción del Semigrupo (Semigroup que y = g · x para algún g ∈ G, encontrar h ∈ G tal que
Action Problem). y = h · x.
Basándose en el protocolo de intercambio de clave intro-
I. N OMENCLATURA
ducido en [16], Climent et al. en [2] introducen un protocolo
SAP, Problema de la Acción del Semigrupo (Semigroup de intercambio de clave para dos comunicantes sobre el anillo
Action Problem). End(Zp × Zp2 ). Sin embargo, aprovechando los elementos
DP, Problema de la Descomposición (Decomposition Prob- invertibles de anillo, Kamal y Youssef en [6] llevan a cabo
lem). un ataque a dicho protocolo de intercambio de claves. De
Matm×m (Z), matrices cuadradas de tamaño m × m sobre este modo, y buscando evitar este tipo de ataques, en [1]
el anillo de los número enteros. los autores introducen un esquema general de intercambio de
r = (r0 , r1 , . . . , rm−1 ), denota una matriz columna de m claves para un conjunto finito de usuarios, que extiende el de
componentes. [2], pero que además se lleva a cabo sobre una extensión del
Ep , anillo de matrices de tamaño 2 × 2 isomorfo al anillo (m)
anillo anterior, el anillo Ep , estudiado en [3], y en el que
End(Zp × Zp2 ). los elementos invertibles son muy escasos. La fortaleza de
(m)
Ep , anillo de matrices de tamaño m × m y que es este nuevo intercambio de claves extiende el intercambio de
extensión del anillo Ep . clave de Diffie-Hellman, pero se basa en un problema mucho
II. I NTRODUCCI ÓN más duro que el del logaritmo discreto y que es conocido
como Problema de la Descomposición o DP (Decomposition
Desde que en [4] Diffie y Hellman proponen el primer Problem), es decir, dado un grupo G, un subconjunto S ⊆ G
protocolo de intercambio de claves a través de un canal y un elemento (x, y) ∈ G×G, encontrar elementos z1 , z2 ∈ S
público, son muchos los autores que han introducido esquemas tales que y = z1 xz2 .
de este tipo, como por ejemplo [11], [12], [14], [16]. Si nos
centramos en los criptosistemas de clave pública, podemos El objetivo de este trabajo es usar la acción del semigrupo
(m)
destacar indudablemente como los más conocidos [5] y [13]. multiplicativo Ep sobre un par de conjuntos para definir
Todos estos algoritmos, al igual que la idea original de Diffie criptosistemas de clave pública en un entorno no conmutativo
y Hellman basan su fortaleza en la resolución de problemas y basados en problemas distintos a los clásicos de Teorı́a de
sobre Teorı́a de Números. Por otro lado, trabajos como [15] Números y de mucha más difı́cil resolución. En la sección III
(m)
o [9] en los que se muestran debilidades de [4], [5] y [13] introducimos brevemente el anillo Ep , ampliamente estu-
y [12] respectivamente, ası́ como los constantes avances en diado en [3]. A continuación, en la sección IV y dado que
(m)
computación y capacidad de cálculo de las máquinas actuales los elementos de Ep se expresan como matrices, usamos
(m)
han llevado a considerar otras estructuras para el desarrollo de la acción de Ep sobre una columna de elementos de un
(m)
tales protocolos de intercambio de clave y de criptosistemas de elemento en Ep para definir un criptosistema basado en el
58 J.-J. Climent, J.A. López-Ramos, L. Tortosa

(m)
problema SAP. En la sección V, es la acción del propio anillo IV. U N CRIPTOSISTEMA DE CLAVE P ÚBLICA SOBRE Ep
(m)
Ep sobre sı́ mismo la que se usa para definir un criptosis- BASADO EN EL SAP
tema basado en el problema DP. La sección VI concluye los El propósito de esta sección es la introducción de un crip-
resultados introducidos en este trabajo. tosistema de clave pública basado en la acción del semigrupo
(m)
multiplicativo de Ep sobre el conjunto Zp ×Zp2 ×· · ·×Zpm .
(m)
III. E L ANILLO Ep Dicha acción viene dada por la multiplicación definida sobre el
(m)
anillo Ep , es decir, la acción que tiene lugar al multiplicar
En [2] los autores prueban que el anillo End(Zp × Zp2 ) es las filas del primer elemento por cada una de las columnas
isomorfo a un anillo que los autores denotan por Ep y cuyos del segundo. Consideremos pues el anillo de polinomios
elementos pueden representarse como matrices del tipo (m)
Z(Ep )[X] con coeficientes sobre el centro del anillo Ep .
(m)

  (m)
a b Algoritmo 1: Sea M ∈ Ep un valor público y s ∈ Zp ×
con a, b, c ∈ Zp y d ∈ Zp2 .
pc d Zp2 × · · · × Zpm el mensaje que el comunicante Bernardo
quiere enviar a Alberto de forma confidencial. Entonces:
Motivados por los resultados citados en la introducción
• Alberto escoge r ∈ Zp × Zp2 × · · · × Zpm , f (X) ∈
sobre el criptoanálisis llevado acabo sobre el anillo anterior, (m)
Climent et al. introducen en [3] la siguiente extensión del Z(Ep )[X] y calcula t = f (M ) · r.
• Alberto publica el par (r, t), manteniendo en secreto su
anillo Ep . Dado un primo p y un entero m, se define el
conjunto propia clave privada f (M ).
(m)
• Bernardo elige g(X) ∈ Z(Ep )[X] y envı́a a Alberto el
par
n
Ep(m) = [aij ] ∈ Matm×m (Z) | aij ∈ Zpi si i ≤ j
o (c1 , c2 ) = (g(M ) · r, s + g(M ) · t).
y aij ∈ pi−j Zpi si i > j .
• Alberto obtiene s = c2 − f (M ) · c1 .
(m)
Asimismo se pueden definir una adición y una multipli- Notemos que aunque Ep no es conmutativo, se tiene que
cación como f (M )g(M ) = g(M )f (M ). De este modo se tiene el siguiente
resultado.
aij + bij = (aij + bij ) mod pi ,
     
" m ! # Teorema 5: El algoritmo 1 es correcto.
X
i
   
aij · bij = aik bkj mod p . Podemos observar que romper el algoritmo anterior involu-
k=1 cra resolver el problema SAP, es decir, conocidos los valores
r y t = f (M ) · r ∈ Zp × Zp2 × · · · × Zpm , encontrar un
Se prueba entonces el siguiente resultado. (m)
elemento A ∈ Ep que verifique t = A · r. En [8] los autores
(m)
Teorema 1: El conjunto Ep con la adición y la multipli- prueban que cuanto más cerca se halle el semigrupo que actúa
cación definidas anteriormente es un anillo no conmutativo. sobre el conjunto correspondiente de ser un grupo, es decir,
cuanto más grande sea el conjunto de elementos invertibles en
También en [3] se prueban las siguientes propiedades del dicho semigrupo, más fácil es utilizar una versión sobre dicho
(m)
anillo Ep y que a continuación se relacionan. semigupo del algoritmo del Polling-Hellman para el cálculo
(m)
Teorema 2: El centro del anillo Ep es el conjunto dado del logaritmo discreto. En nuestro caso, tal y como se ha
por indicado anteriormente, el número de elementos no invertibles
(m)
puede acercarse mucho al total de elementos de Ep con una
adecuada elección de p y m.
n 
Z(Ep(m) ) = aij ∈ Ep(m) | aij = 0 si i 6= j
Una caracterı́stica adicional del criptosistema anterior es el
i
X o uso de un polinomio distinto g(X) cada vez que se cifra un
y aii = pi−r ui−r con ui−r ∈ Zp . mensaje. En el criptosistema de ElGamal, [5], la elección de un
r=1 parámetro aleatorio para cada cifrado es necesaria para evitar
  (m) un ataque texto claro-texto cifrado basado en la existencia de
Teorema 3: Un elemento aij ∈ Ep es invertible si y sólo inversos. Sin embargo, en este caso, un ataque tal no podrı́a
si aii 6≡p 0 para i = 1, 2, . . . , m. llevarse a cabo debido a la ya citada escasa existencia de
(m)
Teorema 4: El cardinal de Ep es pνm donde νm = (2m3 + inversos. De hecho no puede llevarse a cabo ningún ataque
(m)
3m2 + m)/6 y el cardinal del conjunto de los elementos basado en la división por no tratarse Ep de un dominio de
invertibles viene dado por pνm −m (p − 1)m . integridad. Además, la elección de dicho polinomio g(X) de
forma aleatoria evita ataques por repetición, pues un mismo
Observación 1: A partir de los resultados anteriores y a modo mensaje no es cifrado dos veces del mismo modo.
(32)
de ejemplo, puede comprobarse que en E2 , el porcentaje de Dada la clave pública (r, t), con t = f (M ) · r, sea A una
elementos no invertibles alcanza el 99.9999999767%. solución del SAP, es decir, A · r = t y supongamos que el
(m)
Criptosistemas de clave pública sobre Ep 59

elemento g(M ) verifica que Ag(M ) = g(M )A. Entonces, Entonces a0 ≡p r0−1 t0 . De este modo a0 = r0−1 t0 + hp
dado el mensaje cifrado con h ∈ Z. De la segunda expresión tenemos que pa1 r1 ≡p2
t1 − a0 r1 y de este modo, mcd(pr1 , p2 ) = p | (t1 − a0 r1 ).
(c1 , c2 ) = (g(M ) · r, s + g(M ) · t)
Por tanto, t1 ≡p a0 r1 y ası́ r0−1 t0 ≡p r1−1 t1 .
tenemos que Supongamos ahora que
s + g(M ) · t − Ag(M ) · r r0−1 t0 ≡p r1−1 t1 ≡p · · · ≡p rm−2
−1
tm−2 .
= s + g(M )f (M ) · r − g(M )A · r De la expresión
= s + g(M )f (M ) · r − g(M )f (M ) · r = s. −1
a0 + pa1 + · · · + pm−2 am−2 ≡pm−1 rm−2 tm−2 ,
De este modo es vital que el elemento g(M ) no conmute
−1
con la solución encontrada del SAP, A. Veamos que podemos tenemos que a0 +pa1 +· · ·+pm−2 am−2 = rm−2 tm−2 +pm−1 h
tener condiciones para que ni g(M ) ni A sean elementos del para algún h ∈ Z. Entonces, como
(m)
centro de Ep . (a0 + pa1 + · · · + pm−1 am−1 )rm−1 ≡pm tm−1
La demostración del siguiente resultado es inmediata.
tenemos que
Lema 1: Sea R un anillo no conmutativo. Entonces
−1
Z(R[X]) = Z(R)[X]. a0 + pa1 + · · · + pm−2 am−2 + pm−1 am−1 ≡pm rm−1 tm−1
−1 −1
Una consecuencia directa del lema anterior nos da que y por tanto rm−2 tm−2 + pm−1 (h + am−1 ) ≡pm rm−1 tm−1 ,
(m) (m) −1 −1
Z(Ep [X]) = Z(Ep )[X]. de donde rm−2 tm−2 ≡p rm−1 tm−1 .
Veamos ahora una condición para que g(M ) no sea un La consecuencia del resultado anterior es que dado el
(m)
elemento central en Ep . elemento f (M ), un usuario puede tomar como clave pública el
Lema 2: Sea g(X) = g0 + g1 X + · · · + gk X k ∈ Z(Ep [X])
(m) par (r, t) con r = (r0 , r1 , . . . , rm−1 ) y t = (t0 , t1 , . . . , tm−1 )
tal que (gj )i,i 6≡p 0 para todo i = 1, 2, . . . , m y para con ri , ti ∈ Zpi+1 , para i = 0, 1, 2, . . . , m − 1 tales que
(m)
/ Z(Ep ), entonces g(M ) ∈
algún j = 1, 2, . . . , k. Si M ∈ / f (M ) · r = t y con rk no divisible por p para ningún
(m) k = 0, 1, 2, . . . , m − 1 y de modo que exista i tal que
Z(Ep ).
ri−1 ti 6≡p r0−1 t0 , haciendo imposible que un atacante pueda
Demostración 1 (Demostración): Como (gj )i,i 6≡p 0 para calcular un elemento central A solución del SAP anterior.
todo i = 1, 2, . . . , m, tenemos que gj es invertible. De este Un ataque por fuerza bruta supondrı́a probar con todos los
(m) (m)
modo, si N es cualquier elemento en Ep y suponemos posibles polinomios con coeficientes en el centro de Ep . Si
que N gj M = gj M N , entonces gj N M = gj M N , con lo consideramos un primo con 20 cifras decimales, o lo que es
que M N = N M , lo que es una contradicción. De este lo mismo, aproximadamente de 64 bits, y el entero m = 5,
modo, aunque gi M i sea un elemento central para cualquier tenemos que el número de polinomios es del orden de 10121 .
(m)
i = 0, 1, 2, . . . , k con i 6= j, tenemos que g(M ) ∈
/ Z(Ep ). La longitud de los mensajes cifrados en este caso serı́a
Supongamos ahora que un atacante intenta encontrar A 2 · (1024 + 512 + 256 + 128 + 64) = 9920 bits.
central y que sea solución del SAP A · r = t. En tal caso, (m)
el elemento A ha de tener la forma V. U N CRIPTOSISTEMA DE CLAVE P ÚBLICA SOBRE Ep
BASADO EN EL DP
diag(a0 , a0 + pa1 , . . . , a0 + pa1 + · · · + pm−1 am−1 ), La acción del semigrupo multiplicativo de Ep sobre el
(m)
(m)
con ai ∈ Zp para todo i = 0, 1, 2, . . . , m − 1. propio conjunto Ep nos define un criptosistema similar
basado también en el SAP. Sin embargo, nuestro objetivo ahora
Teorema 6: Supongamos que
es el de introducir un criptosistema de clave pública basado en
diag(a0 , a0 + pa1 , . . . , a0 + pa1 + · · · + pm−1 am−1 ), los intercambios de clave introducidos en [1]. Consideramos
y que r = (r0 , r1 , . . . , rm−1 ) y t = (t0 , t1 , . . . , tm−1 ) son la acción arriba indicada, aunque presentamos la siguiente
elementos de Zp × Zp2 × · · · × Zpm tales que A · r = t. Si variación. El algoritmo que introducimos, utilizando la misma
ri 6≡p 0 para i = 0, 1, 2, . . . , m − 1 entonces notación que en el algoritmo 1, es como sigue:
(m) (m)
r0−1 t0 ≡p r1−1 t1 ≡p · · · ≡p rm−1
−1
tm−1 . Algoritmo 2: Sea M ∈ Ep un valor público y S ∈ Ep el
mensaje que el comunicante Bernardo quiere enviar a Alberto
Demostración 2 (Demostración): De la igualdad A · r = t de forma confidencial. Entonces:
tenemos las siguientes igualdades (m)
• Alberto escoge N ∈ Ep tal que M N 6= N M , f (X) ∈
(m)
a0 r0 ≡p t0 , Z(Ep )[X] y un par de enteros positivos (u, v) y calcula
(a0 + pa1 )r1 ≡p2 t1 , f (M )u N f (M )v .
u v
• Alberto publica el par (N, f (M ) N f (M ) ), mante-
···
niendo en secreto su propia clave privada f (M ) junto
(a0 + pa1 + · · · + pm−1 am−1 )rm−1 ≡pm tm−1 . con los enteros u y v.
60 J.-J. Climent, J.A. López-Ramos, L. Tortosa

(m)
• Bernardo elige g(X) ∈ Z(Ep )[X] y un par de enteros Entonces tenemos que
positivos (r, t) y envı́a a Alberto el par
 W1 f (M )u N f (M )v W2−1 = f (M )u W1 N W2−1 f (M )v
(c1 , c2 ) = g(M )r N g(M )t , = f (M )u g(M )r N g(M )t f (M )v

S + g(M )r f (M )u N f (M )v g(M )t . puesto que Wi f (M )k = f (M )k Wi para i = 1, 2 y cualquier
valor de k. Por tanto, podemos calcular
• Alberto obtiene S = c2 − f (M )u c1 f (M )v .
c2 − W1 f (M )u N f (M )v W2−1 = S.
De nuevo, como en la sección anterior, el hecho de que (m)
(m)
f (X) y g(X) sean elementos del centro de Ep [X] nos Sin embargo, la existencia de W2−1 en Ep es casi improb-
proporciona el siguiente resultado. able dependiendo de los valores de p y m tal y como ya se
deja patente en la la observación 1.
Teorema 7: El algoritmo 2 es correcto.
VI. C ONCLUSI ÓN
Teorema 8: Romper el criptosistema dado por el algoritmo 2
En este trabajo hemos mostrado cómo la acción de un
es equivalente a resolver el problema DP.
semigrupo multicativo y no conmutativo puede ser usada para
Demostración 3 (Demostración): Supongamos en primer la definición de criptosistemas de clave pública cuya fortaleza
lugar que somos capaces de resolver el problema DP dado reside en la resolución de problemas computacionalmente
por el par (N, f (M )u N f (M )v ). Entonces somos capaces de difı́ciles. En un caso obtenemos un criptosistema cuya seguri-
encontrar Z1 y Z2 tales que g(M )u N g(M )v = Z1 N Z2 , dad se basa en el problema de la descomposición proveniente
Z1 M = M Z1 y Z2 M = M Z2 . Entonces de la acción que define la multiplicación de elementos en el
(m)
anillo no conmutativo Ep . Dado que los elementos de dicho
c2 − Z1 c1 Z2 = S + g(M )r f (M )u N f (M )v g(M )t anillo pueden representarse como matrices, si restringimos esta
− Z1 g(M )r N g(M )t Z2 acción a las columnas de las mismas, obtenemos entonces
= S + g(M )r f (M )u N f (M )v g(M )t un nuevo criptosistema basado esta vez en el problema de la
− g(M )r Z1 N Z2 g(M )t acción del semigrupo. En ambos casos mostramos cómo las
propias caracterı́sticas del anillo en lo que se refiere a la no
= S + g(M )r f (M )u N f (M )v g(M )t conmutatividad y a la gran existencia de elementos divisores
− f (M )u g(M )r N g(M )t f (M )v de cero evitan diferentes posibles criptoanálisis.
= S.
AGRADECIMIENTOS
(m)
Por otro lado, sean A y B elementos de Ep . El primer autor ha sido parcialmente financiado por el
Ciframos entonces el elemento B usando la clave pública proyecto MTM2011-24858 del Ministerio de Economı́a y
(A, f (M )u Af (M )v ). El cifrado es entonces Competitividad del Gobierno de España. El segundo autor
 está financiado por el grupo de investigación de la Junta de
(c1 , c2 ) = g(M )r Ag(M )t , Andalucı́a FQM 211.

B + g(M )r f (M )u Af (M )v g(M )t R EFERENCIAS
[1] J.-J. Climent, J.A. López-Ramos, P.R. Navarro, L. Tortosa, “Key agree-
para g(X), r y t como en el algoritmo 2. (m)
ment protocols for distributed secure multicast over the ring Ep ,” WIT
Si recı́procamente estamos suponiendo que somos capaces Transactions on Information and Communication Technologies, vol. 45,
de descifrar el mensaje anterior obteniendo B sin conocer la pp. 13–24, 2013.
[2] J.-J. Climent, P.R. Navarro, L. Tortosa, “Key exchange protocols over
clave privada, entonces podemos calcular el elemento c2 − B, noncommutative rings. The case of End(Zp × Zp2 ),” International
lo que es equivalente a conocer la clave compartida por los co- Journal of Computer Mathematics, vol. 89(13-14), pp. 1753–1763, 2012.
municantes g(M )r f (M )u Af (M )v g(M )t , que es equivalente [3] J.-J. Climent, P.R. Navarro, L. Tortosa, “An extension of the noncommu-
tative Bergman’s ring with a large number of noninvertible elements,”
a resolver los problemas DP dados por los pares enviado para su publicación.
[4] W.D. Diffie, M.E. Hellman, “New directions in cryptography,” IEEE
(A, g(M )r Ag(M )t ) y (A, f (M )u Af (M )v ). Transactions on Information Theory, vol. 22(6), pp. 644–654, 1976.
[5] T. ElGamal, “A public key cryptosystem and a signature scheme based
Veamos ahora que el ataque introducido en [6] para romper on discrete logarithms,” IEEE Transactions Information Theory, vol.
31(4), pp. 469–472, 1985.
el intercambio de claves dado en [2] no es posible en el caso [6] A.A. Kamal, A.M. Youssef, “Cryptanalysis of a key exchange protocol
del algoritmo 2, dependiendo de los parámetros escogidos. El based on the endomorphisms ring End(Zp ×Zp2 ),” Applicable Algebra
(m) in Engineering, Communications and Computing, vol. 23(3-4), pp. 143–
ataque se basa en encontrar elementos W1 , W2 de Ep tales
149, 2012.
que [7] N. Koblitz, “Elliptic curve cryptosystems,” Mathematics of Computation,
vol. 48(177), pp. 203–209, 1987.
W1 M = M W 1 , W2 M = M W2 , [8] M. Maze, C. Monico, J. Rosenthal, “Public Key Cryptography based on
Semigroup Actions,” Advances in Mathematics of Communications, vol.
g(M )r N g(M )t W2 = W1 N. 1(4), pp. 489–507, 2007.
(m)
Criptosistemas de clave pública sobre Ep 61

[9] A.J. Menezes, Y.H. Wu, “The discrete logarithm problem in GL(n, q),”
Ars Combinatoria, vol. 47, pp. 23–32, 1997.
[10] V. Miller, “Use of Elliptic curves in Cryptography,” Advances in Cryp-
tography – CRYPTO’85, vol. 218, Lecture Notes in Computer Science,
pp. 417–426. Springer-Verlag, New York, NY, 1986.
[11] A.G. Myasnikov, V. Shpilrain, A. Ushakov, “Group-based cryptography,”
Birkhäuser Verlag, 2008.
[12] R.W.K. Odoni, V. Varadharajan, P.W. Sanders, “Public key distribution
in matrix rings,” Electronics Letters, vol. 20, pp. 386–387, 1984.
[13] R.L. Rivest, A. Shamir, L. Adleman, “A method for obtaining digital
signatures and public-key cryptosystems,” Communications of ACM, vol.
21(2), pp. 120–126, 1978.
[14] T. Satoh, K. Araki, “On construction of signature scheme over a
certain non-commutative ring,” IEICE Transactions on Fundamentals of
Electronics, Communications and Computer Sciences, 80(1), pp. 40–45,
1997.
[15] P. W. Shor, “Polynomial-time algorithms for prime factorization and dis-
crete logarithms on a quantum computer,” SIAM Journal on Computing,
26(5), pp. 1484–1509, 1997.
[16] E. Stickel, “A new method for exchanging secret keys,” Proceedings
of the Third International Conference on Information Technology and
Applications (ICITA’05), Sidney, 2005, pp. 426-430.
RECSI 2014, Alicante, 2-5 septiembre 2014

Diseño de cifradores en flujo DLFSR con alta


complejidad lineal para implementación hardware
A. Peinado J. Munilla A. Fúster Sabater
Universidad de Málaga Universidad de Málaga Instituto de Tecnologı́as
Andalucı́a Tech Andalucı́a Tech Fı́sicas y de la Información (ITEFI)
ETSI Telecomunicación ETSI Telecomunicación Consejo Superior de Investigaciones
Depto. Ingenierı́a de Comunicaciones Depto. Ingenierı́a de Comunicaciones Cientı́ficas (C.S.I.C.), Madrid
Email: apeinado@ic.uma.es Email: munilla@ic.uma.es Email: amparo@iec.csic.es

Resumen—Muchos generadores de secuencias pseudoaleato- A su vez, Hellebrad [8] y Rosinger [16] propusieron sendos
rias de uso criptográfico se basan en registros de desplazamiento generadores de secuencia para testeo de circuitos basados en
con realimentación dinámica (DLFSR) para incrementar el modificaciones dinámicas de las semillas (estados iniciales) y
perı́odo y la complejidad lineal de las secuencias PN. En este
trabajo se presenta un modelo teórico que permite el diseño de de los polinomios de realimentación de los LFSRs.
secuencias más largas y con mayor complejidad lineal que las En 2002 Mita et al. [12] diseñaron un generador de secuen-
obtenidas en otros esquemas de DLFSR. El modelo determina cia pseudoaleatoria basado en un LFSR con realimentación
asimismo la relación constante entre perı́odo y complejidad lineal dinámica cuyo polinomio de realimentación se actualizaba
para estas estructuras. Las secuencias aquı́ obtenidas presentan según fuera el estado de otro LFSR secundario. Esta estructura
mejores parámetros criptográficos que las de otras propuestas
de registros de desplazamiento con realimentación dinámica puede considerarse como el inicio de los generadores DLFSR
encontradas en la literatura. (Dynamical LFSR). Posteriormente en 2005, Babbage et al.
Palabras clave—cifrado en flujo (stream cipher), complejidad diseñaron el cifrador en flujo Mickey [1] compuesto por dos
lineal (linear span), generador de números pseudoaleatorios LFSRs conectados entre sı́ de manera que cada uno de ellos
(PRNG), realimentación dinámica (dynamic feedback), registro controlaba la realimentación del otro. Sin embargo en 2003
de desplazamiento realimentado linealmente (LFSR), secuencia
binaria (binary sequence). Ding et al. [5] criptoanalizaron dicho generador.
En 2007 Kiyomoto et al. [9] propusieron el cifrador K2,
basado en dos LFSRs y un filtro no lineal. En dicho cifrador,
I. I NTRODUCCI ÓN
un bit del estado del LFSR secundario controlaba la realimen-
Los registros de desplazamiento con realimentación lineal tación del LFSR principal. Posteriormente, Bogdanov et al.
(LFSRs) se han utilizado tradicionalmente como bloques bási- [2] presentaron una evaluación positiva de la seguridad del
cos para la implementación de generadores de secuencia con cifrador K2.
fines criptográficos [6]. Sus secuencias de salida, las PN se- El generador Rakaposhi fue propuesto en 2009 por Cid et
cuencias, presentan buenas propiedades de pseudoaleatoriedad al. [4]. Se compone de un LFSR cuyo polinomio de realimen-
(equilibrio entre ceros y unos, excelente distribución de rachas, tación se selecciona entre 4 posibles opciones codificadas por
buena autocorrelación, etc.) pero son fácilmente previsibles 2 bits del estado de un registro con realimentación no lineal
debido a la linealidad inherente a estas estructuras. Con el (NLFSR). La secuencia de salida se obtiene aplicando un filtro
fin de romper dicha linealidad, pero a la vez manteniendo no lineal a ambos registros (LFSR y NLFSR). Recientemen-
las caracterı́sticas de pseudoaleatoriedad, se aplican diferentes te, en 2013 Orumiehchiha et al. [13] han detectado ciertas
técnicas de diseño como son el filtrado no lineal, la decimación vulnerabilidades en dicho cifrador.
irregular de PN secuencias o la introducción de elementos En 2013, se presentó un generador de números aleatorios,
tı́picos de los cifradores en bloque (cajas de sustitución, el J3Gen [10], que utilizaba un LFSR cuyo polinomio de
vueltas de generadores en bloque conocidos, funciones de realimentación se seleccionaba de una lista de polinomios
expansión de claves, etc.). mediante un esquema cı́clico. También en 2013 Peinado
Otra técnica general para romper la linealidad de los LFSRs et al. [14] desarrollaron un modelo matemático, basado en
consiste en la modificación dinámica de los parámetros de secuencias entrelazadas [7], para calcular el perı́odo y la
realimentación. Entre los diferentes ejemplos de aplicación de complejidad lineal de los generadores DLFSR. Posteriormente,
esta técnica pueden enumerarse los siguientes: dicho modelo se aplicó al generador pseudoaleatorio descrito
En 2008 Che et al. [3] propusieron una modificación del en [12].
estado del LFSR para diseñar un generador de números En este trabajo, se presenta una extensión del modelo
aleatorios. Sin embargo, en 2011 este esquema fue rechazado matemático para DLFSRs que permite generar secuencias con
cuando Meliá-Seguı́ et al. [11] detectaron ciertas debilidades mayor perı́odo y complejidad lineal que aquellas obtenidas
que cuestionaban la aleatoriedad de la secuencia de salida. en las referencias anteriores. Los resultados aquı́ descritos
64 A. Peinado, J. Munilla, A. Fúster Sabater

Polinomio de realimentación Módulo de control


de la realimentación
sj
b1 b2 b3 ... bn

sj-1 sj-2 sj-3 sj-n Polinomio de realimentación

Figura 1. Estructura de un LFSR sj


b1 b2 b3 ... bn

mejoran la seguridad y robustez de las propuestas basadas en sj-1 sj-2 sj-3 sj-n
módulos DLFSR.
Figura 2. Estructura de un DLFSR
II. R EGISTROS DE DESPLAZAMIENTO CON
REALIMENTACI ÓN DIN ÁMICA (DLFSR)
un nuevo polinomio de realimentación. Las secuencias genera-
Un LFSR es un registro de desplazamiento compuesto por das por un DLFSR pueden considerarse como la concatenación
n celdas de memoria con contenido binario b1 , b2 , . . . , bn de segmentos de PN secuencias, de tal forma que el estado
que funcionan de forma sı́ncrona. A cada golpe de reloj, el final del LFSR correspondiente al polinomio de realimentación
contenido de cada celda se desplaza una posición a la derecha pi (x) coincide con el estado inicial del LFSR correspondiente
según se observa en Fig. 1. Mediante una función de reali- al polinomio de realimentación pi+1 (x).
mentación representada por el polinomio de realimentación se La finalidad de un DLFSR es la de generar secuencias con
genera un nuevo contenido para la celda b1 . En este trabajo un perı́odo más largo y una complejidad lineal mayor que las
se considerarán únicamente celdas con contenido binario, sin producidas por el simple LFSR. Para llevar a cabo esta tarea, el
embargo también se han diseñado registros de desplazamiento modulo de control modifica diferentes parámetros de realimen-
cuyas celdas contienen elementos en un cuerpo de Galois tación generando ası́ una secuencia distinta. Los parámetros de
extendido GF (2n ). Si el bit de salida de la función de realimentación de un DLFSR pueden enumerarse tal y como
realimentación en el instante j es sj , entonces el estado del sigue:
LFSR de n celdas que produce sj es (sj−1 , sj−2 , . . . , sj−n ). n : Longitud del LFSR a la vez que el grado del
Por tanto, polinomio de realimentación.
Np : Número de diferentes polinomios de realimenta-
sj = c1 sj−1 + c2 sj−2 , . . . , cn sj−n , (1) ción que van a aplicarse sobre el LFSR. En general
estos polinomios son primitivos aunque también existen
donde c1 , . . . , cn son los coeficientes binarios del polinomio esquemas que incluyen polinomios no primitivos. La
de realimentación mayorı́a de diseños de DLFSR seleccionan polinomios
con muchos coeficientes comunes para simplificar ası́ la
p(x) = cn xn + cn−1 xn−1 + . . . + c2 x2 + c1 x + 1. (2) implementación hardware.
ei : Número de bits consecutivos generados por el mismo
Es bien conocido [6] que el máximo perı́odo de la secuencia polinomio pi (x). Este parámetro puede ser fijo o variable.
de salida de un LFSR es 2n − 1, es decir el registro pasa por Regla de selección: Determina el orden en el que se
todos los posibles estados distintos de cero. Esto sucede cuan- aplican los distintos polinomios de realimentación. En
do el polinomio de realimentación es un polinomio primitivo, algunos casos se aplican siguiendo un orden predetermi-
en cuyo caso la secuencia generada por el LFSR es una PN nado; en otros, de forma completamente aleatoria.
secuencia o secuencia de longitud máxima. Dichas secuencias Módulo de control: El módulo de control establece el mo-
presentan un perfecto equilibrio y distribución estadı́stica de do en el que se establece el instante en el que se cambia
ceros y unos a la vez que una autocorrelación bivaluada. Es el polinomio de realimentación, ası́ como el polinomio a
decir satisfacen perfectamente los postulados de pseudoalea- utilizar o el número de bits que se van a generar. Este
toriedad de Golomb [6]. Sin embargo el conocimiento de modo puede ser dependiente o independiente del LFSR
solamente 2n bits de dicha secuencia permite reconstruirla principal, empleando señales externas al LFSR princi-
en su totalidad, ya que los coeficientes del polinomio de pal, como por ejemplo, LSFR secundarios; o utilizando
realimentación pueden obtenerse como solución de un sistema el contenido de determinadas celdas del propio LFSR
de n ecuaciones lineales. principal. Los mayores valores de complejidad lineal se
Un DLFSR es un tipo de LFSR en el que el polinomio de alcanzan cuando se utilizan dispositivos adicionales, y
realimentación va cambiando a medida que el registro se va por tanto, esquemas de control independientes.
desplazando. Tal y como se muestra en la Fig. 2, el modelo Como ejemplo ilustrativo analizamos el DLFSR propuesto
conceptual de un DLFSR consiste en un LFSR principal más por Mita et al. en [12] que consta de un LFSR principal
un módulo adicional que controla el instante en el que se aplica con n = 16 celdas y Np = 4 polinomios de grado 16. La
65

regla de selección utilizada establece que los Np polinomios que puede resumirse en la siguiente ecuación:
se aplican siempre en el mismo orden, generanado cada uno t+N
Ys
de ellos siempre el mismo número de bits. El modulo de M= At , (4)
control está compuesto por un LFSR secundario de m = 5 t
celdas y polinomio de realimentación primitivo de grado 5.
donde At es una matriz n × n cuyo polinomio caracterı́stico
El LFSR secundario se conecta a un decodificador que, de
es el polinomio pt (x) aplicado al DLFSR en el instante t.
acuerdo con su estado actual y una regla de selección fija,
El parámetro Ns es el perı́odo de aplicación de los distintos
toma de una tabla el correspondiente polinomio a aplicar
polinomios de realimentación a la vez que coincide con el
sobre el LFSR principal. A cada polinomio se le asigna
número de secuencias decimadas que constituyen la secuencia
un único estado del LFSR secundario. Cuando este LFSR
entrelazada. Como ejemplo ilustrativo, podemos decir que el
alcanza dicho estado, el polinomio pi (x) actua sobre el LFSR
DLFSR definido en [12] utiliza 4 polinomios p1 (x), p2 (x),
principal. Por tanto sólo 4 estados del secundario modifican
p3 (x) y p4 (x) de la siguiente manera: p1 (x) genera 9 bits
la realimentación del registro principal. Los 4 polinomios se
consecutivos, p2 (x) 5 bits, p3 (x) un único bit y p4 (x) genera
aplican siguiendo una rotación cı́clica. Sumando el número de
16 bits consecutivos de su correspondiente PN secuencia. A
bits consecutivos e1 , e2 , e3 , e4 generados respectivamente por
continuación p1 (x) generarı́a de nuevo 9 bits y ası́ sucesiva-
p1 (x), p2 (x), p3 (x), p4 (x), se obtiene el perı́odo completo de
mente. Por tanto en este ejemplo tendrı́amos Ns = 31 y la
la secuencia producido por el LFSR secundario, esto es
ecuación (4) se podrı́a reescribir como
4
X 4
ei = 25 − 1 = 31.
Y
(3) M= A9p1 · A5p2 · Ap3 · A16
p4 , (5)
i=1 i=1

Por otra parte, el cifrador en flujo Rakaposhi [13] es un donde Api es una matriz n × n cuyo polinomio caracterı́stico
DLFSR compuesto por un LFSR principal de longitud n = es el polinomio pi (x) aplicado al DLFSR.
192 bits con Np = 4 polinomios de realimentación de grado El polinomio caracterı́stico cM (x) de la matriz M determina
192. El módulo de control es un registro de desplazamiento el perı́odo TM de las secuencias decimadas. Nótese que las
con realimentación no lineal (NLFSR) de 128 celdas, dos Ns secuencias decimadas tienen el mismo polinomio carac-
de las cuales se emplean para seleccionar el polinomio de terı́stico [14]. Por tanto, el perı́odo T de la secuencia total
realimentación del LFSR principal. Por tanto, e1 , e2 , e3 , e4 se viene dado por
determinan dinámicamente mediante los valores que toman 2 T = TM · Ns . (6)
bits del NLFSR.
Por otro lado, el DLFSR establece que las secuencias decima-
das se generan con un LFSR de n etapas, luego la complejidad
III. P ER ÍODO Y COMPLEJIDAD LINEAL DE LAS lineal de estas secuencias es n y la complejidad lineal total es
SECUENCIAS GENERADAS
LC = n · Ns . (7)
Desde un punto de vista criptográfico, el perı́odo y la
complejidad lineal son dos indicadores fundamentales de la IV. G ENERACI ÓN DE SECUENCIAS CON MAYORES
pseudoaleatoriedad de una secuencia. Ambas propiedades se PER ÍODOS Y COMPLEJIDADES
definen tal y como sigue. A partir de las ecuaciones (6) y (7) se observa que si el
Definición 1. Sea s = (s0 , s1 , s2 , . . .) = (s(t)) t ≥ 0 una polinomio caracterı́stico cM (x) fuera primitivo, entonces se
secuencia binaria. Si existe un entero r > 0 tal que s(t) = alcanzarı́a el perı́odo máximo. En algunos casos, por ejemplo
s(t + r) para todo t ≥ 0, entonces la secuencia s se dice en [12], se puede seleccionar el binomio (Np , ei ) óptimo para
periódica y su perı́odo, representado por T (s), es r. obtener un polinomio cM (x) primitivo [14]. Sin embargo en
Definición 2. La complejidad lineal de una secuencia s, otros casos, la única manera de aumentar el perı́odo consiste
representada por LC, es la longitud del LFSR más corto que en incrementar el número Ns de secuencias decimadas. Al
puede generar dicha secuencia. mismo tiempo, el incremento de Ns también aumenta el valor
Para determinar el perı́odo y la complejidad lineal de de la complejidad lineal. Nótese sin embargo que la relación
las secuencias producidas por DLFSRs, hay que tener en complejidad lineal/perı́odo o n/TM es constante para todo
cuenta que dichas secuencias son secuencias entrelazadas en esquema DLFSR; es decir la razón n/TM es la misma en las
el sentido dado en [7]. Es decir que la secuencia de salida secuencias generadas por un DLFSR o por un simple LFSR.
de un DLFSR puede descomponerse en diferentes secuencias Aunque todos los generadores basados en DLFSR persiguen
decimadas, todas ellas generadas por el mismo polinomio de aumentar el número de secuencias decimadas Ns , se pueden
realimentación. Una secuencia decimada wj (t) se construye agrupar en distintas categorı́as en función del modo en que se
tomando uno de cada Ns bits de la secuencia s(t) empezando consigue dicho aumento. Ası́, tanto en el sistema presentado
en s(j), es decir wj (t) = s(j + tNs ) t ≥ 0. Este hecho ya fue en [12], como en la configuración del sistema propuesto en
señalado en [14] dando lugar a un modelo matemático para la [10] cuando l = 1, se utiliza un número de polinomios Np
generación de números pseudoaleatorios mediante DLFSRs, que se aplican siempre en el mismo orden, generando cada
66 A. Peinado, J. Munilla, A. Fúster Sabater

uno de ellos un número de bits constante y determinando un Módulo de control de la realimentación


Polinomio de realimentación
modo de funcionamiento definido por la siguiente expresión
a1 a2 a3 ... am
Np
CLK2
Y
M= Aepii , (8)
i=1 contador Selección del polinomio

lo que determina que el número total de secuencias deci-


madas Ns sea Polinomio de realimentación

sj
Np CLK
b1 b2 b3 ... bn
X
Ns = ei , (9) sj-1 sj-2 sj-3 sj-n

i=1
Figura 3. Arquitectura de DLFSR con esquema dinámico variable
En otras ocasiones, como en [15], o en el caso general
(l > 1) de [10], los sistemas DLFSR aumentan Ns utilizando
los distintos polinomios siempre en el mismo orden, pero ge- IV-A. Generador propuesto basado en DLFSR
nerando cada uno de ellos un número de bits diferente cada vez En esta sección se propone un diseño de DLFSR genérico,
que se aplican. La expresión que describe su funcionamiento en el que se combinan aspectos de la segunda y tercera
es la siguiente: categorı́a, manteniendo unos valores elevados de complejidad
lineal y perı́odo con una estructura interna más robusta.
Lm
Y Utilizando la notación introducida en la sección II, este sistema
M= AepiimodNp , (10) utiliza un LFSR de n celdas y Np polinomios, donde cada
i=1 polinomio pi (x) genera un número pseudoaleatorio de bits
cada vez que se aplica. La regla de selección establece que
siendo Lm la longitud de una secuencia pseudoaleatoria el orden de aplicación de los polinomios sea pseudoaleatorio,
secundaria, lo que determina un número de secuencias de- y el módulo de control se compone de un LFSR adicional
cimadas Ns = mcm(Nr , Np ), donde y un contador, lo que determina un esquema independiente
del LFSR principal (Fig. 3). A continuación de describen los
Lm
X componentes del sistema propuesto.
Nr = ei , (11) LFSR principal. Es un LFSR de n etapas con Np po-
i=1
linomios de realimentación primitivos que se irán aplicando
donde ei < n. Por último, propuestas como [1], [4], [9], siguiendo un orden pseudoaleatorio marcado por el LFSR
utilizan un conjunto de polinomios que se aplican siguiendo secundario.
un orden pseudoaleatorio, pero generando un único bit en LFSR secundario. Es un LFSR controlado por reloj, de
cada ocasión. El modelo que define el funcionamiento viene longitud m y polinomio primitivo de grado m, que controla
determinado por la siguiente expresión el polinomio de realimentación del LFSR principal mediante
a) k1 de sus bits para la selección de dicho polinomio y b) un
Ns
contador decreciente que se inicializa con k2 ≤ log2 n de sus
M=
Y
Apzi , (12) bits.
i=1
Contador. Es un contador que realiza siempre una cuenta
atrás completa a partir del valor que determina el LFSR
donde 1 ≤ zi ≤ Np , siendo zi el valor determinado en secundario. Al mismo tiempo, el contador controla el reloj de
el instante i por una secuencia pseudoaleatoria de longitud este LFSR secundario. De este modo, cada vez que el contador
Ns generada por el modulo de control de realimentación llega a cero, el LFSR secundario genera un nuevo bit, cambia
del DLFSR. En consecuencia, la matriz M es difı́cilmente su estado y reinicializa el contador con un nuevo valor. En
calculable, aunque el perı́odo y la complejidad lineal se pueden ese mismo instante, el polinomio de realimentación del LFSR
estimar con las mismas expresiones generales de las categorı́as principal se modifica, puesto que está controlado por k2 bits
anteriores. del LFSR secundario.
De las tres categorı́as reseñadas, la primera ecuación (8) El proceso de generación se detalla tal y como sigue:
genera secuencias con una estructura interna que presenta una Los LFSRs se inicializan con las correspondientes semi-
alta linealidad, lo que facilita su criptoanálisis. La segunda llas.
ecuación (10) es la que permite generar perı́odos mayores. El contador se inicializa con el estado de k2 bits del
La tercera categorı́a ecuación (12), aunque presenta perı́odos LFSR secundario.
menores que las anteriores, tiene una estructura interna mucho El LFSR principal comienza a generar bits con el poli-
más robusta. nomio que determinan k1 bits del LFSR secundario.
67

Simultáneamente el contador comienza la cuenta atrás Tabla I


hasta alcanzar el valor 0. En ese momento, se activa la C OMPARACI ÓN DE RESULTADOS
señal de reloj CLK2 para que el LFSR secundario genere Generador Np Ns
un nuevo bit.
Rakaposhi (192,128) 4 2128
El nuevo estado del LFSR secundario determina, me-
Nuevo DLFSR (192,128) 4 (2128 − 1) · (26 )
diante k1 bits el nuevo polinomio del LFSR principal, y
Mita DLFSR (192,128) 4 2128 − 1
mediante k2 el nuevo valor del contador para que inicie
la cuenta atrás.
En consecuencia, tanto el orden en el que se aplican los
polinomios de realimentación como los bits que genera cada Ns = Nr ≤ (25 − 1) · (2k2 − 1) = 248, (14)
uno vendrán determinados mediante una secuencia pseudo-
aleatoria generada por el LFSR secundario. De esta forma, lo que supone una mejora de aproximadamente un orden de
el comportamiento del DLFSR queda determinado por la magnitud. Sin embargo, estas configuraciones no se correspon-
expresión den con los valores de las implementaciones reales. Por ello, se
ha realizado una comparación (tabla I) con el DLFSR utilizado
Lm
Y en el cifrador Rakaposhi [4] que utiliza un LFSR principal de
M= Aepiz , (13) 192 celdas y un NLFSR secundario de 128. Al pertenecer este
i
i=1
DLFSR a la segunda categorı́a (10), el número de secuencias
siendo Lm = 2m − 1 la longitud de la secuencia generada decimadas Ns se corresponde directamente con la longitud de
por el LFSR secundario, y el número de secuencias decimadas la secuencia generada por el NLFSR, es decir, Ns = 2128 .
Ns = Nr se calcula aplicando (11). Además, 1 ≤ zi ≤ Np , Si se configura el DLFSR propuesto con un LFSR principal
siendo zi el valor determinado en el instante i por k1 celdas de 192 celdas y un LFSR secundario de 128, se necesitarı́an
del LFSR secundario. k1 = 2 celdas para seleccionar los Np = 4 polinomios y
k2 = 7 celdas para indicar el número de bits consecutivos que
V. C OMPARACI ÓN DE RESULTADOS
cada polinomio debe generar. En consecuencia, como indica
La mejora de la complejidad lineal y del perı́odo de las la tabla I, el número de secuencias Ns se puede aproximar
secuencias generadas por el DLFSR propuesto en este trabajo como
queda patente a través de las expresiones de la sección
anterior. Con el fin de ilustrar esta mejora se han realizado Ns = Nr ≤ (2128 − 1) · (2k2 −1 ) (15)
diversas comparaciones con algunos de los DLFSR citados
previamente. Dado que la relación entre la complejidad lineal El DLSFR propuesto en este trabajo incrementa Ns , y por
y el perı́odo de las secuencias generadas por un DLFSR se tanto la complejidad lineal y el perı́odo, en un factor de
mantiene constante, las comparaciones se han realizado sobre (2k2 − 1) con respecto a la que se obtiene con el cifrador
el número Ns de secuencias decimadas, que es el valor que Rakaposhi. Por último, para completar la comparación, se
determina el incremento tanto de la complejidad lineal como analiza el DLFSR genérico propuesto en [12] para los mismos
del perı́odo. Ası́, el DLFSR(15,6) propuesto por Mita et al valores del cifrador Rakaposhi. Se obtiene Ns = 2128 − 1, que
en [12], perteneciente a la primera categorı́a de DLFSRs (8), es muy similar al valor obtenido para el cifrador Rakaposhi.
compuesto de un LFSR principal de 16 celdas, otro secundario La diferencia reside en la estructura interna de las secuencias
de 5 celdas y cuatro polinomios de realimentación, presenta generadas en [12], que permite a un atacante criptoanalizarlas
un valor Ns = 25 − 1 = 31 determinado por la longitud de la con facilidad.
secuencia generada por el LFSR secundario.
Si configuramos el generador propuesto en este trabajo con VI. C ONCLUSIONES
los mismos valores, LFSR principal de 16 celdas y secundario En la actualidad numerosos generadores de secuencia ci-
de 5 celdas, se tendrı́an que utilizar k1 = 2 celdas del frante para uso criptográfico pertenecen al grupo de genera-
LFSR secundario para seleccionar los Np = 4 polinomios dores DLFSR.
de realimentación, y k2 = 4 celdas para indicar el número de En este trabajo se ha desarrollado un nuevo tipo de gene-
bits que generará cada polinomio. Es importante recordar que rador DLFSR que mejora la complejidad lineal y el perı́odo
cada polinomio de realimentación no debe generar más de n de las secuencias producidas. Para ello, se ha partido de una
bits consecutivos, siendo n el grado del polinomio, para evitar clasificación de los sistemas basados en DLFSR en función
posibles criptoanálisis. El número de secuencias decimadas de la técnica empleada para aumentar Ns (el número de
Ns , según indica la ecuación (11) es la suma Nr del valor secuencias decimadas que conforman la secuencia entrelazada
decimal de todos los estados por los que pasan los k2 bits. global); se ha modelado su funcionamiento a partir del modelo
En este caso, k2 = 4 determina la selección de 4 celdas de propuesto en [14]; y se ha propuesto un nuevo tipo que
entre las 5 del LFSR secundario. Por tanto, el perı́odo de estas combina las ventajas de los anteriores, mejorando complejidad
k2 = 4 celdas seguirá siendo 25 − 1, aunque la suma de los lineal y perı́odo y disminuyendo la linealidad de la estructura
estados que se suceden se aproxima por la siguiente expresión interna del generador.
68 A. Peinado, J. Munilla, A. Fúster Sabater

El esquema propuesto está formado por dos LFSRs y [15] A. Peinado, J. Munilla, A. Fúster-Sabater, “Improving the Period and
un contador combinados de manera que el reloj del LFSR Linear Span of the Sequences Generated by DLFSRs,” 7th International
Conference on Computational Intelligence in Security for Information
principal está controlado por el contador, que a su vez está con- Systems, CISIS 2014, Bilbao, Spain, 25th-27th June, 2014
trolado por el LFSR secundario. El efecto que se consigue es [16] P. Rosinger, B. Al-Hashimi, N. Nicolici, “Dual multiple-polynomial
que los polinomios de realimentación se apliquen siguiendo LFSR for low-power mixed-mode BIST,” IEEE Proc. Comput. Digital
Tech., vol. 150 , pp. 209–217, 2003.
un orden pseudoaleatorio y que cada uno de estos polinomios
genere un número de bits consecutivos determinados también
de forma pseudoaleatoria.
Por último se han comparado los valores del parámetro Ns
que utilizan algunos de los generadores basados en DLFSR
que se han propuesto recientemente, como es el caso del
cifrador Rakaposhi.

AGRADECIMIENTOS
Este trabajo ha sido parcialmente financiado por el MICINN
en el marco del proyecto “TUERI: Tecnologı́as segUras y
Eficientes para las Redes inalámbricas en la Internet de las
cosas con aplicaciones en transporte y logı́stica”, TIN2011-
25452; y por la Universidad de Málaga, Andalucı́a Tech.

R EFERENCIAS
[1] S. Babbage, M. Dodd, “The MICKEY Stream Ciphers,” in New Stream
Cipher Designs. The eSTREAM Finalists, M. Robshaw, O. Billet, Eds.
LNCS 4986, Springer-Verlag, 2008, pp. 191–209.
[2] A. Bogdanov, B. Preneel, V. Rijmen, “Security Evaluation of the
K2 Stream Cipher,” Internal report, Katholieke Universiteit Leuven,
ESAT/SCD-COSIC, March 2011.
[3] W. Che, H. Deng, X. Tan, J. Wang, “A Random Number Generator for
Application in RFID Tags,” in Networked RFID Systems and Lightweight
Cryptography. Springer: Berlin/Heidelberg, Germany, 2008, Chapter 16,
pp. 279–287.
[4] C. Cid, S. Kiyomoto, J. Kurihara, “The RAKAPOSHI Stream Cipher,”
in Information and Communications Security, LNCS 5927[C], Springer-
Verlag, 2009, pp. 32–46.
[5] L. Ding, J. Guan, “Cryptanalysis of Mickey family of stream ciphers,”
Security and Communication Networks, vol. 6 (8), pp. 936–941, 2013.
[6] S.W. Golomb, “Shift-Register Sequences,” revised edition, Aegean Park
Press, Laguna Hill, California, 1982.
[7] G. Gong, “Theory and Applications of q-ary interleaved sequences,”
IEEE Transactions on Information Theory, vol. 41 (2), pp. 400–411,
1995.
[8] S. Hellebrand, J. Rajskia, S. Tarnick, S. Venkataraman, B. Courtois,
“Built-in test for circuits with scan based on reseeding of multiple-
polynomial linear feedback shift registers,” IEEE Trans. Comput., vol.
44, pp. 223–233, 1995.
[9] S. Kiyomoto, T. Tanaka, K. Sakurai, “K2: A stream cipher algorithm
using dynamic feedback control,” in Proceedings of SECRYPT, J. Her-
nando, E. Fernández-Medina, M. Malek, Eds. INSTICC Press, 2007, pp.
204–213.
[10] J. Meliá-Seguı́, J. Garcı́a-Alfaro, J. Herrera-Joancomartı́, “J3Gen: A
PRNG for Low-Cost Passive RFID,” Sensors, vol. 13, pp. 3816– 3830,
2013.
[11] J. Meliá-Seguı́, J. Garcı́a-Alfaro, J. Herrera-Joancomartı́, “A practical
implementation attack on weak pseudorandom number generator designs
for EPC Gen2 Tags,” Wirel. Pers. Commun., vol. 59, pp. 27– 42, 2011.
[12] R. Mita, G. Palumbo, S. Pennisi, M. Poli, “Pseudorandom bit generator
based on dynamic linear feedback topology,” Electronic Letters, vol. 38
(19), pp. 1097– 1098, 2002.
[13] M.A. Orumiehchiha, J. Pieprzyk, E. Shakour, R. Steinfeld, “Security
Evaluation of Rakaposhi Stream Cipher,” in Information Security Practi-
ce and Experience, 9th International Conference, ISPEC 2013, R. Deng,
T. Feng, Eds. LNCS 7863, Springer-Verlag, 2013, pp. 361–371.
[14] A. Peinado, A. Fúster-Sabater, “Generation of pseudorandom binary
sequences by means of LFSRs with dynamic feedback,” Mathematical
and Computer Modelling, vol. 57 (11-12), pp. 2596–2604, 2013.
RECSI 2014, Alacant, September 2-5 2014

Privacy-Preserving Group Discounts


Josep Domingo-Ferrer Alberto Blanco-Justicia
Departament d’Enginyeria Departament d’Enginyeria
Informàtica i Matemàtiques Informàtica i Matemàtiques
Universitat Rovira i Virgili Universitat Rovira i Virgili
Email: josep.domingo@urv.cat Email: alberto.blanco@urv.cat

Abstract—How can a buyer legitimately benefit from group payment scheme and wireless communication technologies;
discounts while preserving his privacy? We show how this can the latter technologies should be short-range in applications
be achieved when buyers can use their own computing device (e.g. where one wants to check that the group members are
smartphone or computer) to perform a purchase. Specifically, we
present a protocol for privacy-preserving group discounts. The physically together. Section III describes our actual group
protocol allows a group of buyers to prove how many they are size accreditation method, including the required entities and
without disclosing their identities. Coupled with an anonymous protocols. In Section IV, we give a complexity estimation of
payment system, this allows group discounts to be compatible our proposal. Section V sketches conclusions and future work
with buyer privacy. ideas.
Keywords—Buyer privacy, Group discounts, Cryptographic
protocols, Digital signatures II. B UILDING B LOCKS
Our group size accreditation method is based on an identity-
I. I NTRODUCTION
based dynamic threshold (IBDT) signature scheme, namely a
Group discounts are offered by vendors to encourage con- particular case of the second protocol proposed in [7].
sumers to use their services, to promote more efficient use Threshold signature schemes are commonly based on (t, n)-
of resources, to protect the environment, etc. Examples in- threshold secret sharing schemes, such as the ones introduced
clude group tickets for museums, stadiums or leisure parks, in [1] and [12], and they require a minimum number t of
discounted highway tolls or parking fees for high-occupancy participants to produce a valid signature. Dynamic threshold
vehicles, etc. It is common for the vendor to require all group signature schemes differ from the previous ones in that the
members to identify themselves, but in reality this is seldom threshold t is not fixed during the setup phase, but is declared
strictly necessary. at the moment of signing. Our method takes advantage of this
We make the assumption that the important feature about the feature to find out how many users participated in the signature
group is the number of its members, rather than their identities. of a particular message, and consequently how many people
A secondary feature that may often (not always) be relevant form a group. If one wishes to prove that the signature is not
for a group discount is whether group members are physically only computed by at least t participants, but also that these
together. are together in the same place, the above signature schemes
Anonymously proving the number of group members and need to be complemented with short-range communication
their being together is trivial in a face-to-face setting with a technologies.
human verifier, who can see that the required number of people On the other hand, identity-based public key signature
are present. However, with an automatic verifier and/or in an schemes, theorized by Shamir in [13] and with the first
on-line setting, this becomes far from obvious. concrete protocol, based on the Weil pairing, developed by
In this paper, we propose a method to prove the number of Boneh et al. in [3], allow public keys pkU to be arbitrary
people in a group while preserving the anonymity of group strings of some length, which we call identities. These strings
members and without requiring specific dedicated hardware, are associated with a user U and reflect some aspect of his
except for a computing device with some wireless commu- identity, e.g. his email address. The corresponding secret key
nication capabilities (e.g. NFC, Bluetooth or WiFi). Also, we skU is then computed by a trusted entity, the certification
explore the option to include payment in our proposed system, authority (CA), taking as input the user’s identity and, possibly,
which is necessary for group discounts. We complete the some secret information held only by the CA, and is sent
description of our method with a possible anonymous payment to the user U through some secure channel. Identity-based
mechanism, scratch cards. The method presented here is a public key signature schemes offer a great flexibility in key
generalization of a specific protocol for toll discounts in high- generation and management and our method takes advantage
occupancy vehicles, whose patent we recently filed [6]. of this feature by proposing a key management scheme that
The rest of the paper is structured as follows. Section II allows preserving the anonymity of the participants.
describes the building blocks of our method, namely a digital Finally, in most group discounts, a fee must be paid after
signature scheme, a key management scheme, an anonymous proving the number of group members, so an anonymous
70 J. Domingo-Ferrer, A. Blanco-Justicia

payment method is needed. Indeed, this method should not Verify (pms, mpk, Msg, σ) = 1
reveal additional information about the group members to the
whenever the values pms, mpk, msk have been obtained by
service provider.
properly executing the Setup algorithm, |St | ≥ t, and for each
A. IBDT Signature Scheme id ∈ St , σid ← Sign(pms, mpk, SKid , Msg, Γ) and SKid ←
We outline a general identity-based dynamic threshold sig- Keygen(pms, mpk, msk, id).
nature scheme, namely the second protocol proposed in [7]. B. Key Management
Our protocol will be a slight modification of this general case;
The anonymity provided by our accreditation method is a re-
we will point out differences when needed. A general IBDT
sult of our key generation protocol and management solution.
signature scheme consists of the following five probabilistic
As we stated above, identity-based public key cryptosystems
polynomial-time algorithms.
allow using arbitrary strings as public keys. In our protocol,
IBDT 1. Setup is a randomized trusted setup algorithm that every user Ui is given an ordered list of public keys that
takes as input a security parameter λ, a universe of identities depend on some unique identifier of the user, such as his
ID and an integer n which is the upper bound on the size of national identity card number, his phone number, the IMEI
the threshold policies, i.e. the maximum number of users that number of his phone or a combination of any of them. We
can participate in a threshold signature. It outputs a set of will call this identifier nUi = dik dik−1 . . . di1 , where dij is the
public parameters pms and a master key pair msk and mpk. j-th last digit of nUi and typically ranges from 0 to 9.
An execution of this algorithm is denoted as To generate the list of public keys from an identifier nUi ,
we choose a value ` < k and take the ` last digits of nUi .
(pms, mpk, msk) ← Setup (λ, ID, n) .
This results in a vector of public keys
IBDT 2. Keygen is a key extraction algorithm that takes as n i
d di
o
input the public parameters pms, the master key pair msk and PKUi = pk11 , . . . , pk` ` ,
mpk, and an identity id ∈ ID. The output is a private key di
SKid . An execution of this algorithm is denoted as with every pkj j being an encoding of the digit and its position
in nUi , for example:
SKid ← Keygen (pms, mpk, msk, id) .
di
pkj j = j || dij ,
IBDT 3. Sign is a randomized signing algorithm that takes
as input the public parameters pms, the master public key where || is the concatenation operation. To illustrate this
mpk, a user’s secret key SKid , a message Msg ∈ {0, 1}∗ and process, imagine nUi = 12345678 and ` = 4. The resulting
a threshold signing policy Γ = (t, S) where S ⊂ ID and public key list would be
1 ≤ t ≤ |S| ≤ n. Note that, in our case, t will be strictly
equal to |S|. It outputs a partial signature σid . We denote an PKUi = {18, 27, 36, 45} .
execution of this algorithm as To prove the number of members in a group, the members
σid ← Sign (pms, mpk, SKid , Msg, Γ) . will choose a common integer j ∈ {1, . . . , `} so that the j-th
di
public key in their list, i.e. pkj j , is different for all of them.
IBDT 4. Comb is a deterministic signing algorithm which Then they will perform the required operations with these
takes as input the public parameters pms, the master public public keys and their corresponding private keys. Assuming
key mpk, a message Msg, a threshold signing policy Γ = (t, S) that the values of the digits range from 0 to 9, this would
and the partial signatures of the set St , with |St | ≥ t (again, provide anonymity to each of the users, since on average 10%
|St | = t in our case), and outputs a global signature σ. We di
denote the action taken by the signing algorithm as of people will share the same public key pkj j for some value
of j.
σ ← Comb (pms, mpk, SKid , Msg, Γ, {σid }id∈St ) . Note that this approach limits the size of the groups that can
be certified with our method to a maximum of 10. Moreover,
IBDT 5. Verify is a deterministic verification algorithm that
intuition tells us that the closer the size of the group to this
takes as input the public parameters pms, a master public key
maximum size, the more difficult it becomes to find a value
mpk, a message Msg, a global signature σ and a threshold
of j for which each user has a different public key. The
policy Γ = (t, S). It outputs 1 if the signature is deemed valid
probability that our protocol fails depends on the number of
and 0 otherwise. We denote an execution of this algorithm as
keys each user is given, `, and the size of the group n; more
b ← Verify (pms, mpk, Msg, σ, Γ) . specifically for n ≤ 10:
`
For correctness, for any λ ∈ N, any integer n ∈ poly(λ),

10(10 − 1) . . . (10 − n + 1)
any universe ID, any set of public parameters and master key F (`, n) = 1 − ,
10n
pair (pms, mpk, msk), and any threshold policy Γ = (t, S)
that is very close to 1 for values of n close to 10.
where 1 ≤ t ≤ |S|, it is required that for
The limit on the maximum value of n can be increased by
σ = Comb (pms, mpk, SKid , Msg, Γ, {σid }id∈St ) , assigning d ≥ 2 digits of nUi to each of the ` public keys,
Anonymous and Contactless Accreditation Method for Groups of Users 71

instead of just one digit. By doing this, the maximum value both Bluetooth and WiFi, which is desirable in a method like
for the size of the groups becomes 10d , and the probability of ours. Finally, BLE is implemented by most major smartphone
failure, for values of n ≤ 10d , is manufacturers, at least in recent models, unlike NFC.
` Regarding communication between the smartphones, any
10d (10d − 1) . . . (10d − n + 1)

F (`, n, d) = 1 − . of the three mentioned technologies, or a combination of
10dn them (e.g. Bluetooth pairing through NFC messages) seems
However, the price to be paid for choosing a larger d is a appropriate. The choice is up to the service provider.
loss of anonymity, since, if more digits are associated to each
public key, less users share the same public key. For example, III. G ROUP S IZE ACCREDITATION M ETHOD
for d = 2 a user would share each of his keys with only 1%
of the total number of users. The service provider will choose A service that implements our accreditation method includes
` and d depending on maximum number of keys that a user the following elements:
can store, the maximum allowed group size and the anonymity • A service provider (SP) that publishes a smartphone
level to be guaranteed. application AppU and distributes the necessary public
parameters and keys of an IBDT signature scheme Π to
C. Anonymous Payment Mechanisms
users, after some registration process.
Group discounts are one of the applications of our method: • A smartphone application AppU for each user U which:
after proving the group size, the group members must pay
– allows computing signatures with Π on behalf of U ;
a fee that depends on that size. If proving the size has been
– allows computing ciphertexts with a public-key encryp-
done anonymously, it would be pointless to subsequently use a
tion scheme Π0 selected by SP, under SP’s public key
non-anonymous payment protocol (such as credit card, PayPal,
pkSP ;
etc.).
– can be run on master or slave mode, which affects how
Hence, we need to use an anonymous payment mechanism AppU participates in the accreditation protocol.
along with our group size accreditation protocol. Electronic – includes some certificate which allows checking the
cash protocols such as [4] are good candidates for this validity of pkSP ;
role. Nowadays, Bitcoin [10] is a well-established electronic – implements some communication protocol, relying in
currency and, although it is not anonymous by design [11], short-range communication technologies, such as NFC
it can be a good solution if accompanied by careful key or Bluetooth, to interact with the applications of the
management policies. Also, extensions of the original protocol rest of the members of the group and with the verifying
as Zerocoin [9] provide anonymity by design. devices.
In this work we propose a much simpler approach based
• Prepaid payment scratch cards available at stores. Each
on prepaid scratch cards that users can buy at stores. Each
card includes a code Pay.Code that the SP associates
such card contain a code Pay.Code which the service provider
to an account with a fixed credit specified by the card
will associate with a temporal account holding a fixed credit
denomination.
specified by the card denomination.
• Verifying devices installed at suitable places in the
D. Communication Technologies provider’s infrastructures which:
Our accreditation method requires communication among – allow verifying signatures with Π;
the members of a group and between the members and some – hold the SP certificates as well as the keys needed to
type of verifying device. If we want to prove not only that a decrypt ciphertexts produced with Π0 under pkSP .
group has a certain number of members, but also that these – have short-range communication capabilities and im-
are together, the interactions with the verifying device must plement some protocol to communicate with the users’
rely on short-range communication technologies, like NFC, devices.
Bluetooth or WiFi. • Some method to penalize or prevent the misuse of the
During the accreditation protocol, the users’ smartphones system.
will be detected in some way by the verifying device and a The complete accreditation protocol runs as follows:
communication channel will be established. The requirements
and constraints of this process depend on the type of service Protocol 1. System setup protocol.
and verifying devices, but nonetheless it is desirable that 1) SP chooses the user identifier to be used as nU and
communication establishment be fast and not too cumbersome appropriate values for ` and d.
to the user. 2) SP generates the parameters of the IBDT signature
We propose to use Bluetooth, and in particular Bluetooth scheme Π as per Algorithm IBDT.Setup;
Smart (BLE) [2] to communicate with the verifying device.
3) SP generates the parameters of the public-key encryption
BLE solves some of the main limitations of traditional Blue-
scheme Π0 .
tooth, i.e. reduces detection and bonding times, requires much
less work by the user than NFC and has a shorter range than Protocol 2. Registration protocol.
72 J. Domingo-Ferrer, A. Blanco-Justicia

1) A user U with identifier nU authenticates himself to the it proves that the group of users is composed of at least
service provider, face-to-face or by some other means. t people. If the signature is not valid, the group will
The user receives a PIN code pinU . be penalized in an application-dependent way, e.g. with
2) The service provider associates to U a vector of public access denial, group discount denial, etc. Otherwise, the
keys of Π, PKid as described in Section II-B. service provider grants access to the group of users and
3) The service provider computes the secret keys associated tells the group the amount amountt they have to pay
to PKid as per Algorithm IBDT.Keygen: depending on the group size.
 id
did

d
SKid = sk1 1 , . . . , sk` ` . Protocol 6. Payment.
1) Each group member U in the (sub)set P of group
4) The user downloads the smartphone application AppU members who want to collaborate in paying the bill sends
and, using the PIN code pinU , completes the registration to the verifying device via Bluetooth or WiFi his payment
protocol and receives the system parameters and keys, as code encrypted under SP’s public key:
well as the public key pkSP .
CU = EncpkSP (T||Pay.CodeU ),
Protocol 3. Credit purchase.
where Pay.CodeU is the code which user U obtained from
1) A user buys a prepaid card for the system, e.g. a scratch
a prepaid scratch card and where Enc is the public-key
card, from a store.
encryption algorithm of scheme Π0 .
2) The card includes some code Pay.Code which has to be
2) The verifying device decrypts the ciphertexts {CU : U ∈
introduced in the smartphone application.
P } to obtain the payment codes of the users in P .
Protocol 4. Group setup protocol. 3) The verifier device substracts the quantity amountt di-
1) Some user U ∗ , among the group of users U1 , . . . , Ut who vided by the cardinal of P to the accounts associated
want to use the service, takes the leading role. This user with the received payment codes.
will be responsible for most of the communication with IV. P ERFORMANCE A NALYSIS
the verifying device. U ∗ sets his smartphone application
to run in master mode and the others set it to work in Our group size accreditation method is to be run by service
slave mode. providers, specialized verifying devices and the users’ smart-
2) The users agree on a value j ∈ {1, 2, . . . , `} such that phones. Therefore, it is important that the computations of
the value of the j-th public key in PKid is different for the underlying cryptographic protocol be as fast as possible,
every user. especially the algorithms that are executed by the smartphones,
which have limited computational capabilities and rely on
Protocol 5. Group size accreditation protocol. batteries.
1) A verifying device detects the users’ devices and sends In this section, we analyze the performance of the under-
them a unique timestamped ticket T that may include a lying IBDT signature scheme. This scheme is a pairing-based
description of the service conditions and options. cryptographic protocol and as such, the required operations are
2) Each user Ui runs Algorithm IBDT.Sign to compute a performed in elliptic curve groups. We analyze its performance
di by counting the number of point multiplications, point expo-
partial signature with Π under his secret key skj j on
message nentiations and pairings, which are the most costly operations.
  Table I shows the number of these operations for each of
d1 dt the algorithms in the IBDT signature scheme. The number of
Msg = T || pkj j || . . . || pkj j ,
operations is counted as a function of the maximum number
d1 dt of possible participants in a signature, n, and the size of the
for the threshold predicate Γ = (t, {pkj j , . . . , pkj j }). It signing group t. As we stated previously, t ≤ n.
sends the resulting partial signature σi to U ∗ .
3) U ∗ receives (σ1 , . . . , σt ) and runs Algorithm TABLE I
O PERATIONS REQUIRED PER ALGORITHM
IBDT.Comb to combine these signatures and output a
final signature σ on behalf of U1 , . . . , Ut . U ∗ sends to
Multiplications Exponentiations Pairings
the verifying device
Setup 0 n+4 1
Msg0 = hMsg, σi . Keygen 2n 4n 0
Sign 2n + 6 2n + 5 0
4) The verifier device checks the validity of the signature by Comb 2n − t + 1 2n − t 0
running Verify n+2 n+1 4
d1 dt
IBDT.Verify(Msg, σ, pkj j || . . . ||pkj j , t).
Note that the IBDT.Sign and IBDT.Comb algorithms, that
Note that this signature will only be valid if all users are intended to be executed in the users’ smartphones during
U1 , . . . , Ut have collaborated in computing it, and thus the group size accreditation protocol (5), present what seems
Anonymous and Contactless Accreditation Method for Groups of Users 73

to be a quite high number of operations. This might be a Future work will consist of developing a generic app for
problem if the devices in which these algorithms are to be privacy-preserving group discounts that can be easily cus-
executed do not have enough computational power. Moreover, tomized for specific applications.
these two algorithms should precisely be most efficient, since
ACKNOWLEDGMENTS AND DISCLAIMER
they are run most often, and possibly with time constraints.
Therefore, it would be interesting if we could precompute This work was partly funded by Google through a Faculty
some of their operations. Research Award to the first author, who is also partially
The IBDT.Sign algorithm is a probabilistic protocol, that supported by the Government of Catalonia through an ICREA
is, it has some random values in it that have to be refreshed Acadèmia Prize. The following partial supports are also grate-
each time it is executed. This limits the amount of operations fully acknowledged: the Spanish Government under projects
in the algorithm that can be precomputed. On the other hand, TIN2011-27076-C03-01 “CO-PRIVACY” and CONSOLIDER
most of the operations depend on static values, e.g. keys and INGENIO 2010 CSD2007-00004 “ARES”, and the European
threshold policies Γ. Threshold policies contain the number Commission under FP7 projects “DwB” and “Inter-Trust”. The
of signers that will participate in a signature and their public authors are with the UNESCO Chair in Data Privacy, but they
keys. We assume that groups of users will be quite stable, i.e. are solely responsible for the views expressed in this paper,
users will generally use services together with the same group which neither necessarily reflect the position of UNESCO nor
members, or at least with a limited set of different groups. We commit that organization.
can exploit this assumption by precomputing operations that
only depend on static values and threshold policies. R EFERENCES
The IBDT.Comb algorithm obviously depends on the output
[1] G. R. Blakley, “Safeguarding cryptographic keys,” Proceedings of the
of IBDT.Sign, but it is a deterministic algorithm and some of National Computer Conference, pp.313–317, New York: AFIPS Press,
its operations depend on static values and also on the threshold 1979.
policies. Therefore, by the same assumption as before, we can [2] Bluetooth SIG, “Specification of the Bluetooth System,” 2013. Available
in https://www.bluetooth.org/en-us/specification/adopted-specifications.
precompute some of the operations. [3] D. Boneh and M. Franklin, “Identity-based encryption from the Weil
These precomputations will divide the IBDT.Sign and pairing,” Advances in Cryptology–CRYPTO 2001, LNCS 2139, pp. 213–
IBDT.Comb algorithms in two phases each, one for precom- 229, Springer, 2001.
[4] D. Chaum, A. Fiat and M. Naor, “Untraceable electronic cash,” Advances
puting values, which will be executed during the group setup in Cryptology–CRYPTO 88, LNCS 403, pp. 319–327, Springer, 1990.
protocol (Protocol 4), and the other one performed during the [5] A. De Caro and V. Iovino, “jPBC: Java pairing based cryptography,”
group size accreditation protocol (Protocol 5). The resulting Computers and Communication (ISCC), 2011 IEEE Symposium on, pp.
850–855, IEEE, 2011. Available in http://gas.dia.unisa.it/projects/jpbc/.
number of operations in each of these phases is shown in [6] J. Domingo-Ferrer, C. Ràfols and J. Aragonès-Vilella, Method and
Table II. It can be seen that the non-precomputable IBDT.Sign system for customized contactless toll collection in carpool lanes (in
that needs to be run during the group size accreditation Spanish “Método y sistema de cobro sin contacto, por el uso de una vı́a,
para vehı́culos de alta ocupación”), Spanish patent ref. no: P201200215.
protocol involves a very small constant number of operations. Date filed: February 28, 2012. Patent owner: Universitat Rovira i Virgili.
The non-precomputable IBDT.Comb is not so light, but it is [7] J. Herranz, F. Laguillaumie, B. Libert and C. Ràfols, “Short attribute-
nonetheless lighter than IBDT.Comb without precomputation based signatures for threshold predicates,” Topics in Cryptology–CT-RSA
2012, pp. 51–67, Springer, 2012.
(Table I), because it no longer depends on the number n of [8] B. Lynn, On the Implementation of Pairing-based Cryptosystems, Doc-
users. toral dissertation, Stanford University, 2007.
[9] I. Miers, C. Garman, M. Green and A. D. Rubin, “Zerocoin: Anonymous
TABLE II distributed e-cash from bitcoin,” Security and Privacy (SP), 2013 IEEE
N UMBER OF PRECOMPUTABLE AND NON - PRECOMPUTABLE OPERATIONS Symposium on, pp. 397–411, IEEE, 2013.
FOR THE S IGN AND C OMB ALGORITHMS . [10] S. Nakamoto, “Bitcoin: A peer-to-peer electronic cash system,” Con-
sulted, vol. 1, 2008. Available in http://www.bitcoin.org/bitcoin.pdf.
[11] F. Reid and M. Harrigan, “An analysis of anonymity in the Bitcoin
Multiplications Exponentiations Pairings
system,” in Security and Privacy in Social Networks, eds. Y. Altshuler
Prec. Sign 2n + 2 2n + 1 0 et al., pp. 197–223, Springer, 2013.
Non-prec. Sign 2 4 0 [12] A. Shamir, “How to Share a Secret,” Communications of the ACM,
22:612–613, 1979.
Prec. Comb 2n − 2t 2n − 2t 0 [13] A. Shamir, “Identity based cryptosystems and signature schemes,” Ad-
Non-prec. Comb 3t + 1 3t 0 vances in Cryptology–CRYPTO 1984, LNCS 196, pp. 47–53, Springer,
1985.

V. C ONCLUSIONS AND F UTURE W ORK


We have presented a privacy-preserving mechanism for
group discounts. The method is built upon an IBDT signature
scheme, a concrete key generation and management solution,
short-range communication technologies and anonymous pay-
ment mechanisms. The complexity analysis shows that the
method is usable in practice.
RECSI 2014, Alicante, 2-5 septiembre 2014

Autenticación No Interactiva para Internet de las


Cosas
Francisco Martı́n-Fernández, Pino Caballero-Gil, Cándido Caballero-Gil
Departamento de Ingenierı́a Informática
Universidad de La Laguna
Emails: francisco.martin.07@ull.edu.es, pcaballe@ull.es, ccabgil@ull.es

Resumen—En este trabajo se propone un esquema de inter- conectados inalámbricamente y generalmente se caracterizan
cambio de información confidencial en entornos no seguros sobre por poseer algunas propiedades de auto-configuración.
redes móviles ad-hoc, basado en el concepto de demostración de Cada dispositivo que forma parte de una MANET posee
conocimiento nulo no interactiva. De esta manera, se consigue
que en una única comunicación se puedan inferir datos relevantes libertad para desplazarse, lo que implica que las condiciones
para la verificación de la legitimidad de los nodos de la red. de enlace entre los dispositivos cambian dinámicamente y que
Además, se propone el uso de este esquema aplicado a la cada nodo actúa como router de las comunicaciones ajenas.
autenticación y el control de accesos, a través del establecimiento Otro aspecto relevante de la tipologı́a de esta red es que
de claves mediante la idea del protocolo criptográfico de Diffie- en general puede operar de forma autónoma o bien estar
Hellman.
Palabras clave—Autenticación (Authentication), Privacidad
conectada a Internet. Esta última posibilidad es muy útil en
(Privacy), Demostración de Conocimiento Nulo (Zero Knowledge aquellas situaciones en las que los propios dispositivos no
Proof ), Internet de las Cosas (Internet of Things) tengan una conexión directa a Internet.
En las MANETs existen muchos tipos de amenazas que
I. I NTRODUCCI ÓN podrı́an llegar a condicionar su uso. Una de las mayores
amenazas es contra la seguridad de las comunicaciones me-
Cada vez es más frecuente ver cómo la tecnologı́a se funde diante ataques de suplantación de identidad o escucha de la
con la realidad en el uso cotidiano. A esta tendencia se le información enviada entre los nodos de la red.
conoce como la Internet de las Cosas o IoT (Internet of Este trabajo propone el diseño de un nuevo esquema
Things) y surge ante la necesidad de tener monitorizado e criptográfico ligero, en concordancia con la capacidad de
interconectado cualquier dispositivo electrónico que sea útil cómputo de los nodos de la red, que permita asegurar las
para el ser humano. En esta nueva dimensión aparecen nuevos comunicaciones inalámbricas en una MANET.
retos relacionados con la seguridad inalámbrica, ya que esta Este trabajo se estructura en varias secciones. En la sección
es la vı́a convencional de comunicación entre estos objetos II se introducen brevemente algunos antecedentes. La sección
hiperconectados. Se necesitan algoritmos criptográficos ligeros III trata de forma pormenorizada un nuevo esquema de auten-
acordes a la capacidad reducida de cómputo de estos dispositi- ticación no interactiva. En la sección IV se explican posibles
vos. Gracias a la aparición de tecnologı́a cada vez más potente casos de uso alternativo para el esquema propuesto. Por último,
y reducida en tamaño y peso, los esquemas criptográficos en la sección V se detallan algunas conclusiones.
en comunicaciones inalámbricas han ido cambiando a pasos
agigantados para adaptarse a esas nuevas condiciones. En II. A NTECENDENTES
particular, la evolución de las redes hacia la IoT ha conllevado En la bibliografı́a existen muchas propuestas [6], tanto
que este proceso se acelere. basadas en criptografı́a simétrica [15] como en criptografı́a
Con la aparición de este nuevo paradigma de objetos asimétrica [16]. La seguridad de muchos de los primeros
interconectados, donde la dimensión fı́sica se mimetiza con esquemas es bastante fuerte, pero su mayor inconveniente es
la dimensión lógica, será necesario codificar más de 100.000 la distribución de la clave común entre los participantes en
millones de objetos, lo que equivaldrı́a a que cada ser humano la comunicación. En un entorno como el de las MANETs
esté rodeado por 3000 objetos de media. Un aspecto funda- [4] aplicadas a la Internet de las Cosas [1], presuponer la
mental a tener en cuenta es la forma de comunicación entre existencia de un canal totalmente seguro para transmitir claves
estos objetos. Debido al carácter móvil y al reducido tamaño simétricas serı́a una utopı́a. Además, el número de claves que
de muchos de estos artilugios que conforman la Internet de se necesitarı́a serı́a demasiado elevado en una gran MANET
las Cosas, esta comunicación debe ser inalámbrica. Además, basada sólo en criptografı́a simétrica. Precisamente para in-
la forma de agrupación a la que tienden según su naturaleza tentar subsanar este problema nació la criptografı́a asimétrica,
desemboca en que ese tipo de comunicación inalámbrica se también conocida como criptografı́a de clave pública. Además,
establezca mediantes las denominadas redes móviles ad-hoc, la criptografı́a de clave pública permite firmar digitalmente la
también conocidas como MANETs (Mobile Ad-hoc NET- comunicación si primero el emisor cifra con su clave privada
works). Estas redes están compuestas por dispositivos móviles, y luego el receptor descifra con la clave pública del emisor,
76 F. Martı́n, P. Caballero, C. Caballero

ya que ası́ se consigue a la vez la identificación del remitente III. AUTENTICACI ÓN N O I NTERACTIVA
y la autenticación del mensaje. Curiosamente la capacidad de
Uno de los factores más importantes de los esquemas de
firma digital que otorga la criptografı́a de clave pública es lo
demostración de conocimiento nulo, tanto interactivos como
que permite resolver el principal reto que presenta, que es
no interactivos, es la elección del problema matemático de
la necesidad de establecer confianza en las claves públicas
base. En este trabajo en particular se utiliza el del isomorfismo
usadas. Para impedir posibles ataques MitM (Man in the
de grafos. Un isomorfismo entre dos grafos se define mediante
Middle), se debe asegurar la identificación del usuario a quien
una biyección entre los conjuntos de sus vértices preservando
corresponde cada clave pública. Existen diversos modelos para
la relación de adyacencia, o dicho de otro modo, cualquier par
lograr esta certificación de claves públicas. El más habitual se
de vértices de un grafo son adyacentes si y solo si lo son sus
basa en una infraestructura de clave pública o PKI (Public Key
imágenes en el otro grafo. El problema del isomorfismo de
Infrastructure), que se basa en autoridades certificadoras. Otros
grafos consiste en determinar si dos grafos son isomorfos o
esquemas se basan en una web de confianza. Una alternativa
no. Este problema ha sido utilizado en entornos criptográficos
a las PKI es el uso de la criptografı́a basada en identidad en
[12] [13] debido a que no se conoce un algoritmo eficiente
la que se hacen innecesarios los certificados.
para resolverlo en general. En particular, la determinación de
El mayor inconveniente de los esquemas de criptografı́a
si dos grafos con el mismo número de vértices v y de aristas
asimétrica es su eficiencia computacional ya que en general los
a son isomorfos implicarı́a un ataque por fuerza bruta que
cálculos necesarios requieren bastante tiempo. Son sistemas,
exigirı́a comprobar si las v! biyecciones posibles preservan
por lo general, demasiado pesados como para que funcionen
la adyacencia. Curiosamente el problema del isomorfismo de
con fluidez en entornos ligeros, como el de las MANETs en la
grafos pertenece, en complejidad computacional, a la categorı́a
IoT. Para subsanar este inconveniente se propone aquı́ la com-
NP, sin que se conozca hasta ahora si es resoluble en tiempo
binación de criptografı́a simétrica y de criptografı́a asimétrica
polinómico o bien si es NP-completo [11]. Por tanto su
mediante el uso de claves de sesión [5]. En particular, el
resolución, dependiendo del tamaño de los grafos implicados,
modelo propuesto se basa en la generación de una clave
puede ser muy costosa. Este problema permite crear varios
de sesión compartida entre nodos previamente autenticados,
compromisos a partir de un grafo original mediante sus
con objeto de utilizar dicha clave de sesión para establecer
posibles grafos isomorfos.
comunicaciones secretas usando un sistema de criptografı́a
El esquema propuesto se basa en una variante de las
simétrica.
demostraciones de conocimiento nulas no interactivas en la
Previo al establecimiento de las claves de sesión compartida
que sólo es necesario un único mensaje para poder verificar el
se realiza una fase de autenticación de usuarios mediante
conocimiento. La idea es conformar un sistema cuya seguridad
un protocolo basado en la idea de las demostraciones de
pueda adaptarse según el nivel de seguridad que se requiera.
conocimiento nulo. Las demostraciones de conocimiento nulo
De esta manera, cuanto más retos diferentes se consideren en
o ZKP (Zero-Knowledge Proof) [10] establecen un método
la ejecución, más garantı́a tendrá el verificador. Concretamente
para probar el conocimiento de un secreto sin revelar ninguna
los parámetros de la propuesta son:
pista sobre él.
En el ámbito de las MANETs usadas en IoT, una demos- G: Grafo conocido por los nodos legı́timos, sobre el que
tración de conocimiento nulo tı́pica basada en sucesivos retos conocen una solución a un problema difı́cil.
y respuestas implicarı́a un intercambio de sucesivos mensa- SolG : Solución al problema en G.
jes, lo que conllevarı́a tener que presuponer una conexión Retoi : Reto i−ésimo propuesto por el verificador.
estable y continua entre los nodos. En entornos tan volátiles Gi : Grafo isomorfo i−ésimo usado como compromiso.
como la Internet de las Cosas, donde existen dispositivos Iso(G, Gi ): Isomorfismo entre G y Gi .
que se pueden mover a gran velocidad (como por ejemplo, Res(Retoi , Gi ): Respuesta i−ésima correspondiente al
los vehı́culos que conforman las denominadas redes ad-hoc Retoi sobre el grafo Gi .
vehiculares o VANETs (Vehicular Ad-hoc NETworks), un h(·): Función hash.
intercambio masivo de mensajes para ejecutar una demostra- LSB(·): Least Significant Bit o bit menos significativo
ción de conocimiento nulo puede ser inviable debido a los de un string de entrada.
posibles fallos de conexión durante el protocolo. Para subsanar Eki (·) Cifrado simétrico con clave ki .
el problema de la multitud de mensajes bidireccionales que Subclave: Contribución de un nodo a la clave de sesión.
producen las ZKP tradicionales han surgido en la bibliografı́a Según la propuesta, el mensaje que cada nodo que desee au-
las demostraciones de conocimiento nula no interactivas [14], tenticarse envı́a como nodo legı́timo de la red está compuesto
que condensan todos los retos en un único paquete enviado por una serie compromisos definidos mediante grafos isomor-
en un único mensaje. De esta forma el tiempo que conllevarı́a fos de un grafo conocido por todos los usuarios legı́timos de la
el intercambio de mensajes para llevar a cabo el protocolo red. Por ejemplo, el grafo podrı́a corresponderse con un grafo
interactivo se minimiza, de forma que sólo es necesario el en el que los nodos representen a todos los usuarios de la red.
envı́o de un único mensaje, pudiéndose incluso enviar este En particular, esos compromisos se encuentran, todos salvo el
mensaje como beacon en modo broadcast a la red en la que primero, en principio cifrados de forma que se van descifrando
se utilice el esquema. a medida que se van verificando las respuestas anteriores.
Autenticación No Interactiva para Internet de las Cosas 77

Figura 1. Componentes de los mensajes enviados según el esquema propuesto.

Concretamente el mensaje está dividido en segmentos ci- la información que alberga el segmento.
frados con diferentes claves, exceptuando el primer segmento 3. Verifica si la respuesta corresponde al reto y grafo
que está en claro (ver Figura 1). De esta manera, un usuario isomorfo.
legı́timo de la red puede autenticarse para unirse a una sesión 4. A partir del reto calcula la clave que debe utilizar para
si el verificador es capaz de descifrar todos los segmentos descifrar el siguiente segmento.
del mensaje y llegar a la parte de la contribución del otro 5. Aplica los pasos del 2 al 4 hasta el último segmento,
nodo a la clave de sesión que se quiere compartir, que se que una vez descifrado contiene la información necesaria
esconde en el último segmento. Las claves de cifrado de cada para establecer la clave secreta compartida con el emisor.
segmento dependen del segmento anterior, de manera que Todos los usuarios legı́timos de la red (ver Figura 2) poseen
aunque se pretenda descifrar únicamente el último segmento, tanto el grafo original como una clave secreta correspondiente
es imposible ya que para ello se deben haber descifrado en a dicho grafo, que es una solución a un problema difı́cil en ese
cascada todos los segmentos anteriores. El nivel de seguridad grafo. Este podrı́a ser por ejemplo un circuito hamiltoniano,
del esquema depende del número de segmentos o retos que ya que el problema del circuito hamiltoniano en un grafo
se incluyan en el mensaje ya que a mayor cantidad de arbitrario es NP-completo.
segmentos, más complejo es llegar al último y obtener la Como función hash, para discernir el reto correspondiente
información que se requiere para el establecimiento de la clave y calcular la clave de cifrado de cada segmento del mensaje
compartida. Tras la autenticación bidireccional siguiendo el se puede usar el nuevo estándar de función hash SHA-3 [2]
mismo procedimiento, ambos nodos conocerán mediante un [3].
esquema del tipo Diffie-Hellman la clave de sesión compartida En cuanto al cifrado simétrico para los distintos segmentos
a partir de las dos subclaves intercambiadas. del mensaje, exceptuando el primero que se manda en claro, se
Cada segmento contiene un grafo isomorfo del grafo ori- puede optar por aplicar el cifrado en flujo usado en la cuarta
ginal que conocen todos los usuarios legı́timos del sistema. generación de comunicaciones móviles (LTE o 4G) [8] [9],
Además se establece una función hash unidireccional pública conocido como Snow3G [7], ya que entre sus caracterı́sticas
conocida por todos los nodos legı́timos de la red. Por una destaca una complejidad computacional lineal lo que garantiza
parte esta función sirve para definir el reto que el usuario eficiencia y rapidez en los procesos de cifrado y descifrado.
debe solucionar sobre cada grafo isomorfo de manera que Como retos se han elegido los habituales aplicados a las
sea conocido y estrictamente no maleable. Por otra parte, la demostraciones de conocimiento nulo basadas en grafos iso-
función hash se utiliza en la definición de la clave de cifrado morfos. En el caso del esquema no interactivo planteado se
de cada segmento del mensaje. definen los retos mediante el resultado de la función hash
El procedimiento de actuación del receptor del mensaje es: booleana aplicada sobre el grafo isomorfo compromiso. Para
1. Procesa el primer segmento del mensaje que está en cada uno de los retos, la respuesta se define como sigue:
claro. Reto = 0: La respuesta es el isomorfismo.
2. Calcula, con la función hash, el reto que corresponde a Reto = 1: La respuesta es la solución al problema en el
78 F. Martı́n, P. Caballero, C. Caballero

Figura 2. Tipos de nodos en el sistema propuesto.

grafo isomorfo. 21: // Se descifra el segmento con la clave ki


A continuación se muestra el pseudocódigo de un posible 22: descifrado = Crypto.decrypt(segs[i], ki);
algoritmo que debe ejecutar el receptor para implementar el 23: gi = getGi(descif rado);
esquema propuesto. Además en la figura 3 se muestra el 24: res = getRes(descif rado);
diagrama de flujo de dicho algoritmo. 25: reto = LSB.hash(gi.getBytes());
26: if (res != respuesta(gi, reto))
//Params: beacon, mensaje con segmentos cifrados 27: return;
//Params: tseg, dimensión de los segmentos del beacon 28: endif
//Params: solsec, solución al problema sobre el grafo G 29: sol = resolver(gi);
//Return: Subclave, contribución a la clave obtenida del 30: ki = reto ∗ hash(sol) ⊕ reto ∗ hash(sol ⊕ solsec)
mensaje 31: }
function getDatos (char[] beacon, int tseg, char[] solsec) 32: // El descifrado del último segmento serı́a
01: var segs[]; // Almacena los segmentos del mensaje 33: // la contribución a la clave compartida
02: // Se divide el mensaje en segmentos de tamaño tseg 34: return Crypto.decrypt(segs[segs.size()], ki);
03: segs = beacon.splitByTam(tseg); endfunction
04: // Se obtiene el grafo isomorfo y la respuesta en él Una vez ejecutado el algoritmo descrito, sólo queda acceder
05: // Primer segmento que no está cifrado al último segmento del mensaje y descifrarlo con la clave de-
06: var gi = getGi(segs[0]); vuelta en la última iteración para poder obtener la contribución
07: var res = getRes(segs[0]); del nodo emisor a la clave de sesión compartida con cada uno
08: // Se calcula el reto a resolver de sus posibles interlocutores.
09: var reto = LSB.hash(gi.getBytes());
10: // Comprueba que la respuesta es correcta para avanzar IV. C ASOS DE U SO
11: if (res != respuesta(gi, reto)) Los principales casos de usos del esquema descrito son to-
12: return; // Si no es correcta se aborta dos aquellos en los que se requiera el nivel de confidencialidad
13: endif que otorgan las comunicaciones cifradas con claves de sesión
14: // Obtiene la solución en gi secretas. De este modo, un caso de aplicación interesante
15: var sol = resolver(gi); podrı́a ser el de las transacciones comerciales en MANETs. En
16: // ki es la clave de cifrado del segmento posterior este escenario, un nodo legı́timo de la red quiere compartir un
17: var ki = reto ∗ hash(sol) ⊕ reto ∗ hash(sol ⊕ solsec) recurso propio con otros nodos legı́timos para llevar a cabo una
18: var descif rado; transacción comercial. Este recurso puede ser, por ejemplo,
19: // Se repiten los siguientes pasos hasta el final su acceso a Internet que desea compartir previo pago. Es
20: for (int i = 1; i < segs.size() − 1; i + +){ frecuente que los nodos de una MANET, por su carácter móvil,
Autenticación No Interactiva para Internet de las Cosas 79

no posean acceso a Internet en muchos lugares. Un nodo


legı́timo de esa MANET que sı́ posea una conexión a Internet,
puede tener como misión la comercialización de su conexión
para que otros nodos legı́timos hagan uso de ella. Esos nodos
móviles que quieran hacer uso de esta conexión a la red de
redes durante un tiempo limitado, sólo deben establecer una
clave secreta de sesión compartida con el nodo emisor para
comenzar las comunicaciones que le otorgan acceso a Internet.
Para el establecimiento de las claves secretas de sesión se
puede utilizar el esquema propuesto en este trabajo.
Otros dos escenarios diferentes para la utilización de dos
variantes del esquema propuesto pueden ser para nodos legı́ti-
mos de la red a los que sólo les interese notificar información
de manera autenticada y unidireccional a otros nodos legı́timos
sin necesidad de usar claves secretas, y para nodos legı́timos
de la red que quieran compartir su clave pública de forma
autenticada con otros nodos legı́timos.
Por una parte, un nodo puede sólo desear hacer broadcast
(ver Figura 2). De esta manera, otro nodo de la red que lo
escuche, podrá fiarse de la información que quiere transmitir el
nodo emisor ya que para confeccionar el beacon que se envı́a
en modo broadcast es necesario conocer una clave secreta
de red, que es utilizada para generar los grafos isomorfos y
soluciones del protocolo descrito. Un ejemplo de caso de uso
en este nuevo escenario es el de la notificación de eventos
dentro de una VANET. Estos eventos que se envı́an en modo
broadcast por parte de un usuario legı́timo, pueden ser eventos
de publicidad. Los distintos nodos de la red pueden recibir
publicidad acerca de comercios que se encuentran cercanos
a su ubicación y que también pertenezcan a la red. Para la
retransmisión de esta publicidad se puede utilizar el esquema
que se propone en este trabajo con el fin de que sólo los nodos
legı́timos de la red puedan enviar publicidad, evitando ası́ el
spam masivo de nodos que no pertenezcan a la red.
Por otra parte, un nodo puede querer anunciar su clave
pública de forma autenticada sólo a aquellos nodos que
también pertenezcan a la red. Para ello utilizará una variante
del esquema propuesto (ver Figura 2), mediante la cual envı́a
beacons periódicos que en su último segmento esconden la
clave pública de ese nodo. Esto conlleva que sólo los usuarios
legı́timos de la red puedan acceder al último segmento del
beacon, que contiene la clave pública del emisor, ya que los
retos y respuestas están basadas en una clave secreta de red.
La retransmisión de la clave pública en la que se basa este
escenario puede servir para cualquier caso de uso de firma
digital en MANETs ya que un usuario legı́timo podrá enviar
su clave pública a otros usuarios legı́timos de la red de forma
autenticada con objeto de posibilitar el uso de un esquema de
firma digital en la MANET.
V. C ONCLUSI ÓN
Con la proliferación de dispositivos electrónicos en múlti-
ples ámbitos ha surgido un nuevo paradigma denominado
Figura 3. Diagrama de flujo del Algoritmo propuesto. Internet de las Cosas. Una de las mayores amenazas de un des-
pliegue del tipo de redes que intervienen en IoT es la seguridad
de las comunicaciones. Los objetos interconectados en IoT
80 F. Martı́n, P. Caballero, C. Caballero

suelen tener menos capacidad de cómputo que un ordenador [13] S. Goldwasser, S. Micali, C. Rackoff, “The knowledge complexity of
convencional y sus comunicaciones suelen ser inalámbricas. interactive proof systems,” SIAM Journal on Computing, 18(1), pp 186-
208, 1989.
Por este motivo se hacen necesarios nuevos algoritmos crip- [14] J. Groth, “Short Non-interactive Zero-Knowledge Proofs,” Advances in
tográficos ligeros que se adapten a estas caracterı́sticas. En Cryptology - ASIACRYPT 2010, pp 341–358, 2010.
este trabajo, se presenta un nuevo esquema basado en la idea [15] A. Martin, “On Some Symmetric Lightweight Cryptographic Designs,”
Doctoral Dissertion, PhD, Supervisors: T. Johansson, M. Hell, 2012.
de las demostraciones de conocimiento nulo no interactivas [16] M. Toorani, A. Beheshti, “LPKI - A Lightweight Public Key Infras-
en las que sólo es necesario el envı́o de un mensaje para tructure for the Mobile Environments,” IEEE Singapore International
compartir información confidencial. Como resultado del nuevo Conference on Communication Systems, pp 162–165, 2008.
esquema propuesto se define su uso para el establecimiento
autenticado de claves de sesión secretas entre pares de nodos
legı́timos de redes móviles ad-hoc. Además, el esquema que
se ha diseñado puede ser utilizado por nodos que quieren
enviar información autenticada en modo broadcast hacia otros
nodos legı́timos de la red. También se definen casos de uso
para el intercambio autenticado de claves públicas en estas
redes usando una variante del esquema que se propone en
este trabajo. En definitiva, la nueva propuesta permite diseñar
un nuevo protocolo basado en la idea de demostración de
conocimiento nulo no interactivo en el que sólo es necesario
el envı́o de un único mensaje en un sólo sentido.
Actualmente se está realizando la implementación del es-
quema propuesto en dispositivos móviles con objeto de ana-
lizar su comportamiento en entornos reales. Además su harán
simulaciones en MANETs con diferentes configuraciones para
estudiar la escalabilidad de la propuesta.

AGRADECIMIENTOS
Investigación financiada por el MINECO y la fundación
FEDER mediante los proyectos TIN2011-25452 e IPT-2012-
0585-370000, y la beca de investigación BES-2012-051817.

R EFERENCIAS
[1] L. Atzori, A. Iera, G. Morabito, “The Internet of Things: A survey,”
Computer Networks, 2010.
[2] G. Bertoni, J. Daemen, M. Peeters, G. Van Assche, “Keccak sponge
function family main document,” Updated submission to NIST, Round
2, version 2.1, 2010.
[3] G. Bertoni, J. Daemen, M. Peeters, G. Van Assche, “The Keccak SHA-3
submission,” http://keccak.noekeon.org/Keccak-submission-3.pdf
[4] P. Caballero-Gil, C. Caballero-Gil, J. Molina-Gil, C. Hernández-Goya,
“Self-organized authentication architecture for Mobile Ad-hoc Net-
works,” WiOpt, pp 217–224, 2008.
[5] C.L. Chen, C.T. Li, “Dynamic Session-Key Generation for Wireless
Sensor Networks,” EURASIP Journal on Wireless Communications and
Networking, 2008.
[6] T. Eisenbarth, S. Kumar, C. Paar, A. Poschmann, L. Uhsadel, “A Survey
of Lightweight-Cryptography Implementations,” IEEE Design and Test
of Computers, vol. 4, no. 6, pp 522–533, 2007.
[7] P. Ekdahl, T. Johansson, “A New Version of the Stream Cipher SNOW,”
Proceedings of SAC, LNCS 2595, pp 37–46, 2003.
[8] P. Ekdahl, T. Johansson, “SNOW - a new stream cipher,” Proceedings
of NESSIE Workshop, 2000.
[9] ETSI/SAGE, “Specification of the 3GPP Confidentiality and Integrity
Algorithms UEA2 and UIA2. Document 2,” SNOW 3G Specification,
version 1.1, Septiembre 2005.
[10] U. Feige, A. Fiat, A. Shamir, “Zero-knowledge proofs of identity,”
Journal of Cryptology, vol. 1, Issue 2 , pp 77–94, 1988.
[11] M.R. Garey, D.S. Johnson, “Computers and Intractability: A Guide the
theory of NP-Completeness,” Freeman and Co., 1979.
[12] O. Goldreich, S. Micali, A. Wigderson, “Proofs that yield nothing
but their validity or all languages in NP have zero-knowledge proof
systems,” Journal of the ACM, 38(3), pp 690-728, 1991.
RECSI 2014, Alicante, 2-5 septiembre 2014

An Elliptic Curve Based Homomorphic


Remote Voting System
M.A. Cerveró V. Mateu J.M. Miret F. Sebé J. Valera
Dept. Matemàtica, Universitat de Lleida. Jaume II, 69, 25001, Lleida, Spain.
{mcervero, vmateu, miret, fsebe, jvalera}@matematica.udl.cat

Abstract—A remote voting system allows participants to cast the identity of the voter who cast it. After that, the mixed
their ballots through the Internet. Remote voting systems based ballots are decrypted and tallied.
on the use of homomorphic public key cryptography have proven In homomorphic tallying schemes [10]–[15], participants
to be a good option for carrying out simple elections with a
reduced amount of candidates. In this paper, we present a new cast their ballots encrypted under some public key cryptosys-
system that makes use of the additive homomorphic capabilities tem having a homomorphic property. The received ballots
of the Elliptic Curve ElGamal (EC-ElGamal) cryptosystem. are homomorphically aggregated by the polling station into a
All the stages of the system are described together with an single or a set of ciphertexts whose decryption will show the
experimental analysis section which provides an assessment on result of the election. These systems require the votes to be
the type of election our system would be suitable for.
Index Terms—Electronic Voting, Elliptic Curve Cryptography,
coded in such a way that the final tally can be recovered from
Knapsack Problem the cleartext of the aggregated ballots. Also, each voter has
to prove in zero-knowledge that her ballot has been composed
properly.
I. I NTRODUCTION
It is well known that homomorphic tallying systems do not
Electronic voting (e-voting) refers to the use of advanced scale well as the number of candidates increases. Despite their
technology to election processes. E-voting systems reduce benefits regarding decryption (just one decryption is needed),
the economic cost of an election and increase the speed and homomorphic tallying systems need an additional decoding
accuracy of vote tallying. An e-voting system allowing voters step in order to get the amount of votes for each candidate
to cast their ballots through the Internet is called a remote from an aggregated ballot cleartext. The method employed
voting system. The security provided by such a system should for coding votes should permit to get the election result at
include, at least, the following features: a reasonable processing time. It is also important to be able
to manage a large enough amount of candidates and voters.
• Authentication: only people in the electoral roll can vote.
• Unicity: every participant can vote once at most. A. Contribution and Plan of this Paper
• Privacy: votes can not be related to voter identities.
In homomorphic tallying remote voting systems, the bal-
• Fairness: no partial results can be revealed before the end
lots are encrypted using some public key cryptosystem. In
of the voting period.
elections with few candidates, the Elliptic Curve ElGamal
• Verifiability: correctness of the process can be checked.
(EC-ElGamal) cryptosystem turns out to be more efficient
• Uncoercibility: nobody can prove that a voter voted in a
that ElGamal implemented over a multiplicative group. ElGa-
particular way.
mal requires 1024 bit long keys while EC-ElGamal achieves
The previous security requirements are obtained by making an equivalent security employing just 160 bits. Hence, EC-
use of advanced cryptographic techniques. Current remote ElGamal provides better memory and computational costs.
voting systems can be classified into three main paradigms: However, in elections with a large amount of candidates, EC-
blind signature-based, mix-type and homomorphic tallying. ElGamal becomes not as efficient as ElGamal.
In the blind signature-based paradigm [1]–[3], a voter In this paper, we present an e-voting system belonging to
authenticates against a trusted authority which is responsible the homomorphic tallying paradigm based on the use of the
for checking that the voter appears in the electoral roll and she Elliptic Curve ElGamal (EC-ElGamal) cryptosystem. Its vote
has not voted before. In that case, voter’s ballot (the encrypted coding system allows a large number of candidates while
vote) is blindly signed by that authority. The polling station offering a good performance at the decoding step.
only accepts ballots that have been properly signed by the The paper is structured as follows: Section II presents some
authority. When the voting period is concluded, ballots are basic concepts of elliptic curve cryptography and the EC-
decrypted and tallied. ElGamal cryptosystem. Section III provides the description of
In the mix-type paradigm [4]–[9] a voter casts her ballot of the proposed e-voting system, while Section IV emphasizes
after having signed it. Once the voting period has ended, the a special case: the Referendum. Then, Section V is dedicated
polling station shuffles and re-encrypts (mixes) the collected to prove the security of the system and Sections VI and VII
ballots in order to break the relation between each ballot and are devoted to experimental results, conclusions and future
82 M.A. Cerveró, V. Mateu, J.M. Miret, F. Sebé, J. Valera

work. Finally, Annex A presents the elliptic curves used in III. O UR P ROPOSAL
the experimental part of this work.
The presented remote voting system is composed of the
II. P RELIMINARIES following parties:
An elliptic curve E defined over a finite field Fp is an • Polling Station: It coordinates the system. It is responsible
equation of the form for collecting the votes and publishing the final election
result. When all the ballots have been collected and
E : y 2 = x3 + ax + b, (1) aggregated, it asks the key storage trusted party to decrypt
the aggregated ballots. The received ballots are published
with 4a3 + 27b2 6= 0. The set of points of the curve, denoted
on some publicly accessible bulletin board for verifiability
E(Fp ), is composed of the points (x, y) ∈ Fp × Fp satisfying
purposes.
Equation (1) together with the point at infinity, O. The set
• Participants: They are voters able to emit a vote.
E(Fp ) can be endowed with an abelian group structure,
• Key Storage Trusted Party (KSTP): It is responsible for
having O as the identity element, by means of the chord-
generating and storing the election private key and pub-
tangent method [16]. This method provides an operation for
lishing the election public key material. When required,
adding curve points. Given two curve points P and Q, the
it will decrypt the ciphertexts containing the aggregation
elliptic curve discrete logarithm problem (ECDLP) consists
of cast ballots. The election public key should be certified
of finding an integer d satisfying Q = d · P . The ECDLP
to ensure its authenticity.
is computationally hard when the cardinality of E(Fp ) has a
large prime factor. The assumed intractability of the ECDLP Next, the different stages of an election are explained in
has led to the design of public key cryptosystems constructed detail.
over the group of points of an elliptic curve [17].
A. Set Up
A. The Elliptic Curve ElGamal Cryptosystem
Let us consider an election with m candidates. The collected
The Elliptic Curve ElGamal (EC-ElGamal) cryptosystem is ballots will be aggregated into packages containing n votes
composed of the following procedures. each.
1) Set up: A finite field Fp is first selected. After that, two Let t be an integer so that t ≤ m (for the sake of simplicity,
integers a and b defining an elliptic curve E over Fp we are assuming that t | m). The KSTP generates an elliptic
(see Eq. 1) are chosen so that the cardinality of E(Fp ) curve E defined over a finite field Fp so that the cardinality
has a large prime factor q. Finally, a point P of order of E(Fp ) has t large prime factors. That is,
q is taken as a generator of the order q cyclic subgroup
of E(Fp ). The values (p, E, P, q) are made public. t
Y
2) Key generation: Given the set up parameters, a private #E(Fp ) = h qi ,
key is generated by randomly choosing an integer d in i=1

the range [1, q − 1]. Next, its related public key Q is with h being a small integer and each qi being
computed as Q = d · P . Qt a large prime
(at least 160 bits long). Next, an order q = i=1 qi point P
3) Encryption: A plaintext M consisting of a point of is chosen.
E(Fp ) is encrypted under public key Q by computing Since #E(Fp ) has t large prime factors, the group of points
EQ (M ) = C = (A, B) = (r · P, M + r · Q) , (2) E(Fp ) has t large cyclic subgroups. Next, a generator Pi for
each subgroup is generated by computing,
where r is an integer selected randomly in the range
[1, q − 1]. Each encryption makes use of a different
 Y 
Pi = qj · P, (3)
random r, whose value must be kept secret.
1≤j≤t
4) Decryption: If the private key d is known, a ciphertext j6=i
C can be decrypted by computing
so that ord(Pi ) = qi .
Dd (C) = B − d · A. Then, the KSTP creates the election private key d by
choosing its value randomly in [1, q−1], computes the election
The cleartext M is obtained as a result.
public key Q = d·P and publishes all the previous parameters
The EC-ElGamal cryptosystem has an homomorphic prop- (the private key is stored privately in a safe place).
erty. Let C1 = (A1 , B1 ) and C2 = (A2 , B2 ) be two ciphertexts After that, the KSTP generates m points {M1 , . . . , Mm },
encrypting M1 and M2 , respectively. They are aggregated by each one representing a different candidate. Being s = m/t,
computing, the points are computed as shown in Table I. Note that points
C = C1 + C2 = (A1 + A2 , B1 + B2 ). M1 , . . . , Ms are in the subgroup of E(Fp ) generated by P1 ,
points are Ms+1 , . . . , M2s in the subgroup generated by P2 ,
The decryption of C will provide M1 + M2 as a result. and so on.
An elliptic curve based homomorphic remote voting system 83

Table I
G ENERATION OF A CURVE POINT FOR EACH CANDIDATE . The Verifier checks that

Base Point P1 Base Point P2 ... Base Point Pt


Ak = wk · P + uk · AP , ∀k ∈ [1, m],
M1 =P1 Ms+1 =P2 M(t−1)s+1 =Pt Bk = wkP· Q + uk · (BP − Mk ), ∀k ∈ [1, m],
m
M2 =(n+1)·P1 Ms+2 =(n+1)·P2 M(t−1)s+2 =(n+1)·Pt chall = k=1 uk ,
...
... ... ...
with chall computed as H(A1 , A2 , . . . , Am , B1 , B2 , . . . , Bm ).
Ms =(n+1)s−1 ·P1 M2s =(n+1)s−1 ·P2 Mts =(n+1)s−1 ·Pt
| {z }| {z } | {z } This verification ensures that the voter has voted for a point
Candidates from Candidates from Candidates from in set M. If all the checkings are satisfied, the signed ballot
1 to s s + 1 to 2s (t − 1)s + 1 to ts = m
and the data required to verify it was properly generated are
published on the bulletin board so that any external entity can
B. Voting check its correctness.
4) Vote Packing: The verified votes are homomorphically
The voting process starts when a participant P wants to vote
aggregated into packages. Each package is an aggregation of
by electing a candidate. It is composed of four steps: candidate
up to n ballots.
choice, electoral roll checking, vote coding verification and
Let us consider a set of ballots C = {CP1 , . . . , CPn } that
vote packing.
will be aggregated into package S` . Package S` is generated
1) Candidate Choice: Let McP be the curve point repre-
as:
senting the choice of participant P who emits her vote by Xn
performing the following steps: S` = CPj , (4)
• Encrypt McP under the public key Q. The encrypted vote j=1
CP = EQ (McP ) is generated as shown in Eq. (2).  
where CPj = rPj · P, McPj + rPj · Q . Hence, package S`
• Compute the signature of the encrypted vote.
• Send CP together with its signature to the polling station.
is of the form,
 
2) Electoral Roll Checking: When the polling station re- X n m
X Xn
ceives a ballot, it first checks the validity of its digital S` =  rPj · P , x k · Mk + rPj · Q , (5)
signature. Next, it checks that the voter who has cast it appears j=1 k=1 j=1
in the electoral roll and that she has not voted before. In that where xk is the
case, the voter is asked to prove that her ballot was correctly Pmnumber of votes for the candidate k in this
package and k=1 xk = n is the capacity of the package.
generated. This is done as described next.
3) Vote Coding Verification: The participant has to demon- C. Vote Opening
strate that the cleartext of the ballot she is casting corresponds Once the election has finished, it is time to decrypt the
to a point representing one of the candidates. This demon- ballots and tally the votes. This process can be divided into
stration is performed by means of a zero knowledge proof. It four steps: decryption, unpacking, scrutiny and publication.
consists of a data exchange between the Prover (participant P) 1) Decryption: When the election is finished, the polling
and the Verifier (polling station). This proof does not leak any station has a set of aggregated packages that have to be
information about the actual choice of the voter. The following decrypted. The KSTP is asked to decrypt them.
proof is an adaptation of the proof presented in [18] for its 2) Unpacking: After decryption, the polling station has
use on elliptic curve cryptography. to obtain the amount of votes for each candidate from the
The Prover has to prove that her vote CP = (AP , BP ) = cleartext
Pmof each package. A decrypted package is of the form
(rP · P, McP + rP · Q) is an encryption of one of the Sb` = k=1 xk · Mk , or equivalently,
points in the set M = {M1 , . . . , Mm } (the points of E(Fp ) t X
s
representing each of the candidates). In order to do that, the X
Sb` = xk+(i−1)s (n + 1)k−1 · Pi , (6)
Prover generates the points Ak , Bk , for 1 6 k 6 m:
i=1 k=1
Ak = wk · P + uk · AP , ∀k 6= cP ; Pm
where k=1 xk = n and ts = m.
AcP = s · P,
Sb` is decoded as follows:
Bk = wk · Q + uk · (BP − Mk ), ∀k =
6 cP ; Q
BcP = s · Q, 1) For each base point Pi , compute zi = 1≤j≤t,j6=i qj :
s
where wk , uk , s ∈ [1, q − 1], are random values. Next, the X
Sb`,i = zi · Sb` = xk+(i−1)s (n+1)k−1 ·(zi · Pi ) . (7)
Prover computes
k=1
chall = H(A1 , P
A2 , . . . , Am , B1 , B2 , . . . , Bm ), 2) For each i, compute the values xk+(i−1)s for 1 ≤ k ≤ s
ucP = chall − k6=cP uk , which satisfy equation 7. This bounded discrete loga-
wcP = s − ucP rP , rithm can be solved as a knapsack problem using the
where H is some cryptographic hash function like SHA256 Meet in the Middle (MITM) algorithmP as described next.
s
[19]. Finally, the Prover sends Ak , Bk , uk , wk for 1 ≤ k ≤ m In a preprocessing phase, compute k=s/2+1 xk (n +
k−1
to the Verifier. 1) · (zi · Pi ) for all the feasible combinations of xk
84 M.A. Cerveró, V. Mateu, J.M. Miret, F. Sebé, J. Valera

values (those whose addition is not greater than n), and Table II shows the three options represented by those base
store each resulting point, together with the related xk points.
values in a hash table. Ps/2
Also in a preprocessing phase, compute k=1 xk (n + Table II
T HE POINTS REPRESENTING THE OPTIONS IN A Referendum.
1)k−1 · (zi · Pi ) for each feasible combination of xk
values and store each result, together with the related Option Yes Option No Option Blank
xk values, in an array. M1 = P1 M2 = P2 M3 = P3
At decoding, each point R in the array is taken and
subtracted from Sb`,i ,
2) Unpacking: Since s = 1, the unpacking process can be
0
Sb`,i = Sb`,i − R. carried out in a very fast way. In the preprocessing phase of
0
the MITM algorithm, we store all the possible values for each
If Sb`,i is in the hash table, we are done. In that case, the option {0 · Pi , 1 · Pi , . . . , n · Pi } in the hash table so that the
values xk+(i−1)s for 1 ≤ k ≤ s are obtained from the unpacking operation for each choice can be solved through a
0
values stored together with R (in the array) and Sb`,i (in single hash lookup.
the hash table). Notice that if s = 1, the algorithm can
directly cast Sb`,i against the hash table.
The explained MITM algorithm achieves a good balance V. S ECURITY A NALYSIS
between computational cost and memory consumption.
In this section we show how the proposed system achieves
If no precomputed data were used, the required com-
the security requirements enumerated in Section I.
puting time would be too large. On the other hand,
precomputing and storing all the feasible combinations 1) Authentication: Each ballot is digitally signed by the
would be unaffordable in terms of memory storage participant who casts it. Hence, the polling station can authen-
requirements. ticate the voter and check that she appears in the electoral roll.
Moreover, the electoral roll and the received ballots are made
3) Scrutiny: When each package Sb` has been decoded, the
publicly available on the bulletin board so that any entity can
polling station adds all the votes to finally scrutiny thePelection
L check that all the ballots have been cast by an authenticated
result. The total amount of votes for candidate k is `=1 x`k ,
participant.
where L is the total number of packages and {x1 , . . . , x`m }
`

are the values obtained from package Sb` . 2) Unicity: Unicity is composed of two requirements:
4) Publication: Finally, the election result is published on • The system must ensure that every voter votes only once.
the bulletin board. At the end of the election, the bulletin board • The system must ensure that each ballot contains only
contains all the information needed to verify the correctness one vote. That is, a ballot can only encrypt a single point
of the whole process. That is, of list M.
1) The result of the election (amount of votes for each The first item is addressed by keeping a register of the voters
candidate). that have already voted. If any participant tried to cast two or
2) The electoral roll (name and public key of each partici- more ballots, the system would only accept the first one. The
pant). second item is ensured by means of the zero knowledge proof
3) The received ballots together with their digital signature of ballot correct composition (see Section III-B3).
and proof of correct composition. 3) Privacy: Privacy of the choice made by a participant
4) Each aggregated package, S` , together with its cleartext holds on the following facts:
Sb` , and the amount of votes it contains for each candi-
date. • All the votes are encrypted using the EC-ElGamal cryp-
tosystem, so that no information can be obtained from an
IV. S PECIFIC C ASE - R EFERENDUM encrypted ballot.
A Referendum is an election in which the voters can vote • All the encrypted votes are homomorphically packed, and
for yes, no, or blank. Next, we will show that such an election only the resulting packages are decrypted. As a result, the
can be implemented very efficiently. voter and her choice are decoupled.
1) Set Up: We propose to choose an elliptic curve E over a • Only the aggregated packages are decrypted. This is
finite field Fp whose group order has t = 3 large prime factors achieved by considering the KSTP is a trusted party
q1 , q2 , q3 . Hence, #E(Fp ) = h · q1 · q2 · q3 , with q = q1 · q2 · q3 which acts honestly.
being a 480 bits long integer. Finally, we take an order q point • The proof needed to ensure that a ballot was correctly
P. composed is zero knowledge. Hence, no information leaks
Since there are three possible options (candidates), we from it.
generate the following points: P1 = q2 · q3 · P , P2 = q1 · q3 · P , 4) Fairness: Assuming a correct praxis of the KSTP, no
P3 = q1 · q2 · P , satisfying that ord(Pi ) = qi . This way, we vote is decrypted before the opening stage, which takes place
can code each option in a different base point, so that s = 1. after the ending of the voting period.
An elliptic curve based homomorphic remote voting system 85

5) Verifiability: The verifiability of our system is based in has a reasonable size which can be perfectly stored by any
four points: commodity PC.
• The electoral roll is public and all the received (signed) We have also analyzed the time and memory consumption
ballots are also made public. Hence, any entity can check in the Referendum case, which requires the use of an elliptic
all the ballots come from an authenticated participant. curve with a 480 bits long cardinality and 3 cyclic subgroups.
• Each zero knowledge proof of correct ballot composition Table IV highlights the efficiency of our system to resolve
is published on the bulletin board so that it can be checked elections with 3 candidates, needing a little more than 3
by any entity which will get convinced that each ballot milliseconds to unpack a 200 votes package. The memory
is coding a single vote. requirements and preprocessing time are negligible.
• The homomorphic packing operation can be performed Table IV
by any entity and next check that the obtained packages T IME AND MEMORY CONSUMPTION FOR THE Referendum CASE WITH
correspond to those published on the bulletin board. PACKAGES OF 200 VOTES .

• The decryption carried out by the KSTP can be performed Preprocess time (s) Unpacking time (s) Memory (MB)
verifiably [20]. 0.599 0.003 0.064
Our proposal offers end-to-end verifiability: the correctness of
the whole process can be verified by everyone. Furthermore, our system can deal with larger packets.
6) Uncoercibility: Uncoercibility can be provided by ap- Table V shows the time and memory consumption when work-
plying any coercion-resistance solution like [21]. ing with packets aggregating 1000000 votes. Although the
preprocessing time and the memory requirements increase, the
VI. E XPERIMENTAL R ESULTS time required for unpacking keeps constant for any package
The most time consuming part of the proposed system is size.
given by the unpacking step. Hence, we have developed a test Table V
program to check the time and memory consumption of the T IME AND MEMORY CONSUMPTION FOR THE Referendum WITH PACKAGES
OF 1000000 VOTES .
MITM algorithm proposed for solving that step. The program
has been implemented in C++ using the library Crypto++ Preprocess time (s) Unpacking time (s) Memory (MB)
and has been executed in a PC with an Intel Core i5 650 3 395.550 0.003 320.435
3.2GHz CPU with 6GB of RAM running Debian 8.0 Jessie
as OS. Table III shows the data extracted during the tests using By comparing our referendum system with that presented
elliptic curves with 160, 320 and 480 bits long cardinalities by Peng et al. [15], we can see that our unpacking algorithm
(the used elliptic curves are shown in Annex A). The columns is much more efficient than that in [15] (also implemented
Preprocess time and Memory concern to the time and memory in C++ using Crypto++ and executed in the same PC).
consumption of an unpacking operation. The proposal in [15] is implemented using the multiplicative
Table III
homomorphic property of ElGamal cryptosystem over a mul-
T IME AND MEMORY CONSUMPTION USING 160, 320 AND 480 BITS tiplicative group. When using a 1024 bits public key, it can
ELLIPTIC CURVES WITH PACKAGES OF 200 VOTES . only manage packages of up to 440 votes, while our proposal
can manage much bigger packages, as it can be seen in
EC #Base #Cands. Preprocess Unpacking Memory
(bits) Pnts. Base Pnt. time (s) time (s) (MB) Table V. Moreover, the system in [15] requires 0.022 seconds
4 4.474 0.089 4.337 to decode a 440 votes package while our system can perform
160 1
5 225.768 0.081 148.895 an equivalent operation employing only 0.003 seconds.
4 81.920 0.196 8.674
320 2 VII. C ONCLUSION AND F UTURE W ORK
5 4 254.340 0.175 297.791
4 243.798 0.286 13.010 A new e-voting system that makes use of the EC-ElGamal
480 3
5 12 571.200 0.251 446.686
cryptosystem has been proposed. The new proposal makes use
of a MITM algorithm to unpack aggregated ballots at a high
As we can see, the most time consuming part corresponds speed. Our system can be used in an election with a large
to the generation of the preprocessed data, which can be amount of candidates. The experiments carried out have shown
performed some days before the election takes place. This that our proposal is faster than the multiplicative homomorphic
preprocessed data permits to unpack packages at a very ElGamal cryptosystem proposed by Peng et al. [15], in the case
reduced time. This last operation has to be fast because it of referendum type elections.
determines the delay between the end of the voting period and As future research, we will investigate techniques to further
the publication of the results. Table III shows that the proposed reduce the time devoted to ballot unpacking.
system is able to unpack packages with 200 votes and 15
candidates very efficiently (see the last row, corresponding ACKNOWLEDGMENTS
to 5 candidates per base point). Furthermore, the memory Research of the authors was supported in part by grants
needed to store the data generated during the preprocessing MTM2010-21580-C02-01 (Spanish Ministerio de Ciencia e
86 M.A. Cerveró, V. Mateu, J.M. Miret, F. Sebé, J. Valera

Innovación), 2014SGR-1666 (Generalitat de Catalunya) and [4] K. Sako and J. Kilian, “Receipt-free mix-type voting scheme: A practical
IPT-2012-0603-430000 (Spanish Ministerio de Economı́a y solution to the implementation of a voting booth,” in Advances in
Cryptology – EUROCRYPT ’95, ser. LNCS, vol. 921, 1995, pp. 393–
Competitividad). 403.
[5] M. Jakobsson, “A practical mix,” in Advances in Cryptology – EURO-
A PPENDIX CRYPT ’98, ser. LNCS, vol. 1403, 1998, pp. 448–461.
In this appendix we show the elliptic curves used in our [6] F. Sebé, J. M. Miret, J. Pujolàs, and J. Puiggalı́, “Simple and efficient
hash-based verifiable mixing for remote electronic voting,” Computer
experiments. Finding elliptic curves with a given cardinality is Communications, vol. 33, no. 6, pp. 667–675, 2010.
a hot topic of research. Several algorithms have been proposed [7] J. Puiggalı́ and S. Guasch, “Eficiencia y privacidad en una mixnet
to this end. The most widely known was proposed by Atkin universalmente verificable,” in XI Reunión Española sobre Criptologı́a
y Seguridad de la Información (RECSI), 2010, pp. 159–164.
and Morain [22] but there exist other approaches like that [8] K. Peng, “An efficient shuffling based eVoting scheme,” J. Syst. Softw.,
proposed by Agashe et al. [23], or that by Bröker et al. [24], vol. 84, no. 6, pp. 906–922, 2011.
[25]. In particular, the curves used in this paper have been [9] V. Mateu, J. M. Miret, and F. Sebé, “Verifiable encrypted redundancy
for mix-type remote electronic voting,” in EGOVIS 2011, ser. LNCS,
generated using the algorithm described in [25]. vol. 6866, 2011, pp. 370–385.
[10] J. D. Cohen and M. J. Fischer, “A robust and verifiable cryptographically
Elliptic Curve with a 160 bits Cardinality secure election scheme,” in 26th Annual Symposium on Foundations of
Prime number p: 1461501637330902918203684832716283019655932542983 Computer Science, 1985, pp. 372–382.
Coefficient a: 1268133167195989090596625406312984755854486256116 [11] K. Sako and J. Kilian, “Secure voting using partially compatible homo-
Coefficient b: 386736940269827655214118852806596527602892573734 morphisms,” in Advances in Cryptology – CRYPTO ’94, ser. LNCS, vol.
#E(Fp ): 1461501637330902918203684149283858612734394057783 839, 1994, pp. 411–424.
[12] R. Cramer, R. Gennaro, and B. Schoenmakers, “A secure and optimally
Elliptic Curve with a 320 bits Cardinality efficient multi-authority election scheme,” in Advances in Cryptology –
Prime number p: 53399675898022752059875542654238802865067613060\\ EUROCRYPT ’97, ser. LNCS, vol. 1233, 1997, pp. 103–118.
39270277656609164265354514010464991959371747702617 [13] M. Hirt and K. Sako, “Efficient receipt-free voting based on homomor-
Coefficient a: 2088105959680623325842477250435045284830027862785\\ phic encryption,” in Advances in Cryptology – EUROCRYPT 2000, ser.
870211433492825096738057013555851670055268682213 LNCS, vol. 1807, 2000, pp. 539–556.
Coefficient b: 1163755670441028554302599764553789716846705580467\\ [14] K. Peng, R. Aditya, C. Boyd, E. Dawson, and B. Lee, “Multiplicative
529854789623514071878399983353288619261210338191
homomorphic e-voting,” in INDOCRYPT 2004, ser. LNCS, vol. 3348,
#E(Fp ): 2 · 1461501637330902918203684832716283019655932542983 ·
· 1826877046663628647754606040895353774569915678761 2004, pp. 61–72.
[15] K. Peng and F. Bao, “Efficient multiplicative homomorphic e-voting,”
Elliptic Curve with a 480 bits Cardinality in ISC 2010, ser. LNCS, vol. 6531, 2011, pp. 381–393.
[16] J. H. Silverman, The Arithmetic of Elliptic Curves. Springer-Verlag,
Prime number p: 995057350413222523752884116996571759957365658\\ 1986.
06960442686765831936327048927557952103036515329315\\ [17] D. Hankerson, A. J. Menezes, and S. Vanstone, Guide to Elliptic Curve
96765152853320844768094929978936522271668818569113
Coefficient a: 270706995841250690260282444781369402799068818395\\
Cryptography. Springer-Verlag, 2004.
622388832076793348602062306022242786736095545104\\ [18] R. Cramer, I. Damgård, and B. Schoenmakers, “Proofs of partial knowl-
4640503732397723488780961683652364955407331149336 edge and simplified design of witness hiding protocols,” in Advances in
Coefficient b: 453643358730721143232319227433832954359228021278\\ Cryptology – CRYPTO ’94, ser. LNCS, vol. 839, 1994, pp. 174–187.
359649203504732666066364663535035456892962202950\\ [19] “FIPS 180-2: Secure Hash Standard,” NIST, 2002.
7484145388525397790533006611631792360854156270441 [20] D. Chaum and T. P. Pedersen, “Wallet databases with observers,” in
#E(Fp ): 2 · 1461501637330902918203684832716283019655932542983 · Advances in Cryptology – CRYPTO ’92, ser. LNCS, vol. 740, 1993, pp.
· 1552845489664084350591415134761050708384428327041 ·
· 2192252455996354377305527249074424529483898814481
89–105.
[21] A. Juels, D. Catalano, and M. Jakobsson, “Coercion-resistant electronic
elections,” in WPES ’05, 2005, pp. 61–70.
R EFERENCES
[22] A. O. L. Atkin and F. Morain, “Elliptic curves and primality proving,”
[1] D. Chaum, “Security without identification: transaction systems to make Math. Comput., vol. 61, no. 203, pp. 29–68, 1993.
big brother obsolete,” Communications of the ACM, vol. 28, no. 10, pp. [23] A. Agashe, K. Lauter, and R. Venkatesan, “Constructing elliptic curves
1030–1044, 1985. with a given number of points over a finite field,” Cryptology ePrint
[2] A. Fujioka, T. Okamoto, and K. Ohta, “A practical secret voting scheme Archive, Report 2001/096.
for large scale elections,” in Advances in Cryptology – AUSCRYPT ’92, [24] R. Bröker and P. Stevenhagen, “Elliptic curves with a given number of
ser. LNCS, vol. 718, 1993, pp. 244–251. points,” in ANTS-VI, ser. LNCS, vol. 3076, 2004, pp. 117–131.
[3] M. Ohkubo, F. Miura, M. Abe, A. Fujioka, and T. Okamoto, “An [25] R. Bröker and P. Stevenhagen, “Efficient CM-constructions of elliptic
improvement on a practical secret voting scheme,” in ISW ’99, ser. curves over finite fields,” Math. Comput., vol. 76, no. 260, pp. 2161–
LNCS, vol. 1729, 1999, pp. 225–234. 2179, 2007.
RECSI 2014, Alicante, 2-5 septiembre 2014

On the revocation of malicious users in anonymous


and non-traceable VANETs
Cándido Caballero-Gil, Juan Hernández-Serrano,
Jezabel Molina-Gil Olga León,
Departamento de Estadı́stica, Miguel Soriano-Ibañez
Investigación Operativa y Computación Departamento de Ingenierı́a Telemática,
Universidad de La Laguna Universitat Politècnica de Catalunya (UPC)
Email: {ccabgil|jmmolina}@ull.es Email: {jserrano|olga|soriano}@entel.upc.edu

Abstract—For the proper performance of Vehicular Ad-hoc users’ privacy in front of other users, TAs and even the CA
NETworks (VANETs) it is essential to protect the service against while also offering the possibility to track malicious user and
malicious nodes aiming at disrupting the proper operation by thus to throw them out of the system when a predefined
injecting fake, invalid data into the network. It is common to
define a traditional identity-based authentication for vehicles, amount of complaints have been received. As later explained
which are loaded with individual credentials. However, the use of malicious user can only be tracked after a predefined amount
these credentials in VANETs may allow vehicle tracking and thus of complaints are received by the CA. To do this we will
violate users’ privacy, a risk that can be overcome by means of use k-anonymity protection that allow that the information for
anonymity schemes. This comes at the expenses, however, of on nodes contained in the release cannot be distinguished from
the one hand preventing VANET authorities from identifying
malicious users and revoking them from the network, or on at least k-1 individuals whose information also appears in the
the other hand to avoid anonymity of users in front of the release.
CA thus to allow their revocation. In this work, we describe a This paper is organized as follows. Section II covers related
novel revocation scheme that is able to track and revoke specific research about privacy in VANETs. In Section III we present
users only after a number of complaints have been received while
the proposed method to guarantee anonymity of users while
otherwise guaranteeing vehicle’s anonymity.
Index Terms—VANET, revocation, k-anonymity allowing tracking malicious users. In section IV we derive an
analytical model to analyze the efficiency of the method. This
I. I NTRODUCTION model has been validated via simulation in section V, where
we also provide the results obtained by means of the model
Nowadays, there is a bunch of GPS-based applications for a real scenario. Finally, the conclusions of this work are
offering traffic services based on information provided by presented in Section VI.
local road authorities, police departments and systems that
track traffic flow. Some of these applications, such as Google II. R ELATED R ESEARCH
Traffic [7], TomTom [16], Sygic [15] or Waze [18], can
even provide near real-time data about traffic status and Sweeney proposed k-anonymity at first in 2002 [14] and
congestions. However, for these services to properly work, its original intention was to thwart the ability to link field-
users should provide information with at least their location to structured databases, but has been viewed more broadly, and
the companies offering these services without any guarantee have been applied to many other fields, such as VANET.
that these companies will use this data for other considerations In [13], authors use k-anonymity in VANET applications
[1]. Therefore, users’ privacy may be at risk. where k-anonymity is provided by a centralized anonymizer
Conventional VANETs and current traffic applications do based on the users’ real location. The author proposes a
not protect users’ privacy. They can breach the privacy of homomorphism for the location of a group of users that are
the user of the vehicle because they manage information near to others users. However, tracking with less precision is
that reveals the location of vehicles at every moment. Nodes already possible and users need to wait until at least k−1 other
and/or users’ privacy may be violated by the Certification users are close to their location to achieve enough anonymity.
Authority (CA) as long as it provides their certificates, but This delay reduces the quality of the users localization in time
also by companies managing traffic data or Traffic Authorities and space which compromises real-time service availability
(TAs), which can locate and track vehicles based on their and accuracy. Thus, this approach does not work in case of
transmissions. Protecting users against tracking can be solved real-time services and also in low density areas of users.
by providing user anonymity but, at the same time, this lack of [19] proposes a hybrid and social-aware location-privacy in
tracking avoids the revocation of malicious/misbehaving nodes Opportunistic mobile social networks (HSLPO), a collabora-
disrupting the service operation. tive and distributed obfuscation protocol that offers location-
In this work we propose a novel scheme that protects privacy k-anonymity.
88 C. Caballero-Gil, J. Molina-Gil, J. Hernández-Serrano, O. León

In [2] authors propose a self-managed VANET without with short-term expiration dates that henceforth we will call
CA based on Certificates Graphs where every node has a roundr. When the group certificate of a user is about to
pseudonym and many sub-pseudonyms that change frequently expire it must send a query to the CA to update it, which
in a range of time, at this way, passive users cannot track other will check if the user is revoked based on the number of
users. In this scenario there is neither a RSU nor any cloud flags it has received. The rationale behind such mechanism is
connection. Therefore, tracking from the cloud is impossible. that users will change of group over time and will be flagged
The unique way to track another user is physically because whenever they belong to the group reported in a complaint.
the user must be authenticated with another user to track it. Due to the fact that you can not identify what node is having
In [20] vehicles entering a group can anonymously broad- a bad behaviour, only one complaint is valid in each round.
cast vehicle-to-vehicle (V2V) messages, this is another way to Assuming that malicious users repeatedly misbehave, they will
preserve privacy but the TM has the ability to retrieve the real be flagged at least the same amount of times or more than any
identity of dishonest vehicles that are sending fake messages other honest node in the network and thus they can be easily
to other vehicles to disrupt traffic, so the privacy is violated. revoked by the CA. Note that, a revoked user will be expelled
[4] present different privacy-preserving variants to ensure from the system once it has to update its certificate, as it will
that vehicles volunteering to generate and/or endorse trust- not be able to acquire a new valid certificate.
worthy announcements do not have to sacrifice their privacy. The certificate updating process is a key point for the
[11] proposes a protocol to exclude malicious network VANET safety and operation. On the one hand, if the time
nodes based on complaints received from other vehicles. [17] for updating the certificate t is short, it greatly increases
presents another protocol that uses decentralized revocation processing data on the server and number of server-users
voting. [12], [8], [9] are other approaches for conditional communications. On the other hand, if this measure is too
anonymity in VANET. long, malicious users would remain in the network for a longer
To the best of our knowledge, none of the proposals in the time without being revoked. As a first, trivial approach, given
literature provide both complete anonymity (even against the that the average trip time by car is about 22 minutes each way
CA providing the credentials) while allowing to later identify [5], the lifetime of a certificate t should be no more than 22∗2
f ,
an anonymous user in order to revoke him/her from the system. with f the number of complaints that the CA needs to revoke a
In our proposal we achieve this goal only and only if several user if we want to remove malicious users from the system in a
complaints against a user is received. single day. Furthermore, in order to reduce overhead, multiple
certificates can be issued without interaction between CA and
III. A TRACEABLE K - ANONYMITY METHOD FOR VANET S the user [10].
In this section, we propose a method that provides k- The level of anonymity provided by this method increases
anonymity [14] in VANETs while still guaranteeing that as the group size k does. However, as previously mentioned, k-
malicious users will be traceable. The method operation is anonymity complicate the process of revoking users. In section
as follows. Every user is randomly associated to a group IV we derive an analytical expression for the number of false
n with k members that share cryptographic material, i.e., a positives and false negatives, i.e., the number of honest users
pair of private-public keys (P KuGn , P KsGn ), and a group being revoked and the number of malicious users that remain
certificate Cert(Gn , t), which will be used to sign messages in the network, provided by this method as a function of the
and authenticate data. In order to reduce the computational anonymity value k, the number of complaints needed to revoke
cost, we assume the use of cryptography based on elliptic users and the number of group changes.
curves [3]. We also consider the existence of a CA, which is The CA should guarantee that the assignment of a user to
responsible for creating the groups, maintaining a database a given group is kept secret and exclusively known to the
with the group membership, distributing the cryptographic user and itself, and that only the members of the group have
material among users and revoking users that misbehave. access to the group cryptographic material. Because of this,
When a user detects an undesired behavior from another every user should be provided with a public/private key pair
user, such as the injection of false data, it presents a complaint and the corresponding certificate when entering the network.
to the CA. Such complaint is signed with its group key and Such cryptographic material would be exclusively used for
must report the group identifier of the malicious user. In its communication with the CA in order to authenticate the user
turn, the CA flags all the users belonging to that group and against it and renew group certificates.
stores this information at its database. As users do not reveal
their particular identities but only their group identifier, both IV. A NALYTICAL MODEL
the malicious user and the one sending the complaint cannot be
distinguished from other users belonging to the same group. In this section, we derive the probability of false positives
Thus, they cannot be tracked by the CA or by other users. and false negatives of the proposed k-anonymity mechanism,
This feature protects users’ privacy, but it makes a hard task i.e., the probability of an honest user being regarded as
to revoke and isolate malicious users from the network. malicious one and the probability of not detecting and actual
In order to achieve the traceability of malicious nodes attacker. For the sake of clarity, table I presents the specific
to revoke them, we propose the use of group certificates notation considered from now on.
On the revocation of malicious users in anonymous and non-traceable VANETs 89

TABLE I
N OTATION all attackers having f or more flags, and can be expressed as
in (6).
r number of rounds a
n number of users in the system prf n = 1 − pf,r
a (6)
a number of malicious users
p prob. of a malicious user performing an attack in a round r In order to analyze with more precision the goodness of the
k number of users in a group
f number of flags needed to revoke a user mechanism, it can be useful to estimate the expected number
t time of the certificate expiration of false positives and false negatives and their variance, as a
ph prob. of an honest user being flagged in a round function of the number of flags f and the number of rounds
pa prob. of an attacker being flagged in a round
pf,r prob. of a honest user being flagged f times after r rounds
r. Let us define F Pf,r and F Nf,r as two discrete random
h
pf,r prob. of an attacker being flagged f times after r rounds variables following a binomial distribution that account for
a
FP r.v. number of false positives in r rounds and f flags the values of false positives and false negatives respectively.
FN r.v. number of false negatives in r rounds and f flags Then, we can define their respective probability mass functions
as in (7)), with expected values µ as in (8) and variance σ 2
as in (9).
Given these definitions, we denote as ph and pa the
probabilities of an honest user and an attacker, respectively,
receiving a flag in a given round r, and can be computed as fF Pf,r (i) = P(F Pf,r = i)
 
in (1) and (2) with αh = min(k−1, a) and αa = min(k−1, a−1). n−a
= · (pf,r i f,r n−a−i
h ) · (1 − ph )
i
(7)
ph = fF Nf,r (i) = P(F Nf,r = i)
αh i k−i−1
 
a
= · (1 − pf,r i f,r a−i
a ) · (pa )
X Y Y
k−1 a−j+1 n−a−j

= i n−j n−i−j 1 − (1 − p)i i
i=1 j=1 j=1 (1)
αh n−a
X
µF P = E[F Pf,r ] = i · P(F Pf,r = i)
X  a! (n−a−1)! (n−k)!
k−1 i

= i (a−i)! (n−1)! (n−a−k+i)! 1 − (1 − p)
i=1
i=1
a
(8)
X
µF N = E[F Nf,r ] = i · P(F Nf,r = i)
pa = p · 1 + (1 − p)·
i=1
αa i k−i−1
X
k−1
Y a−j
Y
n−a−j+1
 (2)
i n−j n−i−j 1 − (1 − p)i n−a
X
i=1 j=1 j=1 σF2 Pf,r = V[F Pf,r ] = (i − µF Pf,r )2 · fF Pf,r (i)
Then, we can compute the probability of an honest user and i=1
a
(9)
a real attacker being regarded as attackers after r rounds as in X
σF2 Nf,r = V[F Nf,r ] = 2
(i − µF Nf,r ) · fF Nf,r (i)
(3) and (4), respectively.
i=1
r   V. P ERFORMANCE EVALUATION
f,r
X r i
ph = p (1 − ph )r−i (3)
i h In this section we first validate in section V-A the analytical
i=f
model presented in section IV via simulation, and then in
r  
X r i section V-B we evaluate the goodness of our proposal when
pf,r
a = p (1 − pa )r−i (4)
i a applied to a real scenario such as the current Spain’s vehicle
i=f
fleet.
From the above equations, it can be easily derived the In order to make the simulation easier, we have assumed in
probabilities of false positives and false negatives as a function the following that an attacker always attacks in a round, that
of the number of rounds r, i.e., the probability of a honest user is to say that the protocol operation properly detects all the
being flagged as an attacker and the probability of an attacker attackers and thus cannot lead to false negatives. However,
being regarded as a honest user after r rounds. there are still chances of leading to false positives (honest
The probability of false positive after r rounds prf p is the users flagged as attackers) and therefore the following analysis
probability of at least one honest user having more than f mainly focuses on the mean and variance of false positives.
flags, which is equal to 1 minus the probability of all honest
users having less than f flags, and can be expressed as in (5). A. Validation of the analytical model
Figure 1 shows the mean number of false positives obtained
 (n−a)
prf p =1− 1− pf,r (5) by simulation (100 iterations per each possible combination) in
h
dashed line vs the mean and standard deviation in continuous
Analogously, the probability of false negative prf n is the line obtained by the analytical model. Due to space constraints,
probability of at least one attacker having less than f flags we present just a specific case; the purpose of it is just to show
after r rounds, which is equal to 1 minus the probability of that the analytical model properly fits the protocol behavior.
90 C. Caballero-Gil, J. Molina-Gil, J. Hernández-Serrano, O. León

20 1,000 nodes. 10 rounds 100


31,203,203 nodes. 20 malicious nodes
1 malicious nodes
2 malicious nodes
4 malicious nodes 10-2
6 malicious nodes
15 8 malicious nodes 10-4
10 malicious nodes
10-6
10 10-8
False positives

False positives
10-10
5 10-12
10-14
0 30000-anonymity
10-16 60000-anonymity
90000-anonymity
10-18 120000-anonymity
150000-anonymity
50 20 40 60 80 100 120 10-20 8 9 10 11 12
k-anonymity number of rounds

Fig. 1. False positives after 10 rounds with 1,000 nodes Fig. 3. Mean and STD of false positives vs rounds with 20 concurrent
malicious nodes for a varying value of k-anonymity
31,203,203 nodes. 12 rounds
10-2
10-5 ranging from 1 to 50 and k-anonymity from 10,000 to 150,000.
10-8 First impressions from the figure are that, as expected, the
10-11 performance of the protocol increases with the number of
10-14 nodes (now is 30,000 times greater than in section V-A).
False positives

10-17 This is because, for the same level of k-anonymity, the


10-20 number of groups increases, and therefore the probability of an
10-23 honest user coinciding in every group with a malicious node
10-26 diminishes.
10-29 Following the above reasoning and the results in the figure,
1 malicious nodes
10-32 10 malicious nodes the protocol performance decreases with the value of k-
10-35 20 malicious nodes
30 malicious nodes anonymity. That is to say that the more anonymity the worse
10-38 40 malicious nodes
performance. However, the average number of false positives
50 malicious nodes
10-41 0 20000 40000 60000 80000 100000 120000 140000 160000 is bounded to less than 1 (less than 3.205 · 10−6 %) even for
k-anonymity
pretty high values of k-anonymity, which may satisfy most of
the anonymity policies.
Fig. 2. Mean and STD of false positives vs k-anonymity after 12 rounds for Figure 3 shows the evolution during time (rounds) of the
a varying number of attackers
number of false positives (mean and standard deviation) for 20
concurrent attackers and k-anonymity ranging from 30,000 to
Obviously, it also fits in any other case but in the figures we 150,000. The conclusion here is clear: the average number of
present the average number of false positives after 10 rounds false positives decreases in almost two orders of magnitude
of operation in a network with 1000 nodes, a varying number in every single round; and this is very promising result.
of malicious nodes from 1 to 10 which are selected randomly Obviously, more rounds mean more time to detect attackers,
and values k of anonymity ranging from 10 to 100 nodes but just a few rounds make negligible the probability of
per group also selected randomly. As per the figure, one can flagging an honest user as an attacker.
clearly notice that simulation values are within the range of
VI. C ONCLUSIONS
expected values as per the analytical model.
Once showed the validity of the analytical model, in the In a VANET, every vehicle must own valid credentials
following we evaluate the goodness of our proposal applied to issued by a trusted third party or CA in order to allow users
the Spain’s vehicle fleet. to authenticate data. However, the use of credentials linked to
vehicles may violate users’ privacy as long as it facilitates the
B. Application to the Spain’s car fleet vehicle tracking. This is a risk that can be overcome by means
In this section we present the results obtained from the of anonymity schemes.
analytical model for the Spain’s vehicle fleet in 2012[6], which The use of anonymity schemes can mitigate the risk of
rises up to 31,203,203 vehicles. vehicles tracking; however, it comes at the expenses of: on
Figure 2 shows the mean and standard deviation of false the one hand, preventing VANET authorities (CA and TAs)
positives obtained for a varying number of concurrent attackers from identifying malicious users and revoking them from the
On the revocation of malicious users in anonymous and non-traceable VANETs 91

network; or on the other hand, to discard the anonymity of [10] K. Oishi, M. Mambo, and E. Okamoto. Anonymous public key
users in front of the authorities thus to allow their revocation. certificates and their applications. IEICE Transactions on Fundamentals
of Electronics, Communications and Computer Sciences, 81(1):56–64,
In this paper we have presented a method based on k- 1998.
anonymity that preserves the vehicles’ anonymity both against [11] M. Raya, P. Papadimitratos, I. Aad, D. Jungels, and J.-P. Hubaux.
other vehicles/users of the system and the authorities while still Eviction of misbehaving and faulty nodes in vehicular networks. Se-
lected Areas in Communications, IEEE Journal on, 25(8):1557–1568,
being able to track malicious users and revoke them. Oct 2007.
For the evaluation of the proposal, we have derived an [12] F. Schaub, F. Kargl, Z. Ma, and M. Weber. V-tokens for conditional
analytical model for the number of false positives and neg- pseudonymity in vanets. In IEEE Wireless Communications and Net-
working Conference (WCNC 2010), pages 1–6, Los Alamitos, April
atives in several scenario conditions, and we have validated 2010. IEEE Computer Society Press.
the model by simulation. Then we have analyzed the perfor- [13] F. Sebé-Feixas. Privacy in vehicular networks and location-based
mance of our proposal with a real country vehicle fleet (the services. URV Chairs - Summer Courses, June 2007.
[14] L. Sweeney. k-anonymity: a model for protecting privacy. Int. J.
Spanish one) leading to quite promising results in terms of Uncertain. Fuzziness Knowl.-Based Syst., 10(5):557–570, Oct. 2002.
malicious tracking efficiency while providing good levels of k- [15] Sygic. Traffic service. http://www.sygic.com/en/android:traffic.
anonymity. Provided method can effectively identify malicious [16] TomTom. HD traffic. http://www.tomtom.com/en us/services/live/hd-
traffic/.
users whenever they misbehave a given number of times with [17] A. Wasef and X. Shen. Edr: Efficient decentralized revocation protocol
almost negligible rates of false positives. for vehicular ad hoc networks. Vehicular Technology, IEEE Transactions
on, 58(9):5214–5224, Nov 2009.
Other directions for future work include the development [18] WAZE. Real-Time maps and traffic information based on the wisdom
and evaluation of possible attacks to the system, in parallel of the crowd. http://www.waze.com/.
with an investigation of more efficient and secure schemes. [19] S. Zakhary, M. Radenkovic, and A. Benslimane. The quest for
location-privacy in opportunistic mobile social networks. In Wireless
Communications and Mobile Computing Conference (IWCMC), 2013
ACKNOWLEDGMENT 9th International, pages 667–673, 2013.
[20] L. Zhang, Q. Wu, A. Solanas, and J. Domingo-Ferrer. A scalable robust
This work was partially supported by the Spanish Minis- authentication protocol for secure vehicular communications. Vehicular
terio de Economı́a y Competitividad, the Spanish Comisión Technology, IEEE Transactions on, 59(4):1606–1617, May 2010.
Interministerial de Ciencia y Tecnologı́a, the Spanish Min-
isterio de Industria, Energı́a y Turismo, the Generali-
tat de Catalunya and European FEDER funds under the
projects: MINECO TUERI (TIN2011-25452), CICYT TAME-
SIS (TEC2011-22746), INNPACTO DEPHISIT (IPT-2012-
0585-370000), CONSOLIDER ARES (CSD2007-00004), as
well as the grant 2009 SGR-1362 to consolidated research
groups, the funding of which is gratefully acknowledged.

R EFERENCES
[1] TomTom user data sold to Dutch police, used to determine ideal
locations for speed traps. http://www.engadget.com/2011/04/27/tomtom-
user-data-sold-to-danish-police-used-to-determine-ideal/.
[2] P. Caballero-Gil, C. Caballero-Gil, and J. Molina-Gil. How to build
vehicular ad-hoc networks on smartphones. Journal of Systems Archi-
tecture, 59(10, Part B):996 – 1004, 2013.
[3] E. C. CRYPTOGRAPHY. The advantages of elliptic curve cryptography
for wireless security. IEEE Wireless Communications, page 63, 2004.
[4] V. Daza, J. Domingo-Ferrer, F. Sebe, and A. Viejo. Trustworthy privacy-
preserving car-generated announcements in vehicular ad hoc networks.
Vehicular Technology, IEEE Transactions on, 58(4):1876–1886, May
2009.
[5] M. de Fomento Gobierno de España. Encuesta de movilidad
de las personas residentes en España (movilia 2006/2007).
http://www.fomento.es/MFOM/LANG CASTELLANO/ESTADISTI-
CAS Y PUBLICACIONES/INFORMACION ESTADISTICA/
Movilidad/Movilia2006 2007/default.htm.
[6] D. G. de Tráfico (DGT). Parque de vehı́culos por ccaa, provincias y
tipos, 2012.
[7] Google. Google Maps, traffic option.
https://support.google.com/maps/answer/ 61454?hl=en.
[8] D. Huang, S. Misra, M. Verma, and G. Xue. Pacp: An efficient
pseudonymous authentication-based conditional privacy protocol for
vanets. Intelligent Transportation Systems, IEEE Transactions on,
12(3):736–746, Sept 2011.
[9] R. Lu, X. Lin, H. Zhu, P.-H. Ho, and X. Shen. Ecpp: Efficient conditional
privacy preservation protocol for secure vehicular communications. In
INFOCOM 2008. The 27th Conference on Computer Communications.
IEEE, pages –, April 2008.
RECSI 2014, Alicante, 2-5 septiembre 2014

Sistema de telepeaje en zonas urbanas


Roger Jardı́-Cedó∗ , Macià Mut-Puigserver† , M. Magdalena Payeras-Capellà† , Jordi Castellà-Roca∗ , Alexandre Viejo∗
∗ Dpt. d’Enginyeria Informàtica i Matemàtiques, UNESCO Chair in Data Privacy,
Universitat Rovira i Virgili,
Av. Paı̈sos Catalans 26,E-43007 Tarragona, Spain
Email: {roger.jardi,jordi.castella,alexandre.viejo}@urv.cat

† Dpt. de Ciències Matemàtiques i Informàtica,


Universitat de les Illes Balears,
Ctra. de Valldemossa, km 7,5. E-07122 Palma de Mallorca, Spain
Email: {macia.mut, mpayeras}@uib.es

Resumen—Las Low Emission Zones (LEZ) limitan el acceso dependiendo de la distancia recorrida, la ruta o el tiempo.
de vehı́culos a las zonas más céntricas de las ciudades con el Además, estos sistemas, aplicados a zonas urbanas, permiten
objetivo de reducir la densidad del tráfico y la contaminación la gestión del tráfico en zonas céntricas mediante el control del
ambiental. Estos sistemas tienen problemas de privacidad de los
conductores y de efectividad en la detección del fraude. Este flujo y la densidad de los vehı́culos, reduciendo ası́ atascos.
artı́culo presenta un sistema de telepeaje para LEZ que mejora Esto se consigue modificando el precio de las tasas de forma
estos problemas. dinámica (el aumento del precio de las zonas más densas
Palabras clave—Low Emission Zones, Privacidad, Seguridad, sugiere a los conductores evitarlas). No obstante, como se verá,
Telepeaje estos sistemas tienen ciertos problemas de privacidad.

I. I NTRODUCCI ÓN I-A. Estado del arte


Ciudades como Parı́s, Barcelona o Roma tienen problemas En los últimos años se han propuestos, en la literatura,
de circulación, con grandes atascos, y problemas de contami- varios sistemas ERP ([2], [3], [4], [5], [6], [7]). Todos ellos
nación debidos a la gran concentración de vehı́culos en ciertas requieren el uso de una On-Board Unit (OBU) con GPS y un
zonas. Las directrices sobre calidad del aire elaboradas por sistema de comunicación inalámbrica con el fin de recoger y
la OMS en 2005 orientan “sobre la manera de reducir los enviar al proveedor del servicio SP (ver definición en II-A)
efectos de la contaminación del aire en la salud”. Basadas en información relacionada con la localización del vehı́culo y las
estas recomendaciones, diferentes directivas europeas, como tasas a pagar. Es decir, la tarificación es en función de la
la 2008/50/CE, limitan el nivel de ciertos contaminantes ruta del vehı́culo. En [2] y [3], la OBU envı́a información
ambientales. Para cumplir esta legislación, las diferentes admi- del camino recorrido a un servidor externo, propiedad del SP,
nistraciones están implantando, entre otras medidas, carriles de el cual tarifica de acuerdo a su trayectoria en cada periodo
alta ocupación [1], velocidad variable o restricciones de circu- de facturación. En [4], [5], [6], [7], las tasas son calculadas
lación en zonas céntricas. Esta última medida, conocida como localmente en cada OBU y son enviadas al servidor del SP
Low-Emission Zone (LEZ) y adoptada en varias ciudades1 , en cada periodo de tarificación. En este caso, la revelación
establece que los vehı́culos paguen por circular en función de de información relacionada con la localización del vehı́culo
ciertas condiciones, como su peso o emisiones. es mı́nima. Para conseguirlo, se basan en el uso de pruebas
Desde hace décadas, el telepeaje electrónico o Electronic criptográficas para demostrar que la OBU ha sido honesta en
Toll Collenction (ETC) ha sido utilizado en autopistas, túneles el cálculo y la agregación de las tasas.
o puentes para agilizar el pago en los peajes, y a su vez, reducir El control del fraude es un objetivo importante de los siste-
los atascos. Por otro lado, gracias a nuevas tecnologı́as como mas ERP. Los conductores, para ahorrar dinero, podrı́an actuar
el GPS y la comunicación inalámbrica, se han desarrollado de forma malintencionada (p.ej. desconectando o modificando
los vehicular location-based services (VLBS), que tienen el datos de la OBU). Por este motivo, se implementan meca-
propósito de proporcionar información a los conductores en nismos basados en puntos de control Chps con la intención
función de su ubicación geográfica y mejorar la eficiencia del de poner a prueba su honestedad. Los Chps, situados aleato-
transporte. Los sistemas ETC, entendidos como VLBS, son riamente en la carretera y equipados con cámaras, registran
conocidos como Electronic Road Pricing (ERP) y presentan las matrı́culas de todos los vehı́culos que los atraviesan. Estas
varias mejoras como un cálculo más flexible de las tasas fotos son pruebas que sitúan a un vehı́culo en un determinado
momento y lugar, y son utilizadas para verificar que la
1 http://lowemissionzones.eu/ trayectoria de un vehı́culo no ha sido alterada. Para ello, en
94 R. Jardı́-Cedó, M. Mut-Puigserver, M. M. Payeras-Capellà, J. Castellà-Roca, A. Viejo

el periodo de facturación el SP y conductor interaccionan. La II-B. Requisitos


detección del fraude tiene una cierta probabilidad y depende de A continuación se describen los requisitos del sistema,
la cantidad de Chps. Además, el desconocimiento del número relacionados con el fraude, la privacidad, la autenticidad y
y de su localización, por parte de los conductores, es básico. la tecnologı́a, para establecer las bases del sistema.
El nivel de privacidad de los conductores y de detección del II-B1. Requisitos anti-fraude: Cuando un V entra o sale de
fraude son un compromiso. Si se desea un grado de detección una LEZ a través de un Chp, ambos obtienen una prueba de
elevado, la privacidad se ve afectada. Es decir, el SP será capaz entrada γi o prueba de salida γo . Esta γi es información
de reconstruir la trayectoria de un vehı́culo con más precisión que demuestra que un determinado V entró a la LEZ por
si la cantidad de Chps es mayor. Además, si los Chps son un determinado Chp a una determinada hora. Esta prueba se
movidos aleatóriamente cada cierto tiempo y los trayectos de considera válida si no puede ser modificada o alterada sin ser
los vehı́culos siguen una rutina (p.ej. ir al trabajo), la precisión detectado una vez generada (ı́ntegra), si sus emisores pueden
podrı́a ser aún mayor pero la privacidad se verı́a afectada. demostrar que es suya (auténtica) y tampoco pueden negar su
autorı́a (no-repudiable). Cada prueba esta vinculada a un V y
I-B. Contribuciones y estructura del documento un Chp. La vinculación de una prueba con un V garantiza que
Este artı́culo propone un sistema ERP para LEZs con el el token no puede ser usado por otro V’ de forma voluntaria
objetivo de mejorar el control del fraude y la privacidad de los o involuntaria. Esto evita la duplicidad de una misma prueba
conductores honestos mediante anonimidad revocable. A dife- cuando es utilizada por más de un V al mismo tiempo.
rencia de los otros sistemas, los Chps, equipados con cámaras, El SP trabaja para asegurar que todos los Ds paguen
registran únicamente los vehı́culos fraudulentos, manteniendo correctamente. En caso de no ser ası́, el SP identifica a los Ds
ası́ la privacidad de los conductores honestos. Además, la infractores y genera evidencias que lo demuestran. El fraude
OBU del vehı́culo no registra su ubicación, no se requiere es cometido por un D cuando éste conduce por una LEZ
de reconciliación entre conductor y sistema en la fase de sin ninguna γi , con una γi no válida, con una γi válida de
facturación, y el control del fraude es no probabilı́stico. otro V, o si en la salida no realiza el pago correctamente.
Estructura: En la Sec. II se presenta el sistema. En la Un SP tampoco puede acusar falsamente de fraude a un
Sec. III se introduce el protocolo. En la Sec. IV se evalúa D honesto (D no debe estar indefenso). Una falsa acusación
la seguridad, y en la Sec. V se presenta las conclusiones. ocurre cuando un SP afirma injustamente que un V no tiene
una γi , que tiene una prueba no válida, una prueba válida
II. M ODELO DEL SISTEMA que pertenece a otro V, o si en la salida no realiza el pago
II-A. Participantes involucrados correctamente.
II-B2. Requisitos de autenticidad: En la entrada y la salida
Conductor D: Conduce un vehı́culo por una LEZ. de la LEZ, Vs y Chps intercambian información. Al establecer
Vehı́culo V: Está registrado con un único D aunque puede la comunicación, ambas partes, tanto V como Chp, deben
ser conducido por varios Ds. V tiene un identificador (la demostrar su identidad a la otra parte. De esta forma, cada
matrı́cula) que lo enlaza con el propietario. una puede estar segura de que la comunicación se realiza con
Secure element SE: Módulo de seguridad a prueba de la entidad que dice ser. En caso de no ser ası́, se deben tomar
manipulaciones, instalado en cada V por la autoridad medidas para denunciar este hecho.
de tráfico competente. Realiza operaciones sensibles para II-B3. Requisitos de privacidad: El control del fraude por
garantizar los requisitos de seguridad del sistema. parte del SP puede llegar a comprometer la privacidad de
On-board unit OBU: Dispositivo de capacidad de compu- los Ds. En este caso, la curiosidad del SP puede causar una
tación y almacenamiento superior al SE instalado en cada excesiva monitorización del sistema e incluso ser consciente
V. Conecta el SE con el exterior y realiza las operaciones de cada recorrido que hace un V. Con el fin de evitar un
menos sensibles del protocolo. Dispone de un módulo de excesivo control por parte del SP sobre los Vs, el sistema debe
localización (GPS). (i) garantizar la privacidad (la identidad de D o V no puede
Service Provider SP: Ofrece un servicio de cobro ser enlazada con ningún recorrido de ningún V); (ii) evitar
electrónico de peajes (ERP) para zonas urbanas gracias la trazabilidad (SP no debe conozer el recorrido de un V); y
a una concesión pública de la administración local (p.ej. (iii) proveer al D de un anonimato revocable (si un D realiza
un ayuntamiento). Esta entidad, a parte de tener el fraude, el SP necesita su identidad para poder sancionarlo, sólo
derecho de ofrecer este servicio, tiene la responsabilidad entonces, es revelada).
de gestionar el sistema. II-B4. Requisitos funcionales: La tecnologı́a para comu-
Checkpoint Chp: Está instalado en la zona restringida por nicar Vs y Chps entre ellos debe permitir, a estos últi-
el SP y tiene como objetivo controlar el acceso de los mos, comunicarse con el V más cercano a ellos. Esto se
Vs que entran/salen de la zona para evitar el fraude. podrı́a conseguir combinando tecnologı́as de comunicación
Vehicle certification authority VCA: Proporciona claves de corta/media distancia, tales cómo Wimax, ZigBee IEEE
y certificados a los Vs. 802.15.4 o Bluetooth IEEE 802.15.1, con el uso de antenas
Punisher authority PA: Entidad de confianza que conoce direccionales o por triangulación, por ejemplo. La comunica-
la identidad del propietario del V y la revela si hay fraude. ción y el cálculo requerido en el protocolo deberán ser lo
Sistema de telepeaje en zonas urbanas 95

suficientemente rápidos para permitir una intercomunicación valor de la transacción coincide con la tarificación dependien-
en movimiento entre Vs y Chps. Cualquier interacción con do del tiempo de estancia y la categorı́a de emisiones. Si no
el D deberá ser ágil y fácil. El sistema de pago electrónico es correcto, genera una prueba de incidencia de pago ζp con
requerido en el sistema deberá ser anónimo y no trazeable. estos registros y la envı́a a PA.
Además, deberá ser lo suficientemente rápido para dar tiempo Cuando PA recibe una ζ (III-H: Sanción), la verifica. Si hay
a realizar la transacción en el proceso de salida de la zona fraude, PA revela la identidad del propietario del V (revoca el
más externa de la LEZ. anonimato) y le solicita pruebas que desmientan la acusación
por parte de SP. En función de éstas, PA sanciona o no al
II-C. Modelo de los adversarios propietario.
Los intereses de Ds y SP pueden ser opuestos. Por un lado,
los Ds quieren ahorrar dinero, a veces de forma deshonesta III-A. Setup
y actuando en contra del sistema. Por otro lado, el SP puede
llegar a comprometer la privacidad de los Ds, ya que conocer El proceso de setup es el siguiente:
la identidad de los Vs, en caso de fraude, le puede ser útil. 1. PA obtiene de las autoridades competentes (p.ej. Policı́a):
Además, el SP, con el deseo de ganar más dinero, puede Una pareja de claves asimétricas (P kP A ,SkP A ) y un
actuar deshonestamente contra los V acusandolos de fraude certificado de clave pública certP A
de manera infundada. Por consiguient, el control del fraude Un repositorio de certificados de las autoridades.
y la protección de la privacidad pueden llegar a ser objetivos 2. SP y VCA obtienen de las autoridades competentes (p.ej.
opuestos. Ayuntamiento y DGT):
III. D ESCRIPCI ÓN DEL PROTOCOLO Una pareja de claves (P kSP ,SkSP ) y
Antes de iniciar el sistema, las entidades del sistema son (P kV CA ,SkV CA ), y un certificado de CA (certSP
inicializadas (III-A: Setup y III-B: Certificación). Además, el y certV CA ) emitido por las autoridades.
SP fija los precios de la LEZ (III-D: Generación de precios), Un repositorio de certificados de las autoridades.
por unidad de tiempo y categorı́a de emisiones, enviando una La longitud de la cadena de certificación de VCA es 1, y 0
lista de precios, firmada por la entidad competente, a cada Chp. en el caso de SP. La duración de certSP puede coincidir
El SP, cada vez que decida actualizar los precios, repetirá estas con el tiempo de concesión del servicio, sin excederlo.
mismas operaciones. 3. VCA:
El SE genera unas credenciales diferentes para V cada vez I . Define un conjunto de vehı́culos V =
que entra a una LEZ (III-C: Generación de los certificados) {v1 , v2 , ..., vnV }, donde nV = |V | es la cantidad de
para poder autenticarse correctamente con los Chps que ges- vehı́culos.
tionan las entradas y salidas de la LEZ. II . Define una colección de subconjuntos K =
Cuando un vehı́culo V entra a una LEZ (III-E: Entrada al {C1 , C2 , ..., CnK } partición de V, dónde nK = |K|,
sistema) se comunica con un Chp y se autentican mutuamente. con |Ci | = nC , ∀i
Si la autenticación con V falla, únicamente en esta situación, el III . Genera y asocia una entidad de certificación V CACi
Chp toma una fotografı́a de la matrı́cula del V como evidencia a cada elemento de la colección K (C1 , ..., CnK ):
de la infracción y con ella, genera una prueba de incidencia de iii.I. Una pareja de claves (P kV CACi , SkV CACi ),
entrada ζi . La ζi es enviada al PA para verificar la existencia ∀i ∈ {1, ..., nK }
de fraude y proceder con la sanción. Si la autenticación es iii.II. Un certificado de CA certV CACi , ∀i ∈
correcta, el V obtiene una prueba de entrada γi que contiene {1, ..., nK }, con una duración cexp y una
el tiempo de entrada. longitud de la cadena de certificación de 0.
Cuando un V sale de la LEZ (III-F: Salida del sistema) 4. Cada Chp realiza las siguientes operaciones:
se comunica con un Chp y se autentican mutuamente. Si la
I . Obtiene un repositorio de certificados de las autori-
autenticación con V es correcta, el Chp informa al V del
dades y entidades (excepto de los vehı́culos).
tiempo de salida y de la cuenta destino para realizar el pago.
II . Genera una pareja de claves (P kChp ,SkChp )
Con dicha información, V calcula el importe a pagar por
III . Obtiene de SP un certificado de clave pública
el tiempo de estancia y categorı́a de emisiones, y realiza
certChp , conteniendo una extensión certChp .loc con
una transacción mediante un sistema de pago electrónico. La
sus coordenadas de localización, de manera segura.
referencia de la transacción es enviada al Chp como prueba
del pago. Finalmente, V recibe una prueba de salida γo como
III-B. Certificación
recibo. Si la autenticación falla, el Chp toma una fotografı́a
de V que forma parte de una prueba de incidencia de salida Se asume que el SE de cada V ha sido inicializado previa-
ζo , y la envı́a a PA. mente con un repositorio de certificados de las autoridades de
La verificación del pago se realiza por el SP (III-G: Verifi- certificación, con un identificador del vehı́culo Vid y con sus
cación del pago) a posteriori y cada cierto tiempo. Por cada especificaciones técnicas (marca, modelo, número de chasis,
pareja γi y γo asociada a un mismo V, el SP comprueba si el matricula, emisiones de CO2 y gases contaminantes, etc.).
96 R. Jardı́-Cedó, M. Mut-Puigserver, M. M. Payeras-Capellà, J. Castellà-Roca, A. Viejo

El proceso de certificación de un V es realizado por VCA, VI . Firma ωVq : SignVq (ωVq ) = ω¯Vq
al comprar el vehı́culo y/o al pasar la Inspección Técnica de VII . Envı́a NB , ω¯Vq y certVq a Chp
Vehı́culos (ITV): 3. Chp:
1. Registra el V a un elemento del subconjunto K (a un Ci ) I . Genera un timestamp ts0
2. Descarga, en el SE del V, la entidad de certifica- II . Verifica el certificado certVq y la firma ω¯Vq :
ción V CACi asociada al Ci (consistente en P kV CACi , V erifVq (θ∗ , NA , NB , f ingChp , ω¯Vq )
SkV CACi y certV CACi ), mediante un canal de comuni- 4. Si alguna de las verificaciones falla, el Chp realiza:
cación seguro.
I . Genera un numero de incidencia de entrada ini
III-C. Generación de certificados II . Toma una fotografı́a ph de la matrı́cula de V
III . Procesa la matricula mat
Esta fase se realiza cada vez antes de que un V entre a una
IV . Compone una prueba de incidencia de entrada ζi =
LEZ. Gracias a la entidad de certificación V CACi instalada
en el SE del V en la fase anterior, éste les permite realizar (ino ,mat,ph,ts0 ,θ∗ ,NA ,NB ,f ingChp ,ω¯Vq ,certVq )
V . Firma ζi : SignChp (ζi ) = ζ¯i
las siguientes operaciones para generar nuevos certificados de ∗
VI . Envı́a ζi =(ζi , ζ¯i ) y su certChp a SP
clave pública:
1. Calcula una nueva pareja de claves (P kVq , SkVq ) 5. Si las verificaciones realizadas en 3) son correctas enton-
2. Genera un certificado de clave pública certVq con las ces,
siguientes caracterı́sticas: I . El Chp:

Con una extensión certVq .idS que contiene el cifra- i.I Calcula el f ingVq de certVq
do probabilı́stico (p.ej. usando OAEP padding [8], i.II Compone una prueba de entrada
estandarizado en PKCS #1v2 y RFC 2437) del γi = (θ∗ ,NA ,NB ,f ingChp ,ω¯Vq ,f ingVq ,ts0 )
identificador del vehı́culo Vid con la clave pública i.III Firma γi : SignChp (γi ) = γ¯i
de PA: EncP kV CA (Vid ) i.IV Envı́a ts0 y γ¯i a V
Con una extensión certVq .emis que contiene la II . El SE del V con la ayuda de la OBU:
categorı́a de emisiones de CO2 del vehı́culo. ii.I Verifica la firma γ¯i : V erifChp (θ∗ ,NA ,
NB ,f ingChp , ω¯Vq , f ingVq , ts0 , γ¯i )
III-D. Generación de precios
ii.II Verifica ts0 sea reciente:|ts0 -current time| < δ,
Cada vez que el SP modifica los precios de tarificación de donde δ es tiempo fijado
una LEZ realiza los siguientes pasos: ii.III Guarda γi∗ = (γi ,γ¯i )
1. Fija los precios por unidad de tiempo y categorı́a de
emisiones (p.ej. european emission standards). III-F. Salida del sistema
2. Genera un timestamp ts Cuando un Chp situado en la salida de una LEZ detecta un
3. Compone una información de precios θ = (precios, ts) V, se inicia el siguiente protocolo:
4. Firma el θ: SignSP (θ) = θ̄ 1. Chp:
5. Envı́a θ∗ =(θ, θ̄) a cada Chp I . Genera un timestamp ts00 y un nonce NC
II . Compone un información de pago ρ = (ts00 ,NC ,acc),
III-E. Entrada al sistema
donde acc identifica la cuenta destino, del sistema
Cuando un Chp situado en la entrada de una LEZ detecta de pago electrónico asumido, de SP
un V, se inicia el siguiente protocolo: III . Firma el ρ: SignChp (ρ) = ρ̄
1. Chp: IV . Envı́a ρ, ρ̄ y su certChp a V
I . Genera un nonce NA 2. El SE del V con la ayuda de su OBU:
II . Compone una información de entrada ψ = (NA , θ ∗ )
I . Verifica el certificado certChp y la firma ρ̄:
III . Firma el ψ: SignChp (ψ) = ψ̄
V erifChp (ts00 , NC , acc, ρ̄)
IV . Envı́a ψ, ψ̄ y su certChp a V II . Verifica las coordenadas de localización certChp .loc
2. El SE del V con la ayuda de su OBU: del Chp (incluido en su certificado).
I . Verifica el certificado certChp y la firma ψ̄: III . Verifica ts00 sea reciente: |ts00 −current time| < δ
V erifChp (NA ,θ∗ ,ψ̄) IV . Recupera el ts0 del último registro γi
II . Verifica la firma θ̄: V erifSP (precios,ts,θ̄) V . Calcula el tiempo de estancia τ a LEZ: (ts00 -ts0 )=τ
III . Verifica las coordenadas de localización certChp .loc VI . Recupera los precios contenido en el θ ∗ del γi
del Chp (incluido en su certificado). VII . Calcula y acumula en amount la cantidad de dinero
IV . Genera un nonce NB y calcula el fingerprint a pagar en función de τ , de sus emisiones y los
f ingChp de certChp (se calcula con la función hash precios
del certificado y sirve de identificador). VIII . Realiza una transferencia según amount a la cuenta
V . Compone un mensaje destino acc y obtiene una referencia trans
ωVq = (θ∗ , NA , NB , f ingChp ) IX . Genera un nonce ND y calcula el f ingChp
Sistema de telepeaje en zonas urbanas 97

X.Compone un mensaje 1. Si es una ζi o ζo :


ωVq = (ts00 , NC , ND , f ingChp ,trans) I . Verifica las firmas
XI . Firma ωVq : SignVq (ωVq ) = ω¯Vq II . Recupera la matricula mat de la foto adjuntada
XII . Envı́a ND , trans, ω¯Vq y certVq a Chp 2. Si es una ζp :
3. Chp verifica el certificado certVq y la firma ω¯Vq : I . Verifica todas las firmas contenidas en ζp y que el
V erifVq (ts00 , NC , ND , f ingChp , trans, ω¯Vq ) firmante de γi y γo sea el mismo vehı́culo.
4. Si alguna de las verificaciones falla, el Chp realiza: II . Verifica el pago repitiendo los pasos 1-7 de III-G
I . Genera un numero de incidencia de salida ino III . Si se trata de un pago duplicado, se verifica que γo
II . Toma una fotografı́a ph de la matrı́cula de V y γo0 contengan el mismo trans
III . Procesa la matrı́cula mat IV . Si ratifica la incidencia, recupera el identificador Vid
IV . Compone una prueba de incidencia de salida de Vq (en caso de pago duplicado, se realiza sobre
ζo =(ino ,mat,ph, ts00 ,NC ,ND ,f ingChp ,trans, el último V en salir de LEZ) abriendo la extensión
ω¯Vq ,certVq ) certVq .idS (del certificado certVq contenido en el
V . Firma ζo : SignChp (ζo ) = ζ¯o registro γi o γo ): DecP A (certVq .idS) = Vid

VI . Envı́a ζo =(ζo , ζ¯o ) y su certChp a SP 3. Se pone en contacto con el propietario del V a partir de
5. Si las verificaciones realizadas en 3) son correctas enton- la mat o del Vid , le informa del proceso sancionador y
ces, le exige pruebas que lo refuten.
I . El Chp: 4. Si el propietario presenta pruebas, se evalúan. En caso de
i.I Calcula el f ingVq de certVq haber fraude, se le multa en función del tipo de infracción.
i.II Compone una prueba de salida γo =
(ts00 , NC ,ND ,f ingChp ,trans,ω¯Vq ,f ingVq ) IV. A N ÁLISIS DE SEGURIDAD / REQUISITOS
i.III Firma γo ,SignChp (γo )=γ¯o , y lo envı́a a V
En esta sección analizamos las propiedades de seguridad de
II . El SE del V, con la ayuda de la OBU:
nuestro protocolo. La discusión esta organizada en tres propo-
ii.I Verifica la firma γ¯o : V erifChp (ts00 ,NC ,ND , siciones que con sus respectivas reivindicaciones proporcionan
f ingChp ,trans,ω¯Vq , f ingVq ,γ¯o ) evidencias del cumplimento de las propiedades de seguridad
ii.II Guarda γo∗ = (γo ,γ¯o ) del esquema.
III-G. Verificación del pago Proposición 1. La propuesta preserva la autenticidad, el no
Cada Chp envı́a periódicamente todas las γi , γo y ζs (ζi repudio y la integridad de las pruebas de entrada y de salida.
y ζo ) a SP. SP reenvia ζi y ζo a PA. Además, el SP realiza
las siguientes verificaciones cada cierto tiempo (en batch) por R EIVINDICACI ÓN 1. No es posible la creación de pruebas
cada conjunto de registros γi y γo asociados a un mismo Vq de entrada o salida fraudulentas.
(con un mismo f ingVq ): P RUEBA . Las pruebas de entrada tienen la forma siguien-
1. Extrae ts0 , ts00 , y certVq .emis, contenidos en γi y γo te γi = (θ∗ ,NA ,NB ,f ingChp ,ω¯Vq ,f ingVq ,ts0 ). El checkpoint
2. Extrae precios, contenido en el θ∗ del γi firma la prueba de entrada γi : SignChp (γi ) = γ¯i y envı́a
3. Extrae la referencia trans, contenida en γo el par ts0 y γ¯i al vehı́culo. Análogamente, la prueba de salida
4. Calcula el tiempo en la zona τ =ts00 -ts0 γo = (ts00 , NC ,ND ,f ingChp ,trans,ω¯Vq ,f ingVq ) es firmada por
5. Calcula la cantidad total a pagar amount0 en función de el checkpoint, SignChp (γo )=γ¯o ,y enviada al vehı́culo. Por
τ , certVq .emis y precios tanto la creación de pruebas de entrada y de salida falsas es
6. Verifica si amount = amount0 computacionalmente imposible actualmente si no se dispone
7. Verifica que la transferencia se haya realizado de la clave secreta utilizada por el Chp en la firma.
8. Verifica que trans haya sido utilizado en otra γo (p.ej. R EIVINDICACI ÓN 2. Los Chps emisores de las pruebas
buscando duplicados) de entrada y de salida no pueden negar las emisiones de las
9. Si la verificación falla, mismas.
I . Genera un numero de incidencia de verificación inv
P RUEBA . Las pruebas de entrada son generadas y firmadas
II . Compone una prueba de incidencia de pago ζp con
por su emisor (los Chps) y, considerando que el esquema de
γi y γo de Vq : ζp =(inv ,γi ,γo ). En caso que trans firma es seguro, esta operación solamente la pueden realizar
haya sido reutilizado, añade la γo0 que lo demuestra ellos. Por lo tanto, la identidad del Chp está asociada a
ζp = (inv , γi , γo , γo0 ) la prueba de entrada o de salida y por las propiedades
III . Firma ζp : SignSP (ζp ) = ζ¯p
del esquema de firma electrónica estos no pueden negar su

IV . Envı́a ζp =(ζp ,ζ¯p ) y su certSP a PA
autorı́a.
R EIVINDICACI ÓN 3. El contenido de las pruebas de
III-H. Sanción entrada y de salida no puede ser modificado por los vehı́culos.
PA realiza las siguientes operaciones en función del tipo de P RUEBA . Suponiendo que el esquema de firma es seguro
incidencia ζ recibida: y que la función resumen utilizada en la firma es resistente
98 R. Jardı́-Cedó, M. Mut-Puigserver, M. M. Payeras-Capellà, J. Castellà-Roca, A. Viejo

a colisiones, si se modifica el contenido del billete la veri- de un cifrado probabilı́stico utilizando, por ejemplo, un sistema
ficación de la firma de los billetes será incorrecta dado que de padding OAEP que implica que el resultado de cada nueva
Signe (m) = ESke (h(m)) = m̄. Para que la verificación fuera operación de cifrado de las credenciales del V sea diferente.
correcta se deberı́a volver a generar la firma realizada sobre
Resultado de la Proposición 2. El esquema de telepeaje
el resumen del nuevo contenido. Esta operación no es posible
presentado aquı́ preserva la privacidad de acuerdo con las
so no se dispone de la clave secreta del checkpopint.
argumentaciones 4 y 5: los usuarios pueden utilizar el sistema
Resultado de la Proposición 1. De acuerdo con las pruebas de forma anónima y cada uno de los usos no pueden ser
presentadas en Claims 1, 2 y 3, puede asegurarse que el relacionados entre si con respecto a la identidad de los
protocolo satisface los requerimientos de seguridad necesarios vehı́culos.
(autenticidad, integridad y no repudio) para que las pruebas
Proposición 3. El sistema de telepeaje posee los requisitos
puedan considerarse válidas.
antifraude en cuanto a la corrección y verificabilidad de las
Proposición 2. El sistema de telepeaje presentado aquı́ pre- evidencias generadas en el protocolo.
serva la privacidad de sus usuarios manteniendo su anonimato
R EIVINDICACI ÓN 6.
y evitando la trazabilidad de sus acciones.
Se puede identificar a los defraudadores gracias al sistema
R EIVINDICACI ÓN 4. El sistema garantiza el anonimato de de revocación del anonimato que posee el protocolo.
sus usuarios honestos. P RUEBA . En caso que los usuarios no realicen de forma
P RUEBA . La información que el usuario debe transmitir correcta la autenticación en la entrada y/o salida del sistema
para entrar al sistema es ωVq = (NA , NB , f ingcertChp ) y pueden perder el anonimato ya que el Chp realizará una foto
su firma. El Chp comprobará la firma con el certificado al V y capturará la matricula. Esta información es enviada a
certVq que acompaña el mensaje del usuario. Este certificado la PA que actuará de la forma especificada en el protocolo de
(generado por el SE del V antes de la entrada a la LEZ) Sanción. En la ejecución del protocolo de Sanción la PA tiene
identifica el vehı́culo, pero esta información está protegida con la capacidad de identificar al usuario a través de la matricula
un cifrado asimétrico usando la clave pública de la PA. Por del vehı́culo.
tanto, el Chp puede comprobar la firma pero no identificar al En caso que los usuarios no hayan realizado el pago de
vehı́culo. Posteriormente, el Chp genera y transmite al usuario la forma correcta, la SP en el protocolo de Verificación de
la γ¯i . Con esta prueba el vehı́culo puede entrar a la LEZ. La pago comprueba que la cantidad pagada se corresponda con
γ¯i no tiene más información del usuario que la contenida en la tarificación establecida en función de τ y de las emisiones
ωVq . Esto significa que V entrará a la LEZ sin ser identificado. de V. Si la verificación falla, se envı́a esta información a
Referente a la salida del sistema y, dejando de lado el la PA para que el usuario sea sancionado. La PA ratifica
sistema de pago que pueda ser utilizado (suponemos un la incidencia e identifica al usuario abriendo el campo del
sistema de pago que permita el anonimato), el usuario debe certificado certVq .idS con su clave secreta. La obtención de
enviar al Chp de salida la siguiente información: ωVq = Vid permite identificar y sancionar la usuario deshonesto.
(ts, NC , ND , f ingcertChp ,trans). Al suponer que el pago es R EIVINDICACI ÓN 7.
anónimo, no se puede identificar al usuario a través de trans. La ejecución del protocolo genera evidencias para que un
Tampoco, por la razón explicada en el anterior parágrafo se usuario honesto pueda guardar en su OBU y pueda usarlas
puede identificar al usuario a través de la firma de ωVq . Con- para comprobar o rebatir las acusaciones de fraude.
secuentemente la salida y la entrada de usuarios honestos en P RUEBA . En el momento que un usuario es acusado de
una LEZ utilizando el sistema presentado aquı́ son anónimas. no realizar correctamente la autentificación se genera una pdi
R EIVINDICACI ÓN 5. EL protocolo de telepeaje no permite que registra la incidencia. El usuario puede ser acusado de
rastrear o enlazar las operaciones de los vehı́culos. usar un certificado certVq inapropiado o de realizar una firma
P RUEBA . La información que genera la ejecución del ω¯Vq incorrecta. En ambos casos, durante el procedimiento de
protocolo no permite enlazar las distintas entradas y salidas de Sanción la PA se pone en contacto con él para que pueda
las LEZs que pueda realizar un vehı́culo ya que el protocolo aportar a la pruebas para rebatir la acusación.
descrito en III.C se ejecuta cada vez que el V accede a una Un usuario honesto podrá recuperar de su OBU un certVq
LEZ. Esto significa que el SE de vehı́culo genera un nuevo que se corresponda con su vehı́culo (identificado por mat)
certVq cada nueva entrada. Este certificado es el único elemen- o una ω¯Vq que la haya generado correctamente el SE con
to que podrı́a identificar al V. Ahora bien, teniendo en cuenta la ayuda de la OBU del usuario durante la el protocolo de
que el uso del certificado es único para cada entrada/salida, entrada/salida de la LEZ. Cabe recordar que los requisitos del
nadie puede relacionar el V de esta entrada/salida con otra sistema establecen que la OBU de un vehı́culo tenga suficiente
ninguna otra entrada/salida. capacidad de almacenamiento para poder verificar las posibles
La información que se podrı́a repetir en otra entrada/salida acusaciones de fraude que se produzcan.
del mismo V es el campo certVq .idS del certificado donde En caso de una incidencia de pago, el usuario debe demos-
se encuentra la identidad del vehı́culo. Pero, tal y como se trar que ha hecho el pago de acuerdo con los datos de ρ̄ y γ¯o
especifica en el protocolo, el certVq .idS esta calculado a partir (ambos firmados por el Chp). Por tanto, un usuario honesto
Sistema de telepeaje en zonas urbanas 99

podrá recuperar estas informaciones de su OBU y remitirlas a


la PA para rebatir la acusación.
Resultado de la Proposición 3. El esquema de telepeaje
presentado controla el fraude y puede identificar a los usuarios
que lo han cometido realizando la correspondiente sanción.
El protocolo permite también a los usuarios honestos obtener
evidencias de su buen funcionamiento para desmentir posibles
sanciones que se deban a algún tipo de funcionamiento
incorrecto de los actores del sistema.
V. C ONCLUSIONES Y TRABAJO FUTURO
En este trabajo se ha presentado un sistema ERP para áreas
urbanas que proporciona un sistema de control del fraude
robusto con un elevado nivel de privacidad. Se controla la
entrada y la salida de la LEZ de manera que se tarifica de
forma justa y anónima. No obstante, si un usuario comete
fraude es identificado mediante una foto, o gracias a la
revocación de su privadidad.

Como trabajo futuro se considera la extensión del protocolo


para considerar más de una LEZ, y su implementación para
evaluar su aplicación práctica.
AGRADECIMIENTOS
Este trabajo está parcialmente financiado por el Gobierno de
España (a través de una beca FPI BES-2012-054780 y los proyectos
CO-PRIVACY TIN2011-27076-C03-01, ARES-CONSOLIDER IN-
GENIO 2010 CSD2007-00004 y BallotNext IPT-2012-0603-430000).
Las opiniones, de los autores que pertenecen a la Cátedra UNESCO
de privacidad de datos, expresadas en este artı́culo no reflejan
necesariamente la posición de la UNESCO ni la comprometen.

R EFERENCIAS
[1] “Resolución int/2836/2013.” CVE-DOGC-B-14013017-2014. Núm 6541
- 15.1.2014.
[2] A. R.A.Popa, H.Balakrishnan, “Vpriv: protecting privacy in location-
based vehicular services,” in SSYM’09, 2009.
[3] S. J. X.Chen, G.Lenzini, “A group signature based electronic toll pricing
system,” in ARES’12, 2012.
[4] C. C. B. I. J.Balasch, A.Rial, “Pretp: Privacy-preserving electronic toll
pricing,” in SSYM’10, 2010.
[5] S. H. S.Meiklejohn, K.Mowery, “The phantom tollbooth: privacy-
preserving electronic toll collection in the presence of driver collusion,”
in SSYM’11, 2011.
[6] E. I. J.Day, Y.Huang, “Spectre: spot-checked private ecash tolling at
roadside,” in WPES ’11, 2011.
[7] B. F.Garcia, E.R.Verheul, “Cell-based privacy-friendly roadpricing,” Com-
put. Math. Appl., 2013.
[8] M.Bellare and P.Rogaway, “Optimal asymmetric encryption–how to
encrypt with rsa,” 1994.
RECSI 2014, Alicante, 2-5 septiembre 2014

Utilizando Certificados Implı́citos para Asignar


Identidades en Overlays P2P
Juan Caubet Jose L. Muñoz Oscar Esparza
Departamento de Departamento de Departamento de
Ingenierı́a Telemática (ENTEL) Ingenierı́a Telemática (ENTEL) Ingenierı́a Telemática (ENTEL)
Universitat Politècnica de Catalunya Universitat Politècnica de Catalunya Universitat Politècnica de Catalunya
Email: juan.caubet@entel.upc.edu Email: jose.munoz@entel.upc.edu Email: oscar.esparza@entel.upc.edu

Resumen—Desde hace años, la seguridad en las redes P2P atención en la seguridad. La transmisión de video en redes
estructuradas está siendo cuestionada, y por ello se han propuesto P2P surgió como una evolución al intercambio de contenidos
muchos trabajos con el objetivo de proporcionar enrutamiento multimedia mediante descarga. Su poder para dar cabida a
seguro, sistemas de reputación, control de acceso, confidenciali-
dad de los datos, etc. Sin embargo, el proceso de asignación de millones de usuarios, junto con su capacidad de resistencia
identidades se ha dejado casi totalmente olvidado. Estas redes al dinamismo, su fiabilidad y su bajo coste, son algunas de
están diseñadas para que cada usuario tenga un identificador las razones por las que las redes P2P están siendo cada vez
único (nodeID), pero la mayorı́a de los sistemas existentes más utilizadas por este tipo de aplicaciones. El ejemplo es que
permiten que los usuarios puedan obtener un conjunto de ellos, las aplicaciones de video bajo demanda (VoD) producirán tres
e incluso seleccionarlos. Ambas actuaciones provocan problemas
importantes de seguridad, ya que gracias a ello los usuarios veces más tráfico en 2015 del que produjeron en 2011 [1].
pueden alterar el adecuado funcionamiento de la red. En este SopCast, PPTV, CoolStreaming, TVUnetworks y Zattoo son
trabajo proponemos un protocolo de asignación de nodeIDs algunas de las muchas aplicaciones de streaming de video que
basado en la emisión de certificados implı́citos. Nuestro propósito se han desarrollado hasta el momento. Sin embargo, la mayorı́a
es proporcionar servicios de seguridad que permitan luchar de ellas son plataformas propietarias, las cuales utilizan la
contra la mayorı́a de las amenazas que sufren estas redes, con
especial atención a la asignación de identidades. Este protocolo segunda generación de redes P2P o distribuyen contenidos con
se basa en el uso de certificados y la generación conjunta de un control de acceso deficiente, y poca o nula seguridad.
nodeIDs por parte la Autoridad de Certificación (CA) y el nuevo Debido a sus caracterı́sticas, las overlays P2P presentan vul-
usuario. nerabilidad ante ciertos ataques, lo cual debe ser solucionado
Palabras clave—Ataque Eclipse, Ataque Sybil, Overlay P2P, si queremos utilizar estas redes para implementar aplicacio-
Gestión de Identidades, Certificados Implı́citos
nes comerciales (como servicios de VoD bajo suscripción).
Además, esta medida ayudarı́a a que los usuarios tengan más
I. I NTRODUCCI ÓN
confianza en las redes P2P, ya que a menudo se piensa que
Las redes Peer-to-Peer (P2P) estructuradas, de aquı́ en son inseguras por naturaleza.
adelante overlays P2P, aparecieron hace unos años para re- Las overlays P2P han sido analizadas en profundidad para
solver problemas de enrutamiento en grandes infraestructuras garantizar su escalabilidad y eficiencia. Sin embargo, pocos
distribuidas, incluso a nivel de Internet; ya que pueden pro- mecanismos de seguridad se están utilizando en la actualidad.
porcionar escalabilidad, tolerancia a fallos, auto-organización La mayorı́a de estas redes asumen que los nodos tienen un
y baja latencia. Por ello, y según el estudio anual “Cisco comportamiento honesto, pero este supuesto no es aceptable en
Visual Networking Index (VNI) Forecast” [1], el tráfico P2P entornos abiertos. La existencia de nodos anónimos y la falta
representaba alrededor del 30 % del tráfico IP global en de una autoridad centralizada capaz de controlar (y castigar)
2011 y crecerá con una tasa de crecimiento anual compuesto a los nodos, hace que estos sistemas sean vulnerables frente a
(CAGR) del 23 % de 2010 a 2015. Sin embargo, las overlays comportamientos egoı́stas y maliciosos. Y desafortunadamente
P2P no están siendo ampliamente utilizadas por aplicaciones estos comportamientos no pueden ser evitados únicamente
comerciales, ya que presentan importantes problemas de se- mediante el uso de los servicios básicos de seguridad. Las
guridad. Todos sabemos que hoy en dı́a la mayor parte de overlays P2P también deben seguir las primitivas de enruta-
estas redes funcionan razonablemente bien sin necesidad de miento seguro descritas por Wallach en [2], que son: (1) el
profundizar en la seguridad, pero no hay que perder de vista mantenimiento seguro de las tablas de enrutamiento, (2) el
que proporcionan servicios gratuitos; y por ello los usuarios enrutamiento seguro de mensajes, y (3) la asignación segura
están dispuestos a asumir ciertas deficiencias (no garantizan de los identificadores de nodo (nodeIDs). Sin embargo, los
una calidad de servicio (QoS) mı́nima), e incluso algún que dos primeros paradigmas dependen directamente del tercero.
otro riesgo. Si los nodeIDs pueden ser elegidos por los usuarios sin
Las aplicaciones P2P de video streaming son un buen ningún tipo de control, podemos tener problemas de seguridad
ejemplo de aplicaciones comerciales que necesitan especial y funcionamiento. Desafortunadamente, hasta ahora se ha
102 J. Caubet, J.L. Muñoz, O. Esparza

prestado poca atención a la forma en que los nodeIDs deben Los usuarios en la red CAN [6] son identificados por la
ser construidos, o cómo hacer los mecanismos de control zona que tienen asignada dentro del espacio virtual, zonas
de acceso más robusto. Al igual que cualquier otra red, las seleccionadas por ellos mismos. En las redes Chord [7] y
overlays P2P requieren de un control de acceso eficiente Kademlia [8], los nodeIDs son generados por los usuarios
para prevenir el acceso de posibles atacantes a la red. Pero utilizando una función hash sobre sus direcciones IP. En Pastry
además, éstas deberı́an disponer de un sistema de asignación [9] los nodeIDs son asignados al azar por el software del
de identidades robusto, con el fin de mejorar la confianza de cliente. Y de manera similar en otras overlays P2P.
los usuarios en estas redes y que ası́ puedan ser mayormente Varios problemas relacionados con las identidades surgen
utilizadas por aplicaciones comerciales. de la asignación descontrolada de los nodeIDs: Ataques Sy-
Por ello proponemos el uso de certificados digitales y bil, ataques Eclipse, ataques Man-in-the-Middle (MITM), la
un nuevo protocolo de asignación de identidades, el cual presencia de whitewashers, etc. A continuación se describen
aprovecha la emisión de estos certificados. Más concretamente, algunas de las amenazas más importantes.
proponemos el uso de certificados implı́citos [3], [4], los cuales
II-A. El ataque Sybil
presentan ciertas ventajas sobre los certificados tradicionales
(certificados explı́citos). Los certificados implı́citos tienen un La gestión de múltiples nodeIDs (Sybils) por parte del
menor tamaño, ya que no incluyen la firma de la entidad mismo nodo se conoce como ataque Sybil [10]. Llevando a
emisora, y pueden ser verificados más rápido, ya que requiere cabo este ataque, un usuario malintencionado puede aumentar
menos tiempo de cálculo la reconstrucción de una clave su presencia dentro de la overlay simulando artificialmente la
pública que verificar una firma digital. Por otra parte, la existencia de varios nodos. Por lo tanto, el atacante que puede
generación de estos certificados nos permite construir nodeIDs manejar un grupo de nodos puede alterar el funcionamiento
de forma segura. Para ello utilizamos las claves públicas, las de la red, o simplemente mejorar su reputación.
cuales son construidas conjuntamente por los usuarios y la II-B. El ataque Eclipse
autoridad de certificación (CA), y ası́ minimizamos el impacto
El ataque Eclipse [5] pretende alterar la información de en-
de los ataques Eclipse [5], entre otros.
rutamiento de un nodo (o grupo de nodos) objetivo para aislar-
El resto del artı́culo está organizado de la siguiente forma: lo del resto de la overlay. El atacante interceptará los mensajes
La sección II explica algunos de los problemas existentes en dirigidos a dicho nodo (o grupo) mediante un conjunto de
las overlays P2P relacionados con las identidades. La sección nodos confabulados (o Sybils) que se encuentran cercanos al
III presenta algunas propuestas que intentan prevenir, detectar objetivo con el fin de controlar sus comunicaciones.
y/o limitar los problemas de identidad experimentados en
estas redes. La sección IV explica que son los esquemas de II-C. El Ataque Man-In-The-Middle (MITM)
compromiso y describe un esquema de certificados implı́citos Como su nombre indica, en este ataque el atacante se sitúa
basado en curvas elı́pticas. La sección V presenta nuestro entre dos nodos con el propósito de espiar sus comunicaciones,
protocolo de asignación de identidades para una overlay P2P. o incluso manipularlas. Por lo general, en las redes P2P,
Y por último, en la sección VI se extraen algunas conclusiones. el objetivo de estos atacantes es robar nodeIDs y/o generar
información falsa. Por lo tanto, si tenemos en cuenta el tipo
II. P ROBLEMAS DE I DENTIDAD EN OVERLAYS P2P de enrutamiento de estas redes y permitimos que los nodeIDs
sean seleccionados por los usuarios sin ningún control, no hay
La mayorı́a de las overlays P2P están implementadas utili- duda de que estas redes son extremadamente vulnerables a
zando tablas de hash distribuidas (DHTs), que almacenan pares ataques MITM.
{clave, valor} junto con los nodeIDs creando un espacio vir-
tual. Un valor puede ser un recurso (por ejemplo, un archivo), II-D. Otros Problemas
o la forma de llegar a él (un puntero), y la clave asociada La eficiencia de los algoritmos de enrutamiento se basa
indica su ubicación. La DHT se divide en subtablas, las cuales en la uniforme distribución de los nodeIDs. Por lo tanto, el
corresponden a una zona determinada del espacio virtual y rendimiento de una overlay puede ser globalmente degradada
van siendo asignadas a los diferentes nodos. Ası́ cada nodo si la mayorı́a de los nodeIDs pertenecen a una sola zona del
es responsable de una zona, y por lo tanto es responsable de espacio virtual. Y desafortunadamente, si los nodeIDs pueden
los pares {clave,valor} contenidos en esa zona (almacenando ser seleccionados por los usuarios, nadie tendrá la seguridad de
mensajes de contenido y enrutamiento). Por lo general, una que los identificadores van a estar distribuidos uniformemente.
zona es asignada a un nodo cuyo nodeID es numéricamente Otra amenaza a la seguridad relacionada con los nodeIDs es
cercano a los valores de las claves almacenadas en la subtabla la presencia de whitewashers (nodos que intencionadamente
correspondiente. Por lo tanto, la ubicación de los nodos en el abandonan la red y vuelven a entrar en ella con un nuevo
espacio virtual está directamente relacionada con sus nodeIDs. nodeID con la intención de limpiar su mala reputación [11]).
Y desafortunadamente, en la mayorı́a de las overlays P2P Los sistemas de reputación pueden ser utilizados para prevenir
actuales estos identificadores son generados por los usuarios comportamientos maliciosos y promover la colaboración entre
localmente, lo que significa que pueden elegir sus nodeIDs y los nodos. Sin embargo, la eficacia de estos sistemas depende
consecuentemente su ubicación en la overlay. de la estabilidad de los nodeIDs.
Utilizando Certificados Implı́citos para Asignar Identidades en Overlays P2P 103

III. E STADO DEL A RTE Estos esquemas son primitivas muy útiles en criptografı́a
Douceur [10] fue el primero en tratar el ataque Sybil en y siempre deben cumplir con dos propiedades: Vinculación y
overlays P2P y comentar la imposibilidad de saber si dos Ocultación. La Vinculación asegura que en la fase de Reve-
nodos son gestionados por dos usuarios diferentes, o si en lación un compromiso sólo pueda revelar con éxito un valor
realidad lo hace uno solo; incluso recabando información de (unicidad). La Ocultación garantiza que la fase de Compromi-
otros nodos de la red. De esta forma concluye que una entidad so no revela ninguna información sobre el valor oculto (secreto
de confianza que certifique los nodeIDs es la única solución prefecto). Tanto la Vinculación como la Ocultación pueden ser
para evitar por completo el ataque Sybil en estas redes. Sin garantizadas (estadı́stica o computacionalmente) en función de
embargo, también sugiere el uso de métodos que añadan un la potencia de cálculo necesaria para romperlas. Estos esque-
coste computacional al proceso de obtención de nodeIDs para mas son aplicados en protocolos tales como las pruebas de
mitigar el ataque. Siguiendo esta lı́nea, hasta la fecha se han conocimiento cero (Zero-knowledge), la computación multi-
propuesto muchas alternativas. parte, las subastas digitales o el comercio electrónico.
En [12], Castro et al. proponen dos formas centralizadas de En este artı́culo nosotros definimos un nuevo esquema
generar nodeIDs. La primera de ellas es delegar el problema de compromiso basado en la criptografı́a basada en curvas
a un conjunto de entidades de confianza, las cuales firman los elı́pticas (ECC) con el fin de mejorar la seguridad en un
certificados vinculándolos con un nodeID aleatorio, una clave protocolo de emisión de certificados implı́citos.
pública y la dirección IP del usuario. La segunda propuesta IV-B. Certificados Implı́citos
consiste en cobrar dinero por los certificados, u obligar a los
Un certificado estándar contiene explı́citamente la clave
usuarios a vincular su identidad real con los nodeIDs. Srivatsa
pública del usuario y la firma de la CA que ha emitido dicho
y Liu proponen el uso de certificados con un tiempo de vida
certificado, junto con otra información adicional (número de
limitado y emitidos por una CA, el cual también vincula los
serie, perı́odo de validez, identidad del emisor, identidad del
certificados a nodeIDs aleatorios [13]. En [14], Butler et al.
usuario, etc.). Un certificado implı́cito [3], [4] no contiene la
consideran el uso del encriptado basado en identidad (IBE),
clave pública del usuario ni la firma de la CA. En lugar de
donde las claves públicas son derivadas directamente de los
ello contiene la información necesaria para calcular su clave
nodeIDs. Los nodeIDs son generados aleatoriamente por una
pública asociada, un parámetro de reconstrucción.
CA y la autenticación de los nodos se lleva a cabo a través de
un proceso de callback utilizando la dirección IP del usuario. Por lo tanto, un certificado implı́cito es simplemente un par
En [15], Aiello et al. proponen, por una parte introducir la (I, Z), donde I denota la información incluida en el certificado
interacción humana en la fase de autenticación utilizando el y Z denota el parámetro de reconstrucción. Los certificados
protocolo OpenID, y por otra parte utilizar una entidad de implı́citos tienen una longitud más corta que los explı́citos y
confianza que vincule la identidad real del usuario con su clave proporcionan ası́ una alternativa más eficiente.
pública y con un nodeID aleatorio para generar un LikirID. Antes de validar la firma de un emisor, cualquier receptor
En [16], Rowaihy et al. han propuesto un mecanismo de de un certificado implı́cito debe reconstruir la clave pública
puzzles criptográficos para limitar el ataque Sybil. Proponen asociada utilizando Z y la clave pública de la CA emisora.
un sistema de control de admisión utilizando una estructura De la misma manera que con los certificados explı́citos, el
jerárquica autoorganizada de nodos y una cadena de puzzles receptor debe confiar en la CA y disponer de su clave pública
criptográficos. Ellos explotan dicha estructura jerárquica para para tener ası́ la seguridad de que la clave reconstruida ha
distribuir la carga y aumentar la capacidad de resistencia a los sido emitida por dicha CA. Con los certificados explı́citos, el
ataques dirigidos, y actualizan los puzzles con frecuencia para receptor verifica la firma del certificado con la clave pública
ası́ evitar la precomputación. En [12], [17], [18], sus autores de la CA, y a partir de ese momento puede estar seguro de que
también utilizan puzzles criptográficos para limitar el ataque la clave contenida en el certificado pertenece a un determinado
Sybil. usuario y ha sido emitida por esa CA. Sin embargo, validar
únicamente el certificado no es suficiente para autenticar a
IV. BACKGROUND un usuario. Por lo tanto, para autenticar a un usuario, éste
debe demostrar el conocimiento de la clave privada asociada
IV-A. Esquemas de compromiso (Commitment Schemes)
utilizando un protocolo criptográfico seguro. Y lo mismo
Un esquema de compromiso es un protocolo interactivo en- aplica a los certificados implı́citos, donde la autenticación
tre dos participantes (Emisor y Receptor), destinado a ocultar de una clave pública y la autenticación de pertenencia a un
temporalmente un valor que ya no debe ser cambiado. Es usuario no son separables.
decir, el Emisor se compromete a utilizar un valor, el cual ha La figura 1 ilustra el esquema de emisión de certificados
de permanecer temporalmente oculto para el Receptor. Estos implı́citos “Elliptic Curve Qu-Vanstone” (ECQV) [4], pro-
sistemas suelen consistir de dos fases: puesto por el Standards for Efficient Cryptography Group
1. Fase 1 (Compromiso): el Emisor se compromete a (SECG). En él un usuario X solicita un nuevo certificado
utilizar un determinado valor. enviando un punto aleatorio dentro de una curva elı́ptica (NX ),
2. Fase 2 (Revelación): el Emisor prueba al Receptor que el cual es utilizado por la CA para generar el parámetro de
el valor no ha sido cambiado desde entonces. reconstrucción de su nueva clave pública (Z = NX + N ). Una
104 J. Caubet, J.L. Muñoz, O. Esparza

vez calculado Z, la CA calcula el valor del hash del certificado R chequea que u realmente fue utilizado para generar U .
(h = H(I||Z)) y la firma (s). Finalmente X recibe su nuevo Finalmente R calcula el valor de v utilizando c.
certificado (Z, I) y su firma (s), genera su nuevo par de claves
criptográficas (la clave privada dX y la clave pública QX )
utilizando la clave pública de la CA (QCA ).

Figura 2. Nuevo Esquema de Compromiso.

En este esquema de compromiso se cumplen las dos


principales propiedades de seguridad que requieren este tipo
de protocolos: Vinculación y Ocultación. La Vinculación es
segura, ya que dos valores diferentes de u no pueden dar
como resultado el mismo valor correcto de v. Y la Ocultación
Figura 1. Protocolo de Emisión de Certificados Implı́citos ECQV. es computacional, ya que dados los valores c, U y G, un
atacante puede resolver el problema del logaritmo discreto en
En este artı́culo proponemos una serie de modificaciones una curva elı́ptica (ECDLP) para obtener el valor aleatorio u,
sobre este sistema de emisión de certificados con el fin de para luego para calcular v.
proponer un nuevo sistema de gestión de identidades seguro. La modificación realizada en el esquema ECQV ha con-
sistido en añadir el esquema de compromiso anteriormente
V. P ROTOCOLO DE A SIGNACI ÓN DE I DENTIDADES explicado. Con ello evitamos que la CA pueda elegir el valor
Nuestro protocolo asigna nodeIDs de forma segura y efi- del parámetro de reconstrucción (Z) una vez conocido el
ciente aprovechando la emisión de certificados implı́citos. valor enviado por el usuario (NX ) durante el proceso de
Estos certificados proporcionan identificación digital para au- generación de certificados. Esto implica que ahora la CA debe
tenticar usuarios, soporte a la criptografı́a de clave pública, seleccionar N y enviar un compromiso (c, U ) al usuario antes
etc.; pero también presentan ciertas ventajas sobre los certifi- de recibir NX . Ası́, una vez que el usuario ha recibido su
cados tradicionales. En este protocolo, los NodeIDs se calculan nuevo certificado, él será capaz de verificar que el certificado
utilizando una función de hash sobre la clave pública de los se ha generado utilizando el valor al que se comprometió la
usuarios, pero a diferencia de otras propuestas, estas claves CA.
públicas son generadas bajo la supervisión y participación
V-B. Especificaciones
de una CA, la cual no conoce las claves privadas asociadas.
El esquema de emisión de certificados ECQV [4] ha sido En esta sección describimos el protocolo en detalle; la
modificado con el fin de garantizar que ninguna de las dos información intercambiada, la forma de intercambiarla, los
partes involucradas en el proceso tenga la capacidad de elegir mecanismos de seguridad utilizados, etc. La figura 3 muestra la
el valor de la clave pública emitida. información intercambiada por ambas partes y las operaciones
llevadas a cabo, pero sin tener en cuenta las operaciones de
V-A. Suposiciones y Clarificaciones cifrado y firma. La tabla I presenta un resumen global de la
Con el fin de adaptar el esquema ECQV a nuestras nece- notación utilizada a lo largo de esta sección.
sidades, hemos definido un nuevo esquema de compromiso V-B1. Paso 1: Cada vez que un usuario quiere unirse a
basado en curvas elı́pticas. Este esquema ha sido construido la overlay P2P contacta con la CA enviando un “HELLO
inspirándonos en el cifrado Exclusive-OR (XOR) y suponien- MESSAGE”, el cual contiene las identidades (IDX y IDCA ),
do que un emisor S posee una clave privada dS y una clave una marca temporal (tX ), también utilizada como identificador
pública QS = dS G, donde G es el generador de la curva de petición, y el certificado del usuario (CX ). Este mensaje es
elı́ptica. La figura 2 describe el protocolo en detalle, donde firmado por el usuario utilizando su clave privada en el mundo
u es un número aleatorio, U es el punto de la curva elı́ptica real, y cifrado utilizando la clave pública de la CA.
asociado a u, c es el valor de compromiso y v es el valor
elegido por S. En la primera fase, S se compromete a utilizar
HELLO M ESSAGE, X → CA :
un valor v enviando los valores c y U a R. Y en la segunda
fase, S revela el valor del número aleatorio utilizado (u) y {CX , {IDX , IDCA , tX }dX }QCA
Utilizando Certificados Implı́citos para Asignar Identidades en Overlays P2P 105

Tabla I
N OTACI ÓN

p El orden del cuerpo finito Fp .


G El generador de la curva elı́ptica definida sobre Fp (E(Fp )).
IDX La identidad del nuevo usuario X.
IDCA La identidad de la CA.
PX El seudónimo de X dentro de la overlay (nodeID).
CX El certificado digital de X en el mundo real.
dX La clave privada de X en el mundo real.
QX La clave pública de X en el mundo real.
dXo La clave privada de X dentro de la overlay.
QXo La clave pública de X dentro de la overlay.
dCA La clave privada de la CA.
QCA La clave pública de la CA.
tX La marca temporal generada por el nuevo usuario (identificador de petición).
I La información incluida en el certificado de X.
Z El parámetro de reconstrucción de la clave pública de X.
h El resumen del nuevo certificado (I||Z).
s La firma de la CA para el nuevo certificado de X.
n, u, nX Parámetros privados de la petición de X (∈ [1, p − 1]).
N, U, NX Parámetros públicos de la petición de X (∈ E(Fp )).
c El valor de compromiso.
H(m) Una función de hash sobre un mensaje m.
i→j: El envı́o de un mensaje de la entidad i a la entidad j.
{m}Q El texto cifrado de un mensaje m utilizando la clave pública Q.
{m}d La firma sobre un mensaje m utilizando la clave privada d.

V-B2. Paso 2: Cada vez que un nuevo usuario contacta V-B5. Paso 5: X recibe su nuevo certificado y la firma
con la CA, ésta genera dos parámetros privados ({n, u} ∈ de la CA (“RESPONSE MESSAGE”), y calcula U 0 = uG (y
[1, p−1]), sus respectivos puntos en la curva elı́ptica (N = nG compara éste con U ), N = Z − NX y N 0 = H(uQCA ) ⊗ c
y U = uG) y calcula c = N ⊗ H(dCA U ). Finalmente envı́a para verificar que la CA ha utilizado el valor inicial n; si no
c y U a X, todo firmado y cifrado junto con las identidades es ası́ cancela el proceso. Después X genera su clave privada
y la marca temporal. dXo = hnX + s mod p y su clave pública QXo = dXo G,
y calcula su nuevo nodeID como el valor de hash de QXo
(PX = H(QXo )). Finalmente envı́a su nodeID junto con las
ACCEP T M ESSAGE, CA → X :
identidades y la marca temporal, todo firmado y cifrado.
{{IDCA , IDX , tX , c, U }dCA }QX
V-B3. Paso 3: X recibe el “ACCEPT MESSAGE” y
genera un parámetro privado nX ∈ [1, p − 1] y su punto CON F IRM AT ION M ESSAGE, X → CA :
asociado NX = nX G. Después envı́a NX a la CA, firmado y {{IDX , IDCA , tX , PX }dX }QCA
cifrado junto con las identidades y la marca temporal.
V-B6. Generación de la Clave Pública: Cada vez que
un usuario recibe un mensaje, éste necesita generar la clave
REQU EST M ESSAGE, X → CA : pública del emisor para poder autenticarlo y verificar la firma
{{IDX , IDCA , tX , NX }dX }QCA del mensaje. Para ello utiliza su certificado implı́cito, el cual
incluye la información del certificado (I) y el parámetro de
V-B4. Paso 4: La CA recibe el “REQUEST MESSAGE”,
reconstrucción (Z). Finalmente sigue los siguientes pasos:
calcula el parámetro de reconstrucción (Z = NX + N ) y
el valor de hash de ese parámetro concatenado con I (h = 1. Calcula el parámetro h = H(I||Z).
H(I||Z)). Después firma el certificado (s = hn+dCA mod p) 2. Genera la clave pública del emisor QXo = hZ + QCA .
y le proporciona a X los valores {s, r, I, Z}, todos firmados 3. Verifica la firma del mensaje utilizando QXo .
y cifrados junto con las identidades y la marca temporal. Nótese que dicha verificación se cumplirá porque:
QXo = dXo G = hnX G + sG = hnX G + hnG + dCA G =
RESP ON SE M ESSAGE, CA → X : hNX + hN + QCA = h(NX + N ) + QCA = hZ + QCA .
V-B7. Validación del nodeID: Cada vez que un nodo
{{IDCA , IDX , tX , s, u, I, Z}dCA }QX
recibe información de otro nodo (contenidos o información de
Note que una vez que Z y h han sido calculados, si QXo = enrutamiento) debe validar su nodeID. Para ello, el nodo sólo
hZ + QCA = O, la CA le pide al usuario que le mande un tiene que calcular el hash de su clave pública (PX = H(QXo ))
nuevo parámetro y repite el proceso. y compararlo con el nodeID utilizado.
106 J. Caubet, J.L. Muñoz, O. Esparza

R EFERENCIAS
[1] Cisco Systems, Inc, “Cisco Visual Networking
Index: Forecast and Methodology, 2011-2016,”
http://www.cisco.com/en/US/solutions/collateral/ns341/ns525/ns537/
ns705/ns827/white paper c11-481360 ns827 Networking Solutions
White Paper.html.
[2] D. S. Wallach, “A Survey of Peer-to-Peer Security Issues,” in Pro-
ceedings of the Mext-NSF-JSPS international conference on Software
security: theories and systems, ser. ISSS’02. Tokyo, Japan: Springer-
Verlag Berlin, Heidelberg, 2002, pp. 42–57.
[3] D. R. Brown, R. Gallant, and S. A. Vanstone, “Provably Secure Implicit
Certificate Schemes,” in Financial Cryptography, ser. Lecture Notes in
Computer Science. Springer Berlin Heidelberg, 2002, vol. 2339, pp.
156–165.
[4] C. Research, “Standards for Efficient Cryptography 4 (SEC 4): Elliptic
Curve Qu-Vanstone Implicit Certificate Scheme (ECQV),” November
2013, version 1.1.
[5] R. Fantacci, L. Maccari, M. Rosi, L. Chisci, L. M. Aiello, and M. Mila-
nesio, “Avoiding Eclipse Attacks on Kad/Kademlia: An Identity Based
Approach,” in Proceedings of the IEEE International Conference on
Communications, ser. ICC’09. IEEE Press, june 2009, pp. 983–987.
[6] S. Ratnasamy, P. Francis, M. Handley, R. Karp, and S. Shenker, “A
Scalable Content-Addressable Network,” in Proceedings of the ACM
Conference on Applications, Technologies, Architectures and Protocols
for Computer Communication (SIGCOMM), San Diego, CA, USA,
2001, pp. 161–172.
[7] I. Stoica, R. Morris, D. R. Karger, M. F. Kaashoek, and H. Bala-
Figura 3. Esquema de Generación de nodeIDs/Certificados. krishman, “Chord: A Scalable Peer-to-Peer Lookup Service for Internet
Applications,” in Proceedings of the ACM Conference on Applications,
Technologies, Architectures and Protocols for Computer Communication
(SIGCOMM), San Diego, CA, USA, 2001, pp. 149–160.
VI. C ONCLUSIONES [8] P. Maymounkov and D. Mazières, “Kademlia: A Peer-to-Peer Infor-
mation System Based on the XOR Metric,” in Proceedings of the 1st
La vulnerabilidad a ciertos ataques es un fuerte obstáculo International Workshop on Peer-to Peer Systems, ser. IPTPS’02, march
para el desarrollo de aplicaciones comerciales en las overlays 2002, pp. 53–65.
[9] A. Rowstron and P. Druschel, “Pastry: Scalable, Decentralized Object
P2P. En este artı́culo se ha propuesto un esquema seguro Location, and Routing for Large-Scale Peer-to-Peer Systems,” in Procee-
de asignación de identidades con el objetivo de resolver dings of the IFIP/ACM International Conference on Distributed Systems
algunas de estas vulnerabilidades y convertir estas redes en Platforms, 2001, pp. 329–350.
[10] J. R. Douceur, “The Sybil Attack,” in Proceedings of the First Interna-
una potente plataforma para aplicaciones comerciales. Nuestro tional Workshop on Peer-to-Peer Systems, ser. IPTPS’02. London, UK:
protocolo genera nodeIDs de forma segura y anónima, sin Springer-Verlag, 2002, pp. 251–260.
afectar al funcionamiento actual de la red. Éste no permite [11] S. Marti and H. Garcia-Molina, “Taxonomy of Trust: Categorizing P2P
Reputation Systems,” Computer Networks, vol. 50, no. 4, pp. 472–84,
ni que los usuarios seleccionen sus nodeIDs ni que la CA 2006.
pueda seleccionarlos por ellos, y garantiza que los nodos [12] M. Castro, P. Druschel, A. Ganesh, A. Rowstron, and D. S. Wallach, “Se-
sean ubicados en el espacio virtual de forma pseudo-aleatoria cure Routing for Structured Peer-to-peer Overlay Networks,” SIGOPS
Oper. Syst. Rev., vol. 36, no. SI, pp. 299–314, december 2002.
(uniformemente). Finalmente, hay que tener en cuenta que [13] M. Srivatsa and L. Liu, “Vulnerabilities and Security Threats in Struc-
cualquier sistema de seguridad implica un compromiso entre el tured Overlay Networks: A Quantitative Analysis,” in Proceedings of
nivel de seguridad y el rendimiento de la red. Pero en nuestro the 20th Annual Computer Security Applications Conference, december
2004, pp. 252–261.
caso, y teniendo en cuenta que un usuario sólo ejecutarı́a el [14] K. R. Butler, S. Ryu, P. Traynor, and P. D. McDaniel, “Leveraging
protocolo la primera vez que quiere unirse a la red, la calidad Identity-Based Cryptography for Node ID Assignment in Structured
experimentada por el usuario (QoE) no se verá afectada. P2P Systems,” IEEE Transactions on Parallel and Distributed Systems,
vol. 20, no. 12, pp. 1803–1815, december 2009.
En cuanto a la seguridad, nuestra propuesta sólo tiene una [15] L. M. Aiello, M. Milanesio, G. Ruffo, and R. Schifanella, “An identity-
debilidad; debemos confiar en la CA. Pero hay que tener based approach to secure P2P applications with Likir,” Peer-to-Peer
en cuenta que utilizar una CA es la única forma de evitar Networking and Applications, vol. 4, pp. 420–438, 2011.
[16] H. Rowaihy, W. Enck, P. McDaniel, and T. L. Porta, “Limiting Sybil
100 % ciertos ataques (ataque Sybil, ataque Eclipse, etc.). El Attacks in Structured P2P Networks,” in Proceedings of the 26th IEEE
trabajo futuro se centrará en proponer un sistema de gestión International Conference on Computer Communications, Anchorage,
de identidades que proporcione trazabilidad de usuarios y Alaska, USA, may 2007, pp. 2596–2600.
[17] W. L. D. C. Cordeiro, F. R. Santos, G. H. Mauch, M. P. Barcelos,
revocación de certificados y nodeIDs. and L. P. Gaspary, “Identity management based on adaptive puzzles to
protect P2P systems from Sybil attacks,” Comput. Netw., vol. 56, no. 11,
R ECONOCIMIENTOS pp. 2569–2589, july 2012.
Este trabajo ha sido parcialmente subvencionado por la [18] C. Lu, “Detection and Defense of Identity Attacks in P2P Network,”
in Advances in Computation and Intelligence, ser. Lecture Notes in
Secretarı́a de Estado de Investigación, Desarrollo e Innovación Computer Science. Springer-Verlag Berlin Heidelberg, 2009, vol. 5821,
bajo los proyectos SERVET TEC2011-26452 y CONSOLI- pp. 500–507.
DER CSD2007-00004 (ARES), y por la Generalitat de Cata-
lunya bajo la ayuda 2009 SGR-1362 para grupos consolidados.
RECSI 2014, Alicante, September 2-5 2014

Cálculo Privado de Distancias entre Funciones de


Preferencia
Alberto Blanco-Justicia Josep Domingo-Ferrer Oriol Farràs David Sánchez
Departament d’Enginyeria Departament d’Enginyeria Departament d’Enginyeria Departament d’Enginyeria
Informàtica i Matemàtiques Informàtica i Matemàtiques Informàtica i Matemàtiques Informàtica i Matemàtiques
Universitat Rovira i Virgili Universitat Rovira i Virgili Universitat Rovira i Virgili Universitat Rovira i Virgili
Email: alberto.blanco@urv.cat Email: josep.domingo@urv.cat Email: oriol.farras@urv.cat Email: david.sanchez@urv.cat

Resumen—Consideremos el siguiente escenario: dos entidades intereses, sin ser forzados a revelar sus propios intereses
quieren saber el grado de semejanza que hay entre ellas. Sus privados (p.e. religión, orientación sexual, condición de
perfiles se pueden describir a través de funciones de preferencia, salud, etc.). Por ejemplo, actualmente en la red social
y querrı́an calcular la distancia entre estas funciones sin tener
que revelarlas. Este escenario parece de especial relevancia en el PatientsLikeMe [12] los usuarios tienen que revelar
contexto de las redes sociales, polı́ticas o empresariales, cuando sus enfermedades para encontrar a otros usuarios con
uno desea encontrar amigos o socios con intereses parecidos condiciones médicas parecidas. La pérdida de privacidad
sin tener que revelar sus intereses a nadie. En este trabajo, es evidente y podrı́a ser mitigada por nuestra propuesta.
proporcionamos protocolos que resuelven el problema anterior Los ataques de grooming podrı́an ser mitigados signifi-
para distintos tipos de funciones. Los experimentos, además,
demuestran que es posible realizar estos cálculos de manera cativamente con nuestra propuesta. Nótese que el agresor
privada, eficiente y sin causar reducciones significativas en la tendrı́a que adivinar los intereses de su vı́ctima para poder
precisión de las distancias calculadas manteniendo, por tanto, su llegar a estar entre sus amistades.
utilidad. Modelar consumidores con perfiles especı́ficos también
serı́a posible. Las empresas podrı́an crear un usuario
Palabras clave—Cálculo privado de distancias, privacidad,
redes sociales, funciones de utilidad, preferencias, perfiles de falso en redes sociales con el tipo de perfil de los
usuario, emparejamiento privado. consumidores que busca. De esta manera, las empresas
podrı́an identificar comunidades de potenciales clientes
con el perfil deseado, sin entrometerse en la privacidad
I. I NTRODUCCI ÓN de los usuarios que no encajan en el perfil que buscan.
En tratos comerciales, las partes podrı́an determinar si la
La timidez puede tener un componente racional. Llegar a importancia que asignan a cierta colección de bienes es
conocer a un extraño requiere habitualmente que le revelemos similar a la asignada por otras, sin revelar sus estrategias
parte de nuestra información privada. De hecho, en una comerciales. Por ejemplo, en algunos casos una compañı́a
relación justa hay normalmente un intercambio mutuo de podrı́a estar interesada en asociarse con empresas con
información, en la que cada una de las partes debe revelar intereses distintos, para formar alianzas complementarias,
algo a la otra con tal de aprender algo. Una manera de en lugar de asociarse a empresas con intereses demasiado
preservar la privacidad y limitar riesgos serı́a que ambas partes parecidos, que podrı́an ser vistas como competidoras.
pudiesen determinar si tienen intereses parecidos sin ninguna En procesos de contratación, empresas y candidatos
revelación a priori. Evidentemente, cuanto más semejantes serı́an capaces de determinar confidencialmente hasta
resulten ser sus intereses, mayores serán las revelaciones qué punto la visión corporativa de la empresa es com-
mutuas a posteriori: en el caso extremo en que sus intereses partida por cada candidato. Gracias a un mecanismo que
estuvieran a distancia 0, se producirı́a una revelación total de preserve la privacidad, se podrı́an incluir en la evaluación
sus intereses. un gran número de factores distintos, sin que la empresa
En términos de teorı́a de juegos, el anterior problema se revele sus objetivos estratégicos a los candidatos no
puede expresar como dos jugadores interesados en determinar elegidos ni éstos revelen sus opiniones.
cuán cerca están sus funciones de utilidad sin revelar esas
funciones de utilidad al otro jugador. En consecuencia, esto I-A. Contribución y estructura del artı́culo
permitirı́a formar coaliciones con intereses homogéneos sin En este artı́culo presentamos protocolos que permiten cal-
ninguna revelación a priori. cular privadamente la distancia entre varios tipos de funciones.
Encontrar una solución a este problema podrı́a resultar muy A continuación, mostramos los resultados experimentales que
relevante para resolver varias situaciones reales: demuestran que preservar la privacidad no causa una distorsión
En redes sociales, los usuarios podrı́an encontrar ami- significativa en las distancias calculadas.
gos o usuarios a los que seguir que compartan sus La sección II define diversos casos de cálculos privados de
108 A. Blanco-Justicia, J. Domingo-Ferrer, O. Farràs, D. Sánchez

distancias entre funciones, dependiendo de la naturaleza de semánticas [13]; para caracterı́sticas numéricas que tomen
la función y del tipo de distancia que se considera. La sec- valores de dominios finitos y discretos (p.e. edades, códigos
ción III describe un protocolo para calcular las distancias entre postales), podemos utilizar funciones aritméticas. Además,
funciones, preservando la privacidad, basada en la intersección suponemos que ambos jugadores conocen s desde el principio.
de conjuntos. La sección IV muestra los resultados del trabajo En este caso la distancia entre el conjunto X de C y el
experimental. La sección V describe trabajos relacionados. Las conjunto Y de S se puede calcular como
conclusiones y trabajo futuro se resumen en la sección VI. P P
1/( x∈X y∈Y s(x, y))
cuando el denominador no es nulo. Si lo es, decimos que la
II. TAXONOM ÍA DE C ÁLCULOS DE LA DISTANCIA ENTRE
distancia es ∞.
FUNCIONES
El protocolo para calcular de manera privada la distancia II-C. Caso C: funciones de preferencia cuantitativas
entre dos funciones depende principalmente de la naturaleza de En este último caso, queremos calcular la diferencia entre
dichas funciones y de la manera en que se miden las distancias dos funciones cuantitativas sobre el mismo dominio, que
entre ellas. A continuación discutimos varios de estos casos. definen las preferencias o perfiles de los dos jugadores. Su-
ponemos que éstas son funciones en Z. Es decir, C tiene una
II-A. Caso A: número de preferencias cualitativas en común función de preferencia privada f : E → Z y S tiene una
En este primer caso, los intereses o preferencias de cada función privada g : E → Z.
una de las partes se representan como conjuntos de valores
Pt de medir la distancia entre f y g es calcular
Una manera
booleanos relacionados con varios temas independientes. Por d(f, g) = i=1 |f (xi ) − g(xi )|, donde D = {x1 , . . . , xt } es
ejemplo, en las redes sociales como Facebook, se les pide a los un subconjunto discreto representativo de los elementos de E.
usuarios que den sus opiniones sobre diversos temas en forma Este escenario encaja con las estrategias para aprender,
de “me gusta”. En PatientsLikeMe [12], los usuarios modelar y gestionar perfiles de usuarios de redes sociales
detallan sus historiales médicos como selecciones binarias más habituales entre la literatura relacionada [1], [16], [21].
entre conjuntos de alternativas (enfermedades, sı́ntomas, etc.). Éstas consisten normalmente en asociar un vector de pesos
De este modo, consideramos las preferencias del usuario a cada usuario, donde cada peso expresa el interés de dicho
o entidad (su perfil) como un conjunto que contiene sus usuario por cierto tema (p.e. deportes, ciencia, salud, etc.). Para
opiniones y/o detalles personales. Definimos este conjunto comparar a dos usuarios, simplemente se calcula la distancia
como X para el primer jugador C e Y para el segundo, S. entre sus vectores de pesos.
La distancia entre los intereses de C y S se puede calcular
como el inverso multiplicativo del tamaño de la intersección
de X e Y , es decir 1/|X ∩ Y |, siempre que la intersección sea III. C ÁLCULO DE DISTANCIAS BASADO EN LA
no nula. Si lo fuese, podrı́amos considerar que la distancia es INTERSECCI ÓN DE CONJUNTOS
∞. Más adelante mostraremos cómo los tres casos anteriores
Evidentemente, cuanto más coincidencias haya entre X e Y , A, B y C se pueden reducir al cálculo del tamaño de la
mayor será su intersección y menor su distancia. En definitiva, intersección de conjuntos. Por tanto, revisaremos primero los
más semejantes serán las preferencias de ambos jugadores. trabajos que proponen soluciones para el cálculo del tamaño de
la intersección entre dos conjuntos de manera segura y privada.
II-B. Caso B: correlación entre preferencias cualitativas Para ello, nos centramos en ciertos protocolos de computación
Como en el caso anterior, los perfiles de los jugadores se segura multiparte.
expresan como conjuntos de caracterı́sticas cualitativas. Pero Los protocolos de computación segura multiparte (MPC,
si estas caracterı́sticas no son independientes (p.e. enferme- del inglés secure multiparty computation) permiten a un con-
dades relacionadas) o no son binarias (p.e. expresadas como junto de entidades distintas calcular alguna función de sus
respuestas a cuestionarios en texto libre), la distancia entre los entradas de manera segura y sin la necesidad de una entidad
perfiles de dos jugadores no se puede calcular como el tamaño externa de confianza. Durante la ejecución del protocolo, las
de la intersección entre sus conjuntos de preferencias. Por partes no descubren nada sobre los valores de entrada de
ejemplo, si C sufre anorexia y S bulimia, podemos determinar los demás excepto todo aquello implicado por el resultado
que existe cierta coincidencia entre ellos, puesto que ambos en sı́. Principalmente, se tienen en cuenta dos modelos de
presentan desórdenes alimentarios. Esta coincidencia tiene que adversarios: adversarios honestos-pero-curiosos y adversarios
ser capturada por la distancia resultante. maliciosos. En el primero de los casos, las partes siguen
Suponemos pues, que tenemos una función de correlación las reglas del protocolo pero intentarán obtener información
s : E × E 7→ Z+ que mide la semejanza entre los elementos sobre los valores de entrada de las otras partes a partir de
de los conjuntos de caracterı́sticas de C y S, donde E es el los mensajes que reciben. En el segundo, suponemos que el
dominio del que los conjuntos de caracterı́sticas de ambos adversario se puede desviar del protocolo de cualquier modo.
jugadores toman sus valores. Para caracterı́sticas nominales Restringiremos nuestro caso a un protocolo en el que sólo
(p.e. nombres de enfermedades), podemos utilizar semejanzas participan dos partes, los valores de entrada de las cuales son
Cálculo Privado de Distancias entre Funciones de Preferencia 109

sendos conjuntos, y el resultado esperado es el cardinal de la Paso 1. C escoge los parámetros iniciales, genera su clave
intersección de éstos. pública y privada, y publica tanto los parámetros como su
La intersección de dos conjuntos se puede obtener usando clave pública.
construcciones genéricas basadas en el protocolo de Yao [20].
Paso 2.QC calcula, a partir de su conjunto X, el polinomio
Esta técnica permite calcular cualquier función aritmética, s
p(x) = i=1 (x − ai ).
pero para la mayorı́a de funciones es ineficiente. Muchos de
los trabajos recientes sobre protocolos de computación segura Paso 3. C envı́a Enc(p0 ), . . . , Enc(ps ) a S, siendo cada pi
entre dos partes se centran en mejorar la eficiencia de estos el coeficiente de grado i del polinomio p.
protocolos para ciertas famı́lias de funciones. Paso 4. S genera los valores aleatorios rj ∈ Zn para todo
Freedman, Nissim y Pinkas [4] presentaron un método más 1 ≤ j ≤ t. S calcula Enc(rj · p(bj ) + m) para todo 1 ≤ j ≤ t
eficiente para calcular la intersección de conjuntos llamado y envı́a los textos cifrados a C.
esquema de emparejamiento privado (private matching sche-
me), que es seguro en el modelo honesto-pero-curioso. Un Paso 5. C descifra los t textos cifrados. El resultado de cada
esquema de emparejamiento privado es un protocolo entre un descifrado es m o un elemento aleatorio.
cliente C y un servidor S en el que el valor de entrada de C es Si el tamaño del dominio de Enc es mucho mayor que |X|
un conjunto X de tamaño iC , el valor de entrada de S es un el esquema calcula |X ∩ Y | con una alta probabilidad: ası́, el
conjunto Y de tamaño iS , y como resultado C obtiene X ∩ Y . número de mensajes m obtenidos en el último paso indica el
Este esquema usa técnicas basadas en polinomios y esquemas número de elementos comunes en X e Y .
de cifrado homomórficos. Nótese que C obtiene |X ∩ Y |, pero no aprende ninguna
En [4] también se presentan algunas variaciones del es- información adicional sobre Y o X ∩ Y (en particular, C no
quema de emparejamiento privado: una extensión segura en puede determinar los elementos de estos conjuntos). Además,
presencia de adversarios maliciosos, una extensión para casos S no puede distinguir entre cada uno de los casos en que C
con más de dos partes y varias modificaciones para calcular proporcione conjuntos diferentes como entradas.
el cardinal de la intersección y otras funciones. Construir
esquemas eficientes para operaciones con conjuntos es un tema III-B. Caso B
importante en MPC y ha sido estudiado en muchos otros En este caso, C proporciona X y S proporciona Y , dos
trabajos. Diversas publicaciones, como [2], [3], [5], [10], [15], conjuntos de caracterı́sticas cualitativas, y quieren saber cuán
presentan nuevos protocolos para calcular el tamaño de la cerca están estos conjuntos sin revelárselos al otro.
intersección de varios conjuntos. En el siguiente protocolo, sólo C obtiene la distancia entre
A continuación especificaremos los protocolos para resolver X e Y ; para que S también reciba esta información, el pro-
los distintos casos, A, B y C, presentados anteriormente. En tocolo deberı́a ser ejecutado de nuevo (de manera secuencial
todos los casos, la distancia entre las preferencias privadas de o concurrente) con los papeles de C y S intercambiados.
las dos partes se calcula usando un protocolo de computación Supongamos que los dominios de X e Y son el mismo,
multiparte que devuelve el cardinal de la intersección de dos llamémosle E. La cercanı́a o semejanza entre los elementos
conjuntos. de E se calculará mediante una función s. En concreto,
consideramos una función s : E × E → Z+ . Nótese que
III-A. Caso A el Caso A es un caso particular de este Caso B en el que
En este apartado describimos un protocolo en el que C s(x, x) = 1 y s(x, y) = 0 para todo x 6= y.
aporta X = {a1 , . . . , as } ⊆ E y S aporta Y = {b1 , . . . , bt } ⊆ Y la entrada de S. Para todo x ∈ E, S calcula el valor
Sea P
E, donde s y t son conocidos por ambos participantes. `x = y∈Y s(x, y). Observemos que este valor `x mide la
Finalmente, C obtiene |X ∩ Y |. Para que S también obtenga semejanza entre x e Y . Sea Y 0 = {y ∈ E : `y > 0}. Es
|X∩Y |, el protocolo deberı́a ser ejecutado una segunda vez (de común considerar funciones que satisfagan s(x, x) > 0 para
manera secuencial o concurrente) intercambiando los papeles todo x ∈ E, por lo tanto en general Y ⊆ Y 0 .
de C y S. Podemos obtener un protocolo para calcular tal función a
Usaremos el protocolo descrito en [4] para calcular el partir del protocolo anterior, reemplazando el paso 4 por el
tamaño de la intersección de los conjuntos de entrada, que es siguiente:
seguro contra adversarios que siguen el modelo honesto-pero- Paso 4’. S genera `y elementos aleatorios r1 , . . . , r`y ∈ Zn .
curioso. Además, usaremos el criptosistema de Paillier [11] S calcula Enc(rj · p(y) + m) para todo 1 ≤ j ≤ `y , y envı́a
como esquema de cifrado homomórfico. El protocolo se apro- los términos cifrados a C.
vecha de la propiedad de este esquema que permite, dados tres
elementos m1 , m2 , m3 , calcular eficientemente Enc(m1 +m2 ) Ası́, para todo y ∈ Y 0 , S envı́a `y textos cifrados. C
y Enc(m1 · m3 ) a partir de Enc(m1 ), Enc(m2 ), y m3 . recuperará m de ellos sólo si y ∈ X. Por lo tanto, al final
Suponemos que C y S acuerdan una codificación común tanto del protocolo, el número total de mensajes descifrados que
para los elementos de E como para los elementos de la son iguales a m será
X XX
función Enc. Ambos acuerdan también una palabra especial `x = s(x, y),
m. Describimos el protocolo a continuación. x∈X x∈X y∈Y
110 A. Blanco-Justicia, J. Domingo-Ferrer, O. Farràs, D. Sánchez

es decir, la suma de semejanzas entre los elementos de X e como se hizo en [16], [17], tomamos a los dos usuarios
Y . Esto indica claramente cuán semejantes son X e Y . Del más influyentes en 2012 dentro de cada una de las siguientes
mismo modo que en el Caso A, ni C ni S obtienen ninguna ocho categorı́as: Arte, Salud, Compras, Ciencia, Informática,
información adicional de los elementos de los conjuntos de Deportes, Sociedad y Negocios.
preferencias del otro. Tanto el cliente como el servidor se ejecutaron en el
siguiente entorno: Asus S56C con Intel core i7 3517U, 8GB
III-C. Caso C
RAM DDR3 1600Mhz, Ubuntu 13.10 y Java7 (opendjk-1.7).
En este último caso, C introduce una función privada f y La longitud de las claves es de 1024 bits. La implementación
S una función privada g, y quieren medir la distancia d entre del criptosistema de Paillier que utilizamos es la proporcionada
éstas sin revelarlas al otro. en [14], modificado para evaluar los polinomios usando el
El valor de d(f, g) se calculará de manera vectorial. Supo- método de Horner.
nemos que f, g : E → Z+ . Nótese que si f o g toman valores Generamos un perfil para cada uno de los usuarios de
negativos, C y S pueden definir sendas funciones f 0 : E → Twitter siguiendo el proceso descrito en [16]. Resumiendo,
Z+ : x 7→ f (x) + c y g 0 : E → Z+ : x 7→ g(x) + c para extraemos las oraciones sustantivas de los últimos 100
cierta constante c ∈ Z+ suficientemente grande. Obsérvese tuits del usuario, y las clasificamos en las anteriores ocho
que d(f, g) = d(f 0 , g 0 ). categorı́as. Entonces, medimos la contribución de esa oración
Dado el conjunto público D = {x1 , · · · , xt } ⊆ E, C define sustantiva a la categorı́a correspondiente como su capacidad
el vector u = (u1 , . . . , ut ) ∈ Zt+ , donde ui = f (xi ) for i = informativa, calculada a partir de su distribución en la
1, . . . , t, y S define v = (v1 , . . . , vt ) ∈ Zt+ , donde vi = g(xi ) Web. Las contribuciones agregadas de todas las oraciones
for i = 1, . . . , t. El problema descrito Pten la sección II-C se sustantivas de una categorı́a miden el interés del usuario
puede reducir a calcular ku − vk = i=1 |ui − vi |. en dicha categorı́a. Los perfiles son, por tanto, vectores
Dados u y v, definimos los conjuntos X = {(i, `) : ui > normalizados que contienen ocho pesos, cada uno de ellos
0 y 1 ≤ ` ≤ ui } e Y = {(i, `) : vi > 0 y 1 ≤ ` ≤ vi }. cuantificando el interés del usuario en cada una de las ocho
Siguiendo el protocolo para calcular el cardinal de la inter- categorı́as. Por ejemplo, el perfil de Twitter del usuario
sección de conjuntos presentado anteriormente, C y S pueden CERN, que corresponde al Centro Europeo de Investigación
calcular |X ∩ Y | de manera privada (el protocolo se ha de Nuclear, es {Arte=15.1 %, Salud=0.27 %, Compras=1.79 %,
ejecutar dos veces con los papeles de C y S intercambiados). Ciencia=47.93 %, Informática=7.5 %, Deportes=5.45 %,
Obsérvese que Sociedad=10.65 %, Negocios=11.31 %}, lo que muestra una
|X ∩ Y | = |{(i, `) : ui , vi > 0 y 1 ≤ ` ≤ mı́n{ui , vi }}| clara preferencia por temas relacionados con la ciencia. De
X este modo, los perfiles de usuario pueden ser entendidos
= mı́n{ui , vi }. como funciones de preferencia representables en un conjunto
1≤i≤t discreto de ocho elementos cuantitativos. Esto encaja con el
Según [4], además de obtener |X ∩ Y |, durante el protocolo Caso C y con el protocolo presentado en la sección III-C.
S aprende |X| y C aprende |Y |. Por lo tanto C y S pueden Para evaluar el comportamiento de nuestro protocolo en
calcular términos de precisión, primero calculamos las distancias d
entre cada uno de los 16 perfiles Pm tal y como describimos
|X| + |Y | − 2|X ∩ Y | = en la sección II-C: d(f, g) = i=1 |f (xi ) − g(xi )|, donde
m m
X X xi ∈ {Arte, Salud, Compras, Ciencia, Informática, Deportes,
= máx{ui , vi } + mı́n{ui , vi } − 2 mı́n{ui , vi } Sociedad, Negocios}, y f y g representan los perfiles de dos
i=1 i=1
m usuarios diferentes, asignando el peso de cada usuario para
cada una de las categorı́as xi . Luego, realizamos el mismo
X
= máx{ui , vi } − mı́n{ui , vi }
i=1 cálculo utilizando el protocolo descrito en la sección III-C.
Xm Como nuestro protocolo supone que las funciones f y g
= |ui − vi | = ku − vk tienen un dominio de valores enteros, en un primer momento
i=1 redondeamos los pesos al entero más cercano. Para medir la
de manera privada. precisión de los resultados, calculamos el error medio entre las
distancias obtenidas sin preservar la privacidad y las obtenidas
por nuestro protocolo. El error medio es 1.69 % con una
IV. A N ÁLISIS EXPERIMENTAL desviación estándar del 2.25 %. Esto demuestra que nuestro
Esta sección ilustra la aplicabilidad de los protocolos pro- protocolo no causa una distorsión significativa del resultado,
puestos para comparar perfiles de usuarios de redes sociales más allá de la causada por el redondeo de las entradas.
de manera que se preserve la privacidad entre ellos. Por otra parte, el tiempo medio de ejecución para calcular
Hemos basado el experimento en 16 usuarios de Twitter de manera privada la distancia entre dos perfiles es de 36.7
seleccionados de entre los más relevantes en WeFollow [18] segundos, siendo inapreciable el tiempo en el caso normal.
y WhoToFollow [19]. Estos sitios web ordenan y clasifican Analizando el protocolo (Sección III-C), podemos observar
a los usuarios de Twitter en una serie de categorı́as. Tal que el tiempo de ejecución depende del número de pesos que
Cálculo Privado de Distancias entre Funciones de Preferencia 111

comparemos (ocho) y de sus rangos. Ya que redondeamos los y S, respectivamente. La complejidad computacional para C es
porcentajes para que sean enteros entre 0 y 100, el rango de O(iC +iS ), mientras que la complejidad computacional para S
pesos es de 100. es O(iC iS ), pero se puede reducir hasta O(iC log log iS ) [4].
Si se diese un caso en el que el tiempo de respuesta fuese La complejidad computacional del esquema presentado en [3]
especialmente importante, podrı́amos sacrificar cierta precisión es lineal respecto a iC + iS . Otros protocolos, como los
para acelerar el proceso, utilizando una representación de los presentados en [10] no diferencian a los usuarios C y S: ambos
pesos con un rango menor. Por ejemplo, si dividimos los pesos reciben el tamaño de la intersección al final del protocolo.
entre 10 y los redondeamos al entero más próximo, reducimos Existen también soluciones para calcular de manera privada
el rango de pesos a 10, lo que a cambio reduce el número de el tamaño de la intersección de n > 2 conjuntos de n
cifrados/descifrados en el protocolo en una orden de magnitud. entidades, ası́ como construcciones que son seguras frente al
Haciendo esto obtuvimos un tiempo medio de 2.7 segundos modelo de adversario malicioso [2], [3], [4], [5], [10], [15].
por cada uno de los cálculos de distancias. A cambio, el error En un esquema de emparejamiento privado, los tamaños de
medio respecto al cálculo normal fue del 18.49 % con una las entradas son conocidos por ambas partes. Algunas técnicas
desviación tı́pica del 17.8 %, lo que ilustra cómo la (falta de) presentadas en [2] permiten ocultar estos tamaños, a cambio
precisión en la discretización de los valores de entrada afecta de aumentar la complejidad en las comunicaciones y cálculos.
a la (falta de) precisión de la respuesta. Los métodos hı́bridos intentan conseguir un equilibrio entre
Por último, pero no menos importante, examinamos la los métodos basados en sanitización y los métodos crip-
escalabilidad del protocolo. La figura 1 muestra el incremento tográficos, para mantener tanta precisión como sea posible sin
de los tiempos de ejecución para C y S cuando el tamaño de los aumentar drásticamente la complejidad computacional. La idea
conjuntos X e Y crece, teniendo S una carga computacional es introducir una fase en la que los conjuntos de datos se di-
superior a C. En la sección V discutimos la complejidad viden en bloques, se sanitizan y se descartan aquellos bloques
computacional de estos protocolos en mayor profundidad. que no satisfacen las condiciones de emparejamiento. Tras esta
fase, se aplican los métodos basados en MPC sobre el resto de
V. T RABAJOS RELACIONADOS bloques. Métodos como [7] (que utiliza k-anonimato), [8] (que
Consideramos el problema de calcular la distancia entre utiliza privacidad diferencial) y [9] (que mejora [8]) siguen
dos utilidades o funciones de preferencia privadas. En los esta estrategia. La solución propuesta en este trabajo también
casos descritos, tratamos dominios discretos o discretizados, lo se podrı́a adaptar para seguir esta estrategia, ya que la fase en
que nos permite recurrir a la literatura sobre emparejamiento la que se usa MPC en esta estrategia se puede implementar
de registros privados. En este tipo de emparejamiento, el como intersección de conjuntos.
problema es ligeramente distinto: consiste en emparejar los
registros de la misma entidad (un individuo, compañı́a, etc.)
distribuidos en conjuntos de datos distintos, manteniendo la VI. C ONCLUSIONES Y TRABAJO FUTURO
privacidad de estos registros. Existen principalmente tres es-
trategias para tratar este problema en la literatura: las basadas Calcular la distancia entre las funciones de preferencia
en la sanitización, las criptográficas y las hı́bridas. privadas de dos entidades es relevante en un amplio rango de
En los métodos basados en sanitización, el emparejamiento aplicaciones. Hemos descrito varios escenarios de aplicación
se realiza sobre versiones perturbadas de los conjuntos de en los que funciones privadas expresan las preferencias o
datos privados, con tal de protegerlos contra la revelación; perfiles de las partes o, en términos de teorı́a de juegos,
en [6] se presenta un estudio de distintos métodos de pertur- las utilidades de los jugadores. Estos escenarios incluyen
bación/sanitización y emparejamiento de registros. Esta clase encontrar amigos o socios con intereses parecidos en redes
de métodos es generalmente eficiente, pero presenta ciertos sociales, mitigar ataques de grooming, etc.
problemas en la precisión: emparejar conjuntos de datos Hemos definido el problema para varios tipos de funciones
perturbados es evidentemente menos preciso que emparejar privadas y, para cada una de ellas, hemos propuesto un
los originales. De hecho, se dan casos de falsos positivos y protocolo que las resuelve basándonos en el cálculo seguro
negativos. multiparte del tamaño de la intersección de conjuntos. El
Los métodos criptográficos se basan en MPC y propor- trabajo experimental muestra que preservar la privacidad de
cionan privacidad sin pérdida de precisión. Tal como hemos las preferencias no altera significativamente la precisión de
mencionado anteriormente, nosotros seguimos esta estrategia, las distancias obtenidas.
ya que usamos MPC para calcular el tamaño de la intersección Siguiendo la misma lı́nea de investigación, nos proponemos
de conjuntos, especı́ficamente el protocolo propuesto en [4]. el diseño de protocolos eficientes para el cálculo de otras
Nuestra solución se podrı́a adaptar fácilmente para utilizar operaciones aritméticas que precisen de computación privada.
otros protocolos para calcular lo mismo, como los que men- Todo cálculo aritmético se puede realizar mediante un protoco-
cionamos al principio de la sección III ([2], [3], [5], [10], lo de computación multiparte [20], pero los métodos conocidos
[15]). no son eficientes, en general. Además, consideramos posibles
La complejidad en las comunicaciones de nuestro protocolo maneras de augmentar la precisión del cálculo, teniendo en
es O(iC + iS ), siendo iC y iS los tamaños de las entradas de C cuenta todo el dominio E en lugar de un subconjunto D, sin
112 A. Blanco-Justicia, J. Domingo-Ferrer, O. Farràs, D. Sánchez

Cliente
10
Servidor

tiempo (segundos)
5

0
20 40 60 80 100
Tamaño de las entradas

Figura 1. Tiempos de ejecución del cliente C y del servidor S para tamaños distintos.

que esto revierta en un augmento significativo de los costes [11] P. Paillier, “Public-key cryptosystems based on composite degree resi-
computacionales. duosity classes”, EUROCRYPT 1999, Springer, pp. 223–238, 1999.
[12] PatientsLikeMe, http://www.patientslikeme.com
[13] D. Sánchez, M. Batet, D. Isern, A. Valls, “Ontology-based semantic
similarity: A new feature-based approach”, Expert Systems with Appli-
AGRADECIMIENTOS cations, vol. 39(9), pp. 7718–7728, 2012.
[14] The Homomorphic Encryption Project (thep). https://code.google.com/
Este trabajo ha sido financiado parcialmente por la Generali- p/thep/. Accessed 14 de julio de 2014.
tat de Catalunya bajo la beca 2009 SGR 1135, por el Gobierno [15] J. Vaidya, C. Clifton, “Secure set intersection cardinality with application
to association rule mining”, Journal of Computer Security, vol. 13(4),
Español a través de los proyectos TIN2011-27076-C01-01 pp. 593–622, 2005.
“CO-PRIVACY”, TIN2012-32757 “ICWT”, IPT-2012-0603- [16] A. Viejo, D. Sánchez, J. Castellà-Roca, “Preventing automatic user
430000 “BallotNext” and CONSOLIDER INGENIO 2010 profiling in Web 2.0 applications”, Knowledge-based Systems, vol. 36,
pp. 191–205, 2012.
CSD2007-00004 “ARES”, y por la Comisión Europea ba- [17] A. Viejo, D. Sánchez, J. Castellà-Roca, “Using profiling techniques to
jo los proyectos FP7 “DwB” e “Inter-Trust”. J. Domingo- protect the user’s privacy in Twitter”, MDAI 2012, Springer, pp. 161–
Ferrer está financiado parcialmente como investigador ICREA 172, 2012.
[18] WeFollow, http://wefollow.com
Acadèmia por la Generalitat de Catalunya. Los autores per- [19] WhoToFollow, http://whotofollow.net
tenecen a la Cátedra UNESCO de Privacidad de Datos, pero [20] A.C.-C. Yao, “How to generate and exchange secrets”, FOCS 1986, pp.
son los únicos responsables de las opiniones expresadas en 162–167, 1986.
[21] K. Zoltan, S. Johann, “Semantic analysis of microposts for efficient
este trabajo, que no reflejan necesariamente la posición de people to people interactions”, RoEduNet11, pp. 1–4, 2011.
UNESCO ni comprometen a esta organización.

R EFERENCIAS
[1] F. Abel, Q. Gao, G.J. Houben, K. Tao, “Semantic enrichment of Twitter
posts for user profile construction on the social web”, ESWC’11, pp.
375–389, 2011.
[2] M. Blanton, E. Aguiar, “Private and oblivious set and multiset opera-
tions”, ASIACCS 2012, Springer, pp. 40–41, 2012.
[3] E. De Cristofaro, P. Gasti, G. Tsudik, “Fast and private computation
of cardinality of set intersection and union”, CANS 2012, Springer, pp.
218–231, 2012.
[4] J. Freedman, K. Nissim, B. Pinkas, “Efficient private matching and set
intersection”, EUROCRYPT 2004, Springer, pp. 1–19, 2004.
[5] S. Hohenberger, S. Weis, “Honest-verifier private disjointness testing
without random oracles”, PET 2006, Springer, pp. 277–294, 2006.
[6] A. Hundepool, J. Domingo-Ferrer, L. Franconi, S. Giessing, E. Schul-
te Nordholt, K. Spicer, P.-P. de Wolf, Statistical Disclosure Control,
Wiley, 2012.
[7] A. Inan, M. Kantarcioglu, E. Bertino, M. Scannapieco, “A hybrid
approach to private record linkage”, Proc. IEEE 24 Intl. Conf. Data
Eng.-ICDE 2008, pp. 496–505, 2008.
[8] A. Inan, M. Kantarcioglu, G. Ghinita, E. Bertino, “Private record
matching using differential privacy”, Proc. of the 13th Intl. Conference
on Extending Database Technology-EDBT’10, pp. 123-134, 2010.
[9] A. Inan, M. Kantarcioglu, G. Ghinita, E. Bertino, “A hybrid approach to
private record matching”, IEEE Transactions on Dependable and Secure
Computing, vol. 9(5), pp. 684–698, 2012.
[10] L. Kissner, D. X. Song, “Privacy-preserving set operations”, CRYPTO
2005, Springer, pp. 241–257, 2005.
RECSI 2014, Alicante, 2-5 septiembre 2014

Optimización en la generación de claves para firmas


en anillo, espontáneas y enlazables
José Luis Salazar José Luis Tornos
Dpto. de Ingenierı́a Electrónica y Comunicaciones Dpto. de Ingenierı́a Electrónica y Comunicaciones
Universidad de Zaragoza Universidad de Zaragoza
Email: jsalazar@unizar.es Email: jltornos@unizar.es

Resumen—El gran desarrollo de las Tecnologı́as de la Infor- que sea capaz de mantener el anonimato a través de una
mación (TIC’s) y su gran aceptación por parte de la ciudadanı́a identificación previa.
ha permitido que múltiples sistemas de votación electrónica se
Este modelo de una entidad de confianza basa el anonimato
desarrollen en los últimos años. Uno de los grandes retos es
conseguir que estos sistemas puedan emplearse con una gran en el uso de firmas en anillo [4]. Además si queremos que
variedad de dispositivos, por lo que los protocolos implementados el servicio sea portable, exigiremos que sean espontáneas; y
deberán poder ser empleados tanto en dispositivos con gran para ser eficientes deberı́an tener una longitud fija (lo más
capacidad de cálculo y memoria (portátiles y ordenadores de corta posible). Luego una elección adecuada de firma para este
sobre mesa principalmente) como por dispositivos con unas
tipo de votación electrónica es la propuesta por Wei [5]. Sin
caracterı́sticas más limitadas (tablets y smartphones). En este
artı́culo se muestran dos estrategias distintas para el cálculo, embargo, el aprovisionamiento de claves en este tipo de firmas
desde el propio terminal móvil de votación, de las claves con no es trivial ya que las exigencias criptográficas hacen que el
las que los usuarios participarı́an en un proceso de votación cálculo se haga desde el propio terminal móvil, obligándole a
electrónica y las caracterı́sticas ofrecidas por cada una de ellas. una carga computacional de la que no se está seguro se vaya
Palabras clave—Generación de claves, Firmas en anillo, Vota- a poder abastecer a priori.
ción electrónica (Key generation, Ring Signatures, eVoting).
En este artı́culo proponemos un modelo de generación
de claves para este tipo de protocolo criptográfico que sea
I. I NTRODUCCI ÓN
ejecutable en terminales con restricciones computacionales o
El desarrollo de las Tecnologı́as de la Información y las de memoria, que pueda rellenar los campos de un Certificate
Comunicaciones (TIC), ha permitido implementar servicios en Signing Request (CSR) de manera autónoma y almacenar la
otros tiempos impensables como pueden ser la televisión a la clave privada generada para su posterior uso en la votación
carta o la telefonı́a móvil. Uno de estos servicios es la votación electrónica. En el siguiente punto haremos una breve des-
electrónica. Aunque podemos decir que todavı́a no existe una cripción del algoritmo de votación desarrollado a partir de
generalización del servicio (tampoco de la democracia), sı́ ha las firmas en anillo y los requisitos que exigen sus claves. A
sido probado con éxito en varios paı́ses como son, entre otros, continuación describiremos en profundidad nuestra propuesta
Suiza y Estonia [1], [2]. para la generación de dichas claves, para finalmente exponer
Por otra parte, con las nuevas arquitecturas de los terminales nuestros resultados y conclusiones.
móviles la comunicación de datos se hace de una manera
más liviana sin que la pila de protocolos de comunicación II. E SCENARIO
en Internet las constriña asfixiantemente. En el afán de sim-
plificar todo lo posible el uso de la necesaria criptografı́a en El escenario que planteamos [3] contempla tres actores
las votaciones electrónicas, en este artı́culo proponemos un diferenciados:
algoritmo de generación de claves para un sistema de votación El votante, que en principio no cuenta más que con
portable en el que en una situación ideal, el votante pueda un terminal para comunicarse y hacer las operaciones
votar desde cualquier terminal móvil (propio o ajeno), sin una pertinentes.
gran formación en TIC y con todas las garantı́as de seguridad Una Autoridad de Certificacion (AC) que comprueba la
telemática. identidad del votante y le emite un certificado asociado
La restricción no es poca. Hay que tener en cuenta que a un CSR enviado por éste. Por otra parte sirve de
de esta manera podemos dar acceso al votante a algún tipo repositorio confiable de los parámetros asociados a un
de servicio, pero debemos dotar al terminal al que está co- evento de votación, imprescindibles para construirse unas
nectado de todos las medidas de seguridad que requieren las claves ad-hoc a dicha votación.
comunicaciones implicadas en una votación electrónica y para La urna, encargada de recibir los votos, emitir justifi-
ello dotarle (aunque sea de forma temporal) de capacidad de cantes de votos (si fuese necesario), recontarlos, hacer
generación de las claves criptográficas necesarias. Para ello público los resultados y una lista de comprobación de
optamos por el modelo de una única entidad de confianza [3] votos (si también fuese necesario).
114 J. L. Salazar, J. L. Tornos

Usuario Autoridad de Proveedor de Urna


Certificación votaciones electoral

Solicitud de parámetros de
generación de clave

1
Envío de parámetros de
generación de clave

Envío de CSR
2
Envío de certificado 3

Solicitud de parámetros de votación


4
Envío de parámetros de votación

Envío de voto cifrado y firmado


5
Justificante de voto
6

Figura 1. Proceso de votación

Contando con estos actores el proceso de votación es el II-A. Parámetros para la generación de claves
siguiente (figura 1):
Una vez establecido cuál es el escenario de votaciones,
veamos cuáles son los parámetros necesarios para la creación
de las claves asociadas a una votación determinada. Es decir,
1. El votante se conecta con la Autoridad de Certificación para la implementación del paso 2 a partir de los parámetros
y se descarga los parámetros necesarios (u, n, λ, µ) que el proveedor de votaciones envı́a al usuario en el paso 1.
para generar las claves que empleará en una determinada Según lo establecido en [5] el usuario ha obtenido de la
votación. AC los parámetros asociados a una votación: u, n, λ y µ. El
2. El votante, desde su terminal, genera un par de claves parámetro λ mide la seguridad del sistema a través del tamaño
(pública/privada), genera un CSR con su clave pública de n, siendo n = pq = (2p0 + 1)(2q 0 + 1), con p, q, p0 , q 0
λ
y sus datos identificativos y se lo envı́a, acompañado de primos y p0 , q 0 > 2 2 , siendo u, un residuo cuadrático no trivial
unas credenciales de identidad previamente definidas, a modulo n. Además |e1 − 2l |, |e2 − 2l | < 2µ , donde λ y µ se
la AC. eligen para evitar ataques de coalición [6] y bastarı́a con tomar
3. La AC verifica la identidad, genera el certificado de l ≈ λ/2 y µ lo suficientemente pequeño como se establece
clave pública del usuario, y almacena el certificado (re- en [5] para evitarlos. En nuestro caso tomamos µ = l − 2
gistro del votante) ya que será necesario para el cálculo siguiendo la recomendación de [9].
de uno de los parámetros de la votación. Finalmente Si bien la generación de n, a través de p, q, p0 y q 0 no es
envı́a el certificado de clave pública al usuario, que inmediata, se trata de un caso especı́fico de generación de
lo almacenará en formato PKCS12 junto con su clave primos robustos [7], que está bastante estandarizado y queda
privada. fuera del alcance de este artı́culo.
4. Una vez comenzado el periodo de votación, y con los
parámetros creados por la urna, el votante los descarga.
II-B. Generación de claves de usuario
Entre ellos está el conjunto de las claves públicas de
todos los participantes en la votación. Llamaremos al algoritmo de generación de claves de usuario
5. Una vez obtenidos los parámetros, cada usuario vota, Key gen(u, n, λ, µ) = {e1 , e2 , x = 2e1 e2 + 1}, siendo los
cifrando el voto con la clave pública de la urna y tres valores e1 , e2 y x primos. Cada par e1 , e2 conforma una
firmándolo en anillo con las claves asociadas al certi- clave privada para la firma en anillo, siendo x la clave pública
ficado emitido para él. En caso de ser necesario, recibe asociada a dichos valores.
de la urna el justificante del voto. Con esta restricción se puede comprobar fácilmente que
6. La urna recuenta los votos y los hace públicos (en caso 0 6= e1 6= e2 6= 0 (mod 3). Sin pérdida de generalidad
de no emitir recibos) o hace públicos los resultados y las tenemos que e1 = 1 (mod 3) y e2 = 2 (mod 3). Por lo tanto
λ λ
etiquetas asociadas a los votantes (sin mostrar relación x = 2 (mod 3), y e1 , e2 ∈ (2 2 − 2µ , 2 2 + 2µ ). La estrategia
alguna entre ellos). para la búsqueda de estas claves estará condicionada por la
Optimización en la generación de claves para firmas en anillo, espontáneas y enlazables 115

0,9
Por lo tanto, la probabilidad buscada p estará acotada por: p =
λ λ
(1+2λ+1 +22µ+1 +2 2 +µ+2 ,2e1 ,1)− (1+2λ+1 +22µ+1 −2 2 +µ+2 ,2e1 ,1)
Q Q
0,8 λ +µ+3
22
2e1
0,7 λ +µ+4
2 2
λ +µ+2

0,6
(e1 −1)log  2 2
Probabilidad


e1
4e1
0,5 < λ +µ+2 = λ +µ+2
! ≈
22 22
0,4 e1 (e1 −1)log e1

4 4
0,3
128 bits λ +µ+2
! ≤ λ +µ+2
!
22 22
0,2
256 bits log e1 log λ
512 bits 2 2 +2µ
0,1
1024 bits
2048 bits
0
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49
Número de primos III. E STRATEGIAS DE MINIMIZACI ÓN
III-A. Estrategias de minimización de memoria
Figura 2. Número de primos para obtener un primo 2e1 e2 + 1
En una estrategia de minimización de memoria, deberı́amos
fijar ei con i ∈ {1, 2} que lo conseguiremos tras un número
capacidad computacional, tanto de tiempo de procesado, como medio de intentos (1/ pλ,µ ). Ahora deberı́amos buscar primos
de almacenamiento en memoria. ej con i 6= j ∈ {1, 2} lo cual conseguiremos tras (2/pλ,µ ).
Sin embargo, en cualquiera de los casos, la búsqueda ha de Si x = 2e1 e2 + 1 es primo, ya habrı́amos conseguido nuestro
comenzar a partir de la generación de los dos primos pequeños, objetivo, en caso contrario buscarı́amos otro ej . En resumidas
para posteriormente generar el grande. Por lo tanto, podemos cuentas, estarı́amos buscando números primos en la sucesión
suponer que el tiempo de comprobación de la primalidad de aritmética xik = 1 + 2ei k. Aunque el número k ha de ser
λ λ
un número y ∈ (2 2 −2µ , 2 2 +2µ ) es prácticamente constante, primo y por lo tanto su distribución deja de ser uniforme,
dependiente de λ, y que el número de comprobaciones nece- consideraremos (perdiendo una mı́nima precisión) que sı́ lo es
sarias hasta encontrar dicho número primo viene determinada ya que previamente hemos calculado la cota de probabilidad p
por la distribución de los números primos en el intervalo. Esa sobre una distribución uniforme (cota que también será válida
distribución nos dará una función de la probabilidad de que al para esta otra distribución). En ese caso, el número de k 0 s
elegir un número entero aleatorio con distribución uniforme necesarias, será mayor que la esperanza de la distribución
en ese intervalo, dicho número sea primo y lo denotaremos geométrica con probabilidad de éxito, p, es decir 1/p. El
con pλ,µ . algoritmo serı́a el siguiente:
Por otro lado una vez determinado que y es primo sabemos Key gen(u, n, λ, µ):
que P (y = 1 (mod 3)) = 1/2 = P (y = 2 (mod 3)), dada la 1. ei = Rand(λ, µ)
distribución de los números primos en sucesiones aritméticas. 2. WHILE (ei no primo) {ei = Rand(λ, µ)}
Con esto y teniendo en cuenta el teorema del número primo, 3. ej = 1, x = 2ei ej
aproximaremos la esperanza de intentos para encontrar un 4. WHILE (x no primo)
primo y como (1/pλ,µ ) y la de que tenga una determinada {ej = Rand(λ, µ)
congruencia con 1 ó 2 módulo 3 será el doble de dicho valor, WHILE (ej no primo) {ej = Rand(λ, µ)}
(2/pλ,µ ). x = 2e1 e2 + 1}
Antes de comenzar nuestro análisis daremos una cota supe- 5. RETURN (e1 , e2 , x)
rior de una probabilidad que nos será muy útil. Serı́a intere- Teniendo en cuenta que para el cálculo del tiempo de
sante conocer cuál es la probabilidad p de que a partir de un procesado, la tarea que más tiempo requiere es calcular la pri-
número e1 dado, encontrar otro número primo x = 2ke1 + 1, malidad de x, podemos afirmar que el tiempo de procesado es
λ λ
con k variando en el intervalo (2 2 -2µ , 2 2 +2µ ), con lo que del orden de 1/p. La cantidad de memoria de almacenamiento
λ λ
λ+1 2µ+1 +µ+2 λ+1
x ∈ (1+2 +2 −2 2 , 1+2 +22µ+1 +2 2 +µ+2 ). empleada se mantiene constante a lo largo de todo el proceso
Utilizando Qla notación del teorema de Brun-Titchmarsh [8], y se limita a dos únicos primos, el primo ei que permanece
la expresión (a, b, c) denota la cantidad de números primos fijo y los e0j s, i 6= j, necesarios hasta obtener un primo de la
menores que a en la sucesión xn = c + nb. De este teorema forma 2ej ei + 1.
podemos deducir que la densidad de números primos en esa
λ λ
sucesión, dentro del intervalo (2 2 -2µ , 2 2 +2µ ), va a estar III-B. Estrategias de minimización de tiempo de procesado
acotada por: Si por el contrario lo que queremos es seguir una estrategia
λ de optimización del tiempo de procesado, tendremos que
(1+2λ+1 +22µ+1 +2 2 +µ+2 , 2e1 , 1)− (1+2λ+1 +22µ+1 −
Q Q
λ λ minimizar el número de test de primalidad para números
λ 2·2 2 +µ+3 2 2 +µ+4
2 2 +µ+2 , 2e1 , 1) < λ +µ+3 = λ +µ+2 ; del tamaño de x. Analizando nuestro objetivo podemos apre-
ϕ(2e1 )log( 2 2 2e ) (e1 −1)log( 2 2 )
1 e1 ciar que el número sobre el que queremos aplicar los test
116 J. L. Salazar, J. L. Tornos

de primalidad tiene en realidad dos fuentes de aleatoriedad Calcular la esperanza analı́tica de esta distribución, y por
prácticamente independientes e1 y e2 , por lo que quizás serı́a tanto de la memoria necesaria, no resulta sencillo. La memoria
conveniente pensar en intentar usar la paradoja del cumpleaños necesaria aumentará conforme más primos e1 y e2 sean
en nuestro beneficio. necesarios para el cálculo del primo 2e1 e2 + 1. A priori no
Para ello definiremos inicialmente 2 conjuntos: P1 y P2 , se conoce el total de memoria necesaria pero sı́ que se puede
λ λ
donde Pi = {x ∈ (2 2 − 2µ , 2 2 + 2µ )\x es primo y realizar una cierta estimación basándonos en los resultados
x = i(mod 3)}. Se generan números primos en el intervalo teóricos obtenidos, figura 2. En la Sección IV hacemos una
λ λ
(2 2 − 2µ , 2 2 + 2µ ) con una semilla aleatoria con distribución comparativa sobre las gráficas teóricas resultantes de los
uniforme. Cada vez que consigamos un primo, r, veremos a valores de p para diferentes valores de λ y exponemos los
qué conjunto Pi pertenece e iremos comprobando la primali- resultados empı́ricos para el cálculo de claves reales con las
dad de x = 2rej +1, donde ej va recorriendo todos los valores caracterı́sticas exigidas.
de Pj , (j = −i(mod 3)). Si no se consigue ningún resultado
positivo, añadimos r al conjunto Pi e iniciamos la búsqueda IV. R ESULTADOS
de un nuevo r. El algoritmo serı́a el siguiente: En la figura 2 podemos apreciar cuál serı́a la curva teórica
Key gen(u, n, λ, µ): para la distribución de la probabilidad del número de intentos
1. P1 = ∅, P2 = ∅; i1 = 0, i2 = 0 necesarios para el cálculo de claves en el caso de minimización
2. WHILE (P1 = ∅ OR P2 = ∅) de tiempo de procesado. Podemos ver cómo el número de
primos que debemos extraer será mayor conforme aumente la
{r = Rand(λ, µ)
longitud de las claves que queremos calcular.
WHILE (r no primo) {r = Rand(λ, µ)}
k = r mod(3) En la tabla I indicamos los resultados obtenidos después de
Pk [ik ] = r realizar el cálculo de 500 claves de cada tipo: número medio
ik + +} de primos, e1 y e2 calculados; el número de intentos que se
han realizado antes de obtener el primo buscado; y el tiempo
3. Éxito = False; i = 0
que se ha tardado en obtenerlo. En las dos últimas columnas
4. WHILE (!Éxito AND i < #P−k )
indicamos el valor teórico con el que se supera el umbral
{x = 1 + 2rP−k [i] del 0.5 de probabilidad de obtener un primo 2e1 e2 + 1 y su
IF (x primo) {Éxito =TRUE} probabilidad asociada. Los valores de #P1 y #P2 no están
i++ } perfectamente equilibrados pero la mayor diferencia entre las
5. WHILE (!Éxito) medias de e1 y e2 calculados es menor del 3 %.
{r = Rand(λ, µ) En la tabla II se muestran los resultados para la estrategia
WHILE (r no primo) {r = Rand(λ, µ)} de optimización de memoria. En este caso se muestran los
k = r mod(3) valores de la esperanza de este sistema para obtener las claves,
i=0 (1/pλµ ). Si comparamos el valor del número de extracciones
WHILE (!Éxito AND i < #P−k ) esperadas para la obtención de un primo 2e1 e2 +1, vemos que
{x = 1 + 2rP−k [i] la diferencia con la estrategia de minimización de tiempo es
IF (x primo) {Éxito =TRUE} más que considerable y además esta diferencia se incrementa
IF (!Éxito) {i++}} conforme mayor es el tamaño de la clave buscada, llegando a
IF (!Éxito) {Pk [i] = r} } ser la esperanza del número de intentos de esta estrategia mas
de siete veces mayor que en la estrategia de minimización del
6. RETURN (r, P−k [i], x)
tiempo de procesado.

En este caso si consideramos que P1 y P2 están permanente- V. C ONCLUSIONES


mente equilibrados y llamamos k al número de r0 s calculadas En el artı́culo se muestra el proceso de generación de claves
obtendremos que para un entero m: para un protocolo de votación electrónica. Se han mostrado
m−1 2
P (k ≤ m) = 1 − P (k > m) = 1 − q ( 2 ) , donde hemos dos estrategias distintas de obtención de claves, minimización
definido q = 1 - p. de memoria y minimización de tiempo de procesado, y se ha

Tabla I Tabla II
R ESULTADOS CON MINIMIZACI ÓN DE TIEMPO P ROBABILIDAD Y ESPERANZA PARA MINIMIZACI ÓN DE MEMORIA

Bits #P1 #P2 # x fallidas Tiempo(ms) m P(m) Bits E[no intentos]


128 5,55 5,62 33 5,5 5 0,52976 128 8,46254
256 7,70 7,48 65 30,5 7 0,50432 256 17,6031
512 10,40 10,64 126 262,6 10 0,50875 512 35,6735
1024 14,21 14,64 251 3319,9 15 0,54542 1024 71,5329
2048 21,23 21,37 544 56664,1 20 0,50248 2048 143,744
Optimización en la generación de claves para firmas en anillo, espontáneas y enlazables 117

hecho un desarrollo teórico del coste de obtención de dichas [2] U. Madise, P. Vinkel, “Constitutionality of Remote Internet Voting: The
claves con las dos estrategias. Estonian Perspective,” Juridica International XVIII. 2011, pp. 4-16
[3] J.L. Salazar, J. Piles, J. Ruiz, J.M. Moreno-Jiménez, “Security approa-
Podemos concluir que ambas estrategias son válidas para el ches in e-cognocracy,” Computer Standards and Interfaces, vol. 32, 2010
efecto que se diseñaron. Sin embargo, podemos apreciar que pp. 256–265.
pensar en una estrategia de minimización de memoria exige [4] R.L. Rivest, A. Shamir and Y. Tauman, “How to leak a secret,”
Proceedings of the 7th International Conference on the Theory and
una cantidad y tiempo de procesado que es difı́cil de asumir Application of Cryptology and Information Security: Advances in Cry-
en los dispositivos actuales ya que su coste (ya sea tiempo o ptology (ASIACRYPT ’01), 2001, pp. 552–565.
precio del procesador) parece resultar más caro que la memoria [5] P. P. Tsang, V. K. Wei, “Short linkable ring signatures for e-voting, e-
cash and attestation,” Proceedings of the First international conference
necesaria para acelerar el proceso. on Information Security Practice and Experience (ISPEC’05), 2005, pp.
48–60.
AGRADECIMIENTOS [6] Camenisch, J., Lysyanskaya, A., “A signature scheme with efficient
protocols,” Cimato, S., Galdi, C., Persiano, G. (eds.)Security Communi-
Este trabajo ha sido parcialmente financiado por el proyecto cation Networks, vol. 2576, 2002, pp. 268-289
CPUFLIPI (MICINN TIN2010-17298) del Gobierno de Es- [7] J. Gordon, “Strong Primes are Easy to Find,” Advances in Criptology
- Eurocrypt’84., 1984, pp. 216–223
paña y por la Cátedra Telefónica-Universidad de Zaragoza. [8] J. Friedlander, H. Iwaniec, ‘Applications to Linear Sequences (57),”
American Mathematical Society Colloquium Publications. American
R EFERENCIAS Mathematical Society, Providence, RI, 2010.
[9] G. Ateniese, J. Camenischm M. Joye, G. Tsudik “A Practical and Pro-
[1] J. Gerlach, U. Gasser, “Three Case Studies from Switzerland: E-Voting” vably Secure Coalition-Resistant Group Signature Scheme,” CRYPTO
Berkman Center Research Publication No. 2009-03.1 2000. LNCS, vol. 1880, pp. 255–270. Springer, Heidelberg (2000)
RECSI 2014, Alicante, 2-5 septiembre 2014

Un Enfoque Tolerante a Interrupciones para la


Seguridad de la Internet de las Cosas
Daniel Ezquerra, Àngela Fabregas, MCarmen de Toro, Joan Borrell
Depto. de Ingeniería de la Información y de las Comunicaciones
Universitat Autònoma de Barcelona - Escola d’Enginyeria - Edifici Q
08193 Bellaterra, Spain
Email: {daniel.ezquerra,angela.fabregues,mcarmen.detoro,joan.borrell}@deic.uab.cat

Resumen—La Internet de las cosas (IoT, Internet of Things) dónde están apareciendo trabajos que tratan de dar respuesta
es un paradigma emergente que pretende la interconexión de a necesidades de seguridad y comunicación.
cualquier objeto susceptible de contar con una parte de elec-
En este artículo presentamos un trabajo en progreso hacia
trónica, favorecido por la miniaturización de los componentes.
El estado de desarrollo de la IoT hace que no haya ninguna una aproximación a la seguridad de la IoT mediante un un
propuesta firme para garantizar la seguridad y la comunicación enfoque tolerante a interrupciones y retrasos basado en DTN.
extremo a extremo. En este artículo presentamos un trabajo La arquitectura DTN está pensada para escenarios con
en progreso hacia una aproximación tolerante a retrasos (DTN, grandes retrasos, donde no es posible la comunicación extremo
Delay and Disruption Tolerant Networks) para la comunicación
en el paradigma de la IoT y planteamos la adaptación de los
a extremo y donde existen una gran variedad de dispositivos.
mecanismo de seguridad existentes en DTN a la IoT. Debido a su diseño, la DTN es una arquitectura que podría
Palabras clave—Internet of Things(IoT), Redes tolerantes a resultar adecuada para dar respuesta a las necesidades comu-
retrasos e interrupciones(DTN), Seguridad en IoT. nicativas de la IoT. Al mismo tiempo, diversas soluciones de
seguridad han sido estudiadas para cubrir las necesidades de la
I. I NTRODUCCIÓN arquitectura DTN. Debido a la similitud entre las necesidades
de las DTN y las necesidades de la IoT, creemos que las
La evolución de la tecnología ha permitido la miniaturiza- medidas de seguridad con validez en el campo de las DTN
ción de muchos componentes electrónicos y junto con esta podrían ser adaptadas para usarse en la IoT.
miniaturización ha aparecido la posibilidad de interconectar El resto del artículo está estructurado de la siguiente manera:
millones de dispositivos. Mientras que hasta ahora la mayoría en la segunda sección presentamos el trabajo previo relaciona-
de dispositivos interconectados eran controlados por humanos, do. En la tercera sección planteamos una adecuación de DTN
esta evolución permitirá la comunicación máquina a máquina a la IoT. En la cuarta sección presentamos nuestro trabajo en
u objeto a objeto, con el fin de cooperar y lograr objetivos progreso sobre la seguridad en la IoT. En la quinta sección
comunes. Es esta la idea que define la Internet de las cosas describimos un escenario de aplicación para la aproximación
(IoT, Internet of Things) [1] y la Internet de las nano-cosas propuesta. Las conclusiones y las líneas de trabajo futuro
(IoNT, Internet of Nano-Things) [2], nuevos paradigmas en el cierran el artículo.
escenario de las redes no cableadas.
Si consideramos la comunicación entre cualquier tipo de ob- II. S EGURIDAD EN LA I OT
jeto, más allá de la comunicación entre ordenadores personales
o teléfonos inteligentes, encontramos que el número de objetos En los trabajos concernientes a la IoT existen dos grandes
conectados podría superar los 100 billones [3]. Si además aproximaciones para convertir el paradigma planteado en
consideramos los nano dispositivos podemos encontrarnos en una realidad: aproximaciones centralizadas y distribuidas. En
un escenario donde se podría producir una monitorización las siguientes secciones presentamos la seguridad según los
constante de datos sensibles, como datos referentes a la salud condicionantes de cada una de las visiones y otras propuestas
(constantes vitales de un usuario) o las posiciones geográficas. independientes a la aproximación planteada.
Esta es la razón por la cual, antes de que la IoT pueda
ser ampliamente aceptada, es el momento de trabajar en la II-A. Aspectos de seguridad inherentes al diseño
seguridad de este paradigma. La IoT [1] es posible gracias a diversas tecnologías que
Existe un gran número de propuestas que intentan definir agrupan desde sistemas pasivos de identificación como RFID
los límites de lo que debe ser la IoT y cuales deben ser los [5], hasta sistemas más complejos en los que objetos y
bloques que la conformen. Asimismo se trata de definir los dispositivos son capaces de generar datos y comunicarse con
estándares y las visiones que serán ampliamente aceptadas otros objetos sin necesidad de intervención externa. Las redes
en este nuevo paradigma. Igual pasa en otros paradigmas de sensores [6] o las redes móviles ad-hoc [7] son otras de las
emergentes, como es el caso de la arquitectura de red tolerante tecnologías que conforman la IoT, juntamente con las redes
a retrasos (DTN, Delay and Disruption Tolerant Networks)[4], intracorporales propuestas dentro del ámbito de IoNT [2].
120 D. Ezquerra, A. Fabregas, M. C. de Toro, J. Borrell

La mayoría de aproximaciones ofrecidas para la IoT que se para redes inalámbricas malladas (WMN, Wireless Mesh Net-
encuentran en funcionamiento acostumbran a tener un diseño works) en los que quedan patentes algunos de los problemas
centralizado, en el que varios dispositivos identificadores, de ZigBee respecto a la confidencialidad. Asimismo, el uso de
como podrían ser marcadores RFID o sensores, envían la entidades coordinadoras dificultan la gestión de claves.
información a un servidor central, controlado por el proveedor Algunos estudios, como los presentados en [15], hacen
del servicio. La ventaja de estos sistemas es que el fabricante uso de criptografía basada en pairings (PBC Pairing Based
puede ofrecer soluciones de criptografía simétrica entre los Criptography) tratando de solventar los problema de gestión
dispositivos y el servidor, y posteriormente securizar el servi- de claves que plantean otros sistemas criptográficos. Aún con
dor con los mecanismos que ofrece una red como Internet en propuestas que prescinden de usar una PKI, como aquellas
la que existe comunicación de extremo a extremo. Muchas de basadas en pairings, la distribución de claves en un entorno
las propuestas de seguridad concernientes a RFID se basan en como el de la IoT, con un gran número de dispositivos
este concepto [8], [9]. conectados, plantea problemas de escalabilidad. Tratando de
Otros trabajos, como el presentado en [10], estudian la solventar los problemas de distribución de claves, se en-
posibilidad de una IoT distribuida o híbrida en lugar de un cuentran algunas propuestas que ofrecen soluciones mediante
esquema completamente centralizado como el mencionado. El criptografía basada en la identidad [16] (IBC, Identity Based
esquema distribuido o híbrido supone ciertas desventajas en la Criptography).
aplicación de medidas de seguridad, puesto que se complica Los problemas de integridad y confidencialidad, sin em-
la implementación de mecanismos conocidos, como podrían bargo, no son los únicos problemas de seguridad que se
ser sistemas de autenticación basados en una infraestructura encuentran en la IoT. Un entorno en el que existen grandes
de clave pública (PKI, Private Key Infarestructure). Por el cantidades de objetos interconectados supone un problema
contrario, el planteamiento de una arquitectura distribuida para la privacidad y el anonimato de los usuarios. Deben
permite estar más cerca de un paradigma en el que los diseñarse sistemas de autenticación que limiten de forma
dispositivos se comunican entre ellos para lograr objetivos eficiente quien puede recuperar los datos de sensores u otros
comunes o cooperativos en el ámbito local. Un sistema dis- objetos. En este aspecto, existen estudios como [17] que
tribuido permite, además, una mayor escalabilidad y, al no proponen soluciones a los problemas de autenticación. Otras
estar concentrada toda la inteligencia en un solo dispositivo, aproximaciones como la planteada en [18], no hacen uso del
posibilita la implementación de políticas de privacidad u citado tipo de criptografía. Sin embargo la propuesta se ha
otros tratamientos de datos más allá de guardar o recuperar demostrado insegura en [19].
información.
Independientemente del planteamiento distribuido o centra- III. A PROXIMACIÓN DTN A LA I OT
lizado, se están realizando esfuerzos para crear estándares En esta sección describimos la arquitectura DTN y justifica-
necesarios para ofrecer protocolos de comunicación y se- mos la aproximación DTN para la IoT a la vez que revisamos
guridad adecuados. Uno de los protocolos más usados para las limitaciones de nuestra aproximación.
conseguir la comunicación entre elementos con restricciones
de recursos es ZigBee [11] junto con una adaptación del III-A. Redes tolerantes a retraos e interrupciones
protocolo IPv6 conocida como LowPan6 [12]. La conjunción DTN [4] es una arquitectura de red diseñada para trabajar
de ambos permite trabajar con redes de sensores y redes ad-hoc en entornos sin conectividad extremo a extremo, con grandes
de manera que cada elemento pueda tener un identificador. retrasos en la comunicación, canales asimétricos y dispositivos
heterogéneos. DTN hace uso de mecanismos de store-carry
II-B. Soluciones de seguridad and forward que permiten a un nodo almacenar los mensajes
Las propuestas de seguridad especificas para redes ad-hoc mientras no hay comunicación y entregarlos en cuando se pro-
móviles, redes inalámbricas malladas [13] o redes de sensores duce el contacto con otros nodos. La comunicación de este tipo
pueden ser buenas aproximaciones para la seguridad en la de redes es, en ocasiones, de tipo oportunista y está supeditada
IoT dado que este tipo de redes se presentan como parte de al encuentro con otros nodos. Para garantizar la comunicación
los bloques que constituyen el paradigma de interconexión de extremo a extremo se define el protocolo Bundle [20] que
objetos. Por las características de estas redes, los mecanismos permite la entrega de los mensajes sin importar los protocolos
criptográficos basados en PKI suponen un sobrecoste que no subyacentes. Algunos trabajos presentan enfoques DTN para
siempre resulta asumible. Este sobrecoste, añadido al hecho entornos en los que son aplicables otras arquitecturas, como
que en las redes de sensores no siempre es posible contactar en [21] para redes de sensores o [22] para redes malladas.
con una autoridad certificadora, hace que la criptografía basada
en PKI no sea siempre una buena solución. III-B. Aproximación DTN a la IoT
ZigBee aporta, también, sus propios mecanismos de seguri- El paradigma IoT se construye a partir de un conjunto
dad, aunque están diseñados para redes del tipo muchos a uno. de tecnologías heterogéneas que comparten unas restricciones
Es decir, no está pensado para una arquitectura distribuida, en comunes como una capacidad de cómputo limitada y limitacio-
la que podría presentar problemas de escalabilidad. Además en nes energéticas. Sin embargo, no todos los dispositivos en IoT
[14] se realiza un estudio de varios mecanismos de seguridad sufren de estas restricciones puesto que existen dispositivos
Un Enfoque Tolerante a Interrupciones para la Seguridad de la Internet de las Cosas 121

que poseen mayor capacidad de cálculo y que pueden tener él para obtener las claves privadas correspondientes a su
un acceso constante a una fuente de energía. identidad.
Dado lo heterogéneo de los dispositivos que pueden confor- Una aproximación jerárquica de IBC (HIBC, Hirearchical
mar IoT, en la aproximación que proponemos se entenderá una Identity based cryptography) [25] ofrece la escalabilidad nece-
región como un conjunto de dispositivos que comparten unas saria tanto en arquitecturas DTN como en el paradigma de la
características similares en capacidad de computo, limitaciones IoT. Algunas implementaciones de HIBC como [26] proponen
de batería y capacidad de interconexión. esquemas en los que el PKG genera las claves privadas para un
Teniendo en cuenta los distintos tipos de dispositivos, la conjunto de PKGs de nivel inferior, que serán los encargados
aproximación DTN podría considerar una arquitectura de de generar las claves privadas de un subconjunto de nodos
comunicación híbrida, en la que existen regiones de comu- de la red. Con esta propuesta, además de escalabilidad se
nicación muchos a uno, como en el caso de RFID, o muchos garantiza que, en caso de quedar comprometido un PKG, no
a muchos, como el caso de algunas redes de sensores, que quede comprometido el sistema completo.
además se comunican entre ellas. Así pues, con una arquitec- Cuando un nodo distinto del PKG queda comprometido es
tura híbrida los nodos de la DTN equivaldrían a los sensores u necesario revocar las claves. Sin embargo, dado que HIBC
objetos capaces de identificarse, como los marcadores RFID. no necesita de una tercera parte para obtener las claves, no
Por otra parte, dispositivos con mayor capacidad de cómputo y es posible comprobar que sigan siendo vigentes. En [27] se
batería podrían actuar como mulas de datos, es decir, podrían soluciona el problema de la revocación de claves mediante
recoger los datos de otros nodos para reenviarlos. El uso la concatenación de una marca de tiempo a la identidad en
del protocolo Bundle [20] garantizaría las comunicaciones la generación de las claves públicas. Siendo así, la pareja de
extremo a extremo y su extensión de seguridad permitiría claves tiene una duración concreta y, en caso de que estas se
otorgar confidencialidad e integridad a los datos [23]. La vean comprometidas, únicamente lo estarán durante el periodo
finalidad de usar una arquitectura DTN sería proveer co- de tiempo en el que tienen validez.
municación entre las regiones y entre los dispositivos de la Existen otras soluciones de seguridad que además de la
misma región. Las características de diseño de la arquitectura confidencialidad, cubren problemas como el de la autentica-
DTN complementarían a la IoT supliendo algunas de las ción. En [28] se presenta una aproximación de clave simétrica
restricciones necesarias como falta de disponibilidad, canales donde, dado el esquema IBC propuesto por Boneh y Franklin
asimétricos o el trabajo con dispositivos heterogéneos. [29], es posible establecer un secreto compartido entre cada
pareja de nodos. Lo interesante de la propuesta reside en
III-C. Limitaciones de nuestra aproximación la posibilidad de generar el secreto compartido de forma no
En algunos trabajos, como [24], se menciona la posibilidad interactiva. De esta manera, en redes donde los contactos son
de una arquitectura DTN para la IoNT. Con la aproxima- oportunistas o donde existen limitaciones de cómputo, dos
ción DTN propuesta, sin embargo, en cada comunicación usuarios con las parejas de claves
habría que incorporar la cabecera especificada por el protocolo
(IDU , dU ), (IDV , dV )
Bundle a los datos y ello supone una complejidad inasumible
En otros escenarios con restricciones en el volumen de datos a podrán calcular el secreto compartido entre ambos de forma
transmitir durante la comunicación, las cabeceras del protocolo independiente como:
Bundle supondrían también una limitación considerable.
KU V = e(QU , dV ) = e(QV , dU ) = e(QU , QV )s
IV. S EGURIDAD DTN PARA LA I OT
donde s es el secreto maestro que únicamente conoce el
En está sección presentamos los mecanismos de seguridad PKG y QU = H(IDU ) i QV = H(IDV ) siendo H una
de DTN y su adaptación a la IoT. función resumen. La igualdad expuesta, implica que el PKG
tiene acceso al contenido de las comunicaciones, aún cuando
IV-A. Seguridad en DTN
dos nodos se hayan autenticado mutuamente y establecido un
El uso de la extensión de seguridad del protocolo Bundle canal seguro.
provee de integridad y confidencialidad a los mensajes en-
viados de extremo a extremo. Por otra parte, la extensión de IV-B. Adaptación a la IoT
seguridad no especifica el tipo de claves criptográficas a usar. Dado el requisito de escalabilidad que se debe cumplir en
IBC ofrece una solución que se adapta a las necesidades de la IoT, proponemos como solución un sistema jerárquico de
la arquitectura DTN. IBC como el propuesto en [26] que permite la creación de
IBC propone que la clave pública sea la propia identidad del regiones, con un PKG por región y un nodo central que genera
usuario. Usando la identidad como clave pública, se pretende las claves para los PKG de cada una de las regiones. Junto
evitar tener que recurrir a una tercera parte de confianza que con el sistema HIBC consideramos una marca temporal para
provea las claves necesarias. El esquema IBC, sin embargo, gestionar la revocación de claves. Aunque el uso de marcas de
es incapaz de eliminarla. Debe existir al menos un generador tiempo da robustez y soluciona el problema de la revocación,
de claves privadas (PKG, Private Key Generator). Resulta supone que los nodos de la red deberán almacenar N claves.
necesario que todos los nodos de la red se comuniquen con Sin embargo, en algunas ocasiones los nodos de la IoT tendrán
122 D. Ezquerra, A. Fabregas, M. C. de Toro, J. Borrell

restricciones de memoria y ello podría generarles una excesiva V. E SCENARIO DE APLICACIÓN


dependencia con el PKG. En esta sección se plantea un escenario de aplicación típico
Tratando de solventar la dependencia que podría llegar de la IoT y la aproximación DTN que le correspondería. Se
a generarse con el PKG, y tratando de evitar también la pretende mostrar la adaptación de la aproximación propuesta
capacidad de computo que se puede requerir para generar el para la IoT en un escenario real.
canal seguro mediante el cifrado de cada mensaje con claves Un escenario típico en el campo de la IoT es la monito-
IBC, proponemos un esquema de clave simétrica basado en rización de la salud del usuario mediante pulseras o prendas
HIBC. La generación de claves simétricas para la autenticación de ropa con los sensores adecuados. Con la monitorización de
mutua permite la creación de un canal seguro y auténtico sin la la salud en mente, se plantea un escenario en el que diversos
necesidad de usar las claves asimétricas. El uso exclusivamente grupos de bomberos intentan apagar un incendio forestal. Los
privado de las claves IBC permitiría alargar su vida útil bomberos van equipados con trajes capaces de monitorizar sus
y reducir la dependencia del nodo con el PKG. Además, constantes vitales y sus signos de fatiga. En el bosque no hay
una vez calculada la clave, las operaciones para cifrar y posibilidad de conseguir una conexión a Internet para mandar
descifrar no supondrán el mismo coste computacional que los datos al centro de mando.
supondrían las operaciones en curvas elípticas en las que se Los vehículos que ayudan en las tareas de extinción cuentan
basa IBC. Conseguimos entonces una reducción de la energía con dispositivos que soportan la comunicación mediante el
consumida por los nodos. Si tenemos en cuenta la propuesta protocolo Bundle y que pueden entrar en comunicación con
[28], sería posible la generación de la clave simétrica de las unidades terrestres cuando estas se encuentran dentro del
manera no interactiva, permitiendo un canal seguro y auténtico radio de acción del dispositivo. Los vehículos captan los datos
sin intercambio previo a la comunicación de datos. de las unidades terrestres y al ir a recargar las cubas transmiten
Con la propuesta de la clave simétrica pretendemos también la información al centro de mando. Entonces los datos son
dotar de cierta protección contra la impersonalización en la procesadas y se pueden mandar ordenes de vuelta.
solicitud de claves al PKG. Si consideramos que en la IoT los En este escenario los objetos, los trajes de los bomberos,
nodos que se agregan a una región no tienen que provenir son capaces de comunicarse con la central mediante el uso
de fuentes de confianza, estos podrían tomar la identidad del protocolo Bundle y transmitir los datos adecuados para la
de otro nodo frente al PKG y solicitar claves privadas. Con correcta gestión de las unidades durante el incendio. Además,
dicha solicitud conseguirían las claves privadas de otro nodo, los trajes son capaces de recibir ordenes y transmitirlas a sus
pudiendo acceder a sus mensajes o actuar de forma deshonesta usuarios según lo considere el centro de coordinación.
en su nombre. El uso del protocolo Bundle junto con un sistema de segu-
ridad resulta imprescindible. El protocolo Bundle asegura que
Si asumimos que el PKG es habitualmente un nodo con más
se pueda producir la comunicación extremo a extremo, incluso
recursos de cómputo y memoria que el resto de los nodos se
cuando las conexiones con los vehículos son esporádicas. La
puede considerar la siguiente aproximación:
seguridad garantiza que ninguna persona no autorizada pueda
Cuando un nodo (N) solicita claves por primera vez ante tener acceso a los datos de los bomberos o a las ordenes de
el PKG este comprueba si ya ha provisto de claves al la central. Para ello, los trajes de los bomberos pueden contar
nodo solicitante. Si es la primera solicitud, almacena la con claves simétricas creadas a partir de su número de identi-
identidad del nodo y genera las claves correspondientes. ficación dentro del cuerpo de bomberos y de la identificación
Al solicitar claves de nuevo, el nodo envía al PKG la del vehículo, a partir de la matricula por ejemplo. El uso de
tupla (IDN , EKN P KG (IDN )). las claves simétricas pre-computadas permitiría el intercambio
El PKG extrae el timestamp de IDN y calcula el secreto rápido de mensajes en el tiempo limitado en que un camión
compartido KN P KG , entonces si DKN P KG (IDN ) = o hidroavión se encontrase cerca de una unidad de extinción.
IDN genera la claves y las remite al nodo. Si los vehículos actúan, además, como nodos de confianza
se pueden renovar las claves periódicamente gracias a una
donde EKN P KG (IDN ) es la identidad del nodo cifrada organización HIBC.
haciendo uso del secreto compartido entre el PKG y el nodo y La aproximación DTN al escenario de la IoT permite la
KN P KG es el secreto compartido. Es necesario recordar que monitorización de los cuerpos de extinción, aún cuando estos
el PKG no precisa de clave privada para realizar el cálculo del se encuentren dispersos y fuera del alcance de comunicación
secreto compartido (véase IV-A). La extracción de la marca con los vehículos. De esta manera es posible una gestión
de tiempo de la identidad provista se plantea necesario debido completa del operativo de forma segura.
a que en el momento de solicitar nuevas claves es posible
que aquellas que almacena el nodo ya no tengan validez. VI. C ONCLUSIONES Y TRABAJO FUTURO
La generación de la clave simétrica por parte del PKG, sin En este trabajo hemos presentado una visión de la IoT y
embargo, no requiere de la clave privada correspondiente a una alguna de las medidas de seguridad que se han estudiado
determinada identidad. Gracias a esta característica es posible para el paradigma de la IoT. Hemos presentado, además, una
para el PKG validar la clave simétrica aún cuando la clave aproximación DTN para la comunicación en la IoT y hemos
pública correspondiente haya caducado. revisado alguno de los mecanismos de seguridad que existen
Un Enfoque Tolerante a Interrupciones para la Seguridad de la Internet de las Cosas 123

para la arquitectura DTN, y que pueden ser adaptados a la [11] ZigBee Alliance, “Zigbee specification,” URL: http://www. zigbee. org,
IoT. Hemos considerado también alguna de las limitaciones vol. 558, 2006.
[12] G. Mulligan, “The 6LoWPAN architecture,” in Proceedings of the 4th
existentes para la aproximación propuesta. workshop on Embedded networked sensors, pp. 78–82, ACM, 2007.
Como trabajo futuro deberíamos adaptar la propuesta de uso [13] I. F. Akyildiz, X. Wang, and W. Wang, “Wireless mesh networks: a
de las claves simétricas a la aproximación jerárquica de IBC survey,” Computer networks, vol. 47, no. 4, pp. 445–487, 2005.
[14] C. Alcaraz and J. Lopez, “A security analysis for wireless sensor mesh
para poder permitir el establecimiento de un canal seguro entre networks in highly critical systems,” Systems, Man, and Cybernetics,
nodos pertenecientes a distintas regiones. Además, el cambio Part C: Applications and Reviews, IEEE Transactions on, vol. 40, no. 4,
de región de un nodo no debería suponer un problema para pp. 419–428, 2010.
[15] P. Szczechowiak, A. Kargl, M. Scott, and M. Collier, “On the application
obtener claves de un nuevo PKG. La posibilidad de realizar la of pairing based cryptography to wireless sensor networks,” in Pro-
solicitud de claves a otro PKG está estrechamente relacionada ceedings of the second ACM conference on Wireless network security,
con la adaptación del mecanismo de identificación mutua en pp. 1–12, ACM, 2009.
[16] A. Shamir, “Identity-based cryptosystems and signature schemes,” in
HIBC. Advances in cryptology, pp. 47–53, Springer, 1985.
Sería también una línea de trabajo interesante estudiar la [17] G. Zhao, X. Si, J. Wang, X. Long, and T. Hu, “A novel mutual
posibilidad de adaptar el protocolo Bundle para situaciones authentication scheme for internet of things,” in Modelling, Identification
and Control (ICMIC), Proceedings of 2011 International Conference on,
en que el sobrecoste de enviar las cabeceras hace inviable el pp. 563–566, IEEE, 2011.
uso de una aproximación DTN, por ejemplo en el caso de [18] A. Alcaide, E. Palomar, J. Montero-Castillo, and A. Ribagorda, “Anony-
nano-dispositivos. mous authentication for privacy-preserving IoT target-driven applica-
tions,” Computers & Security, vol. 37, pp. 111–123, 2013.
AGRADECIMIENTOS [19] X. J. Lin and L. Sun, “Insecurity of an anonymous authentication
for privacy-preserving IoT target-driven applications,” IACR Cryptology
Este trabajo ha sido parcialmente financiado por el Ministe- ePrint Archive, vol. 2013, p. 795, 2013.
rio de Ciencia e Innovación Español, proyecto TIN2010-15764 [20] K. L. Scott and S. Burleigh, “Bundle protocol specification,” 2007.
[21] C. Borrego and S. Robles, “A store-carry-process-and-forward paradigm
y por la Generalitat de Cataluña, proyecto 2014SGR-619. for intelligent sensor grids,” Information Sciences, vol. 222, no. 0,
pp. 113 – 125, 2013.
R EFERENCIAS [22] C. Borrego, S. Castillo, and S. Robles, “Striving for sensing: Taming
your mobile code to share a robot sensor network,” Information Sciences,
[1] R. H. Weber and R. Weber, Internet of Things. Springer, 2010.
2014.
[2] I. F. Akyildiz and J. M. Jornet, “The internet of nano-things,” Wireless
[23] S. Symington, S. Farrell, H. Weiss, and P. Lovell, “Bundle security
Communications, IEEE, vol. 17, no. 6, pp. 58–63, 2010.
protocol specification,” Work Progress, October, 2007.
[3] M. A. Feki, F. Kawsar, M. Boussard, and L. Trappeniers, “The internet
[24] S. Balasubramaniam and J. Kangasharju, “Realizing the internet of nano
of things: The next technological revolution,” Computer, vol. 46, no. 2,
things: challenges, solutions, and applications,” Computer, vol. 46, no. 2,
pp. 24–25, 2013.
pp. 62–68, 2013.
[4] K. Fall, “A delay-tolerant network architecture for challenged internets,”
[25] C. Gentry and A. Silverberg, “Hierarchical ID-based cryptography,” in
in Proceedings of the 2003 conference on Applications, technologies,
Advances in cryptology-ASIACRYPT 2002, pp. 548–566, Springer, 2002.
architectures, and protocols for computer communications, pp. 27–34,
[26] R. Patra, S. Surana, and S. Nedevschi, “Hierarchical identity based
ACM, 2003.
cryptography for end-to-end security in DTNs,” in Intelligent Computer
[5] K. Finkenzeller, RFID Handbook. Wiley Online Library, 2003.
Communication and Processing, 2008. ICCP 2008. 4th International
[6] I. F. Akyildiz, W. Su, Y. Sankarasubramaniam, and E. Cayirci, “Wireless
Conference on, pp. 223–230, IEEE, 2008.
sensor networks: a survey,” Computer networks, vol. 38, no. 4, pp. 393–
[27] A. Seth and S. Keshav, “Practical security for disconnected nodes,” in
422, 2002.
Secure Network Protocols, 2005.(NPSec). 1st IEEE ICNP Workshop on,
[7] S. Basagni, M. Conti, S. Giordano, and I. Stojmenovic, Mobile ad hoc
pp. 31–36, IEEE, 2005.
networking. John Wiley & Sons, 2004.
[28] R. Dupont and A. Enge, “Provably secure non-interactive key distribu-
[8] G. Hancke, K. Markantonakis, and K. Mayes, “Security challenges for
tion based on pairings,” Discrete Applied Mathematics, vol. 154, no. 2,
user-oriented RFID applications within the Internet of Things,” Journal
pp. 270–276, 2006.
of Internet Technology, vol. 11, no. 3, pp. 307–313, 2010.
[29] D. Boneh and M. Franklin, “Identity-based encryption from the Weil pai-
[9] A. Juels, “RFID security and privacy: A research survey,” Selected Areas
ring,” in Advances in Cryptology-CRYPTO 2001, pp. 213–229, Springer,
in Communications, IEEE Journal on, vol. 24, no. 2, pp. 381–394, 2006.
2001.
[10] R. Roman, J. Zhou, and J. Lopez, “On the features and challenges
of security and privacy in distributed Internet of Things,” Computer
Networks, vol. 57, no. 10, pp. 2266–2279, 2013.
RECSI 2014, Alicante, 2-5 septiembre 2014

Smart-Shopping: Aplicación de un Protocolo de


Firma de Contratos Multi-Two-Party Atómico
Gerard Draper-Gil, Josep-Lluı́s Ferrer-Gomila, M. Francisca Hinarejos
Universitat de les Illes Balears (UIB), Email: {gerard.draper, jlferrer, xisca.hinarejos}@uib.es

Resumen—El avance de Internet y las tecnologı́as de co- contrato M2 , etc. En este escenario, ni C ni Pi quieren dar su
municaciones está disminuyendo cada vez más la distancia firma sin tener la seguridad que el otro participante enviará la
entre consumidores y proveedores, hasta el punto que cualquier suya. El escenario Multi-Two-Party Atómico (AM2P) es un
proveedor que lo desee puede ofrecer sus productos directamente
al consumidor final. Esto supone a la vez una ventaja y una caso restrictivo del Multi-Two-Party en el que C no quiere
desventaja para el consumidor. Por un lado, le permite comparar enviar su firma sin tener la seguridad que recibirá la firma de
los precios de distintos proveedores, pero por otra parte la todos los proveedores {P1 , ..., P(N −1) }, ni Pi quiere enviar
gran cantidad de oferta puede complicar este proceso. Un la suya si no recibe la correspondiente firma de C sobre el
caso particularmente interesante es la situación en la que el contrato Mi .
consumidor quiera un producto multi servicio, como los paquetes
turı́sticos, formados por vuelos, hoteles, excursiones, etc. Un artı́culo presentado en la anterior edición de la RECSI
En este artı́culo presentamos una modificación sobre un [1] presenta el primer protocolo de firma de contratos dirigido
protocolo multi-two-party atómico, que permite al consumidor a estos escenarios, donde el consumidor debe negociar previa-
automatizar la función búsqueda, negociación y compra (firma mente con todos los proveedores antes de ejecutar el protocolo.
de un contrato), manteniendo la equitatividad y atomicidad en Es decir, el objetivo del protocolo es firmar una serie de
la transacción.
Palabras clave—Contratación electrónica multi- party, contratos pre-acordados entre el consumidor y los distintos
E- Commerce, Smart Shopping proveedores. Este proceso puede ser largo y tedioso, y no todos
los consumidores tienen el tiempo o los conocimientos para
I. I NTRODUCCI ÓN llevarlo a cabo. Para solucionar esta situación, en este artı́culo
Gracias al comercio electrónico, hoy en dı́a consumidores y presentamos una modificación sobre el protocolo AM2P, que
proveedores están más cerca que nunca. A través de Internet, permite fusionar las fases de negociación y firma, facilitando
los consumidores tienen acceso directo a múltiples provee- su uso a los consumidores.
dores, permitiéndoles, entre otras cosas, comparar distintas Contribución: En este artı́culo presentamos una propuesta
ofertas y quedarse con la que más les interese. A su vez, de protocolo para firma digital de contratos para escenarios
los proveedores tienen acceso directo a millones de clientes Multi-Two-Party Atómicos, donde la fase de negociación forma
potenciales. parte del proceso de firma. Esta propuesta es una modificación
Esta situación es de especial interés en sectores como sobre un protocolo presentado en la última RESCI [1], mante-
el ocio, donde los consumidores adquieren habitualmente niendo los requisitos de seguridad: efectividad, equitatividad,
productos como los paquetes turı́sticos, formados por varios temporalidad, no-repudio, confidencialidad y verificabilidad de
servicios: hoteles, vuelos, excursiones, etc. Los consumidores la TTP.
pueden fácilmente comparar el precio ofrecido para un mis- Organización: El artı́culo está organizado de la siguiente
mo servicio por distintos proveedores (existen incluso webs manera. La sección II presenta un ejemplo de cómo podrı́a
especı́ficas para estos servicios) y escoger el que más les utilizarse el protocolo presentado en este artı́culo para crear
convenga. Al final, el paquete que compra el consumidor una aplicación de compra inteligente. En la sección III se
puede estar formado por servicios de diferentes proveedores. describen los requisitos de seguridad del protocolo de negocia-
El problema aparece en el momento de ejecutar la compra de ción más firma Multi-Two-Party Atómico. En la sección IV se
los servicios: para que el consumidor obtenga el producto que discute brevemente el trabajo previo realizado, y se presenta
desea, tiene que comprar servicios diferentes de proveedores el protocolo de firma Multi-Two-Party Atómico en el cual se
distintos, por lo tanto, debe comprometerse con todos los basa este artı́culo. Nuestra propuesta se define en la sección
proveedores o con ninguno; sino fuera ası́, su paquete no V. En la sección VI analizamos si nuestra propuesta cumple
estarı́a completo. A este tipo de escenarios se les denomina con los requisitos de seguridad. Finalmente, las conclusiones
Multi-two-Party Atómicos (AM2P). aparecen en la sección VII.
En un escenario Multi-Two-Party (M2P) tenemos N
participantes, 1 consumidor C y (N − 1) proveedo- II. E SCENARIO
res Pi , agrupados en un conjunto de (N − 1) pares El protocolo propuesto en [1], permite a los consumidores
{C, P1 }, {C, P2 }..., {C, P(N −1) }, que quieren firmar un con- firmar un conjunto de contratos, cada uno con un proveedor
junto de (N − 1) contratos {M1 , M2 , ..., M(N −1) } dos a dos, distinto, de manera atómica y equitativa. Si lo llevamos al te-
es decir, C y P1 quieren firmar el contrato M1 , C y P2 el rreno práctico, para poder ejecutar el protocolo, el consumidor
126 G. Draper-Gil, J. L. Ferrer-Gomila, M. F. Hinarejos

requiere de una aplicación, o bien nativa o bien como servicio.


A esta aplicación el consumidor deberı́a facilitarle un conjunto
de contratos, que previamente tiene que haber negociado. Esta
fase de negociación previa puede suponer un problema. No
todos los consumidores tendrán el tiempo o conocimientos
necesarios para llevarla a cabo. La modificación que propo-
nemos sobre el protocolo presentado en [1], permitirı́a a la
aplicación del consumidor automatizar las tareas de búsqueda
de proveedores, negociación y firma de contratos.
En la figura 1 se muestra un ejemplo de cómo podrı́a
utilizarse el protocolo para implementar una aplicación de
compras inteligente. El funcionamiento serı́a el siguiente:
1. El consumidor le indica a la aplicación que quiere
comprar un paquete compuesto por un servicio aéreo y
un alojamiento (orden de compra). Para cada uno de los
servicios le indica las opciones que desea. Por ejemplo,
en el caso del servicio aéreo, las fechas del viaje, origen
y destino, horarios, etc... Además, el consumidor puede Figura 1. Ejemplo de Aplicación
indicar un precio máximo para el paquete completo, sus
preferencias en caso de que el producto sea ofrecido
por más de un proveedor, incluso podrı́a indicar un alojamiento. Una vez el consumidor tiene confirmación de
tiempo màximo en el que la aplicación debe contestar que todos los servicios incluidos en la orden de compra están
(inmediatamente, un dı́a, una semana, ...). disponibles, puede continuar con la ejecución del protocolo.
2. La aplicación consultará su base de datos de proveedores
y recuperará la lista de proveedores que puedan ofrecer III. R EQUISITOS DE S EGURIDAD
los servicios reclamados por el consumidor. Esta base
de datos puede ser un servicio preconfigurado en la Asokan et al. [3] y Zhou et al. [4] establecen los re-
aplicación, un listado que el propio consumidor haya quisitos mı́nimos para el intercambio equitativo: efectividad,
confeccionado, un servicio externo (por ejemplo UDDI equitatividad, temporalidad, no-repudio y verificabilidad de la
[2]), etc. TTP. Aunque de hecho, la verificabilidad de la TTP no es
3. Una vez se ha generado la lista de proveedores, se estrı́ctamente necesaria para que un protocolo sea equitativo.
inicia el protocolo de negociación + firma con cada uno Es más, Asokan et al. [3] define 2 tipos de equitatividad, débil
de ellos. En el caso del ejemplo, se han encontrado y fuerte, mientras que Zhou et al. [4] define sólo uno, que
3 proveedores de servicios aéreos y 2 proveedores de coincide con la equitatividad fuerte. Otro requisito deseable es
servicios de alojamiento. la confidencialidad. A continuación detallamos los requisitos
4. Como resultado, la aplicación de compras le devuelve para el protocolo equitativo Multi-Two-Party Atómico definido
al consumidor el contrato firmado con cada uno de los en este artı́culo:
proveedores seleccionados (para firmar), en este caso
Efectividad. Si todas las partes involucradas en un proto-
han sido el proveedor PV 1 de servicios aéreos y el
colo de negociación más firma Multi-Two-Party Atómico
proveedor PH1 de servicios de alojamiento.
se comportan correctamente, el consumidor recibirá la
¿Cómo se introduce la negociación en el proceso de fir- firma de los (N − 1) proveedores seleccionados, y
ma?, veamos el caso del ejemplo de la figura 1. La apli- estos recibirán la correspondiente firma del consumidor.
cación de compra preparará un contrato para cada uno de Además, todos los proveedores que hayan sido descar-
los proveedores que ha encontrado en la base de datos: tados recibirán un mensaje de rechazo por parte del
{MPV 1 , MPV 2 , MPV 3 , MPH1 , MPH2 }, y lanzará la petición a consumidor, y éste recibirá el correspondiente recono-
todos ellos. Supongamos que los proveedores PV 1 y PV 2 cimiento por parte del proveedor. En caso de que sea el
aceptan la petición y el proveedor PV 3 la rechaza. En este proveedor quien rechaze la negociación, se lo indicará al
caso la aplicación de compras deberá escoger entre PV 1 y PV 2 consumidor. Todos estos mensajes se intercambiarán sin
para continuar con la ejecución, mientras que al proveedor des- que intervenga la TTP.
cartado deberá enviarle un mensaje de rechazo. Los criterios Equitatividad Débil Multi-Two-Party Atómica. Al
a seguir pueden ser varios, por ejemplo las preferencias del finalizar una negociación más firma Multi-Two-Party
consumidor (puede indicar proveedores favoritos), el tiempo Atómica, el consumidor honesto tendrá la firma de los
de respuesta, o un valor de reputación. Pero antes de poder (N −1) proveedores escogidos, y los proveedores hones-
contestar al proveedor de servicios aéreos, el consumidor debe tos tendrán la correspondiente firma o mensaje de rechazo
recibir al menos una respuesta válida de un proveedor de del consumidor; o todas las partes honestas conseguirán
Smart-Shopping: Aplicación de un Protocolo de Firma de Contratos Multi-Two-Party Atómico 127

evidencias suficientes para demostrar, ante un árbitro, que protocolo.


se han comportado correctamente. C Consumidor.
Temporalidad. Todos los participantes en una nego- Pi Proveedor i, 1 ≤ i ≤ N P .
ciación más firma Multi-Two-Party Atómica tienen la Mi Mensaje (contrato) intercambiado entre el consumi-
seguridad de que la ejecución del protocolo de firma dor C y el proveedor Pi .
tendrá una duración finita. Una vez finalizada, no se CID Identificador de Contrato Único (Unique Contract
puede degradar el nivel de equitatividad obtenida por los IDentifier).
participantes honestos, independientemente del compor- h(Mi ) Función de Hash del mensaje Mi .
tamiento del resto de participantes. Sj [Mi ] = SKj [h(Mi )] Firma Digital de j sobre Mi
No-Repudio. En una negociación más firma Multi-Two- (donde SKj es la clave privada de j).
Party Atómica en la que hay involucrados un consumidor El protocolo presentado en este artı́culo está basado en una
y N − 1 proveedores seleccionados por el consumidor, propuesta previa para la firma de contratos AM2P [1] con N
ni el consumidor ni los proveedores pueden negar haber participantes, 1 consumidor y N − 1 proveedores. Se trata de
estado involucrados. En particular, dado un contrato un protocolo optimista con arquitectura en paralelo, donde el
firmado Mi , ni el consumidor C ni el proveedor Pi consumidor contacta con todos los proveedores “a la vez”,
pueden negar haberlo firmado. Además, ninguno de los y espera su respuesta antes de continuar con a ejecución, es
proveedores descartados puede negar haber sido rechaza- decir, el consumidor envı́a N −1 compromisos (COMmitment)
do por el consumidor, ni el consumidor en caso de que al mismo tiempo, y espera a recibir las N − 1 aceptaciones
sea el proveedor quien rechaze una oferta. (ACCeptance) antes de continuar. Si el consumidor deja de
Confidencialidad. Sólo los participantes involucrados en recibir una o más aceptaciones, contactará con la TTP. Los
una firma, es decir, el consumidor C y el proveedor Pi , compromisos son los mensajes enviados desde el consumidor a
pueden conocer el contenido del contrato Mi . Ni siquiera los proveedores, y las aceptaciones son los mensajes enviados
la TTP debe tener acceso al contrato en claro. de los proveedores al consumidor. Los COM(n,i) y ACC(n,i)
Verificabilidad de la TTP. Si la TTP actúa de manera (n = número de ronda, i = número de proveedor) son las
deshonesta, provocando la pérdida de equitatividad de evidencias que el proveedor Pi y el consumidor C deben
un participante honesto (consumidor o proveedor), este recibir, respectivamente.
puede probar el comportamiento deshonesto de la TTP La propuesta de protocolo optimista de firma electrónica
frente a un árbitro externo. de contratos AM2P [1] está dividida en dos sub-protocolos:
IV. T RABAJO P REVIO intercambio y resolución. Si todas las partes involucradas
se comportan correctamente, el sub-protocolo de intercambio
Pese a los muchos esfuerzos dedicados al estudio del terminará después de N rondas, se intercambiarán 2N (N − 1)
intercambio equitativo, existen muy pocas propuestas [5], [6] mensajes y la TTP no intervendrá.
que traten el problema que presentamos en este artı́culo. De Cada ejecución completa del sub-protocolo de resolución
hecho, solo una de ellas [5] prevee una fase de negociación, está compuesta de N rondas, y cada ronda requiere el inter-
aunque no está integrada en el protocolo de firma, ya que se cambio de N −1 pares de mensajes {compromiso, aceptación},
trata de una fase previa. lo que hace un total de 2N (N − 1) mensajes. Las evidencias
En el protocolo de firma de contratos Multi-Two-Party de firma son las correspondientes a la ronda N (COM(N,i)
Atómico presentado en [1], sobre el cual se basa la propuesta y ACC(N,i) ). En cualquier momento, el consumidor y los
presentada en este artı́culo, se incluye una revisión de las proveedores pueden ejecutar el sub-protocolo de resolución
propuestas similares existentes. Como conclusión, a dicha revi- para resolver la ejecución del protocolo. Durante la primera
sión y hasta donde conocemos, ninguna de las referencias que ronda (n = 1), cualquier participante puede contactar con la
hemos encontrado en la literatura en relación con intercambios TTP y solicitar que se cancele la firma, mientras que si n > 1,
Atómicos Multi-Two-Party ([5], [6]) cumple con los requisitos la petición tendrá como objetivo finalizar el protocolo (firmar
de seguridad necesarios, para nuestro escenario (ver sección el contrato).
III).
A continuación se presenta la notación que se va a utilizar a V. P ROTOCOLO
lo largo del artı́culo: El protocolo presentado en este artı́culo mantiene la estruc-
N Número de participantes en la fase de firma: 1 tura original, una arquitectura en paralelo donde el consu-
Consumidor y N − 1 Proveedores. midor y los proveedores intercambian N pares de mensajes
NP Número de proveedores participantes en la fase de {compromiso, aceptación}.
negociación: N P ≥ N − 1.
XZ = {x1 , x2 , ..., x(Z) } Vector con Z elementos. V-A. Sub-Protocolo de Intercambio
RP Rejected Providers, conjunto de proveedores que el En la tabla I podemos ver el flujo de ejecución del protocolo
consumidor rechazará. y los mensajes intercambiados. La fase de negociación se
AP Accepted Providers, conjunto de proveedores que realiza durante la primera ronda y la mitad de la segunda. En la
el consumidor escogerá para continuar la ejecución del primera ronda, en lugar de contactar con (N −1) proveedores,
128 G. Draper-Gil, J. L. Ferrer-Gomila, M. F. Hinarejos

Sub-Protocolo de Intercambio Sub-Protocolo de Resolución


Ronda Consumidor peticionResolucion(n,i)
1 C → Pi CID, Mi , 1, COM(1,i) i ∈ [1..N P ] CID, h(Mi ), n
1 C ← Pi CID, 1, ACC(1,i) ACEPTACIÓN COM(1,1) , ACC(1,1) , ..., COM(1,(N −1)) , ACC(1,(N −1))
0 0
CID, Mi , Mi , 1, ACC(1,i) CONTRAOFERTA .. .. ..
. . .
CID, 1, REJ(1,i) RECHAZO COM(n,1) , ACC(n,1) , ..., COM(n,i) , EV RES(n,i)
2a C → Pr CID, 2, REJ(2,r) r ∈ RP
C ← Pr CID, 2, ACKR(2,r) Proveedor Pi peticionResolucion(n,i)
2b C → Pi CID, 2, COM(2,i) i ∈ AP CID, h(Mi ), n
C ← Pi CID, 2, ACC(2,i) COM(1,i) , ACC(1,i) , ..., COM(n,i) , ACC(n,i) , EV RES(n,i)
.. .. ..
. . . TTP RespuestaResolucionCancelada(n,i)
n C → Pi CID, n, COM(n,i) CanceledT K = ST T P [CID, h(Mi ), n, canceled]
n C ← Pi CID, n, ACC(n,i)
.. .. .. TTP RespuestaResolucionFirmada(n,i)
. . . Consumer SignedT K = ST T P [CID, h(Mi ), n, COM(n,i) ]
N C → Pi CID, N, COM(N,i) Provider SignedT K = ST T P [CID, h(Mi ), n, ACC(n,i) ]
N C ← Pi CID, N, ACC(N,i)
N = número de participantes; n = ronda
COM(n,i) = SC [CID, h(Mi ), n] COM(n,i) = SC [CID, h(Mi ), n]
ACC(n,i) = SPi [CID, h(Mi ), n] ACC(n,i) = SPi [CID, h(Mi ), n]
0 0
ACC(n,i) = SPi [CID, h(Mi ), h(Mi ), n] EV RES(n,i) = S(C or Pi ) [CID, h(Mi ), n, ...], firma sobre
el mensaje enviado.
ACKR(2,r) = SPr [CID, h(Mr ), 2, ACK − REJECT ED]
REJ(z,i) = SXi [CID, h(Mi ), z, REJECT ED]; Tabla II
z = 1 → Xi = Pi ; z = 2 → Xi = C SUB - PROTOCOLO DE RESOLUCI ÓN M ULTI -T WO -PARTY AT ÓMICO

Tabla I
SUB - PROTOCOLO DE INTERCAMBIO AT ÓMICO M ULTI -T WO -PARTY

resolución (tabla II) es igual al del protocolo original [1], con


una función añadida, el informe por parte del consumidor de
el consumidor contactará con un número N P ≥ (N − 1), que un proveedor Pr ha sido descartado. En la tabla III vemos
y el mensaje Mi enviado será una propuesta de contrato. el mensaje de petición y respuesta del informe de reachazo.
Los proveedores podrán rechazar la oferta (REJ), aceptar la Esta petición es necesaria para evitar que un Pr (r ∈ RP ) que
0
oferta (ACC), o enviar una contraoferta (ACC ). Una vez ha sido rechazado por el cliente pueda obtener una evidencia
el consumidor ha recibido suficientes respuestas (al menos de firma de la TTP y forzar su cumplimiento.
una positiva por servicio que desee), escogerá entre ellas las Al igual que en el protocolo orignial [1], la TTP utiliza un
(N − 1) que más le interesen para continuar la ejecución del conjunto de reglas para solucionar correctamente las peticiones
protocolo. La siguiente ronda (la número 2) se ejecutará en dos de resolución recibidas. Estas reglas deben aplicarse en un
fases. Primero (2a), el consumidor informará a los proveedores cierto orden, como se muestra a continuación:
Pr (r ∈ RP ) que no hayan sido escogidos, enviándoles un R0 La TTP sólo aceptará una petición de resolución por
mensaje REJ, y éstos contestarán indicando que han recibido participante y CID. En el caso del consumidor, las
el mensaje, ACKR. A continuación (2b), el consumidor es- peticiones de rechazo no se contabilizarán.
perará a recibir todas las respuestas de los Pr descartados. Por R1 Si la TTP recibe una petición de un participante
cada Pr que no conteste, el consumidor enviará una petición Xi durante la ronda n = 1, y la ejecución no ha
a la T T P para informar de que estos proveedores han sido sido previamente finalizada (signed=true) por otro
descartados (ver tabla III). En la segunda parte de la segunda participante ni Xi ha sido informado como rechazado
ronda (ver ronda 2b en tabla I), el consumidor continuará la por el consumidor C, la TTP cancelará la firma y le
ejecución del protocolo con los (N −1) proveedores escogidos enviará a Xi una prueba de que la firma ha sido
(Pi i ∈ AP ), intercambiando mensajes de compromiso y cancelada.
aceptación, hasta conseguir el compromiso correspondiente a R2 Si la TTP recibe una petición de Xi durante la ronda
la ronda N , evidencia de firma. n > 1, y la ejecución no ha sido previamente can-
celada por otro participante ni Xi ha sido informado
V-B. Sub-Protocolo de Resolución como rechazado por el consumidor C, la TTP la
Al igual que en el protocolo AM2P original [1], consumidor finalizará (signed=true) y le enviará a Xi una prueba
y proveedores pueden contactar con la TTP en cualquier de que el contrato está firmado.
momento. Durante la primera ronda (n = 1), cualquier partici- R3 Si la TTP recibe una petición de Xi durante la ronda
pante puede contactar con la TTP y solicitar que se cancele la n = 1, y la ejecución ha sido previamente finalizada
firma, mientras que si n > 1, la petición tendrá como objetivo (signed=true) por otro participante y Xi no ha sido
finalizar el protocolo (firmar el contrato). El subprotocolo de informado como rechazado por el consumidor C, la
Smart-Shopping: Aplicación de un Protocolo de Firma de Contratos Multi-Two-Party Atómico 129

Sub-Protocolo de Resolución: Informe Rechazo


C → TTP CID, h(Mi ), COM(1,1) , REJ(2,r) Un proveedor descartado podrı́a hacer trampas y conse-
guir una firma de la TTP, siguiento el ejemplo de abort-
C ← TTP ACKT K = ST T P [CID, h(Mi ), 2, REJECT ED] chaining (explicado en [1]). Pero si ha sido descartado
Tabla III por el consumidor, este tendrá o bien el mensaje ACKR
SUB - PROTOCOLO DE RESOLUCI ÓN M ULTI -T WO -PARTY AT ÓMICO , del propio consumidor, o el ACKT K de la TTP, con lo
INFORME DE RECHAZO
que podrá demostrar que el proveedor hizo trampas.
En ambas situaciones, el consumidor mantiene la equitativi-
dad.
Si consideramos un proveedor honesto Pi (1 ≤ i ≤ (N −
TTP enviará a Xi una prueba de que el contrato
1)), con independencia del comportamiento del consumidor,
está firmado.
el proveedor mantendrá la equitatividad. El consumidor puede
R4 Si la TTP recibe una petición de Xi durante una
obtener una prueba de firma del proveedor de tres maneras
ronda n > 1, y la ejecución ha sido previamente
distintas:
cancelada por otro participante, la TTP revisará las
peticiones previamente recibidas para comprobar si Después de recibir la N -ésima aceptación del proveedor
alguien ha hecho trampas. Si la TTP decide que todas ACC(N,i) , lo que implica que el proveedor ya tiene la
las peticiones anteriores eran incorrectas, cambiará el prueba de firma del consumidor COM(N,i) .
estado de la ejecución a signed=true y enviará la Contactando con la TTP en la ronda n > 1 (aplicando
correspondiente prueba de firma a Xi . De lo con- R2), lo que quiere decir que la TTP tiene la variable
trario, el estado continuará siendo canceled=true y signed = true. Por lo tanto, el proveedor podrá obtener
la TTP enviará a Xi la correspondiente prueba de la prueba de firma del mismo consumidor, o de la TTP
cancelación. (aplicando R3) si el consumidor decide interrumpir la
secuencia de N rondas.
VI. R EVISI ÓN DE S EGURIDAD Un consumidor tramposo puede descartar a un proveedor
En esta sección comprobaremos si nuestra propuesta (REJ) y luego contactar con la TTP reclamando la firma
cumple con los requisitos de seguridad para protocolos de del contrato con ese proveedor (aplicando R2). En este
Intercambio Equitativo Multi-Two-Party Atómicos, aplicados caso, la firma obtenida por el consumidor no tendrı́a
a la firma digital de contratos, definidos en la sección validez, puesto que el proveedor puede demostrar que
III: efectividad, equitatividad, temporalidad, no-repudio, fue rechazado, utilizando el mensaje REJ recibido.
verificabilidad de la TTP y confidencialidad. En todas las situaciones el proveedor mantiene la equitatividad.
Por lo tanto, podemos afirmar que el protocolo cumple con
Efectividad. La ejecución del sub-protocolo de intercambio el requisito de Equitatividad Débil Multi-Two-Party Atómica.
(tabla I) nos asegura que, si todos los participantes actúan
correctamente, el consumidor recibirá la firma de los N − 1 Temporalidad. En cualquier momento durante la ejecución
proveedores escogidos, y cada proveedor Pi , i ∈ AP del protocolo, cualquier participante puede ejecutar el sub-
recibirá su correspondiente firma del consumidor C después protocolo de resolución y finalizar su ejecución, obteniendo
de N rondas y sin intervención de la TTP. Además, todos los una prueba o bien de firma, o bien de cancelación. Si
proveedores descartados Pr , r ∈ RP recibirán evidencia de todos los participantes se comportan de manera correcta el
que no participa en la firma del contrato Mr . Por lo tanto, el protocolo requiere de N rondas y 4N P + 2(N − 1)(N − 2)
protocolo cumple con el requisito de efectividad. mensajes, siendo N un número finito y conocido. Por lo
tanto, podemos afirmar que el protocolo tiene una duración
Equitatividad Débil Multi-Two-Party Atómica. Si con- finita, ya sea porque interviene la TTP, o por la ejecución
sideramos al consumidor honesto, con independencia del normal de este. Es más, una vez el protocolo ha terminado,
comportamiento del proveedor, el consumidor mantendrá la su estado final no puede cambiar. Si el protocolo finaliza con
equitatividad. Hay tres posibilidades en las que un proveedor la intervención de la TTP, esta se encargará de mantener la
Pi (con 1 ≤ i ≤ (N − 1)) puede obtener una prueba de firma coherencia entre las distintas peticiones posibles recibidas
del consumidor: (siguiendo las reglas de la TTP). Si el protocolo ha finalizado
Después de recibir el N -ésimo compromiso COM(N,i) , después de la N -ésima ronda, las evidencias obtenidas por
(1 < i < (N − 1)), lo que significa que el consumidor proveedor y consumidor servirán como prueba de su estado
tiene N −1 aceptaciones del proveedor, con lo que puede final. Por tanto, podemos afirmar que el protocolo cumple
contactar con la TTP y obtener una evidencia de firma. con el requisito de temporalidad.
Después de contactar con la TTP, lo que implica que
la variable signed es igual a true, por lo tanto, el No-repudio. Durante la negociación+firma de un contrato
consumidor puede obtener una evidencia de firma del Multi-Two-Party Atómico, se generan, en cada ronda,
proveedor o de la TTP (aplicando R3), si el proveedor evidencias de la participación del consumidor y de los
decide no continuar la secuencia de N rondas. proveedores. Por un lado tenemos los mensajes COM(n,i) y
130 G. Draper-Gil, J. L. Ferrer-Gomila, M. F. Hinarejos

los ACC(n,i) , que relacionan a consumidores y proveedores consumidor tendrán evidencias contradictorias enviadas
con la firma de un contrato, y por otra parte los mensajes REJ y firmadas por la TTP, lo que probará su mal comporta-
y ACKR que prueban lo contrario. En particular, el N -ésimo miento.
compromiso y la N -ésima aceptación, son considerados como La TTP envı́a una evidencia de firma a un consumi-
la firma del contrato. Si un consumidor intenta desvincularse dor, al que el proveedor ha rechazado previamente. Si
de la firma de un contrato Mi con el proveedor Pi , este puede el consumidor intenta forzar la ejecución del contrato,
probar la implicación del consumidor utilizando la firma el proveedor podrá reclamar a la TTP que presente
realizada por el propio consumidor, o una evidencia obtenida evidencias de aceptación, el mensaje ACC(1,i) . Como
de la TTP. De la misma manera, si el proveedor intenta el proveedor no ha enviado nunca este mensaje (ha
desvincularse, el consumidor puede probar su implicación enviado un REJ(1,i) ), podrá demostrar que la TTP y
utilizando la firma generada por el proveedor, o las evidencias el consumidor se han comportado deshonestamente.
recibidas de la TTP. Confidencialidad. La ejecución del sub-protocolo de
resolución no requiere el envı́o del texto en claro del contrato
Verificabilidad. La TTP puede comportarse de forma desho- (Mi ), es decir, sin cifrar. La TTP sólo recibe el resultado
nesta y generar evidencias erróneas, dando como resultado, de aplicar una función de “hash” sobre Mi . Además, las
que algún participante honesto pueda perder su equitatividad. comunicaciones entre consumidor y proveedor son punto-
Suponiendo que el consumidor es honesto y la TTP deshones- a-punto: del consumidor al proveedor Pi . Estrictamente
ta, pueden darse las siguientes situaciones: hablando, para conseguir la confidencialidad deberı́amos
El consumidor envı́a una petición de resolución en la cifrar el contrato Mi , para prevenir que una tercera parte
ronda n = 1, y la TTP contesta con una evidencia de pueda monitorizar el canal de comunicaciones, y obtener su
firma. De acuerdo a las reglas de la TTP, durante la ronda contenido. Pero esto puede evitarse utilizando algún tipo de
n = 1 los participantes sólo pueden obtener prueba de protocolo, como Secure Socket Layer (SSL). Por lo tanto,
cancelación. Por lo que el consumidor sabrá que la TTP podemos afirmar que el protocolo cumple con el requisito de
ha enviado una respuesta equivocada (el consumidor no confidencialidad.
ha enviado ningún mensaje de ronda 2). Para probarlo,
el consumidor puede pedirle a la TTP que presente las VII. C ONCLUSIONES
pruebas de la petición de resolución recibida previamen-
te, esto es, pruebas de la ronda 2. En este artı́culo hemos presentado una modificación sobre
El consumidor envı́a una petición durante la ronda n ≥ 2 un protocolo optimista para la firma electrónica de contratos
porque uno o más proveedores no han enviado su mensaje en escenarios Multi-Two-Party Atómicos, que permite fusionar
de aceptación, y la TTP responde con una evidencia las fases de negociación y firma. La modificación presenta-
de cancelación (sin que haya habido una cancelación da cumple con los mismos requisitos de seguridad que el
previa), o de firma (habiendo recibido una cancelación protocolo original: efectividad, equitatividad, temporalidad,
previa). Como estamos en la ronda n ≥ 2, las reglas no-repudio y verificabilidad de la TTP. Finalmente, hemos
de la TTP establecen que la respuesta debe ser una presentado un escenario práctico en el cual podrı́a aplicarse
evidencia de firma a no ser que algún otro participante nuestra solución de smart-shopping.
la haya cancelado, por lo tanto, cualquier respuesta es R EFERENCIAS
válida. Pero las evidencias contradictorias que la TTP [1] G. Draper-Gil, J.-L. Ferrer-Gomila, M. F. Hinarejos, J. A. Onieva, and
haya enviado al consumidor y a uno o más proveedores J. López, “Un protocolo para la firma de contratos en escenarios multi-
probará la irregularidad en el comportamiento de la TTP. two-party con atomicidad,” in XIIIa Reunión Española Sobre Criptologı́a
y Seguridad de la Información (RECSI XIII), (Arrasate, Mondragon, ES),
La TTP envı́a una evidencia de firma a un proveedor pp. 357–362, Servicio Editorial de Mondragon Unibertsitatea, 2012.
que ha sido previamente descartado (el consumidor ha [2] U. S. T. Committee, “Universal description, discovery and integration
informado a la TTP) por el consumidor. En este caso v3.0.2 (uddi).” http://uddi.org/pubs/uddi-v3.0.2-20041019.htm, 10 2004.
[3] N. Asokan, V. Shoup, and M. Waidner, “Optimistic fair exchange of digi-
el consumidor podrá demostrar que la TTP ha emitido tal signatures,” in Advances in Cryptology - EUROCRYPT’98, vol. 1403
evidencias erróneas, presentando el ACKT K recibido of Lecture Notes in Computer Science, pp. 591 – 606, Springer Berlin /
como respuesta al mensaje de informe de rechazo. Heidelberg, 1998.
[4] J. Zhou, R. Deng, and F. Bao, “Some remarks on a fair exchange
Suponiendo un proveedor honesto y la TTP deshonesta, puede protocol,” in Public Key Cryptography, vol. 1751 of Lecture Notes in
darse la siguiente situación: Computer Science, pp. 46 – 57, Springer Berlin / Heidelberg, 2000.
[5] Y. Liu, “An optimistic fair protocol for aggregate exchange,” in Procee-
El proveedor envı́a una petición de resolución durante dings of the 2009 Second International Conference on Future Information
la ejecución de la ronda n porque no ha recibido el Technology and Management Engineering, FITME’09, (Los Alamitos,
CA, USA), pp. 564–567, IEEE Computer Society, 2009.
compromiso de la ronda (n + 1) y la TTP responde con [6] J. A. Onieva, J. Zhou, M. Carbonell, and J. Lopez, “A multi-party non-
una cancelación (sin que haya habido una cancelación repudiation protocol for exchange of different messages,” in 18th IFIP
previa), o una firma (habiendo recibido una cancelación International Information Security Conference. Security and Privacy in
the Age of Uncertainty (IFIP SEC’03), IFIP Conference Proceedings,
previa). Ambos resultados son coherentes con las reglas pp. 37–48, IFIP, 2003.
de la TTP, pero en ambos casos el proveedor y el
Seguridad de la información

131
RECSI 2014, Alicante, 2-5 septiembre 2014

Análisis de Riesgos Dinámico aplicado a Sistemas


de Respuesta Automática frente a Intrusiones
Diego Ray Victor A. Villagrá Verónica Mateos Pilar Holgado
Departamento de Departamento de Departamento de Departamento de
Sistemas Telemáticos Sistemas Telemáticos Sistemas Telemáticos Sistemas Telemáticos
Politécnica de Madrid Politécnica de Madrid Politécnica de Madrid Politécnica de Madrid
diego.raysan@alumnos.upm.es villagra@dit.upm.es vmateos@dit.upm.es pilarholgado@dit.upm.es

Resumen—Los Sistemas de Respuesta Automática frente a Dinámicos (DRA). Se analizará el estado del arte en la apli-
Intrusiones plantean un objetivo de interés en el campo de la cación del AARR en sistemas de información (SI) en general,
Seguridad en la Información, pero desde el momento en que su y en los AIRS en particular. En la sección III se expondrán
fin último es asumir responsabilidades del usuario administrador,
las diferentes propuestas acaban proliferando en multitud de los principales problemas encontrados para su integración. En
alternativas y complejas metodologı́as. Las principales soluciones la sección IV los autores reflejarán su propuesta, finalizando
proponen inferir respuestas en base al estado y sucesos de con las conclusiones.
red. Un administrador experto tomarı́a sus decisiones a raı́z de
estos mismos criterios, pero viéndose fuertemente influenciado II. E L A N ÁLISIS DE R IESGOS EN S ISTEMAS DE
por el resto de eventualidades de su entorno, tanto técnicas R ESPUESTA FRENTE A I NTRUSIONES
como corporativas, aspectos que actualmente no se contemplan
o se contemplan de forma insuficiente. Apoyarse en el campo Los AIRS se enmarcan dentro de los sistemas de defensa
del Análisis de Riesgos como técnica madura, probada y bien perimetral, servicios y tecnologı́as de control de acceso lógico
regulada conducirı́a a estos sistemas a una mayor capacidad de a las redes de telecomunicación [2]. Son uno de sus elementos
respuesta y evaluación de sus acciones. más recientes y se hallan actualmente en evolución. Esta
Palabras clave—Análisis de Riesgos Dinámicos (Dynamic Risk
Assessment), Ontologı́as (Ontologies), Sistemas de Respuestas familia abarca desde las implementaciones de seguridad de los
Automáticos ante Intrusiones (Automatic Intrusion Response Sys- IOS (Internetwork Operating System) de routers y switches,
tems). hasta llegar a soluciones integradas de cortafuegos, IPSs y
VPNs (series ASA-5500 de CISCO). Se describen en [3] como
I. I NTRODUCCI ÓN elementos de seguridad que seleccionan y ejecutan respuestas
Los Sistemas de Respuesta Automática frente a Intrusio- ante las intrusiones detectadas por un IDS, proporcionando
nes (AIRS) son dispositivos de protección. Su fin último es junto a [4] una posible taxonomı́a. De esta clasificación
asistir a un administrador y asumir parte de sus actuaciones, se extraen como caracterı́sticas deseables: la capacidad de
recopilando la información de su entorno y dando respuesta adaptabilidad, proactividad, sensibilidad de coste con modelo
a anomalı́as y ataques. Surgen de la rama de los equipos de de evaluación dinámico y coherencia semántica, esta última
seguridad en redes, como cortafuegos e IDSs, destacándose de [5].
por su capacidad de respuesta automática sin asistencia del El AARR [6] es un área afianzada, regulada, de aplicación
administrador. genérica y definida como el proceso de identificar, analizar y
El Análisis de Riesgos (AARR) en los sistemas de infor- evaluar los riesgos [7]. Se define identificar como encontrar,
mación es un estudio preventivo de lo negativo que puede reconocer y describir el riesgo, analizar como comprender y
llegar a ocurrir. Es un estudio extenso que proporciona las determinar su nivel de amenaza, y evaluar como determinar
guı́as de actuación y buenas prácticas para la protección de la en que nivel es tolerable. El tratamiento especı́fico del AARR
información y servicios. Es un análisis a todos los niveles, y en la seguridad en la información se encuentra regulado en
no sólo desde el punto de vista de los sistemas informáticos normas como [8], describiéndolo como el proceso que estudia
pero sı́ dirigido a ellos. Referente a este proceso integrador toda eventualidad que pueda afectar al activo información. El
se resalta el apartado séptimo de la polı́tica de seguridad Análisis de Riesgos Dinámicos (DRA) es el propio AARR
en la información del Ministerio de Defensa [1]: personas, pero aplicado de forma continua, todo lo que varı́e y pueda
documentos, SI y telecomunicaciones e instalaciones. afectar a la seguridad debe de tenerse en consideración para
El alcance del artı́culo es dar una primera aproximación recalcular el riesgo.
al problema y un estudio de su relevancia, estando en vı́as de La Gestión del Riesgo (GR) consiste en analizar y tratar
investigación dar soluciones para un futuro prototipo. Con este el riesgo [9]. El AARR identifica, analiza y evalúa activos,
fin hacer uso del estudio extenso y metodológico del riesgo amenazas y salvaguardas, con los que estima el impacto
para mejorar las respuestas de los AIRS. En la sección II se (lo que podrı́a pasar) y el riesgo (lo que probablemente
introducirán los conceptos de AIRS y de Análisis de Riegos pase). El tratamiento consiste fundamentalmente en aplicar las
134 D. Ray, V.A. Villagrá, V. Mateos, P. Holgado

salvaguardas para afrontar el riesgo. Derivado de lo anterior la C4. Integración Online/Offline. De la condición anterior
gestión de riesgos dinámica (DMR) es consecuencia del DRA. se propone la separación entre un componente offline que
Los AIRS se pueden asemejar a herramientas de gestión represente a una metodologı́a probada de AARR en el sentido
del riesgo. Tratan el riesgo que llega al sistema y evalúan de [9], y otro online que represente la aplicación del AARR en
su acción de respuesta. La diferencia fundamental es que los el nivel de los AIRS. Este último debe: monitorizar las inci-
AIRS realizan todo el proceso de forma automática, mientras dencias de seguridad, determinar la bondad de las respuestas
que en la gestión de riesgos es el administrador el que decide aplicadas y realimentar al análisis offline en el apartado de
las salvaguardas a aplicar. incidencias de seguridad. Los elementos online coincidirán con
El interés de este trabajo se centra en la aplicación de los que en [12] y [15] se denominan ’online’ o real-time risk
métodos de GR. Se seguirá como guı́a a MAGERITv3 Libro I- assessment. Por lo tanto el resultado del proceso offline es el
Método [9], que describe la gestión del riesgo como una activi- riesgo y riesgo residual, del que hará uso el elemento online
dad compleja, exhaustiva, en continua revisión y que requiere del AIRS.
de una metodologı́a probada. Partiendo de esta premisa se Como conclusión se proponen las siguientes actuaciones:
proponen los condicionantes para considerar la aplicación de que se considere todo activo, amenaza y salvaguarda que afecte
un método de AARR en AIRS. a los SI, que las métricas contengan al riesgo y/o riesgo
C1. Tratar todo activo, amenaza y salvaguarda que pueda residual como producto final del AARR, y que los AIRS
influir en la información y servicios. “. . . el análisis de riesgo separen sus procesos de AARR en offline y online.
proporciona un modelo del sistema en términos de activos,
amenazas y salvaguardas, y es la piedra angular para contro- II-A. DRA en Sistemas de Información
lar todas las actividades con fundamento . . . ” [9]. Hay que
establecer una relación entre los elementos del AIRS y los ac- La GR en SI ya fue tratada en esta reunión por David López
tivos, amenazas y salvaguardas [7] del AARR. De importancia Cuenca y Oscar Pastor [16], por lo que esta sección se centra
es el concepto de activo, que siguiendo la definición de [10] y en su estudio desde el punto de vista del presente trabajo.
priorizados según MAGERIT, se estructuran en información y El artı́culo se inicia con una relación de los principales
servicios, como activos esenciales y que dirigen los requisitos organismos nacionales e internacionales que tratan el AARR
de seguridad, y en datos, software, hardware, comunicaciones, y con un glosario de la terminologı́a del campo [8]: acti-
recursos administrativos, recursos fı́sicos y recursos humanos vos, amenazas, salvaguardas, vulnerabilidades, impacto, riesgo
como activos relevantes. Atendiendo a la naturaleza de las y riesgo residual. Continua ampliando el estudio al DRA,
salvaguardas los activos se clasifican en especies, encontrando presentándolo como un proceso que debe de ser continuo
en [11] una completa taxonomı́a por tipo de activo. y automático, y no aplicado a intervalos discretos como se
C2. Uso del riesgo y riesgo residual como producto del propone en [17]. Analiza los principales trabajos sobre AARR
AARR. “. . . en coordinación con los objetivos, estrategia y aplicado a TI, de los que destaca [18] por contemplar el
polı́tica de la organización, las actividades de tratamiento ciclo natural de un DRA. Este ciclo contiene una valoración
de los riesgos permiten elaborar un plan de seguridad que, inicial del riesgo procedente de metodologı́as de análisis, una
implantado y operado, satisfaga los objetivos propuestos con realimentación proveniente de la detección de incidentes de
el nivel de riesgo que acepta la dirección. Al conjunto de seguridad, y por último la evaluación de las acciones tomadas
estas actividades se le denomina Proceso de Gestión de con el apoyo de estas metodologı́as.
Riesgos. . . ” [9]. Se considera esta frase como fundamental, Prosigue presentando los principales enfoques del DRA para
conteniendo implı́citamente la finalidad de los AIRS, elemen- SI:
tos que mantienen un nivel de seguridad dentro de un entorno. – Alimentación desde BBDD [19]. Enumera formatos es-
El término esencial es “nivel de riesgo aceptado”, entendido tandarizados como CVE y repositorios como la National
como el resultado final del proceso de cálculo del riesgo Vulnerability Database del NIST.
ponderado con la madurez de las salvaguardas. – Grafos y árboles de ataque [20]. Resalta el uso de redes
C3. El DRA en SI no es sólo el estudio de los cambios bayesianas para el cálculo del riesgo [20] [21].
de red y sistemas. A lo largo del tiempo las condiciones de – Monitorización del estado del sistema. Ejemplo IDSs.
un entorno varı́an, pudiendo invalidar el análisis de riesgos En el trabajo se señala que, ocasionalmente se tratan los
vigente, punto 7.2.7 de [9]. Estas variaciones pueden deberse términos de real-time y online risk assessment como sinóni-
a nuevas amenazas, vulnerabilidades sobrevenidas, incidentes mos de dynamic risk assessment. Desde el punto de vista de
de seguridad, cambios en la utilización del sistema. De todos este artı́culo estos términos no podrı́an ser sinónimos, por
los expuestos los que principalmente detectan los IDSs, y lo que [12] [13] [14] deberı́an clasificarse como métodos
sensores en general, son los incidentes de seguridad a nivel de online, ya que si bien abarcan el estudio del AARR desde
red y sistema. Esto último separa de inmediato el significado una faceta dinámica, únicamente lo hacen desde el enfoque
de dynamic risk assessment respecto al de online risk assess- de los incidentes de seguridad.
ment [12] [13] y real time risk assessment [14] [15], términos Derivado de ese mismo motivo, se propone que en la
que en determinados contextos podrı́an llegar a difuminarse Fig.2 de su estudio, extraı́da de [18], se marque al estado
como se indica en [16]. –AARR Inicial– como proceso offline, y los estados –AARR
Análisis de Riesgos Dinámicos aplicado a Sistemas de Respuesta Automática frente a Intrusiones 135

Actualizado– y –AARR Evaluar Acciones Seleccionadas– según el juicio de expertos y finalmente se estudian sus
como online, cuyas métricas harı́an uso del estudio offline. vulnerabilidades.
El enfoque que sugiere para el DRA, como actividad conti- A pesar de que ARITO parece adaptarse a nuestros requisi-
nua y actualizable en tiempo real, podrı́a aplicarse únicamente tos, y separa entre elementos offline y online, no cumple con
al tratamiento online de los incidentes de seguridad, pero todos los condicionantes de la sección II. En él se propone
probablemente no al total de elementos que modifican el riesgo una metodologı́a propia para el AARR (FMCDM), que no
y que representan el DRA (offline). Por lo anterior se considera sigue ninguna normativa o metodologı́a, y que no deja abierta
que se debe recurrir a ciclos discretos de revisión (PDCA [22]), la posibilidad del uso de otros enfoques. Sin embargo, su
o a ciclos continuos en su revisión online, cuyos resultados no esquema es fácilmente ampliable a otras propuestas, ya que el
se podrı́an reflejar instantáneamente en el cálculo del riesgo cálculo final lo realiza el componente online. No parece que
debido al complejo estudio que conllevan. se considere el estudio de activos más allá de la electrónica
Como parte final del artı́culo se presenta a los AIRS como de red y sistemas, pero de nuevo esta faceta podrı́a ampliarse
elementos de gestión y tratamiento del riesgo. incluso a través de su apuesta por FMCDM. Otro aspecto que
plantea dudas es la extensión de su AARR a DRA, ya que
II-B. DRA en Sistemas de Respuesta ante Intrusiones en la fase offline necesitarı́a algún tipo de realimentación que
Las métricas son la herramienta usada por los AIRS para influyese en la revisión del riesgo.
determinar y evaluar las respuestas. Es en estas métricas donde El mayor de los inconvenientes de ARITO es que el resul-
se incluyen los resultados del análisis de riesgos. tado final de su fase offline no es el riesgo, sino el valor del
En la tesis doctoral de Mateos Lanchas [23], se proporciona activo y las posibles vulnerabilidades, por lo que no se puede
una extensa comparativa entre las distintas métricas existentes, considerar que realiza un análisis del riesgo sino solamente
viéndose que en la mayorı́a de los casos, y a excepción una de sus etapas previas.
de IDAM-IRS, no se hace uso del AARR para su cálculo. Sin duda los trabajos de [15] y [25] están fuertemente
Si bien IDAM-IRS aplica términos claramente relacionados influenciados por DIPS (Distributed Intrusion Prevention Sys-
con el AARR, como risk index (RI) (que en términos de tem) [13]. Donde se propone un modelo distribuido activado
AARR representa el riesgo), y risk index host (RIH)/risk index mediante predicciones realizadas con HMM, y un análisis de
network (RIN) (que en AARR representa el riesgo residual), riesgos realizado mediante lógica difusa (fuzzy logic), donde
no sigue metodologı́as formales para su cálculo. En el trabajo un grupo de expertos estiman el riesgo en base a una serie de
de Mateos se enuncia el uso de MAGERIT para el cálculo de variables dependientes.
métricas, pero no se destacan trabajos que lo usen. Si bien DIPS es la referencia que mejor se ajusta a nuestro
Continuando en la lı́nea de las recientes tesis sobre AIRS, se modelo, presenta una serie de problemas con respecto a [6] [7]
encuentra el trabajo de Shameli-Sendi [24]. Esfuerzo estruc- y [9], que van a permitir resaltar la importancia de las
turado en forma de cuatro artı́culos que representan algunos condiciones propuestas en II.
de los principales retos que rodean a los AIRS: carácter En DIPS el riesgo se computa a través de reglas fuzzy
predictivo, análisis de costos y aplicación de AARR. El del tipo if-then. Los parámetros del cálculo son el valor del
primero [15] propone un marco de trabajo para la predicción activo, su vulnerabilidad y el nivel de amenaza. Sin embargo,
de ataques multipaso, usando Hidden Markov Models (HMM) en AARR el riesgo se deriva del impacto, siendo éste la
y lo que denomina Alert Severity Modulation. El segundo, degradación del valor de un activo debido a una amenaza, y de
ORCEF: Online response cost evaluation framework for IRS la frecuencia/probabilidad de dicha amenaza. A continuación
(estudio reflejado en la tesis pero aún no publicado como se analizan los inconvenientes de los parámetros usados en el
trabajo independiente), propone un IRS sensible al coste, cálculo del riesgo en DIPS.
evaluando las respuestas según dependencias entre recursos, 1. Nivel de amenaza. Se define en DIPS como la frecuencia
las necesidades de QoS de los usuarios online, el daño del o probabilidad, por lo que, salvando la confusión de térmi-
ataque y la confianza de la alerta. Algunas de las métricas nos [7], es un parámetro correcto en el computo del riesgo.
seguidas fueron ya presentadas en el apartado 2.4 de [23]. El 2. Valor del activo. En el cálculo del riesgo se debe evaluar
tercero, ARITO [25], propone la mejora de ORCEF integrando la degradación del valor del activo (impacto). Usar únicamente
el AARR dentro de la inferencia de respuestas. el valor del activo permite determinar su importancia, pero no
En ARITO se introducen los términos online y offline, las consecuencias de la amenaza sobre su valor. La degrada-
adoptados a lo largo del presente trabajo, pero con fuertes ción no aparece en el cálculo con la consiguiente perdida de
matices diferenciados. En el proceso offline de ARITO se información en el análisis.
determina el valor del activo y lo vulnerable que es, y en el 3. Vulnerabilidad. El riesgo residual resulta del riesgo
online se calcula el impacto de la alerta recibida. El proceso remanente tras la aplicación de las salvaguardas. Una vul-
offline utiliza la técnica Fuzzy Multi-Criteria Decision-Making nerabilidad se define en [9] como aquello que resulta de la
(FMCDM) [26], descrita en otro trabajo de los mismos au- incapacidad de las salvaguardas, bien por su inexistencia o
tores. Para ello se determinan las propiedades de seguridad bien por su falta de madurez, y que impide mantener el riesgo
a analizar (CIA: confidencialidad, integridad y autenticidad), residual aceptado. Es decir, una vulnerabilidad es algo no
se identifican y clasifican los recursos, se valoran los activos controlado, que si se llegase a controlar derivarı́a, en el peor
136 D. Ray, V.A. Villagrá, V. Mateos, P. Holgado

de los casos, en riesgo residual conocido y aceptado. Por tiene que ser técnico, pero que sı́ puede repercutir gravemente
lo que, usando estrictamente la terminologı́a, no parece que en la información y los servicios.
vulnerabilidad deba formar parte del cálculo del riesgo, ya
que es consecuencia de la imperfección del propio análisis,
bien en la fase de identificación o bien en el modelado de las
salvaguardas. Obviamente en DIPS vulnerabilidad toma otro
significado, probablemente referido a la degradación sufrida
en el valor del activo.
4. Activo. En DIPS se define como todo dato, equipo u otro
componente que soporte a la información de la actividad. No
se proporciona una clasificación formal de activos como la
presentada en [10] y [9], dificultando un estudio metódico y
estructurado.
Con el razonamiento anterior sobre DIPS quiere ponerse
de manifiesto que, si bien la solución aportada es de las más
destacadas, al no hacer uso de metodologı́as que se adapten
a las normativas y recomendaciones vigentes, ni de una ter-
minologı́a regulada, se introducen conceptos ambiguos desde
el punto de vista del AARR. Estas mismas ambigüedades
Figura 1. Identificación de Activos
reducen la posibilidad de adaptar los procesos online y offline
que proviniesen de distintos trabajos.
La identificación de activos, amenazas y salvaguardas es
la primera fase del AARR. En la figura 1 se presenta la
III. E L P ROBLEMA D IMENSIONAL ENTRE EL DRA Y LOS
determinación de estos activos, los ejes de dominios y capas
AIRS
corresponden con lo recomendado en [9], y nivel organizativo
El tı́tulo del apartado pretende resaltar la distancia existente es una dimensión añadida en este trabajo. A continuación se
entre el campo del DRA y el de los AIRS. A continuación se detallan.
presentan los principales retos que hacen que su interrelación – Capas. Atendiendo al tipo de activo y sus dependencia
resulte compleja pero conveniente. jerárquicas. Se suele dividir en subcapas, la capa equipos
1. Carácter Preventivo frente a Reactivo. El análisis de informáticos contiene a las subcapas hw, sw y comunicaciones.
riesgos es un estudio preventivo que sugiere qué hacer en – Dominios. Por agrupación de amenazas y salvaguardas
caso de que algo negativo ocurra. Su fin no es responder que afectan al activo. Como ejemplo se seleccionan los
a las amenazas, sino proponer soluciones y estimar riesgos. dominios de seguridad fı́sica, red corporativa, y situación
Por el contrario, los AIRS tienen como fin actuar, y aunque geopolı́tica.
necesiten analizar ciertos factores que aseguren la calidad de – Nivel organizativo. Permite analizar el activo de una de-
las respuestas, no realizan un estudio exhaustivo o integral del terminada capa-dominio desde diferentes niveles de decisión.
entorno. Como se verá, el nexo entre lo preventivo del AARR En este caso se contemplan los niveles administración, gestión
y lo reactivo de los AIRS es el concepto de nivel de confianza. y gerencia.
2. Actividad a Medio-Largo Plazo frente a Tiempo Real. La intención de la figura 1 es resaltar la información que se
Una de las propiedades deseables de los AIRS es su rapidez de omite en el caso de no aplicar el AARR como metodologı́a.
respuesta, mientras que el análisis de riesgos es una actividad De todas las dimensiones (capa/dominio/nivel) reflejadas en
ardua, continua y cı́clica, en la que prima más el buen análisis la figura 1, los únicos activos generalmente analizados por los
a medio-largo plazo que un reajuste rápido de la situación. Por AIRS son los de la capa de equipos informáticos, y únicamente
ello el AIRS hace uso de resultados previamente calculados en el nivel de administración de red y dentro del dominio de
por los elementos offline del AARR, reajustando y orientando la red corporativa (cubo resaltado)
sus respuestas, pero asumiendo que la dinámica de trabajo del
IV. E NFOQUE PARA LA I NTEGRACI ÓN DEL A N ÁLISIS DE
AARR es lenta.
R IESGOS
3. Estudio Exhaustivo frente a Especializado. El análisis de
riesgos es un estudio extenso, a todos los niveles, que con- En este apartado se presentan las bases de una propuesta
templa tanto factores tecnológicos, como sociales, polı́ticos, temprana. Se explican sus principales conceptos y se propone
legales y de cualquier otra ı́ndole. Por el contrario, los sistemas el AIRS que servirá de base para la integración.
de respuesta generalmente realizan un estudio muy dirigido,
centrándose casi en exclusiva en las eventualidades de red y Bases de la Propuesta
sistemas. Incluso cuando se introduce el concepto de usuario, Se propone un marco de actuación basado en el conocimien-
se hace desde el punto de vista de ’persona que usa el sistema’, to, con el objetivo de mantener un nivel de confianza dentro de
y no como ’persona que puede causar un daño’, daño que no un dominio de control, dado un estado de alerta, en beneficio
Análisis de Riesgos Dinámicos aplicado a Sistemas de Respuesta Automática frente a Intrusiones 137

de una entidad objetivo y centrado en sus tecnologı́as de la ataque (amenaza llevada a cabo), para poder compararlo con el
información, pero atendiendo a toda eventualidad. nivel de confianza objetivo de la fase offline. Tras la aplicación
El núcleo del marco lo conforma el concepto de sistema de las salvaguardas en forma de repuestas, el riesgo residual
de respuesta automática ante intrusiones, como elemento de evaluado debe de estar en los márgenes definidos por el riesgo
respuesta, evaluación y análisis de riesgos integral. residual objetivo. De no ser ası́, las salvaguardas han sido insu-
ficientes, debiendo el componente online realimentar al offline
Conceptos Principales con esta información y replantearse un nuevo ciclo de AARR
– Basado en el Conocimiento. Se entenderá esta propie- en su faceta dinámica. Como se explicó, la realimentación del
dad como la capacidad del sistema de razonar conforme componente online afectarı́a principalmente a las incidencias
a conceptos y no sobre sintaxis. Término equivalente a la de seguridad dentro del DRA.
propiedad de coherencia semántica del AIRS ontológico de – Estado de Alerta. Si mantener el nivel de confianza
Mateos Lanchas [27]. Las definiciones necesarias para la provoca la convergencia hacia una situación estable, el estado
integración se realizarán mediante ontologı́as en OWL2 [28], de alerta juega el papel de elemento regulador. El estado de
reglas SWRL [29] y razonadores como Pellet [30]. alerta se valora, en términos de análisis de riesgos, según
– Mantener un Nivel de Confianza. Es el núcleo de la el grado de impacto con que las amenazas afectan a la
propuesta, y el elemento que pretende conferir al sistema organización. Un determinado problema puede tener mayores
un carácter convergente hacia un estado deseado. En [9] se o menores consecuencias dependiendo de la situación, y esto
define seguridad como la capacidad de resistir, manteniendo un debe de reflejarse en el estado de alerta e influir en las
determinado nivel de confianza. Este nivel se medirá en dife- respuestas del AIRS. El estado de alerta podrá: imponerse
rentes dimensiones de seguridad: confidencialidad, integridad, por el administrador, derivarse de históricos que relacionen
autenticidad, trazabilidad y disponibilidad, y para cada activo, situaciones anteriores y/o derivarse de la tendencia del impacto
amenaza y dimensión. a lo largo de un periodo.
El elemento de AARR que se usará como métrica del nivel El estado de alerta medido según la tendencia del im-
de confianza es el riesgo residual o riesgo aceptado, como pacto abre la posibilidad de realizar un estudio preventivo
producto final de las metodologı́as de análisis de riesgos. C2 de incidencias futuras. Los AIRS pueden hacer uso de esta
sección II. caracterı́stica en su faceta proactiva en el caso de implemen-
A continuación se justifica la elección del riesgo residual. tarla. Se propone el uso del gradiente para el cálculo de esta
El fin del AARR es calcular el riesgo, computado a partir del tendencia, donde los vectores unitarios i,j,k . . . representan
impacto que una amenaza tiene sobre la degradación del valor a las dimensiones de seguridad, y el valor de cada eje la
de los activos y ponderado por su probabilidad o frecuencia. tendencia del impacto.
El riesgo residual es el riesgo aceptado y conocido, residuo
remanente una vez aplicadas las salvaguardas, y que determina Elección del AIRS
el rango de riesgo que una organización está dispuesta o Los primeros estudios se realizarán en base al AIRS on-
condicionada a admitir. Por lo anterior, el riesgo residual es tológico propuesto en [27] y exhaustivamente descrito en [23].
el término que contiene la totalidad de la información del Para ello se prevé como mı́nimo:
proceso de AARR, tanto de la valoración del riesgo, como – Módulo de Análisis de Riesgos Dinámicos. Será parte del
de la eficacia de las salvaguardas. Como nota final, y aunque modelo online y realizará la función de adaptar los resultados
implı́cito en el propio cálculo del riesgo, se introduce el del AARR offline a nuestro sistema. Mantendrá los mismos
término de riesgo residual dimensional, consistente en el riesgo criterios de coherencia semántica que para la recepción de
residual medido en cada una de las dimensiones de seguridad alertas del AIRS ontológico.
seleccionadas. – Ampliación del Módulo de Evaluaciones. Determinará el
El nivel de confianza debe de representarse tanto en los nivel de confianza actual, por lo que sus resultados, en térmi-
componentes offline como en los online, C3/4 de IV, para nos de evaluación de riesgo residual, marcarán la capacidad
ello se introducen los siguientes conceptos: de convergencia al nivel de confianza objetivo. Entre los
– Nivel de Confianza Objetivo. Representa el resultado del elementos previstos se encuentra la especificación de un toolkit
proceso de AARR offline, caracterizado por el riesgo residual. de evaluaciones, similar y en estrecha relación con en toolkit
El AIRS debe converger a este nivel de confianza, utilizando de respuestas ya existente en [27].
sus valores en el cálculo de las métricas. Un cambio en
el nivel de confianza conlleva un cambio en las respuestas V. C ONCLUSI ÓN
seleccionadas, y en ocasiones el modelado de nuevas salva- Los AIRS se plantean como una potente herramienta en la
guardas/respuestas. administración de la seguridad en redes y sistemas. La calidad
– Nivel de Confianza Actual. Representa el resultado del de sus respuestas depende de un gran número de factores,
proceso de AARR online, caracterizado por el riesgo residual pero principalmente de la fiabilidad de los eventos recibidos,
evaluado online, término introducido en este estudio y no de las métricas que los analizan e infieren las respuesta, y de
propio del análisis de riesgos. Este riesgo evaluado debe de los mecanismos de evaluación de las acciones tomadas. La
medirse en toda dimensión de todo activo afectado por un búsqueda de nuevas propiedades como la proactividad [31], y
138 D. Ray, V.A. Villagrá, V. Mateos, P. Holgado

la mejora de los criterios de respuesta mediante el AARR son [12] C. P. Mu, X. J. Li, H. K. Huang, and S. F. Tian, “Online risk assessment
algunos de los retos actuales dentro del campo. of intrusion scenarios using d-s evidence theory,” in European Sympo-
sium on Research in Computer Security (ESORICS), 2008, pp. 35–48.
Ajustándose a los términos que este artı́culo propone, se [13] K. Haslum, A. Abraham, and S. J. Knapskog, “Dips: A framework
puede clasificar a los AIRS como herramientas de apoyo a for distributed intrusion prediction and prevention using hidden mar-
la gestión del riesgo, que reciben información del proceso de kov models and online fuzzy risk assessment,” in Third International
Information Assurance and Security Symposium (IAS), 2007, pp. 183–
AARR para la inferencia de sus respuestas y proporcionan 190.
información a los procesos de DRA para el reajuste del riesgo. [14] Z.-H. Hu, Y.-S. Ding, and J.-W. Huang, “Knowledge-based framework
Como aportaciones del trabajo se propone desambiguar for real-time risk assessment of information security inspired by danger
model,” in Proceedings of the 2008 International Symposium on Inte-
el término dynamic risk assessment con respecto a online lligent Information Technology Application Workshops (IITAW ’08), ser.
o real time risk assessment. Se propone una distinción y IITAW ’08, 2008, pp. 1053–1056.
separación entre los componentes offline y online, el primero [15] A. Shameli-Sendi, M. Dagenais, M. Jabbarifar, and M. Couture, “Real
time intrusion prediction based on optimized alerts with hidden markov
como AARR propiamente y el segundo como proceso que model,” Journal of Networks (JNW), vol. 7, no. 2, pp. 311–321, 2012.
hace uso de los resultado del offline y lo realimenta. Se [16] D. L. Cuenca, O. Pastor, and L. J. Villalba, “Concepto y enfoques sobre
presentan las principales diferencias entre la naturaleza del el análisis y la gestión dinámica del riesgo en sistemas de información,”
in Reunión Española sobre Criptologı́a y Seguridad de la Información
AARR y AIRS: preventivo/reactivo, medio-plazo/tiempo-real, (RECSI), 2012.
estudio-extenso/especializado. Finalmente se dan las lı́neas de [17] W. Qi, X. Liu, J. Zhang, and W. Yuan, “Dynamic assessment and var-
un posible mecanismo para la aplicación del AARR en los based quantification of information security risk,” in 2nd International
e-Business and Information System Security Conference (EBISS),, 2010,
AIRS, con base en el AIRS ontológico de [27]. pp. 1–4.
La integración propuesta se presenta en forma de ideas [18] P. Lagadec, “Visualization et analyse de risque dynamique pour la cyber-
fuerza que derivan en conceptos que relacionan e intentan défense,” in Symposium sur la sécurité des technologies de l?information
et des communications (SSTIC), 2010.
salvar las diferencias existentes entre el DRA y los AIRS. [19] W. Jones, S. Aud, J. Hudepohl, M. flournory, W. Snipes, and E. Schutz,
Se propone al riesgo residual como elemento que defina “Method and system for dynamic risk assessment of software,” 2001.
el nivel de confianza de una organización, identificándolo [20] J. A. Mañas and C. Belso, “Gestión dinámica de riesgos: Seguridad de
la red de servicios,” in XI jornadas sobre tecnologı́as de la información
como el producto final del AARR y el contenedor de mayor para la modernización de las administraciones públicas, 2010.
información. El riesgo y el riesgo residual serı́an el resultado [21] N. Poolsappasit, R. Dewri, and I. Ray, “Dynamic security risk manage-
del componente offline. Los procesos online harán uso de ment using bayesian attack graphs,” Dependable and Secure Computing,
IEEE Transactions on, vol. 9, no. 1, pp. 61–74, 2012.
este riesgo calculado en sus respuestas y evaluarán el riesgo [22] ISO/IEC-27001:2013, Information technology, security techniques, In-
residual provocado por las incidencias de seguridad, siendo formation security managament systems, Requirements. International
éste el nivel de confianza existente en un momento dado. Con Organization for Standardization, ISOIEC, 2013.
[23] V. Mateos, “Contribución a la automatización de sistemas de respuesta
este riesgo online se realimentará a los procesos offline en su frente a intrusiones mediante ontologı́as,” 2013. [Online]. Available:
faceta dinámica. http://www.dit.upm.es/∼doct/ist/tesisleidas.html
[24] A. Shameli-Sendi, “System health monitoring and proactive response
R EFERENCIAS activation,” 2013. [Online]. Available: http://publications.polymtl.ca/
[1] M. de Defensa, “Om-76/2006, polı́tica de seguridad en la información 1102/1/2013 AlirezaShameliSendi.pdf
del ministerio de defensa,” p. Séptimo. Áreas de la seguridad de la [25] A. Shameli-Sendi and M. Dagenais, “Arito: Cyber-attack response
información, 2006. system using accurate risk impact tolerance,” International Journal of
[2] V. A. Villagrá, Seguridad en Redes de Telecomunicación. Fundación Information Security, pp. 1–24, 2013.
Rogelio Segovia para el Desarrollo de las Telecomunicaciones, 2009. [26] A. Shameli-Sendi, M. Shajari, M. Hassanabadi, M. Jabbarifar, and
[3] N. Stakhanova, S. Basu, and J. Wong, “A taxonomy of intrusion response M. Dagenais, “Fuzzy multi-criteria decision-making for information
systems,” Int.J.Inf.Comput.Secur., vol. 1, no. 1/2, pp. 169–184, jan 2007. security risk assessment,” The Open Cybernetics and Systemics Journal,
[4] A. Shameli-Sendi, N. Ezzati-Jivan, M. Jabbarifar, and M. Dagenais, “In- vol. 6, pp. 26–37, 2012.
trusion response systems: survey and taxonomy,” Internacional Journal [27] V. Mateos, V. A. Villagrá, and F. Romeo, “Ontologies-based automated
of Computer Science and Network Security (IJCSNS), vol. 12, no. 1, pp. intrusion response system,” in Proceedings of the 3rd international
1–14, 2012. conference on computational intelligence in security for information
[5] V. Mateos, V. A. Villagrá, F. R. Bueno, and J. Berrocal, “Definition systems (CISIS), 2010, pp. 99–106.
of response metrics for an ontology-based automated intrusion response [28] D. L. Michael K. Smith, Chris Welty, OWL 2 Web Ontology Language
systems,” Computers & Electrical Engineering, vol. 38, no. 5, pp. 1102– Document Overview, 2nd ed., December 2012. [Online]. Available:
1114, 2012. http://www.w3.org/TR/2012/REC-owl2-overview-20121211/
[6] ISO-31000:2009, Risk management - Principles and guidelines. Inter- [29] P. F. P.-S. Ian Horrocks, SWRL: A Semantic Web Rule Language
national Organization for Standardization, ISO, 2009. Combining OWL and RuleML, May 2004. [Online]. Available:
[7] ISO-Guide-73:2009, Risk management and Vocabulary. International http://www.w3.org/Submission/2004/SUBM-SWRL-20040521/
Organization for Standardization, ISO, 2009. [30] E. Sirin, B. Parsia, B. C. Grau, A. Kalyanpur, and Y. Katz, “Pellet: A
[8] ISO/IEC-27005:2011, Information technology, security techniques, In- practical owl-dl reasoner,” Web Semant., vol. 5, no. 2, pp. 51–53, jun
formation security risk management. International Organization for 2007.
Standardization, ISOIEC, 2011. [31] N. Stakhanova, S. Basu, and J. Wong, “A cost-sensitive model for
[9] M. A. Amutio, J. Candau, and J. A. Mañas, MAGERITv3, Metodologı́a preemptive intrusion response systems.” in Proceedings of the 21st inter-
de Análisis y Gestión de Riesgos de los Sistemas de Información. Libro national conference on advanced networking and applications AINA’07.
I - Método. Ministerio de Hacienda y Administraciones Públicas, 2012. IEEE Computer Society, 2007, pp. 428–435.
[10] UNE-71504:2008, Metodologı́a de análisis de riesgos para los sistemas
de información. AENOR, 2008.
[11] M. A. Amutio, J. Candau, and J. A. Mañas, MAGERITv3, Metodologı́a
de Análisis y Gestión de Riesgos de los Sistemas de Información. Libro
II - Catálogo de Elementos. Ministerio de Hacienda y Administraciones
Públicas, 2012.
RECSI 2014, Alicante, 2-5 septiembre 2014

Simulación de la propagación del malware:


Modelos continuos vs. modelos discretos
Amparo Fúster Sabater Ángel Martı́n del Rey Gerardo Rodrı́guez Sánchez
Instituto de Tecnologı́as Fı́sicas Departamento de Matemática Aplicada Departamento de Matemática Aplicada
y de la Información, C.S.I.C. IUFFyM, Universidad de Salamanca IUFFyM, Universidad de Salamanca
Email: amparo@iec.csic.es Email: delrey@usal.es Email: gerardo@usal.es

Resumen—La gran mayorı́a de modelos matemáticos propues- de Kermack y McKendrick ([5]) que hace uso de un sistema
tos hasta la fecha para simular la propagación del malware están de ecuaciones diferenciales. Aunque estos modelos continuos
basados en el uso de ecuaciones diferenciales. Dichos modelos poseen una sólida base matemática que posibilita un estudio
son analizados de manera crı́tica en este trabajo, determinando
las principales deficiencias que presentan y planteando distintas cualitativo muy detallado, presentan serios problemas a la hora
alternativas para su subsanación. En este sentido, se estudia el de aplicarlos en determinadas situaciones reales. Ello hace
uso de los autómatas celulares como nuevo paradigma en el que conveniente explorar otro tipo de herramientas matemáticas
basar los modelos epidemiológicos, proponiendo una alternativa de naturaleza discreta (autómatas celulares, modelos basados
explı́cita basada en ellos a un reciente modelo continuo. en agentes, etc.) que posibiliten el diseño de modelos más
Palabras clave—Autómatas Celulares (cellular automata).
Código malicioso (malware). Ecuaciones diferenciales (differen- eficaces.
tial equations). Epidemiologı́a matemática (mathematical epide- El objetivo fundamental de este trabajo es realizar un
miology). Modelización matemática (mathematical modelling). análisis crı́tico de los modelos matemáticos propuestos, de-
terminando los puntos fuertes y débiles y, a partir de ello,
I. I NTRODUCCI ÓN proponer paradigmas alternativos que permitan soslayar los
El malware es una de las principales amenazas a la Se- problemas planteados por los existentes. En este sentido, y con
guridad de la Información con la que nos enfrentamos en la finalidad de ilustrar las conclusiones obtenidas, se propone
la actualidad. Esta amenaza (y los efectos causados), lejos un modelo basado en autómatas celulares para el estudio de la
de disminuir, se acrecentará en los próximos años debido propagación de malware, alternativo al desarrollado por Feng
fundamentalmente al perfeccionamiento de sus técnicas y et al. ([3]) que se basa en ecuaciones diferenciales ordinarias.
fines (APT, Crimeware, etc.) y a la progresiva implantación El resto del trabajo está organizado como sigue: en la
de la Internet de las Cosas. La lucha contra el malware se sección II se analizan los modelos matemáticos que se han
lleva a cabo en diferentes frentes: desde la concienciación desarrollado para simular la propagación del malware, deter-
del usuario para que adopte medidas de seguridad, hasta el minando ventajas y desventajas; en la sección III se detalla
desarrollo de software antimalware por parte de las empresas el modelo continuo debido a Feng et al.. La propuesta y
especializadas, pasando por el establecimiento de polı́ticas de análisis de la alternativa discreta es presentada en la sección
seguridad adecuadas en los distintos organismos y compañı́as, IV; finalmente, en la sección V se presentan las conclusiones.
etc. El gran olvidado en este escenario es el desarrollo
de software simulador de la propagación de malware. Este II. M ODELOS MATEM ÁTICOS BASADOS EN ECUACIONES
tipo de aplicaciones, tan usadas en otros campos como en DIFERENCIALES
la propagación de enfermedades infecciosas o de incendios
forestales, serı́a de gran utilidad para el gestor ya que le Los modelos matemáticos desarrollados para estudiar la
permitirı́a simular el comportamiento de la propagación del propagación de malware se basan en los modelos diseñados
código malicioso en una red, probar la efectividad de contra- para estudiar la diseminación de las enfermedades infecciosas;
medidas y, en definitiva, tomar decisiones adecuadas para la ello es debido a las similitudes entre el comportamiento de los
contención de la propagación o, al menos, la minimización de virus biológicos, bacterias, hongos o priones y el del malware
sus efectos nocivos. El software de simulación se deriva de (virus computacionales, gusanos, etc.) Ası́ pues muchas de
la implementación computacional de un determinado modelo las propiedades y caracterı́sticas de los primeros se traducen
matemático. Ası́ pues el desarrollo de este tipo de modelos y tienen su reflejo en los segundos (véase [10], [14]), a
que traten de explicar el comportamiento de la propagación saber: clases en que se divide la población, la naturaleza del
del código malicioso es básico. modelo y mecanismos que rigen la dinámica de la infección.
Existen muy pocos modelos publicados en la literatura Los modelos epidemiológicos de carácter matemático son
cientı́fica cuyo propósito sea el mencionado anteriormente; la modelos compartimentales, esto es, la población se divide en
gran mayorı́a de ellos se basan en el paradigma heredado de la diferentes tipos (o compartimentos) teniendo en cuenta las
Epidemiologı́a Matemática y más concretamente en el modelo caracterı́sticas de la enfermedad: susceptibles, expuestos (con
140 A. Fúster Sabater, A. Martı́n del Rey, G. Rodrı́guez Sánchez

o sin sı́ntomas), infectados, infecciosos, recuperados, en cua- introducidos en el modelo. Estas relaciones se pueden articular
rentena, vacunados, aislados, etc. Ası́ pues nos podemos en- en torno a diferentes herramientas matemáticas, siendo la más
contrar con modelos SIS (Susceptible-Infectado-Susceptible), utilizada las ecuaciones diferenciales.
modelos SIR (Susceptible-Infectado-Recuperado), mode- El pilar sobre el que se fundamentan los modelos basados
los SEIR (Susceptible-Expuesto-Infectado-Recuperado), mo- en ecuaciones diferenciales es el modelo de Kermack y
delos SEIQR (Susceptible-Expuesto-Infectado-Cuarentena- McKendrick ([5]). Se trata de un modelo SIR en el que el
Recuperado), etc. tamaño de la población se mantiene constante e igual a N y
Consecuentemente, en los modelos cuyo objeto de estudio se consideran dos parámetros: el ı́ndice de transmisión a, y el
es el malware podemos encontrar estos mismos compartimen- ı́ndice de recuperación b. La dinámica del modelo se rige según
tos; ası́ se han propuesto modelos SIS (véase, por ejemplo, el siguiente sistema de ecuaciones diferenciales ordinarias:
[1]), SIR (véase, por ejemplo, [13]), SEIR (véase, por ejemplo,  0
 S (t) = − Na S (t) I (t)
[12]), SEIRS (véase [15]), etc. Se puede ver cómo no existe un I 0 (t) = Na S (t) I (t) (1)
tipo de modelo compartimental que centre el mayor número de  0
R (t) = bI (t)
trabajos sino que se observa una cierta homogeneidad en cuan-
to a los modelos compartimentales propuestos. Estos modelos donde S (t) , I (t) y R (t) representan el número de ordena-
se pueden clasificar también atendiendo a la naturaleza y a las dores susceptibles, infectados y recuperados en el instante t,
herramientas matemáticas en las que se basan. En este sentido respectivamente.
nos podemos encontrar con modelos deterministas (véase, El uso de ecuaciones diferenciales permite realizar un
por ejemplo [11], [17]) o con modelos estocásticos ([2], detallado análisis matemático del modelo en cuestión. El com-
[6]). Los modelos deterministas están basados en ecuaciones portamiento de estos modelos depende fundamentalmente de
diferenciales, mientras que los modelos estocásticos hacen uso un parámetro umbral llamado número reproductivo básico, R0 ,
fundamentalmente de las cadenas de Markov (sobre tiempo el cual determinará la estabilidad del equilibrio sin infección
y estados continuos o discretos). Los modelos deterministas (disease-free equilibrium) y del equilibrio endémico (endemic
proporcionan buenos resultados cuando la población es muy equilibrium). El número reproductivo básico se define como
grande, mientras que los modelos estocásticos se muestran más el número de infecciones secundarias causadas por un único
eficaces cuando se intenta simular la propagación de malware ordenador infectado en una población enteramente susceptible.
en redes pequeñas de ordenadores. La gran mayorı́a de los De esta manera, se demuestra que si R0 < 1 la infección se
modelos propuestos (ya sean deterministas o estocásticos) se irá reduciendo (el número de ordenadores infectados decre-
pueden calificar como modelos globales ya que estudian la cerá hasta erradicarse) alcanzándose un estado de equilibrio
dinámica de la población en su conjunto sin tener en cuenta estable sin infección; si, por el contrario, se verifica que
las interacciones locales entre los individuos más allá de lo R0 > 1, entonces la infección se propagará (el número
reflejado en los parámetros. Por el contrario existen muy de individuos infectados crecerá) llegándose a un estado de
pocos modelos de carácter individual; todos ellos basados en equilibrio endémico estable.
autómatas celulares (véase [4], [7], [8], [9]). Se trata pues de modelos bien fundamentados y coherentes
El objetivo de la inmensa mayorı́a de los modelos propues- desde el punto de vista matemático y con un detallado estudio
tos es el estudio de la dinámica de los diferentes compartimen- de las principales caracterı́sticas de su dinámica: estabilidad,
tos en que se divide la población, es decir, el conocimiento equilibrio, etc. No obstante presentan algunos inconvenientes
del número de ordenadores susceptibles, expuestos, infectados, que pasaremos a detallar a continuación y que son debidos a
etc. que hay en cada instante de tiempo y cuál es su tendencia. su propia naturaleza:
Todo modelo matemático viene caracterizado por tres ele- (1) No tienen en cuenta las interacciones locales entre los
mentos: las variables que se estudian, los parámetros que ordenadores que forman la red. Se utilizan parámetros
se utilizan y las relaciones funcionales que rigen la dinámi- como la tasa de infección, la tasa de recuperación, etc.
ca considerando las variables y parámetros. En el caso de que son de carácter general: el valor del parámetro
la simulación de la propagación del malware, las variables es constante para todos los elementos de la red o, en
utilizadas son el número de ordenadores que se encuentran algunos casos, sigue una determinada distribución de
en alguno de los tipos considerados. Los parámetros que se probabilidad. Consecuentemente no se contempla el uso
utilizan en la modelización suelen ser los siguientes (el uso de de parámetros individualizados para cada uno de los
unos u otros depende del modelo implementado y del tipo de ordenadores.
malware considerado): tasa de infección, tasa de recuperación (2) Suponen que los ordenadores que forman la red (a través
(debida al efecto de los antivirus), ı́ndice de eliminación de un de la que se propaga el código malicioso) están ho-
ordenador de la red, ı́ndice de aparición de nuevos ordenadores mogéneamente distribuidos y conectados todos entre sı́.
en la red, probabilidades de paso de un compartimento a Cuando se analiza la propagación del código malicioso
otro, probabilidad de adquisición de inmunidad (temporal o de manera macroscópica (en toda Internet, por ejemplo)
indefinida), periodo de latencia, periodo de inmunidad, etc. La los resultados que se obtienen dan una aproximación
evolución de los diferentes compartimentos viene regida por bastante buena de lo que ocurre en la realidad; ahora
las relaciones funcionales que tienen en cuenta los parámetros bien, si analizamos dicha propagación en redes locales,
Simulación de la propagación del malware: Modelos continuos vs. modelos discretos 141

intranets, etc. los resultados obtenidos son manifies- Tabla I: Parámetros del modelo debido a Feng et al.
tamente mejorables ya que a escala microscópica la Parámetro Descripción
dinámica es muy sensible a las interconexiones locales. p Porcentaje de ordenadores susceptibles
(3) No es posible simular la dinámica individual de cada uno Λ Número de nuevos nodos
de los elementos de la red. Bien es cierto que, cuando δ Tasa de pérdida de inmunidad
el tamaño de la red es muy grande, el comportamiento β (t) Tasa de infección en el instante t
general obtenido puede ser muy similar (en cuanto a µ Tasa de reposición de ordenadores
tendencias) a lo que se produce en la realidad pero se φ Tasa de inmunidad proporcionada por el software antivirus
omite el uso de información fundamental: por ejemplo γ Tasa de recuperación de la infección
aquellas computadoras cuyo sistema operativo sea Mac
OS no se deberı́an ver afectadas (en el sentido de ser
infectadas) por el código malicioso diseñado para siste- siguientes:
mas que utilicen Windows (aunque podrı́an considerarse
expuestas), etc. S 0 (t) = pΛ − β (t) S (t) I (t) − (µ + φ) S (t) (2)
+δR (t − τ )
Consecuentemente, en los modelos basados en ecuaciones
diferenciales podemos obtener buenos resultados acerca del I 0 (t) = β (t) S (t) I (t) − (µ + γ) I (t)
comportamiento global aunque no tendremos información R0 (t) = (1 − p)Λ + φS (t) + γI (t) − δR (t − τ )
sobre el comportamiento individual de cada una de los or- −µR (t) .
denadores de la red. Estas tres deficiencias fundamentales que
presentan estos modelos podrı́an ser subsanadas si utilizáramos de manera que los parámetros utilizados se muestran en la
otro tipo de modelos como los basados en autómatas celu- tabla I.
lares. En éstos es posible tener en cuenta las caracterı́sticas Obsérvese que éstos son parámetros globales, es decir,
individuales de cada una de las computadoras o dispositivos el valor de cada uno de ellos es constante sobre todos los
que se encontraran conectados a la red; además podrı́amos ordenadores de la red.
considerar diferentes topologı́as de red e incluso variarlas con Un laborioso cálculo matemático (véase [3]) demuestra que
el tiempo. De esta manera tendrı́amos definido un modelo en el el número reproductivo básico asociado es:
que la dinámica variara en función de los distintos parámetros β0 (pµ + δ) Λf 0 (0)
R0 = , (3)
individuales. µ (µ + γ) (µ + δ + φ)
donde f (t) = β(t)I(t)
β0 , siendo β0 la tasa inicial de infección.
III. E L MODELO DE F ENG et al. Además, si R0 ≤ 1 se obtiene el estado de equilibrio sin
infección dado por E0∗ = (S0∗ , I0∗ , R0∗ ), donde:
En [3] Feng et al. propusieron un modelo SIRS basado en un (pµ + δ) Λ (1 − p) Λ + φS0∗
S0∗ = , I0∗ = 0, R0∗ = . (4)
sistema de ecuaciones diferenciales ordinarias con retardo para µ (µ + δ + φ) δ+µ
simular la propagación de un determinado código malicioso. Se verifica que E0∗ es globalmente asintóticamente estable para
Este modelo se caracteriza porque en él se considera una tasa cualquier τ si R0 < 1. Por otro lado, si R0 > 1 entonces se
de infección β (t) variable, un cierto periodo de inmunidad alcanza un estado de equilibrio endémico. Se demuestra que
temporal τ tras la eliminación satisfactoria del malware, y se dicho estado es localmente asintóticamente estable si τ < τ0
supone que el número total de ordenadores puede variar con e inestable cuando τ > τ0 , donde τ0 es un cierto parámetro
el tiempo: S (t) + I (t) + R (t) = N (t). umbral.
La dinámica del mismo viene definida por las siguientes
IV. E L MODELO BASADO EN AUT ÓMATAS CELULARES
consideraciones:
IV-A. Descripción del modelo
(1) Un ordenador susceptible pasa a estar infectado con tasa
En el modelo de Feng et al. descrito en la Sección III se
de infección β (t). Este ı́ndice depende de múltiples
emplean parámetros generales sin atender a las caracterı́sticas
factores como: número de ordenadores susceptibles,
especı́ficas de cada uno de los ordenadores que se encuentra
daños causados por el malware, etc.
en la red ni a las posibles conexiones entre ellos. A fı́n de
(2) Un ordenador susceptible (resp. infectado) pasa a estar
tener en cuenta estos condicionantes, proponemos un modelo
recuperado con tasa de inmunidad φ (resp. γ) si sobre
alternativo basado en autómatas celulares cuyos resultados
él se tienen implementadas diferentes medidas de segu-
globales son los similares a los obtenidos por el modelo
ridad: software antivirus, firewall, sistema de detección
original pero que, al mismo tiempo, permite incorporar las
de intrusos, etc.
caracterı́sticas particulares de cada uno de los ordenadores y
(3) Un ordenador recuperado pasa a ser susceptible según
obtener, adicionalmente, la evolución temporal de los mismos.
la tasa δ después de un cierto periodo de tiempo τ .
Los autómatas celulares son modelos simples de compu-
Concretamente, las ecuaciones que rigen el modelo son las tación (un tipo particular de modelos basados en agentes) que
142 A. Fúster Sabater, A. Martı́n del Rey, G. Rodrı́guez Sánchez

son capaces de simular de manera eficaz y eficiente sistemas local serán las siguientes:
complejos (véase [16]). Están formados por un número finito 
S si Ei (t) = S y fS7→I (t) = 0
de unidades de memoria denominadas células que se encuen-


S si Ei (t) = S y fS7→R (t) = 0


tran conectadas entre sı́ según una cierta topologı́a definida por


S si Ei (t) = R y fR7→S (t) = 1


un grafo, de tal manera que en cada instante de tiempo cada


I si Ei (t) = S y fS7→I (t) = 1

célula está en un estado de entre un número finito de ellos. Ei (t + 1) = (7)
I si Ei (t) = I y fI7→R (t) = 0
Este estado va cambiando con el paso discreto del tiempo de


R si Ei (t) = S y fS7→R (t) = 1


acuerdo una regla de transición local cuyas variables son los


R si Ei (t) = I y fI7→R (t) = 1


estados en el instante anterior de la propia célula y sus vecinas


R si Ei (t) = R y fR7→S (t) = 0

(aquellas células adyacentes a la dada).
En el caso que nos ocupa supondremos que cada célula donde:
^
representará un ordenador de la red considerada y que la ve- fS7→I (t) = ri,j (t) ∨ Ωi (t) , (8)
cindad de la misma vendrá definida por el conjunto de ordena- [j]∈Vi
dores que se encuentran conectados de manera que sea posible 
1, con probabilidad φi (t)
la transmisión del malware entre ellos (vı́a correo electrónico, fS7→R (t) = (9)
0, con probabilidad 1 − φi (t)
bluetooth, etc.) A este respecto denotaremos por [i] al i-ésimo 
ordenador de la red y por Vi = {[ji,1 ], [ji,2 ], . . . , [ji,vi ]} a 1, con probabilidad δi (t)
fR7→S (t) = (10)
su vecindad. El estado de la célula/ordenador i-ésimo en el 0, con probabilidad 1 − δi (t)
instante de tiempo t se denotará por Ei (t) y tomará alguno de fI7→R (t) = si (t) ∨ Γi (t) , (11)
los siguientes tres valores: S (susceptible), I (infectado), o R siendo:
(recuperado). La transición entre dichos estados vendrá regida 
por las siguientes suposiciones: 1, con probabilidad βi (t)
Ωi (t) = (12)
0, con probabilidad 1 − βi (t)
(1) Transición de susceptible a infectado: El ordenador

1, con probabilidad γi (t)
susceptible [i] pasará estar infectado cuando exista un or- Γi (t) = (13)
0, con probabilidad 1 − γi (t)
denador vecino infectado, en cuyo caso dicha infección
IV-B. Simulaciones
se producirá con probabilidad βi (t). La existencia de un
vecino infectado vendrá dada por la siguiente variable A continuación se realizarán una serie de simulaciones
booleana: para poder comparar los dos modelos. En estos casos y para
simplificar, no tendremos en cuenta la dinámica poblacional
 (aparición y desaparición de ordenadores). En ellas se consi-
1, si [j] está infectado en t derarán n = 500 ordenadores en la red y se supondrán que
ri,j (t) = (5)
0, si [j] no está infectado en t inicialmente hay 5 ordenadores infectados (I (0) = 5).
En primer lugar se tiene en cuenta un escenario homogéneo
donde [j] ∈ Vi . (condiciones de los modelos continuos), esto es, se consi-
(2) Transición de susceptible a recuperado: El ordenador derará que todos los ordenadores se encuentran conectados
susceptible [i] pasará a estar recuperado cuando se tomen entre sı́ en todo momento (es decir, la topologı́a asociada al
las medidas necesarias para que el malware no le afecte. autómata celular viene definida por un grafo completo), y se
Ello se producirá con probabilidad φi (t). supondrá que todos los ordenadores poseen los mismos valores
(3) Transición de infectado a recuperado: El ordenador de los parámetros:
infectado [i] pasará a estar recuperado cuando tenga βi (t) = β (t) , φi (t) = φ, δi (t) = δ, γi (t) = γ, ∀i. (14)
software antivirus instalado, en cuyo caso la recupera-
ción se producirá con probabilidad γi (t). La existencia Concretamente usaremos los mismos valores de los parámetros
de software de protección vendrá dada por la siguiente que los empleados por Feng et al. en [3], esto es:
variable booleana:
γ = 0,2, β = 0,8, φ = 0,46, δ = 0,7, τ = 10. (15)
 La simulación obtenida con el modelo de Feng et al se
1, si [i] tiene antivirus instalado en t
si (t) = muestra en la figura 1-(a), mientras en que la figura 1-(b)
0, si [i] no tiene antivirus instalado en t
(6) se presenta la simulación obtenida con el modelo discreto.
(4) Transición de recuperado a susceptible: Un ordenador Como se puede apreciar en estas simulaciones las tendencias
recuperado se mantendrá en este estado durando un globales obtenidas en ambos casos son similares aunque
cierto periodo de tiempo: τi unidades temporales dis- en la conseguida a partir del modelo basado en autómatas
cretas. Posteriormente pasará a encontrarse en estado celulares (escenario individual) se puede observar cómo es más
susceptible con probabilidad δi (t). sensible a las interconexiones entre los diferentes elementos
de la red. Como se ha comentado anteriormente, el modelo
Consecuentemente, las respectivas funciones de transición discreto permite obtener también la evolución individual de
Simulación de la propagación del malware: Modelos continuos vs. modelos discretos 143

Recuperados Tabla II: Valores de los parámetros en el escenario individua-


80
lizado
60
Parámetro Valores (usuarios tipo A) Valores (usuarios tipo B)
40 δi 0,25 ≤ δi ≤ 0,5 0,5 ≤ δi ≤ 0,75
Infectados βi 0,25 ≤ βi ≤ 0,5 0,5 ≤ βi ≤ 0,75
20
φi 0,5 ≤ φi ≤ 1 0 ≤ φi ≤ 0,5
Susceptibles
γi 0,5 ≤ γi ≤ 0,75 0,1 ≤ γi ≤ 0,4
20 40 60 80 100
τi 1 ≤ τi ≤ 10 1 ≤ τi ≤ 10
(a)
100
Recuperados 80
80
Recuperados
60
60

40
40
Susceptibles
Infectados 20
20 Susceptibles
Infectados
10 20 30 40 50
20 40 60 80 100

(b) (a)

Figura 1: Evolución global de las diferentes clases en un


escenario homogéneo. (a) Modelo continuo de Feng et al. (b)
Modelo discreto propuesto en este trabajo.

(b)

Figura 3: Evolución de las diferentes clases en un escenario


individual con topologı́a definida por un grafo completo. (a)
Figura 2: Evolución individual de una colección de ordena- Dinámica global (b) Dinámica individual.
dores: cada columna representa un ordenador de manera que
el estado susceptible se representa en color verde, el estado
infectado en color rojo, y el estado recuperado en color azul. valores son meramente ilustrativos). Se supondrá además que
los ordenadores se reparten por igual entre los dos tipos.
En la figura 3 se puede observar la evolución tanto global
cada uno de los ordenadores de la red. En la figura 2 se puede (figura 3-(a)) como individual (figura 3-(b)) de los ordenadores
observar el diagrama de evolución de estados de una serie de la red. Obsérvese que los ordenadores correspondientes al
de ordenadores: cada columna representa la evolución de un tipo A (cuya evolución viene representada por la primera mitad
ordenador diferente. de columnas de la figura 3-(b)) se infectan prácticamente en
Por otro lado, y dentro del escenario individualizado, su- la misma proporción que el resto pero se recuperan antes y
pondremos en primer lugar que se mantienen las conexiones permanecen en dicho estado mucho más tiempo que el resto.
según un grafo completo (todo ordenador está conectado Por otra parte, y dentro del escenario individualizado,
con el resto) y que la población se divide en dos grupos supondremos a continuación que la topologı́a de la red de
atendiendo a las caracterı́sticas y prácticas de seguridad que ordenadores no viene definida por un grafo completo sino por
presentan y tienen tanto los ordenadores como sus usuarios. el grafo que se muestra en la figura 4 (en gris se encuentran
El tipo A estará definido por aquellos ordenadores y usuarios representados los ordenadores del tipo A, mientras que en
asociados que se preocupen por la seguridad (tengan sistemas negro se colorean los ordenadores correspondientes al tipo
operativos y software antivirus instalado y actualizado, tengan B). En este caso supondremos que los parámetros siguen lo
prácticas seguras en el uso de Internet, etc.), mientras que establecido en la tabla II. En la figura 5 se ilustra la situación
el tipo B lo constituirán aquellos dispositivos y usuarios con que presenta la red en tres instantes de tiempo: t = 0, 3 y
prácticas más relajadas en temas de seguridad. En la tabla II t = 6.
se muestra el rango de valores numéricos asignados a cada Obsérvese que los ordenadores del cúmulo de la izquierda
uno de los parámetros para cada uno de los tipos (estos (todos ellos pertenecientes al tipo A) tardan más tiempo en
144 A. Fúster Sabater, A. Martı́n del Rey, G. Rodrı́guez Sánchez

que se suponen las condiciones de los modelos continuos) son


similares en ambos modelos cuando el número de ordenadores
es elevado. Asimismo, se han realizado también simulaciones
Figura 4: Grafo que define la topologı́a de la red. en el caso individual (cuando los valores de los parámetros
varı́an con el ordenador) y se han mostrado tanto la evolución
global como la individual (cosa que no es posible con el
modelo basado en ecuaciones diferenciales). Se comprueba
como el modelo basado en autómatas celulares es más sensible
t=0
a las conexiones locales entre los diferentes elementos de la
red; asimismo, produce resultados más ajustados a la realidad
que el modelo basado en ecuaciones diferenciales cuando el
número de ordenadores es pequeño.
t=3 AGRADECIMIENTOS
Este trabajo ha sido subvencionado por el Ministerio de Economı́a
y Competitividad bajo el proyecto TUERI (TIN2011-25452) y por la
Consejerı́a de Educación de la Junta de Castilla y León.
t=6
R EFERENCIAS
Figura 5: Evolución individual de las diferentes clases. [1] J. Amador, J.R. Artalejo, “Modeling computer virus with the BSDE
approach,”Computer Networks, vol. 57, pp. 302-316, 2013.
[2] J. Amador, J.R. Artalejo, “Stochastic modeling of computer virus
spreading with warming signals,”Journal of the Franklin Institute, vol.
infectarse que el resto de los ordenadores. Asimismo, se 350, pp. 1112-1138, 2013.
comprueba cómo más del 50 % de los ordenadores del cúmulo [3] L. Feng, X. Liao, Q. Han, H. Li, “Dynamical analysis and control strate-
gies on malware propagation model,” Applied Mathematical Modelling,
de la derecha (todos ellos son del tipo B) se infectan en los 5 vol. 37, pp. 8225–8236, 2013.
primeros pasos de tiempo. [4] J. Hao, J. YIN, B. Zhang, “Modeling viral agents and their dynamics
with persistent turing machines and cellular automata,”Lecture Notes in
Computer Science, vol. 4088, pp. 690-695, 2006.
[5] W.O. Kermack, A.G. McKendrick, “A Contribution to the Mathematical
V. C ONCLUSIONES Theory of Epidemics,”Proceedings of the Royal Society A: Mathemati-
Los modelos matemáticos diseñados para simular la pro- cal, Physical and Engineering Sciences, vol. 115, pp. 700-721, 1927.
[6] S. Kondakci, “Epidemic state analysis of computers under malware
pagación de malware en redes de ordenadores son eminente- attacks,”Simulation Modelling Practice and Theory, Vol. 16, pp. 571-
mente de naturaleza determinista y continua, y su dinámica se 584, 2008.
basa en sistemas de ecuaciones diferenciales ordinarias. [7] A. Martı́n del Rey, “A Computer Virus Spread Model Based On Cellular
Automata of Graphs,”Lecture Notes in Computer Science, vol. 5518, pp.
Estos modelos, debido al paradigma en el que se fundamen- 503-506, 2009.
tan, presentan las siguientes deficiencias: [8] A. Martı́n del Rey, “A SIR e-Epidemic model for computer worms based
on cellular automata,”Lecture Notes in Artificial Intelligence, vol. 8109,
(a) Consideran que todos los ordenadores se encuentran pp. 228-238, 2013.
conectados entre sı́. Consecuentemente no se tienen en [9] A. Martı́n del Rey, G. Rodrı́guez Sánchez, “A discrete mathematical
cuenta la conexiones locales entre los elementos de la model to simulate malware spreading,”International Journal of Modern
Physics C, vol. 23, paper id. 1250064, 2012.
red. [10] M. Meisel, V. Pappas, L. Zhang, “A taxonomy of biologically inspired
(b) No tienen en cuenta las caracterı́sticas individuales de research in computer networking,”Computers Networks, vol. 54, pp. 901-
los ordenadores que forma la red, esto es, los parámetros 916, 2010.
[11] B.K. Mishra, N. Keshri, “Mathematical model on the transmission of
de los que depende la dinámica del malware, son globa- worms in wireless sensor network,”Applied Mathematical Modelling,
les: se utilizan los mismos para todos los ordenadores. vol. 37, pp. 4103-4111,2012.
[12] B.K. Mishra, D.K. Saini, “SEIRS epidemic model with delay for trans-
Estos problemas se pueden solventar si basamos los modelos mission of malicious objects in computer network,”Applied Mathematics
en otro tipo de herramientas matemáticas que permitan incor- and Computation, vol. 188, pp. 1476-1482, 2007.
porar las caracterı́sticas propias de cada uno de los ordenado- [13] J. Ren, X. Yang, L.X. Yang, Y. Xu, F. Yang, “A delayed computer virus
propagation model and its dynamics,”Chaos, Solitons & Fractals, vol.
res, a saber: tipo de sistema operativo instalado y frecuencia 45, pp. 74-79, 2012.
con la que se actualiza, tipo de software de seguridad instalado [14] M. Rice, J. Butts, R. Miller, S. Shenoi, “Applying public health stra-
(firewall, software antivirus, etc.), concienciación del usuario tegies to the protection of cyberspace,”International Journal of Critical
Infrastructure Protection, vol. 3, pp.118-127, 2010.
en temas de seguridad, prácticas del usuario, etc. [15] O.A. Toutonji, S.M. Yoo, M. Park, “Stability analysis of VEISV
Ası́ se considera el uso de los autómatas celulares como propagation modeling for network worm attack,”Applied Mathematical
posible herramienta para el diseño de dichos modelos. En este Modelling, vol. 36, pp. 2751-2761, 2012.
[16] S. Wolfram, “A New Kind of Science,” Champaign, IL: Wolfram Media
sentido se estudia el modelo basado en ecuaciones diferencia- Inc., 2002.
les propuesto por Feng et al. y se propone una alternativa al [17] Y. Yao, L. Guo, H. Guo, G. Yu, F.X. Gao, X.J. Tong, “Pulse qua-
mismo basada en un autómata celular booleano. Se comprueba rantine strategy of internet worm propagation: Modeling and analy-
sis,”Computers and Electrical Engineering,vol. 38, pp. 1047-1061, 2012.
que las simulaciones obtenidas en el caso homogéneo (en el
RECSI 2014, Alicante, 2-5 septiembre 2014

Contramedidas en la suplantación de autoridades de


certificación. Certificate pinning
Alfonso Muñoz Antonio Guzmán Sergio de los Santos
Telefonica Digital Identity - Privacy Telefonica Digital Identity - Privacy Telefonica Digital Identity - Privacy
Security researcher Security researcher Security researcher
Email: alfonso.munoz@11paths.com Email: antonio.guzman@11paths.com Email: sergio.delossantos@11paths.com

Resumen—La importancia de asegurar la comunicación entre actores que participan en una comunicación. Hoy dı́a, es
personas ha crecido a medida que se ha avanzado en la sofistica- posible establecer comunicaciones seguras en Internet de una
ción y el alcance de los mecanismos provistos para ello. Ahora, manera escalable gracias a la criptografı́a de clave pública,
en la era digital, el alcance de estas comunicaciones es global y
surge la necesidad de confiar en infraestructuras que suplan la los certificados digitales, tı́picamente certificados X.509v3, y
imposibilidad de identificar a ambos extremos de la comunica- las infraestructuras de clave pública. Todas estas tecnologı́as y
ción. Es la infraestructura de autoridades de certificación y la algoritmos permiten a un navegador web, utilizando protocolo
gestión correcta de certificados digitales la que ha facilitado una HTTP/TLS=HTTPS, establecer comunicaciones seguras ga-
aproximación más eficiente para cubrir esta demanda. Existen, rantizando su confidencialidad (se negocia una clave simétrica
sin embargo, algunos aspectos de esta infraestructura o de
la implementación de algunos de sus mecanismos que pueden para cifrar la información), integridad y autenticidad. En
ser aprovechados para vulnerar la seguridad que su uso debe la actualidad, escenarios tan importantes como el comercio
garantizar. La presente investigación profundiza en alguno de electrónico o la firma electrónica no serı́an posibles sin estas
estos aspectos y analiza la validez de las soluciones propuestas garantı́as. Es tal la importancia de estas tecnologı́as que es
por grandes productores de software frente a escenarios realistas. vital analizar las amenazas existentes que pudieran vulnerar
Palabras clave—certificate pinning, certificado digital, identi-
ficación, confidencialidad sus principios, ası́ como proponer contramedidas siempre que
fuera posible.
I. I NTRODUCCI ÓN II-A. Amenazas
La presente investigación revisa algunos de los aspectos que En la actualidad, las amenazas vienen fundamentalmente
son relativos a la seguridad de la identificación digital median- de tres vı́as: problemas en la implementación de los
te certificados digitales. Para ello se propone un estado del arte mecanismos que garantizan estos escenarios o debilidades
actualizado sobre esta cuestión y se presta especial interés al en los algoritmos utilizados en la gestión de los certificados
concepto de certificate pinning y cómo éste se está utilizando digitales, vulnerabilidades de la interfaz de usuario y la
en la actualidad para asegurar las comunicaciones en Internet. posibilidad de suplantación de elementos en la cadena de
Este artı́culo está estructurado en cinco apartados. El primer certificación que garantiza la autorı́a de una clave pública.
apartado refleja la estructura del artı́culo. El apartado segundo
analiza la identificación mediante certificados digitales focali- Problemas derivados de fallos criptográficos e imple-
zado en tres grandes retos (criptográficos, de interfaces y de mentación
cadena de certificación), ası́ como las contramedidas posibles Toda la seguridad de los certificados digitales recae en
a las amenazas sobre los mismos. El tercer apartado introduce la robustez e implementación adecuada de los algoritmos
el concepto de certificate pinning. Por último, en el apartado criptográficos utilizados (cifrado y hash). En los últimos
cuarto se reflejan nuestros estudios sobre la implementación años se han documentado casos graves de vulneración de
actual del certificate pinning en navegadores web, concluyendo comunicaciones cuando esto no se produce. Entre los más
en el apartado quinto con diferentes conclusiones sobre la significativos destacan la investigación de Luciano Bello de-
investigación realizada. mostrando la implementación incorrecta de OpenSSL que
permitı́a invertir procesos criptográficos [1], la investigación de
II. A MENAZAS Y CONTRAMEDIDAS DEFINIDAS SOBRE LA Alexander Sotirov et al. [2] falsificando certificados digitales
INFRAESTRUCTURA PARA LA GESTI ÓN DE CERTIFICADOS
aprovechando ataques de colisión al algoritmo MD5 o la
DIGITALES
investigación de Moxie Marlinspike [3] que descubrió que
La identificación de entidades en las comunicaciones en las autoridades de certificación no validan adecuadamente el
Internet es un paso fundamental para proporcionar toda una campo CN (Common Name), al firmar un certificado, y por
serie de servicios apoyados en los clásicos mecanismos de tanto era factible utilizar una codificación especial para hacer
seguridad, como son la confidencialidad, integridad y auten- enmascarar un dominio ilegı́timo haciendo pensar al usuario
ticidad, tanto de la información intercambiada como de los que está viendo uno legı́timo.
146 A. Muñoz, A. Guzmán, S. de los Santos

Vulnerabilidades de las interfaces de usuario Suplantación de la cadena de certificación


La seguridad en Internet se apoya en la confianza en
Los terminales que se utilizan para comunicaciones en autoridades intermedias que certificarán la autenticidad de
Internet suelen ser terminales inseguros por definición, un certificado digital. Esta confianza ejecutada de manera
clásicamente, el computador de sobremesa o los dispositivos recursiva a diferentes niveles, hasta resolver la autenticidad de
móviles. Si es posible manipular su configuración o instalar un certificado digital de un usuario, se conoce como cadena de
malware, cualquier sistema de seguridad será anulado. Por certificación. En los últimos años multitud de ataques se han
ejemplo, en el caso del eDNI, esto ha sido puesto de centrado en suplantar a autoridades o certificados pertenecien-
manifiesto en diversas ocasiones [4]. Si se parte del supuesto tes a la cadena de certificación con un objetivo claro: un certi-
que la seguridad del sistema no se ha comprometido, entonces ficado falso validado por la cadena de certificación será dado
se puede concluir que parte de las amenazas estarán basadas como bueno y por tanto se podrán suplantar dominios válidos.
en que es posible engañar al usuario aprovechándose de Algunos sucesos significativos han sido: compromiso de la
particularidades de la interfaz de usuario (su configuración y CA Comodo, compromiso CA Diginotar [10], CA TurkTrust
el modo que opera el usuario con ella), es decir, tı́picamente [11], virus Flame [12] (firmado de código y suplantación de
el navegador web. Posiblemente el ejemplo más representativo Windows update), certificado Adobe (firmado de herramientas
es el intento de hacer aceptar a un usuario un certificado ilegı́timas) [13], etc.
como válido cuando el navegador le indica que no lo es
(al final es decisión del usuario aceptarlo o rechazarlo). Por II-B. Contramedidas
desgracia, en determinados escenarios esta decisión podrı́a ser Las amenazas reflejadas en el apartado anterior tienen
transparente al usuario y no ser consciente de la suplantación. soluciones diferentes. Las dos primeras amenazas aunque no
El investigador Moxie Marlinspike descubrió en 2009 que resueltas de manera global pueden ser mitigadas con buenas
una configuración incorrecta del protocolo OCSP (Online prácticas y sistemas robustos de actualización. Por ejemplo,
Certificate Status Protocol) simplificarı́a ataques al protocolo en el caso de la navegación segura en Internet utilizando
SSL [5]. OCSP es un protocolo de consulta online para saber el protocolo HTTP/SSL existen recomendaciones que son
si un determinado certificado digital ha sido revocado o no. necesarias conocer [14]. No obstante, el usuario siempre puede
Para ello, el cliente envı́a la petición a la dirección de la tomar algunas medidas adicionales, que aunque requieran
CRL (Certificate Revocation List), que viene indicada en el cierta configuración, pueden ser de utilidad en la mitigación.
propio certificado digital. Si un atacante está haciendo un Por ejemplo, el uso de extensiones en el navegador web para
ataque de hombre en el medio para utilizar uno de estos forzar siempre de manera automática la conexión https a un
certificados digitales, entonces también puede interceptar dominio si ésta existe (add-on Firefox https everywhere [15]),
las peticiones OCSP y utilizarlas en su provecho. En un la configuración adecuada de los protocolos que verifican el
funcionamiento normal, un servidor mediante este protocolo estado de revocación de un certificado digital o una postura
podrı́a enviar una respuesta Try Later indicando al cliente más activa que permita al usuario comprobar la seguridad
que ahora no puede atender una petición. El atacante podrı́a del servidor web con el que se comunica. Para ello una
simular esta contestación, que tiene asignado el código herramienta de gran utilidad es la herramienta TLSSLed [16].
3, para indicar al cliente que ahora no puede atender su Por otro lado, si se centra la atención en la última amenaza
petición. Ante esta situación muchos clientes web aceptaban destacada en el apartado anterior, “suplantación de elementos
el certificado digital al no poder corroborar su validez. En en la cadena de certificación”, la bibliografı́a publicada en
la práctica muchos esfuerzos se han realizado en el pasado, cuanto a contramedidas y la evolución de las mismas en
ataques y herramientas, para engañar al usuario. Un ejemplo entornos reales es, a nuestro entender, escasa. En la actua-
significativo es la herramienta SSLstrip, del investigador lidad este tema se ha abordado de manera individual en los
Moxie Marlinskpe [6], que intenta engañar al usuario de extremos de la comunicación. Desde el punto de vista del
la siguiente forma: cuando se llama a una página web, se desarrollador de una PKI, cómo implementarla y protegerla
sustituyen todos los enlaces https por http, con la intención para evitar suplantaciones [17] [18]. Desde el punto de vista
que la comunicación entre el cliente y el atacante sea por http del usuario instalar y configurar contramedidas para detectar
y la comunicación entre atacante y servidor por https. Para posibles plagios y modificaciones en certificados digitales. Un
engañar a usuarios menos formados se simula el candado ejemplo de lo anterior consistirı́a en reducir los vectores de
amarillo cargando esta imagen en el favicon. En los últimos ataque bloqueando autoridades de certificación en función de
años se ha documentado también un especial interés en la su procedencia geográfica [20]. Esto minimiza el impacto de
detección de malas implementaciones por parte del interfaz certificados (y por tanto dominios web) firmados por orga-
del usuario, navegador web, de protocolos de seguridad. Los nizaciones que podrı́an ser más sobornables o manipulables
ataques más significativos han sido BEAST [7], CRIME en determinados paı́ses. En el caso más extremo, algunos
[8] y BREACH [9], que se apoyaban en implementaciones investigadores como Moxie Marlinspike han propuesto, con
inadecuadas del protocolo TLS/SSL permitiendo, bajo ciertas la extensión Firefox denominada Convergence [21], no sin
condiciones, descifrar una comunicación (cookies de sesión). inconvenientes, delegar la confianza de si un certificado es
válido en la decisión de un número de usuarios en red,
Contramedidas en la suplantación de autoridades de certificación. Certificate pinning 147

conceptualmente en una aproximación similar al concepto de extiende su utilización, las soluciones existentes se centran
anillo de claves de confianza en GPG. en la realización de cambios, más o menos complejos, a
De todas las contramedidas documentadas una técnica que los navegadores y protocolos utilizados para acercarse al
está comenzando a mostrar gran utilidad es garantizar de concepto de pinning. Entre las propuestas analizadas son
manera transparente y automatizada la cadena de certificación destacables:
para evitar ataques derivados de suplantación de entidades
intermedias. Esta contramedida se conoce como certificate Proyecto DANE (DNS-Based Authentication of Named
pinning. Entities) [26]. El IETF normaliza en la RFC 6698 la
posibilidad de vincular el protocolo TLS a dominios
III. C ERTIFICATE P INNING . R EDUCIENDO VECTORES DE especı́ficos realizando ciertas modificaciones al protocolo
ATAQUE
DNS. Lógicamente se debe confiar en la validez del
El problema principal en la suplantación de autoridades firmador de ese certificado, y como ya se ha visto éste
intermedias en una cadena de certificación, necesaria para es uno de los problemas actuales de las autoridades de
validar la autenticidad de un certificado digital asociada a certificación en Internet. Una aproximación a la solución de
un dominio, reside en que los navegadores web no tienen este problema consistirı́a en la utilización de DNSSEC (DNS
la capacidad, por defecto, de detectar que la cadena de Security Extensions), pudiendo vincular claves criptográficas
confianza se ha modificado (que no comprometido), ya que (certificados) a nombres de dominio DNS (en lugar de a
el certificado/CA comprometido estará firmado por una CA cadenas de texto más o menos arbitrarias presentes en un
válida que a su vez depende de una CA de nivel superior de certificado). En este sentido, el proyecto DANE (DNS-Based
la cual se confı́a y no ha sido comprometida. Authentication of Named Entities) proporciona la posibilidad
La idea detrás del certificate pinning reside precisamente de utilizar la infraestructura DNSSEC para almacenar y firmar
en poder detectar cuándo una cadena de confianza ha sido claves/certificados que serán utilizados en TLS.
modificada. Para ello se busca asociar inequı́vocamente un cer-
tificado digital a un dominio concreto (se recuerda certificados Proyecto TACKS (Trust Assertions for Certificate Key)
presentes en una cadena de certificación). De esta forma, un [27]. Moxie Marlinspike y T. Perrie en su propuesta TACKS
dominio A, por ejemplo www.google.com, estará vinculado a (internet-draft) proponen una extensión al propio protocolo
un certificado/autoridad de certificación B especı́fico. Si una TLS para permitir el registro de la cadena de certificación
autoridad de certificación B’ diferente (que depende de una au- de los certificados digitales. La idea es que un cliente
toridad de certificación raı́z de la que se confı́a) intenta emitir intentando conectar a un servidor protegido pudiera resolver
un certificado asociado al dominio A este hecho generará una esta asociación a nivel de conexión TLS.
alerta. La cadena de certificación no ha tenido por qué ser
comprometida, pero sı́ se detecta que ha sido modificada.
Esta caracterı́stica hubiera permitido detectar ataques recientes IV. A NALISIS DE IMPLEMENTACIONES DE CERTIFICATE
derivados del compromiso de entidades intermedias, como fue PINNING . NAVEGADORES WEB
el caso del compromiso de la CA de Comodo [10]. Las propuestas reflejadas en el apartado anterior muestran
En la práctica, a dı́a de hoy no existe consenso en cómo
diferentes intentos para llevar a la práctica el concepto del
llevar estos principios al mundo real. Aunque todavı́a no existe
certificate pinning como contramedida para los problemas
ningún estándar se están comenzando a vislumbrar trabajos derivados de ataques a la cadena de certificación. Por des-
más maduros en esta dirección [22][25][26]. En febrero gracia, como se ha indicado anteriormente, no existe a dı́a
del 2014 se publicó un borrador de RFC [22] en el que el de hoy una solución estándar, aunque diferentes fabricantes
IETF estudia la posibilidad de que el concepto de certificateestán realizando implementaciones propietarias buscando las
pinning se incluya directamente en el protocolo HTTP. Con ventajas de esta contramedida. En este apartado se indaga
esta futura modificación al protocolo los dominios enviarı́an
en la implementación del certificate pinning en algunos de
información HTTP al navegador sobre sus certificados los navegadores más utilizados, destacando sus ventajas e
utilizando cabeceras HTTP: inconvenientes.
Para el análisis de todos ellos se parte del siguiente es-
Public-Key-Pins: cenario genérico de prueba. En el cual se considera que las
pin-sha1=’’4n972HfV354KP560yw4uqe/baXc=’’;
pin-sha1=’’qvTGHdzF6KLavt4PO0gs2a6pQ00=’’; comunicaciones que utilicen protocolo SSL utilizarán certifi-
pin-sha256= cados digitales que podrán ser validados por una cadena de
’’LPJNul+wow4m6DsqxbninhsWHlwfp0JecwQzYpOLm\\CQ=’’; certificación. Tı́picamente una autoridad certificadora hoja y
max-age=10000;
includeSubDomains raı́z, y una o más autoridades de certificación intermedias.
Este escenario genérico implementado en nuestros análisis
En esta propuesta de RFC, en esencia, se propone enviar permitirá analizar diferentes escenarios donde la cadena de
un hash por clave pública a pinear (pin-sha1 o pin-sha256) certificación, sin comprometerse, se modifica de alguna forma.
y el tiempo máximo (max-age) en el cual se deberı́a confiar Escenarios clásicos son cuando o el certificado hoja cambia
en esa información. En cualquier caso, y mientras se por algún motivo o alguna autoridad certificadora intermedia
148 A. Muñoz, A. Guzmán, S. de los Santos

Esta solución no está integrada directamente en


el navegador web y su usabilidad es cuestionable.
Requiere configuración local y manual. La solución
debe instalarse y configurarse explı́citamente. Esta tarea
puede simplificarse mediante la herramienta EmetRules
[30].

EMET podrı́a ser utilizado con otros navegadores pe-


ro suele estar contraindicado. Por ejemplo, en el caso
del navegador Chrome, la recomendación oficial es no
utilizarlo ya que afecta negativamente al rendimiento y
no proporciona mayor seguridad que las contramedidas
implementadas por defecto en el navegador [31].
Figura 1. Escenario genérico de prueba con autoridades de certificación

IV-B. Google Chrome


es comprometida. Por ejemplo, un escenario de prueba es en
Google aborda el problema de la confianza en un certificado
el que originalmente el navegador confı́a en las autoridades
digital combinando dos principios en su navegador web: HSTS
certificadoras raı́z (CA1 y CA2) y se compromete la autoridad
y pineo de certificados.
certificadora intermedia CA2, generando un certificado para el
Chrome implementa el estándar HSTS (Http Strict Transport
dominio X. Dominio y certificado que fue generado original-
Security). Se trata de una especificación que permite obligar
mente por la autoridad intermedia CA1. Este escenario ha sido
a que, en una página, se use siempre https aunque el usuario
el más habitual en los ataques publicados en los últimos años
no lo escriba en la barra del navegador. La idea fundamental
[10].
es que el servidor web mediante cabeceras http fuerce al
IV-A. Microsoft Internet Explorer navegador web a conectarse directamente por https. Para
Microsoft implementa una aproximación a la funcionalidad ello, el servidor que lo desee debe enviarle una cabecera al
de certificate pinning en su herramienta de seguridad EMET navegador, del tipo:
[28]. El kit de herramientas de experiencia de mitigación Strict-Transport-Security:
mejorada (EMET) es una utilidad que ayuda a prevenir la max-age=16070400;
explotación de vulnerabilidades de seguridad en el software. includeSubDomains
Esta herramienta se aproxima al concepto de certificate
pinning facilitando la unión de dominios con certificados raı́z Esta caracterı́stica aunque interesante tiene un problema. Si
del repositorio de certificados de confianza del usuario o de la primera vez que se realiza una conexión a un servidor (o
la máquina. Mediante la herramienta Process Explorer [29] se cuando la información enviada expire) se realiza en una red
puede observar cómo se inyecta la librerı́a EMET CE.DLL hostil, ataque de hombre en el medio, se demuestra que la
en el proceso de Internet Explorer lo que permite, mediante información enviada vı́a cabeceras http puede ser suprimida
su configuración, analizar si el dominio al que supuestamente o modificada, engañando al navegador (hasta que expire la
pertenece un certificado digital coincide con una regla de información: max-age). Precisamente por este motivo es útil
configuración definida en EMET. Si no fuera ası́ se avisa con utilizar una protección extra que propone Chrome y es la
una pequeña ventana emergente. Por desgracia, la apuesta de posibilidad de incorporar dominios bajo petición. La idea es
Microsoft resulta ser un mecanismo poco usable para usuarios que Chrome bajo petición (alg@chromium.com) incorpora en
no formados. su código fuente [32] forzar la conexión HTTPS para los
Aunque por defecto vienen preconfigurados algunos dominios reflejados. Es los que se conoce como Preloaded
dominios populares (Facebook, Twitter, etc.) esta solución HSTS sites. Lógicamente esta solución no parece escalable a
todavı́a presenta una serie de inconvenientes reseñables: largo plazo.
En cualquier caso, aunque interesante, la protección anterior
EMET realiza pineo exclusivamente a certificados no protege frente a un escenario de ataque basado en certifi-
creados por autoridades raı́z registradas en el almacén cados intermedios diferentes o emitidos de forma fraudulenta.
de certificados del sistema operativo Windows. Cualquier La cadena de certificación se ha modificado pero no se ha
compromiso de una CA intermedia/hoja que tenga una roto. En este caso Chrome, complementa la medida anterior,
CA raı́z de la cual se confı́a no podrá ser detectado. con una aproximación al concepto de certificate pinning.
Por tanto, se podrı́an generar certificados para dominios Antes de analizar las formas en las que Chrome puede reali-
válidos, por ejemplo www.google.com, desde una CA zar pinneo es importante entender cómo valida los certificados
que no sea la creadora original del mismo (cadena de digitales con los que opera.
certificación modificada aunque no comprometida). En la validación de certificados Chrome no comprueba el
certificado completo para calcular su validez, sólo la clave
Contramedidas en la suplantación de autoridades de certificación. Certificate pinning 149

pública asociada a él (SubjectPublicKey+ SubjectPublicKeyIn-


fo). Tradicionalmente los navegadores, y otras herramientas,
calculan el hash del certificado completo como huella digital
(fingerprint) para identificarlo, esto incluye el hash de todos
y cada uno de los datos del certificado, no el hash de la
clave pública en sı́. Por ejemplo, si se cambia la fecha de
caducidad o cualquier otro dato Chrome no se dará cuenta.
Esto no es necesariamente negativo, en función del entorno
esta flexibilidad podrı́a evitar falsas alarmas.
Una vez resuelto cómo valida Chrome los certificados es
importante responder a la siguiente pregunta ¿cómo realiza el
pinneo? Chrome soporta pineo de certificados mediante dos
mecanismos:

1. Servidores que soportan el borrador de RFC [22].


Mediante envı́o de cabeceras HTTP un servidor enviará a
un navegador información de los certificados que tiene que
recordar y por tanto pinear (en este escenario surge el mismo
problema de posible ataque MitM visto con HSTS). Por
ejemplo:

curl -i --insecure https://stalkr.net


Strict-Transport-Security: max-age=315360000
Public-Key-Pins: max-age=31536000; Figura 2. Detección de certificado pineado por Google
pin-sha256="byhRQJ1xBQSjURWry5pt0/JXfsk3ye8ZO

2. Pineo establecido en el códi-


go fuente del navegador. En ¿Detecta Chrome autoridades de certificación suplan-
https://src.chromium.org/svn/branches/1312/src/net/base/transp tadas?
ort security state static.h puede comprobarse como Chrome El objetivo de Chrome es intentar detectar cuándo un
pinea por defecto una serie de certificados digitales dominio válido, emitido originalmente por una autoridad cer-
almacenando el hash de la clave pública, más exactamente el tificadora intermedia (la cual se pinea), es emitido por otra
hash sha1 en base64 con el SubjectPublicKeyInfo y la propia autoridad certificadora diferente pero en la que también se
clave pública. Por ejemplo: VeriSignClass3, Google2048, confı́a porque se confı́a en una autoridad superior (tı́picamente
GeoTrustGlobal, etc. Al menos, pinea autoridades de raı́z). Es posible detectar este escenario de cadena de certi-
certificación responsables de certificados digitales de ficación modificada pero no por ello comprometida, lo que
servicios variados de Google. supone un escenario real, y de gran utilidad como resultado
Debe tenerse en cuenta que Chrome ignorará el pineo de los recientes ataques documentados [10].
si un certificado raı́z es instalado por el usuario. La razón
fundamental recae en posibilitar instalar certificados cuando ¿Qué cambios no detecta Chrome?
soluciones antivirus o proxies instalados en entornos corpora- Chrome, por defecto, no detecta cambios en ningún ele-
tivos necesitan inspeccionar el tráfico SSL [24]. mento de la cadena diferente a la autoridad de certificación
Por tanto, conocido lo anterior, ¿qué certificados puede intermedia que pinea. Por tanto, cualquier ataque que modi-
pinear Chrome? En principio, Chrome podrı́a asociar un fique la cadena a nivel de certificado hoja, raı́z o cualquier
dominio a cualquier certificado en cualquier punto de la otro elemento intermedio no será detectado. Para minimizar
cadena de certificación. En la práctica, se demuestra que este efecto los servidores deberı́an implementar los principios
Chrome solo pinea el certificado de una autoridad certificadora del borrador de RFC [22] y enviar información de pineo al
intermedia y el de una autoridad certificadora de backup. navegador.
Es posible comprobar este hecho introduciendo la siguiente
url chrome://net-internals/#hsts en el navegador Chrome y IV-C. Firefox
realizando consultas a un dominio deseado. Por ejemplo, Firefox no implementa ningún mecanismo intrı́nseco de
para www.google.com se observa: domain:google.com pineo de certificados. Lo más parecido a esta aproximación
pubkey hashes: sha1/vq7OyjSnqOco9nyMCDGdy77eijM=, es el uso del add-on Certificate Patrol [19] que monitoriza los
sha1/Q9rWMO5T+KmAym79hfRqo3mQ4Oo=. cambios en certificados digitales de servidores a los que un
Este análisis permite inferir las siguientes conclusiones usuario se conecta habitualmente. De todos los navegadores
respecto a este navegador: analizados es la única herramienta que alerta de cualquier
150 A. Muñoz, A. Guzmán, S. de los Santos

modificación en la cadena de certificación. Aunque esto puede [3] M. Marlinspike, ‘New Tricks For Defeating SSL In Practice‘,”
resultar muy interesante tiene varios inconvenientes claros: BlackHat-DC09, https://www.blackhat.com/presentations/bh-dc-09/
Marlinspike/BlackHat-DC-09-Marlinspike-Defeating-SSL.pdf
a) En función de la complejidad de la organización que [4] G.Gonzalez, ‘Man-in-remote: PKCS11 for fun and non-profit‘,” Rooted-
proporcione acceso web a un servicio es común que los cer- Con 2011, 3-5 Marzo 2011 Madrid. http://www.slideshare.net/rootedcon/
tificados hoja cambien por múltiples cuestiones, por ejemplo, gabriel-gonzalez-maninremote-pkcs11-for-fun-and-nonprofit-rootedcon-2011
[5] M. Marlinspike, ’Defeating OCSP with the character ’3”,” ,Julio 2009.
varios certificados para balanceo de carga, etc. No parece muy http://www.thoughtcrime.org/papers/ocsp-attack.pdf
conveniente el pineo de certificados hoja. Alertar el cambio [6] M. Marlinspike, ’more tricks for defeating ssl in practice’,” Defcon 17,
puede saturar al usuario con alertas, muchas de las cuales no 2009. https://www.defcon.org/html/links/dc-archives/dc-17-archive.html
[7] J.Rizzo, T. Duong ‘BEAST: Surprising crypto attack against https‘,”
sabrá discernir como ataque. Ekoparty Security Conference 9o edición. 2011
b) La herramienta recuerda el primer certificado visto. Si [8] J.Rizzo, T. Duong, ‘The Crime Attack‘,” Ekoparty Security Conference
se conecta por primera vez a una servidor web desde una 10o edición. 2012
[9] A.Prado, N. Harris, Y. Gluck, ‘BREACH: Browser Reconnaissan-
red hostil, hombre en el medio que inyecta tráfico, se podrı́a ce & Exfiltration via Adaptive Compression of Hypertext‘,” http://
recordar un certificado inválido. breachattack.com/#howitworks
[10] R. Mandalia, ‘Security Breach in CA Networks -Comodo, DigiNotar,
GlobalSign‘,” , April 2012, http://blog.isc2.org/isc2 blog/2012/04/test.
V. C ONCLUSIONES html
[11] C. Wisniewski, ‘Turkish Certificate Authority scre-
El presente artı́culo establece un estudio del estado arte wup leads to attempted Google impersonation‘,” ,
centrado en la problemática de ataques a la identificación April 2013, http://nakedsecurity.sophos.com/2013/01/04/
basada en certificados digitales. El estudio se centra en el turkish-certificate-authority-screwup-leads-to-attempted-google-impersonation/
[12] S. de los Santos, ‘TheFlame, el sueño de todo creador de
análisis y experimentación de las protecciones actuales frente malware‘,” , Junio 2012. http://unaaldia.hispasec.com/2012/06/
a la modificación, que no compromiso, de las cadenas de theflame-el-sueno-de-todo-creador-de.html
certificación que certificarán o no la validez de un certificado [13] Security @adobe, ‘Inappropriate Use of Adobe Code Signing
Certificate‘,” , Sept 2012. http://blogs.adobe.com/security/2012/09/
digital. inappropriate-use-of-adobe-code-signing-certificate.html
Se ha analizado las herramientas más comunes de comu- [14] C. Meyer, J. Schwenk, ‘Lessons Learned From Previous SSL/TLS
nicación web en Internet, navegadores web, y se demuestra Attacks. A Brief Chronology Of Attacks And Weaknesses‘,” https:
//eprint.iacr.org/2013/049.pdf
que ninguna de ellas está exenta de problemas ni permite [15] EFF, ‘Https everywhere‘,” https://www.eff.org/https-everywhere
solucionar de manera completa el problema del compromiso [16] R. Siles, ‘TLSLED‘,” , Feb 2013. http://www.taddong.com/en/lab.html#
de cadenas de certificación. La propuesta más realista es TLSSLED
[17] ETSI, ‘Policy requirements for certification authorities issuing qualified
la implementada por el navegador web Chrome si se tiene certificates (ETSI TS 101 456)‘,” , http://www.etsi.org/deliver/etsi ts/
en mente una serie de limitaciones. Se ha comprobado que 101400 101499/101456/01.01.01 60/ts 101456v010101p.pdf
muchas webs populares a nivel mundial su cadena de certi- [18] Webtrust, ‘WebTrust Program for Certification Authorities‘,” , http://
www.webtrust.org/homepage-documents/item27839.aspx
ficación está compuesta solo por 3 niveles: certificado hoja, [19] C. Loesch, ‘Certificate Patrol‘,” , https://addons.mozilla.org/es/firefox/
autoridad intermedia y autoridad raı́z. Si se presupone que en addon/certificate-patrol/
general pinear un certificado hoja es mala idea porque puede [20] Y. Jesus, ‘SSLcop tool‘,” , http://www.security-projects.com/?SSLCop
[21] M. Marlinspike, ‘Convergence‘,” http://convergence.io/index.html,
cambiar en entornos reales (varios certificados para balanceo [22] C. Evans, C. Palmer, R. Sleevi, ‘Public Key Pinning Extension for
de carga, etc.) y una autoridad raı́z deberı́a ser muy difı́cil de HTTP‘,” https://tools.ietf.org/html/draft-ietf-websec-key-pinning
comprometer, pinear solo la autoridad intermedia puede ser [23] B. Laurie, A. Langley, E. Kasper, ‘Certificate Transparency‘,” http://
tools.ietf.org/html/draft-laurie-pki-sunlight-00
una solución escalable y transparente al usuario. Al final, se [24] ImperialViolet, ‘Public Key pinning‘,” https://www.imperialviolet.org/
define un capa más de protección que, aunque no perfecta, 2011/05/04/pinning.html
proporciona mayores garantı́as en el uso de los servicios más [25] J. Walton, J. Steven, J. Manico, K. Wall, ‘Certificate and Pu-
blic Key Pinning‘,” https://www.owasp.org/index.php/Certificate and
famosos. Public Key Pinning,
Mientras diferentes organismos de normalización, entre [26] P. Hoffman, ‘The DNS-Based Authentication of Named Entities (DA-
ellos el IETF [22][23], y fabricantes intentan diseñar la mejor NE). Transport Layer Security (TLS) Protocol: TLSA‘,” https://www.
rfc-editor.org/rfc/rfc6698.txt,
contramedida basada en el concepto de certificate pinning, a [27] M. Marlinspike, T. Perrin, ‘Tacks‘,” http://tack.io/-http://tack.io/draft.
dı́a de hoy pinear una cadena de certificación completa no html,
es posible en escenarios reales (cambiantes) y si no se pinea [28] Microsoft, ‘Kit de herramientas de Experiencia de mitigación mejora-
da‘,” http://technet.microsoft.com/es-es/security/jj653751,
toda la cadena, como se ha demostrado, quedan escenarios de [29] M. Russinovich, ‘ProcessExplorer‘,” http://technet.microsoft.com/es-es/
ataque que no se pueden detectar. sysinternals/bb896653.aspx,
[30] S. de los santos, ‘EMET Rules‘,” https://www.elevenpaths.com/
R EFERENCIAS labs-tools-emetrules.html,
[31] Chromium projects, ‘Chromium and EMET‘,” http://dev.chromium.org/
[1] L. Bello, M. Bertacchini, “Predictable PRNG In The Vulnera- Home/chromium-security/chromium-and-emet
ble Debian OpenSSL Package. The What And The How,” 25th [32] Chrome, ‘Transport security state static‘,” https://src.chromium.org/
Chaos Communication Congress, Berlin, Germany. December 27- svn/branches/1312/src/net/base/transport security state static.h,
30, 2008 http://events.ccc.de/congress/2008/Fahrplan/attachments/1245
openssl-debian-broken-PRNG
[2] J. Appelbaum, A. Lenstra, D. Molnar, D. Arcne, D. Weger,
‘MD5 considered harmful today Creating a rogue CA certificate‘,”
http://www.win.tue.nl/hashclash/rogue-ca/, December 30, 2008.
RECSI 2014, Alicante, 2-5 septiembre 2014

Simulaciones Software para el Estudio de


Amenazas contra Sistemas SCADA
Joaquin Garcia-Alfaro Cristina Romero-Tris Jose Rubio-Hernan
Telecom SudParis Universitat Rovira i Virgili Telecom SudParis
CNRS Samovar Avd Paı̈sos Catalans, 26 CNRS Samovar
UMR 5157, Evry, France 43007 Tarragona UMR 5157, Evry, France
Email: joaquin.garcia-alfaro@acm.org Email: cristina.romero@urv.cat Email: jose.rubio hernan@telecom-sudparis.eu

Resumen—El objetivo de las tecnologı́as SCADA (acrónimo En este artı́culo, revisamos elementos tradicionales de
de Supervisory Control And Data Acquisition), es proporcionar una arquitectura SCADA, proponemos una arquitectura
control remoto para la supervisión de infraestructuras crı́ticas. de estudio concreta y revisamos una solución existente
Ataques contra tales sistemas suponen un riesgo importante.
Nuestro interés en la temática es poder investigar mejoras en para poder simular por ordenador, los distintos elementos
la seguridad de los sistemas SCADA, usando abstracciones a de la arquitectura de estudio propuesta. A continuación,
nivel de software, herramientas de simulación, dispositivos fı́sicos proponemos una extensión para poder investigar técnicas de
y trazas de datos a partir de sistemas reales. Este artı́culo detección de anomalı́as entre los componentes de las capas
presenta, de manera general, algunas construcciones básicas de inferiores de la arquitectura de estudio. A ese nivel, la mayor
lo que son las tecnologı́as SCADA y sus componentes. Introduce,
también, caracterı́sticas generales de algunos simuladores open parte de técnicas de detección requieren un tratamiento a
source disponibles. Por último, detalla limitaciones y mejoras nivel de las señales intercambiadas por dispositivos tales
potenciales, orientadas a completar el estudio de técnicas de como sensores y actuadores. La mayor parte de las funciones
detección de anomalı́as a nivel de señales fı́sicas entre los en la solución de simulación estudiada se limitan a simular
componentes de sistemas SCADA. ataques contra dispositivos de capas superiores, tales como
Palabras clave—Seguridad TIC, Detección de Intrusiones,
terminales remotos e interfaces intermedias. Nuestra extensión
Sistemas Crı́ticos, Simulación por Ordenador, Sistemas SCADA. permite poder integrar funcionalidad adicional, a partir de
otras plataformas de simulación, mediante el uso de librerı́as
dinámicas compartidas. Como resultado final, esperamos
I. I NTRODUCCI ÓN poder poner en práctica técnicas de co-simulación, sin
importar la naturaleza de los dispositivos evaluados (tanto
SCADA es el acrónimo de Supervisory Control And Data reales como virtuales).
Acquisition (Supervisión, Control y Adquisición de Datos).
Los sistemas SCADA son grandes infraestructuras utilizadas Organización del artı́culo: Las Secciones II y III definen
para recoger y almacenar datos a distancia y en tiempo real. conceptos básicos asociados con tecnologı́as SCADA de uso
Estos sistemas se usan normalmente en la industria y en general. Las Secciones IV y V presentan una arquitectura
arquitecturas crı́ticas, controlando procesos quı́micos, fı́sicos SCADA de ejemplo, y nuestra metodologı́a propuesta para
o de transporte. Algunos ejemplos de sistemas SCADA son evaluar amenazas y contramedidas. La Sección VI finaliza con
el suministro de agua, la generación y distribución de energı́a las conclusiones del artı́culo.
eléctrica o de gas.
Debido a su naturaleza crı́tica, una vulnerabilidad en la II. A RQUITECTURA DE UN S ISTEMA SCADA
seguridad de un sistema SCADA podrı́a tener graves conse-
cuencias si fuera detectada por un atacante. Por esta razón, es Presentamos en esta sección los elementos de una
necesario analizar los posibles ataques y estudiar las contra- arquitectura SCADA tı́pica. La bibliografı́a utilizada se basa
medidas existentes de cualquier sistema SCADA. El problema en [1], [2], [3]. Asumimos que una arquitectura SCADA
es que estos análisis no pueden realizarse sobre sistemas se compone principalmente de los siguientes elementos
reales ya que el coste de reproducir los componentes SCADA (representados, a modo de ejemplo, en la figura 1:
es demasiado elevado, y no se puede asumir el riesgo de
realizar experimentos en sistemas reales en funcionamiento. Interfaces de usuario-máquina (en inglés, Human Machi-
Por consiguiente, es necesario utilizar modelos teóricos y ne Interfaces -HMIs-)
herramientas que permitan simular sistemas SCADA, posibles Unidades de estación maestra (en inglés, Master Terminal
ataques, y contramedidas. Nuestra propuesta pasa por proponer Units -MTUs-)
una virtualización de sistemas SCADA para poder reproducir Unidades de estación remota (en inglés, Remote Terminal
ataques cibernético en un entorno académico. Units -RTUs-)
152 J. Garcia-Alfaro, C. Romero-Tris, J. Rubio-Hernan

Por su parte, los PLCs son frecuentemente representados como


SISTEMAS DE
sensores con capacidad de comunicación. Los PLCs tienen dos
INFORMACIÓN

ventajas principales respecto a los RTUs comercializados: (1)
son dispositivos de uso general, permitiendo una gran variedad
(servidores de la base de datos)
de funciones, y (2) son fı́sicamente compactos, i.e., requieren
menos espacio que otras alternativas.
MTUs/
HMIs

II-D. Sensores y Actuadores
(estaciones de trabajo de los operadores)
Los sensores son dispositivos de captación de medidas
relacionadas con fenómenos fı́sicos, respondiendo a algún
RTUs/
estı́mulo fı́sico. Este estı́mulo se transforma en una señal
PLCs
eléctrica, que a su vez se transforma y se almacena como
datos. Los sensores pueden considerarse como el punto de
(procesadores, módems, antenas)
entrada de un sistema SCADA. Sus datos se envı́an a capas
superiores a través de RTUs y/o PLCs. Los actuadores son
SUBSISTEMAS ENTRADA /SALIDA
dispositivos de control, encargados de gestionar dispositivos
SENSORES
ACTUADORES

externos. Los actuadores pueden considerarse el punto de
- MEDIDORES DE FLUJO
- VÁLVULAS DE CONTROL
salida de un sistema SCADA, recibiendo órdenes de RTUs
- TRANSDUCTORES DE PRESIÓN
- VÁLVULAS ON/OFF

- TRANSMISORES DE NIVEL
- CALENTADORES
y/o PLCs.
- CONMUTADORES& RTDs
- VARIADOR DE VELOCIDAD

- ANALIZADORES (e.g., pH y turbiedad)
- ...

- ...

III. P ROTOCOLOS DE C OMUNICACI ÓN SCADA

Los sistemas SCADA pueden usar una gran variedad de


Figura 1: Elementos de un scenario SCADA de ejemplo protocolos y de patrones de comunicación. A continuación se
muestra un resumen de protocolos de ejemplo, respecto a los
elementos descritos anteriormente.
Controladores lógicos programables (en inglés, Program-
mable Logic Controllers -PLCs-)
III-A. HMI/MTUs ↔ RTUs/PLCs
Sensores y actuadores
La comunicación entre el centro de control (compuesto
II-A. MTUs y HMIs por servidores MTU/HMI) y los dispositivos remotos puede
Los MTUs de un sistema SCADA se localizan en el centro ser o no guiada. Las comunicaciones guiadas se realizan por
de control de la organización. Sirven para dar acceso a la canales eléctricos, redes de teléfono públicas (e.g., un módem
gestión de las comunicaciones, la recogida de datos (generada de acceso telefónico o una lı́nea alquilada) y las WANs de
por los RTUs), el almacenamiento de datos, y el control de la organización. Las comunicaciones no guiadas se realizan
sensores y actuadores conectados a los RTUs. La interfaz por canales radio, satélite y redes inalámbricas (e.g., WPAN,
para los administradores del sistema es proporcionada por los WLAN, WMAM, and WWAN).
HMIs. Se considera que los protocolos que se usan entre el
centro de control y los dispositvos remotos son protocolos
II-B. RTUs
tradicionales (e.g., protocolos basados en TCP/IP), a través
Los RTUs son unidades aisladas de adquisición de datos de redes estándares cableadas o inalámbricas (e.g., GPRS,
y control. Normalmente se trata de dispositivos basados en UMTs, LTE) También es posible el uso de VPNs y de circuitos
un microprocesador que controla y supervisa los componentes dedicados. En el centro de control, se pueden utilizar también
industriales de manera remota. Tienen dos tipos de funciones: protocolos dedicados de tipo OPC (siglas de Object Linking
(1) controlar y recoger datos de los equipos de proceso remo- and Embedding (OLE) for Process Control).
tos, y (2) enviar los datos recogidos a una estación maestra de
supervisión. Los RTUs modernos también pueden comunicarse III-B. RTU/PLC ↔ Sensores/Actuadores
entre ellos (ya sea con cable o de forma inalámbrica)
La comunicación puede ser guiada (por cable) o no guiada
II-C. PLCs (e.g., inalámbrica, basada en tecnologı́as como por ejemplo
Los PLCs son pequeñas máquinas de cómputo con un wifi, bluetooth, y zigbee). Protocolos de ejemplo a este nivel
microprocesador. Las principales diferencias con respecto a son Modbus (e.g., Modbus RTU y Modbus ASCII), PROFI-
los RTUs son el tamaño y la capacidad. Un RTU tiene un NET, DNP3 (DNP3/AGA 1.2 cifrado), EtherCAt, Fieldbus,
mayor número de entradas y salidas que un PLC, y mayor protocolos OPC (OPC AppID y OPC UA). Remitimos al lector
poder de proceso (e.g., para post-procesar los datos recogidos a consultar [1], [2], [3] para más información sobre dichos
antes de generar las alertas para el MTU a través del HMI). protocolos.
Simulaciones Software para el Estudio de Amenazas contra Sistemas SCADA 153

IV. E SCENARIO SCADA DE E JEMPLO control, ası́ como desde los RTUs a los MTUs, utiliza VPNs
Consideramos la arquitectura SCADA siguiente: distribu- a través de redes públicas y privadas (i.e., redes conmutadas
ción de energı́a, distribución de agua, y tratamiento de re- públicas o lı́neas alquiladas para propósitos de supervisión).
siduos. La figura 2 muestra una abstracción del sistema Asumimos que los protocolos se basan en TCP/IP. También
considerado. se asume que la comunicación entre RTUs, PLCs, sensores
y actuadores se realiza a través de enlaces inalámbricos o
SERVICIO   CLIENTES   CLIENTES   DISTRIBUCIÓN   fı́sicos. Los protocolos usados se basan, en general, en Modbus
AGUA   AGUA   ENERGÍA   ENERGÍA  
(por ejemplo, Modbus RTU o ASCII por comunicación serie
o sobre TCP/IP) y DNP3 (por ejemplo, DNP3 AGA 1.2
cifrado). Remitimos al lector a consultar [1], [2], [3] para más
AGUA(MTUs,  HMI)   ENERGÍA  (MTUs,  HMI)   información sobre dichos protocolos.

IV-A. Posibles Ataques a la Seguridad del Sistema


CENTRO   CENTRO   Suponemos que los objetivos del atacante son poner en
DE   DE  
CONTROL CONTROL
riesgo la integridad y la disponibilidad del sistema dscrito. Los
(Agua/  Residuos)     (Energía)   ataques más simples pueden ser basados en eavesdropping,
replay (o ataque de reinyección), e impersonation (o ataque
de suplantación de identidad). Ataques más complejos pueden
RESIDUOS  
ser iniciados como spam, phishing, e inyección de datos en
(MTUs  ,  HMI)   puertos tipo USB. No consideramos ataques a gran escala
(e.g., ataques similares a stuxnet, bien preparados, y con el
TRATAMIENTO   PRODUCCIÓN
apoyo técnico y financiero de grandes organizaciones). Como
RESIDUOS   ENERGÍA    
acciones del adversario, asumimos intercepción y modifica-
ción de paquetes, control de tráfico, inyección de comandos
Figura 2: Escenario de ejemplo falsos, etc. Algunos informaciones adicionales son listadas a
continuación.
IV-0a. Distribución de Energı́a: El sistema está dividi- Posibles ataques a HMI/MTUs: problemas de seguridad
do en tres capas: (a) alta tensión, (b) media tensión, y (c) baja de las tecnologı́as de la información y la comunicación
tensión. El centro de control supervisa y gestiona tan sólo las tradicionales.
capas (a) y (b). La capa (c) es gestionada a partir de sistemas Posibles ataques a PLCs: ataques lógicos (e.g., reescribir
tradicionales de tipo hot line. áreas de la memoria del PLC) y ataques fı́sicos (e.g.,
La infraestructura asociada al centro de control cuenta con apagar dispositivos de entrada/salida de manera remota).
un sistema WAM (siglas en inglés de wide area measurement) Posibles ataques a los puntos finales: amenazas a las co-
que permite recoger, intercambiar y procesar los datos. El municaciones inalámbicas, incluyendo servidores de agu-
sistema WAM se complementa con una infraestructura basada jero negro (blackholes), gusanos (wormholes), clonación
en GPS para localizar los puntos finales (extremos) del sistema (cloning) y suplantación de identidad (impersonation).
y un sistema operacional para gestionar los cortes de energı́a Puntos de entrada: infiltración no detectada a través de
y la resolución de incidentes en los puntos finales. dispositivos infectados (e.g., memorias USB), equipos
A parte de bases de datos, asumimos aquı́ también elemen- corporativos usados de forma equivocada, protocolos
tos tipo MTUs centrales, para la gestión de áreas de alta y vulnerables en las capas más bajas, etc.
media tensión; puntos de suministro (e.g., energı́a hidráulica, Problemas de seguridad en protocolos Modbus y DNP3:
solar, eólica); sub-estaciones; y puntos de transformación (eg., spoofing de mensajes en modo broadcast, ataques de
alta-a-media y media-a-baja) en RTUS, sensores de voltaje y replay en las respuestas a la base, control directo de
corriente, y actuadores. esclavos, escáner de red, reconocimiento pasivo, retardo
IV-0b. Distribución de Agua y Tratamiento de Resi-
de la respuesta e intrusión.
duos: El sistema está compuesto por un MTU central y
varias sub-estaciones MTU. Cada sub-estación gestiona varios Por último, consideramos como contramedida principal la
RTUs directamente conectados a sensores y actuadores. Los reconfiguración del sistema (e.g., deshabilitar servicios, cortar
componentes remotes se dividen en dos capas: procesamiento conexiones, redirigir conexiones, bloquear aplicaciones, bajar
(agua o residuos) y producción de energı́a. Los sensores la prioridad a los mensajes, etc.).
(puntos de entrada del sistema) están conectados a la primera
V. S IMULACI ÓN DEL E SCENARIO M EDIANTE
capa, proporcionando medidas de presión, temperatura, flujo
SCADAS IM
y posición. Los actuadores, de carácter servomotor, están
conectados al sistema de distribución de energı́a. Nuestra propuesta se basa en la simulación del escenario
IV-0c. Protocolos de Comunicación: La comunicación presentado en la sección IV mediante SCADASim [8], una
(por cable o inalámbrica) desde los MTUs hasta los centros de librerı́a para la co-simulación de entornos SCADA. A su vez,
154 J. Garcia-Alfaro, C. Romero-Tris, J. Rubio-Hernan

SCADASim se basa en la plataforma de creación de simulacio- propuesto en la sección IV.


nes OMNeT++ [6] (disponible en http://www.omnetpp.org/).
A continuación, presentamos de manera general OMNeT++ y V-A. Detectores de Mo et al.
SCADASim. Para la detección de determinados ataques contra sistemas
OMNeT++ es una plataforma open source para la creación SCADA a nivel de PLCs, sensores y actuadores, se puede
de simuladores de eventos discretos. OMNeT++ es amplia- añadir a las medidas clásicas de control del flujo de datos,
mente utilizado a nivel académico para la simulación de redes otro control que consiste en la autenticación de la señal que
y nuevos protocolos. La simulaciones OMNeT++ se desarro- llega al sistema. Para el control y la verificación de la señal
llan principalmente a partir de dos tipos de lenguaje. En primer que llega al sistema, además del control y detección mediante
lugar, la lógica de la simulación se desarrolla en lenguaje C++. estimación de fallos utilizado en los sistemas clásicos que
En segundo lugar, la descripción de topologı́as mediante un permite enmarcar la señal de llegada dentro de unos patrones y
lenguaje propio de OMNeT++ denominado NED (NEtwork verificar que la señal se sitúa dentro de los margenes (método
Description). NED es utilizado para ensamblar componentes que se puede utilizar para detectar, por ejemplo, un ataque
individuales en nuevos componentes y modelos. de denegación de servicio), existen técnicas basadas en la
Adicionalmente, OMNeT++ dispone de un gran número de incorporación de ruido aleatorio. Dicho ruido es introducido
librerias externas para modelar un gran número de tecnologı́as en la señal, para su posterior autenticación. Esta incorporación
y protocolos, ası́ como la creación de componentes basados en permitirá más adelante verificar que son señales válidas. En
multiprocesadores y sistemas paralelos o distribuidos. Véase, la figura 3 mostramos un detector de ejemplo propuesto por
por ejemplo, las librerı́as INET (http://inet.omnetpp.org/) para Mo et al. en [13], [14]. Este detector permite tratar ataques
la simulación de protocolos basados en UDP, TCP, SCTP, de replay que pueden ser transparentes a otras contramedidas.
IP, IPv6, Ethernet, PPP, 802.11, MPLS, OSPF, y muchos Su principal limitación es que disminuye el rendimiento del
otros; VEINS (http://veins.car2x.org/) para la simulación de sistema, ya que debe analizar y autenticar cada señal.
redes vehiculares; CASTALIA (http://castalia.research.nicta.
Monitorización y control
com.au), para la simulación de redes inalambricas de sensores; Atacante

u'k
etc. OMNeT++ permite cubrir el vacı́o entre herramientas
orientadas a la investigación académica (tipo NS-2 y NS-3) Motor
+ Planta Sensor

con la potencia y facilidad de uso de herramientas comer-


ciales de alto coste como OPNeT de Riverbed Technology PLC

(http://www.opnet.com/). IDS (nivel físico) yk /y‘k

SCADASim es un proyecto open source disponible en http: U-1

//github.com/caxqueiroz/scadasim. SCADASim permite co- uk-1


uk = u*k+Δu Estimador/
simulación. Es decir, permite la coexistencia entre dispositivos Control

simulados y dispositivos reales. SCADASim también ofrece Alarma


la posibilidad de simular la ejecución de ataques contra los
dispositivos de la simulación (virtuales o reales). Para ello, Figura 3: Sistema de detección
SCADASim tiene implementado un módulo llamado SSProxy,
que actúa de enlance entre los componentes reales y los En la figura 3, yk es la respuesta real del sensor, e yk0 es
simulados. El objetivo de este módulo es recibir peticiones de la respuesta forzada por el atacante al realizar un ataque de
una IP externa y transmitirlas a los componentes internos de replay. uk es la salida del PLC hacia el motor, y u0k es la
la simulación. Del mismo modo, este módulo también enviarı́a señal que el atacante envı́a la PLC como respuesta del motor.
mensajes al exterior generados por componentes internos. Para La salida del PLC puede representarse como uk = u∗k + ∆uk
más información sobre SCADASim, remitimos al lector a las siendo u∗k la respuesta de control del IDS (sistema de deteción
siguientes publicaciones indicadas en [8], [9]. de intrusos) de nivel fı́sico del PLC, y ∆uk el ruido aleatorio
La principal limitación actual de SCADASim es el trata- añadido en la mejora.
miento de la capa fı́sica de un sistema SCADA simulado Una mejora en el uso de este sistema la podemos ver en
por software. Por ejemplo, la funcionalidad existente para la [15], el sistema esta representado en la figura 4, donde se
incorporación de procesadores digitales para el tratamiento de utilizan una serie de juegos estocásticos que permiten crear una
señales es muy limitado. Esta limitación supone que el estudio politica de combinación entre un coste óptimo pero un sistema
de amenazas hacia las capas más bajas de la arquitectura inseguro y un coste alto y un sistema seguro, permitiendo
SCADA (en especial en lo que respecta a las comunicaciones ası́ mejorar el rendimiento del sistema.
entre sensores, actuadores y PLCs), es extremadamente limi-
tada. De hecho, esta limitación dificulta la incorporación de V-B. Integración de los Detectores de Mo et al. en el
técnicas relevantes basada en detección de anomalı́as a nivel Escenario de Ejemplo mediante SCADASim y MATLAB
de tratamiento de señales. A modo de ejemplo, resumimos en En este apartado, mostramos una solución (en curso) pa-
la siguiente sección dos trabajos dentro de dicha categoria, ra tratar las limitaciones de SCADASim reportadas en los
que consideramos relevantes para el estudio de seguridad apartados anteriores de esta sección. Nuestra propuesta se
Simulaciones Software para el Estudio de Amenazas contra Sistemas SCADA 155

Monitorización y control
Atacante
VI. C ONCLUSIONES
u'k
El objetivo de las tecnologı́as SCADA (Supervisory Control
Motor
+ Planta Sensor
and Data Acquisition) es proporcionar control remoto que
PLC
IDS (nivel físico)
permita supervisar y monitorizar infraestructuras crı́ticas e
yk /y‘k industriales, como la distribución de energı́a y agua. Ataques
U-1
a este tipo de sistema tendrı́an consecuencias muy graves, y
uk1 uk-1
Control
1
por ello es necesario herramientas que permitan detectarlos y
uk
Switch Estimador analizar las contramedidas necesarias. En este artı́culo, hemos
uk2 Control
2
uk1 = u*k+Δu
revisado una propuesta para simular ataques realizados contra
uk2 = u*k sistemas SCADA, llamada SCADASim [8], [9]. A partir de
Alarma
la descripción de una infraestructura SCADA de ejemplo para
Figura 4: Detector de Mo et al. optimizado controlar suministro de energı́a, hemos propuesto posibles ata-
ques contra su seguridad, y simulados mediante SCADASim.
Hemos identificado también algunas limitaciones en la versión
basa en la incorporación de nueva funcionalidad para el actual de SCADASim, que impide la simulación completa de
procesamiento de señales digitales mediante la incorporación protocolos previstos en la arquitectura de ejemplo, ası́ como la
de librerı́as dinámicas mediante compilación compartida de incorporación de técnicas de detección de anomalı́as mediante
código OMNeT++ y código MATLAB [12]. La figura 5 tratamiento de señales. Por ello, hemos reportado una exten-
representa la arquitectura de nuestra propuesta. Los módulos sión en curso sobre SCADASim, mediante la incorporación
OMNeT++ están representados en forma de cajas en color de compilación de librerı́as dinámicas compartidas con otras
blanco. Los modulos SCADASim en cajas de color gris claro. plataformas de simulación más adecuadas para el tratamiento
Los módulos MATLAB en cajas de color gris oscuro. Nótese de señales, como es el caso de MATLAB [12]. Nuestro
que las aplicaciones y las capas de enlace y transporte se trabajo futuro supone completar la extensión reportada en este
han implementado como componentes SCADASim y OM- artı́culo. En paralelo, proponemos trabajar otras extensiones
NeT++. Las capas fı́sicas se han implementado como librerı́as sobre SCADASim que faciliten mayor facilidad para realizar
dinámicas MATLAB. Estás librerı́as son llamadas en tiempo estudios de co-simulación con componentes reales.
de ejecución por las distintas instancias de OMNeT++. La
capa de aplicación simplemente crea y recibe mensajes. La R EFERENCIAS
capa de transporte y la capa de enlace se limitan a tratar y [1] S. Sosik, “SCADA Systems in Wastewater Treatment,” Process-Logic,
verificar los mensajes. Por último, las funciones MATLAB son Whitepaper, 2007.
utilizadas para modular y demodular los mensajes mediante [2] K. Stouffer, J. Falco, K. Kent, “Guide to Industrial Control Systems
(ICS) Security Recommendations of the National Institute of Standards
PSK (desplazamiento de fase, del inglés Phase Shift Keying), and Technology,” NIST Special Publication, vol. 800, 2008.
ası́ como para implementar las propuestas de detección de [3] M. Shahraeini, M. H. Javidi, “SCADA Systems in Wastewater Treat-
anomalı́as especificadas en los trabajos de Mo et al. [13], [14]. ment,” Wide Area Measurement Systems. Advanced Topics in Measure-
ments, Chapter 15, pages 303-322, 2012.
[4] P. Manadhata, “An Attack Surface Metric,” PhD thesis, School of
Computer Science, Carnegie Mellon University, 2008.
Capa de
Envío de Recepción
[5] G. Gonzalez-Ganadillo, “Optimization of Cost-based Threat Response
aplicación
mensajes
de mensajes
for Security Information and Event Management Systems,” PhD thesis,
Paris VI University, 2013.
[6] OMNeT++ Network Simulation Framework. Available On-Line. http:
//www.omnetpp.org/
Capa de
[7] The NS-3 discrete-event network simulator. Available On-Line. http:
Tratamiento Verificación

transporte
//www.nsnam.org/
de mensajes
de mensajes

y enlace   [8] C. Queiroz, A. Mahmood, Z. Tari, “SCADASim – A Framework for
Building SCADA Simulations,” IEEE TRANSACTIONS ON SMART
GRID, 2(4):589–597, 2011.
[9] C. Queiroz, “A Holistic Approach for Measuring the Survivability of
SCADA Systems,” PhD Thesis, College of Science, Engineering and
Capa
Modulación Demodulación

Health, RMIT University, August 2012.
física   de mensajes
de mensajes

[10] M. Roesch, “Snort: Lightweight Intrusion Detection for Networks,”13th
USENIX Conference on Large Installation Systems Administration Con-
ference (LISA-99), pages 229–238, 1999.
[11] Quickdraw SCADA IDS Signatures. Available On-Line. http://www.
Figura 5: Arquitectura de nuestra propuesta de virtualización. digitalbond.com/tools/quickdraw
Los módulos OMNeT++ están representados en forma de cajas [12] Guide, “MATLAB User’s”. The mathworks. Inc., Natick, MA. (1998).
[13] Mo, Yilin, and Bruno Sinopoli. “Secure control against replay attacks.”
en color blanco. Los modulos SCADASim en cajas de color 47th Annual Allerton Conference on Communication, Control, and
gris claro. Los módulos MATLAB en cajas de color gris Computing, pp. 911–918, 2009.
oscuro. [14] Mo, Y., Kim, T. H., Brancik, K., Dickinson, D., Lee, H., Perrig, A., and
Sinopoli, B. “Cyber-physical security of a smart grid infrastructure.”
Proceedings of the IEEE, 100(1), pp. 195–209, 2012.
156 J. Garcia-Alfaro, C. Romero-Tris, J. Rubio-Hernan

[15] F. Miao, M. Pajic and G. J. Pappas. “Stochastic Game Approach for


Replay Attack Detection.”, University of Pennsylvania, Philadelphia, PA,
USA. 2013.
RECSI 2014, Alicante, 2-5 septiembre 2014

Capacidades de Detección de las Herramientas de


Análisis de Vulnerabilidades en Aplicaciones Web
Fernando Román Muñoz, Iván Israel Sabido Cortés, Luis Javier Garcı́a Villalba

Grupo de Análisis, Seguridad y Sistemas (GASS), Departamento de Ingenierı́a del Software e Inteligencia Artificial
Facultad de Informática, Despacho 431, Universidad Complutense de Madrid (UCM)
Calle Profesor José Garcı́a Santesmases, 9, Ciudad Universitaria, 28040 Madrid
Email: {froman, javiergv}@fdi.ucm.es, isc 86@hotmail.com

Resumen—Debido al continuo incremento del número de de vulnerabilidades. Estas clasificaciones aunque se revisan
vulnerabilidades en las aplicaciones Web, se han elaborado periódicamente, no están en constante actualización.
diversas clasificaciones para mantener organizadas estas vulne- En este documento los autores describen el proceso seguido
rabilidades, y también se han desarrollado herramientas para
detectarlas. Hasta este momento, según nuestra información, no para unificar las clasificaciones disponibles de vulnerabilida-
se ha realizado ningún estudio sobre las capacidades de estas des Web, agrupádolas en una única lista. A continuación se
herramientas en la detección de las vulnerabilidades presentes en revisan las capacidades de detección de las herramientas mejor
las clasificaciones de vulnerabilidades. En este trabajo mapeamos valoradas frente a las vulnerabilidades de esa lista.
y agrupamos las diferentes clasificaciones para obtener un Posteriormente se describe el proceso seguido para desa-
conjunto lo más completo posible de vulnerabilidades web, y com-
probamos si las herramientas mejor valoradas disponen de las rrollar una aplicación Web vulnerable, intentando que incluya
caracterı́sticas necesarias para detectarlas. Después introducimos todas las categorı́as de vulnerabilidades web. Esta aplicación
la aplicación web vulnerable que hemos desarrollado, intentando será usada en el futuro para comprobar las capacidades reales
incorporar todas las vulnerabilidades web de nuestra lista, con de detección de las herramientas de análisis, y para realizar
el objetivo de comprobar las capacidades reales de detección de acciones de formación en detección de vulnerabilidades.
las herramientas de análisis de vulnerabilidades web.
Palabras clave—Clasificaciones de vulnerabilidades, precisión II. A NTECEDENTES
de las herramientas de análisis de vulnerabilidades web, vul-
nerabilidades web. (Vulnerability classifications, web vulnerability Esta sección proporciona información sobre los diferentes
scanners accuracy, web vulnerabilities). conceptos relacionados con las vulnerabilidades y las clasifi-
caciones existentes actualmente.
I. I NTRODUCCI ÓN
II-A. Conceptos
La opción más habitual para detectar las vulnerabilidades Aunque algunas listas de vulnerabilidades clasifican según
de una aplicación Web es utilizar una herramientas automáti- el concepto de vulnerabilidad, otras lo hacen según otros
ca de análisis. A estas herramientas se les proporciona un conceptos como: amenaza, debilidad, riesgo o control. El
conjunto de URLs y eventualmente unas credenciales, con utilizar diferentes conceptos no impide que puedan compararse
las que explorar la aplicación. Una vez que la ha recorrido, las clasificaciones, ya que todos ellos están relacionados, como
intentará introducir determinados valores en los campos y puede verse en la guı́a NIST Special Publication 800-30 [1]
cabeceras, para posteriormente analizar el resultado en busca y en el estándar internaciónal ISO/IEC 27001:2005 [2]. Por
de evidencias de vulnerabilidades. motivos de claridad en este documento nos referiremos a todos
Para saber que herramienta de las existentes es mejor en la ellos como vulnerabilidad.
detección de vulnerabilidades se han realizado varios estudios.
En ellos básicamente se parte de un conjunto de herramientas II-B. Herramientas de análisis de vulnerabilidades Web
comerciales o de código libre, un conjunto de vulnerabilidades En un artı́culo anterior [31] se agrupaban las principales
a detectar, y una aplicación con esas vulnerabilidades. Se con- carencias de las herramientas de análisis de vulnerabilidades
figuran las herramientas para analizar la aplicación vulnerable Web, y se proponı́an soluciones para varias de ellas. Posterior-
y se analizan los resultados. El comparar unos estudios con mente en [4] se proponı́an mejoras de las soluciones indicadas
otros es difı́cil ya que en cada uno de ellos las herramientas en ese artı́culo anterior. En otro artı́culo anterior [5], se anali-
analizadas, el conjunto de vulnerabilidades y la aplicación zaban varios estudios relevantes sobre estas herramientas, tanto
vulnerable son diferentes. comerciales como de código libre. Los resultados muestran las
El conjunto de herramientas disponibles cambia a lo largo herramientas, vulnerabilidades y aplicaciones vulnerables que
del tiempo, por lo que no se puede definir un conjunto estático se usaron en cada estudio. En lo referente a las herramientas
de herramientas. Pero lo que sı́ existen son clasificaciones de analizadas, aunque en cada estudio se comparan al menos
vulnerabilidades Web que incluyen las categorı́as existentes siete herramientas, sólo dos de ellas se valoran en todos los
158 F. Román, I. I. Sabido, L. J. Garcı́a

estudios, y muchas solamente en uno. En lo que respecta extrae principalmente de WASC TC, e incluye 55 problemas
a las vulnerabilidades, entre todas se prueban 35, pero sólo agrupados en varias categorı́as: autenticación, autorización,
las dos más conocidas se pruebas en todos ellos: Cross Side ataque del lado del cliente, ejecución de comandos y reve-
Scripting e inyección SQL. Sobre la aplicación vulnerable lación de información.
utilizada, ninguna se usa en más de un artı́culo, en algunas se La clasificación Common Weakness Enumeration (CWE)
usan aplicaciones desarrolladas a propósito para sus pruebas, [11] desarrollada por la Corporación MITRE, es un conjunto
y en otras aplicaciones de uso habitual con vulnerabilidades de debilidades software en todo tipo de software, no sólo
conocidas. Finalmente, en los resultados, ninguna herramienta aplicaciones Web. La versión existente en el momento de este
aparece en las tres primeras posiciones de todos los artı́culos, documento, la 2.5 de 2013, incluı́a 940 debilidades. También
y hay muchas de ellas que aparecen en las primeras posiciones se citan ejemplos, métodos de detección y de mitigación, y
de unos y en las últimas de otros. Agrupando los resultados referencias a otras clasificaciones de vulnerabilidades.
de estos estudios se obtiene una jerarquı́a de herramientas, en SANS y MITRE han desarrollado la clasificación
la que que aparecen las siguientes en los primeros puestos: CWE/SANS TOP 25 de los errores software más peligrosos
Appscan [20], Acunetix [21], Webinspect [22] y Burp Suite (SANS CWE/25) [12], que fue actualizada por última vez en
[23]. 2011. Es un subconjunto de CWE e igualmente incluye vul-
nerabilidades de todo tipo de aplicaciones. Incluye ejemplos
II-C. Clasificaciones de vulnerabilidades y métodos de detección.
En esta sección se indican las clasificaciones de vulne- Otra clasificación que incluye vulnerabilidades en todo
rabilidades más relevantes hasta el momento de la elabo- tipo de software es Common Attack Patterns Enumeration
ración de este documento. Se incluyen clasificaciones tanto and Classification (CAPEC) [3] que mantiene la corporación
de vulnerabilidades en aplicaciones Web, como otro tipo de MITRE. Contiene patrones de ataque y la última version
vulnerabilidades. durante la elaboración de este documento es la 2.1 de 2013.
La organización Web Application Security Consortium Incluye ejemplos y descripciones de flujos de ataque.
(WASC) proporciona una clasificación de 49 amenazas en Por ultimo Shay Chen mantiene la clasificación SecTool-
aplicaciones Web (WASC TC) [6]. Divide las amenazas entre Market [13] donde se incluye una clasificación de 33 ca-
debilidades y ataques, e incluye la fuente de las amenazas: racterı́sticas de auditoria de las herramientas de análisis de
diseño, implementación o desarrollo. Contiene descripciones aplicaciones web. Se actualiza normalmente cada año e incluye
y ejemplos. La última versión es la 2.0 liberada en 2010. referencias a otras clasificaciones. En Sectoolmarket también
La organización Open Web Application Security Project se analizan 62 herramientas, para determinar cuales de esas
(OWASP) mantiene actualizada la lista OWASP Top 10 [7], 33 caracterı́sticas de auditorı́a detecta cada una.
que incluye los riesgos de Seguridad más crı́ticos en las aplica-
ciones Web. Obtiene sus datos de empresas de consultorı́a y de II-D. Relaciones entre clasificaciones
fabricantes de herramientas de detección de vulnerabilidades. En el apartado anterior se indicaban las principales clasifica-
La versión actual es del 2013. Esta lista incluye la descripción ciones de vulnerabilidades. Para relacionar las vulnerabilida-
y ejemplos de cada vulnerabilidad, y también métodos para des de unas clasificaciones con otras se han realizado varios
mitigar su impacto. OWASP también desarrolla la Guı́a de trabajos de mapeo. Suelen incluir todas las vulnerabilidades
Pruebas de OWASP [8] que describe un conjunto de pruebas de una clasificación, relacionando las que sean posibles con
que se pueden realizar sobre las aplicaciones Web para detectar vulnerabilidades de otras clasificaciones. A continuación se
vulnerabilidades. Contiene 66 pruebas, y la versión actual es ofrece una breve descripción de los principales mapeos entre
la v3 del 2008. Incluye la descripción de las vulnerabilidades, clasificaciones.
ejemplos y métodos de detección. No se indican métodos Denim Group [14] realizó en 2010 un mapeo entre las vul-
para mitigar su impacto, pero sı́ incluye referencia a otra nerabilidades de WASC TC v1.0, SANS CWE/25, y OWASP
información de interés de OWASP. La siguiente versión v4 Top 10 2004 y 2007.
actualmente está en desarrollo. Jeremiah Grossman [15] mapeó en 2009 las clasificaciones
Del proyecto NIST SAMATE surge en 2007 la guı́a NIST WASC TC v2.0 y OWASP Top 10 2010.
Special Publication 500-269 [9] que describe las tareas que de- Threat Classification Taxonomy Cross Reference View (We-
be realizar una herramientas de detección de vulnerabilidades bappsec) [16] es una vista de la clasificación WASC actuali-
Web. En su anexo A se incluye una lista de 14 vulnerabilidades zada en 2013, que relaciona las vulnerabilidades en WASC
Web que una de estas herramientas debe ser capaz identificar. TC v2.0 con las de CWE, CAPEC, OWASP Top Ten (2004,
Las vulnerabilidades de esta lista se han incluido según su 2007 y 2010) y SANS CWE/25. Para ello usan la información
probabilidad de ser explotadas. En el anexo B se suguieren de los dos mapeos indicados antes: Denim Group y Jeremiah
brevemente métodos para mitigarlas. Grossmans.
En 2009 la organización WASC también elabora el Web La clasificación que incorpora la guı́a NIST Special Pu-
Application Security Scanner Evaluation Criteria (WASSEC) blication 500-269 en su anexo A incluye un mapeo con
[10], que incluye una lista de problemas de Seguridad que una CWE, OWASP Top 10 2007 y Common Vulnerabilities and
herramienta de análisis de aplicaciones Web debe detectar. Los Exposures (CVE) [17].
Capacidades de Detección de las Herramientas de Análisis de Vulnerabilidades en Aplicaciones Web 159

Securing Telligent Evolution [18] es un documento creado el de Sectoolmarket. El segundo paso es unificar los mapeos
por Telligent en 2012, que describe las amenazas que se de Telligent y de Sectoolmarket eliminando la información
prueban en la plataforma Telligent Evolution, incluyendo un redundante. De esta forma se obtiene un listado de 29 mapeos
mapeo entre la guı́a de pruebas de OWASP y WASC. entre elementos de WASC TC y la guı́a de pruebas de OWASP.
Finalmente SecToolMarket incluye relaciones entre las vul- En tercer lugar las vulnerabilidades restantes de cada una
nerabilidades de WASC TC v2.0 y la guı́a de pruebas de de estas clasificaciones se revisan teniendo en cuenta sus
OWASP. descripciones. De esta forma se obtienen 12 nuevas relaciones
La información de todos estos mapeos se puede resumir entre vulnerabilidades de WASC TC y la guı́a de pruebas de
para determinar qué clasificaciones están más relacionadas. La OWASP. Por último se obtiene la clasificación final añadiendo
clasificación WASC TC v2.0 está relacionada con otras 8 en las vulnerabilidades sin relacionar en WASC TC, la guı́a de
los mapeos analizados, SANS CWE/25 con 5 clasificaciones, pruebas de OWASP y la clasificación de Sectoolmarket. De
OWASP Top 10 2007, OWASP Top 10 2010 y WASC TC WASC TC se obtienen ocho, nueve de la guı́a de pruebas
v1.0 con tres, y la guı́a de pruebas de OWASP, CWE, CVE, de OWASP, y cinco de la clasificación de Sectoolmarket. Al
y CAPEC sólo con otra clasificación. final tenemos una clasificación de 63 tipos de vulnerabilidades.
Esta nueva clasificación (ULWeV) y los mapeos entre las
II-E. Aplicaciones Web vulnerables clasificaciones seleccionadas pueden consultase en [19].
Para probar las herramientas existen multitud de aplicacio- En la tabla I puede verse las vulnerabilidades de la nueva
nes Web vulnerables a propósito, algunas de ellas desarrolladas clasificación obtenida agrupadas según su procedencia: WASC
por organizaciones dedicadas a la seguridad, y otras por los TC, guı́a de pruebas OWASP que no están en WASC TC, y
fabricantes de las herramientas de detección. Dentro del primer Sectoolmarket que no están en las dos anteriores.
grupo las más relevantes son las siguientes.
Damn Vulnerable Web Application (DVWA) [28] es una Tabla I
O RIGEN DE LAS VULNERABILIDAD EN LA NUEVA CLASIFICACI ÓN
aplicación desarrollada en PHP, con vulnerabilidades basadas
en la clasificación OWASP Top 10, que ofrece la opción de Clasificación Vulnerabilidades
cambiar el nivel de seguridad. WebGoat [29] es mantenida por
WASC TC Todas (de WASC-01 a WASC-49)
OWASP y está basada en tecnologı́a J2EE. Esta aplicación
cuenta con más de 30 lecciones para aprender a detectar Guı́a de OWASP -Information Gathering
-User enumeration
las vulnerabilidades y corregirlas. OWASP también mantiene -Weak Multiple Factors Authentication
Mutillidae [30], desarrollada en PHP, y como DVWA, se basa -Race Conditions vulnerability
en la clasificación OWASP Top 10. También tiene distintos -DB Listener weak
-Code Injection
niveles de dificultad e incluye información para detectar las -Cookie attributes
vulnerabilidades. Dentro del grupo de aplicaciones vulnerables -Exposed sensitive session variables
desarrolladas por los fabricantes de herramientas de detección -Web services testing
podemos indicar, a modo de ejemplo, la aplicación vulnerable Sectoolmarket -EL Injection
de Acunetix [27] desarrollada en PHP, o la de IBM AppScan -Padding Oracle
-Server Side Java Script (SSJS/NoSQL) Injection
[26] desarrollada en ASP.NET. -Unrestricted File Upload and
En esta sección se han introducidos los conceptos relacio- Blind/Time-Based SQL Injection
nados con las vulnerabilidades, las principales clasificaciones -Source Code Disclosure
y la relaciones entre ellas, y las aplicaciones vulnerables. En
la siguiente sección se explica el proceso seguido para unificar
las clasificaciones. IV. P RECISI ÓN DE LAS HERRAMIENTAS DE DETECCI ÓN
DE VULNERABILIDADES W EB
III. C LASIFICACI ÓN DE VULNERABILIDADES W EB En la sección 2 se indicaban los conceptos relacionados
UNIFICADA con las vulnerabilidades, las herramientas de detección de
A partir de las principales clasificaciones de vulnerabilida- vulnerabilidades mejor valoradas, las clasificaciones actuales
des y los mapeos entre ellas se puede desarrollar una nueva de vulnerabilidades, y las relaciones entre ellas. En la sección
clasificación que incluya los tipos de vulnerabilidades de todas 3 se describı́a el proceso seguido para unificar estas clasifica-
ellas, sin vulnerabilidades redundantes. Para ello como primer ciones, y obtener una clasificación de vulnerabilidades lo más
paso nos quedarnos con las clasificaciones completas que completa posible. En esta sección se usará esa nueva clasifi-
sólo incluyen vulnerabilidades Web, es decir no se tienen en cación de vulnerabilidades para comprobar las caracterı́sticas
cuenta las clasificaciones que incluyen las vulnerabilidades de (capacidades de detección) de estas herramientas.
todos los tipos de aplicaciones, como CWE, ni las que sólo
incorporan las vulnerabilidades más relevantes o frecuentes, IV-A. Capacidades de detección de las herramientas
como hace OWASP Top 10. El resultado son las clasificaciones Para revisar las capacidades de detección de las herramien-
WASC TC, la guı́a de pruebas de OWASP y la clasificación tas se ha podido conseguir versiones válidas de AppScan,
de Sectoolmarket. Los mapeos entre ellas son el de Telligent y Webinspect y Acunetix. De Burp Suite no se ha podido
160 F. Román, I. I. Sabido, L. J. Garcı́a

conseguir una versión válida completa, por lo que se ha IV-B. Aplicación Web vulnerable
sustituido por Zaproxy [24]. En apartados anteriores se ha elaborado una clasificación
La clasificación ULWeV tiene 63 vulnerabilidades, que se unificada de posibles vulnerabilidades en aplicaciones Web, y
puede agrupar en tres grupos, como se ha visto anteriormente después se han revisado las capacidades de las herramientas
en la tabla I: (1) 49 de WASC TCv2.0, (2) nueve de la guı́a para detectar esas vulnerabilidades. De esta forma se tiene
de pruebas OWASP que no están en WASC TC v2.0, y (3) un conjunto actualizado de vulnerabilidades que deberı́an de
cinco de la clasificación de Sectoolmarket que no están en las detectar las herramientas, y las que podrı́an detectar cada una.
otras dos. Para saber si una herramientas tiene capacidad de Pero para poder determinar si realmente una herramientas es
detectarlas (incorpora la caracterı́stica necesaria) se usan varias capaz de detectar una vulnerabilidad hay que probarla.
fuentes de información: el sistema de gestión de vulnerabili- Para determinar las capacidades reales de detección de
dades Threadfix [25] junto con el mapeo entre clasificaciones una herramienta de análisis se hace necesario disponer de
Webappsec, la información en Sectoolmarket, y finalmente aplicaciones que tengan esas vulnerabilidades. Para ello se han
la revisión manual de las caracterı́sticas de las herramientas. analizado las aplicaciones vulnerables existentes, de forma que
Threadfix es un Sistema de gestión de vulnerabilidades capaz se pueda seleccionar una o varias de ellas, que incorporen el
de consolidar informes de vulnerabilidades provenientes de mayor número de vulnerabilidades de la nueva clasificación.
Acunetix, Appscan, Webinspect, Zaproxy y otras herramientas, El resultado es que DVWA tiene 17 vulnerabilidades de las
relacionando las vulnerabilidades detectadas con CWE. 63 de la clasificación ULWeV, WebGoat tiene 32, Mutillidae
Como se ha visto en un apartado anterior Webappsec 34, la aplicación vulnerable de Acunetix cuenta con 18 vul-
relaciona vulnerabilidades en WASC TC v2.0 con las de CWE. nerabilidades de ULWeV, y la de AppScan cuenta con 14. To-
A partir de esta información y la que proporciona Threadfix mando las que más vulnerabilidades incorpora, con WebGoat
se pueden determinar las vulnerabilidades de WASC TC v2.0 y Mutillidae se cubre un total de 39 vulnerabilidades de las
que detecta cada una de las herramientas seleccionadas, lo que 63. Las 14 restantes se analizan para determinar si es posible
se corresponde con el primer grupo (1) de vulnerabilidades incorporarlas en alguna de las aplicaciones seleccionadas.
de la nueva clasificación ULWeV. Como también se ha visto Con la nueva clasificación de vulnerabilidades, y la aplica-
en un apartado anterior en Sectoolmarket se analizan 62 ción, o conjunto de aplicaciones, vulnerables a ellas, se pueden
herramientas para ver si detectan las vulnerabilidades de su realizar acciones de formación sobre los futuros programado-
clasificación. De aquı́ se obtiene si las cinco vulnerabilidades res, de forma que es cubran dos objetivos: enseñar a detectar
del grupo (3) las detectan las herramientas. Para el grupo las vulnerabilidades, para realizar pruebas de penetración sobre
(2) de las nueve vulnerabilidades de la guı́a de pruebas de las aplicaciones Web; y enseñar a programar de forma segura,
OWASP, y las que no ha sido posible localizar en los dos pasos evitando en la medida de lo posible desarrollar aplicaciones
anteriores, se han revisado manualmente para comprobar si las con vulnerabilidades. En la figura 1 se explica el proceso
herramientas tienen capacidad de detectarlas. que se intenta seguir en este documento para mitigar, usando
formación y concienciación, el desarrollo de aplicaciones Web
En la tabla II se indica el número de pruebas que puede
con vulnerabilidades.
realizar cada herramienta analizada, ası́ como las que se
corresponden con las de ULWeV según su clasificación de
origen.

Tabla II
C APACIDADES DE DETECCI ÓN DE LAS HERRAMIENTAS
Las 4 herramientas
Webinspect
Acunetix

Appscan

Zaproxy

Número aproximado de pruebas 350 2000 4300 49 -


63 vulnerabilidades en ULWeV:
49 de WASC TC v2.0 28 31 27 49 49
Figura 1. Formación para detectar y mitigar las vulnerabilidades Web
8 de de la guı́a de OWASP 5 4 3 0 5
5 de Sectoolmarket 5 23 3 0 5
V. A N ÁLISIS DE LOS RESULTADOS
Total 38 37 33 49 59
Como se ve ninguna de las herramientas analizadas incorpo-
ra las capacidades de detección necesarias para detectar las 63
Capacidades de Detección de las Herramientas de Análisis de Vulnerabilidades en Aplicaciones Web 161

vulnerabilidades, aunque entre las cuatro analizadas sı́ cubren R EFERENCIAS


casi toda la lista de vulnerabilidades. [1] National Institute of Standards and Technology, “NIST Special Publi-
Aunque Appscan y Webinspect incluyen muchas pruebas cation 800-30 Revision 1: Guide for Conducting Risk Assessments”,
de vulnerabilidades, según el análisis realizado son las otras 2012.
[2] International Organization for Standardization, “International Standard
dos Zaproxy y Acunetix las que detectarı́an más vulnera- ISO/IEC 27001”, 2005.
bilidades deULWeV. Esto es debido a que Appscan y We- [3] The MITRE Corporation, “Common attack patterns Enumeration and
binspect incorporan muchas vulnerabilidades de aplicaciones Classfication”, 2013. Disponible en http://capec.mitre.org/.
[4] F. Román Muñoz, L. J. Garcı́a Villalba, “Web From Preprocessor for
Web especı́ficas y no tanto de tipos de vulnerabilidades. Crawling”, en Multimedia Tools and Applications, p.p. 1–12, April 2013.
Por ejemplo en las versiones de las herramientas analizadas, [5] F. Román Muñoz, L. J. Garcı́a Villalba, “Methods to Test Web Appli-
Zaproxy incluye solo una caracterı́stica para detectar Cross- cations Scanners”, Proceedings of the 6th International Conference on
Information Technology, 2013.
Site Scripting, Acunetix siete, Webinspect más de 500, y [6] Web Application Security Consortium, “The WASC Threat Classifica-
Appscan más de 600. En el caso de estas dos últimas, tion”, 2010.
Webinspect y Appscan, solo unas pocas son para detectar [7] Open Web Application Security Project, “OWASP Top Ten Project”,
2013. Disponible en https://code.google.com/p/owasptop10.
la vulnerabilidad en cualquier aplicación, por ejemplo “URL [8] Open Web Application Security Project, “OWASP Testing Guide”, 2013.
Cross-Site Scripting” la mayorı́a de ellas son para productos [9] National Institute of Standards and Technology, “Software Assurance
concretos, como “WebSphere Cross-Site Scripting” o “ASP Tools: Web Application Security Scanner Functional Specification Ver-
sion 1.0. NIST Special Publication 500-269”, 2008.
Nuke Cross-Site Scripting Vulnerability”. Tanto Sectoolmarket [10] Web Application Security Consortium, “Web Application Security Scan-
como Threadfix relacionan todas estas vulnerabilidades con el ner Evaluation Criteria”, 2009.
tipo genérico “Cross-Site Scripting”. Esto lleva a la conclusión [11] The MITRE Corporation, “Common Weakness Enumeration”, 2013.
Disponible en http://cwe.mitre.org.
de que herramientas como AppScan o Webinspect son las [12] SANS, “CWE/SANS TOP 25 Most Dangerous Software Errors”, 2011.
más adecuadas para analizar aplicaciones cerradas, ya sean Disponible en http://www.sans.org/top25-software-errors.
comerciales o de software libre, pero que otras herramientas [13] S. Chen, “General Features Comparison - Web Application Scanners”,
2012. Disponible en http://www.sectoolmarket.com.
como Acunetix o gratuitas como Zapproxy, deberı́an de ser al [14] D. Cornel, “Mapping Between OWASP Top 10 (2004, 2007), WASC
menos igualmente adecuadas para analizar aplicaciones web 24+2 and SANS CWE/25”, 2010.
desarrolladas a medida. [15] J. Grossman, “WASC Threat Classification to OWASP Top Ten RC1
Mapping” 2013.
[16] Web Application Security Consortium, “Threat Classification Taxonomy
VI. C ONCLUSIONES Y TRABAJO FUTURO Cross Reference View”, 2012.
[17] The MITRE Corporation, “CVE”, 2013. Disponible en http://cve.mitre.
En este artı́culo se muestra el resultado de unificar las org.
clasificaciones de vulnerabilidades Web más relevantes para [18] Telligent, “Telligent Evolution Platform”, 2013.
[19] F. Roman, l.-J. Garcia, “Web vulnerability classification mapping”, 2013.
obtener una única lista. También se analizan varias de las [20] IBM, “IBM Security Appscan”, 2014. Disponible en http://www-03.
herramientas mejor valoradas de detección de vulnerabilidades ibm.com/software/products/us/en/appscan.
Web, para determinar si incorporan las caracterı́sticas de [21] Acunetix, “Acunetix Web Vulnerbility Scanner”, 2014. Disponible en
http://www.acunetix.com.
detección necesarias para detectar las vulnerabilidades que [22] HP, “HP Webinspect”, 2014.
incluye la nueva lista. Finalmente se explica la selección de [23] Portswigger, “Burp Suite”,2014. Disponible en http://portswigger.net/
un conjunto de aplicaciones Web vulnerables, y su mejo- burp.
[24] Open Web Application Security Project, “Zaproxy”, 2014.Disponible en
ra con vulnerabilidades adicionales, intentando obtener una http://code.google.com/p/zaproxy/.
aplicación que incorpore todas las vulnerabilidades de las [25] Denim Group, “Threadfix”, 2013. Disponible en https://code.google.
clasificaciones. Aunque esta nueva clasificación pueda crecer com/p/threadfix.
[26] IBM, “IBM Security Appscan”, 2014. Disponible en http://demo.testfire.
con el tiempo, sı́ sirve para determinar que les falta a las net.
herramientas, en que deben mejorar, al dar una visión global [27] Acunetix, “TEST and Demonstration site for Acunetix Web Vulnerabi-
de que deben detectar y sus capacidades actuales de detección. lity Scanner”, 2014. Disponible en http://testphp.vulnweb.com.
[28] DVWA, “Damn Vulnerable Web Application”, 2014. Disponible en http:
El siguiente paso será analizar estas aplicaciones vulnera- //www.dvwa.co.uk/.
bles con las herramientas seleccionadas para determinar sus [29] WebGoat, “OWASP WebGoat Project”, 2014. Disponible en https:
capacidades reales de detección. También esta aplicación vul- //www.owasp.org/index.php/Category:OWASP WebGoat Project/.
[30] Mutillidae, “OWASP Mutillidae 2 Project”, 2014. Disponible en https:
nerable se podrá utilizar para realizar acciones de formación //www.owasp.org/index.php/OWASP Mutillidae 2 Project.
en desarrollo seguro, al partir de una clasificación completa [31] F. Román Muñoz, L. J. Garcı́a Villalba, “Preproceso de Formularios
de tipos de vulnerabilidades, y no solo las más comunes. para el Análisis de Seguridad de las Aplicaciones Web”, Actas de la
XII Reunión Española sobre Criptologı́a y Seguridad de la Información
(RECSI 2012), Donostia-San Sebastián, España, Septiembre 2012.
RECSI 2014, Alicante, 2-5 septiembre 2014

Sistema de Detección de Atacantes Emascarados


Basado en Técnicas de Alineamiento de Secuencias
Jorge Maestre Vidal, Luis Javier Garcı́a Villalba

Grupo de Análisis, Seguridad y Sistemas (GASS), Departamento de Ingenierı́a del Software e Inteligencia Artificial
Facultad de Informática, Despacho 431, Universidad Complutense de Madrid (UCM)
Calle Profesor José Garcı́a Santesmases, 9, Ciudad Universitaria, 28040 Madrid
Email: jmaestre@ucm.es, javiergv@fdi.ucm.es

Resumen—Los ataques enmascarados constituyen la actividad de alineamiento de secuencias, lo que permite modelar su
malintencionada perpetrada a partir de robos de identidad, comportamiento e identificar actividades asociadas a su modo
entre la que se incluye la escalada de privilegios o el acceso de uso indebido. A diferencia de las propuestas anteriores, se
no autorizados a activos del sistema. Este trabajo propone un
sistema de detección de atacantes enmascarados mediante la introduce el uso de técnicas de alineamiento locales y la prueba
observación de las secuencias de acciones llevadas a cabo por los de Mann-Whitney para la verificación de sus clasificaciones.
usuarios legı́timos del sistema. La clasificación de la actividad Esto permite el análisis en tiempo real de la actividad del
monitorizada es modelada y clasificada en base a algoritmos usuario sin disminuir la precisión de los procesos de detección.
de alineamiento de secuencias locales. Para la validación del Además cada vez que el usuario ejecuta nuevas acciones su
etiquetado se incorpora la prueba estadı́stica no paramétrica de
Mann-Whitney. Esto permite el análisis de secuencias en tiempo actividad vuelve a ser evaluada. El sistema permite gestionar
real. La experimentación realizada considera los conjuntos de la emisión de alertas en situaciones dudosas, produciendo una
muestras de Schonlau. La tasa de acierto al detectar ataques mejora adicional en la etapa de etiquetado.
enmascarados es 98,3 % y la tasa de falsos positivos es 0,77 %. Este trabajo está estructurado en 7 secciones, siendo la primera
Palabras clave—Atacantes enmascarados, ataques internos, de- de ellas la presente introducción. En la sección II se describen
tección de intrusiones, seguridad de la información. (Masquerader
attacks, insider attacks, intrusion detection, information security) los trabajos previos relacionados con la detección de atacantes
enmascarados. En la sección III se explican las principales
técnicas de alineamiento de secuencias y sus principales
I. I NTRODUCCI ÓN
caracterı́sticas. En la sección IV se detalla la arquitectura y
La mayor parte de los accesos no autorizados a un sistema las caracterı́sticas del sistema propuesto. En la sección V se
de la información se producen desde el interior, lo que introduce la técnica de validación de etiquetado que comple-
comúnmente se conoce como ataques internos. Este tipo de menta al sistema de detección. En la sección VI se describe
ataques no necesitan explotar vulnerabilidades para atravesar la experimentación realizada y los resultados obtenidos. Por
los diferentes controles de acceso ya que de alguna manera, los último, en la sección VII se presentan las conclusiones y las
atacantes satisfacen los requisitos para acceder haciéndose pa- propuestas de trabajo futuro.
sar por usuarios legı́timos. Los atacantes internos se clasifican
en: traidores y enmascarados [1]. Los traidores son usuarios II. T RABAJOS R ELACIONADOS
legı́timos que ganan privilegios para acceder a información La detección de atacantes enmascarados tiene sus orı́genes
restringida. Los enmascarados son atacantes con acceso no en propuestas que tienen como objetivo la identificación de
autorizado al sistema que suplantan la identidad de usuarios comandos poco utilizados por los usuarios legı́timos. En [3] se
autorizados. Las propuestas para la identificación de atacantes introduce la separación de los comandos ejecutados en usuales
internos varı́an en función de su clasificación. Dado que los e inusuales. La etapa de análisis es llevada a cabo mediante
traidores son usuarios legı́timos, habitualmente conocen las cadenas de Markov: a mayor concentración de comandos
caracterı́sticas y la organización del sistema protegido. En con- inusuales, mayor es la probabilidad de que se trate de un
secuencia su detección se centra en la elaboración de trampas atacante enmascarado. En [4] se propone el estudio de cadenas
y señuelos [2]. Sin embargo la detección de enmascarados de acciones mediante el uso de una ventana deslizante de
se centra en la identificación de comportamientos anómalos tamaño fijo y la incorporación de un alfabeto de secuencias.
respecto a los perfiles del uso habitual del sistema. Para ello Cuando el contenido de la ventana analizada no encaja con
se tienen en consideración eventos que se producen a nivel ninguna palabra del alfabeto, se gestiona como una cadena
local, como los comandos ejecutados, llamadas al sistema, extraña, incrementando la posibilidad de que sea etiquetada
movimientos entre directorios o accesos a ficheros. como una intrusión.
El sistema propuesto en este trabajo detecta atacantes enmas- Es importante destacar la aportación de Scholau et al. [5] [6].
carados mediante el análisis de las acciones llevadas a cabo [5] presenta la estrategia Uniqueness, basada en el análisis de
por los usuarios del sistema. Para ello se aplican algoritmos la aparición de comandos que no figuran en los conjuntos de
164 J. Maestre, L. J. Garcı́a Villalba

muestras de referencia. Asimismo, proponen la aplicación de penalizar la precisión de la etapa de análisis.


métodos de compresión y la identificación de la naturaleza
de las secuencias mediante el análisis de su comportamiento. III. A LINEAMIENTO DE S ECUENCIAS
[6] estudia la precisión de diferentes técnicas de detección, El alineamiento de secuencias es una técnica procedente
destacando entre ellas Uniqueness, factores bayesianos, Mar- del campo de la bioinformática que tiene como finalidad
kov, compresión o encaje de secuencias. Para llevar a cabo su establecer el grado de similitud entre cadenas de ADN, ARN
evaluación aplica por primera vez el dataset conocido como o diferentes proteı́nas. Las secuencias alineadas generalmente
SEA. Este conjunto de muestras es aplicado posteriormente corresponden a nucleótidos o aminoácidos, y se identifican
por otros autores en la evaluación de propuestas similares. No mediante sı́mbolos de un alfabeto. Cuando el ancestro de un
obstante, tal y como señalaron Maxiom y Townsend, su uso linaje de individuos es común, las diferencias son consideradas
es controvertido [7]. Su crı́tica se centra en que las capturas mutaciones puntuales (sustituciones). A los huecos se los
de los distintos usuarios están mezcladas, se desconoce la denomina indels (inserciones o eliminaciones). La similitud es
información sobre sus fuentes, se desconocen los perı́odos estudiada como una medida de conservación entre linajes, que
de captura y no se da información especı́fica acerca de las habitualmente conlleva una importancia funcional y estructural
tareas que llevaron a cabo los usuarios legı́timos durante el de las muestras.
proceso de captura. A pesar de ello los conjuntos de muestras Las diferentes técnicas de alineamiento de secuencias ha-
de Schonlau son considerados un estándar funcional para la bitualmente son consideradas como una generalización del
validación de este tipo de sistemas. problema de la detección de la longitud de la sub-secuencia
Algunos trabajos han propuesto alternativas al estudio de las más larga común entre dos cadenas, conocida como LCS
secuencias de comandos o llamadas al sistema. En [8] la (Longest Common Subsequence). Para la obtención de la LCS
elaboración de los perfiles de usuario considera la frecuencia el proceso de alineamiento consiste en la eliminación de
entre clics y otras caracterı́sticas de los movimientos del ratón. sı́mbolos y en añadir huecos (gaps) hasta que aparezcan sub-
Asimismo algunas propuestas se centran en el estudio de la secuencias similares, determinándose las de mayor dimensión.
actividad de ususarios en redes. Este es el caso de [9], donde Las estrategias de alineamiento de secuencias se clasifican en
sus perfiles se elaboran en base a eventos como búsquedas, función de su objeto de análisis. Cuando las secuencias son
descargas, impresiones o movimientos en redes sociales. alineadas considerando su extensión total reciben el nombre
[10] es uno de los trabajos de mayor impacto. Su objeto de alineamiento global. Si lo hace considerando sus diferentes
de análisis son los comandos introducidos por los usuarios. sub-secuencias reciben el nombre de alineamiento local. Final-
Sin embargo, en esta ocasión propone su tratamiento tras un mente, cuando se combinan de tal manera que se considera la
agrupamiento y etiquetado en base a su funcionalidad, como similitud de una secuencia completa respecto a sub-secuencias
la recopilación de recursos, búsquedas o procesos de comu- de otra secuencia diferente, reciben el nombre de alineamiento
nicaciones. También propone técnicas para la generación de semi-global.
conjuntos de muestras con actividades anómalas. Las muestras
de sus experimentos se basan en los resultados de un juego IV. S ISTEMA DE D ETECCI ÓN DE ATACANTES
de captura de bandera en el que usuarios desconocedores del E NMASCARADOS
sistema tratan de localizar un archivo determinado mientras su El sistema de detección propuesto construye secuencias de
actividad es monitorizada acciones llevadas a cabo por los usuarios del sistema a nivel
En [11] se propone el modelado de eventos del sistema de eventos, y aplica el algoritmo de Smith-Waterman [14] para
mediante los PHMMs (Profile Hidden Markov Models), pre- su alineamiento local. El análisis de sub-secuencias permite la
viamente aplicados en el campo de la bioinformática. Los identificación de aquellas situaciones en las que las acciones
experimentos realizados arrojan una gran precisión cuando efectuadas por el atacante se mezclan con las del usuario
se consideran conjuntos pequeños de muestras para su en- legı́timo: por ejemplo, cuando el usuario con acceso autorizado
trenamiento. En [12] se introduce el concepto de ataque abandona su puesto de trabajo sin cerrar sesión. En este
de mimetismo en el contexto de la detección de atacantes caso el atacante puede aprovechar su ausencia para efectuar
enmascarados. Asimismo se demuestra la vulnerabilidad de la actividades maliciosas, retirándose antes de ser detectado.
mayor parte de las propuestas actuales frente a estrategia de En la Figura 1 se muestra su arquitectura. El proceso de
evasión similares y se proponen algoritmos para su mitigación. detección se lleva a cabo de la siguiente manera: una vez
En [13] se introducen las técnicas de alineamiento de secuen- comenzada la monitorización de las acciones realizadas por
cias para el análisis de las acciones llevadas a cabo por los un usuario, cada vez que se ejecuta una nueva acción es
usuarios del sistema. Entre su contenido destaca la discusión incluida en la cadena Test. El proceso de análisis consiste
sobre la aplicación de las diferentes técnicas de alineamiento, en alinear Test con cada una de las secuencias de la co-
el diseño de técnicas para la actualización en tiempo real de los lección Legit = l1 , l2 , .., lm , las cuales contienen acciones
diccionarios de referencia y la propuesta de diferentes sistemas realizadas habitualmente por usuarios legı́timos del sistema.
de puntuación. Los algoritmos implementados implica un alto Para contrastar los resultados, Test también es alineada con
consumo de recursos computacionales. En consecuencia se las secuencias de la colección Intrusions = I1 , I2 , .., Ip ,
proponen heurı́sticas para reducir su consumo a costa de las cuales contienen actividades anómalas perpetradas por
Sistema de Detección de Atacantes Emascarados basado en Técnicas de Alineamiento de Secuencias 165

usuarios no familiarizados con el sistema. Una vez establecidas de las observaciones de las muestras. Dado que el número
las puntuaciones se aplica la prueba de validación. Cuando el de muestras es grande, U tiende a parecerse a la distribución
nivel de parecido de Test con alguna de las colecciones es normal, de manera que
lo suficientemente representativo, es etiquetada acorde a las
caracterı́sticas de sus secuencias El sistema propuesto repite U − Mu
z= (3)
este proceso por cada nueva acción monitorizada, y solo se σu
detiene si la prueba de validación es superada. De lo contrario, Donde mu y σu son la media y la desviación estándar de
se sobrentiende que no se dispone de suficiente información U, formuladas de la siguiente manera
para decidir la naturaleza del usuario, y se espera a que se
n1 n2
ejecuten nuevas acciones. mu = (4)
El sistema de puntuaciones para el algoritmo de alineamiento 2
de secuencias añade +3 a la puntuación final en los casos n1 n2 (n1 + n2 + 1)
σu = (5)
en que el valor de una posición de Test conincide con el de 12
su posición análoga en alguna secuencia de las colecciones Una vez obtenida la probabilidad de pertenencia, se com-
de referencia. Sin embargo, en caso de incoherencia no se prueba que la cota de porcentaje de error sea admisible.
producen modificaciones. La penalización por gap en las En ese caso puede confirmarse que la diferencia entre las
secuencias de las colecciones es de −2 mientras que en la puntuaciones de Test con las colecciones de secuencias es
cadena Test es de −3. A pesar de ello, la puntuación mı́nima considerable. El siguiente paso es decidir con cuál de ellas
emitible (menor nivel de similitud) es 0. presenta un mayor parecido. Para ello se considera la media
de las puntuaciones obtenidas con cada grupo. La secuencia de
puntuaciones cuyo promedio es más bajo corresponde con el
conjunto de mayor similitud. Cuando Test presenta un mayor
parecido con la colección de secuencias legı́timas, el usuario
se etiqueta como legı́timo. Si lo hace con la colección de
secuencias anómalas es etiquetado como atacante enmasca-
rado. Si no hay una diferencia clara, la prueba concluye de
manera indeterminada: no se tiene suficiente información para
establecer un etiquetado preciso. En ese caso se añaden nuevas
acciones a Test y se repite el proceso hasta que la prueba de
validación es superada.
VI. E VALUACI ÓN DEL S ISTEMA
Para llevar a cabo los experimentos se ha empleado la colec-
ción de muestras de Schonlau [6]. Los datasets de Schonlau
están compuestos por capturas de las actividades realizadas
Figura 1. Arquitectura del sistema de detección por 50 usuarios distintos operando sobre entorno Unix en
el año 1998. A pesar de su antigüedad son consideradas un
V. VALIDACI ÓN DEL E TIQUETADO estándar funcional para la evaluación de sistemas de detección
de ataques enmascarados. Están organizados de manera que
La validación del etiquetado se realiza mediante la prueba a cada usuario le corresponde un fichero que contiene una
de Mann-Whitney, conocida como U-test. Se trata de una serie de 15,000 acciones llevadas a cabo durante el periodo
extensión del T-test de Student no paramétrica adaptada al de captura. Los primeros 5,000 comandos corresponden a
análisis de dos muestras independientes. Su objetivo es la actividades legı́timas, por lo que han sido utilizadas en la
comprobación de que dos muestras simétricas han sido ex- elaboración de la colección de secuencias de actividades legı́ti-
traı́das a partir de la misma población. Para ello los datos mas. Los siguientes 10,000 comandos pueden tratarse tanto
deben de estar medidos en una escala ordinal, lo que implica ataques de enmascaramiento, como de actividades legı́timas.
la necesidad de ordenar las puntuaciones obtenidas. El cálculo Se ha extraı́do parte de los ataques enmascarados para la
del estadı́stico U, parte de los valores U1 y U2 , y es definido elaboración de la colección de actividades anómalas.
como U = min{U1 , U2 } donde La evaluación del sistema de detección consiste en un proceso
n1 (n1 + 1) de validación cruzada que involucra los distintos usuarios
U1 = n1 n2 − R1 (1) y los ataques enmascarados presentes en las colecciones de
2
Schonlau. La Tabla I muestra la tasas de falsos positivos o TPR
n2 (n2 + 1) (True Positive Ratio) y la tasa de falsos positivos o FPR (False
U2 = n1 n2 − R2 (2)
2 Positive Ratio) obtenidos al determinar diferentes longitudes
Siendo n1 y n2 las longitudes de los vectores de las en las secuencias que componen la colección de actividades
puntuaciones ordenadas y R1 y R2 las sumas de los rangos legı́timas de referencia.
166 J. Maestre, L. J. Garcı́a Villalba

Tabla I
TPR/FPR EN FUNCI ÓN DE LA LONGITUD DE SECUENCIA VII. C ONCLUSIONES
Se ha propuesto un sistema para el análisis de la activi-
Prec.\Long. 10 20 30 40 100 200 400 600 800
dad realizada por los usuarios del sistema en tiempo real e
TPR 0.96 0.97 0.96 0.960 0.97 0.983 0.974 0.9701 0.9712
identificar atacantes enmascarados. En su evaluación a partir
FPR 0,02 0.02 0.02 0.01 0.01 0.0077 0.0172 0.0232 0.0276
de los conjuntos de muestras de Schonlau ha alcanzado
valores promedios de T P R = 98,3 % y F P R = 0,77 %,
lo que demuestra un alto grado de precisión. Sin embargo los
El mejor resultado se obtiene con secuencias de longitud experimentos indican que el sistema es sensible a cambios en
200, siendo T P R = 98,3 % y FP R = 0,77 % Sin embargo la longitud de las secuencias que componen las colecciones de
el peor resultado se obtiene cuando la longitud es 10, con actividades legı́timas y anómalas. Asimismo se ha comprobado
T P R = 96,9 % y F P R = 2,68 %. Los cambios más repre- cómo la capacidad de acierto en el etiquetado es mejor en
sentativos se encuentran en las variaciones de FPR. La curva algunos usuarios que en otros. Como trabajo futuro se propone
que describe estos cambios muestra un punto de inflexión al la aplicación de técnicas para homogeneizar la calidad de los
considerarse longitud 200, siendo este su valor mı́nimo. conjuntos de entrenamiento y fortalecer el sistema frente a
El análisis por separado del comportamiento de los usuarios ataques de evasión.
del sistema con secuencias de longitud 200 indica que existen
usuarios más propensos a ser suplantados con éxito que otros. R EFERENCIAS
En la Figura 2 se muestra la representación en el espacio [1] M. B. Salem, S. Hershkop, S. J. Stolfo, “A Survey of Insider Attack
Detection Research,” Insider Attack and Cyber Security. Advances in
ROC (Receiver Operating Characteristic) de la precisión Information Security, Vol. 39, pp. 69-90, 2008.
obtenida en cada uno de ellos. El eje Y del espacio ROC [2] M. B. Salem, S. J. Stolfo, “Decoy document deployment for effective
lo constituyen los valores FPR de los experimentos, mientras masquerade attack detection,” Proceedings of the 8th International
Conference on Detection of Intrusions and Malware, and Vulnerability
que el eje X contiene el valor de los FPR. Esto habitualmente Assessment (DIMVA), Amsterdam, The Netherlands. Lecture Notes in
es interpretado como el intercambio entre los beneficios obte- Computer Science, Vol. 6739 pp. 35-54, July 2011.
nidos (TPR) por el sistema, y los costes que conlleva (FPR). [3] H. W. Ju, Y. Vardi, “A hybrid high-order Markov chain model for
computer intrusion detection,” Journal of Computational and Graphical
La ubicación óptima en el espacio ROC es la esquina superior Statistics, Amsterdam, The Netherlands. Lecture Notes in Computer
izquierda con T P R = 1, F P R = 0. A este punto se le llama Science Vol. 10(2), pp. 277-295, 2001.
clasificación perfecta, y su proximidad determina la calidad [4] K. Tan, A. Roy, “Why 6?: Defining the operational limits of stide, an
anomaly-based intrusion detector,” Proceedings of the IEEE Symposium
de la precisión del sistema. on Security and Privacy, Berkeley, CA, USA, pp. 188-201, May 2002.
El valor TPR ha oscilado en el intervalo aproximado del [5] M. Schonlau, M. Theus, “Detecting masquerades in intrusion detection
98 ± 2 %. El FPR ha variado en el intervalo aproximado based on unpopular commands,” Information Processing Letters, Vol.
76, pp. 33-38, November 2000.
5 ± 5 %, lo que indica una desviación algo más representativa. [6] M. Schonlau, W. DuMouchel, W. H. Ju, A. F. Karr, M. Theus, Y. Vardi,
La clasificación perfecta ha sido alcanzada por 22 de los 50 “Computer intrusion: Detecting masquerades,” Statistical Science, Vol.
usuarios que han participado en la prueba. 16, No.1, pp. 58-74, February 2001.
[7] R. A. Maxion, T. N. Townsend, “Masquerade detection using truncated
A la vista de los resultados arrojados en los experimentos command lines,” Proceedings of the IEEE International Conference on
queda demostrada la gran capacidad del sistema propuesto de Dependable Systems and Networks (DSN), Bethesda, MD, USA, pp.
identificar atacantes enmascarados. 219-228, June 2002.
[8] A. Garg, R. Rahalkar, S. Upadhyaya, K. Kwiat, “Profiling users in
GUI based systems for masquerade detection,” Proceedings of the IEEE
Information Assurance Workshop (IAW), West Point, NY, USA, pp. 48-
54, June 2006.
[9] M. A. Maloof, G. D. Stephens, “Elicit: A system for detecting insiders
who violate need-to-know,” Proceedings of the 10th International Sym-
posium on Recent Advances in Intrusion Detection (RAID), Gold Goast,
Australia. Lecture Notes in Computer Science, Vol. 4637, pp. 146-166,
September 2007.
[10] M. B. Salem, S. J. Stolfo, “Modeling User Search Behavior for Mas-
querade Detection,” Proceedings of the 14th International Symposium on
Recent Advances in Intrusion Detection (RAID), Menlo Park, CA, USA.
Lecture Notes in Computer Science, Vol. 6961, pp. 181-200, September
2011.
[11] L. Huang, M. Stamp, “Masquerade detection using profile hidden
Markov models,” Computers & Security, Vol. 30 (8), pp. 732-747,
November 2011.
[12] J. E. Tapiador, J. A. Clark, “Masquerade mimicry attack detection: A
randomised approach,” Computers & Security, Vol. 30 (5), pp. 297-310,
May 2011.
[13] S. Coull, B. Szymanski, “Sequence alignment for masquerade detection,”
Computational Statistics & Data Analysis, Vol. 52 (8), pp. 4116-4131,
April 2008.
[14] T. F. Smith, M. S. Waterman, “Identification of common molecular
subsequences,” Journal of Molecular Biology, Vol. 147 (1), pp. 195-
Figura 2. TPR/FPR de cada usuario en el espacio ROC 197, 1981.
RECSI 2014, Alicante, 2-5 septiembre 2014

Cadena de Custodia en el Análisis Forense.


Implementación de un Marco de Gestión
de la Evidencia Digital.
Tomás Marqués-Arpa Jordi Serra-Ruiz
Estudios de Informática, Multimedia Estudios de Informática, Multimedia
y Telecomunicación. y Telecomunicación.
Universitat Oberta de Catalunya. Universitat Oberta de Catalunya.
Email: tomasmarques@uoc.edu Email: jserrai@uoc.edu

Resumen—Uno de los problemas principales en el análisis Ası́ pues, se fijan los objetivos de la investigación que son:
forense de la información es la CdC (Cadena de Custodia), es
• Una revisión, análisis y evaluación de la literatura pro-
decir, el procedimiento de trazabilidad de todas las pruebas que
se obtienen durante las distintas etapas del proceso de instrucción puesta [4]–[8].
judicial. Generalmente, las evidencias son obtenidas por los • La implementación de un MGED (Marco de Gestión de
Cuerpos y Fuerzas de Seguridad del Estado y, posteriormente, la Evidencia Digital) y el estudio de su funcionalidad.
son examinadas y analizadas por analistas forenses en seguridad
de la información. Es imprescindible que la transferencia de
información entre las partes implicadas en el proceso se lleve a Análisis forense. En cuanto a la etimologı́a de la palabra
cabo con las máximas garantı́as, tanto judiciales como procesales. forense, se puede decir que viene del latı́n forensis (“antes del
El propósito de este artı́culo es la propuesta de una CdC digital foro”), aunque en la actualidad se refiere a algo relacionado
y segura, vista como un conjunto de eslabones. Gracias a ello,
la prueba no perderá valor jurı́dico puesto que aunque se haya
con los “Tribunales de Justicia” [9].
roto un eslabón, habrá quedado asegurada por la solidez de los Como se define por Clint et al [10] y Carrier [11], la
eslabones anteriores. ciencia forense digital es una rama de la ciencia forense que
Palabras clave—Cadena (chain), cifrado (cipher), custodia abarca la recuperación e investigación de los materiales que
(custody), estampado (stamping), evidencia (evidence), forense se encuentran en los dispositivos digitales o generados por
(forensic), geolocalización (geolocation), huella (footprint), pa-
quete (package). ellos y a menudo, en relación con delitos informáticos. En la
ciencia forense, los principios cientı́ficos, métodos y técnicas
I. I NTRODUCCI ÓN se aplican a la justicia buscando el bien de la sociedad y
En la actualidad, con el auge de las TICs (Tecnologı́as de de la seguridad pública [9]. Ası́ pues, el forense informático
la Información y las Comunicaciones), es necesario propor- es responsable de asegurar, identificar, preservar, analizar y
cionar herramientas, métodos y procedimientos que aseguren presentar pruebas digitales de modo que se acepten en los
la misma seguridad para las evidencias digitales. procesos judiciales [9].
El estudio se ha desarrollado en virtud de las “lı́neas de
investigación de la Comisión Europea para 2013” [1]. Evidencia. Se denomina ası́ a cualquier elemento que pro-
La metodologı́a utilizada ha sido la de “Diseño y Creación” porcione la información, mediante el cual se pueda deducir
(sensibilización, sugerencia, desarrollo, evaluación y con- alguna conclusión o que constituya un hallazgo relacionado
clusión) [2], [3]. Ası́, podemos indicar que los principales con el hecho que está bajo investigación [9].
beneficios o resultados de este estudio en las evidencias
digitales, serán los siguientes: la generación de una propuesta Cadena de Custodia. Consiste en un informe detallado
en el proceso de creación y transmisión, la contribución para la que documenta la manipulación y el acceso a las pruebas
mejora en la gestión y el planteamiento de un método seguro objeto de la investigación. La información contenida en el
para el envı́o. documento debe ser conservada adecuadamente y mostrará los
Las principales cuestiones planteadas son si es posible datos especı́ficos, en particular todos los accesos con fecha y
desarrollar un nuevo método para la CdC dgital, si se puede hora determinada [12].
implementar y en caso afirmativo, si se puede extender a los Citando a Colquitt: “El objetivo pues, de establecer una
enlaces, datos y aplicaciones. Otras cuestiones son si el método Cadena de Custodia es para convencer al Tribunal de Justicia
propuesto es más seguro que el utilizado en la actualidad y de que es razonablemente probable que la exposición sea
con menor carga computacional, ası́ como si existen métodos auténtica y que nadie ha alterado o manipulado la prueba
anteriores similares al tema tratado. fı́sica” [13].
168 T. Marqués-Arpa, J. Serra-Ruiz

El Instituto Nacional de Justicia de los EE.UU., define


la CdC como “un proceso que se utiliza para mantener y
documentar la historia cronológica de las pruebas”. Esto
significa el control de las personas que recogen la evidencia y
de cada persona o entidad que posteriormente tiene la custodia
de la misma, de las fechas en las que los artı́culos fueron
recogidos o transferidos, de la agencia y el número del caso
o el nombre del sospechoso, ası́ como una breve descripción
de cada elemento [14].
En lo que respecta al tratamiento de la evidencia digital en la
CdC, podemos citar la norma: ”BS 10008:2008. Especificación
sobre las pruebas y admisibilidad legal de la información
electrónica, BSI British Standard” [15]. En ella se incluyen
los diferentes aspectos relacionados con el tratamiento de las
principales pruebas digitales.
Para probar la CdC, es necesario conocer todos los detalles
sobre cómo se manejó la evidencia en cada paso del camino. Fig. 1. MGED propuesto por Ćosić and Bača [7].
La vieja fórmula utilizada por la policı́a, los periodistas y los
investigadores de “quién, qué, cuándo, dónde, por qué y cómo”
(del inglés “las cinco Ws y una H”), se puede aplicar para y Bača [7]. Aconsejan utilizar una función SHA-2 (Secure
ayudar en la investigación forense de la información [7], [16]. Hash Algorithm) de la huella digital de la evidencia, una
Para garantizar la admisibilidad de las pruebas, es necesario caracterı́stica biométrica de autenticación e identificación para
prestar especial atención a los métodos y procedimientos la firma digital (quién), control de fecha y hora mediante la
utilizados para la obtención de las mismas, respetando no sólo adición de un estampado generado por una entidad de con-
los procedimientos técnicos sino también la legislación judicial fianza (cuándo), la utilización de servicios (posicionamiento
y la legislación aplicable al caso. Las medidas tomadas no global por GPS y GLONASS y/o Google Maps) o algún
deben modificar las pruebas y todas las personas involucradas dispositivo de RFID para la geolocalización (dónde) y el
deben ser competentes en procedimientos forenses. Todas las cifrado asimétrico para asegurar la evidencia digital (cómo).
actividades realizadas deben documentarse y conservarse las
pruebas, de modo que estén disponibles para la repetición Huella de la evidencia. Ćosić y Bača proponen que no se
de exámenes con el mismo resultado. En ciertos momentos, utilice la evidencia digital original, en su lugar recomiendan
los procedimientos podrán llevarse a cabo en presencia de un que se maneje una huella digital de las pruebas [7]. Para
notario o secretario judicial. Las personas que están a cargo calcular la huella digital se utilizará una función hash SHA-2,
de las pruebas digitales son las responsables de las medidas en lugar de las funciones SHA-0 ó SHA-1. Esto se hace para
adoptadas con respecto a ellas mientras estén bajo su custodia evitar un ataque criptográfico (colisión y/o ataque preimagen).
[15]. No hay lı́mite del tamaño del archivo de evidencia digital
para el que se desea calcular un hash. Se puede utilizar un
II. E STADO DEL A RTE archivo (jpg, tiff, txt, etc.), un grupo de archivos o algún tipo de
archivo especı́fico (zip, rar, tar, etc.) o incluso una unidad fı́sica
Marco de Gestión de la Evidencia Digital (MGED). (disco duro, memoria externa,etc). Al utilizar una función hash
Ćosić y Bača han propuesto el Digital Evidence Management SHA-2, se dará un valor de tamaño fijo (224, 256, 384 ó 512
Framework [7], mediante el cual es posible desarrollar un bits dependiendo de sı́ se usa SHA-224, SHA-256, SHA-384
marco de gestión sencillo para el proceso de la investigación ó SHA-512). Las huellas más utilizadas son SHA-256 y SHA-
digital basado en las causas y en los efectos producidos por 512.
los eventos. Las fases se pueden organizar en función de
los requisitos básicos de la investigación, es decir, habrá que Caracterı́sticas biométricas. Ćosić y Bača plantean, con
encontrar la evidencia que muestre las causas y efectos de un el fin de realizar la autenticación e identificar y conocer a
evento y por tanto, será necesario desarrollar hipótesis sobre las personas que manejan la evidencia, la utilización de las
los hechos ocurridos en la escena del delito. Cada fase tiene caracterı́sticas biométricas del individuo [7]. Como pueden
un objetivo claro y los requisitos y procedimientos se pueden ser la huella de algún dedo de la mano, las caracterı́sticas
desarrollar en consecuencia. Como afirman Carrier y Spafford, del iris del ojo, las caracterı́sticas morfológicas de la cara,
se deberán perfilar claramente las definiciones y los conceptos etc. El requisito previo para poder utilizar las caracterı́sticas
que se utilicen en este marco [17]. biométricas, es la necesidad de disponer de una base de datos
En la Figura 1 se muestra la propuesta del concepto del de todas las personas que manejan las evidencias, entre las
MGED, que garantiza la seguridad de una cadena de custodia que se deben incluir los agentes de policı́a relacionados de
sobre la base de los “cinco Ws y una H” que proponen Ćosić alguna manera con el caso, los investigadores que han obtenido
Cadena de Custodia en el Análisis Forense. Implementación de un MGED. 169

las pruebas de campo, los investigadores forenses, los peritos Cifrado asimétrico. Para una seguridad mayor, Ćosić y
judiciales y el personal judicial. Bača se refieren a un cifrado asimétrico [7]. La evidencia
digital y el valor obtenido se cifrarán con la clave privada
Estampado de tiempo. Ćosić y Bača recomiendan para recibida de la Autoridad de Certificación y se almacena para
conocer el momento en el tiempo en el que se descubre su uso posterior. Todo el proceso se representa en la Figura 1.
la evidencia y han sucedido los acontecimientos y acciones,
una estampación digital del tiempo utilizando una fuente de
confianza conocida [7]. III. N UESTRA PROPUESTA
Otros autores como Willassen [18], indican que también Propuesta de creación y transmisión de la evidencia
es posible el uso de métodos correlativos de sello de tiempo digital. Se muestra en la Figura 2 y se basa en el método
almacenado en el sistema de adquisición y que ya fueron de los ”Cinco Ws y una H” [7], [16].
creados por otros sistemas (por ejemplo, mediante la fecha Ćosić y Bača [7] proponen el uso de la identificación
y hora de páginas web generadas dinámicamente). biométrica de la persona que se encarga de la captación de
Gayed et al [4] citan la “web semántica” como solución las pruebas, como la mejor forma de referencia. Aunque
flexible para simbolizar la diferente información, ya que en las aplicaciones de Smartphones su uso está limitado,
proporciona los lenguajes de marcas semánticas (markup) para en la actualidad, se está comenzando a crear aplicaciones
la representación de los datos con el apoyo de diferentes para Android que detectan el iris del ojo o incluso la huella
vocabularios. Estas caracterı́sticas pueden ser explotadas para dactilar en la identificación personal y su posterior uso como
mostrar el documento tangible de la CdC que asegura su medio de pago. Ası́, en un futuro próximo no será necesario
fiabilidad e integridad. Por otra parte, pueden incluirse también el PIN (Personal Identification Number) para desbloquear
los mecanismos de consulta de los datos representados para los sistemas como hasta ahora y se aplicará en su lugar la
responder a diferentes cuestiones forenses y de procedencia, identificación biométrica.
formuladas por los jurados sobre el caso tratado. En la identificación sı́ es posible aplicar el número IMEI (In-
Ćosić y Bača proponen que el método para esta fase sea un ternational Mobile Equipment Identity) del teléfono, ası́ como
“tiempo de estampado de confianza” [8]. El estándar “RFC el número de teléfono asociado a la tarjeta SIM (Subscriber
3161” define que la marca de tiempo de confianza es un Identity Module). Debido a la legislación antiterrorista aplicada
sello de tiempo emitido por una Autoridad de Certificación en la mayorı́a de los paı́ses, los números de teléfono asociados
(Trusted Third Party, TTP), que actúa como una Autoridad a las tarjetas SIM identificarán al propietario.
de Sellado de Tiempo (Time Stamping Authority, TSA) [19]. Para determinar el lugar donde se genera la evidencia digital
Cuando se obtiene la evidencia digital, el marco de gestión es necesario el uso de la geolocalización. Para ello, la forma
envı́a una solicitud a la TSA para obtener un certificado más precisa es mediante el uso de satélites. Hasta hace poco
de sello de tiempo de confianza. En este proceso hay que sólo era posible utilizar la constelación de satélites norteamer-
tener un acceso al sistema de gestión de la TSA, o podemos icanos GPS, pero a partir de los últimos años también se puede
desarrollar un sistema interno con la infraestructura de la TSA. utilizar en combinación los rusos GLONASS y, en un futuro
Es imprescindible mencionar que en este tipo de “sistema de próximo, también se podrá utilizar la constelación europea
tiempo” deben existir unos “auditores externos” que actúan Galileo o GNSS (Global Navigation Satellite System). Si en
como testigos [7]. la actualidad la identificación de la posición se realiza con
un error máximo entre 2 y 3 metros, próximamente gracias
Geolocalización. Ćosić y Bača indican que se debe deter- a la exactitud será de centı́metros. Ası́ mismo, el uso de
minar el lugar exacto donde se maneja la evidencia digital datos cifrados GNSS PRS (Public Regulated Service) en la
y dónde se ha manipulado [7]. Actualmente en los EE.UU. geolocalización por parte de los investigadores policiales podrá
algunos organismos utilizan la tecnologı́a de RFID (Radio evitar la posibilidad de ataques jamming y spoofing mediante
Frequency IDentification), para hacer un seguimiento de la interferencias.
evidencia durante su ciclo de vida. A pesar de que con RFID La utilización de redes WiFi será limitada a WiFi WPA2 PSK
se puede hacer un seguimiento de una evidencia digital, no con clave robusta no contenida en diccionario, que junto a la
se pueden conseguir las coordenadas (localización). Por este utilización de redes de telefonı́a 3G/4G podrán proporcionar
motivo, otros autores como Strawn [20], recomiendan el uso geolocalización “indoor” mediante el servicio de Google,
de un Sistema de Posicionamiento (GPS o GLONASS) para incluso como verificación de que la localización “outdoor”
efectuar la recogida e investigación de las evidencias. por satélite no está siendo atacada, dentro de los márgenes
Respecto a la utilización de etiquetas RFID, podemos ase- lógicos de inexactitud del servicio de Google.
gurar que es muy práctica en la clasificación y almacenamiento Además, existe otra posibilidad de asegurar la geolocaliza-
de la evidencia fı́sica, como por ejemplo en los depósitos ción de las pruebas. Si el dispositivo móvil está conectado a
judiciales, porque si se pierde el documento de control es una red de telefonı́a GSM, el proveedor de servicios tiene un
posible encontrar la evidencia. Pero lo ideal es que la evidencia registro de las conexiones entre el dispositivo y las antenas
digital incorpore los datos de geolocalización en los metadatos, en la zona, por tanto el dispositivo está geolocalizado. El
tal y como se propone en el presente trabajo. problema del uso de estos datos está en que es necesaria
170 T. Marqués-Arpa, J. Serra-Ruiz

una orden judicial para que el proveedor de servicio de datos posible su transmisión por correo eléctrónico, la forma más
telefónicos pueda facilitar la información en una investigación segura de envı́o es a través de un servidor SFTP (Secure File
(solicitud de prueba anticipada) [21]. Transfer Protocole) o un FTPS (FTP-SSL) que proporcionen
acceso remoto y, sobre todo, seguro. Aunque en los dos
protocolos se recurre al algoritmo asimétrico (RSA, DSA),
algoritmo simétrico (AES), y un algoritmo de intercambio
de claves, para la autenticación del FTPS utiliza certificados
X.509, mientras que SFTP utiliza las claves SSH. Por otro
lado, aunque SFTP es más avanzado que FTPS, algunos
dispositivos pueden no ser compatibles con SFTP (como los
móviles, consolas etc) y sin embargo con FTPS sı́ lo son.
¿Qué? La posibilidad de que la evidencia sea interceptada (phi-
¿Cúando? shing, ataques al servidor, etc) hace que sea muy conveniente
¿Dónde? su cifrado, por lo que se propone AES 128 o, preferiblemente,
¿Dónde? 256 bits [22], [23].
Mediante una herramienta alojada en la Web se-
¿Quién? ¿Cómo? ¿Por qué? gura (para prevenir ataques wiretapping y man-in-the-
middle) de la compañı́a DigiStamp que actúa como TSA
(https://www.digistamp.com), se obtienen las huellas digitales
(SHA-2, 256 ó 512bits). La TSA crea un archivo con el mismo
Fig. 2. Propuesta de creación y transmisión de la evidencia digital.
nombre que la evidencia y extensión p7s, que es un “PKCS#7
Signature” (Public-Key Cryptography Standard), de acuerdo
Para generar la evidencia, tal como se muestra en la con la sección 3.2 del “RFC 2311” [24]. La huella digital se
Figura 2, en primer lugar la cámara debe estar activada en almacena en la base de datos de la TSA y devuelve al emisor
el dispositivo. De este modo se obtiene una fotografı́a por el archivo de extensión p7s. La TSA vı́a herramienta alojada
una persona identificada y cualificada (tanto a nivel técnico en su página web, ofrece la posibilidad de comprobar en el
como jurı́dico, normalmente un miembro de las Fuerzas de futuro la fecha y la hora de certificación del archivo (a modo
Seguridad del Estado), para ası́ poder obtener unas pruebas de herramienta de auditorı́a).
válidas que podrán ser utilizadas en las actuaciones judiciales Como cada vez que se envı́a a la TSA una solicitud de sello
posteriores. En caso de que el dispositivo se encuentre bajo de tiempo se genera un archivo de extensión p7s, es posible el
el área de cobertura de los satélites o con acceso seguro a análisis forense de la CdC mediante el estudio de la correlación
Internet, la prueba obtenida podrá ser geolocalizada. Una vez temporal de archivos.
obtenida la evidencia con sus respectivos metadatos (datos
asociados), se obtiene una huella digital que es enviada de Análisis de funcionalidad del paquete de evidencia.
manera segura (con cifrado SSL/TLS por el puerto 443) a Se trata de demostrar que mediante un teléfono móvil in-
una TSA, la cual devuelve otro archivo (por el mismo enlace teligente o Smartphone (o Tableta, Smartcamera, etc), es
seguro) con el “tiempo de confianza de estampado” como está posible obtener evidencias digitales, ası́ como definir e iniciar
definido en el estándar “RFC 3161”, junto con la evidencia una CdC.
que indica la certificación, mediante la fecha y hora de envı́o. Mediante el análisis de los metadatos asociados con la
evidencia (datos contenidos en el archivo de imagen inter-
Propuesta de creación del paquete de evidencia. El cambiable, Exif ), es posible analizar con más detalle las
paquete estará formado por un archivo zip en cuyo interior caracterı́sticas de la prueba:
contendrá los ficheros de evidencias (fotografı́as, audios y - Tı́tulo de la prueba. Es conveniente no modificar el nombre
videos), los ficheros devueltos por la TSA (en formato p7s) que de forma automática genera el Smartphone, ya que incluye
y el fichero “documento de pruebas y control de cambios”. la fecha y hora de la adquisición de la prueba.
Con el fin de garantizar la CdC, es esencial mantener copias - Tipo de archivo de la prueba. Permite identificar si se trata
de seguridad tanto del paquete de evidencia recibido como de un archivo de audio, vı́deo o imagen fotográfica.
del enviado, en dispositivos fı́sicos externos. Ası́, en caso - Fecha y hora de la captura de la evidencia.
necesario y a requerimiento de los investigadores forenses, - Carpeta donde la evidencia se guarda en el Smartphone.
será posible determinar el punto de ruptura de la cadena de - Nombre del lugar en donde se obtuvo la evidencia. Se
custodia y el momento a partir del cual la evidencia deja de basa en el sistema de geoposicionamiento Google, por tanto,
ser válida, pero se evita su anulación. es esencial que la opción esté habilitada en el sistema operativo
El diseño de la CdC deberı́a ser genérico y no debe limitarse y 3G/4G o cobertura WiFi WPA2 PSK con clave robusta no
al tamaño de las evidencias, cuyo valor puede ser desde contenida en diccionario.
unos pocos MBytes (fotografı́as, audios, etc.) hasta valores - La geolocalización de la prueba (latitud y longitud), basada
de TBytes (discos duros). Aunque para ficheros pequeños es en el dispositivo GPS y/o servicio de Google.
Cadena de Custodia en el Análisis Forense. Implementación de un MGED. 171

- Tamaño de la evidencia, válido para indicar el camino varias opciones para el formato del mismo (texto plano, xml,
a seguir en el tratamiento y la mejor manera de enviar la doc, etc.) La propuesta de este trabajo, por su sencillez y uni-
información. versalidad, es de texto plano. El documento deberá contener,
- Resolución del archivo de imagen. Muestra la calidad de como mı́nimo:
la información de las pruebas. - Nombre detallado de la persona que adquiere la evidencia,
- La localización del archivo en la estructura de ficheros la posición, la razón, el lugar, la hora y la fecha, las auto-
de la memoria del Smartphone: datos necesarios con el fin de rizaciones, el nombre de las evidencias y los nombres de los
tratar el archivo denominado “paquete de evidencia”. ficheros de sellado de tiempo (archivos p7s).
- Nombre detallado, la posición, la razón, la ubicación, la
hora y fecha de cada persona a la que se envı́a el documento
en la CdC.
- La certificación en clave asimétrica del documento com-
pleto, con indicaciones de principio y fin.

Fig. 3. Detalle del fichero Exif del GPS.

La mayor parte de los datos incluidos en los metadatos se


pueden utilizar al generar la información en el documento de
pruebas y de control de cambios. La Figura 3 muestra los
detalles del fichero Exif generado en la utilización del GPS.
Lo mismo sucede con la posición exacta para localizar el
punto de adquisición de las pruebas. La mejor manera de
confirmar dicho lugar es mediante el uso de GPS, pero tiene
el inconveniente de sólo ser posible si el satélite es visible, ya
que si no la información será aproximada.
Una vez que se ha obtenido la prueba y se han extraı́do los
datos de identificación, es posible cifrar la evidencia. Para ello
se puede recurrir al uso de aplicaciones de cifrado AES de al
menos 128 bits.
Con la evidencia cifrada, será necesario enviar de manera Fig. 4. Documento de pruebas y de control de cambios.
segura el fichero a una TSA que proporcione un servicio de
notarı́a electrónica. Si se utilizan los servicios de DigiStamp, La Figura 4 es un ejemplo del documento, que ha sido
se obtiene a nivel local una huella del tipo SHA-256 o SHA- firmado con una clave RSA asimétrica de 2048 bits, utilizando
512 bits. En cualquier momento se podrá verificar que el sello el programa GnuPG versión v2.0.1 para Windows 7. La apli-
de tiempo ha sido generado por la TSA, ası́ como el momento cación del programa será necesaria cada vez que el documento
de generación. avance en la CdC y se hagan modificaciones a firmar.
Hay que señalar tres desventajas detectadas:
- La certificación es sólo para el momento en que se envı́a Propuesta de una aplicación en Android. Consiste en la
el archivo a la TSA, pero no indica la hora de la generación creación de una aplicación para teléfonos móviles inteligentes.
de evidencia. Debe ser capaz de capturar la evidencia, crear el paquete
- El trabajo de campo en el sitio web DigiStamp es imposi- de evidencia y realizar envı́os de correo electrónico o a un
ble, ya que no está diseñado para funcionar en dispositivos servidor seguro SFTP o FTPS.
móviles y no funciona con cualquier navegador (Android, La aplicación ha de tener en cuenta los componentes del
Opera, Firefox, Chrome, etc.). Por lo tanto, es necesario equipo que necesiten ser activados. Una vez que la evidencia
transferir la información a un ordenador personal y utilizar ha sido capturada, la aplicación será capaz de cifrar, realizar
un navegador de Internet. una conexión segura a una TSA y obtener los archivos p7s.
- El servicio tiene un costo por fichero. Por dicho motivo, se Con la ayuda de los metadatos, será capaz de generar el
podrı́a crear algún sistema que funcionara directamente para documento de pruebas y de control de cambios, que estará
nuestro propósito. firmado utilizando una clave asimétrica RSA de 2048 bits.
Al final ha de ser capaz de generar un archivo comprimido
Documento de pruebas y control de cambios. Existen de la evidencia, formado por la propia evidencia, el archivo
172 T. Marqués-Arpa, J. Serra-Ruiz

p7s y el documento de pruebas y de control de cambios. Este R EFERENCIAS


fichero es el paquete de evidencia. Finálmente, el resultado [1] European Commission C-4536. “Lı́neas de investigación de la Comisión
deberá estar listo para ser enviado por email o preferentemente Europea para 2013”. Cooperación, tema 10, seguridad. Área material:
a un servidor seguro SFTP. 10.1.4. Delincuencia común y forense - Topic SEC-2013.1.4-2.- Desa-
rrollo de un Marco Común Europeo para la aplicación de las nuevas
tecnologı́as en la recopilación y el uso de la evidencia, julio 2012.
IV. C ONCLUSIONES Y TRABAJOS FUTUROS [2] V. Vaishnavi, W. Kuechler. “Design research in information systems”,
2004 (revisión octubre 2013). Disponible en http://desrist.org/design-
Este trabajo ha sido desarrollado con la intención de crear research-in-information-systems/.
un método válido de CdC. En un principio la idea era sólo [3] B. J. Oates. “Researching information Systems and Computing”. SAGE
crear la cadena, pero con posterioridad se comprobó que ésta Publications Ltd. London, 2006, (revisión 2013).
[4] T. F. Gayed, H. Lounis, M. Bari. “Cyber Forensics: Representing
debı́a tener un punto de partida: la generación de la evidencia. and (Im)Proving the Chain of Custody Using the Semantic web”.
Y fue allı́ donde se ha hallado lo que posiblemente sea el COGNITIVE 2012: The Fourth International Conference on Advanced
punto más débil de ella. Cognitive Technologies and Applications, 2012.
[5] G. Giova. “Improving Chain of Custody in Forensic Investigation of
Por lo tanto, ¿se debe seguir un guion en la adquisición Electronic Digital Systems”. International Journal of Computer Science
de pruebas para asegurar que se procede de manera correcta? and Network Security, vol. 11, no. 1, 2011.
La respuesta es que no. La tecnologı́a actual puede permi- [6] S. L. Garfinkel. “Providing cryptographic security and evidential chain
of custody with the advanced forensic format, library and tools”. Naval
tir la automatización de ciertas tareas y rutinas, que es la Postgraduate School & Harvard University, USA, 2011.
propuesta principal de este trabajo mediante la creación de [7] J. Ćosić, M. Bača. “A Framework to (Im)Prove “Chain of Custody” in
una herramienta que automatice el proceso en la parte más Digital Investigation Process”. Proceedings of the 21st Central European
Conference on Information and Intelligent Systems, 2010.
débil de la cadena: la correcta adquisición de la evidencia. [8] J. Ćosić, M. Bača. “(Im)Proving Chain of Custody and Digital Evidence
Posteriormente, la prueba debe ser protegida de las mayores Integrity with Time Stamp”. Universidad de Zagreb, 2010.
amenazas que se han detectado: spoofing, jamming, phishing, [9] M. Colobrán. “Análisis Forense de la Información”. Conceptos básicos.
MISTIC. Universitat Oberta de Catalunya, 2012.
man-in-the-middle, wiretapping, colisión y preimagen. Para [10] M.R. Clint, M. Reith, G. Gunsch. “An Examination of Digital Forensic
evitar esto y sobre todo, para que no se pueda modificar Models”, 2002.
fácilmente la evidencia sin dejar rastros, se ha propuesto un [11] B.D. Carrier. “Defining Digital Forensic Examination and Analysis
Tools”. International Journal of Digital Evidence, 2002.
método de trabajo. [12] P. G. Bradford, D. A. Ray. “An Online Algorithm for Generating Fractal
Las dos cuestiones planteadas en las preguntas y objetivos Hash Chains Applied to Digital Chains of Custody”. Intelligence and
de investigación: ¿es posible desarrollar un nuevo método Security Informatics 2007 Conference (ISI 2007).
[13] J. A. Colquitt. “Alabama Law of Evidence”. The Mitchie Company–Law
para la Cadena de Custodia? y, ¿el nuevo método puede ser Publishers, Charlottesville, VA, 1990.
implementado? La respuesta es afirmativa en ambos casos, [14] National Institute of Justice, USA. “Crimes Scene Guides”, 2011 (acceso
como se ha demostrado. febrero 2014). Disponible en http://www.ojp.usdoj.gov/nij/topics/law-
enforcement/investigations/crime-scene/guides/glossary.htm.
Principalmente los trabajos de mejora se pueden centrar en [15] A. Guash. “Análisis Forense de la Información”. El informe peri-
los siguientes aspectos: cial. Análisis forense y sistema legal. MISTIC. Universitat Oberta de
- Creación de una aplicación Android en la forma propuesta. Catalunya, 2012.
[16] J. Tallim. “Deconstructing Web Pages”. Media Smarts, 2012 (accesso
- Diseño de un dispositivo hecho en una plataforma del febrero 2014). Disponible en http://mediasmarts.ca/.../deconstructing-
tipo “Raspberry Pi” o “BeagleBone Black” (pequeños or- web-pages-lesson.
denadores de muy bajo coste que admiten conexión de [17] B. D. Carrier, E.H. Spafford. “An Event-Based Digital Forensic Inves-
tigation Framework”. DFRWS, 2004.
periféricos) y que pueden ofrecer otras posibilidades en la [18] C. Willassen. “Hypothesis based investigation of Digital Time Stamp”.
creación de las CdC mediante la utilización de imágenes en FIP, Advanced in Digital Forensic IV, pp.75–86, 2008.
lugar de huellas, y que por tanto eviten la recusación de [19] S. Vanstone, P. van Oorschot, A. Menezes. “Handbook of Applied
Criptografy”. CRC Press, 1997.
una evidencia por la degeneración del soporte fı́sico que la [20] C. Strawn “Expanding the Potential for GPS”. Evidence Acquisition,
contiene. Small Scale digital evidence Forensic Journal, vol.3, no.1, 2009.
- Uso de la identificación biométrica de los usuarios de [21] J. L. Garcı́a Rambla. “Un forense llevado a juicio”. Prueba anticipada
en un proceso civil, cap.7. Flu-Proyect y Sidertia Solutions, Creative
acuerdo con el progreso técnico. Commons, 2013.
- Utilización de geolocalización lo más precisa y segura [22] NIST 197. “Advanced Encryption Standard (AES)”. Federal Information
posible con la incorporación de datos de posicionamiento Processing Standards. Special Publication 197. National Institute of
cifrados GNSS-PRS Standards and Technology (NIST), Maryland, USA, 2001.
[23] Blue Book. “Recommendation for Space Data System Standards”.
- Uso de datos de la tarjeta SIM para proporcionar la CCSDS Cryptographic Algorithms Recommended Standard CCSDS
identificación del usuario. 352.0-B-1. CCSDS Secretariat. Space Communications and Navigation
- Realización de ciberataques a la propuesta con el fin de Office. NASA Headquarters, Washington, USA, 2012.
[24] S. Dusse, USSE, P. Hoffman, B. Ramsdell, L. Lundblade, L. Repka
demostrar su debilidad o su fortaleza. “RFC 2311”. S/MIME Version 2 Message Specification. ISOC, Virginia,
USA, 1998.
AGRADECIMIENTOS
This work was partly funded by the Spanish Government
through projects: TIN2011-27076-C03-02 “CO-PRIVACY”
and CONSOLIDER INGENIO 2010 CSD2007-0004 “ARES”.
RECSI 2014, Alicante, 2-5 septiembre 2014

Esteganografı́a en zonas ruidosas de la imagen


Daniel Lerch-Hostalot David Megı́as
Universitat Oberta de Catalunya, Universitat Oberta de Catalunya,
Internet Interdisciplinary Institute (IN3), Internet Interdisciplinary Institute (IN3),
Estudis d’Informàtica, Multimèdia i Telecomunicació, Estudis d’Informàtica, Multimèdia i Telecomunicació,
Rambla del Poblenou, 156, Rambla del Poblenou, 156,
08018 Barcelona, 08018 Barcelona,
Email: dlerch@uoc.edu Email: dmegias@uoc.edu

Resumen—La mayor parte del estegoanálisis en el estado imagen [16]. Finalmente, esta debilidad de la sustitución del
del arte se basa en el uso de técnicas de machine learning, LSB ha culminado en ataques como el RS [5] o el SPA [4],
es decir, en entrenar clasificadores para que sean capaces de los cuales han conseguido detectar la presencia de información
diferenciar una imagen portadora de una imagen con mensaje
oculto. Las investigaciones realizadas en este campo muestran oculta incluso cuando el número de bits incrustados apenas
que las zonas de la imagen más difı́ciles de modelar y, en alcanza el 3 % del número de pı́xeles de la imagen. Debido a
consecuencia, aquellas en las cuales es más difı́cil detectar un estos ataques, el método de sustitución del LSB ha dejado de
mensaje incrustado, son las zonas ruidosas. Estas corresponden ser considerado como seguro.
a lı́neas y texturas. En este artı́culo presentamos un nuevo El sistema que ha tomado el relevo de la sustitución del LSB
método de esteganografı́a que permite ocultar información en
dichas zonas, dificultando ası́ su detección. La efectividad del es el conocido como LSB matching [15]. Este método es muy
método se ha comprobado usando dos bases de datos de imágenes similar al anterior, pues solo tiene una pequeña diferencia: en
diferentes y dos estegoanalizadores recientes. Los experimentos lugar de sustituir el valor del LSB directamente por el bit a
demuestran que el algoritmo propuesto mejora significativamente incrustar, lo que hace es modificarlo sumando o restando uno
la indetectabilidad estadı́stica respecto al sistema LSB matching al valor total del pı́xel cuando el bit a incrustar no coincide con
para la misma capacidad de incrustación.
Palabras clave—Esteganografı́a, Estegoanálisis. el LSB del pı́xel correspondiente. El efecto sobre el LSB es el
mismo, ası́ como la dificultad para detectarlo visualmente. Sin
I. I NTRODUCCI ÓN embargo, al proceder de esta manera, ya no se trata de una
operación asimétrica y no se introducen anomalı́as estadı́sticas
La esteganografı́a estudia diferentes técnicas para la oculta- tan evidentes. De hecho, con este método resulta muy difı́cil
ción de datos en otros objetos, conocidos como objetos porta- diferenciar un mensaje oculto del ruido existente en todas
dores. Actualmente, estos objetos portadores suelen ser medios las imágenes que aparece como consecuencia del proceso de
digitales, como por ejemplo imágenes, vı́deos o archivos de captura.
sonido. No obstante, sin lugar a dudas, el medio más utilizado Para detectar este método de ocultación de información en
en la actualizad son las imágenes, por su amplia difusión en imágenes los estegoanalistas han recurrido al uso de técnicas
Internet. de machine learning [2]. Para ello es necesario preparar una
Uno de los métodos más usados para ocultar información base de datos de imágenes que se usarán para entrenar un
en imágenes de mapas de bits es la sustitución del bit menos clasificador y verificar que este funciona correctamente. Este
significativo (Least Significant Bit, LSB). Este método divide clasificador será el encargado de diferenciar las imágenes con
el mensaje original en bits y oculta cada uno de ellos en un mensaje oculto (imágenes esteganográficas) de las imágenes
pı́xel de la imagen. La variación en el valor del pı́xel es tan no alteradas (imágenes portadoras). En este tipo de este-
poco significativa que no puede ser detectada visualmente, goanálisis el trabajo del estegoanalista se basa principalmente
pero resulta suficiente para ocultar información. Sin embargo, en detectar aquellas caracterı́sticas de la imagen que son más
como puede verse en [16], esta técnica presenta algunos susceptibles de ser alteradas cuando se oculta información. Es-
inconvenientes. La sustitución del LSB es una operación tas caracterı́sticas son las usadas para entrenar al clasificador.
asimétrica, pues los pı́xeles con un valor par tenderán a Si bien se han propuesto diferentes métodos de estegoanálisis
incrementar su valor (cuando se incruste un ‘1’), mientras basados en clasificadores que ofrecen buenos resultados [13],
que los pı́xeles con un valor impar tenderán a disminuirla [8], [11], todavı́a queda mucha investigación para avanzar en
(cuando se incruste un ‘0’). Esto crea anomalı́as estadı́sticas en este campo.
la imagen, como por ejemplo parejas de barras (frecuencias) Una de las lecciones aprendidas en los últimos años de
que tienden a igualarse en el histograma de luminosidad de la investigación en estegoanálisis usando clasificadores es que
existen zonas que son mucho más difı́ciles de modelar que
Este trabajo está financiado parcialmente por el Ministerio de Economı́a
y Competitividad a través de los proyectos TIN2011-27076-C03-01/02 “CO- otras: los bordes y las texturas. Estas zonas contienen mucho
PRIVACY” y CONSOLIDER INGENIO 2010 CSD2007-0004 “ARES”. ruido y, en ellas, es muy difı́cil extraer caracterı́sticas ade-
174 D. Lerch-Hostalot, D. Megı́as

cuadas para entrenar al clasificador. Esta es la base que usan Por ejemplo, en [11] se sugiere el uso de un umbral S = 4.
algunas técnicas modernas de esteganografı́a, como por jemplo De esta manera, en lugar de obtener 2554 caracterı́sticas, se
las presentadas en [14], [9]. En este artı́culo se presenta una obtienen 44 , que es una cifra mucho más manejable. Con esta
nueva técnica de ocultación de información que usa estas zonas aproximación lo métodos de estegoanálisis pueden atacar el
ruidosas de la imagen para incrustar los bits del mensaje. problema sin que la explosión en el número de caracterı́sticas
El resto del artı́culo se organiza de la manera siguiente. En la les impida modelar la imagen.
Sección II se presenta el método de esteganografı́a propuesto Sin embargo, este no es el único motivo para el uso de un
en el artı́culo. En la Sección III se analiza experimentalmente umbral para reducir el número de dimensiones. Otro problema
el método y se comprueba su indetectabilidad usando software asociado a la dimensionalidad, y que perjudica seriamente al
de estegoanálisis. Finalmente, la Sección IV presenta las estegoanálisis, es el de la obtención de muestras insuficientes.
conclusiones extraı́das de este trabajo. Este tipo de problema, detectado previamente en estegoanálisis
[7], se produce al usar modelos de grandes dimensiones.
II. M ÉTODO PROPUESTO Cuantas más dimensiones tenga el modelo, más difı́cil es
II-A. Motivación encontrar muestras en la imagen para todas las posibilidades
que ofrece. Durante la extracción de caracterı́sticas, se reparten
Los métodos modernos de estegoanálisis usan clasificadores
todas las muestras extraı́das de la imagen entre cada uno de
para modelar las propiedades estadı́sticas de las imágenes,
los patrones de los que dispone el modelo. En el caso de PPD,
pero existen zonas que son especialmente difı́ciles de modelar,
por ejemplo, existen T 4 patrones, la frecuencia de los cuales
como los bordes o las texturas. Por ello, la investigación en
dependerá de la imagen y de su contenido. Dado que el número
nuevos sistemas de esteganografı́a se centra, en gran parte, en
total de muestras es fijo y a medida que crece el valor de T
la construcción de métodos que permitan ocultar información
aumenta el número de patrones, la frecuencia de cada patrón
en esas zonas.
será cada vez más pequeña. Los patrones menos frecuentes
Sistemas de estegoanálisis como [13], [8], [11] modelan las
serán los primeros en llegar a frecuencias tan bajas que su
caracterı́sticas extraı́das de la imagen como diferencias entre
valor no será representativo y perjudicarán al entrenamiento
pı́xeles vecinos. Tomemos como ejemplo el método basado en
del clasificador. Por este motivo existe un lı́mite en el valor
patrones de diferencias de pı́xeles (patterns of pixel diferences,
del umbral a partir del cual los métodos de estegoanálisis dejan
PPD) presentado en [11]. En ese artı́culo se usan cinco pı́xeles
de ser efectivos. El método que se propone en este artı́culo,
vecinos para modelar la imagen, como se muestra en la Fig.1,
pretende explotar esta debilidad.
tomando uno de ellos como referencia a restar de los demás.

II-B. Zonas de inserción


a b
c d Como se ha describe en el apartado anterior, el objetivo del
e método presentado en este artı́culo es ocultar la información
en las zonas más difı́ciles de modelar de la imagen. El
problema que se presenta cuando se desea ocultar información
Figura 1: Extracción de caracterı́sticas basadas en bloques PPD
únicamente en unas zonas concretas de la imagen es cómo
comunicar al receptor del mensaje (de la imagen) en qué zonas
De esta forma pueden obtenerse vectores formados por cua- debe leer y en qué zonas no. Si se desarrolla un procedimiento
tro posibles diferencias. Por ejemplo, si tomamos b como base, para identificar las zonas ruidosas, estas pueden cambiar (dejar
podemos obtener una representación en cuatro dimensiones: de ser ruidosas) al ocultar información, por lo que el receptor
v = [a − b, c − b, d − b, e − b]t , donde [·]t denota el operador puede acabar leyendo en zonas donde no hay mensaje e
de transposición de un vector (o una matriz). ignorando zonas donde sı́ lo habı́a.
Suponiendo el caso más sencillo, es decir, usando imágenes Un enfoque válido, tomado en los métodos [14], [9], es
en escala de grises con una profundidad de color de 8 bits, cada el uso de Wet Paper Codes (WPC) [6]. Estos métodos, que
pı́xel puede tomar un valor de 0 a 255. Por lo tanto, en el peor son muy adecuados para el problema presentado, son relativa-
de los casos, la diferencia entre dos pı́xeles vecinos será de mente complejos, lo que implica un procesamiento muy lento
255. Ası́ pues, con el modelo presentado, podrı́an generarse en la inserción del mensaje. En este trabajo se expone un
hasta 2554 caracterı́sticas, lo que resulta numéricamente im- procedimiento alternativo, que resulta muy rápido y sencillo
practicable para los clasificadores actuales. Con los sistemas en comparación con el uso de WPC.
propuestos en [13] y [8] la situación es similar. No obstante, Para detectar las zonas de inserción se establecerá un umbral
no es habitual que un pı́xel con valor 0 sea el vecino de un T que nos indicará las zonas difı́ciles de modelar, de la
pixel con valor 255, dado que en las imágenes el valor de los misma forma que lo hacen los sistemas de estegoanálisis. Se
pı́xeles suele cambiar en forma de degradado. Por lo tanto, agruparan los pı́xeles en parejas de pı́xeles vecinos (a, b),de
ignorar diferencias muy grandes entre valores vecinos no suele manera que solo los tomaremos en consideración para ocultar
perjudicar a los sistemas de estegoanálisis. Es por ello que se información si su diferencia es mayor o igual al umbral T , es
utiliza un parámetro para reducir el número de caracterı́sticas. decir si |a − b| ≥ T .
Esteganografı́a en zonas ruidosas de la imagen 175

(a) Imagen Lenna en escala de grises (b) Zonas de ocultación para T = 4 (c) Zonas de ocultación para T = 10

Figura 2: Imagen Lenna y zonas donde se oculta la información para diferentes valores de T

En la Fig.2(b) se muestran, con pı́xeles negros, las zonas en LSB matching, llevarı́a en el caso |a − b| = T a dejar
donde se ocultarı́a la información en caso de usar T = 4 para de cumplir el umbral establecido para algunas parejas, que
la imagen Lenna de la Fig.2(a). Análogamente, la Fig.2(c) pasarı́an a tener una diferencia T − 1. Al no cumplir el
muestra las zonas de ocultación de información para el caso umbral de lo que consideramos un pı́xel adecuado para ocultar
T = 10. En ellas podemos ver cómo se evitan las zonas más información, el receptor no sabrı́a que debe leer información
uniformes de la imagen, mientras que los bordes, principal- de él y se perderı́a la información oculta en ese pı́xel.
mente, y algunas texturas son las zonas que se usan para Lógicamente, esta operación para ocultar información in-
ocultar información. troduce una anomalı́a estadı́stica, pues no se aplica de forma
Para ocultar información el procedimiento consiste en re- equitativa sobre todas las parejas de pı́xeles. Al incrementar
correr la imagen tomando cada vez una pareja diferente de la diferencia entre parejas con un valor superior a T + 1, parte
pı́xeles vecinos. Las parejas se forman sin solapamiento, de esas parejas (en las que se quiere ocultar un bit diferente
de manera que, dados cuatro pı́xeles vecinos, (a, b, c, d), se al LSB de a) se convierten en parejas con diferencia T + 2.
formarán las parejas (a, b) y (c, d), mientras que la pareja Análogamente, algunas parejas con diferencia T + 2 pasan a
(b, c) no se tendrá en consideración. Las parejas ası́ formadas tener diferencia T +3 y ası́ sucesivamente. En general, aunque
no se usarán para incrustar información si su diferencia esta varias parejas con diferencia T + n pasan a tener diferencia
por debajo de umbral T . La imagen se puede recorrer tomando T + n + 1, este hecho se ve compensado por el número de
las parejas de forma horizontal o vertical, aunque esto no es parejas nuevas con diferencia T + n que aparecen al incrustar
determinante para el funcionamiento del método propuesto. información en parejas con diferencia T + n − 1. Pero hay
un caso especial, el de las parejas con diferencia T , pues
II-C. Procedimiento de incrustación mientras que parte de estas pasan a tener diferencia T + 1, el
El método propuesto usa cada pareja que supera el umbral número de parejas con diferencia T no se ve retroalimentado y
para ocultar un bit. Concretamente se oculta alterando el solo decrece. Esta anomalı́a puede observarse en el histograma
pı́xel de la izquierda, es decir, el etiquetado como a de la de los valores de las diferencias entre pı́xeles adyacentes
pareja (a, b). Para ello, se usa el LSB de a como bit de representado en la Fig.3(b), en comparación con el histograma
información, dejándolo tal y como está si su valor es igual de la imagen original que aparece en la Fig.3(a).
al del bit del mensaje que se quiere ocultar y modificándolo Para eliminar esta anomalı́a en el histograma, se puede
si su valor no coincide. Esta modificación se realizará siempre repartir la responsabilidad de ser la primera pareja (la que tiene
incrementando la diferencia entre los valores de los pı́xeles de diferencia igual a T ) entre diferentes parejas. De esta forma,
la pareja. Ası́ pues, a0 , el nuevo valor de a, vendrá determinado se consigue que las barras del histograma correspondientes no
por la ecuación siguiente: decrezcan lo suficiente como para generar una anomalı́a. Para
 ello, se usa un valor de T dinámico, que dependerá del pixel
 a, si a mod 2 = m,
que se esté modificando. La idea es inicializar un generador
a0 = a + 1, si a > b
de números pseudoaleatorios (Pseudo-Random Number Gene-
a − 1, si a < b.

rator, PRNG) con una semilla (por ejemplo una contraseña)
La idea es incrementar siempre la diferencia entre los pı́xeles que deberán conocer tanto el emisor del mensaje como el
de la pareja, nunca disminuirla. El motivo es que incrementar receptor. Este PRNG se utiliza para generar una secuencia
o disminuir aleatoriamente, de forma similar a como se hace de valores dinámicos para el umbral T . Se usa un rango de
176 D. Lerch-Hostalot, D. Megı́as

(a) Imagen original (b) Imagen esteganográfica con T = 4 (c) Imagen esteganográfica con Tmı́n = 4 y
Tmáx = 9

Figura 3: Histograma de diferencias entre parejas de pı́xeles adyacentes para la imagen original, la imagen esteganográfica con
T = 4 y la imagen esteganográfica con umbral dinámico entre Tmı́n = 4 y Tmáx = 9

valores de T entre un mı́nimo, Tmı́n , y un máximo, Tmáx . De Algorithm 1 Ocultar mensaje


esta manera los valores dinámicos de T se generarán con la Input: M, I, Seed, Tmı́n , Tmáx
función T = PRNG(Tmı́n , Tmáx ), que devuelve un número M : Mensaje a ocultar
pseudoaleatorio con distribución uniforme en el intervalo I: Matriz [1..H, 1..W ] que contiene la imagen original
[Tmı́n , Tmáx ]. De esta manera, como se puede apreciar en la Seed: Semilla del generador PRNG
Fig.3(c), la anomalı́a en el histograma desaparece. Tmı́n : Valor mı́nimo para el cálculo de T
El uso del PRNG para seleccionar un valor dinámico del Tmáx : Valor máximo para el cálculo de T
umbral no solo sirve para eliminar la anomalı́a estadı́stica, Output: I 0
sino que además ofrece una capa de seguridad adicional I 0 : Matriz que contiene la imagen con el mensaje oculto
que dificulta el estegoanálisis, dado que no se puede saber
con exactitud en qué pı́xeles se ha ocultado información sin 1: InitializePRNG(Seed)
disponer de la semilla. 2: for all i ∈ [1, H] do
3: for all odd j ∈ [1, W − 1] do
II-D. Algoritmos de incrustación y de extracción 4: T ← PRNG(Tmı́n , Tmáx )
Tal y como se explica en los apartados anteriores, ya 5: a ← I[i, j]
tenemos todas las piezas necesarias para el algoritmo de 6: b ← I[i, j + 1]
inserción de datos de la imagen (Algoritmo 1). 7: if |a − b| ≥ T then
La extracción de datos es similar. Basta con inicializar el 8: m ← nextBit(M )
PRNG, recorrer la imagen extrayendo parejas de pı́xeles e ir  a, if a mod 2 = m,
leyendo los LSB del primer pı́xel de cada pareja que cumple 9: I 0 [i, j] ← a + 1, if a > b,
a − 1, if a < b.

con el umbral T (Algoritmo 2).
10: end if
III. R ESULTADOS EXPERIMENTALES 11: end for
12: end for
El método se ha verificado con dos sistemas de estegoanáli-
sis: PPD [11] y SPAM [13] (en la versión más efectiva de
este, que usa caracterı́sticas de segundo orden). Estos siste-
mas permiten extraer caracterı́sticas de las imágenes. Como C ∈ 2−5 , 2−3 , 2−1 , 21 , 23 , . . . , 215 ,

clasificador, se ha usado una implementación de una Support
γ ∈ 2 , 2 , 2 , . . . , 2−1 , 21 , 23 .
 −15 −13 −11
Vector Machine (SVM) [3], por ser uno de los clasificadores
que ofrece mejores resultados en estegoanálisis. Los experimentos se han realizado con la base de datos
La SVM debe ser ajustada para que proporcione unos BOSS, presentada en [1], por ser una de las más usadas
resultados óptimos. Concretamente, es necesario seleccionar en esteganografı́a, y también en la base de datos pública
valores para los parámetros C y γ. Estos valores serán NRCS [12], por disponer de imágenes de alta resolución muy
escogidos para dar al clasificador la capacidad de generalizar. ruidosas, significativamente diferentes de las de BOSS. Para
Para escoger dichos parámetros, se ha seguido el proceso es- cada base de datos, se han creado dos grupos de imágenes, uno
pecificado en [10], es decir, realizando una validación cruzada que se usa como conjunto de entrenamiento y otro que se usa
en el conjunto de entrenamiento de todos los posibles valores como conjunto de verificación. Cada uno de ellos esta formado
de los parámetros C y γ que se especifican a continuación: por 500 imágenes, 250 de ellas sin incrustar (portadoras) y
Esteganografı́a en zonas ruidosas de la imagen 177

(a) Base de datos BOSS (b) Base de datos NRCS

Figura 4: Porcentajes de detección correcta en función de Tmı́n , usando las bases de datos de imágenes BOSS y NRCS

Algorithm 2 Extraer mensaje Cuadro I: Valores mı́nimos y máximos del umbral usados en
Input: I, Seed, Tmı́n , Tmáx los experimentos
I: Matriz [1..H, 1..W ] que contiene la imagen con el Tmı́n Tmáx
mensaje oculto 1 6
Seed: Semilla del generador PRNG 2 7
Output: M 3 8
4 9
M : Mensaje extraı́do 5 10
6 11
1: InitializePRNG(Seed)
2: for all i ∈ [1, H] do
3: for all odd j ∈ [1, W − 1] do de datos de imágenes muy diferentes, y en ambos casos, el
4: T ← PRNG(Tmı́n , Tmáx ) algoritmo propuesto no es detectado cuando Tmı́n supera el
5: a ← I[i, j] umbral usado por los métodos de estegoanálisis.
6: b ← I[i, j + 1]
7: if |a − b| ≥ T then
8: M ← addBit(M, a)
9: end if
10: end for
11: end for

las otras 250 con información incrustada (imágenes estega-


nográficas). El umbral usado por defecto en PPD es T = 4
(parámetro S especificado en [11], mientras que en SPAM es
de T = 3. Los experimentos se han diseñado para verificar
que, marcando con umbrales superiores a los establecidos por
las herramientas de estegoanálisis, el método presentado no se
detecta. Se ha incrustado información en las imágenes usando
diferentes valores para Tmı́n y Tmáx , tal y como se muestra
en el Cuadro I. Figura 5: Porcentaje de detección correcta en función de Tmı́n ,
Como se puede ver en la Fig.4, el porcentaje de detección usando la base de datos de imágenes BOSS y diferentes
cae al 50 % (equivalente a decisión aleatoria, o sea, a no valores de T , para el método de estegoanálisis SPAM
detección) aproximadamente al llegar a Tmı́n = 4. En los
gráficos se aprecia como los métodos de estegoanálisis fallan Sin embargo, podrı́a parecer que el motivo por el que los
cuando la información esta oculta en zonas que no pueden métodos de estegoanálisis no detectan al método de estega-
modelar. Los experimentos se han realizado sobre dos bases nografı́a propuesto es por la elección de un umbral superior
178 D. Lerch-Hostalot, D. Megı́as

al que ellos usan y que bastarı́a con subir también el umbral indetectabilidad del método ante dos sistemas de estegoanáli-
usado en estos métodos. Pero esto no es ası́ dado que, si se sis: PPD [11] y SPAM [13], viendo como la selección de
incrementa el umbral, aumenta el número de dimensiones y un umbral T adecuado es suficiente para eludir la detección.
aparecen combinaciones para las que no existen muestras o También se comprueba que el ajuste del parámetro T en los
para los que existen muy pocas. Esto, como se ha comenta en métodos de estegoanálisis no permite la detección del método
la Sección II, empeora considerablemente los resultados del propuesto.
estegoanálisis. En la Fig.5 se puede observar que no existe En futuros trabajos serı́a interesante estudiar si existen otros
ningún umbral T que permita detectar el método propuesto con modelos similares que tengan en cuenta grupos de pı́xeles
SPAM si Tmı́n ≥ 5. Lo mismo sucede para PPD si Tmı́n ≥ 4. mayores que una pareja y si esto puede mejorar el algoritmo.
La cantidad de información que puede incrustarse (es decir, Además, serı́a recomenable realizar un estudio teórico para el
la capacidad del método) en una imagen depende de las zonas cálculo del valor óptimo de T .
ruidosas de esta, por lo que no es sencillo de determinar a
R EFERENCIAS
priori. A nivel orientativo, usando Tmı́n = 4 y Tmáx = 9
en las imágenes de BOSS, se ha realizado la inserción con [1] T. Filler, T. Pevný, and P. Bas, Break our steganographic system (BOSS),
2010. [Online]. Disponible: http://exile.felk.cvut.cz/boss/ [Accedido
una ratio media del 9 %, es decir incrustando un bit en el el 14 de julio de 2014].
9 % de los pı́xeles (0,09 bits por pı́xel). En las imágenes [2] C. M. Bishop, Pattern Recognition and Machine Learning (Information
de NRCS la ratio de incrustación es del 13 %. Para mostrar Science and Statistics Series). New York, Secaucus, NJ, USA: Springer,
2006.
la efectividad del sistema propuesto, se han comparado los [3] C.-C. Chang and C.-J. Lin, “LIBSVM - A Library for Support Vec-
resultados de indetectabilidad de este con los obtenidos usando tor Machine,” [Online]. Disponible: http://www.csie.ntu.edu.tw/∼cjlin/
la esteganografı́a LSB matching tradicional [15]. Para ello, libsvm [Accedido el 14 de julio de 2014].
[4] S. Domitrescu, X. Wu and N. D. Memon, “On Steganalysis of Random
se han usado los estegoanalizadores PPD y SPAM con el LSB Embedding in Continuous-tone Images,” In Proc. International
objetivo de calcular los porcentajes de detección cuando se Conference on Image Processing, ICIP 2002, Rochester, NY, USA:
incrusta en LSB matching usando una ratio del 9 % en BOSS IEEE, pp. 324-339.
[5] J. Fridrich, M. Goljan and R. Du, “Detecting LSB steganography in
y del 13 % en NRCS. De esta manera se puede realizar una color and grayscale Images,” In Proc. ACM Workshop on Multimedia
comparación en igualdad de condiciones en cuanto a capacidad and Security, Ottawa, Canada: ACM, pp. 22-28, 2001.
se refiere. Los resultados de detección se muestran en II. Como [6] J. Fridrich et al., “Writing on Wet Paper,” IEEE Trans. on Signal
Processing, vol. 53, no. 10, Oct. 2005, pp. 3923-3935.
se puede observar, para las mismas ratios de inserción que no [7] J. Fridrich, J. Kodovský, V. Holub, M. Goljan. “Breaking HUGO - the
se detectan (porcentaje de aciertos del 50 %) con el algoritmo process discovery ,” Information Hiding, 13th International Workshop,
presentado, la esteganografı́a LSB matching se detecta con Lecture Notes in Computer Science.
[8] J. Fridrich and J. Kodovský, “Rich Models for Steganalysis of Digital
los estegoanalizadores SPAM y PPD (porcentaje de aciertos Images,” IEEE Trans. on Information Forensics and Security, vol. 7,
superior al 50 %). no. 3, June 2012, pp. 868-882.
[9] V. Holub and J. Fridrich, “Designing Steganographic Distortion Using
Cuadro II: Detección de la esteganografı́a LSB matching, para Directional Filters,” In: Proc. IEEE Workshop on Information Forensic
and Security (WIFS), Tenerife, Spain: IEEE, pp. 234-239, 2012.
la misma capacidad que el método propuesto, usando PPD y [10] C. W. Hsu, C. C. Chang, and C.J. Lin, “A practical guide to support
SPAM vector classification,” Department of Computer Science, National
Taiwan University, 2003. [Online]. Disponible: http://www.csie.ntu.edu.
Base de datos Método de detección Porcentaje de aciertos tw/∼cjlin/papers/guide/guide.pdf [Accedido el 14 de julio de 2014].
BOSS SPAM 85.00 % [11] D. Lerch-Hostalot and D. Megı́as, “LSB matching steganalysis based
BOSS PPD 81.60 % on patterns of pixel differences and random embedding,” Computers &
Security, vol. 32, Feb. 2013, pp. 192-206.
NRCS SPAM 58.00 %
[12] National Resource Conservation Service, NRCS Photo Gallery, [Online].
NRCS PPD 64.00 %
Disponible: http://photogallery.nrcs.usda.gov [Accedido el 14 de julio
de 2014].
[13] T. Pevný, P. Bas and J. Fridrich, “Steganalysis by Subtractive Pixel
IV. C ONCLUSI ÓN Adjacency Matrix,” In Proc. ACM Multimedia and Security Workshop,
Princeton, NJ, USA: ACM, pp. 75-84, 2009.
En este artı́culo se presenta un nuevo método para ocultar [14] T. Pevný, T. Filler, P. Bas, Using High-Dimensional Image Models
to Perform Highly Undetectable Steganography. Information Hiding.
información en zonas difı́ciles de modelar de la imagen. Para Lecture Notes in Computer Science Volume 6387, 2010, pp 161-177.
detectar estas zonas, el método propuesto intenta explotar dos [15] T. Sharp, “An Implementation of Key-Based Digital Signal Stegano-
debilidades de los sistemas de estegoanálisis existentes: el graphy,” In Information Hiding, Lecture Notes in Computer Science,
vol. 2137, Berlin-Heidelberg, Germany: Springer, 2001, pp. 13-26.
crecimiento exponencial del número de caracterı́sticas y la im- [16] A. Westfeld and A. Pfitzmann, “Attacks on Steganographic Systems,”
posibilidad de extraer información útil de patrones con pocas In Information Hiding, Lecture Notes in Computer Science Volume, vol.
muestras. Ambas debilidades tienen en común un umbral T , 1768, Berlin-Heidelberg, Germany: Springer, 2000, pp. 61-76
usado como base en el método presentado.
Por otra parte, se trata de un método que no requiere de
ningún cálculo complejo, a diferencia de otros que persiguen
objetivos similares, como los basados en WPC, por lo que es
adecuado para entornos en los que la velocidad de ejecución o
el rendimiento sean un factor clave. Los resultados muestran la
RECSI 2014, Alicante, 2-5 septiembre 2014

FastTriaje: un asistente para la clasificación de


vı́ctimas en situaciones de emergencia con
autenticación robusta
Candelaria Hernández Goya Alexandra Rivero Garcı́a Pino Caballero Gil
Departamento de Departamento de Departamento de
Ingenierı́a Informática Ingenierı́a Informática Ingenierı́a Informática
Universidad de La Laguna Universidad de La Laguna Universidad de La Laguna
Email: mchgoya@ull.edu.es Email: alexandra.rivero.00@ull.edu.es Email: pcaballe@ull.edu.es

Resumen—Este trabajo describe el desarrollo de un sistema almacenar la información asociada al triaje en una etiqueta
de clasificación de vı́ctimas en situaciones de emergencia que NFC que se asociará al paciente. Dicha información puede
consta de una plataforma web y una aplicación móvil. La sinergia ser consultada posteriormente en cualquier momento a través
entre estos elementos y la integración de diferentes tecnologı́as
de comunicación (NFC y Wi-Fi) permite clasificar a las posibles de la misma aplicación.
vı́ctimas de una forma rápida y confiable. El segundo pilar del sistema desarrollado es una plataforma
La clasificación realizada para una vı́ctima es guiada por el web cuya función principal es centralizar la recogida de
dispositivo móvil (la implementación se ha hecho para teléfonos información generada por el uso de la aplicación móvil y
inteligentes basados en Android) y una vez finalizada, el sistema facilitar la gestión de la misma, incluyendo la gestión de
ofrece la posibilidad de almacenarla en una tarjeta NFC que
se asigna a la vı́ctima. Además, el diagnóstico realizado se usuarios y sus privilegios
almacena en el dispositivo móvil, pudiéndose posteriormente La aplicación móvil y la plataforma web interactúan a través
remitir a un servidor central en caso de que las infraestructuras de un servicio web REST, siendo el formato seleccionado para
de comunicaciones estén disponibles. la comunicación mensajes JSON.
Se han implementado métodos criptográficos robustos, concre- Se han incluido métodos de autenticación robusta basados
tamente se utilizan Demostraciones de Conocimiento Nulo para
identificar a los usuarios que desarrollan los triajes, de manera en criptografı́a ligera para la comunicación de la aplicación
que sean sólo los usuarios autorizados previamente por el servicio con la etiqueta NFC y también con la plataforma web.
los que puedan hacer uso del sistema.
Palabras clave—Triaje, NFC, Android, Criptografı́a Ligera, II. D ESCRIPCI ÓN DE LOS SISTEMAS DE TRIAJE
Demostración de Conocimiento Nulo (Zero Knowledge Proof) El termino triaje es de origen francés y su raı́z (trier)
significa clasificar. Es en el entorno militar donde se comienza
I. I NTRODUCCI ÓN a utilizar en el ámbito de la clasificación de vı́ctimas en
El sistema presentado en este trabajo se denomina FastTriaje función de la urgencia requerida para su atención.
y se basa en el método START (Simple Triage and Rapid Una definición ampliamente aceptada es la siguiente: pro-
Treatment) [1]. Este método persigue dos metas esenciales en ceso simple, completo, objetivo y rápido de obtener una
situaciones de emergencia y/o desastres naturales: salvar el evaluación clı́nica inicial de vı́ctimas con el objetivo de evaluar
mayor número de vidas posible y, simultáneamente, optimizar sus capacidades inmediatas de supervivencia y priorizarlas
el uso de los recursos materiales y humanos disponibles. según su gravedad.
Un sistema tradicional de triaje facilita la toma de decisiones En situaciones crı́ticas, el disponer de un método fiable y
sobre la prioridad requerida para la atención de una vı́ctima por eficiente para la clasificación de vı́ctimas es crucial. General-
medio de tres acciones principales: observación, evaluación y mente los sistemas de triaje distinguen dos etapas:
decisión. Con FastTriaje el proceso completo de diagnóstico de Primer triaje. Se lleva a cabo en la misma zona hostil. El
la gravedad del paciente es guiado por la aplicación. El sistema personal a cargo del diagnóstico no debe pasar más de
indicará al diagnosticador el resultado final de la evaluación, un minuto evaluando las capacidades de supervivencia
ası́ como la decisión que debe tomarse. de la vı́ctima, ordenándolas finalmente de acuerdo a
Uno de los elementos del sistema es una aplicación su gravedad. Algunos métodos en esta categorı́a son
móvil desarrollada para dispositivos Android. Dicha aplicación SHORT, START o MRCC.
será la herramienta principal del personal a cargo de la evalua- Segundo triaje. Esta etapa se desarrolla en una instalación
ción del paciente, tanto a la hora de realizar su clasificación, sanitaria o un hospital. Aquı́ es el personal médico el que
como también para gestionar la información generada en cada analizará el estado de la vı́ctima: contusiones, heridas
triaje. Una de las posibilidades incluida en la aplicación es y lesiones. Algunos de los métodos aplicados en esta
180 C. Hernández, A. Rivero, P. Caballero, I. Santos

Tabla II
PAR ÁMETROS DEL CAMPO DE CURVAS EL ÍPTICAS EN LAS ZKP S .

Parámetro Descripción
p número primo que define
el campo Fp
a, b coeficientes de la ecuación
de la curva elı́ptica E
P un punto base (un generador de
un subgrupo cı́clico de E(Fp ))
m orden de P en E(Fp )

Una caraterı́stica diferenciadora de esta tecnologı́a frente a


otras tales como RFID, Bluetooth, ZigBee o Wi-Fi, es que
la transmisión de información en NFC no es continua, se
requiere el contacto entre los dispositivos para el intercambio
Figura 1. Algoritmo START de información. Sin embargo dicha transferencia se realiza de
manera rápida y oportuna.
Una de las principales ventajas de NFC cuando se compara
etapa son el Modelo Andorrano de Triaje (MAT), Spanish con otras tecnologı́as es su seguridad inherente. Debido a su
Triage System (SET) y Manchester Emergency Triage corto rango de comunicación y la necesidad de participación
System (METS). de los usuarios cuando se realiza una acción, NFC ofrece un
A pesar de realizar la distinción previa, estos métodos nivel de seguridad más alto.
no son excluyentes sino complementarios. Los triajes co- La tabla I recoge una comparación entre NFC y algunas
rrespondientes a la primera etapa proporcionan información tecnologı́as inalámbricas de comunicación.
indispensable para realizar la evacuación a las instalaciones
IV. C RIPTOGRAF ÍA LIGERA Y DEMOSTRACIONES DE
sanitarias donde personal médico realizará la segunda etapa.
CONOCIMIENTO NULO
Se incluye en la figura 1 una descripción gráfica del método
START. Éste es el método que se ha implementado en el Actualmente se diseñan aplicaciones móviles para casi cual-
sistema FastTriaje. quier ámbito de aplicación: negocios, gestión de transporte,
START utiliza etiquetas con cierto color para indicar el redes sociales y muchos otros. En todos ellos el garantizar
resultado de la clasificación, cada color representa un estado la seguridad de la información es una obligación. Las so-
de gravedad diferente: luciones tradicionales generalmente requieren infraestructura
especı́fica, por lo que transferir estas soluciones al entorno
negro: vı́ctima mortal o irrecuperable.
aquı́ analizado no es viable [2].
rojo: vı́ctimas que requieren atención médica inmediata. En el sistema desarrollado se ha hecho uso de la criptografı́a
amarillo: vı́ctimas que requieren cuidados urgentes, pero ligera para garantizar el acceso legı́timo a la información
su estado permite un retraso en la atención de entre media asociada a los triajes. Esta elección queda justificada por
a una hora. las restricciones sobre las capacidades computacionales y de
verde: vı́ctimas que no están seriamente heridas. Su comunicación definidas sobre los dispositivos que participan,
tratamiento puede retrasarse más de una hora. generalmente teléfonos inteligentes. Concretamente, se usa
En el sistema propuesto en este trabajo las etiquetas tra- criptografı́a de curvas elı́pticas (Elliptic Curve Cryptography,
dicionales se sustituyen por etiquetas NFC ya que facilitan ECC) [3] debido a que:
el tratamiento automático de la información generada en las proporciona problemas con una complejidad computacio-
valoraciones, permitiendo además que dicha información sea nal superior, y
procesada fuera del lugar del suceso. En la sección siguiente la longitud de clave que se necesita para alcanzar un nivel
se especifican algunas de las caracterı́sticas que posee esta de seguridad concreto es más corta.
tecnologı́a y que la hacen especialmente interesante para el La tabla II describe la notación relacionada con las curvas
sistema desarrollado. necesaria para describir los protocolos implementados.
Las ZKPs permiten a un participante (el probador, A)
III. T ECNOLOG ÍA NFC
convencer a otro (el verificador, B), sobre la veracidad de
Near Field Communications (NFC) es es una tecnologı́a de un hecho sin proporcionar más información que la validez de
comunicación inalámbrica de alta frecuencia de corto alcance. dicha demostración. Estas demostraciones se pueden extender
En cierto modo se puede entender como una extensión de para resolver el problema de autenticación tal y como se
la tecnologı́a RFID puesto que posibilita la coexistencia de describe en el estándar ISO 9798-5 dedicado a autenticación
los papeles de lector y tarjeta en un mismo dispositivo. Su de entidades.
principal funcionalidad es la de permitir la transferencia de Los elementos principales de las ZKPs son los siguientes
contenido entre dispositivos móviles en modo punto a punto. tres:
FastTriaje: un asistente para la clasificación de vı́ctimas en situaciones de emergencia con autenticación robusta 181

Tabla I
C OMPARACI ÓN DE TECNOLOG ÍAS INAL ÁMBRICAS DE CORTO ALCANCE .

Tecnologı́a
Caracterı́stica NFC Bluetooth RFID ZigBee
Establecimiento de conexión 0.1s o menos 6s 0.1s o menos 30ms
Velocidad 424-848kbps 24Mbps (versión 3.0) 424kbps 250kbps
Rango 10cm 10m 3m 70m
Consumo de baterı́a Bajo Alto Bajo Bajo
Seguridad Alta Alta Vulnerable Vulnerable
Intervención de usuario Tocar Requiere configuración Sin configuración Sin configuración

el sistema podrán consultar posteriormente los triajes realiza-


dos. Además, cada triaje se puede almacenar en una etiqueta
NFC que se anexa a la vı́ctima para su clasificación “in situ”.
En cualquier caso la información asociada a cada triaje queda
también registrada en el dispositivo móvil utilizado.
Sólo los dispositivos autorizados pueden intercambiar in-
formación con la plataforma web. Para garantizarlo se ha
Figura 2. Módulos de FastTriaje implementado una demostración de conocimiento nulo (Zero
Knowledge Proof, ZKP) como protocolo de autenticación
(ver ZKP1 en la siguiente sección). Aquellos usuarios que
Testigo (w): el probador selecciona aleatoriamente un utilicen la aplicación deben estar registrados previamente
elemento de un conjunto predefinido manteniendo dicha en la plataforma web. Los privilegios de los usuarios, los
elección en secreto. Este valor se denomina compromiso establece el administrador de dicha plataforma. De este modo,
(x). A partir del mismo, se genera otro valor denominado se distinguirá entre usuarios con permiso sólo para consultar
testigo (w), siendo dicho valor remitido al verificador. las etiquetas, de aquellos que pueden realizar los triajes y
Reto (e): En el segundo paso, el verificador seleccio- almacenarlos en las etiquetas NFC.
na aleatoriamente una pregunta que el probador debe La plataforma web se comunica con la aplicación móvil a
responder correctamente, siempre y cuando realmente través de un servicio web. Antes de almacenar el triaje en la
conozca la información secreta asociada al proceso de etiqueta NFC, el usuario autorizado ejecuta otra demostración
autenticación. Esta pregunta está relacionada con x y con de conocimiento nulo (ZKP2) que asocia el triaje con sus
las credenciales que deben ser verificadas. credenciales.
Respuesta (y): Finalmente el probador envı́a la respuesta
al reto que será comprobada por el verificador. En caso VI. M ÉTODOS DE AUTENTICACI ÓN EN FAST T RIAJE
de que la verificación sea correcta la autenticación se
Esta sección describe los protocolos de autenticación im-
acepta.
plementados en FastTriaje para garantizar el acceso sólo a
los usuarios legı́timos. Los dos protocolos comparten algunas
V. E L SISTEMA DESARROLLADO : FAST T RIAJE
caracterı́sticas, principalmente en la etapa de inicialización. En
El principal escenario para el despliege de FastTriaje es ambos casos dicha etapa consiste en fijar una curva elı́ptica
una situación de emergencia o desastre natural. Su objetivo (E) y un punto base de la misma (P). Además las credenciales
es agilizar la clasificación de vı́ctimas y la gestión de la asociadas a A se definen de la misma manera: la identificación
información generada durante ese proceso. La figura 2 ilustra secreta es un entero seleccionado aleatoriamente del conjunto
los módulos que componen el sistema: la aplicación móvil y Zp , mientras que la pública es un punto de la curva E generado
la plataforma web. al multiplicar el entero asociado a la información secreta por
El objetivo principal de la aplicación Android es imple- el punto base.
mentar el método de triaje START en dispositivos móviles
como una herramienta simple, usable e intuitiva que facilita el VI-A. ZKP1: Autenticación del dispositivo móvil frente a la
proceso de triaje tradicional. Con dicha aplicación es posible plataforma web
enviar a una plataforma web los triajes realizados cuando Este protocolo se utiliza para la autenticación del dispositivo
el estado de las comunicaciones lo permitan. Actualmente móvil (A) frente a la plataforma web (B). Se incluye una
la implementación desarrollada transfiere los triajes realiza- descripción detallada del mismo en la tabla III. El reto definido
dos haciendo uso de infraestructura Wi-Fi, pero es posible en cada ejecución se genera a través de la aplicación de una
adaptarla para que use comunicaciones Wi-Fi Direct [4]. De función hash. Esta manera de proceder no se corresponde con
esta manera, la transferencia de información se puede realizar la definición tradicional de las demostraciones de conocimien-
directamente entre los dispositivos que forman parte de una red to nulo pero permite reducir el número de iteraciones del
desplegada en la zona del desastre. Los usuarios registrados en protocolo a sólo una.
182 C. Hernández, A. Rivero, P. Caballero, I. Santos

Tabla III VII. C ONCLUSIONES Y CUESTIONES FUTURAS


ZKP1: AUTENTICACI ÓN EL DISPOSITIVO M ÓVIL FRENTE A LA
PLATAFORMA WEB Este trabajo presenta un sistema que mejora la logı́stica, cla-
sificación y atención de vı́ctimas en situaciones hostiles como
Etapas Accciones pueden ser desastres naturales o accidentes. La herramienta
Inicialización número primo p está compuesta por una aplicación móvil y una plataforma
E curva elı́ptica Zp web. La aplicación móvil sirve como asistente durante el
P ∈E
desarrollo de los triajes y permite almacenar los resultados
Identificación a ∈ Zp en etiquetas NFC que se asocian a las vı́ctimas. Además es
secreta de A
posible transferir el resultado de los triajes, a través de un
Identificación a∗P ∈E
servicio web, a una plataforma web donde la información
pública de A: P uidA
generada puede procesarse de acuerdo con los perfiles de
Compromiso: x ∈r Zp
usuarios definidos.
Testigo: A → B w =x∗P ∈E
Debido a que los servicios proporcionados se entienden
Reto: A ← B e = hash(P, a ∗ P, x ∗ P )
como crı́ticos, en la implementación realizada se ha tenido en
Respuesta: A → B y = x + a ∗ e ∈ Zp
cuenta la robustez del proceso de autenticación de entidades,
Verificación: B comprueba y ∗ P − e ∗ P uidA = w
ası́ como la eficiencia del sistema.
Puesto que este trabajo está en desarrollo quedan algunas
Tabla IV cuestiones importantes por solventar. Quizás una de las más
ZKP2: AUTENTICACI ÓN DEL DISPOSITIVO M ÓVIL FRENTE A LA ETIQUETA significativas es dotar al sistema del servicio de confidencia-
NFC. lidad. También caben mejoras a la hora de facilitar la coordi-
Etapas Acciones nación e integración de los diferentes cuerpos de emergencia
Inicialización p número primo que pueden participar en la resolución de la misma. En este
E curva elı́ptica en Zp sentido, con la versión actual del sistema en el caso de que
P ∈E intervinieran diferentes cuerpos sanitarios habrı́a que realizar
Identificación a ∈ Zp la etapa de registro “in situ”.
secreta de A Otras cuestiones que se esperan incluir son las siguientes:
Identificación a∗P ∈E Añadir funcionalidades estadı́sticas a la plataforma web.
pública de A: P uidA Integrar el sistema con las historias clı́nicas de los
Compromiso: {x1 ∗ P, x2 ∗ P, · · · , xn ∗ P } pacientes.
∈ E, con xi ∈r Zp Extender la aplicación para que posibilite la realización
Testigo: A → B w = hash(xj ∗ P + xk ∗ P ), del segundo tipo de triajes.
con j, k ∈r {1, 2, · · · , n} Se espera además ampliar la aplicación desarrollada
Reto: A ← B e ∈r Zp completando el sistema de clasificación con extensiones
Respuesta: A → B y = xj + xk − a ∗ e ∈ Zp especı́ficas para grupos concretos de vı́ctimas, tales como
Verificación: B comprueba hash(y ∗ P − e ∗ P uidA ) pacientes pediátricos y también con la implementación
=w de sistemas de triajes pertenecientes a la categorı́a de
segundo triaje.

AGRADECIMIENTOS
VI-B. ZKP2: Autenticación del dispositivo móvil frente a la
etiqueta NFC Este trabajo ha sido financiado parcialmente por el Ministe-
rio de Economı́a y Competitividad y el Ministerio de Ciencia
El protocolo se destina a la autenticación del dispositivo e Innovación bajo los proyectos IPT-2012-0585-370000: DEP-
móvil (A) frente a la etiqueta NFC antes de almacenar el triaje HISIT y TIN2011-25452: TUERI.
en ella.
Sin embargo, este protocolo no puede utilizarse directamen- R EFERENCIAS
te con las etiquetas NFC puesto que las etiquetas utilizadas [1] K. V. Iserson and J. C. Moskop, “Triage in medicine, part i: Concept,
en la implementación son totalmente pasivas. Esta elección history, and types,” Annals of Emergency Medicine, vol. 49, no. 3, pp.
275 – 281, 2007.
se debe a intentar reducir costos de implementación lo que [2] S. Babar, P. Mahalle, A. Stango, N. Prasad, and R. Prasad, “Proposed
imposibilitaba la generación de retos por parte de la etiqueta. security model and threat taxonomy for the internet of things (IoT),” in
Por este motivo se optó por utilizar el paradigma de Fiat- Recent Trends in Network Security and Applications, ser. Communications
in Computer and Information Science. Springer Berlin Heidelberg, 2010,
Shamir [5] para transformar el protocolo propuesto generando vol. 89, pp. 420–429.
una versión no interactiva. [3] D. Hankerson, A. J. Menezes, and S. Vanstone, Guide to Elliptic Curve
De acuerdo con este paradigma se usa una función hash para Cryptography. Secaucus, NJ, USA: Springer-Verlag New York, Inc.,
2003.
la generación de los retos. En la implementación realizada se [4] J. I. S. González, “Implementación de algoritmos seguros en dispositivos
ha usado el nuevo estándar de función hash, SHA3 [6]. wi-fi direct,” 2013.
FastTriaje: un asistente para la clasificación de vı́ctimas en situaciones de emergencia con autenticación robusta 183

[5] A. Fiat and A. Shamir, “How to prove yourself: Practical solutions


to identification and signature problems,” in Advances in Cryptology -
CRYPTO 86. Springer-Verlag, 1987, pp. 186–194.
[6] G. Bertoni, J. Daemen, M. Peeters, and G. V. Assche, “ The Keccak
sponge function family ,” Sooft.es, http://keccak.noekeon.org/papers.html.
RECSI 2014, Alicante, 2-5 septiembre 2014

La transformada de Walsh-Hadamard y otros


parámetros en la autenticación biométrica
V. Gayoso Martı́nez, F. Hernández Álvarez, L. Hernández Encinas, F. Montoya Vitini y A. Orúe López
Departamento de Tratamiento de la Información y Criptografı́a
Instituto de Tecnologı́as Fı́sicas y de la Información (ITEFI)
Consejo Superior de Investigaciones Cientı́ficas (CSIC)
C/ Serrano 144, 28006-Madrid, España
Emails: {victor.gayoso, fernando.hernandez, luis, fausto, amalia.orue}@iec.csic.es

Resumen—El patrón de iris es uno de los métodos biométricos biométricos están asociados al usuario de forma permanente,
más utilizados para la autenticación de individuos. No obstante, de modo que si un rasgo se ve comprometido, no puede ser
uno de sus principales desafı́os consiste en lograr una baja tasa revocado o sustituido. Finalmente, si un rasgo biométrico se
de falsos positivos (aceptación de un usuario ilegal) y de forma
simultánea una baja tasa de falsos negativos (rechazo de un ve comprometido en una aplicación, todas las aplicaciones en
usuario legal), de modo que la seguridad del sistema sea la la que este rasgo se utilice se verı́an comprometidas, por lo
mayor posible. En este trabajo se presenta un primer estudio que dicho rasgo ya no será útil.
sobre la viabilidad de utilizar como método de verificación de una En general, el proceso para autenticar a un usuario por
identidad basada en iris la transformada de Walsh-Hadamard, medio de su patrón biométrico consiste en dos fases: inscrip-
complementada con la covarianza cruzada y las distancias de
Hamming y euclı́dea. Los primeros resultados muestran que ción y comprobación. Durante la primera, se procesan por
la identificación basada en los cuatro parámetros anteriores primera vez las plantillas biométricas y se almacenan en una
presenta excelentes tasas de falsos positivos y negativos. Sin base de datos (plantillas de referencia); mientras que en la
embargo, es preciso llevar a cabo estudios posteriores, que segunda se extrae una nueva plantilla biométrica (llamada la
permitan ajustar mejor tales parámetros, para muestras con plantilla de consulta) del usuario que quiere ser identificado
mayor número de usuarios.
Palabras clave—Covarianza cruzada (Cross-covariance), Dis- y esta se compara con los datos ya almacenados (plantilla
tancia de Hamming (Hamming distance), Distancia euclı́dea de referencia). Si la comparación es exitosa, el usuario queda
(Euclidean distance), Identificación biométrica (Biometric iden- autenticado; de lo contrario, su autenticación se rechaza.
tification), Patrón de iris (Iris pattern), Transformada de Walsh- El proceso de autenticación de usuarios puede llevarse a
Hadamard (Walsh-Hadamard transform). cabo de dos maneras, bien mediante una verificación, bien
mediante una identificación. En el primer caso, se compara
I. I NTRODUCCI ÓN la plantilla del rasgo biométrico con la plantilla de referencia
Como es sabido, la autenticación por métodos biométricos almacenada en la base de datos, es decir, el sistema realiza la
([12], [13], [17]) consiste en verificar a individuos haciendo comparación 1-a-1 para verificar la identidad del usuario. En la
uso de alguno de sus rasgos fisiológicos como la cara ([6]), identificación, el objetivo es identificar una plantilla biométrica
huella dactilar ([14]), impresión de la palma de la mano ([15]), de un usuario desconocido como un individuo conocido dentro
iris ([18]), forma de la lengua ([10]), etc., o de comportamiento de un conjunto de los n posibles usuarios almacenados en una
como la firma manuscrita ([5]), dinámica en la pulsación de base de datos, esto es, la comparación es 1-a-n.
teclas ([11]), olor y aroma de olor ([9]), etc. En general, los sistemas que utilizan un único patrón
Los sistemas biométricos ofrecen ventajas frente a otros biométrico para la autenticación de individuos (unimodales)
métodos de autenticación, como los basados en contraseñas, sólo disponen de la evidencia proporcionada por una única
dado que las caracterı́sticas biométricas no se pueden perder fuente de información, por lo que pueden plantear problemas
u olvidar. Por otra parte, los rasgos biométricos son muy relacionados con la variabilidad intra-usuarios e inter-usuarios
difı́ciles de copiar, falsificar, compartir o distribuir, y, además, (véase por ejemplo, [1]).
requieren la presencia en el momento y en el lugar de quien La variabilidad intra-usuarios hace referencia a las diferen-
se está identificando. cias entre las plantillas de un mismo usuario extraı́das en
Sin embargo, a pesar de todas sus ventajas, el uso de dos momentos distintos. Estas diferencias pueden causar el
los sistemas biométricos presenta algunos inconvenientes re- rechazo de un usuario legal si dos de sus plantillas son bastante
lacionados con la seguridad y la privacidad. Por ejemplo, diferentes (falso negativo). La variabilidad inter-usuarios se
algunos rasgos biométricos pueden ser grabados fácilmente refiere a las similitudes que puede haber entre las plantillas de
sin el consentimiento del usuario, tales como la firma, voz, distintos usuarios. En este caso, tales similitudes pueden llevar
rostro, huella dactilar, etc. Además, a diferencia de lo que a que el sistema acepte a un usuario ilegal (falso positivo).
sucede con las contraseñas, PIN, etc., que se pueden renovar Para paliar parte de los problemas mencionados más arriba
sin necesidad de que hayan sido comprometidos, los rasgos se suelen utilizar sistemas multimodales, que utilizan varios
186 V. Gayoso, F. Hernández, L. Hernández, F. Montoya y A. Orúe

patrones biométricos simultáneamente. irises. Finalmente, las conclusiones y trabajos futuros de esta
En todo caso, existen dos coeficientes o tasas que permiten propuesta se incluyen en la sección IV.
determinar la cantidad de falsos negativos o positivos que
II. A LGORITMO DE VERIFICACI ÓN DE PLANTILLAS DE
presenta un sistema de autenticación ([16]):
IRISES
Tasa de falsa aceptación (False Acceptance Rate, FAR).
Este coeficiente determina la probabilidad de que el Las plantillas de irises que se han considerado proceden,
sistema considere una comparación positiva entre una en concreto, de la base de datos denominada CASIA Iris
plantilla de consulta y una plantilla de referencia en la Image Database Version 1.0 ([4]) que contiene 7 ficheros BMP
base de datos que realmente no coinciden, esto es, es (Windows bitmap) de 105 ojos, lo que contabiliza un total de
la probabilidad de que un usuario ilegal pueda, errónea- 735 imágenes en escala de grises de 8 bits.
mente, ser aceptado como un usuario conocido por el El procedimiento seguido en [7] para obtener las plantillas
sistema (falso positivo). Esta tasa mide el porcentaje de a partir de su imagen consta de los siguientes pasos:
coincidencias no válidas y es una medida relacionada con 1. Localización del iris y la pupila.
la seguridad del sistema. 2. Identificación de los dos conos laterales del iris, des-
Tasa de falso rechazo (False Rejection Rate, FRR). Este cartando los conos superior e inferior a fin de evitar
valor calcula la probabilidad de que el sistema declare, distorsiones producidas por las pestañas y los párpados.
incorrectamente, la no coincidencia entre la plantilla de 3. Normalización de los conos laterales para obtener una
consulta y la plantilla de referencia en la base de datos imagen rectangular de 1024 × 128 bits.
de un mismo usuario, es decir, es la probabilidad de 4. División de la imagen en bloques de 32 × 32 bits, lo que
que un usuario legal sea rechazado por el sistema (falso genera un total de 32 × 4 bloques.
negativo). Esta tasa proporciona el porcentaje de entradas 5. Análisis de cada bloque mediante filtros de Gabor con
válidas que son rechazadas y es un criterio de comodidad. 4 orientaciones (0, π/4, π/2, 3π/4) y 3 octavos en fre-
Asociada a esta última, está la tasa de aceptación genuina cuencia. Cada orientación y frecuencia, aplicadas sobre
(Genuine Acceptance Rate, GAR). Este valor es la probabi- cada bloque, genera dos bits.
lidad complementaria de la tasa de falso rechazo, es decir, 6. Concatenación de los 32 · 4 · 4 · 3 · 2 = 3072 bits que dan
es la probabilidad de que se considere correctamente a un lugar al código asociado al iris.
usuario como usuario legal (verdaderos positivos). Esto es, La Figura 1 muestra un ejemplo del procesamiento de un
GAR= 1−FRR. iris, donde junto a los sectores laterales empleados en el
En este trabajo se presenta un primer estudio acerca de cálculo puede observarse la imagen rectangular normalizada
la viabilidad de utilizar como método de verificación de una correspondiente.
identidad basada en iris la transformada de Walsh-Hadamard,
complementada con la covarianza cruzada y las distancias de
Hamming y euclı́dea. Para determinar su eficacia se calculan la
tasa de falsa aceptación y la tasa de falso rechazo haciendo uso
de un determinado número de las plantillas de iris empleadas
en [7], donde se ha utilizado la base de datos de iris CASIA
(Chinese Academy of Sciences’ Institute of Automation) ([3]).
Se ha hecho uso de los cuatro parámetros mencionados
más arriba debido a que los resultados de cada parámetro son
diferentes, lo que permite ajustar las tasas mencionadas de
forma más precisa. Se han descartado otras métricas (simetrı́a,
identidad, máximo de coincidencia de la varianza cruzada,
etc.) porque no aportan mejoras con respecto a las considera-
das finalmente, bien porque sus resultados ya estaban incluidos
en alguno de los parámetros considerados, bien porque no
discriminaban adecuadamente. Debe tenerse en cuenta que
uno de los principales objetivos es lograr que la seguridad
sea máxima, es decir, que la tasa de falsos positivos sea 0.
El resto de este trabajo se organiza de la siguiente manera.
En la sección II se describe el algoritmo que se propone
como método de verificación, señalando las propiedades de las Figura 1. Ejemplo de generación de la plantilla asociada a un iris.
cuatro medidas que se han empleado para la identificación de
usuarios: la transformada de Walsh-Hadamard, la covarianza Los valores obtenidos se han almacenado en hexadecimal,
cruzada y las distancias de Hamming y euclı́dea. La sección III conteniendo cada plantilla 384 bytes de información. La
contiene los resultados experimentales que se han obtenido al plantilla correspondiente a la imagen de la Figura 1 comienza
ejecutar el algoritmo anterior con una muestra de plantillas de de la siguiente manera:
La transformada de Walsh-Hadamard en la identificación biométrica 187

0.5
9B47 CEB5 3D77 1E0C CB87 E41C 3736 9E0D 0.45

CF97 C51C 369B 8CC9 9666 665B 9A67 BA52 0.4

C466 374B 9B6D 9BD3 EC52 F74B DB6C AD92 0.35

... 0.3

(WH1−WH2)2
0.25

En este trabajo se han programado cuatro sub-algoritmos 0.2

de comparación de plantillas de iris: la distancia que propor- 0.15

ciona la transformada de Walsh-Hadamard, la diferencia de la 0.1

0.05
covarianza cruzada y las distancias de Hamming y euclı́dea.
0
Cada algoritmo suministra un valor de medida de proxi- 0 50 100 150 200 250
Secuencia
300 350 400 450 500

midad, clasificándose el resultado como de similitud o disi-


militud según que la medida arroje un resultado por encima, Figura 3. Diferencia entre WHT de dos plantillas del iris del usuario 1.
o por debajo, de un determinado valor de referencia elegido
0.5
previamente. 0.45
La decisión de coincidencia de las plantillas de irises se 0.4

toma en base a los resultados de los cuatro algoritmos de la 0.35

siguiente forma: un usuario es aceptado si en alguno de los 0.3

(WH1−WH2)2
cuatro algoritmos es considerado como similar; mientras que 0.25

es rechazado si es disimilar para todos ellos. 0.2

0.15

II-A. Diferencia de la Transformada de Walsh-Hadamard 0.1

0.05
La Transformada de Walsh-Hadamard (WHT) es una trans-
0
formada ortogonal, similar a la transformada de Fourier, que 0 50 100 150 200 250
Secuencia
300 350 400 450 500

hace corresponder a una secuencia numérica otra secuencia


formada por funciones de Walsh, en lugar de funciones si- Figura 4. Diferencia entre WHT de las plantillas de los usuarios 1 y 2.
nusoidales ([8]). Las funciones de Walsh solo tienen valores
+1 y −1 y por tanto resulta la más adecuadas para transfor-
maciones de secuencias discretas de números, mientras que Se puede apreciar que la amplitud de la diferencia de
la transformada de Fourier es óptima para señales continuas. términos de dos irises del mismo usuario es mucho menor,
La WHT es más rápida si se calcula con 512 puntos y sus en conjunto, que la diferencia de términos de dos irises de
resultados no mejoran calculando más puntos. distintos usuarios. Experimentalmente se ha encontrado que
La WHT ha sido propuesta para ser empleada en la selec- el valor de referencia óptimo para la diferencia cuadrática
ción de caracterı́sticas faciales ([2]). Aquı́ se propone su uso media de las secuencias de la transformada es WH = 0,004,
como un medio para la obtención de un parámetro que permita clasificándose como similares los irises con valores medios
decidir si dos plantillas de irises son o no similares. A modo menores y como disimilares los irises con valores mayores o
de ejemplo, en la Figura 2 se ilustra la WHT de la plantilla iguales.
del iris del usuario 1 de la base de datos CASIA.
II-B. Diferencia de la covarianza cruzada
1
La covarianza es un valor que indica el grado de variación
0.8 conjunta de dos variables aleatorias. Es el dato básico para
0.6
determinar si existe una dependencia entre ambas variables.
Tranformada WH

Cuando las dos variables son idénticas se denomina auto-


0.4
covarianza y si son diferentes es la llamada covarianza cruza-
0.2
da. La Figura 5 ilustra la auto-covarianza de un patrón del iris
del usuario 1 de la base de datos CASIA, normalizada para
0
que el valor máximo sea 1.
−0.2
0 50 100 150 200 250 300 350 400 450 500
El sub-algoritmo de comparación de irises utilizado es el
Secuencia
siguiente:
Figura 2. WHT de la plantilla del iris del usuario 1. En primer lugar se calcula la auto-covarianza de la
plantilla de un iris de determinado usuario.
La Figura 3 representa la diferencia entre las transformadas A continuación se determina la covarianza cruzada entre
de dos plantillas diferentes del iris del mismo usuario. El la misma plantilla y otra plantilla diferente (la que se
sub-algoritmo utilizado en este caso, consiste en calcular la desea comparar con la anterior).
diferencia cuadrática media de las secuencias de la WHT de Más tarde se halla la diferencia entre ellos, término a
dos irises diferentes, sean o no del mismo usuario. término.
La Figura 4 representa la diferencia entre las WHT de dos Finalmente, se calcula la media cuadrática de estas
plantillas de irises de diferentes usuarios. diferencias.
188 V. Gayoso, F. Hernández, L. Hernández, F. Montoya y A. Orúe

1
II-C. Distancia de Hamming
0.8
Para comparar dos archivos de plantillas de irises de la
0.6 misma longitud de m muestras, se determina el valor medio
Auto−covarianza

0.4
de las distancias de Hamming entre las muestras que ocupan
el mismo lugar en cada archivo.
0.2
La distancia de Hamming dh se ha determinado contando la
0 cantidad de bits idénticos en ambas muestras. Se han utilizado
muestras codificadas con 2 bits, por lo que esta distancia
−0.2
0 500 1000 1500
Secuencia
2000 2500 3000
puede ser 0, 1 o 2. Experimentalmente se ha encontrado que
un valor de referencia con buenos resultados es DH = 0,5.
Figura 5. Auto-covarianza de la plantilla del usuario 1. Ası́, se clasifican como similares las plantillas de irises cuyo
valor medio de distancias de Hamming son menores que dicho
valor, dh < DH, y como disimilares las plantillas con valores
La Figura 6 ilustra la covarianza cruzada entre dos plantillas iguales o mayores que el dado, dh ≥ DH.
diferentes del iris del usuario 1 de la base de datos CASIA. La
Figura 7 ilustra la covarianza cruzada de una de las plantillas II-D. Distancia de euclı́dea
de iris del usuario 1 y otra del usuario 2. Se puede apreciar Consiste en un sub-algoritmo similar al anterior, que en
que la covarianza cruzada de dos irises del mismo usuario lugar de calcular la distancia de Hamming entre las muestras
es mucho menor, en conjunto, que la covarianza cruzada de de las plantillas de irises calcula la media de la diferencia
patrones de dos irises de distintos usuarios. euclı́dea de los valores absolutos de las muestras de los
patrones, que puede variar, en decimal, entre 0 y 3.
1
Experimentalmente se ha encontrado que el valor de refe-
0.8

0.6
rencia óptimo es DE = 1, clasificándose como similares los
0.4 iris con valor medio de distancias euclı́deas menores que este
Covarianza cruzada

0.2 valor y como disimilares los iris con valores iguales o mayores
0
que el de referencia.
−0.2

−0.4

−0.6
III. R ESULTADOS EXPERIMENTALES
−0.8

−1
En la parte experimental se han considerado las plantillas
0 500 1000 1500
Secuencia
2000 2500 3000 de los 7 irises de 105 individuos de la base de datos CASIA
([3]). Estas 735 plantillas han servido como base de datos
Figura 6. Covarianza cruzada de dos plantillas del usuario 1. para contrastar el rendimiento del algoritmo presentado en la
sección II.
Dado que se trata de analizar los valores de las tasas de
1 falsa aceptación (FAR) y falso rechazo (FRR), se ha ejecutado
0.8 el algoritmo presentado en la sección II de modo que cada una
0.6
de las 7 plantillas de irises de cada uno de los 105 usuarios se
0.4
ha comparado con las 735 (= 105 · 7) plantillas de la base de
Covarianza cruzada

0.2

0
datos, obteniéndose una tabla de tamaño 735 × 735 (se omite
−0.2 la presentación de esta tabla por razones de espacio).
−0.4 Para el estudio de la variabilidad intra-usuarios, cada una
−0.6
de las 7 plantillas de los 105 usuarios se considera como la
−0.8
entrada de la fase de verificación y se compara con el resto de
−1
0 500 1000 1500
Secuencia
2000 2500 3000 las plantillas del mismo usuario. El resultado de esta compa-
ración muestra el nivel de similitud entre todas las plantillas
Figura 7. Covarianza cruzada de las plantillas de los usuarios 1 y 2. de un único usuario. El número de similitudes permite medir
la tasa de falso rechazo. Ası́ pues, si se consideran todas las
Experimentalmente se ha encontrado que, dados los valores comparaciones de un usuario consigo mismo se obtienen 49
de prueba considerados, el valor de referencia óptimo para la (= 7 · 7) comparaciones, de modo que el número total de
diferencia cuadrática media de las covarianzas cruzadas de las comparaciones es de 5145 (= 49 · 105). En el experimento
secuencias de la transformada es Xv = 0,01, clasificándose realizado se ha obtenido que las comparaciones exitosas entre
como similares los irises con valor de esta diferencia menor los 105 usuarios es el siguiente valor:
que el valor de referencia y como disimilares los irises con 4091
valores mayores o iguales. GAR = ≈ 0,7951 ≡ 79,51 %.
5145
La transformada de Walsh-Hadamard en la identificación biométrica 189

Por tanto, se tiene que la tasa de falso rechazo, es decir, los usuarios empleada, no se aceptan individuos ilegales (FAR=
falsos negativos son: 0,0) a la vez que el porcentaje de individuos legales que son
erróneamente rechazados es cercano al 20 % (FRR= 0,2049).
FRR = 1 − GAR ≈ 1 − 0,7951 = 0,2049 ≡ 20,49 %. A la vista de los resultados obtenidos, es necesario incluir
Considerando cada uno de los parámetros por separado, los la transformada de Walsh-Hadamard entre los parámetros
resultados que se han obtenido son los siguientes: la distancia del algoritmo para mejorar los resultados, aunque su coste
euclı́dea proporciona un 65,34 % de verdaderos positivos, la computación sea el más elevado.
distancia de Hamming un 71,21 %, la covarianza cruzada un AGRADECIMIENTOS
71,43 % y la WHT un 69,05 %; mientras que considerando
Este trabajo ha sido parcialmente subvencionado por el
todas juntas, el resultado es del 79,51 %, lo que supone una
Ministerio de Ciencia e Innovación (España) bajo el proyecto
ganancia considerable. Además, ninguno de los parámetros
TIN2011-22668.
proporciona falsos positivos.
Como era de esperar, la aportación a la verificación de cada R EFERENCIAS
uno de los parámetros es diferente. Ası́, si no se considera [1] R. Alvarez Marino, F. Hernandez Alvarez, and L. Hernandez Encinas, “A
alguno de los parámetros, la tasa de verdaderos positivos crypto-biometric scheme based on iris-templates with fuzzy extractors,”
disminuye, especialmente si no se considera la distancia de Information Sciences, vol. 195, pp. 91–102, 2012, http://dx.doi.org/10.
1016/j.ins.2012.01.042.
WHT, en cuyo caso los verdaderos positivos serı́an solamente [2] W. Besbas, M. Artemi, R. Sullivan, and M. Al Rjebi, “Content based face
del 76,95 %. Por tanto, es necesario incluir esta transformada image retrieval in Walsh Hadamard transform domain,” in The Interna-
entre los parámetros de discriminación para obtener mejores tional Conference on Computing, Networking and Digital Technologies
(ICCNDT2012), 2012, pp. 101–106.
resultados, aunque su coste computacional sea el más elevado. [3] Biometric Ideal Test, “CASIA iris image database,” 2010, http://
En el estudio de la variabilidad inter-usuarios, se compara biometrics.idealtest.org/findDownloadDbByMode.do?mode=Iris.
cada una de las 7 plantillas de cada uno de los 105 usuarios [4] ——, “CASIA iris image database, version 1.0,” 2010, http://www.
idealtest.org/dbDetailForUser.do?id=1.
con las 7 plantillas de los restantes 104 usuarios y se determina [5] R. Blanco-Gonzalo, O. Miguel-Hurtado, A. Mendaza-Ormaza, and
su similitud o disimilitud. Dado que hay un total de 535080 R. Sanchez-Reillo, “Handwritten signature recognition in mobile sce-
(= 7 · 105 · 7 · 104) comparaciones y no hay disimilitudes, la narios: Performance evaluation,” in 2012 IEEE International Carnahan
Conference on Security Technology (ICCST’2012), 2012, pp. 174–179.
tasa de falsa aceptación, es decir, los falsos positivos son: [6] J. Connolly, E. Granger, and R. Sabourin, “An adaptive classification
0 system for video-based face recognition,” Information Sciences, vol. 192,
FAR = = 0,0 ≡ 0 %. no. 1, pp. 50–70., 2012.
535080 [7] E. Diez Laiz and C. Sanchez Avila, “Sistema criptobiométrico basado
en iris para esquemas Diffie-Hellman con curva elı́ptica (ECDH),” in
Finalmente, el coste computacional, para comparación, del Congreso de Métodos Numéricos en Ingenierı́a, 2009, pp. 1–20.
algoritmo de la distancia euclı́dea es de 0,19 ms, de la distancia [8] D. Elliot and K. Rao, Fast transforms, algorithms, analysis, applications.
de Hamming es 0,55 ms, de la varianza cruzada es 0,87 ms y New York: Academic Press, 1982.
[9] V. Fernandez Mateos, F. Hernandez Alvarez, L. Hernandez Encinas,
de la WHT es 5,22 ms. La comparación de una plantilla contra C. Sanchez Avila, and G. Bailador, “Towards a biometric identification
las 735 de la base de datos requiere 4,7 segundos. Debe tenerse based on corporal odor,” in 4th International Information Security &
en cuenta que los algoritmos se han ejecutado bajo MatLab Cryptology Conference (ISCTURKEY’10), May 2010.
[10] B. Huang, J. Wu, Z. Zhang, and N. Li, “Tongue shape classification by
en un PC de 2 GHz, por lo que serı́a posible obtener mejores geometric features,” Information Sciences, vol. 180, pp. 312–324, 2010.
resultados si estos se implementaran en C, por ejemplo. [11] J. Ilonen, “Keystroke dynamics,” 2013, http://www.it.lut.fi/kurssit/03-04/
010970000/seminars/Ilonen.pdf.
IV. C ONCLUSIONES [12] A. Jain, R. Bolle, and S. Pankanti, Biometrics: Personal Identification
in Networked Society. New York: Springer, 1999.
Con el fin de mejorar las tasas de falsos positivos y falsos [13] A. Jain, A. Ross, and S. Pankanti, “Biometrics: A tool for information
negativos en la identificación de usuarios mediante plantillas security,” IEEE Transactions on Information Forensics and Security,
vol. 1, no. 2, pp. 125–143, 2006.
de irises, se ha propuesto el uso de un algoritmo que considere [14] A. Jain, A. Ross, and S. Prabhakar, “Fingerprint matching using minutiae
cuatro parámetros derivados de las distancias de la transforma- and texture features,” in International Conference on Image Processing
da de Walsh-Hadamard y de la covarianza cruzada, ası́ como (ICIP), 2001, pp. 282–285.
[15] H. Li, J. Zhang, and Z. Zhang, “Generating cancelable palmprint
de las distancias de Hamming y euclı́dea. templates via coupled nonlinear dynamic filters and multiple orientation
Este algoritmo considera que dos plantillas de irises son palmcodes,” Information Sciences, vol. 180, pp. 3876–3893, 2010.
similares, y por tanto que ambas pertenecen a un mismo [16] J. Mainguet, “Biometrics,” 2013, http://pagesperso-orange.fr/fingerchip/
biometrics/biometrics.htm.
individuo, si alguno de los cuatro parámetros anteriores decla- [17] D. Maltoni, D. Maio, A. Jain, and S. Prabhakar, Handbook of Fingerprint
ran ambas plantillas como similares. En caso contrario, esto Recognition. New York: Springer, 2003.
es, si ninguno de los cuatro parámetros lo considera similar, [18] C. Sanchez Avila and R. Sanchez-Reillo, “Two different approaches
for iris recognition using Gabor filters and multiscale zero-crossing
las plantillas se consideran disimilares y la identificación es representation,” Pattern Recognition, vol. 38, no. 2, pp. 231–240, 2005.
rechazada.
El algoritmo, en su versión actual, permite utilizar una única
fuente de información (unimodal), proporcionando una tasa
de falsos negativos del 20,49 % y de faltos positivos del 0 %.
Esto es, según el algoritmo propuesto y con la muestra de
RECSI 2014, Alicante, 2-5 septiembre 2014

Hacia un Proceso de Migración de la Seguridad


de Sistemas heredados al Cloud
Luis Márquez Alcañiz David G. Rosado Daniel Mellado Eduardo Fernández-Medina
Comision Nacional Departamento de TSI Agencia Tributaria Departamento de TSI
de la Competencia Grupo GSyA Madrid Grupo GSyA
Madrid Universidad Castilla-La Mancha damefe@esdebian.org Universidad Castilla-La Mancha
luismarquezalcaniz@gmail.com Ciudad Real Ciudad Real
david.grosado@uclm.es eduardo.fdezmedina@uclm.es

Resumen—El desarrollo de la computación en la nube es una es cierto que existen propuestas de procesos de migración
tendencia fuerte en la industria de las TI que hace que los [5][6][7][8], pero ninguno de ellos propone una verdadera
clientes de este nuevo modelo de prestación de servicios, sobre integración con las cuestiones especı́ficas de seguridad en
todo las empresas, se enfrenten a desafı́os nuevos en lo que se
refiere a la gestión de la seguridad de sus aplicaciones heredadas forma de necesidades y/o de oportunidades que se derivan del
en el nuevo entorno. La cuestión es en cómo migrar de forma modelo en la nube.
segura los sistemas de información heredados de estas empresas. Nuestro propósito con este artı́culo es proponer un marco de
Este artı́culo presenta un proceso (SMiLe2Cloud) y un marco de trabajo para tal proceso mediante un conjunto de métodos que
trabajo con el que se puede migrar de forma segura los sistemas resuelvan de forma concreta las cuestiones de seguridad y la
corporativos heredados a infraestructuras o entornos en la nube,
siguiendo los 14 dominios de seguridad del CSA y utilizando integración de la seguridad con procesos de otra naturaleza
ingenierı́a inversa. orientados todos ellos a la migración segura a la nube de
Palabras clave—Cloud, seguridad informática, migración de sistemas de información heredados. En [9] se realizó un
sistemas heredados, KDM, SLA, SecSLA. estudio de la importancia de la seguridad en los entornos Cloud
y se analizó algunas propuestas de migración al Cloud, que
I. I NTRODUCCI ÓN fue descrito formalmente planteando un ”mapping study” en
Para algunos expertos, la computación en la nube está ”des- [11], donde se indica la falta de iniciativas con respecto a la
alineada con los modelos y controles de seguridad tradiciona- seguridad en el propio proceso de migración. En [10] se da
les” [1]. Sin embargo, otros ven en este modelo una gran opor- algunas pautas y criterios a la hora de tomar algunas decisiones
tunidad para mejorar la seguridad de los sistemas heredados en cuanto a qué caracterı́sticas debemos migrar al Cloud y
[2]. Sin embargo, hay algo en lo que todos coinciden: la nube cuáles no. Este artı́culo, que se presenta aquı́, avanza en el
supone nuevas amenazas y estas amenazas deben ser resueltas sentido de que una vez descubierta la necesidad de disponer
antes de que las aplicaciones de las grandes corporaciones de un proceso de migración donde se incorpore la seguridad
entren en juego. desde el principio, se define dicho proceso de migración con
¿Qué tienen en especial esas aplicaciones de las grandes el propósito de servir de soporte y ayuda para migrar las
corporaciones? Que la mayorı́a de ellas se basan en sistemas caracterı́sticas de seguridad de sistemas heredados al Cloud
de información heredados (LIS-Legacy Information Systems). Computing.
Según una encuesta realizada por MeriTalk [3] a un total de El artı́culo está estructurado en 2 secciones adicionales a
166 directivos de TI del gobierno federal norteamericano, el esta introducción. En la sección 2 presentamos el marco de
47 % de las aplicaciones de TI se basan en tecnologı́a heredada trabajo propiamente dicho. Y en la sección 3 ofrecemos unas
que necesita modernización?. Y gran parte de la moderniza- someras conclusiones y presentamos lo que serán las lı́neas de
ción no sólo se beneficiarı́a de una mejora tecnológica pura, actuación futuras.
sino que entrarı́an en juego reducciones de coste importantes
a raı́z de una migración a la nube de parte de la infraestructura II. SMILE2CLOUD: P ROCESO PARA LA M IGRACI ÓN A
que las soporta [4]. LA NUBE DE LA S EGURIDAD DE LOS S ISTEMAS
Y sin embargo, aunque la modernización de los LIS por H EREDADOS
medio de la migración a la nube podrı́a implicar inmensos En esta sección proponemos un proceso (denominado SMi-
ahorros y reducciones de los presupuestos, y a pesar de la Le2Cloud - Security MIgration of LEgacy systems TO Cloud
preocupación a la que antes nos hemos referido relativa a la computing) que pretende resolver el problema de la migración
seguridad intrı́nseca del modelo en la nube, hasta la fecha con seguridad a la nube de sistemas de información heredados.
parece que todavı́a no hay un modelo que permita la migración Este proceso está basado en el modelo de herradura del SEI
a la nube de sistemas que de forma explı́cita incluyan procesos (Software Engineering Institute) [12], pero también tiene una
relacionados con la seguridad de dichos sistemas. Sı́ que vocación de proceso de mejora continua al estilo de Deming.
192 L. Márquez, D. G. Rosado, D. Mellado, E. Fernández.Medina

Dado que estamos interesados en los aspectos propiamente embargo, esta fase no es especı́fica de un proceso de migración
relacionados con la seguridad (y no en los esfuerzos generales a la nube. Podrı́a ser utilizada de forma separada en cualquier
de ingenierı́a inversa necesarios para obtener la especificación proceso que pretendiera migrar un sistema heredado de forma
funcional) hemos partido de la base de que los ingenieros segura a cualquier tipo de arquitectura objetivo.
a cargo de la migración ya han desarrollado un modelo del Lo que sı́ es necesario entender de antemano, cuando
sistema heredado que define las especificaciones funcionales estamos pensando en migrar a la nube, es el papel central
y los elementos arquitectónicos de sistema (con exclusión que tienen para la seguridad y para la arquitectura del sistema
de las especificaciones relacionadas con la seguridad y la completo los acuerdos de nivel de servicio (SLA - Servi-
arquitectura de seguridad) y que han documentado dichas ce Level Agreement) especı́ficos de seguridad (comúnmente
especificaciones y elementos en un entorno que puede exportar denominados SecSLA). Los SecSLA son el núcleo de la
dicha especificación en formato KDM (Knowledge Discovery seguridad en la nube y la mayorı́a de controles especı́ficos
Metamodel) [13]. Es en este punto en el que nosotros entramos que se pueden implantar se instancian como cláusulas en el
y empezamos a desarrollar los aspectos de seguridad a partir SecSLA siempre que es posible. Por supuesto, esto depende en
del diseño obtenido mediante ingenierı́a inversa y luego con- gran media del modelo de despliegue elegido; con un modelo
tinuamos con el resto del proceso de segurización del sistema de infraestructura como servicio (IaaS - Infrastructure as a
migrado. Service) como el que ofrece Amazon EC2, la organización
que está migrando el sistema heredado tiene que trabajar a un
II-A. Visión general nivel más bajo y diseñar e implementar controles tradicionales
Como se ha indicado antes, nuestro proceso comienza en por sı́ misma; sin embargo, con modelos de software como
el punto más alto del modelo de herradura del SEI, una vez servicio puros (SaaS - Software as a Service), casi todos
que la arquitectura básica ha sido obtenida, y justo antes los controles de seguridad deben ser implementados como
de que comience la transformación. Desde este punto, conti- SecSLA ya sean acordados con el proveedor funcional del
nuará transformando y refinando el sistema objetivo, ya desde servicio o con un proveedor especı́fico de seguridad como
una perspectiva puramente enfocada en los temas relacionados servicio (SecaaS - Security as a Service); finalmente con
especı́ficamente con la nube. un modelo de plataforma como servicio (PaaS - Platform
El proceso SMiLe2Cloud consta de siete actividades dirigi- as a Service) como el que ofrece Google App Engine una
das por 14 dominios de seguridad del CSA (Cloud Security solución intermedia que balancee controles de ambos tipos
Alliance) [14] que son mostradas en Figura 1. La actividad de será la aproximación adecuada (la seguridad de la plataforma
”extracción” está enfocada al uso de la reingenierı́a inversa recae en el proveedor y la seguridad de las aplicaciones y
para extraer aspectos de seguridad desde el LIS a un modelo la seguridad del propio proceso de desarrollo y despliegue es
de seguridad (modelo SMiLe) definido para nuestro proceso responsabilidad del cliente).
de migración. La segunda actividad es la ”valoración” durante Todo esto es importante para la definición de la arquitectura
la cual se estudian las principales caracterı́sticas del cloud, los de seguridad, puesto que algunas actividades en un proceso
principales proveedores y diferentes modelos cloud. La tercera tradicional de aseguramiento de sistemas (ya sea en migración
actividad es el ”análisis” de los requisitos de seguridad, las de sistemas o en desarrollo de sistemas desde cero) implican
cláusulas en los acuerdos a nivel de servicio de seguridad y el diseño de controles, mientras que en un proceso orientado
los servicios ofrecidos por los proveedores de seguridad del a la nube, la mayorı́a del proceso tiene que ver con el
cloud. La actividad de ”diseño” está enfocada en el diseño de aspecto nuclear de seleccionar qué controles diseñados por
la arquitectura de seguridad y en la definición de una estrategia los proveedores son aplicables y asegurar que las cláusulas del
de migración que será aplicada en la siguiente actividad del SLA cubren dichos controles. De esa manera, las cláusulas se
proceso de migración, que es la actividad de ”migración” don- convierten, de facto, en los propios controles que salvaguardan
de los elementos de seguridad son desarrollados, configurados a la organización cliente (normalmente mediante la aplicación
y contratados siguiente la estrategia previamente definida. La de obligaciones contractuales o penalizaciones en caso de
sexta actividad es la ”evaluación” donde se verifica y valida que el proveedor no pueda cumplir dichas obligaciones). El
el modelo de seguridad migrado. Finalmente, la actividad de problema, pues, se convierte en una mezcla de diseño de
”mejora” captura los nuevos aspectos de seguridad que se sistemas, selección de proveedores de servicio y técnicas de
quieren incorporar dentro de un nuevo ciclo del proceso y negociación de contratos.
se analizan las mejoras y cambios propuestos para nuestro En nuestro caso, el objetivo es orientar nuestra aproxi-
sistema cloud. mación lo más posible hacia la ingenierı́a de sistemas de
Dado que KDM carece de elementos especı́ficos para información. Por ello excluiremos inicialmente las soluciones
modelar aspectos de seguridad de un sistema heredado, en puramente SaaS que tienden a estar orientadas principalmente
realidad parte de nuestro proceso debe realizarse antes de que hacia la reingenierı́a de procesos que a la de sistemas. Esto es,
exista una especificación completa del sistema obtenida por una propuesta SaaS supone normalmente un diseño de cómo el
ingenierı́a inversa. La actividad de extracción, especı́ficamente proceso de negocio debe ser migrado (es decir cómo podemos
definida en nuestro proceso, precisamente trata con esta última seleccionar el mejor proveedor SaaS que pueda cumplir con
parte de la fase de reingenierı́a del modelo de herradura. Sin el proceso de negocio y/o en qué manera debe cambiar dicho
Hacia un Proceso de Migración de la Seguridad de Sistemas heredados al Cloud 193

S IS T E M A
IN F O R M A C IÓ N
HEREDADO

E X T R A C C IÓ N V A L O R A C IÓ N

M a rc o
A rq u ite ctu ra
S e g u rid a d G o b ie rn o y
CLoud
M EJO RA co m o G e s tió n
C o m p u tin g
S e rvicio R ie sg o s
E m p re s a s A N Á L IS IS
V irtu a liza ció n C u e stio n e s
le g a le s

Id e n tid a d e s y G e stió n C u m p lim ie n to y


d e A c ce s o s SaaS A u d ito ría
S U B S IS T E M A
CLO UD
PaaS
C ifra d o y G e stió n Ia a S G e stió n In fo rm a ció n y
S IS T E M A C L O U D C la ve s S e g u rid a d D a to s
S U B S IS T E M A S U B S IS T E M A
CLO UD CLO UD
In te ro p e ra b ilid a d
S e g u rid a d d e
y P o rta b ilid a d
A p lic a cio n e s
C o n tin u id a d
E V A L U A C IÓ N R e sp u e sta N e g o cio D IS E Ñ O
In cid e n te s R e cu p e ra ció n
O p e ra ció n D e sa stre s
C e n tro D a to s

M IG R A C IÓ N

Figura 1. El proceso SMiLe2Cloud: un proceso para migrar a la nube la seguridad de sistemas de información heredados.

proceso de negocio para acomodarse al nuevo sistema) pero de obtención del modelo de arquitectura general del sistema
tiene poco que ver con cuestiones relacionadas con la inge- heredado. Normalmente ambos procesos se supone que son
nierı́a de sistemas. En cierto sentido, una solución puramente realizados con la ayuda parcial de herramientas de ingenierı́a
SaaS no serı́a una migración pura de un sistema heredado, inversa que faciliten las tareas y pasos que el analista debe
sino que serı́a un cambio completo del sistema que tratarı́a realizar para identificar los diferentes requisitos y controles
con cuestiones como la migración de los datos del sistema de seguridad existentes en el sistema origen.
heredado original más que la migración de funcionalidades. Se trata de una actividad orientada por los datos y parte de
la especificación formal de los programas y subprogramas del
II-B. Actividades de SMiLe2Cloud sistema heredado, ası́ como de los datos gestionados por cada
En esta sección presentaremos una descripción en profun- unidad de programa. Esta especificación formal tiene la forma
didad del conjunto de actividades en nuestro proceso SMi- de árbol de sintaxis abstracta (AST - Abstract Syntax Tree)
Le2Cloud las cuales son mostradas en Figura 1. El proceso que modeliza cada unidad de programa y los datos manejados.
tiene 7 actividades: Extracción, Valoración, Análisis, Diseño, A1.1 Definir el árbol de sintaxis abstracta (AST-abstract
Migración, Evaluación y Mejora, y un amplio conjunto de syntax tree)
artefactos de entrada y salida para cada una de las actividades Un árbol de sintaxis abstracta es una representación en forma
y que son descritas de forma resumida a continuación. de árbol de la estructura del programa y de los elementos de
II-B1. Actividad 1: Extracción: La extracción es la acti- datos del sistema heredado y ofrece una equivalencia 1-a-1
vidad en la que el modelo de seguridad del sistema heredado entre todos los elementos incluidos en el código en forma de
es obtenido a partir del propio código del sistema y de la estructura arbórea. El AST es usado para derivar los requisitos
documentación del mismo. Se trata de un subproceso de inge- de seguridad del sistema.
nierı́a inversa que se puede realizar en paralelo al subproceso A1.2 Extraer aspectos de seguridad del AST
194 L. Márquez, D. G. Rosado, D. Mellado, E. Fernández.Medina

Para cada elemento de datos y de subprograma que ha sido las especificaciones funcionales del LIS y extraer las espe-
representado en el AST, el analista de sistemas debe extraer cificaciones de seguridad que ofrecen dentro de los términos
los parámetros de seguridad concretos para cada uno de los del acuerdo de nivel de servicio. El analista también debe
perfiles de usuarios definidos en su operación habitual nor- comprobar cuáles términos relacionados con la seguridad del
mal (acceso, creación, modificación, borrado, administración, acuerdo a nivel de servicio están abiertos a negociación.
auditorı́a). A2.3 Validar modelos en la nube
A1.3 Definir el modelo de seguridad en KDM (Know- Dado que las diferentes propuestas de modelos cloud (modelos
ledge Discovery Metamodel) de servicios y modelos de despliegue) forman parte de la
Nuestra aproximación propone evitar esta situación haciendo arquitectura del modelo cloud y no del modelo de seguridad,
que cada artefacto y control de seguridad del sistema heredado no se debe tratar de cambiar los modelos seleccionados o
sea instanciado en una regla de seguridad de negocio y se propuestos definidos en la arquitectura LIS. Sin embargo, los
incluye en el modelo conceptual durante la fase de análisis. modelos conducen a una diferencia en las restricciones de
A1.4 Definir el modelo de seguridad (modelo SMiLe) seguridad que el sistema migrado deberá enfrentar. Por tanto,
es necesario validar si los modelos seleccionados o propuestos,
El modelo SMiLe (Security MIgration of LEgacy systems)
de los proveedores seleccionados en el paso anterior, pueden
es un modelo de seguridad de un sistema heredado que
o no cumplir con los requisitos de seguridad del LIS. Si no,
ha sido derivado desde las reglas de negocio de seguridad
el riesgo que no está cubierto por el requisito de seguridad no
definidos mediante KDM y los activos identificados en el paso
cumplido debe ser aceptado o un cambio en la arquitectura
A1.3. Ahora es necesario incluir las polı́ticas y controles de
destino debe ser recomendada, proporcionando una lista de
seguridad que fueron predefinidos para el sistema heredado
modelos aceptables que cumplen con los requisitos de seguri-
(con independencia de si el sistema debe ser migrado a la
dad.
nube o no).
II-B3. Actividad 3: Análisis: La actividad de análisis es
II-B2. Actividad 2: Valoración: La actividad de valoración
en la que definimos los requisitos de seguridad a implementar
es en la que el modelo general de seguridad del sistema
e identificamos el conjunto de servicios de seguridad contra-
heredado es adaptado al nuevo entorno (en nuestro caso,
tables a proveedores especı́ficos de seguridad como servicio
a la nube). Comenzamos con un modelo SMiLe que no
(SecaaS) que se integrarán en nuestra aplicación una vez
está especı́ficamente adaptado al entorno de la nube y en dicho
migrada a la nube. También se identificarán otros controles
modelo estudiamos las fortalezas, debilidades, oportunidades
tales como las cláusulas estándar del SLA que afectan a
y amenazas especı́ficas que la nube incorpora. Esta actividad
cuestiones de seguridad y también puede que volvamos a
comienza con el modelo SMiLe (esto es, el modelo de se-
validar si los proveedores de servicio en caso de que algún
guridad del sistema heredado obtenido por ingenierı́a inversa)
proveedor concreto no pueda cumplir dentro de su marco
y es realmente la primera actividad de ingenierı́a directa del
contractual con los requisitos fundamentales de seguridad
modelo de herradura que define nuestro proceso.
definidos.
Los objetivos de esta actividad son los siguientes: refinar el
modelo SMiLe para obtener un modelo SMiLe2Cloud (esto A3.1 Análisis de requisitos de seguridad en la nube
es, adaptar el modelo del sistema heredado con las amenazas El modelo SMiLe2Cloud actualizado, proveedores cloud va-
especı́ficas de la nube, los activos especı́ficos en la nube, los lidados, modelos de servicio y despliegue son usados para
escenarios especı́ficos de la nube, los requisitos especı́ficos derivar un conjunto de requisitos de seguridad con la cual
de la nube, etc.); seleccionar un conjunto de proveedores de el sistema diseñado debe cumplir con el nuevo entorno. Los
servicios en la nube y de proveedores de seguridad en la nube requisitos serán un subconjunto de requisitos del LIS que
que, al menos parcialmente, cumplan con los requisitos de se- el LIS ten?a y con los requisitos que se incluyeron en el
guridad del modelo SMiLe2Cloud del sistema heredado según desempe?o del análisis DAFO.
nuestra especificación de seguridad; y validar los modelos de A3.2 Asociación de los requisitos de seguridad con los
servicio y de despliegue que pueden utilizarse dentro de los elementos de SMiLe
lı́mites de dichas especificaciones de requisitos de seguridad.
Los artefactos obtenidos a partir de la tarea anterior deben ser
A2.1 Definir la matriz DAFO (Debilidades, Amenazas, utilizados para desarrollar un mapeo entre los requisitos de
Fortalezas y Oportunidades) e incorporar los elementos seguridad del LIS y una especificación formal de los requisitos
especı́ficos de la nube en el modelo SMiLe de seguridad con la que el sistema destino debe cumplir para
Se define una matriz (DAFO) con las debilidades, fortalezas, estar seguro de acuerdo con la especificación de la nueva
oportunidades y nuevas amenazas que el modelo cloud plantea arquitectura.
al LIS. A3.3 Análisis de los acuerdos estándar de nivel de
A2.2 Validar proveedores en la nube servicio
Una vez que la matriz DAFO se ha completado, el analista Una vez que los requisitos de seguridad se han identificado y
debe contrastarlo con el modelo SMiLe del LIS y comprobar definido formalmente, es necesario seguir analizando el SLA
la lista de proveedores de servicios cloud que puede abordar estándar definido por los proveedores de la nube en busca de
Hacia un Proceso de Migración de la Seguridad de Sistemas heredados al Cloud 195

problemas de seguridad, polı́ticas de seguridad, elementos de Finalmente, la última tarea de la actividad de diseño es
seguridad que pueden ser medidos, etc. desarrollar un plan relativo a cómo la seguridad del LIS
A3.4 Análisis de servicios de seguridad será implementada con recursos, horarios, logros, etc.
La última tarea de esta actividad se ocupa de los servicios II-C. Actividad 5: Migración
de seguridad actuales que son ofrecidos por los proveedores
Finalmente, la propia migración tiene lugar y es necesario
de servicios de seguridad. Una vez más, esto puede implicar
contratar en la realidad los servicios y firmar los acuerdos de
el análisis de SLA de estos proveedores y mapear algunas
nivel de servicio y desarrollar los elementos de seguridad per-
cláusulas del SLA en requisitos de las actividades anteriores.
sonalizados e implantarlos y configurarlos para dejar todos los
II-B4. Actividad 4: Diseño: En la actividad de diseño se
controles de seguridad en condiciones de operación habitual.
definen los componentes propiamente dichos que forman el
núcleo de la arquitectura de seguridad del sistema (cláusulas, A5.1 Contratar servicios de seguridad
controles personalizados, protocolos, etc.), y no sólo se define En este punto tiene lugar la formalización del contrato. Este
el diseño, sino que también se define la forma en la que contrato puede ser un acuerdo de nivel de servicio con un
deben ser validados y se planifican las actividades que serán proveedor de servicios de seguridad en la nube o pueden ser
necesarias en la migración real de la seguridad del sistema las cláusulas especı́ficas de seguridad que se definen en los
heredado. contratos con proveedores de servicios IaaS, PaaS o Saas.
A4.1 Diseñar la arquitectura de seguridad básica para la A5.2 Desarrollar controles de seguridad a medida
nube Si nuestra arquitectura define controles de seguridad personali-
En esta tarea, se toma la especificación de los requisitos de zados, ha llegado el momento de desarrollarlos. Por ejemplo,
seguridad y las cláusulas del SLA identificados en los pasos si hemos definido que nuestro sistema tendrá una pieza de
anteriores, junto con la lista de los anteriores servicios de software que controlará los perfiles de usuario en una base
seguridad cloud y se desarrolla la arquitectura de seguridad de datos ofrecida por un proveedor de PaaS que no incorpora
básica en términos de controles que se pueden ser integrados un sistema de roles internamente en la propia base de datos,
para cumplir con los requisitos de seguridad. será necesario desarrollar la pieza de software que realice
A4.2 Diseñar los acuerdos personalizados de nivel de la gestión del roles e integrarla en nuestras aplicaciones y
servicio programas que desarrollan elementos funcionales; también
Siempre que sea posible, SLA (ya sea SLA general o SecSLA) será necesario en este punto hacer las pruebas unitarias de
debe ser personalizado para satisfacer las necesidades especı́fi- software de los controles de seguridad a medida.
cas del cliente. La mayorı́a de los analistas cloud aconsejan A5.3 Configurar controles de seguridad
que los contratos de servicio se adapten a las necesidades Para los controles de seguridad personalizados definidos, con-
del cliente. En la práctica, esto sólo será un motivo de tratados y/o implantados de forma personalizada en los pasos
preocupación para los grandes clientes que pueden negociar anteriores, normalmente es necesario realizar una función
contratos lucrativos. Por otra parte, es evidente que no todos de despliegue en el sistema final. Además, si los controles
los proveedores de servicios permitirán la personalización de necesitan algún tipo de configuración, en este punto deberán
los servicios y/o cláusulas hasta el grado deseado. ser configurados y afinado su funcionamiento.
A4.3 Validar la arquitectura de seguridad especı́fica de II-D. Actividad 6: Evaluación
la nube
Una vez que todo el proceso ha concluido y el sistema
Una vez que la arquitectura de seguridad ha sido obtenida,
heredado ha sido movido a la nube de forma segura, es el
y antes que la migración actual comience, tiene lugar la
momento de verificar y validar el sistema y los controles de
validación de la arquitectura. Esta validación involucra una
seguridad.
revisión formal del diseño que hemos propuesto (ya sea SLA
o controles personalizados). Después de esta validación, la A6.1 Verificar seguridad del sistema cloud
aplicabilidad y viabilidad técnica de la arquitectura deberı́a En actividades anteriores (durante el análisis y el diseño)
ser aclarada; es decir, todos los controles que se implementen algunos de los artefactos de salida eran entradas en la parte del
a través de SLA deberı́an ser elegibles o dentro del ámbito proceso y del modelo de seguridad que trata con las cuestiones
SLA de los proveedores seleccionados y la responsabilidad de de pruebas, verificación y certificación de la seguridad.
entregar el control siempre debe estar clara (es decir, cuando A6.2 Validar seguridad del sistema cloud
usamos dos proveedores de servicios, debemos asegurarnos Técnicamente, la validación es la actividad formal que hace
que no hay ninguna posibilidad de que los contratos deleguen que un sistema sea válido para el responsable de las cues-
mutuamente la responsabilidad del control de seguridad). tiones de seguridad de las tecnologı́as de la información: el
Como alternativa, los controles deben poder aplicarse como administrador de la seguridad. La tarea consiste en revisar las
controles personalizados en el modelo seleccionado (es decir, evidencias obtenidas en la actividad anterior y en producir un
en PaaS, el acceso está disponible para definir usuarios y documento que establece que la gestión de la seguridad está de
otorgar permisos en una base de datos). acuerdo con la seguridad de los sistemas heredados (LIS)
A4.4 Planificar la estrategia de migración migrados a la nube de acuerdo con los requisitos especificados.
196 L. Márquez, D. G. Rosado, D. Mellado, E. Fernández.Medina

II-E. Actividad 7: Mejora actividades de obtención del modelo de seguridad del sistema
Dado que nuestro proceso tiene vocación de mejora con- heredado y la derivación del modelo de seguridad del sistema
tinua (se trata de un ciclo de Deming) no finaliza con la migrado a la nube a partir de aquél. La aplicación real de
validación real del sistema en funcionamiento. Periódica- migración de un sistema heredado al cloud se definirá y
mente, el responsable de la seguridad del sistema heredado ejecutará siguiendo SMiLe2Cloud.
deberá reunir nuevas evidencias que permitan asegurar que el AGRADECIMIENTOS
sistema está permanentemente configurado según los requisitos
Esta investigación es parte de los siguientes proyectos:
y parámetros de seguridad definidos y que permita renovar la
GEODAS (TIN2012-37493-C03-01) y SIGMA-CC (TIN2012-
validación. También estudiará mejoras que afecte al análisis
36904) financiados por el ”Ministerio de Economı́a y Compe-
DAFO, al análisis de seguridad en la nube o incluso a la lista
titividad y Fondo Europeo de Desarrollo Regional FEDER”,
de servicios en la nube que pueden ser considerados en las
España.
anteriores tareas.
A7.1 Estudiar mejoras R EFERENCIAS
La nube es un entorno cambiante. Algunos de los problemas [1] W. Jansen, T. Grance, ”Guidelines on Security and Privacy in Cloud
que ahora están siendo objeto de estudio por parte de la Computing”.NIST SP - 800-144, 2011.
[2] J.R.V. Winkler, in ”Securing the Cloud. Cloud Computing Security.
mayor parte de los expertos, hace un par de años ni siquiera Techniques and Tactics”, B. Meine, Editor. Syngress, Elsevier. p. 25.
se conocı́an. En un par de años, puede que haya servicios 2011.
completamente nuevos que ayuden a fortalecer la seguridad [3] M. Tobin, and B. Bass. ”Federal Application Modernization Road Trip:
Express Lane or Detour Ahead?”. MeriTalk. 2011.
de un sistema heredado migrado a la nube. Además, dado que [4] V. Kundra, ”Federal Cloud Computing Strategy”, U.S.C.I. Office,
al mover un sistema a la nube, delegamos la responsabilidad Editor. 2011.
sobre la aplicación de algunos controles, es necesaria y acon- [5] W. Zhang, A. J.Berre, D. Roman, and H. Aage Huru. ”Migrating Legacy
Applications to the Service Cloud”, in OOPSLA 2009, Towards Best
sejable que se vigilen los niveles y métricas definidos para Practices in Cloud Computing. 2009.
asegurar su cumplimiento. [6] S. Frey and W. Hasselbrind. ”Model-Based Migration of Legacy
Software Systems into the Cloud: The CloudMIG Approach”, in 12
A7.2 Renegociar cuestiones de seguridad Workshop on Software-Reengineering of the GI-SRE. 2010.
Finalmente, hemos definido una actividad que permita renego- [7] H. Zhou, H. Yang, and A. Hugill. ”An Ontology-Based Approach to
Reengineering Enterprise Software for Cloud Computing”, in IEEE 34th
ciar con los proveedores de servicios y proveedores de seguri- Annual Computer Software and Applications Conference. 2010. Seoul,
dad las incidencias de seguridad. Esta negociación es diferente Korea. p. 383-388.
de la que supone la renegociación de nuevos servicios. [8] Q.H. Vu and R. Asal, ”Legacy Application Migration to the Cloud:
Practicability and Methodology”, in IEEE Eighth World Congress on
III. C ONCLUSI ÓN Services. 2012.
[9] D.G. Rosado, R. Gómez, D. Mellado, and E. Fernández-Medina,
En este artı́culo hemos presentado un proceso que permite ”Security Analysis in the Migration to Cloud Environments”. Future
Internet, 2012. 4(2): p. 469-487.
la migración de la seguridad o la migración segura a la nube [10] R. Gomez, D.G. Rosado, D. Mellado, and E. Fernández-Medina,
de un sistema de información heredado. Comenzamos en el ”Security Criteria in Deciding on Migration of Systems to the Cloud”, in
punto en el que el sistema ha sido objeto de un proceso de 9th International Workshop on Security in Information Systems. 2012:
Wroclaw, Poland. p. 93-100.
ingenierı́a inversa y tenemos disponibles una serie de modelos [11] L. Marquez Alcañiz, D.G. Rosado, D. Mellado, and E. Fernández-
KDM que definen la parte funcional del sistema heredado. Medina, ”Security in legacy migration to the cloud: a systematic map-
Desde este punto, ofrecemos una serie de actividades que ping study”, in 11th International Workshop on Security in Information
Systems. 2014: Lisbon, Portugal. p. 26-37.
permitirán evolucionar estas especificaciones en formato KDM [12] R. Seacord, D. Plakosh, and G. Lewis, ”Modernizing Legacy Systems:
en una arquitectura de seguridad para el sistema heredado Software Technologies, Engineering Processes, and Business Practices”.
y desde allı́ en un sistema objetivo migrado a la nube en 1st ed. 2003: Addison Wesley.
[13] KDM, ”Knowledge Discovery Meta-Model”, Version 1.3. OMG speci-
forma segura; actualmente estamos desarrollando técnicas y fication formal 2010-12-12. 2011.
plantillas para automatizar parcialmente el proceso de entrega [14] CSA, ”Security Guidance for Critical Areas of Focus in Cloud Com-
de una arquitectura segura y para mapear la arquitectura de puting V3.0”. 2011.
seguridad deseada en un modelo que de forma especı́fica
trate las cuestiones especı́ficas de la nube como las amenazas
especı́ficas que la nube presenta, los requisitos de seguridad
especı́ficos para la nube, los controles especı́ficos relaciona-
dos con la nube (ya sean en su forma de seguridad como
servicio o como controles personalizados); todo ello con la
intención de que una aplicación heredad que sea migrada
a la nube cumpla estándares de seguridad en la nube tales
como la matriz de controles de la CSA. Nuestro trabajo
futuro se enfocará en un refinamiento del propio proceso y
en el desarrollo de herramientas y patrones que permitan de
forma semiautomática asistir al analista de seguridad en las
RECSI 2014, Alicante, 2-5 septiembre 2014

Virtual TPM for a secure cloud: fallacy or reality?


Jordi Cucurull Sandra Guasch
Research and Security department, Research and Security department,
Scytl Secure Electronic Voting Scytl Secure Electronic Voting
Email: jordi.cucurull@scytl.com Email: sandra.guasch@scytl.com

Abstract—The cloud technology has dramatically increased for QEMU, Section V analyses the security of the solutions
the virtualisation usage during the last years. Nevertheless, the presented, Section VI discusses the security findings, and
virtualisation has also imposed some challenges on the security Section VII presents the final conclusion of the paper.
of the cloud. A remarkable case is in the usage of cryptographic
hardware such as the Trusted Platform Module (TPM). II. T ECHNOLOGIES
A TPM is a device, physically attached to a server, that pro-
vides several cryptographic functionalities to offer a foundation of This section describes the technologies that might be in-
trust for the running software. Unfortunately, the virtualisation of volved in a virtualised Trusted Platform Module solution.
the TPM to bring its security properties to virtual environments
is not direct due to its design and security constraints. A. Platform virtualisation
During the last years several proposals have been presented
to solve the virtualisation of the TPM. Nevertheless, the vir-
Platform virtualisation is the practise of emulating one or
tualisation systems have not started to adopt them until very more physical hosts, or parts of them, within an actual physical
recently. This paper reviews three existing implementations of host. The software that creates and manages the virtual guests
virtual TPM in the Xen and QEMU virtualisation solutions. The (emulated hosts) within the host machine (physical host) is the
main contribution of the paper is an analysis of these solutions hypervisor. Two types of virtualisation can be distinguished:
from a security perspective.
Palabras clave—cloud, security, TPM, vTPM, virtualisation, • Full virtualisation: The physical host is fully emu-
XEN, QEMU lated. The operating system of the virtual guest does
not realise is running on an emulated device and it
I. I NTRODUCTION does not require any modification. This solution can be
The cloud technology has dramatically increased the usage based only on software or leverage specific hardware
of virtualisation during the last years. Virtualisation has de- virtualisation extensions of the CPU [7], which provide
tached the software applications from the physical machines different performance.
where they are hosted. This allows a sensible use of resources, • Paravirtualisation: The physical host is emulated with
since the same infrastructure can be shared by many applica- selected modifications of its architecture to enhance the
tions and the number of running servers can be adapted to the scalability, performance and simplicity of the solution [8].
load. Nevertheless, the virtualisation has also introduced new The operating system of the virtual guest has to be
challenges to the security of the clouds. A remarkable case adapted to work with the emulated host.
is the one where the machines were using secure hardware In this article we selected the Xen [9], [10] and QEMU [11],
to ensure the integrity of the infrastructure, such a Trusted [12] virtualisation systems. Xen is a system that supports full
Platform Module (TPM). and paravirtualised x86 guests. Xen maps the virtual guests as
A TPM [1] is a device, physically attached to a server, that domains. There is a privileged domain, called Dom0, and user
provides different cryptographic functionalities to facilitate the domains, called DomU. Additionally, some of the functionality
creation of a foundation of trust of the software installed in of Dom0 was disaggregated in Stub Domains [13] for security
the server. Unfortunately, the TPM was not designed with and scalability purposes. QEMU is a fully virtualised system
virtualisation in mind, hence its virtualisation is not direct and that can emulate different architectures. As opposed to Xen
it implies several security considerations. that manages the whole host machine, QEMU is a standalone
Since Berger et al. [2] presented their work about virtuali- application within the host machine.
sation of the TPM, a few other proposals have appeared [3],
[4], [5], [6]. Nevertheless, existing virtualisation software did B. Trusted Platform Module
not seem to adopt any of these solutions until very recently. A Trusted Platform Module (TPM) [1] is a device, phys-
The main purpose of this paper is the analysis of three ically attached to a server and with a standard interface
identified implementations of virtual TPM (vTPM) for the Xen called TPM-TIS [14], that provides different cryptographic
and QEMU virtualisation solutions. The paper is organised in functionalities in the host, e.g. to ensure the integrity of the
seven sections. Section II presents the technologies related to platform. A TPM includes a Root of Trust for Storage (RTS)
the implementations analysed, Section III describes the vTPM for external secure key storage, non volatile protected storage
solution for Xen, Section IV describes two vTPM solutions (NVRAM), facilities to digitally sign data and the Platform
198 J. Cucurull and S.Guasch

Configuration Registers (PCR) to store measurements of the


system done by the TPM.
A TPM has at least 16 PCR registers, which are initialised
to a known value when the machine is rebooted. The values
of these registers cannot be arbitrarily set. Instead, they are
modified by an operation called extension that performs a hash,
a SHA1 in TPM 1.2 [1], of the previous value of the register
and the piece of data to measure. The signed values of the
PCR registers can be retrieved from the TPM by issuing the
TPM Quote operation.
TPM is based on Public Key Infrastructure (PKI). The TPM
has a special key, the Endorsement Key (EK), that is created by
the TPM manufacturer and that can include a certificate issued
by it. When the TPM is initialised by the user, in the process
of taking the TPM ownership, the Storage Root Key (SRK) is
generated. This key is the root of the hierarchy of keys that
will be subsequently generated and used in the TPM. Finally,
the Attestation Identity Keys (AIK) are used as an alias of the
Figure 1. Structure of vTPM service in Xen
EK for signing information produced by the TPM, e.g. the
PCR register values issued after the TPM Quote operation.
The TPM is mainly used to create a foundation of trust of III. V IRTUAL TPM IN X EN
the software installed in the host where the device is present.
Xen 4.3 implements the service of virtual TPM (vTPM)
This is performed through a process called Static Root of
only for paravirtualised guests.The service is designed as a set
Trust for Measurement (S-RTM) [15]. This process performs
of secure separate stub domains (see Figure 1) managed by the
a chain of measurements, starting when the host platform is
system hypervisor, each of them running a mini-os [18] and
reset, of the components and configuration data involved in the
its dedicated functionality. Each virtual guest has a software
system boot. Each component measures the next component
emulated TPM, based on the TPM Emulator [19], running
before passing the control to it, forming what is called a Chain
in a vTPM stub domain. And there is a vTPM Manager
of Trust (CoT). The CoT, at least, involves the BIOS, the
stub domain that coordinates and links the vTPMs with the
boot loader and the operating system kernel. The resulting
physical TPM (pTPM). The most relevant characteristics of
measurements after a system boot, must be always the same
the virtualised TPM implementation of Xen are:
unless the boot components are modified.
• Non transparent vTPM: A custom kernel module
The combination of the TPM Quote operation and the S-
driver (tpmfront) must be installed in each virtual
RTM process, allows the remote attestation [16] of the host.
guest. The module provides the standard TPM interface
An external attester can request a TPM Quote of the PCRs,
(/dev/tpm) to the applications of the virtual guest, i.e.
and compare the obtained values with a baseline of the PCR
they can use the vTPM as if it was a pTPM. The custom
values of the system generated when it was in a trusted state.
kernel module driver is not integrated in the current Linux
kernels and it is not easy to find. In addition, the driver
C. Virtual TPM is not available for non Linux based operating systems.
• vTPM’s secrets bound to pTPM: The secrets of the
Virtualisation is currently an extended practise, but the TPM vTPM are encrypted with AES-256 and stored in disk.
was not designed for virtualised systems. The security offered The symmetric key is bound to an storage RSA key of
by a TPM is based on the principle of a trusted piece of 2048 bits. The RSA key is generated by the pTPM and
hardware to create the foundation of trust in a given host. The can only be used by it.
implementation of a virtual TPM (vTPM) for a virtualised • Configurable TPM ownership and SRK authentica-
environment, to provide equivalent security than a physical tion: The passwords used to access the pTPM and the
TPM (pTPM), requires a special care with: protection of SRK are configurable. These passwords must be provided
the vTPM secrets, link between the vTPMs and the virtual at the time of loading the vTPM Manager stub domain.
guests, extension of the CoT from the host machine to the • Passthrough of certain Physical TPM registers: The
virtual guests and key management. Several works analyse and administrator of the vTPM stub domain can configure
proposes solutions to the virtualisation of the TPM [2], [17] certain PCR registers of the vTPM to adopt the values of
and to its integration in virtualised systems [3], [4], [5], [6]. the same registers of the pTPM.
Nevertheless, it is not until recently that implementations have • Extension of CoT from the host machine to the virtual
started to come up and be integrated in well-known virtualised guests: If the ”pv-grub” external bootloader is used to
environments (see Sections III and IV). boot the virtual guest, the guest kernel is measured
Virtual TPM for a secure cloud: fallacy or reality? 199

NVRAM area and keys of the vTPM are the same of the
pTPM. Hence, all the measurements performed by the
physical host are reflected to the vTPM.
• Only one virtual guest can be provided with vTPM:
The reason is the one to one mapping between the vTPM
and the pTPM. The registers and the NVRAM of the
pTPM cannot be multiplexed to support multiple vTPMs.
• Migration of vTPM is not supported: The pTPM
registers and NVRAM cannot be extracted from the
TPM and imported into another pTPM. Hence, migration
cannot be supported.

B. Full virtual TPMs


The full virtual TPMs approach, as previously mentioned,
provides a complete vTPM implementation to the virtual
guests that is totally detached from a pTPM. The service is
designed as a software TPM backend implementation linked
with the external library libTPMS. This library provides TPM
emulation. On the guest side there is an emulated TPM TIS
frontend (see Figure 2) and a modified open source BIOS,
based on SeaBIOS [20], to support the vTPM. The most
relevant characteristics of this implementation are:
• Transparent vTPM offered to guest host: The service
Figure 2. Structure of vTPM services in QEMU
of vTPM is based on full TPM emulation. Since the TPM
TIS interface is emulated, no modifications have to be
performed to the guest operating system.
in PCR #4 and the boot command line and initrd are
• vTPM’s secrets stored into QEMU image: The secrets
measured in PCR #5 of the vTPM. Hence, the integrity of
of the vTPM are stored within an image file. The secrets
the guests can be ensured if the “pv-grub” bootloader, the
are not encrypted by default, however QEMU allows the
hypervisor and other components that support the guests
use of encrypted images, e.g. QCOW2 [21] can provide
are trusted.
AES-128 encryption.
• Migration of vTPM not supported: All virtual TPMs
• No pTPM required: Since the vTPMs are fully emulated
are bound to a specific pTPM. Hence, guests with virtual
and not bound to a pTPM, this solution does not require
TPMs cannot be migrated to another physical server.
the presence of a pTPM in the system.
IV. V IRTUAL TPM IN QEMU • Modified BIOS with vTPM and SRTM support: A
QEMU supports virtual TPMs (vTPM) for guests from its set of patches 1 to be applied to SeaBIOS are provided.
version 1.5. Nevertheless, the only officially supported vTPM The patches add vTPM support and implement the Static
is based on TPM passthrough. This means that the TPM Root of Trust for Measurement (SRTM), i.e. the code
offered to the virtual guests is the actual physical TPM (pTPM) that takes care of the first measurements right after the
of the physical host. In addition, there is an implementation machine is powered on.
of the vTPM that is not officially integrated into QEMU that • Migration ready: The migration of the vTPM is not
provides full vTPMs. implemented, but it would not be difficult to integrate
because the vTPM is not strongly linked to a pTPM.
A. TPM passthrough
The TPM passthrough, as previously mentioned, provides V. S ECURITY CONSIDERATIONS
a vTPM to the virtual guests which is a direct mapping with
There are four aspects of the vTPMs in virtualised en-
the pTPM of the physical machine. The service is designed
vironments that define their level of security regarding a
as a backend driver for the pTPM that communicates with an
pTPM: protection of the vTPM secrets, link between the
emulated TPM TIS frontend (see Figure 2). The most relevant
vTPMs and the virtual guests, extension of the CoT from the
characteristics of this implementation are:
host machine to the virtual guests and key hierarchies and
• Transparent vTPM offered to guest host: The virtual
management. This section analyses these four aspects for the
guest sees the vTPM as if it was a pTPM. No special vTPM implementations presented (see also Table I).
kernel drivers are needed.
• Passthrough of all the physical TPM registers: The 1 See e-mail with patches of Stefan Berger “[PATCH V3 0/8] Add TPM
vTPM is a direct mapping of the pTPM. The PCR values, support to SeaBIOS” of April 2011 in SeaBIOS mail list
200 J. Cucurull and S.Guasch

Table I
C OMPARISON OF V TPM S

Xen QEMU TPM Passthrough QEMU Full vTPM


Approach Multiple vTPMs pTPM passthrough Multiple vTPMs
Multiple virtual guests Yes No Yes
Transparent vTPM No Yes Yes
Digital envelope linked to pTPM Image
vTPM secrets pTPM
(AES-CBC 256 bits and RSA 2048 bits) (allows AES-CBC 128 bits)
Link of vTPM and virtual guest Weak Static Strong (state) / Weak (secrets)
Physical to virtual No, but includes external No, but includes external
No
Chain of Trust bootloader that measures kernel BIOS with SRTM
Key hierarchies Independent Keys of pTPM Independent
VM Migration No No Yes
Orientation Production Development and testing Production
Implementated in Xen Project 4.3 and above QEMU 1.5 and above Experimental patches for development

A. Protection of the vTPM secrets In Xen, the vTPM is completely independent of the virtual
guest, including their lifecycles, and they run in different
A TPM has data that must be kept secret and safe from
domains. The link between the vTPM stub domains and
manipulation, e.g. the Endorsement Key (EK) or the data
the virtual guest domains is not robust neither authenticated.
contained in the NVRAM area.
Hence any vTPM domain can be linked to any virtual guest
The vTPM secrets in Xen are bound to the pTPM through
domain. In addition, it is possible to pause a virtual guest
a digital envelope. The data of the envelope is ciphered with
domain and replace its vTPM domain with the one of another
AES-CBC symmetric encryption with a 256 bits key generated
guest, i.e. completely replacing PCR registers and non volatile
using the pTPM TRNG [22]. The symmetric key is protected
data. This allows a corrupt admnistrator, or attacker with
with a public key of the pTPM. Hence the vTPM secrets can
equivalent privileges, in Dom0, to manipulate the vTPM
only be recovered accessing the pTPM. It is announced that
virtual guests association.
in the future there will be the possibility to seal the symmetric
key, i.e. the current protection linked to the PCR values of the In QEMU TPM Passthrough the association between vTPM
pTPM. In that case if the hypervisor or Dom0 critical elements and virtual guest is static, since there is only one possible
are corrupted, due to a change of the PCR values, the vTPM vTPM that is mapped to the pTPM. Despite this increases
secrets will not be available. the security of the vTPM secrets in front of attackers without
privileged rights, the vTPM lifecycle and state are mapped
In QEMU TPM Passthrough the vTPM secrets and registers
to the pTPM. Hence, anyone with access to the pTPM or to
are literally protected by the pTPM. This has the advantage of
the host node can manipulate the measurements shown in the
the hardware-based security offered by the pTPM, but it also
vTPM, e.g. by directly accessing the pTPM, enabling another
means that anybody with access to the pTPM has access to
virtual guest with access to it or rebooting the virtual guest (on
the vTPM secrets.
reboot of the virtual guest the vTPM values are not initialised
In QEMU Full vTPM the secrets are kept in a dedicated
since the lifecycle of the vTPM are linked to the physical
image file without any protection mechanism implemented.
machine).
Nevertheless, it is possible to leverage the security offered
In QEMU Full vTPM, the vTPM is implemented and
by the specific type of image used. Currently only QCOW2
managed by the same instance of the hypervisor that manages
offers privacy, in this case password based encryption with
the virtual guest. Hence the association with the vTPM and
AES-CBC and 128 bits key. Nevertheless, the password is
virtual guest lifecycle is implicit, i.e. there is no possibility to
limited to 16 alphanumeric characters, hence its security level
manipulate the PCR registers. Nevertheless, there is no strong
is limited to 105 bits. No authenticated encryption [23] nor
link between the image file that contains the vTPM secrets
other integrity-preserving mechanisms are used, hence the
and its virtual guest.
secrets could be manipulated. In addition, the system is not
mature enough and it was failing when a QCOW2 encrypted
image was used. C. Chain of Trust extension to the virtual guests
In a virtualised TPM solution, the security offered by the
B. Link between vTPMs and virtual guests
vTPMs depends on the underlying host machine. It is desirable
The link between vTPMs and virtual guests must be pro- to create a Chain of Trust (CoT) in this host and link it to the
tected. Otherwise, a virtual guest could be provided with a dif- individual CoTs created in each virtual guest. The verification
ferent, and probably manipulated, vTPM with measurements of the CoT extension requires access to the measurements of
that may not correspond to the guest. both pTPM and vTPM to evaluate.
Virtual TPM for a secure cloud: fallacy or reality? 201

In Xen, the “pv-grub” guest bootloader allows the extension generator. While the QEMU Full vTPM implementation uses
of the CoT from the host machine to the virtual guests. In a random number generator provided by the OpenSSL library.
detail, the bootloader measures, in the vTPM, the kernel, initrd
VI. D ISCUSSION
and command line used to boot the guest. Additionally, the
bootloader can be measured in one of the registers of the Given the security considerations detailed in Section V,
pTPM and, this register, be selected to be shown as one of the it can be stated that the security currently provided by the
vTPM PCRs. In this case, both CoT of the host machine and existing vTPMs implementations is not equivalent to the
virtual guest would be linked. Nevertheless, the authors of the security of a pTPM. In all the cases, the security of the virtual
solution discourage the direct usage of the pTPM in the host guests depend on the administrators of the machine hosts.
machine. The reason is that if the pTPM drivers and software Nevertheless, the fully virtualised vTPMs of Xen and QEMU
stack are installed in Dom0, the administrators of the system set the bases for a near future usage of this technology.
have easy access to the pTPM and, as a consequence, to the In Xen, if there is a malicious administrator in the physical
key used to encrypt the data of the vTPMs. This prevents the host, the security offered by the vTPM of the virtual guests
usage of the pTPM for measuring and checking the integrity cannot be guaranteed. This is something known by the authors
of Dom0 and extending the CoT. Nevertheless, this will be of this implementation 2 . As they state, the solution is to
solved in the new-coming releases of the solution. create a domain building component measured by the pTPM
In QEMU TPM Passthrough, it is not possible to extend the during boot. This component should have a static library with
CoT of the physical host to the virtual guest since the PCR the critical domains to build. This component should enforce
registers of the pTPM and vTPM are the same, the lifecycle of the creation and destruction of these domains as well as the
the vTPM is linked to the one of the pTPM and the bootloader correct pairing of vTPM domains and guests. We believe that
of the guest image cannot be measured by QEMU. In this an administrator should not be allowed to log into the machine
solution there is no clear border between the security of the without modifying the measurements of the TPM, e.g. the
physical host and the security of the virtual guest. login could add a measurement to the TPM of each user that
In QEMU Full vTPM, the modified BIOS provides support logs into the system. This could be used as a tamper-proof
to link the CoT of both the node machine and the virtual mechanism. Hence the physical machine would become a kind
guests. The modified SeaBIOS implements the S-RTM pro- of sealed box.
cess, which allows to create a CoT within the the virtual In QEMU, the difference with Xen is that there is no
guest. If the BIOS of the virtual guests, the hypervisor and hypervisor that controls the whole virtualised system. In this
other software managing the system is measured in the host case, for a maximum security, a software manager of the
machine, the link between the host machine and virtual guests virtual guests should be installed in the physical host. The
CoT can be created. manager should ensure the image file that contains the vTPM
In all the cases where the CoT extension would be possible, secrets and the modified BIOS were correctly paired to the
the system is vulnerable to malicious administrators replacing correct virtual guest to ensure its integrity. This manager could
the bootloaders during runtime, virtual guest BIOS, or any be measured as part of the physical machine CoT. In this case
other software involved in the virtual guest management. it would also be possible to extend the CoT of the physical
host to the virtual guest, assuming the patched SeaBIOS is in
place and a secure bootloader is installed in the virtual guest.
D. Key hierarchies and management
Since the BIOS code used in QEMU is explicitly provided
All TPMs have at least an EK and, after its ownership is when the guest is started, the tool that manages the guest
taken, a SRK which is the root for its key hierarchy. machines could ensure its integrity. As in Xen, the physical
In the full vTPM implementations in Xen and QEMU the host could generate measurements in the TPM for each user
keys are completely independent of the ones present in the logged, hence it would become as a sealed box in the sense
pTPM. Despite this implies a loosely coupled key hierarchy that nobody can log to perform system changes without being
with a pTPM, in practise will facilitate the migration of the detected.
vTPMs when this becomes ready in the future. In Xen the EK
VII. C ONCLUSIONS
is automatically generated the first time the vTPM is initiated,
while in QEMU the EK has to be explicitly generated by the In this article we have analysed two virtualisation solutions
user issuing a specific command from within the virtual guest. with three currently available virtual TPM approaches. The
In the QEMU TPM Passthrough implementation, the keys used purpose of this analysis was to determine if there where
in the vTPM are the same used in the pTPM. available virtualised TPM solutions and the level of security
Additional options exist, when the key hierarchy of a vTPM offered by them.
is generated [2], in order to provide keys that may become After the presented analysis we found two implementations
certified by a certificate authority. Nevertheless, the current that offer complete TPM virtualisation for Xen and QEMU.
vTPM implementations still do not offer them. The implementation in Xen still has not reached a level of
Regarding the key generation, in Xen and QEMU TPM 2 See “Questions about the usage of the vTPM implemented in Xen 4.3” in
Passthrough the pTPM TRNG is used as random number February 2014 in the xen-devel mailing list.
202 J. Cucurull and S.Guasch

security comparable to a non virtualised solution, but their [15] TCG, “PC Client Work Group Specific Implementation Specification for
developers are pushing hard for it. In addition, the solution is Conventional Bios Specification, Version 1.2,” February 2012.
[16] G. Coker, J. Guttman, P. Loscocco, A. Herzog, J. Millen, B. O’Hanlon,
integrated within the Xen official releases. The implementation J. Ramsdell, A. Segall, J. Sheehy, and B. Sniffen, “Principles of remote
in QEMU offers less security than the one in Xen, e.g. to store attestation,” International Journal of Information Security, vol. 10, no. 2,
the secrets of the vTPM, and its integration with QEMU is pp. 63–81, 2011.
[17] F. Stumpf and C. Eckert, “Enhancing trusted platform modules with
not officially supported due to restrictions of the project for hardware-based virtualization techniques,” in Emerging Security In-
including code that has dependencies with external libraries formation, Systems and Technologies, 2008. SECURWARE’08. Second
(in this case because of the libTPMS). International Conference on. IEEE, 2008, pp. 1–9.
[18] S. Popuri, “A tour of the mini-os kernel,” http://www.cs.uic.edu/
Given the development activity seen, it is expected the ∼spopuri/minios.html.
improvement of the security and availability of the virtualised [19] M. Strasser and H. Stamer, “A software-based trusted platform module
TPM solutions soon. In addition, the virtualised systems will emulator,” in Trusted Computing - Challenges and Applications, ser.
Lecture Notes in Computer Science, P. Lipp, A.-R. Sadeghi, and K.-M.
integrate other technologies that enhance the trust with their Koch, Eds. Springer Berlin Heidelberg, 2008, vol. 4968, pp. 33–47.
hypervisor, e.g. the support of the IntelTXT technology [24] [20] “SeaBIOS,” http://www.seabios.org/SeaBIOS.
that simplifies the foundation of trust for the hypervisors in [21] M. McLoughlin, “The QCOW2 image format,” September 2008, https:
//people.gnome.org/∼markmc/qcow-image-format.html.
virtualised systems in conjunction with the TPM. [22] A. Suciu and T. Carean, “Benchmarking the true random number
generator of TPM chips,” CoRR, vol. abs/1008.2223, 2010.
ACKNOWLEDGEMENTS [23] M. Bellare and C. Namprempre, “Authenticated encryption: Relations
among notions and analysis of the generic composition paradigm,” in
We want to thank the developers of the Xen and QEMU Advances in Cryptology - ASIACRYPT 2000, ser. Lecture Notes in
vTPM solutions for the information given through the different Computer Science, T. Okamoto, Ed. Springer Berlin Heidelberg, 2000,
development forums. This work has been co-funded by the vol. 1976, pp. 531–545.
[24] Intel Corporation, “Intel TXT software development guide,” 2014, http:
project Trusted Cloud IPT-2011-1166-430000 of the Ministry //download.intel.com/technology/security/downloads/315168.pdf.
of Economy and Competitiveness (MINECO) and the Euro-
pean Fund for Regional Development (FEDER)”.
R EFERENCES
[1] TCG, “TPM Main Specification Level 2 Version 1.2,” March 2011.
[2] S. Berger, R. Cáceres, K. A. Goldman, R. Perez, R. Sailer, and
L. van Doorn, “vTPM: Virtualizing the Trusted Platform Module,” in
Proceedings of the 15th Conference on USENIX Security Symposium
- Volume 15, ser. USENIX-SS’06. Berkeley, CA, USA: USENIX
Association, 2006.
[3] S. Berger, R. Cáceres, D. Pendarakis, R. Sailer, E. Valdez, R. Perez,
W. Schildhauer, and D. Srinivasan, “TVDc: Managing security in the
trusted virtual datacenter,” SIGOPS Oper. Syst. Rev., vol. 42, no. 1, pp.
40–47, Jan. 2008.
[4] B. Danev, R. J. Masti, G. O. Karame, and S. Capkun, “Enabling secure
VM-vTPM migration in private clouds,” in Proceedings of the 27th
Annual Computer Security Applications Conference, ser. ACSAC ’11.
New York, NY, USA: ACM, 2011, pp. 187–196.
[5] D. Liu, J. Lee, J. Jang, S. Nepal, and J. Zic, “A cloud architecture
of virtual trusted platform modules,” in Embedded and Ubiquitous
Computing (EUC), 2010 IEEE/IFIP 8th International Conference on,
Dec 2010, pp. 804–811.
[6] D. Wallom, M. Turilli, G. Taylor, N. Hargreaves, A. Martin, A. Raun,
and A. McMoran, “myTrustedCloud: Trusted cloud infrastructure for
security-critical computation and data managment,” in Cloud Computing
Technology and Science (CloudCom), 2011 IEEE Third International
Conference on. IEEE, 2011, pp. 247–254.
[7] K. Adams and O. Agesen, “A comparison of software and hardware
techniques for x86 virtualization,” SIGARCH Comput. Archit. News,
vol. 34, no. 5, pp. 2–13, Oct. 2006.
[8] A. Whitaker, M. Shaw, and S. D. Gribble, “Denali: Lightweight virtual
machines for distributed and networked applications,” in In Proceedings
of the USENIX Annual Technical Conference, 2002.
[9] P. Barham, B. Dragovic, K. Fraser, S. Hand, T. Harris, A. Ho, R. Neuge-
bauer, I. Pratt, and A. Warfield, “Xen and the art of virtualization,” ACM
SIGOPS Operating Systems Review, vol. 37, no. 5, pp. 164–177, 2003.
[10] “Xen Project,” http://www.xenproject.org.
[11] F. Bellard, “QEMU, a fast and portable dynamic translator,” in USENIX
Annual Technical Conference, FREENIX Track, 2005, pp. 41–46.
[12] “QEMU,” http://wiki.qemu.org.
[13] S. Thibault, “Stub domains: A step towards dom0 disaggrega-
tion,” Xen Summit, 2008, http://blog.xen.org/index.php/2008/08/28/
xen-33-feature-stub-domains/.
[14] TCG, “PC Client Work Group PC Client Specific TPM Interface
Specification (TIS), Version 1.3,” March 2013.
RECSI 2014, Alicante, 2-5 septiembre 2014

Information System for Supporting Location-based


Routing Protocols
Gerard Garcia, Sergi Robles, Adrià Sánchez, Carlos Borrego
Departamento de Ingenierı́a de la Información y de las Comunicaciones
Universidad Autónoma de Barcelona
Email: {ggarcia, sergi.robles, adria.sanchez, cborrego}@deic.uab.cat

Abstract—This article presents an information system for messages by forwarding them to the nodes nearer to the
location-based routing protocols that does not compromise the destination location of the given message. Or it would also
privacy of the involved nodes. This information system provides allow a routing protocol to forward the messages by paths
a representational model of the most frequented locations of
a node, this most frequented zone is called its habitat, and a that try to avoid specific zones by sending the messages to
protocol to compare these habitats among nodes given a target the nodes farther of these zones.
location of interest. Then, the protocol can determine which of To implement the protocol would seem logical to think
the neighbors of a node is nearer or farther from this target that the coordinates of the target location could be directly
location and provides this information to the underlying routing
compared to the habitats of the nodes. But the privacy of
protocol. As it is designed for DTNs, the protocol does not require
a trusted third party, instead, it implements a secure multi-party the involved nodes must be taken into account, since this
computation based on homomorphic encryption. The protocol is nodes could identify physical persons and revealing its location
demonstrated to be secure against passive and active adversaries. could be a threat and an invasion of their privacy. Therefore,
the habitats comparisons are treated as a secure multi-party
Index Terms—Secure multi-party computation, Delay and
computation [13].
Disruption Tolerant Network, DTN routing protocol.
There are several solutions for performing a secure multi-
I. I NTRODUCTION party computation. The ones originally proposed by [9] and
[15], and extended by many others, make use of a combinato-
The Delay and Disruption Tolerant Network (DTN) [7] rial circuit for representing the required computation. Parties
architecture emerged from the research for developing an execute then a short protocol for every gate of the circuit. The
interplanetary network. This research was focused in solving advantage of these approaches is that they are general methods,
the technical difficulties found in out of space networking, p.e. but the problem is that the protocol depends on the size of the
frequent disconnections or slow network links. But as these circuit. Therefore, for complex computations these protocols
characteristics could also be found in some scenarios on the can be inefficient. Other approaches, like the ones proposed by
Earth, the DTN term was coined in order to include them. [17] or [2], design specific protocols based on, for example,
One of the most important challenges that DTNs have homomorphic encryption or 1-out-of-N oblivious transfers, to
to face because of its characteristics is how to perform the solve specific problems. These solutions are more efficient,
routing of messages [16]. The differences between DTNs but are limited to the solving of these specific problems.
and traditional networks, such as the lack of an end-to-end The proposal in this paper uses a specific secure multi-party
circuit between the source and the destination or the fact computation based on homomorphic encryption for efficiency
that nodes can not have a global knowledge of the network reasons.
due to their disconnected nature, make the routing protocols
used in traditional networks ineffective. To overcome this,
II. H ABITAT
some routing protocols for DTNs generate metrics that model
the behavior of the nodes in the network. Then, with the This section first describes what is and how is represented
information provided by the model, the routing protocol can an habitat. Then, it shows how the habitats of two nodes con
make substantiated decisions on how to forward the messages be compared given a target location. And finally, shows how
in order to try to maximize the delivery rate. is calculated the distance between two points.
This paper presents an information system support for
location-based routing protocols. This information system is
A. Description
composed of a representation model of the most frequented
locations of a node and a protocol for determining, given n The habitat of a node represents its most frequented loca-
nodes, which of their habitats is nearer or farther of a target tions and it is represented by a dynamically created ellipse
location. from the historic of movement of the node. How is the ellipse
This information support would allow a location-based created is not contemplated in this article. An ellipse can be
routing protocol the maximization of the delivery rate of the defined as
204 G. Garcia, A. Sanchez, S. Robles

Definition 1. The set of points such that the sum of the C. Manhattan Geometry
distances to two fixed points, the foci, is constant. This distance To simplify the previous calculations it is used the def-
defines the radius of the ellipse. inition of distance that Manhattan Geometry [5] provides.
Hence, an habitat is defined with two foci points F 1 : In Manhattan Geometry the function distance of two points
(f 1x , f 1y ) and F 2 : (f 2x , f 2y ) and a radius r. is defined as the sum of the absolute differences of their
Cartesian coordinates. Formally
B. Comparison n
X
When comparing the habitats of two nodes, three different d(p, q) = |pi − qi | (4)
situation may be found: i=1

1) The target location is outside the two habitats. In this case where p and q are two points. This way it is simpler to calcu-
the one nearer to the target is preferred. late the distance while still can be compared, as it maintains
2) The target location is inside the two habitats. In this case the proportions. This simplification will be of interest when
the node with the smallest habitat is preferred, as it is calculating the distance in the secure multi-party computation
more probable that the node pass through this location as the operations that can be performed will be limited by the
earlier. use of homomorphic encryption,
3) The target location is inside one of the habitats but outside
III. C RYPTOGRAPHIC PROTOCOL FOR HABITAT
the other. In this case the preferred node is the one with
COMPARISONS
the target location inside its habitat.
In this section first will be described how the problems for
To solve each one of the previous situations, it is necessary
comparing two habitats, described in section II, are solved
to solve the following three problems:
such that the privacy of the involved nodes remains unaffected.
1) How to calculate the distance from an habitat to a target Then, it will be showed how the protocol works for determin-
location. ing, given n nodes, which one, or ones, are nearer or farther
2) Given two habitats, how to determine which one is to the target location. The protocol will implement a secure
smaller. multi-party computation based on homomorphic encryption to
3) How to determine if the target location is inside an perform the calculations needed to compare the habitats of the
habitat. nodes.
1) Distance from a target location to an habitat: It is neces-
sary to calculate the distance from the target location defined A. Homomorphic encryption
by a point P : (x, y) to an habitat H, determined by the An encryption scheme is considered homomorphic if given
ellipse with foci points F 1 : (f 1x , f 1y ) and F 2 : (f 2x , f 2y ) the set of plain-texts M, the set of the cypher-texts C and the
and radius r. encryption function E, it satisfies
First, it is defined the point X : (a, b) as the nearest point
∀m1 , m2 ∈ M, E(m1 M m2 )) ← E(m1 ) C E(m2 ) (5)
of the habitat H to the point P , so it would need to comply
the next equation for some operators M in M and C in C [8]. If the
encryption scheme only satisfies this property for one oper-
ation, e.g. multiplication or addition, it is considered partially
|a − f 1x | + |b − f 1y | + |a − f 2x | + |b − f 2y | = r (1)
homomorphic.
Then, it is defined the function distance as follows For this protocol are used the homomorphic properties
of the cryptosystem proposed by P. Paillier in [11], known
d(X, P ) = |a − x| + |y − b| (2) as the Paillier cryptosystem. This cryptosystem is additively
homomorphic, computationally efficient and it allows the mul-
and it is minimized while restricted by equation 1, for tiplication of cyphered-texts by unencrypted constants without
example with the method of Lagrange multipliers, to get the the need of decrypting the operands. Therefore, the set of
point X. Finally, to obtain the distance is applied the function operations cryptographically protected that can be performed
distance 2 with the point X and P . are: sum, subtraction and multiplication of an encrypted value
2) Which habitat is smaller: To know which habitat is by a non-encrypted constant.
smaller, are compared the radius of the two habitats. Given
two habitats H1 and H2 , with radius r1 and r2 respectively, B. Secure comparison
the one with the smallest radius is the smallest habitat The use of homomorphic encryption limits the operations
r1 < r2 =⇒ H1 that can be performed over the encrypted operands, therefore,
(3) the previous comparison process needs to be adapted to
r2 < r1 =⇒ H2
overcome these limitations.
3) Point inside an habitat: This problem can be resolved The problem appears when the distance from an habitat
as the first one. If the distance obtained is negative or 0, then to a target location is calculated. To calculate the distance it
the point is inside the habitat. is necessary to first find the nearest point of the habitat to
Information System for Supporting Location-based Routing Protocols 205

the target location and then use the found point to calculate
the distance, as described in II-B1. But if the operands are
encrypted under homomorphic encryption it is not possible to
calculate their absolute value, therefore this operation needs
to be disposed.
To do so, it is determined where is the target location
situated in relation of the habitat to make sure that all the
subtractions encode an absolute value.
If the space is divided into 9 regions, it can be de-
termined in which region is the target location calculat-
ing the maximum and minimum values of the foci points
(F xmin , F xmax , F ymin , F ymax ) and comparing them with
the coordinates of P. Once it is known in which region is
situated the target location, the equations 1 and 2 can be
redefined without the need of calculating absolute values and
then minimized for each of the cases.
Note that the corner regions define b in terms of a. This is
the line where X is located, but not any point of this line is
the nearest to P . To know exactly where is the nearest point
each one of these regions is divided in two subregions. To do
so is calculated the left end LE and the right end RE of the
habitat and then compared with the target location. These two
ends are calculated with the following equations

Figure 1. State diagram of the proposed protocol


LE = F xmax + F xmin + F ymax − F ymin − r
(6)
RE = F xmax + F xmin − F ymax + F ymin + r
1) Phase one: Node A compare its habitat with the habitat
If the point is located between LE and RE, X and P share of another node following the exchange of messages described
the x coordinate, so a = x, otherwise, b = F ymax in the two in figure 2. A is the node that coordinates the protocol and B
superior corners and b = F ymin in the other two. any other neighbor.
C. Protocol
To describe the protocol it is imagined an scenario where
A has multiple neighbors but only A can see all of them.
Given that this situation can be quite common, the proto-
col has been designed such that A will coordinate all the
messages. Therefore, the protocol is based in letting A have
the information that other nodes need to compare between
them so A can distribute it between the other nodes as it
requires. Obviously, as the privacy needs to be preserved,
this information is encrypted and only accessible by the node
referred.
The protocol is divided in two phases, which are represented
in figure 1. After the first phase, A has compared its own
habitat to the habitats of its neighbors. And during the second
phase the surviving nodes (the nodes that still satisfy the req-
uisites of A) are compared among them, under the commands
of A, until A decides that it has enough information for its
purposes.
The neighbor discovery is conducted with the transmission
and detection of periodically transmitted beacons. When a Figure 2. Phase one: Exchange of messages to compare a given habitat and
node detects a beacon, if it has messages to forward, it sends a a target location known by A with the habitat of other nodes
beacon asking all the receiving nodes to announce its presence
so it can detect all the neighbor nodes at once. After a time 1 Node B sends the limits of its habitat together with its
t1 has elapsed, the protocol continues. presence beacon.
206 G. Garcia, A. Sanchez, S. Robles

• Node A subtracts to the limits the coordinates of the


target location so node B can determine in which region
is situated the target location respect its habitat. Note
that all the results are obfuscated, by multiplying them
by k, so node B can only know the situation of the
target location respect its habitat and not the exact
position of it.
2 Node A transmits the subtracted limits together with the
target location P : (x, y), its distance dA (which node A
has calculated without any restriction, as he knows the
target location an its habitat), and its radius rA .
• Node B calculates EA (dB ) with the supplied target
locations, then, it creates the tuple described in the
figure. This is done this way to do not let node A
know if the distances are equal (or 0) as it will not
Figure 3. Phase two: Exchange of messages to compare the habitat of B
distinguish between the comparison of the distance and with the habitat of other nodes
the comparison of the radius.
3 Node B transmits the results to node A, and as node A
needs to have the required information so other nodes can it can perform a Quicksort ordering. This decision is beyond
compare among them, node B includes with the result its the scope of this article.
own habitat (F 1, F 2 and r), encrypted with its own key. To perform this comparisons node A starts the exchange
of messages shown in figure 3. Being node B the node to be
• To interpret the result node A checks the sign of the
compared an O the others nodes to compare with B:
two values of the tuple, if the values are 0 or positive,
node B is considered to be nearer than A to the target 4 Node A sends to the other nodes the information that they
location. need to compare themselves with node B: the distances of
• With the habitat and knowing in which region is the node B to the destination target location dB (13 of them,
target location, node A can calculate the distance of one for each region and subregion), the target location
that node to it, although it is encrypted and unaccessi- P : (x, y) and the radius rB of the habitat of node B. All
ble for itself. But as node A does not know the region this values are encrypted with the key of B.
where is the target location situated, it calculates the • This is the same information that they received from
distance for each of the regions, so it ends having 13 node A in the first step of the protocol, with the
different distances, one for each region and subregion. difference that it is encrypted by node B and that they
Once the protocol finishes, node A knows if node B is nearer do not know which one is the correct distance, so they
or farther to the target location than itself, but it has not learned need to compare for each one.
anything about the habitat of node A. And on the other hand, With this information they calculate their distance to
node B has not learned the target location, only the situation the target location again, but encrypted for node B, and
of its habitat respect to this target location and has been able to they subtract it to each of the dB provided.
compare its habitat with the habitat of node A without learning 5 The next step requires opening the result of the compar-
it. ison. Only node B can open the results, therefore, there
If no nodes satisfy the requisites of node A, or only one are two options:
node satisfies them, the protocol ends. Otherwise, the protocol • If they can see each other, they send the result directly
continues with phase two. to node B,
2) Phase two: Phase two starts with node A knowing which • If they can not see each other, they send it to node A
of its nodes satisfy its requisites, and having the distance of so node A can forward it to node B.
the habitat to the destination target location of these nodes, Once node B has the result, it opens the correct one.
although the distance is encrypted and node A does not know 6 Finally, node B transmits the interpreted results to node
which of the 13 distances is the correct one. A.
At this point, node A has to determine which comparisons This comparisons can be done in both ways, therefore, if
need to be done to reach a decision. As a method to compare node A does not completely trust node B it can ask node B to
the habitat of any two nodes is provided, any filtering or compare itself with the other nodes and only accept the results
sorting algorithm can be used. For example, if node A only that match.
wants to know which node is the nearest to the target location,
A could just make all nodes compare randomly while discards D. Performance
the ones that lose a comparison until only one node is left. The information transfered by the protocol can be calculated
Or if A wants to sort all its neighbors from nearer to farther, with the following formula, b is the size of each value, m is the
Information System for Supporting Location-based Routing Protocols 207

number of messages ready to be forwared by a given node and The adversaries covered in this analysis are classified in
c is the number of comparisons performed in the phase two passive and active adversaries. Passive adversaries, also called,
(which number will depend of the chosen sorting algorithm): semi-honest, only gather information and do not modify the
behavior of the parties. On the other hand active adversaries,
12 ∗ b + 11 ∗ b ∗ m + (17 ∗ b ∗ m + 2 ∗ b) ∗ c also called “Byzantine”, modify the outputs of the function so
they can corrupt other parties to get more information.
The size of each value will depend on the key used to encrypt
To simplify the study of the security of the proposed
them, being them twice the size of the key.
protocol, it will be divided in two subtask. The subtask of
It is safe to assume that most DTNs have a window time
comparing the habitats of two nodes when one of them knows
of at least a few seconds, for example [4] and [12], and a
the target location, and the subtask of comparing a given
bandwidth in the order of, at least, the hundreds of kilobytes
habitat and a target location to n other nodes. The first subtask
per second, thus, the overhead of the protocol would not
corresponds to the first phase of the protocol, and the second
impact on the performance of the network.
Regarding computation performance, it will depend on the subtask to the second phase. These phases are described in
hardware of the nodes, but as the operations to encrypt and section III. Also, it will be distinguished between the security
decrypt of the Paillier cryptosystem have low complexity, it is of the nodes (the privacy of their habitats) and the security of
feasible to implement the protocol in any moderately powerful the target location (as it can be the location of a node).
hardware. The analysis will be performed as follows. For each subtask
Finally, note that this information system is designed to and adversary, it will be described the output of performing
complement other routing protocols, therefore it should be the subtask in the ideal process and then it will be compared
used when its use is expected to improve the delivery ratio with the output of performing the same subtask in the real
of the messages. protocol.

IV. S ECURITY D ISCUSSION A. One-to-one habitat comparison subtask


The global security of the proposed protocol is not deter- In the step one of the protocol it is performed a comparison
mined by the individual behavior of the nodes, therefore, the between the habitats of two nodes, one of them knowing
security rests in three main points: the Paillier cryptosystem, the target destination. Then, the task of this subtask is the
the key management and the control of the information indi- determination, between these two habitats, of which one is
rectly disclosed. The security of the first two points can be better suited to forward a message to this destination. The
quickly determined: The Paillier cryptosystem is proved to be nodes will be called A and B, being A the one with the
robust and secure [11] and the security of the key management message to forward.
is responsibility of the node as the keys are never transmitted To perform the ideal process of this task, A would send
during the protocol. More interesting is the analysis of the its habitat and the target location P to the trusted third party
information disclosed. using a secure channel and B its own habitat with another
To analyze the information disclosed by the execution of the secure channel. The output that the trusted third party would
protocol, the framework defined in [6] for the analysis of the transmit would be the communication to the A of which of the
security of multi-party computations will be used as starting habitats is considered better. Therefore, A would not learn any
point. This framework describes different adversary models additional information about the habitat of B and B would not
and gives a generalization of the concept of ideal process, learn anything about the habitat of A nor the target location.
already proposed by other authors in [10] and [3]. Now, will be show how this subtask behaves against passive
In this framework a protocol is considered to securely and security adversaries.
perform a given task if executing the real protocol amounts 1) Passive adversaries: The execution of the ideal process
to “emulating” the ideal process for that task. In the ideal in presence of passive adversaries would not lead to any oppor-
process there is an incorruptible trusted party who receives the tunity for them to gather additional information. Otherwise, the
inputs of all the parties, locally computes the desired outputs real protocol reveals to B the region where the target location
and transmits them to the required parties. To define what P is located regarding its habitat.
is “emulating”, first is necessary to formalize the output of The revelation of the region is the only difference between
performing a given task. the ideal process and the real protocol, but if it points to a node
The output is formalized as the information that the task this is not a threat to its privacy as its location can be hidden
explicitly outputs in addition of what can be inferred. In other by breaking the relation between the target location and the
words, the information the task outputs once it has successfully node, p.e. with the technique used in [14]. Therefore it can be
finished and the information that can be deduced from the stated that this part of the protocol does not compromise the
process of performing the task. security of the forwarding nodes nor the nodes to which the
Now, emulating a task is performing it in such a way that its target location can refer in presence of passive adversaries.
output is exactly the same as the ideal task. Thus, all parties 2) Active adversaries: In the ideal process, the active
will learn identical information from both the real protocol adversaries can only modify the inputs sent to the trusted third
and the ideal process. party, on the other hand, in the real protocol, both A and B
208 G. Garcia, A. Sanchez, S. Robles

can modify the values in the intermediate steps of the protocol cryptosystem. Then, since no trusted third parties are needed,
to try to corrupt the other node. this protocol is suitable for DTNs.
If the modified values were the values operated with the These calculations can be considered a specific case of a
encrypted data, the consequences would be the same than secure multi-party computation. Hence, the security of the
modifying the original inputs. Thus, this modifications would protocol has been analyzed from this point of view. This
not affect the security of the protocol as it has been defined analysis has concluded that the protocol is secure against
because this attacks could be also performed in the ideal passive and active adversaries, including collusion attacks.
process. In addition, no other alterations can be done that As future work, it would be interesting to implement the
would give any advantage to the adversary as all the values are proposed information system, e.g. in the aDTN platform
encrypted and any modification to these values would produce currently developed by the SeNDA research group [1]. This
random uncontrolled outputs when decrypted. platform allows the exchange of messages following the store-
Hence, it is possible to state that this part of the protocol is carry-process-and-forward paradigm proposed in [4] which
also secure against active adversaries as it does not compro- allows the messages to provide their own routing code. Then,
mise the security of the nodes not of the target location. it would be of interest to develop several routing algorithms
that make use of this information system and compare the
B. One-to-N habitat comparison subtask performance of these routing algorithms to other routing
protocols.
The other subtask is the comparison of a given habitat
among other n nodes. The task is determining which one or ACKNOWLEDGMENT
which ones, depending the sorting or filtering process used, This work was partly supported by grant TIN2010-15764
fulfill the requirements of the initiator of the protocol. It starts from the Ministerio de Ciencia e Innovación of Spain and by
at the last step of the first phase of the protocol, when the node grant 2014SGR-691 from Generalitat de Catalunya.
gives, together with the result of the comparison, its encrypted
habitat. This subtask performs the part of the protocol used in R EFERENCES
the previous subtask but with different parties, then, only the [1] Adtn implementation. https://senda.uab.cat/wiki/aDTN.
[2] Mikhail J Atallah and Wenliang Du. Secure multi-party computational
differences from the previous subtask need to be discussed. geometry. In Algorithms and Data Structures, pages 165–179. Springer,
To perform this subtask in the ideal model, all the nodes 2001.
would send its habitat to the trusted third party, and the node [3] Donald Beaver. Foundations of secure interactive computing. In
Advances in Cryptology—CRYPTO’91, pages 377–391. Springer, 1992.
A, in addition, would send the target location P . Now, the [4] Carlos Borrego, Sergio Castillo, and Sergi Robles. Striving for sensing:
trusted third party would perform the required calculations Taming your mobile code to share a robot sensor network. Information
and would send the results of these comparisons to the node Sciences, 2014. In press.
[5] Donald R Byrkit. Taxicab geometry—a non-euclidean geometry of
A. lattice points. The Mathematics Teacher, pages 418–422, 1971.
The main difference from the previous subtask is that node [6] Ran Canetti. Security and composition of multiparty cryptographic
A is allowed to have the information regarding the habitat of protocols. Journal of Cryptology, 13(1):143–202, 2000.
[7] Kevin Fall and Stephen Farrell. Dtn: an architectural retrospective.
another node, but it is not able to access to it as it is encrypted. Selected Areas in Communications, IEEE Journal on, 26(5):828–836,
Then, once node A has calculated the distance of the target 2008.
node using its habitat information, the protocol behaves in [8] Caroline Fontaine and Fabien Galand. A survey of homomorphic en-
cryption for nonspecialists. EURASIP Journal on Information Security,
the same way than in the first subtask and no additional 2007, 2007.
information is disclosed. [9] Oded Goldreich, Silvio Micali, and Avi Wigderson. How to play any
Therefore, as if node A has the information of another node mental game. In Proceedings of the nineteenth annual ACM symposium
on Theory of computing, pages 218–229. ACM, 1987.
does not affect the security of the protocol it is possible to [10] Silvio Micali and Phillip Rogaway. Secure computation. In Advances
assume that this subtask is also secure against passive and in Cryptology—CRYPTO’91, pages 392–404. Springer, 1992.
active adversaries. Thus, the whole protocol is considered [11] Pascal Paillier. Public-key cryptosystems based on composite degree
residuosity classes. In Advances in cryptology—EUROCRYPT’99, pages
secure against active and passive adversaries. 223–238. Springer, 1999.
[12] Nagasai Panchakarla, Jörg Ott, and Gesner Junior. Delay-tolerant
V. C ONCLUSION adaptive real-time communication: a case study for voice. Proceedings
of ExtremeCom’12, 2012.
In this article we have proposed a support information [13] Manoj Prabhakaran and Amit Sahai. Secure Multi-Party Computation,
volume 10. IOS Press, 2013.
system for location-based routing protocols that does not [14] Xiaoxin Wu and Bharat Bhargava. Ao2p: ad hoc on-demand position-
compromise the privacy of the involved nodes. This system based private routing protocol. Mobile Computing, IEEE Transactions
allows the nodes to use geographical information to make on, 4(4):335–348, 2005.
[15] Andrew Chi-Chih Yao. Protocols for secure computations. In FOCS,
routing decisions. With the proposed system, it is possible to volume 82, pages 160–164, 1982.
forward the messages in such a way that they take a specific [16] Zhensheng Zhang. Routing in intermittently connected mobile ad
path. For example, the messages can be sent as directly as hoc networks and delay tolerant networks: overview and challenges.
Communications Surveys & Tutorials, IEEE, 8(1):24–37, 2006.
possible to their destination, avoiding specific areas. . . [17] Ge Zhong, Ian Goldberg, and Urs Hengartner. Louis, lester and pierre:
All the required calculations are securely performed on the Three protocols for location privacy. In Privacy Enhancing Technologies,
involved nodes while protected by the homomorphic Paillier pages 62–76. Springer, 2007.
RECSI 2014, Alicante, 2-5 septiembre 2014

SoN eU CONADM : the administrative model for


SoN eU CONABC usage control model
Lorena González-Manzano Ana I. González-Tablas José M. de Fuentes Arturo Ribagorda
Univ. Carlos III de Madrid Univ. Carlos III de Madrid Univ. Carlos III de Madrid Univ. Carlos III de Madrid
lgmanzan@inf.uc3m.es aigonzal@inf.uc3m.es jfuentes@inf.uc3m.es arturo@inf.uc3m.es

Abstract—The popularity of Web Based Social Networks consist of operations performed with objects, e.g read right,
(WBSNs) encourages their enhancement. Many WBSN data is and administrative rights correspond to operations performed
considered personal data and access control management plays over the right of objects, e.g. the right to give read right.
a key role in this regard. The point is not only to manage
access control but to determine how administration should be The management of both types of rights is essential and
performed. Based on SoN eU CONABC , an expressive usage delegation and revocation are remarkable operations in this
control model that allows fine-grained access control manage- regard. Delegation focuses on granting a right to a user, while
ment, this paper presents SoN eU CONADM , the complementary revocation undoes the effects of delegation. In particular, weak
administrative model. Based on a pair of related and popular and strong revocation are differentiated. The former refers to
administrative models, the evaluation proves the completeness of
SoN eU CONADM . simply remove granted permissions and the latter refers to
Index Terms—Administrative access control model, Web Based recursively revoke permissions from those to whom the grantee
Social Network, revocation, delegation. granted the permissions. Based on these rights and operations,
the following administrative tasks are added to the previous
I. I NTRODUCTION ones:
In Web Based Social Networks (WBSNs) users upload • Who is the entity in charge of managing revocation.
huge quantity of data, some of them personal data, which are • Who is the entity in charge of managing delegation.
in many cases let out of control. Controlling and carefully • How weak and strong revocation is managed based on
managing all WBSNs data is a demanding and challenging use rights and administrative rights.
necessity. At a primary step, SoN eU CONABC , an expressive • How delegation is managed based on use rights and
usage control model that allows fine-grained access control administrative rights.
management along the whole usage process is proposed in In the social networking field administration focuses on
[1]. However, access control models have to describe the way managing uploaded resources like photos or videos, speci-
administration is performed and then, the identification and fied identity data (namely personal profiles) and established
specification of administrative tasks for SoN eU CONABC is access control policies. Thus, WBSN administrative tasks are
the following step. equivalent to the ones above mentioned but considering that
Coming back to the 90’s, given the maturity of the Role
resources, identity data and policies are the elements at stake.
Based Access Control Model (RBAC) proposed by R. Shadu
As a result, this paper presents SoN eU CONADM , an ad-
et al. [2], its attached administrative model can be used as a
ministrative model for SoN eU CONABC . SoN eU CONADM
precedent in the identification of administrative tasks [3]. In
addresses all aforementioned tasks to promote a wider use of
a nutshell, in RBAC, administrative permissions (analogous
SoN eU CONABC .
to rights) are exclusively applied to administrative roles and
This paper is structured as follows. Related work is de-
other permissions are applied to any other kind of roles. Then,
scribed in Section II. Section III presents the background.
administrative tasks base on the assignment of users to roles;
Section IV introduces administrative features, particularly,
the assignment of permissions to roles; and the assignment
tasks and rights. In Section V SoN eU CONADM is described.
of roles to roles. The initial set of administrative tasks are
The evaluation of the model is described in Section VI. Lastly,
summarized as follows:
conclusions and future work is outlined in Section VII.
• Who is the entity in charge of creating, updating and
deleting access control preferences. II. R ELATED WORK
• Who is the entity in charge of associating preferences This Section presents the analysis of 21 proposals in the
with data. literature that address administrative issues in collaborative
• How preferences are associated with data and data with environments. Note that this study is not exclusively focused
data owners. on WBSNs, but extended to collaborative environments due
Furthermore, administrative issues also involve adminis- to a pair of reasons. On the one hand, WBSNs manage data
trative rights management. Two types of rights are distin- which may be related to multiple users and then, they can
guished, namely, use and administrative rights. Use rights be pointed out as collaborative systems. On the other hand, a
210 L. González-Manzano, A. I. González-Tablas, J. M. de Fuentes, A. Ribagorda

TABLE I A different solution are proposed by M.R. Thompson et al.


A DMINISTRATIVE FEATURES ANALYSIS [5] and A. Ahmad et al [8]. M.R. Thompson et al’s work
Proposals Administration Delegation Revocation bases on certificates jointly signed by all users involved in
[25] B. Carminati et al. (2011) D
[6] A.C. Squicciarini et al. (2009) D


the administrative process. However, A. Ahmad et al propose
[24] H. Zhang et al. (2012) C √ √ transfer, multiplication and division operations [8].
[5] M.R. Thompson et al. (2003) D √
[7] A.C. Squicciarini et al. (2010) D √ √∗ Delegation, associated with decentralized administration,
[8] A. Ahmad et al. (2012) D
[9] Y. Jung et al. (2013) D
√ is addressed in a total of 9 approaches. In collaborative
[10] Y. Ren et al. (2011) D √ environments several users have to cooperate to achieve a
[11] M. Prilla et al. (2006) D √
[12] A. Imine et al. (2009) D √ √ common goal. Then, delegating permissions breaks the power
[13] M. Lorch et al. (2003) D
[14] H.F. Wedde et al. (2003) D of a central administrative user by sharing administrative tasks
√ √
[15] R. S. Shandu et al. (2010) D √ √ among different parties. The most of approaches focus on
[16] R. S. Shandu et al. (2011) D
[17] W.K. Edwards (1996) C √ √ permissions delegation [15], [16], [18], [13], [5], [24], [8],
[18] K. Sikkel et al. (1997) D
[19] Z.Y. Zhang et al. (2011) D
√ √ being the proposals of Z.Y. Zhang et al. and J. Jin [23] the
[20] R.K. Thomas (1997) C √ only ones which propose role delegation [19] and E. Cohen
[21] E. Cohen et al. (2002) D ∗ √
[22] V. Gligor et al. (2002) D √ ∗ et al.’s proposal which exclusively mentions the difficulty in
[23] J. Jin et al. (2006) D
∗: mentioned but not managed managing delegation in organizational environments [21].
Related to revocation management, in multiple cases users
may regret having granted a certain use or administrative right
small amount of proposals focus on administrative issues in to a user. A total of 10 proposals provide mechanisms to
the specific context of WBSNs. deal with revocation and other 3 contributions mention the
In general, 6 contributions fall in the WBSN category [4], relevance of its management [22], [6], [7]. They focus on weak
[5], [6], [7], [8], [9], 3 proposals in document sharing [10], revocation in respect to rights [15], [16], [11], [13], [8] and
[11], [12], one proposal bases on grid environments [13] and group memberships [12] and on strong revocation regarding
the rest of them focus on other general collaborative systems delegated rights [18], [19], [9] and certificates [5].
[14], [15], [16], [17], [18], [19], [20], [21], [22], [23], [24]. In sum, it is concluded that administration in collaborative
This analysis studied the administration type, namely, cen- environments tends to be decentralized. This is specially re-
tralized C (a single entity decides who can get into the markable in WBSNs, where many users and data are managed.
systems) or decentralized D (multiple entities decide who can Besides, most of analysed approaches propose revocation and
get into the systems); and how delegation and revocation are delegation mechanisms which helps to conclude the relevance
managed. Table I presents results of the analysis. Symbol * of their management as part of the administration process.
means that a particular feature has been mentioned but not
managed. III. BACKGROUND : SoN eU CONABC
In what concerns the administration type, 18 approaches
deal with D administration and just 3 proposals focus on SoN eU CONABC is an expressive usage control model
C administration. As expected, administration tends to be that manages six WBSN features, namely, common-contacts,
decentralized because each WBSN user has to manage his clique, distance, multi-path, direction and flexible attributes
owned data. [26], [27], [28], [29].
Concerning centralized administration, in [17] a central In general, SoN eU CONABC is composed of seven ele-
administrator manages roles and policies. Furthermore, the ments: Subjects (S) together with Subject attributes (AT T (S))
need of dynamism is highlighted and the change of user roles, refer to WBSN users and their attributes; Objects (O) to-
at runtime, is an essential matter to deal with. Similarly, [20] gether with Object attributes (AT T (O)) correspond to WBSN
proposes teams management. Teams are composed of users data and their attribute; and Relationships (RT ) together
with the same role whose management is left to a general with Relationship attributes (AT T (RT )) refer to the set of
administrator. Likewise, in [24] groups are managed by a relations and attributes that exist between a pair of users,
central authority in such a way that users are added to groups being direct relationships denoted as E and AT T (E) their
and rules, based on user attributes, time periods and resource attached attributes; Rights (R) correspond to actions that can
usages, are applied to groups. be performed over objects O; Authorizations (A) refer to rules
The majority of approaches base on decentralized admin- to satisfy to grant a subject a right on an object; Obligations
istration, allowing users to individually manage their per- (B) correspond to requirements to satisfy before or while the
sonal data. For instance, in [12], the administrators initiate usage process; and Conditions (C) refer to requirements to
the administration process by notifying updates to affected satisfy in regard to context features, eg. network availability.
users who become involved in the administrative management In SoN eU CONABC , access control policies, denoted as
process. By contrast, in [23], [5] users who want to become ρ, consist of ρ(ρs ; ρo ; ρrt ; r; ∂b ; ∂c ). In particular, ρs , ρo and
involved in a particular administrative process have to request ρrt are predicates defined over subject, object and relationship
it. Other proposals divide data, particularly documents, among attributes respectively. Besides, rights are denoted as r and
users and they work over each owned piece of data [10]. obligations and conditions refer to ∂b and ∂c respectively.
SoN eU CONADM : the administrative model for SoN eU CONABC usage control model 211

In the following, an example of an access control policy


is presented: Access is granted to photos entitled “Party” to
friends of a friend if they are under 30 years old or if they
are under 25 years and have studied computer science.
ρ = (((age < 30) ∨ ((age < 25) ∧ (studies =
c.science))); (title = party); ((((role = f riend); (role =
f riend))), ∅, ∅); read; ∅; ∅)
For more details of SoN eU CONABC usage control model
see [1].
IV. T OWARDS ADMINISTRATION
Prior to the description of how administration is performed
in SoN eU CONADM , administrative tasks to address (Section
IV-A) and the available rights to manage (Section IV-B) are
detailed in the following Sections.
A. Administrative tasks Fig. 1. SoN eU CONADM
Administration involves multiple tasks (recall Section I)
which can be classified in a couple of groups regarding tasks
related to: A. Use rights management
• The identification of who is involved in administrative
Each owner specifies as many access control policies as
issues. These tasks refer to who manages access control
desired and leaves them in a pool of policies to be evaluated
policies, who associates policies with resources and iden-
when a request is received for executing some right over one
tity data and who manages revocation and delegation.
of his owned objects. Contrary to other models, policies in
• The definition of how administrative issues are per-
ACP are not directly associated with data and its owner but
formed. These tasks correspond to how policies are
to the owner exclusively. For instance, the policy ”grant read
associated with resources and identity data, how resources
access to data entitled PARTY to users older than 20” is
and identity data are associated with their owners and how
created, associated with an owner and located in his pool
revocation and delegation are managed.
of policies. Next, when an object of a particular owner is
B. Rights management requested, all policies associated with him are evaluated,
verifying authorizations (A), composed of subjects, objects
Two types of rights are differentiated, use rights and ad-
and relationship attributes and the granted right (AT T (S),
ministrative rights. The former ones, which are referred in
AT T (O), AT T (RT ) and r), obligations (∂b ) and conditions
SoN eU CONU CON to as Rights (R), base on operations
(∂c ). If there is a policy ρi within the set of policies defined
performed with objects such as read, and operations carried out
by an owner (Powi ) that matches the request, the right r over
over objects like tag, move or copy. By contrast, administrative
the requested object o is granted to the requester s. Assuming
rights (AR) refer to the management of elements involved in
that the expression owner(“element”) means being owner of
the access control decision process, along with delegation and
“element”, it is formally defined as:
revocation management.
(s, o, r) granted ⇐ Powi = {ρi ∈ ACP/owner(ρi ) =
V. SoN eU CONADM DEFINITION owner(o)}∧
Users enrolled in a WBSN become owners of uploaded ∃ρi (A(AT T (S), AT T (O), AT T (RT ), r); ∂b ; ∂c ) ∈ Powi /
resources, established identity data (mainly profile data) and ρi (A(AT T (s), AT T (o), AT T (rt(owner(o), s)), r); ∂b ; ∂c ) =
defined access control policies. Thus, SoN eU CONADM is true
based on ownership, such that owned elements are managed
by their owners. Specifically, administrative objects (AO) cor- B. Administrative rights management
respond to the elements involved in the access control decision
process, namely, managed subjects (S), objects (O), direct This Section details the management of administrative ob-
relationships (E) and their respective attributes (AT T (S), jects (AO), revocation and delegation. In general, being owner
AT T (O),AT T (E)) and access control policies (ACP ). of a particular administrative object ao grants administrative
In SoN eU CONADM , owners execute administrative rights rights AR over it to manage the object and its attributes and
AR over administrative objects AO and grant use rights R to delegate and revoke use rights R and administrative rights
over objects O according to access control policies ACP (see AR over it. It is formally defined as:
Figure 1). In this regard, following Sections describe use rights (s, ao, management) granted⇐ s = owner(ao)
R and administrative rights AR management (Section V-A and (s, ao, delegation) granted⇐ s = owner(ao)
V-B respectively). (s, ao, revocation) granted⇐ s = owner(ao)
212 L. González-Manzano, A. I. González-Tablas, J. M. de Fuentes, A. Ribagorda

1) Administrative objects management: Administrative ob- The delegation operation should be enforced such as λ takes
jects AO management consists of the creation, modification the value ∗, DELEGATE(vk ,vj ,oi ,∗).
and deletion of any AO. 3) Revocation management: Revocation, contrary to dele-
In terms of subjects S, they can create WBSN accounts, gation, removes the granted right over an object to a certain
becoming owners of their profiles, uploaded data and estab- user. There are two types of revocation, weak and strong
lished access control policies. Analogous, they can cancel their (Section I). Nonetheless, weak revocation of use rights R is
accounts whenever desired. the only SoN eU CONADM manages since the delegation of
Objects O are other topic for discussion. In general, objects AR is permanent and recursive delegation of use rights R are
are stored in WBSN data bases, eg. Facebook. Nonetheless, not applied.
in decentralized WBSNs, like Diaspora, each user chooses the SoN eU CONADM manages revocation in terms of the
host to store his data. Similar to WBSN accounts, objects have update of attributes and access control policies, eg. if a photo
to be deleted when users want. entitled “Summer” is accessible to relatives, it would remain
In regard to direct relationship E (as the indirect once accessible to this set of people until the policy or the photo’s
are constructed through them [1]), WBSN users establish title change. Indeed, it is extremely related to usage control
relationships with other users, as well as they update or remove and the application of mutability and continuity attributes. Mu-
them. tability refers to the fact that attributes can be updated at any
Concerning attributes, subject, objects and relationships time. On the other hand, continuity refers to the enforcement of
attributes have to be considered (AT T (S), AT T (O) and access control along the whole usage process. Both attributes
AT T (E) respectively). Firstly, AT T (S) which basically refer are directly related to revocation because if initial conditions
to profile data, are linked to a WBSN account and they change along the usage process, access decisions have to be
can be established by the account’s owner, retrieved from an taken again [30] and they may cause the revocation of granted
Identity Provider (IdP) where they where previously defined rights. Based on [31], revocation can be also divided between
or obtained from personal devices like identity cards. Second, direct and indirect:
AT T (O) attached to an object can be defined by its owner, • Direct revocation can be enforced, at any time, by the
as well as retrieved from the object’s metadata. Nonetheless, owners of resources and identity data. Data owners may
if required, owners have to give permission to WBSNs to decide to revoke rights previously granted, updating or
process metadata. Finally, what concerns with AT T (E), they deleting an access control policy, as well as changing
are considered identity data and then, they can be defined by attributes. For instance, if the right to access a photo
owners or retrieved from IdPs. entitled “Classes” is granted to relationships with role
On the other hand, access control policies can be also “classmates”, revocations can be caused by the update
created, updated or deleted, at any time. In particular, all of the title of the photo or by the update of the role
subjects with a WBSN account can manage access control of a classmate relationship. Likewise, if the policy “
policies ACP . Grant access to Friends to all photos” is updated to
One last point is that the use of attributes, conditions and “Grant access to Friends to photos entitled Birthday”, it
obligations in spite of being opened sets, depends on what may prevent requesters from getting requested rights in
every WBSN supports. subsequent requests or while the usage process.
2) Delegation management: Delegations consist of granting In the revocation process, apart from the data owner, the
permission to a certain user over a particular object tempo- Usage Reference Monitor is the entity at stake. This entity
rary or permanent. The delegation of use rights R can be is composed of a Usage Decision Facility (UDF) and
analogous to the establishment of access control policies. A a Usage Enforcement Facility (UEF) which are always
right is granted to the requester over the requested object after active [34] and they are applied in the usage control
satisfying an access control policy. process. UDF identifies changes in attributes and UEF
On the contrary, the delegation of AR requires the definition enforces access control accordingly. When policies are
of the following function: updated or attributes are changed, the UDF is informed
• DELEGATE(vk ,vj ,oi ,λ): It states that vk gives a specific about that. Afterwards, it informs the occurred event to
AR λ to vj over oi . λ refers to a partial or a complete the UEF and lastly, the UEF enforces the re-evaluation
delegation, the former to delegate some AR and the latter of policies.
to delegate all AR. λ takes the value ∗ for a complete • Indirect revocation is caused by uncontrolled situations.
delegation and takes the value, e.g., AR-R to express that Particularly, it is performed when access control policy at-
only the permission to grant use rights R is delegated. tributes expire or change. “Automatic” attributes updates,
Note that this administrative model applies permanent either subjects, objects or relationship attributes, can
delegation and the temporal one is left as a matter of cause revocation of granting rights.“Automatic’ means
future work. that no users interactions are required. For instance, if the
In SoN eU CONADM the delegation of AR compels the right to access a photo entitled “High-school” is granted
permanent delegation of all AR. Thus, the object over which to users under 18, revocations occur when requesters
the operation is executed, becomes property of the delegatee. turn to 18 years old. Note that “automatic” updates are
SoN eU CONADM : the administrative model for SoN eU CONABC usage control model 213

TABLE II
A DMINISTRATIVE TASKS COMPARISON

Tasks SoNeUCON ADM UCON ABC [32], [33] RBAC [3]


Entities identification
Creating, updating and deleting access con- Owners. Owners. Owners.
trol preferences
Associating preferences to data Not required - Owners
Revocation management Usage reference monitor and owners - Owners
Delegation management Owners - Owners
Management procedures
Association between preferences with data Policies are exclusively associated to data Assertions associate subjects and objects Permissions are associated with roles and
and data with data owners owners concerning subjects, objects and re- and data and roles with data owners
lationships attributes.
Revocation management Weak revocation is managed. Attributes and Weak revocation is managed. Time assigned Weak and strong revocation are managed.
access control policies updates. to access control policies. Owners revoke users from roles according
to their decisions.
Delegation management Delegation of R and all AR is available. Delegation of R. Assertions associated with Delegation of R and AR is available. Own-
Owners establish access control policies and particular requesters. ers assigned users to roles to delegate.
execute the delegation operation for all AR.

specially related to attributes in which time is directly or subjects attributes [33]. On the other hand, RBAC delegates
indirectly involved. R and AR through the association of roles to users.
The management is equivalent to direct revocation except Revocation is another compared task. SoN eU CONADM
for the fact that the UDF identifies updated attributes. manages direct and indirect revocation. The former is per-
formed by owners through the change of attributes and access
VI. E VALUATION control policies. On the contrary, indirect revocation is exclu-
sively related to attributes updates, being particularly related
This Section presents the evaluation of SoN eU CONADM , to attributes involving time restrictions. Nonetheless, as this
the administrative model for SoN eU CONABC . It consists model only delegates R and all AR, just weak revocation
of comparing the proposed model with the most challenging is at stake. Similarly, U CONABC manages weak revocation
and related administrative models, RBAC and U CONABC . assigning time to access control policies. Moreover, though
SoN eU CONADM is compared with RBAC administrative not described in the original model, Z. Zhang et al. proposed
model, for being one of the most mature administrative models a general procedure to manage weak and strong revocation
[35], [3], and with U CONABC administrative capabilities, for in U CONABC [36]. On the other hand, RBAC provides
being the model that lays the bases on the proposed one [32], functions to weakly and strongly revoke users from roles by
[33]. removing the assignment of users to roles.
Administrative tasks, identified in Section I, are depicted In the light of the proposed analysis, SoN eU CONADM
and compared in Table II, where symbol ‘-’ implies that a supports all tasks an administrative model should pro-
particular task is not studied. vide and thus, their completeness is pointed out. Indeed,
Concerning the association of data with preferences and SoN eU CONADM has a significant advantage, that is, pref-
data with data owners, SoN eU CONADM only requires to erences (access control policies) are associated to users in-
associate preferences (access control policies) to data. Policies stead of to objects and the burden of managing at least as
are mainly defined over subjects, objects and relationships many policies as uploaded objects is avoided. Moreover, it
attributes instead of being attached to specific objects. By is noticeable that SoN eU CONADM does not manage strong
contrast, U CONABC and RBAC pose more restrictive and revocation because cascading delegations are not required. In
tedious tasks from the users point of view. In U CONABC other words, this model bases on ownership and then, owners
owners define assertions to associate subjects with objects, as should manage access control in regard to data their posses,
well as to associate policies (composed of assertions) with either being an entire piece of data or, when co-ownership
objects [33]. However, in RBAC permissions are assigned to management takes place, a part of it.
roles and to objects and then, roles are assigned to users.
Delegation is also managed in all compared models, being VII. C ONCLUSIONS
the SoN eU CONADM proposal the most flexible one. In In this paper, SoN eU CONADM , the administrative model
SoN eU CONADM delegating R involves the establishment for SoN eU CONABC usage control model, has been pro-
of access control policies according to subjects, objects and posed. It supports administrative tasks concerning the iden-
relationship attributes. Moreover, the delegation of all AR tification of who is involved in administrative issues and how
involves the execution of the operation DELEGATE to guar- they are performed. SoN eU CONADM has been assessed
antee that, from the moment the operation is enforced, the against a pair of administrative access control models (RBAC
delegated object becomes property of the delegatee without the and U CONABC ) to ensure that it successfully addresses all
possibility of undoing the operation. Conversely, delegation in identified administrative tasks.
U CONABC is limited to R. It bases on specifying assertions In what concerns SoN eU CONADM , the main future step
associated with particular requesters which base on objects and is the management of temporal delegations. Moreover, its
214 L. González-Manzano, A. I. González-Tablas, J. M. de Fuentes, A. Ribagorda

implementation either in a real or in a simulated environment [21] E. Cohen, R. Thomas, W. Winsborough, and D. Shands, “Models for
is expected in future work to prove the feasibility of its coalition-based access control (cbac),” in SACMAT, 2002, pp. 97–106.
[22] V. Gligor, H. Khurana, R. Koleva, V. Bharadwaj, and J. Baras, “On the
implementation and the study of users satisfaction. negotiation of access control policies,” in Security Protocols. Springer,
2002, pp. 188–201.
R EFERENCES [23] J. Jin and G.-J. Ahn, “Role-based access management for ad-hoc
[1] L. González−Manzano, A. I. González−Tablas, J. M. de Fuentes, and collaborative sharing,” in Proceedings of the eleventh ACM symposium
A. Ribagorda, “SoNeUCONABC , an expressive usage control model for on Access control models and technologies, ser. SACMAT ’06. ACM,
Web-Based Social Networks,” Computers & Security, In Press, 2014. 2006, pp. 200–209.
[2] R. Sandhu, E. Coyne, H. Feinstein, and C. Youman, “Role-based access [24] H. Zhang, W. Wu, and Z. Li, “Open social based group access control
control models,” Computer, vol. 29, no. 2, pp. 38 –47, 1996. framework for e-science data infrastructure,” in E-Science (e-Science),
[3] R. Sandhu, V. Bhamidipati, and Q. Munawer, “The arbac97 model for 2012 IEEE 8th International Conference on. IEEE, 2012, pp. 1–8.
role-based administration of roles,” ACM Trans. Inf. Syst. Secur., vol. 2, [25] B. Carminati, E. Ferrari, R. Heatherly, M. Kantarcioglu, and B. Thurais-
no. 1, pp. 105–135, 1999. ingham, “Semantic web-based social network access control,” computers
[4] B. Carminati, E. Ferrari, R. Heatherly, M. Kantarcioglu, and B. Thurais- & security, vol. 30, no. 2, pp. 108–115, 2011.
ingham, “A semantic web based framework for social network access [26] P. W. Fong and I. Siahaan, “Relationship-based access control policies
control,” in Proceedings of the 14th ACM symposium on Access control and their policy languages,” in Proceedings of the 16th ACM symposium
models and technologies, ser. SACMAT ’09. ACM, 2009, pp. 177–186. on Access control models and technologies, ser. SACMAT ’11. ACM,
[5] M. Thompson, A. Essiari, and S. Mudumbai, “Certificate-based autho- 2011, pp. 51–60.
rization policy in a pki environment,” ACM Trans. Inf. Syst. Secur., vol. 6, [27] Y. Cheng, J. Park, and R. Sandhu, “Relationship-Based Access Control
no. 4, pp. 566–588, 2003. for Online Social Networks: Beyond User-to-User Relationships,” in
[6] A. Squicciarini, M. Shehab, and F. Paci, “Collective privacy management SocialCom, 2012, pp. 646–655.
in social networks,” in Proceedings of the 18th international conference [28] B. Carminati, E. Ferrari, and A. Perego, “Rule-Based access control for
on World wide web, ser. WWW ’09, 2009, pp. 521–530. social networks,” in Proceedings of the 2006 international conference
[7] A. Squicciarini, M. Shehab, and J. Wede, “Privacy policies for shared on On the Move to Meaningful Internet Systems: AWeSOMe, CAMS,
content in social network sites,” The VLDB Journal, vol. 19, no. 6, pp. COMINF, IS, KSinBIT, MIOS-CIAO, MONET - Volume Part II, ser.
777–796, 2010. OTM’06. Springer-Verlag, 2006, pp. 1734–1744.
[8] A. Ahmad, B. Whitworth, and L. Janczewski, “More choices, more [29] B. Carminati and E. Ferrari, “Access control and privacy in web-based
control: Extending access control by meta-rights reallocation,” in Trust, social networks,” in International Journal of Web Information Systems,
Security and Privacy in Computing and Communications (TrustCom), no. 4, 2008, pp. 395–415.
2012 IEEE 11th International Conference on, 2012, pp. 1113 –1118. [30] A. Lazouski, F. Martinelli, and P. Mori, “Usage control in computer
[9] Y. Jung and J. Joshi, “Cpbac: Property-based access control model for security: A survey,” Computer Science Review, vol. 4, no. 2, pp. 81 –
secure cooperation in online social networks,” Computers & Security, 99, 2010.
2013. [31] N. Attrapadung and H. Imai, “Attribute-based encryption supporting di-
[10] Y. Ren, “Access control in a cooperative editing system,” in Communi- rect/indirect revocation modes,” in Cryptography and Coding. Springer,
cation Software and Networks (ICCSN), 2011 IEEE 3rd International 2009, pp. 278–300.
Conference on, 2011, pp. 77 –80. [32] J. Park, “Usage Control: A Unified Framework for Next Generation
[11] M. Prilla and C. Ritterskamp, “Collaboration support by co-ownership Access Control,” Ph.D. dissertation, George Mason University, 2003.
of documents,” in Proceedings of the 2006 conference on Cooperative [33] F. Salim, J. Reid, and E. Dawson, “An administrative model for
Systems Design: Seamless Integration of Artifacts and Conversations UCONABC ,” in Proceedings of the Eighth Australasian Conference on
– Enhanced Concepts of Infrastructure for Communication, 2006, pp. Information Security, ser. AISC ’10, 2010, pp. 32–38.
255–269. [34] R. Sandhu and J. Park, “Usage control: A vision for next generation
[12] A. Imine, A. Cherif, and M. Rusinowitch, “A flexible access control access control,” Computer Network Security, pp. 17–31, 2003.
model for distributed collaborative editors,” in Proceedings of the 6th [35] J. Crampton and H. Khambhammettu, “Delegation in role-based access
VLDB Workshop on Secure Data Management, ser. SDM ’09, 2009, pp. control,” in Computer Security–ESORICS 2006. Springer, 2006, pp.
89–106. 174–191.
[13] M. Lorch, D. B. Adams, D. Kafura, M. S. R. Koneni, A. Rathi, and [36] Z. Zhang, L. Yang, Q. Pei, and J. Ma, “Research on usage control
S. Shah, “The PRIMA System for Privilege Management, Authorization model with delegation characteristics based on om-am methodology,”
and Enforcement in Grid Environments,” in Proceedings of the 4th in Network and Parallel Computing Workshops, 2007. NPC Workshops.
International Workshop on Grid Computing, ser. GRID ’03. IEEE IFIP International Conference on. IEEE, 2007, pp. 238–243.
Computer Society, 2003, pp. 109–.
[14] H. Wedde and M. Lischka, “Cooperative role-based administration,” in
Proceedings of the eighth ACM symposium on Access control models
and technologies. ACM, 2003, pp. 21–32.
[15] R. Sandhu, R. Krishnan, J. Niu, and W. Winsborough, “Group-centric
models for secure and agile information sharing,” Computer Network
Security, pp. 55–69, 2010.
[16] R. Sandhu, K. Bijon, X. Jin, and R. Krishnan, “Rt-based administrative
models for community cyber security information sharing,” in Collabo-
rateCom, 2011, pp. 473–478.
[17] W. Edwards, “Policies and roles in collaborative applications,” in
Proceedings of the 1996 ACM conference on Computer supported
cooperative work, ser. CSCW ’96. ACM, 1996, pp. 11–20.
[18] K. Sikkel, “A group-based authorization model for cooperative systems,”
in Proceedings of the fifth conference on European Conference on
Computer-Supported Cooperative Work, ser. ECSCW’97. Kluwer
Academic Publishers, 1997, pp. 345–360.
[19] Z. Zhang, T. Huang, Q. Wu, and J. Pu, “A cscw-enabling integrated
access control model and its application,” Key Engineering Materials,
vol. 460, pp. 96–105, 2011.
[20] R. Thomas, “Team-based access control (tmac): a primitive for applying
role-based access controls in collaborative environments,” in Proceed-
ings of the second ACM workshop on Role-based access control, ser.
RBAC ’97. ACM, 1997, pp. 13–19.
RECSI 2014, Alicante, 2-5 septiembre 2014

La ventana de AREM. Una herramienta estratégica


y táctica para visualizar la incertidumbre
Jeimy J. Cano M.
Facultad de Derecho
Universidad de los Andes
Bogotá, Colombia
Email: jcano@uniandes.edu.co

Tabla I
Resumen—Los fundamentos de la administración de riesgos L A V ENTANA DE J OHARI (T OMADO DE : [2]
tradicional poco a poco se han venido debilitando frente a
la dinámica, incertidumbre y ambigüedad de los entornos de Conocido por la Desconocido por la
negocio. Lo que antes era medianamente viable anticipar, ahora persona persona
es prácticamente imposible establecer un análisis certero que
permita ofrecer orientación y claridad sobre qué hacer frente a Conocido por los
otros ÁREA LIBRE ÁREA CIEGA
una situación particular. En este sentido, se introduce la ventana
de AREM, cuyo objetivo es ampliar la capacidad de conocimiento Desconocido por
los otros ÁREA OCULTA ÁREA DESCONO-
del entorno y facilitar una toma de decisiones informada sobre las
CIDA
oportunidades y retos empresariales, buscando ajustar la práctica
actual de la administración de riesgos en un mundo dominado
por las redes sociales, la computación en la nube, los dispositivos
móviles y la información instantánea. ubicar los riesgos y amenazas emergentes más relevantes y
Palabras clave—Riesgos, amenazas, decisiones informadas, in-
poder actuar en consecuencia.
certidumbre, entorno dinámico, Ventana de Johari
Habida cuenta de lo anterior, utilizando los conocimientos
I. I NTRODUCCI ÓN y estrategias fundadas en las relaciones humanas, asociadas
con la forma de ofrecer retroalimentación, como lo es la
Muchos investigadores y ciudadanos pasan un tiempo im- Ventana de Johari, instrumento ampliamente conocido en el
portante pensando sobre el futuro, sobre las condiciones y ámbito social, buscaremos repensar los conceptos de amenazas
riesgos que están por venir, sobre los nuevos retos que se van a y riesgos emergentes en el contexto empresarial, para ofrecer
plantear y la forma como deberemos enfrentarlos para alcanzar una nueva lectura de la Ventana de Johari, ahora como la
nuevas posiciones estratégicas en los mercados actuales y Ventana de AREM (Amenazas y Riesgos Emergentes).
futuros.
Conocer el futuro es un problema complejo, pues exige II. E NTENDIENDO LA VENTANA DE J OHARI
saber que está pasando en la actualidad con certeza y ver entre
lı́neas los aspectos emergentes, que pueden ser hoy sólo movi- “Todos los seres humanos tenemos zonas abiertas, zonas
mientos aparentemente pasajeros, pero que no dimensionamos ocultas, zonas ciegas y zonas desconocidas. Mientras más
sus alcances o factores que los puedan potenciar. Mucho del amplia sea la zona abierta, mayor es la apertura y transparencia
conocimiento que podamos tener del entorno no bastará para que generamos cuando interactuamos con los demás. Estas
establecer un patrón de conocimiento emergente que pueda diferentes zonas fueron detalladas por los psicólogos Joseph
revelar el misterio lo que puede pasar en el mediano y largo Luft y Harry Ingham, que denominaron la Ventana de Johari,
plazo. como una estrategia para mejorar la comunicación a través de
En este sentido, las organizaciones deben establecer estra- la cual una persona da o recibe informaciones sobre sı́ misma
tegias que permitan cada vez más avanzar en el conocimiento o sobre otras personas.
de su entorno, buscando un recorrido perimetral completo La idea de usar este instrumento es alertar y tratar las
que disminuya los puntos ciegos y aumentar su capacidad áreas ocultas y ciegas que son las que predominan en la
de anticipación, toda vez que es de esta forma como puede relación interpersonal. El área oculta es aquella donde hay
permanecer vigente y competitiva, aún frente a situaciones elementos desconocidos por los demás y conocidos por la
inesperadas. persona, mientras el área ciega, es aquello que la persona no
Como quiera que el futuro, es una reflexión basada en conoce, pero es conocido por los demás.” [1].
escenarios aún por conocer o mejor, situaciones que ya pasaron La ventana de Johari, detalla FRITZEN [2] (pág.11), “trata
y no las vimos, se hace necesario mantener en el radar una de explicar cómo deben procurar tolerarse mutuamente las
forma de afinar la revisión del medio ambiente empresarial diferencias en las distintas áreas de nuestra personalidad, con
y las situaciones propias de cada organización, con el fin de el fin de mejorar las relaciones interpersonales, a través del
tener a la vista motivaciones y sugerencias que nos permitan conocimiento de uno mismo y de los demás. (. . . )”. Este
216 Jeimy J. Cano M.

instrumento abre la posibilidad para explorar campos desco- que enfrentará y superará, pues ha visto sus manifestaciones
nocidos de nuestro propio entorno que lleven a una mayor invisibles y advierte sus posibles impactos.
expansión del área libre, donde podemos actuar y movilizarnos Por tanto, ante este escenario retador y de permanente
para hacer de nuestras relaciones con otros, fuentes de ventaja incertidumbre, se requiere, como afirma ÁLVAREZ DE MON
emocional y empresarial, donde podemos construir propuestas [4] (pág.18) “un carácter decidido y resuelto, curtido en
conjuntas y relaciones gana-gana que superen la lucha de egos multitud de ocasiones, enfrentado a dilemas crı́ticos (. . . )” que
y se privilegien la suma de talentos y voluntades. permita a los ejecutivos de las empresas de hoy, reconocer en
Ası́ las cosas, la ventana de Johari es una forma para aumen- la inestabilidad de los mercados, esa forma natural de “sentirse
tar nuestra transparencia en las comunicaciones, motivando la perdido” como prerrequisito natural para encontrarse consigo
posibilidad de aprender con los otros y recomponer el campo mismo y descubrir su auténtica realidad, esa que está más
de las zonas grises de las relaciones humanas, que en lugar de allá de los ejercicios de planeación estratégica, que se esconde
ser espacios para la confrontación y la contienda, se conviertan en la manera como la organización se relaciona con su propia
en oportunidades concretas y confiables para que surja la realidad, sin entrar como afirma ÁLVAREZ DE MON [4]
confianza, esa condición fundamental para hacer que las cosas (pág.19) en un superávit de futuro que genere angustia e
pasen. intranquilidad insoportable.
IV. L A VENTANA DE AREM. U NA LECTURA DE LA
III. L AS COMUNICACIONES ENTRE LA EMPRESA Y SU
INCERTIDUMBRE EN LAS RELACIONES DE LA EMPRESA Y
ENTORNO : RIESGOS , AMENAZAS Y OPORTUNIDADES
SU ENTORNO
Si bien la Ventaja de Johari es un instrumento propio de las Modelar las relaciones emergentes del entorno de negocio es
ciencias sociales, pensar en su aplicación a nivel empresarial una actividad que reta cualquier modelo de pronóstico disponi-
resulta algo extraño y hasta incómodo, toda vez que pensar en ble a la fecha, pues tratar de representar la realidad futura con
comprender la misma dinámica entre la empresa y el entorno, escenarios, siempre tendrá la limitación de la variable que no
como una persona y un grupo, puede ser algo inicialmente se puede especificar. Sin embargo, tratar de establecer un mar-
inesperado, peligroso y retador. co general de amenazas y riesgos emergentes (AREM), puede
En el mundo empresarial, los análisis de las oportunida- ser una lectura que permita a las organizaciones clasificar
des de negocio siguen modelos establecidos y condiciones mejor sus acciones y tratar de equivocarse de manera diferente,
particulares que generan informes tipo que responden más o motivando un “pensamiento peligroso” que evoluciona desde
menos a lo que los ejecutivos quieren escuchar o entender. los tradicionales riesgos conocidos hasta las propuestas con
Rara vez, los informes de los analistas de entorno sugieren momentos y condiciones inesperadas y desconocidas que, al
elementos que no estén dentro de los parámetros propios de contar con suficientes enemigos o detractores [3, pág.34],
sus pronósticos, como quiera que hacerlo, implica compromiso valga la pena el ejercicio de oposición y crı́tica.
de su credibilidad y debilitamiento de su imagen frente a Ası́ como, la Ventana de Johari, es un instrumento que nos
las decisiones que los ejecutivos van a tomar siguiendo sus permite establecer estrategias para aumentar la zona libre, esa
reflexiones. área de conocimiento mutuo y convergencia de informaciones
Ası́ las cosas, comprender el entorno empresarial y revelar entre el yo y los demás, se propone hacer una lectura equi-
los patrones de cambio que se avecinan, no es sólo un ejercicio valente entre la empresa y su entorno, con el fin de crear un
de correlación de eventos y datos acumulados durante mucho instrumento que mantenga en la mira de los ejecutivos de la
tiempo, sino de lanzarse a ver aquellos “espacios en blanco” empresa, los diferentes tipos de riesgos y amenazas que debe
que sugieren los números, situaciones excepcionales, condi- atender si quiere mantenerse vigente en su entorno.
ciones lı́mites, manifestaciones impropias y frecuentemente En este sentido, se plantea la Ventana de AREM, como
peligrosas que permite a la empresa, cambiar las cosas y una vista estratégica y táctica de actuación de los ejecutivos
quebrar los lentes de su inercia sectorial, para superar sus de la empresa, para comprender los aspectos conocidos y
temores frente a la competencia y crear una nueva realidad desconocidos de sus capacidades empresariales, en el contexto
donde, como afirma REHN [3, pág. 34], pocos se puedan de aquellos riesgos y amenazas propias de su entorno, ası́ co-
aventurar y donde sus técnicas de navegación mental ya no mo de los vectores de inestabilidades emergentes que deben
sean aplicables. identificar dentro y fuera de su realidad corporativa.
En este contexto, mientras más sea el conocimiento de la Siguiendo esta propuesta, se presenta a continuación la
empresa sobre sus capacidades y habilidades para comprome- Ventana de AREM que establece las diferentes zonas de
ter y desestabilizar su entorno, mayor será su fortaleza para alcance de las amenazas y riesgos conocidos, focalizados,
transformar su ambiente y revelar las nuevas condiciones, que latentes y emergentes como una forma de motivar el análisis de
cambien la manera de hacer las cosas. De igual forma, cuando los ejecutivos y provocar las ideas que “en tiempos de guerra”
somos capaces de profundizar en las variaciones del entorno y permitan encontrar maneras de sobrevivir.
prever nuevos vectores de riesgos, estamos avanzando en una Las amenazas y riesgos conocidos son las situaciones tra-
reflexión que le permite a la empresa anticiparse y caminar dicionales que se presentan en la organización. Las tı́picas
sobre las aguas inciertas, con la vista en el nuevo reto, que sabe sesiones de riesgos que buscan comprender que acciones se
La ventana de AREM. Una herramienta estratégica y táctica para visualizar la incertidumbre 217

Tabla II
L A V ENTANA DE AREM V. R EVISANDO LA VENTANA DE AREM. U NA LECTURA
DESDE LA INSEGURIDAD DE LA INFORMACI ÓN
Conocido por la Desconocido por la Los analistas de Mckinsey [6] establecen diez tendencias
empresa empresa
emergentes que transformarán la vida personal y empresarial
Conocido por el en- AMENAZAS AMENAZAS
torno Y RIESGOS Y RIESGOS
en la próxima década. Dicha lista está conformada por:
CONOCIDOS LATENTES * Las tecnologı́as sociales, aquellas que potencian la inter-
Desconocido por el AMENAZAS AMENAZAS acción de los individuos y organizaciones en la red;
entorno Y RIESGOS Y RIESGOS * El uso de grandes volúmenes de datos y su respectiva
FOCALIZADOS EMERGENTES
analı́tica, con el fin de advertir patrones emergentes y relacio-
nes desconocidas reveladas a través de los datos;
* El internet de las cosas, como una nueva realidad exten-
adelantan frente a temas como fuga de información, errores y/o dida ahora con dispositivos cotidianos conectados a la red;
omisiones, multas y/o sanciones, pérdidas de imagen, acceso * La propuesta de “todo como un servicio” como una forma
no autorizado, pérdida de liquidez, inestabilidad de mercados, de estandarizar todo aquello que podemos hacer con recursos
entre otros que mantienen la operación de la empresa frente compartidos y visibles en la red;
a condiciones que se sabe conocidas y que exigen acciones * La automatización del conocimiento, que potencia a los
permanentes y concretas (planes de tratamiento de riesgo) para trabajadores del conocimiento, que aumente la productividad
mantenerlas bajo control y conocer qué hacer cuando alguno empresarial más allá de los patrones identificados en el ejer-
de ellos se materializa. cicio de la analı́tica de los datos;
Las amenazas y riesgos latentes, son aquellas circunstancias * La potenciación del ciudadano digital, como factor di-
que se advierten en el entorno y que son generalmente ferenciador de un nativo digital informado y dispuesto a
desconocidas en el contexto de negocio de las empresas. transformar la manera de hacer las cosas;
Dichas situaciones se manifiestan de manera frecuente y son * El quiebre de las fronteras entre lo fı́sico y lo virtual,
detectadas por los analistas empresariales, sugiriendo patrones como una renovación del espacio vital del ser humano, ahora
y condiciones particulares a través de la cual se pueden presen- con experiencias diferentes y aumentadas de su realidad;
tar. Su comportamiento es asimétrico y genera ruido e incer- * La personalización y simplificación de los modelos de
tidumbre en el entorno, condiciones propias de una sorpresa negocio basados en la red, como una vista particularizada de
predecible. Un ejemplo de esta realidad la podemos asociar los intereses de los ciudadanos digitales, clientes de nuevos
con los patrones de comportamiento que se identificaron con bienes y servicios;
la deuda inmobiliaria en los Estados Unidos de América que * La creación de mercados electrónicos dirigidos por las
generó una crisis interna con afectación internacional, la cual tendencias de los nativos digitales que permiten la evolución
se advertı́a en los análisis de los estudiosos de los mercados. de los sistemas pagos y logı́stica en el entorno digital y
Las amenazas y riesgos focalizados, son situaciones propias * Los impactos de los avances tecnológicos en el gobierno,
de una industria o sector de negocio, que afectan la com- la educación y la salud, como forma de favorecer el producto
petitividad y posicionamiento de una empresa en un nicho interno bruto de las naciones que desean ser parte de la
especı́fico. Son escenarios por lo general desconocidos en el realidad de un mundo en lı́nea y con lı́mites desconocidos.
entorno, pero conocidos por la empresa, dado que reconoce y Revisando cada una de estas tendencias encontramos un
sabe el comportamiento de su sector de negocio. Este tipo de común denominador en cada una de ellas. Un elemento que
amenazas y riesgos focalizados, deben instar a los ejecutivos permite cohesionar cada una de ellas y diferenciarlas al mismo
de la empresa a estudiar de manera permanente los avances y tiempo. Una fuente de oportunidades y riesgos propios que
novedades de su industria, para identificar nuevas formas de busca crear una sensación de exclusividad para todos aquellos
hacerlas cosas y crear los escenarios donde su empresa pueda que participan de un entorno digital, altamente interconectado,
movilizarse sobre las inestabilidades del sector y alcanzar una con información instantánea y ahora en la nube. La infor-
posición privilegiada. mación se convierte entonces, en palabras de un académico
Finalmente y no menos importantes, las amenazas y riesgos colombiano, en el nuevo “petróleo del siglo XXI”, una materia
emergentes, esos momentos, ideas, propuestas de contextos prima que está en capacidad de generar valor para aquellos que
que retan las capacidades de la empresa y privilegian más logran transformarla en activos valiosos, por los cuales otros
las posibilidades que las probabilidades. En este sentido, están dispuestos a pagar.
como afirman WESTERMAN y HUNTER [5] (pág.22) “las Habida cuenta de lo anterior, es a través de la información
empresas responden de manera más eficiente a los riesgos que como las empresas logran superar sus miedos o potenciar sus
entienden, por muy impredecibles que sean, que a los que temores. Es la forma como cada una de ellas es capaz de tratar-
no entienden”. Ası́ las cosas, situaciones como las amena- la, lo que hace que algunas se ubiquen en lugares privilegiados
zas persistentes avanzadas y los ataques ciberterroristas, las y otras no. Por tanto, su inadecuado tratamiento puede llevar a
podrı́amos tipificar como condiciones básicas para pensar e situaciones delicadas que deterioran su capacidad de anticipar
investigar en escenarios aún no conocidos, que suponen per las amenazas y riesgos que afecten su operación o lo que es
se cambios o situaciones disruptivas. peor, comprometan su futuro.
218 Jeimy J. Cano M.

En razón con lo anterior, se hace necesario pensar de manera suficientes elementos para tenerla en consideración en los
diferente frente a los análisis de riesgos relacionados con la análisis.
seguridad de la información y motivar un ejercicio desde la Aquellos participantes que han identificado estas nuevas
Ventana de AREM que “luche contra las tendencias profun- aproximaciones del entorno, deben comentar y documentarlas
damente arraigadas de nuestro pensamiento” [3] (pág.64) para de tal forma que describan con la mayor claridad su vista
abrirle las puertas a las posibilidades, considerando, como y establecer, un proceso de revisión y validación con un
afirma TRUMP y KIYOSAKI [7] (pág.206) que tanto la equipo de trabajo especializado para establecer allı́ sus análisis
empresa como su entorno son “tu propia escuela de negocios detallados y luego traerlos a la mesa, una vez se hayan
y programa de desarrollo personal”. estudiado.
La ventana de AREM leı́da en clave de la inseguridad de De otra parte, los especialistas de negocio y analistas de
la información, es una herramienta de pensamiento lateral mercados, hacen lo propio frente a los riesgos focalizados,
[8], que deben ser animada por el cuestionamiento de las para lo cual reconocen la nuevas tendencias de la industria
suposiciones, hacer las preguntas correctas, intentar nuevos relacionadas con la temática revisada, ası́ como elementos a
marcos o puntos de vista (aún suenen descabellados) y motivar saber regulaciones, nuevas prácticas, estándares, movimientos
un análisis lógico y disciplinado del razonamiento que inte- polı́ticos, sociales o empresariales, que son percibidos por la
rrogue la solución cómoda y conocida, para entender aquello competencia en su sector o que se manifiestan como temáticas
que está en el campo de las posibilidades y no en el de las relevantes dentro de los cı́rculos de influencia de la industria.
probabilidades. La consulta de los principales proveedores de la industria y
analistas externos de su sector, ası́ como estudios sectoriales
VI. I NCORPORANDO LA VENTANA DE AREM
son elementos relevantes para establecer aquellos elementos
La ventana de AREM, surge como una forma diferente de que son emergentes en su área de negocio, para mantenerse
motivar una reflexión sobre el escenario de análisis que se competitivos y con ventaja sobresaliente, siempre y cuando
seleccione, con el fin de movilizar a las empresas fuera de pueda anticiparse a las mismas o lo que es mejor, que sean
su zona de confort frente a los riesgos, para sumergirla más sus acciones y actividades las que crean las nuevas condiciones
allá de las condiciones actuales conocidas de su entorno y de su entorno de negocio.
motivar una nueva vista de la empresa, tanto en su sector Luego de revisados y analizados los resultados en cada
de negocio, como más allá de aquello que ella conoce y su uno de los cuadrantes, queda expuesta la sı́ntesis de los
entorno le manifiesta. riesgos identificados y sus planes de tratamiento para avanzar y
Como quiera que para adelantar este ejercicio renovado de anticiparse a los impactos que éstos puedan tener en los planes
riesgos, se hace necesario contar con personas especialistas en de la empresa, en el mediano y largo plazo. Sin embargo,
el tema, ası́ como de personas fuera del dominio de estudio, de aún no está completo el ejercicio faltando el momento para
los ejecutivos de negocio y de personal externo a la empresa cuestionar nuestro entendimiento actual de los riesgos y el
(si es posible), es importante documentar bien la sesión de marco conceptual en el cual han sido concebidos para eviden-
trabajo, trayendo a la mesa de trabajo, aquellas situaciones ciar las discontinuidades y saltos inesperados de las tendencias
que actualmente se advierten fruto del ejercicio tradicional de actuales, para lo cual se hace necesario abrir el espacio a
riesgos, que es donde iniciará la revisión de la problemática, las posibilidades y dejar de pensar en las probabilidades,
para ir avanzando a los siguientes cuadrantes de la ventana. ampliamente conocidas para los ejercicios tradicionales de
Es importante anotar, que los profesionales que participen riesgos.
del ejercicio de la ventana de AREM, cuyo objetivo es ampliar En el sector de amenazas y riesgos emergentes, se requiere
la capacidad de conocimiento del entorno y facilitar una contar con habilidades particulares de aquellos que son capa-
toma de decisiones informada sobre las oportunidades y retos ces de: [9]
del tema analizado, deben tener la seguridad psicológica y
real que sus comentarios serán tomados como expresiones 1. Ver los cambios que vienen
de cómo “conectar los puntos” para ver más allá de los 2. Comprender las implicaciones de dichos cambios
hechos y eventos, y no como forma de atacar una forma 3. Anticipar la trayectoria de los cambios
de pensar particular, que genere contradictores que impidan Es decir profesionales que están dedicados a vigilar y
que se movilicen las ideas y propuestas que deben salir de la correlacionar eventos inesperados, variables asimétricas del
sesión. entorno y comportamientos socio-económicos inadvertidos,
La ventana de AREM debe motivar a los participantes a tecnologı́as disruptivas, ası́ como cambios en las preferencias
“pensar fuera de la caja” y fortalecer las lecturas conexas de de los diferentes grupos de interés, que permitan animar
los múltiples riesgos identificados, para comenzar a mover las nuevas reflexiones sobre las implicaciones que se pueden
reflexiones desde el cuadrante de lo conocido, hacia aquello generar para la organización y sus planes de mediano y largo
que es latente, es decir, aquello que no es evidente en el plazo.
momento, pero que existen condiciones y señales en el am- Las ideas que se presenten en este sector de la ventana
biente que establecen patrones de actividad, que advierten de serán el trasfondo del conocimiento de la realidad empresarial,
una situación que aparece como irrelevante, pero que existen un lugar donde buscar nuevas forma de crear valor en la
La ventana de AREM. Una herramienta estratégica y táctica para visualizar la incertidumbre 219

empresas, es decir, para diseñar nuevos activos no documen- diligente y creativa, estaremos creando un activo intangible de
tados, ası́ como impactos aún no dimensionados, que para protección que está más allá de una estrategia de seguridad
algunos podrı́a denominarse un posible “cisne negro” que de la información, una capacidad de actuación que moviliza
pueda tener implicaciones bien positivas o devastadoras para decisiones sencillas y ejecutables.
la organización. Recuerde que en la era de la información y el conocimiento,
Terminado el recorrido por cada uno de los segmentos de afirman TRUMP y KIYOSAKI [7] (pág.253) “no es la velo-
la ventana de AREM, se establecen los riesgos y amenazas cidad de las lı́neas de ensamblaje la clave del éxito, sino la
emergentes más relevantes para los asistentes del ejercicio, velocidad y la alta calidad con que el pensamiento humano
los cuales serán documentados por cada uno de los grupos trabaja para alcanzar un objetivo común”, por tanto que la
de trabajo establecidos para cada cuadrante, quienes ahora de- ventana de AREM, se transforme poco a poco en esa forma
berán desarrollar las estrategias de tratamiento de los mismos y de ver en el margen de las hojas y la excusa para detectar los
entregar una vista consolidada de cada segmento de la ventana, detalles que hacen la diferencia, cuando nuestro pensamiento
para que la empresa cuente con acciones concretas y análisis insista en retornar a su zona de confort.
claves para documentar sus decisiones.
AGRADECIMIENTOS
VII. C ONCLUSI ÓN El autor agradece el apoyo y los acertados comentarios del
Anota ÁLVAREZ DE MON [4] (pág.18) “las cumbres del doctor Jorge Ramio Aguirre, la maestra Gabriela Saucedo
espı́ritu humano han sido conquistadas a base de ensayo y Meza, el maestro Andrés Almanza Junco y los ingenieros
error. (. . . ) un itinerario que dista mucho de ser sencillo. (. . . )”, Alberto León Lozano, Daliris Maldonado Gómez y Mauricio
palabras que recogen muy bien las reflexiones que se han Luna Salguero, que permitieron refinar las ideas de este
planteado alrededor del ejercicio de tratar de aventurarnos en artı́culo.
las aguas de la incertidumbre. No podemos negar que nuestro R EFERENCIAS
conocimiento finito e incipiente de la realidad nos margina
[1] CANO, J. (2013) Comunicación con DIOS. Frase de la Semana.
muchas veces de nuevas oportunidades para crear activos Disponible en: http://frasedelaseman.blogspot.com/2013/05/
claves que representen valor y beneficio para un tercero. comunicacion-con-dios.html (Consultado: 3-06-2013)
Sin perjuicio de lo anterior, existen iniciativas que buscan [2] FRITZEN, S. (1987) La ventana de Johari. Ejercicios de dinámica de
grupo, de relaciones humanas y de sensibilización. Sal Terrae.
enfrentarse al reto de entender las condiciones del entorno, [3] REHN, A. (2012) Ideas peligrosas. Cuando el pensamiento provocador
aun sabiendo que para sobrevivir en un sector de negocios, se se convierte en el activo más valioso. Pearson.
requiere como afirma TRUMP y KIYOSAKI [7] (pág.228- [4] ÁLVAREZ DE MON, S. (2009) Incertidumbre, hábitat natural del
directivo. IESEInsight. No.1. Segundo trimestre.
229) “aprender de distintos temas y hacerlo con rapidez”, [5] WESTERMAN, G. y HUNTER, R. (2009) Hable un idioma común
so pena de ser arrasados por la constante variación de los sobre el riesgo en TI. IESEInsight. No.1. Segundo trimestre.
mercados y de los sectores de negocio. En este sentido, la [6] BUGHIN, J. , CHUI, M. y MANYIKA, J. (2013) Ten IT-enabled
business trends for the decade ahead. Mckinsey Quarterly. May. Disponi-
ventana de AREM, es una propuesta novedosa que busca ble en: http://www.mckinsey.com/insights/high tech telecoms internet/
motivar a los ejecutivos para pensar sobre aquello que conocen ten it-enabled business trends for the decade ahead (Consultado: 3-
y desconocen, una apuesta para detallar y profundizar la 06-2013)
[7] TRUMP, D. y KIYOSAKI, R. (2013) El toque de Midas. Por qué algu-
misión empresarial que los moviliza para crear las condiciones nos empresarios se hacen ricos, pero la mayorı́a no. Ed. Aguilar.
de operación que les permita “caminar sobre las aguas” de la [8] DE BONO, E. (2006) El Pensamiento Lateral. Editorial Paidós Ibérica
inestabilidad y no morir en el intento. S.A.
[9] FUNSTON, F. y WAGNER, S. (2010) Surviving and Thriving in
De igual forma, la ventana de AREM es una forma de uncertainty. Creating the risk intelligent Enterprise. John Wiley and
nunca subestimar las condiciones asimétricas de la inseguridad Sons.
de la información, sino más bien, de pensar en los detalles
que implican su entendimiento, la mente de los atacantes,
las relaciones propias entre la tecnologı́a, los procesos y las
personas, las vulnerabilidades latentes, que no marginan el
conocimiento de los actores de la organización, sino que
potencian sus reflexiones para crear un vitrina de aprendizaje
y desaprendizaje que hablan de una empresa resistente a la
fallas no por excepción, sino por convicción.
Si en el ejercicio de proteger los activos de información de
la empresa, los ejecutivos y el responsable de seguridad se
concentran en los mecanismos de prevención y control, no es-
tarán actuando en el escenario real de su entorno y el ejercicio
de la ventana de AREM será marginado a listas de chequeo
que no desarrollarán su capacidad proactiva. Mientras, si estos
actores se enfocan en el conocimiento abierto y concreto de
su escenario de amenazas y riesgos emergentes, con una vista
RECSI 2014, Alicante, 2-5 septiembre 2014

Seguridad en smart cities e infraestructuras crı́ticas


Victor Garcia-Font Carles Garrigues Helena Rifà-Pous
Internet Interdisciplinary Estudis d’Informàtica Estudis d’Informàtica
Institute Multimèdia i Telecomunicació Multimèdia i Telecomunicació
Universitat Oberta de Catalunya Universitat Oberta de Catalunya Universitat Oberta de Catalunya
Email: vgarciafo@uoc.edu Email: cgarrigueso@uoc.edu Email: hrifa@uoc.edu

Resumen—Numerosas ciudades están desarrollando platafor- de negocio, se creen nuevos empleos, se puedan automatizar
mas smart city con el fin de lograr una mejor coordinación, operativas urbanas y mejorar la eficiencia en la gestión de
eficacia, reducción de costes y en general una gestión más eficiente infraestructuras, se haga la ciudad más competitiva y se
de la ciudad, a través de la integración de infraestructuras y
servicios. Entre los subsistemas que se integran en una smart city potencie más transparencia en la gestión pública.
hay un grupo de especial interés formado por las infraestructuras Todos estos cambios que aporta la smart city también
crı́ticas. Con la integración de estas se busca dar un mejor afectan a las que llamamos infraestructuras crı́ticas. Éstas
servicio, pero al aumentar la complejidad y la dependencia son las instalaciones clave que proporcionan los servicios
de unas infraestructuras con otras y con las TIC, crece el que afectan al bienestar de las personas, sea suministrando
riesgo de que una vulnerabilidad o fallo en una infraestructura
pueda extenderse y ocasionar fallos en otra, y ası́ sucesivamente directamente estos servicios esenciales, o dando servicio a
provocando un fallo en cascada. otra infraestructura crı́tica para que ésta pueda operar co-
En este artı́culo describimos un diagrama común de mu- rrectamente. Más concretamente, las infraestructuras crı́ticas
chos proyectos para smart cities y analizamos los problemas más destacadas están relacionadas con la energı́a eléctrica, la
de seguridad y privacidad que aparecen al interconectar las producción y distribución de combustibles, las telecomunica-
infraestructuras y al tender hacia una filosofı́a de datos abiertos.
Palabras clave—ciberseguridad (cybersecurity), ciudad inteli- ciones, el transporte, la distribución de agua, la agricultura, la
gente (smart city), datos abiertos (open data), infraestructura crı́ti- banca y las finanzas, los servicios de emergencia y gobernanza,
ca (critical infrastructure), privacidad (privacy), Tecnologı́as de la la educación y la sanidad entre otros [1].
Información y la Comunicación (Information and Communication Más integración e interconexión trae consigo una mayor
Technologies). complejidad y un mayor riesgo de vulnerabilidades. En este
artı́culo vemos como la implantación de las smart cities abre
I. I NTRODUCCI ÓN brechas en la seguridad de la información y en la privacidad
En los últimos años, las ciudades han añadido a los re- de los usuarios. Para empezar, hacemos una descripción a alto
tos clásicos nuevos desafı́os propios de la sociedad contem- nivel de los sistemas de información que se están diseñando
poránea: absorción del aumento de la población, reducción para implementar una arquitectura smart city. Posteriormente,
del consumo energético y de emisiones de CO2, mayor vemos como las infraestructuras crı́ticas usan las TIC para
sostenibilidad, crecimiento económico, etc. Para hacer frente interconectarse, integrarse en la smart city y como estas
a estos puntos se está produciendo un progresivo aumento infraestructuras dependen unas de las otras para poder operar.
de la inversión en capital humano y tecnológico. Usando A continuación, revisamos cómo la seguridad informática y la
las TIC como base, llamamos smart city a las ciudades que privacidad pueden afectar a la construcción de una smart city.
buscan atajar estos desafı́os desarrollando sistemas para la Finalmente señalamos algunos de los problemas que continúan
mejora en áreas como la gobernanza, la energı́a, el medio abiertos en estos ámbitos.
ambiente, la movilidad o la economı́a entre otros. El desarrollo
II. S MART CITIES Y INFRAESTRUCTURAS CR ÍTICAS
de estos sistemas conlleva inherentemente nuevos modelos de
operación y modifica caracterı́sticas básicas de las ciudades. II-A. Sistemas de información de una smart city
La implantación de lı́neas de telecomunicaciones interconecta Los SI de una smart city son el conjunto de software,
más a los ciudadanos con las instituciones, a las empresas hardware y estándares que hacen posible la gestión eficiente e
con sus proveedores, a los gestores de infraestructuras con las inteligente de la ciudad a través de las TIC. En la actualidad,
infraestructuras que gestionan, etc. Además, esta interconexión hay diversas compañı́as y ciudades que han propuesto esque-
también se produce con elementos insertados en el entorno mas de arquitectura smart city. A continuación, mencionamos
urbano, como por ejemplo cámaras de video vigilancia, sen- algunos de los productos que se están construyendo:
sores, teléfonos móviles, o dispositivos GPS, que generan una The PlanIT Urban Operating System[2] es una implemen-
gran cantidad de información que pasa a estar disponible no tación de un sistema operativo para entornos urbanos que
sólo localmente sino a una escala mayor para el conjunto provee de tecnologı́a en tiempo real de sensores, control,
de los entes que conforman la ciudad. Todo esto provoca análisis espacial, integración de datos, seguridad, soporte y
que se demanden nuevos servicios, se abran nuevas lı́neas provisionamiento de contexto de ubicuidad para aplicaciones
222 V. Garcia-Font,C. Garrigues, H. Rifà-Pous

del internet de las cosas (IoT). Se caracteriza por tener 4 capas: Helsinki, Lisboa y Amsterdam.
una red de sensores, una capa de control de latencia mı́nima En general, todas las propuestas existentes en smart cities
para el control de los sensores, una capa de supervisión a tienen una arquitectura orientada a servicio (SOA) con una
un nivel más alto y una capa de aplicaciones. Este esquema pieza central que actúa de middleware y que en muchas de las
sigue el paradigma SOA facilitando la creación de aplicaciones propuestas se equipara a un sistema operativo con un ámbito
que usen sus servicios y la integración de módulos de otros de ciudad. En la figura 1 se puede ver un diagrama general de
fabricantes. bloques para una solución de este tipo. Básicamente se trata
La ciudad de Oulu en Finlandia [3] ha implementado un de arquitecturas en tres capas: capa de aplicaciones, capa de
middleware para ser usado como campo de pruebas real para proceso y capa de contacto con el medio.
mejorar y facilitar la comunicación entre los ciudadanos y
el gobierno. Este middleware es una capa encima de la red
LAN/bluetooth/wireless de la ciudad para facilitar el acceso a
esta red y a los datos generados por sensores distribuidos por
el área urbana.
En Corea del Sur están implementando el proyecto Ubiqui-
tous city (u-city)[4] en el que ofrecen servicios interconectados
distribuidos por áreas de interés: automatización de edificios
(u-life), servicios relacionados con los negocios (u-business),
gobernanza (u-government), etc. Uno de los puntos principales
del proyecto es centrarse en el usuario, ofreciéndole los
servicios en cualquier parte pero sin resultar intrusivo.
Chen[5] propone una arquitectura en 4 capas para la in-
tegración de la Internet of Things (IoT) en las smart cities.
La capa más baja es una red de sensores autónomos que
responden a estı́mulos del mundo real y que interactúan entre
ellos. La siguiente capa es un middleware orientado a servicio
que sirve como punto de unión entre los sensores y el sistema.
La siguiente capa intermedia es una capa de procesamiento
de datos. Hay que destacar que se proponen instrumentos
para que los diferentes elementos colaboren entre sı́ para un Figura 1. Diagrama de bloque general de una smart city
procesamiento más eficaz. Por ejemplo, un smartphone de
poca potencia enviarı́a parte de un proceso a computar al En la capa de aplicaciones situamos todos los elementos
cloud. Finalmente, se propone una capa de aplicaciones y que usan los servicios y la información publicada por la smart
servicios. city. Por ejemplo, centros de control o aplicaciones.
La ciudad de Barcelona está desarrollando un esquema La capa central se trata de un middleware compuesto por
con la integración de varios proyectos [6], [7], [8], [9] co- muchos módulos de diversos tipos, diferentes funcionalidades
financiados por la ciudad y por otras instituciones como la e implementados por entidades diferentes que se comunican
Unión Europea. La capa central de middleware la constituye entre ellos con el uso de estándares, como por ejemplo el
el CityOS, una agregación de módulos para procesamiento, API REST. Las soluciones de smart city, tanto las basadas en
análisis, gestión de datos históricos, BI, etc. open source como las propietarias hacen hincapié en el uso
Entre estos módulos dentro del CityOS de Barcelona se de estándares y la interoperabilidad ya que la finalidad de los
encuentra el City Service Development Kit (CitySDK)[6]. Este sistemas de este tipo es la concentración de subsistemas y la
proyecto tiene el objetivo de ayudar a las ciudades a abrir generación de nuevos datos para ser usados en aplicaciones
sus datos dando un conjunto de herramientas open source de diversa ı́ndole. Generalmente, el middleware aparte de ser
para facilitar a los desarrolladores la creación de servicios el nexo de unión entre sensores, actuadores y aplicaciones,
digitales para la ciudad. Estas herramientas son básicamente también es una pieza para el procesamiento, el almacenaje, la
servicios digitales abiertos e interoperables, procesos, guı́as y gestión y el análisis de datos. Gracias a la interoperabilidad
estándares de usabilidad. CitySDK no es solamente un módulo de estos sistemas se busca poder encajar cualquier tipo de
integrado en la smart city de Barcelona, sinó que también se producto que dé estos servicios, como sistemas de ERP, de
ha integrado en la arquitectura de otras ciudades y busca ser Business Intelligence, sistemas gestores de bases de datos o
una pieza para que cualquier ciudad europea pueda ofrecer minerı́as de Big Data.
sus datos a desarrolladores para la creación de aplicaciones y La capa de contacto con el medio corresponde a los ele-
ası́ contribuir a la creación de una infraestructura sostenible mentos que alimentan con información al sistema o que el
de apps. Como colofón del proyecto, se desarrollan tres sistema usa para interactuar con los componentes de la ciudad,
aplicaciones en los ámbitos de la participación ciudadana, como por ejemplo los sensores, los actuadores o los propios
el turismo y la movilidad integrados en las smart cities de ciudadanos. Dentro de esta capa, destacamos los módulos de
Seguridad en smart cities e infraestructuras crı́ticas 223

plataforma de sensores. En este sentido, el proyecto de open provocar problemas tanto en las lı́neas de tráfico, como en las
source Sentilo[8], implementado y desplegado en la ciudad telecomunicaciones o el suministro de agua.
de Barcelona, ofrece una API REST en la que se suscriben Finalmente, las dependencias lógicas son aquellas que exis-
los sensores y los actuadores. Ası́, los sensores envı́an la ten entre dos infraestructuras y que no corresponden ni a
información recogida a la plataforma de sensores para que dependencias de tipo fı́sico, ni TIC, ni geográfico. En este
sea procesada por agentes del sistema y reenviada hacia una caso un agente en una infraestructura depende de algún modo
capa superior o para que sirva de información de reentrada. de un agente en otra, pero el vı́nculo entre los dos se establece
Las funciones de suscripción y notificación crean un medio por algún mecanismo que no corresponde a los anteriormente
para la conexión de sensores y actuadores escalable. mencionados. Un ejemplo de este tipo es la dependencia que se
produce entre las infraestructuras eléctricas y las financieras.
II-B. Las infraestructuras crı́ticas de una smart city Desde la privatización del mercado eléctrico se han hecho
muchas inversiones financieras en este sector. Por consiguien-
De entre todas las infraestructuras crı́ticas, en este artı́culo te, se producen cuantiosas pérdidas financieras cuando hay
nos centramos en las que tienen un impacto mayor en las afectaciones en el precio de la energı́a, del transporte, al
ciudades, y por lo tanto, las que entran en el ámbito y aplicar nueva regulación, nuevos impuestos, etc. Igualmente,
son candidatas a ser integradas en un esquema de smart afectaciones en los mercados financieros que hagan desplazar
city. Más concretamente, dentro de una ciudad las infraes- las inversiones en el sector eléctrico pueden no hacer rentables
tructuras crı́ticas más relevantes son las energéticas, las de algunas plantas generadoras y desproveer a la red eléctrica de
telecomunicaciones, la distribución de agua, la gobernanza, potencial.
los servicios de emergencia y seguridad pública, el transporte En relación a los tipos de dependencia, cabe mencionar la
y la sanidad[10]. clasificación respecto al nivel de criticidad que tiene un fallo
Estas infraestructuras crı́ticas han ido evolucionando su y la temporalidad que ese fallo conlleva. La interrupción de
manera de operar y sus centros de control, empezando con producción de energı́a eléctrica en una planta de mediano
una gran dependencia de acciones manuales y tendiendo a tamaño puede no afectar demasiado al sistema en un dı́a
la automatización. Para ello, se han adaptado o reemplazado de poco consumo, pero ese mismo fallo puede llevar a una
los antiguos mecanismos de control por nuevos dispositivos caı́da en cadena del sistema en un dı́a con un pico de
informatizados dándoles conectividad IP y uniéndolos a redes consumo. Además, también hay que distinguir en el grado de
de ordenadores para poder ser operados a distancia. Esta acoplamiento que tienen las infraestructuras. Por ejemplo, el
informatización también ha llevado a una interconexión en- corte de suministro de gas a un generador de ciclo combinado
tre las diversas infraestructuras que no existı́a previamente, probablemente tendrá consecuencias casi inmediatas en la
pudiéndose enviar y recibir información de unas a las otras generación de energı́a eléctrica. En cambio, en las centrales de
para ganar en coordinación y cooperación. carbón, al disponer normalmente de reservas, un corte en el
A parte de la interconectividad que se produce al informa- suministro no tendrá una consecuencia hasta al cabo de varios
tizar las infraestructuras, también tenemos que considerar las meses.
dependencias naturales - o interdependencias en el caso de que La conjunción de las tres caracterı́sticas anteriores: incorpo-
haya dependencias recı́procas - que existen entre ellas. Éstas ración de sistemas TIC, dependencias y mayor interconexión
pueden deberse a una causa de tipo fı́sica, TIC, geográfica o entre infraestructuras es la base de funcionamiento de un
lógica[1]. sistema smart city. Una vez establecida la interconexión, el
Una dependencia fı́sica es aquella que conecta dos infraes- sistema smart city se encarga de analizar las dependencias
tructuras porqué una necesita lo que suministra la otra para entre las infraestructuras con los datos en tiempo real pro-
poder operar. Por ejemplo, necesitamos que la producción de venientes de sensores y otros dispositivos repartidos por la
energı́a eléctrica funcione correctamente para poder mantener ciudad y ası́ ofrecer herramientas para un mejor control y
activo el servicio de telecomunicaciones. operación de los diferentes servicios. Por ejemplo, una red de
Una dependencia TIC se da en las infraestructuras que ne- sensores en las calles que monitoreen el tráfico podrı́a enviar
cesitan de la información transmitida por otra infraestructura a información detallada del número de vehı́culos circulando
través de la infraestructura de telecomunicaciones. Este tipo de por determinadas vı́as al centro de control de tráfico. Varias
dependencia va en aumento debido a la extensa utilización de operaciones de análisis y predicción podrı́an alertar de los
los sistemas de control industrial para la Supervisión, Control atascos y de las vı́as más rápidas. Esta información serı́a
y Adquisición de Datos (SCADA). Además, los centros de enviada al centro de control de ambulancias que combinando
control que gestionan las infraestructuras tienden a estar cada estos datos con los sistemas de posicionamiento planificarı́a
vez más alejados de las infraestructuras que controlan, con lo las unidades mejor situadas para atender una urgencia y las
que la dependencia con las TIC es todavı́a más enfatizada. rutas a tomar. En un sistema altamente conectado el centro de
Las dependencias geográficas se encuentran en esos puntos control de emergencias también podrı́a enviar información al
en que se sitúan próximamente varias infraestructuras crı́ticas, de tráfico sobre las intervenciones necesarias, que introducido
por ejemplo un puente donde pasan lı́neas de comunicaciones en la red semafórica podrı́a seguir el recorrido de los servicios
o canalizaciones de agua. Una afectación en el puente podrı́a de emergencia y darles prioridad.
224 V. Garcia-Font,C. Garrigues, H. Rifà-Pous

II-C. Los datos y la información en una smart city ataques se ha hecho con la instalación de antivirus, firewalls,
Una de las particularidades más destacadas de las smart honeypots, sistemas de detección de intrusiones (IDS), la
cities es la gran cantidad de datos que manejan provenientes creación de polı́ticas de seguridad, la actualización de los
de fuentes heterogéneas distribuidas geográficamente por el sistemas y la implementación de medidas de autenticación.
área urbana. Si listamos estas fuentes clasificándolas con el Los problemas de falta de actualización son de especial
vı́nculo que tienen con la identidad y la privacidad de los relevancia en las infraestructuras crı́ticas, donde precisamente
ciudadanos tenemos: por su criticidad se minimizan las actualizaciones para evitar
daños[12]. También hay dificultades para la actualización, la
Fuentes no personales correspondientes a los disposi-
aplicación de nuevas polı́ticas de autenticación o la denegación
tivos que registran datos que no tienen ningún vı́nculo
de autorizaciones en los dispositivos repartidos por la ciudad
estrecho con una persona en concreto. E.g., sensores de
y que no disponen de una plataforma común de control.
temperatura, de humedad, sonómetros.
En el ámbito de la privacidad, los problemas tradicionales
Fuentes personales son aquellas vinculadas a un usuario
que conciernen a las smart cities afectan a las bases de datos,
donde su identidad aparece directamente. El ciudadano
a la identidad de los usuarios y a las comunicaciones.
puede haber dado la información activamente, e.g., la
En el campo de las bases de datos hay algunos pro-
participación en una aplicación de denuncia ciudadana,
cedimientos propuestos dirigidos a mantener la privacidad
o de forma inconsciente sin saber que su información
de los usuarios[13]. Las técnicas de Statistical Disclosure
acabarı́a dentro del sistema, e.g., un comentario en una
Control (SDC) proponen añadir ruido o hacer agregaciones
red social que es analizado por el sistema.
para preservar la privacidad pero a su vez manteniendo el valor
Fuentes anónimas ofrecen datos que provienen de los
informativo de los datos. Las técnicas de Private Information
usuarios pero se han tratado previamente para enmas-
Retrieval (PIR) se basan en hacer consultas pidiendo más in-
carar la información personal de éstos. E.g., cámaras de
formación de la necesaria para ocultar la información concreta
videovigilancia que ensombrecen rostros, un parquı́metro
que demandaba el usuario. Otras técnicas como el cloaking y
realizando la lectura de la matrı́cula de un coche. Hay que
el uso de pseudónimos se usan para ocultar la identidad de
tener en cuenta que dependiendo de cómo se haya hecho
los usuarios concretos al acceder a servicios basados en la
el tratamiento de datos se podrı́a deducir información
localización (LBS).
de algunos usuarios. E.g., datos de consumo eléctrico en
Para los problemas de privacidad en las comunicaciones, la
agregaciones espaciales de unos pocos kilómetros cua-
criptografı́a avanzada y el control de acceso son los sistemas
drados pueden no revelar información sobre habitantes
usados para la prevención de escuchas en la transmisión de
de regiones densamente pobladas, pero puede no ser
datos y para evitar la conexión de nodos no autorizados
suficiente para áreas rurales.
en las redes con aparatos distribuidos en lugares de acceso
Cada vez hay más dispositivos que pueden nutrir datos al público[14]. Sin embargo, el uso de técnicas criptográficas
sistema smart city y a esto hay que añadir el movimiento puede ser viable para dispositivos con alta capacidad de
open data. Este movimiento promueve que cada vez haya cómputo, como los contadores inteligentes, pero sensores y
más datos que se abran. En muchos casos, para respetar la otros dispositivos más pequeños pueden no tener capacidad
privacidad del ciudadano, la información se presenta agregada suficiente para realizar estas funciones.
o anonimizada. Ası́, este modelo de más datos y más abiertos
ayuda a la transparencia de las administraciones y empresas de III-A. Problemas abiertos
servicio público, es fuente de creación de nuevas aplicaciones La complejidad de un sistema crece exponencialmente al
y servicios, pero también añade incertidumbre sobre los datos añadir nuevos subsistemas, y el número de vulnerabilidades
que se ofrecen y la manera en que se ha hecho el tratamiento que añade al conjunto este nuevo subsistema es mayor que las
de datos privados. que lo afectaban de forma aislada[14]. Estas vulnerabilidades
pueden ser aprovechadas por hackers o terroristas no sólo para
III. S EGURIDAD Y PRIVACIDAD causar daño al sistema que tiene abierta esta vulnerabilidad,
Sin tener en cuenta los problemas derivados de las nume- sino que pueden utilizarla como puerta de entrada al resto de
rosas interconexiones y dependencias inherentes a una smart subsistemas que conforman la smart city.
city, este tipo de sistemas también afrontan los problemas de El primer problema aparece al aumentar las interconexiones
seguridad informática clásicos que afectan a los centros de entre servicios, empresas e infraestructuras, ya que incremen-
datos y a los sistemas de comunicación: malware (virus, tro- tamos también las vı́as para la circulación de virus entre
yanos, gusanos, backdoors, spyware), bots, loggers, rootkits, objetivos codiciados como son las infraestructuras crı́ticas. El
ataques de denegación de servicio distribuidos (DDoS), falta ejemplo de infección del gusano Stuxnet[15] que ha afectado
de actualizaciones, etc. Se han destacado los gusanos y los a los sistemas de control industrial aprovechándose de vul-
DDoS como los más peligrosos para los servicios que ofrece nerabilidades en sistemas Windows nos muestra la fragilidad
la smart city en tiempo real y para las infraestructuras crı́ticas, y el riesgo de implantar las TIC e interconectar este tipo de
ya que tienen una afectación muy alta para el rendimiento de entornos que anteriormente tenı́an su seguridad basada bási-
los sistemas[11]. Tı́picamente, la prevención contra todos estos camente en seguridad fı́sica para impedir el acceso. Cómo los
Seguridad en smart cities e infraestructuras crı́ticas 225

virus, los hackers también pueden utilizar las interconexiones parece difı́cil poder asegurar que no podrán ser utilizados
para viajar entre sistemas y ganar control. para inferir la identidad de los usuarios al aplicar alguna
El segundo problema en un sistema smart city procede de técnica de correlación en el futuro. Un ejemplo del uso de
las dependencias entre infraestructuras. Un fallo en uno de técnicas de este tipo lo ha llevado a cabo la ciudad de Nueva
los nodos en la red de dependencias podrı́a causar problemas York[17]. Para no tener que pagar para deshacerse de los
en cascada a varias infraestructuras crı́ticas. Para una mejor aceites usados, algunos restaurantes los vierten ilegalmente en
planificación y gestión de las dependencias se han propuesto las alcantarillas. Correlacionando datos públicos provenientes
soluciones en el campo de la simulación y el modelado, pero del sistema de alcantarillado, información de contaminación,
los productos que sirven para una gestión global de múltiples de licencias de restaurantes, de compañı́as de recogida de
infraestructuras están todavı́a poco maduros[16]. Este tipo de residuos entre otras, el ayuntamiento pudo dibujar un mapa
problemas en cascada puede deberse tanto a la disrupción de de probabilidades de los restaurantes que habı́an cometido
uno de los subsistemas como a la generación de desinfor- los vertidos ilegales sin disponer de ningún dato inicial que
mación. Continuando con el ejemplo de la sección II-B, si indicara la identidad de los autores.
un atacante produjera un colapso en uno de los colectores Para disminuir el tiempo en las intrusiones y en los ataques,
que recoge los datos de los sensores de tráfico de un cruce se propone la implantación de soluciones capaces de aplicar
importante y a su vez provocara una pequeña incidencia reacciones activas donde automáticamente el sistema responda
circulatoria, no solamente estarı́a afectando a las lecturas de en un escenario de crisis para frenar una anomalı́a[18]. Estas
tráfico, sino que el servicio de ambulancias estarı́a basando su soluciones son todavı́a poco comunes, ya que los sistemas
planificación en datos desactualizados. actuales están basados en la activación de alertas para la
En tercer lugar, la conexión entre el middleware de la smart solución semimanual de irregularidades.
city y el resto de plataformas y aplicaciones es un elemento
estratégico para que una smart city tenga éxito. Esta conexión IV. C ONCLUSI ÓN
tiene que ser interoperable, estandarizada y a su vez contem- En este artı́culo hemos presentado un esquema genérico
plar los principios básicos de confidencialidad, integridad y de smart city en el que se basan algunos de los productos
autenticidad. Por lo tanto, las APIs que ofrece la plataforma implementados por empresas y ciudades. A partir de este
tienen que soportar el uso de protocolos con encriptación como esquema, hemos repasado cómo se están integrando las in-
HTTPS, hecho que crea algunos problemas. Por ejemplo, la fraestructuras crı́ticas a la smart city a base de informatizarlas
posibilidad de que un atacante use un dispositivo en la vı́a e interconectarlas. A las dependencias naturales que tienen
pública con una conexión encriptada para enviar un virus hasta entre sı́ estas infraestructuras, se le añaden dependencias con
el subsistema de la smart city que desencripta la conexión. las TIC, que llevan a todo el sistema a ser más vulnerable a
En este caso, un firewall perimetral no podrı́a descifrar el ciberataques y a ser susceptible a fallos múltiples en cascada.
contenido enviado y por lo tanto no podrı́a detectar el virus. Un Ası́, hemos repasado los problemas de seguridad informática
segundo ejemplo recae en que algunos dispositivos por su poca que el modelo de smart city tiene asociado. Además, el
capacidad no soportan conexiones encriptadas. Aceptar que paradigma de open data en el que se basa la publicación
también sean posibles este tipo de conexiones para dispositivos de muchos de los datos generados por la smart city contrae
inocuos abre la puerta a que sean atacados y también a errores problemas de privacidad para los ciudadanos y las empresas
humanos como malas configuraciones en otros elementos más de las que se extraen esos datos. Varios de estos problemas de
peligrosos. seguridad y privacidad han sido resueltos para otros entornos,
Un cuarto problema aparece con el hecho de disponer de pero debido a las particularidades y caracterı́sticas propias de
muchos servicios y fuentes de datos para la creación de nuevas una smart city, algunos de los problemas continúan abiertos
aplicaciones. Esto es una ventaja, pero a su vez es un riesgo en este contexto.
al no poder asegurar la disponibilidad de estos servicios. Por
ejemplo, una aplicación para la visualización del servicio de AGRADECIMIENTOS
autobuses donde aparezcan las lı́neas y las paradas de autobús Este trabajo está financiado parcialmente por el Ministerio
en un mapa cerca de la zona donde estamos con el tiempo de Economı́a y Competitividad a través de los proyectos
de espera para cada autobús podrı́a necesitar la disponibilidad TIN2011-27076-C03-02 “CO-PRIVACY” y CONSOLIDER
de un servidor de mapas, de un servicio de localización para INGENIO 2010 CSD2007-0004 “ARES”; y por la Generalitat
indicar al usuario donde se encuentra y del servicio que da de Catalunya a través de la subvención de doctorado indus-
información de forma dinámica en tiempo real sobre el tiempo trial ECO/2497/2013. Merecen un agradecimiento especial el
de espera de los autobuses. Un fallo en cualquiera de estos Ayuntamiento de Barcelona, Cast Info y openTrends.
servicios llevarı́a a la aplicación a no funcionar debidamente
o incluso a que fuera inservible. R EFERENCIAS
Finalmente, en el ámbito de la privacidad, a pesar de [1] S. M. Rinaldi, J. P. Peerenboom, and T. K. Kelly, “Identifying, unders-
las técnicas mencionadas en la sección III, en un contexto tanding, and analyzing critical infrastructure interdependencies,” Control
Systems, IEEE, vol. 21, no. 6, pp. 11–25, 2001.
de open data con cuantiosas fuentes de información tanto [2] “Living planit os,” http://living-planit.com/UOS overview.htm, acces-
en tiempo real como históricas, al publicar nuevos datos sed: 2014-03-27.
226 V. Garcia-Font,C. Garrigues, H. Rifà-Pous

[3] F. Gil-Castineira, E. Costa-Montenegro, F. J. Gonzalez-Castano,


C. López-Bravo, T. Ojala, and R. Bose, “Experiences inside the ubi-
quitous oulu smart city,” Computer, vol. 44, no. 6, pp. 48–55, 2011.
[4] Y. W. Lee and S. Rho, “U-city portal for smart ubiquitous middlewa-
re,” in Advanced Communication Technology (ICACT), 2010 The 12th
International Conference on, vol. 1. IEEE, 2010, pp. 609–613.
[5] M. Chen, “Towards smart city: M2m communications with software
agent intelligence,” Multimedia Tools and Applications, vol. 67, no. 1,
pp. 167–178, 2013.
[6] “Citysdk,” http://www.citysdk.eu/, accessed: 2014-03-27.
[7] “icity,” http://www.icityproject.com/, accessed: 2014-03-27.
[8] “Sentilo,” http://www.sentilo.io/wordpress/, accessed: 2014-03-27.
[9] “Open cities,” http://opencities.net/, accessed: 2014-03-27.
[10] F. Ferraz, C. Sampaio, C. Ferraz, G. Alexandre, and A. Carvalho,
“Towards a smart city security model exploring smart cities elements
based on nowadays solutions,” in ICSEA 2013, The Eighth International
Conference on Software Engineering Advances, 2013, pp. 546–550.
[11] C.-W. Ten, G. Manimaran, and C.-C. Liu, “Cybersecurity for critical
infrastructures: attack and defense modeling,” Systems, Man and Cyber-
netics, Part A: Systems and Humans, IEEE Transactions on, vol. 40,
no. 4, pp. 853–865, 2010.
[12] F. Daryabar, A. Dehghantanha, N. I. Udzir, N. F. B. M. Sani, and
S. bin Shamsuddin, “Towards secure model for scada systems,” in
Cyber Security, Cyber Warfare and Digital Forensic (CyberSec), 2012
International Conference on. IEEE, 2012, pp. 60–64.
[13] A. Martinez-Balleste, P. A. Pérez-Martı́nez, and A. Solanas, “The
pursuit of citizens’ privacy: a privacy-aware smart city is possible,”
Communications Magazine, IEEE, vol. 51, no. 6, 2013.
[14] A. Bartoli, J. Hernández-Serrano, M. Soriano, M. Dohler, A. Kountouris,
and D. Barthel, “Security and privacy in your smart city,” in Proceedings
of the Barcelona Smart Cities Congress, 2011.
[15] R. Langner, “Stuxnet: Dissecting a cyberwarfare weapon,” Security &
Privacy, IEEE, vol. 9, no. 3, pp. 49–51, 2011.
[16] S. M. Rinaldi, “Modeling and simulating critical infrastructures and their
interdependencies,” in System sciences, 2004. Proceedings of the 37th
annual Hawaii international conference on. IEEE, 2004, pp. 8–pp.
[17] T. G., “Why grease is the word in new york,” http://www.ft.com/cms/s/2/
a284331a-9751-11e2-a77c-00144feabdc0.html#axzz2P5yLBdjC, 2013,
accessed: 2014-03-27.
[18] L. Cazorla, C. Alcaraz, and J. Lopez, “Towards automatic critical infras-
tructure protection through machine learning,” in Critical Information
Infrastructures Security. Springer, 2013, pp. 197–203.
RECSI 2014, Alicante, 2-5 septiembre 2014

Desarrollando una metodologı́a de análisis de


riesgos para que el sector asegurador pueda tasar
los riesgos en las PYMES
Antonio Santos-Olmo Luis Enrique Sánchez Eduardo Fernández-Medina, Mario Piattini
Departamento de I+D+i Departamento Eléctrica Grupos de Investigación
SICAMAN NT y Electrónica ALARCOS y GSyA
Tomelloso, España Universidad de las Fuerzas Universidad de Castilla-La Mancha (UCLM)
Email: Asolmo@sicaman-nt.com Armadas Latacunga, Ecuador Ciudad Real, España
Email: luisenrique@sanchezcrespo.org Email: Eduardo.FdezMedina, Mario.Piattini@uclm.es

Resumen—En una sociedad gobernada por la información, sugieren la realización de un análisis de riesgos como parte
las empresas y en particular las PYMES, dependen cada vez fundamental en la PYME. Otros autores [8] proponen la
más de la capacidad de poder asegurar la información, no necesidad de desarrollar un nuevo modelo de análisis de
solo internamente, sino con terceros que estén dispuestos a
establecer pólizas de seguros sobre la información. Pero cuando riesgos orientándolo directamente a las PYMES, considerando
estamos hablando de activos intangibles, las aseguradoras se que el uso de técnicas de análisis y gestión de riesgos, ası́ como
enfrentan a la problemática de que no existen metodologı́as de el papel de terceros (Ej: aseguradoras), es necesario para poder
Análisis de Riesgos adecuadas que permitan tasar y garantizar garantizar la seguridad del sistema de información de las
la información de forma objetiva. En este artı́culo, presentamos PYMES Como tal, toma especial relevancia la necesidad de
la base de una nueva metodologı́a que tiene como objetivo dar
solución a las problemáticas presentadas por las empresas y obtener nuevas metodologı́as y modelos de análisis y gestión
las aseguradoras, permitiendo realizar un análisis de riesgo con del riesgo, que permitan adaptarse a las PYMES, con el
menor grado de incertidumbre que los existentes en la actualidad. objetivo de eliminar (o al menos reducir) los inconvenientes
y ayudar a estas sociedades a evaluar los riesgos a los que
Palabras clave—PYMES; Analisis de riesgos; Tasación de sus activos están expuestos y a establecer los controles de
activos; Aseguradoras
seguridad adecuados, permitiendo a su vez que esa evaluación
de riesgos sea lo suficientemente objetiva, como para ser
I. I NTRODUCCI ÓN
aceptada por terceros. De esta manera, el objetivo principal de
Para las empresas, es muy importante implantar controles este artı́culo es mostrar el framework que se está desarrollando
de seguridad que les permitan conocer y controlar los riesgos con el objetivo de poder obtener una metodologı́a de análisis
a los que pueden estar sometidas [1], [2]. Pero la implantación de riesgos que dé solución a los problemas detectados en las
de estos controles no es suficiente, siendo necesarios sistemas investigaciones previas [9]. El artı́culo continúa en la sección
que gestionen la seguridad a lo largo del tiempo, de modo II, describiendo brevemente el objetivo de la metodologı́a
que les permitan reaccionar ágilmente ante nuevos riesgos, y la problemática que pretende solucionar. En la sección
vulnerabilidades, amenazas, etc. [3]. Sin embargo, la mayor III se presentan brevemente las propuestas de framework de
parte de las empresas tienen sistemas de seguridad caóticos la metodologı́a. Finalmente, en la sección IV concluimos
creados sin unas guı́as adecuadas, sin documentación y con indicando cuál será el trabajo que desarrollaremos en el futuro.
recursos insuficientes [4]. Los controles clásicos se muestran
por sı́ solos insuficientes para dar unas mı́nimas garantı́as II. E STADO DEL ARTE
de seguridad. Por lo tanto, a pesar de que la realidad ha MARISMA (Metodologı́a para Análisis de Riesgos SIs-
demostrado que para que las empresas puedan utilizar las tec- temático basado en Modelos Asociativos inteligentes y cuanti-
nologı́as de la información y las comunicaciones con garantı́as ficables) es la metodologı́a que se está desarrollando con el fin
es necesario disponer de guı́as, métricas y herramientas que de permitir la tasación objetiva de un sistema de información
les permitan conocer en cada momento su nivel de seguridad y la generación de un análisis de riesgo objetivo que tenga en
y las vulnerabilidades que aún no han sido cubiertas [5], el cuenta aspectos asociativos y jerárquicos y sea de bajo coste en
nivel de implantación con éxito de estos sistemas realmente su generación y mantenimiento. Antes de iniciar la elaboración
es muy bajo. Este problema se acentúa especialmente en el de MARISMA, se realizo una revisión sistemática siguiendo
caso de las PYMES, que cuentan con la limitación adicional el método cientı́fico, que fue mostrada en la anterior edición
de no tener recursos humanos y económicos suficientes para de la RECSI [9], y de la que entre otros resultados se pueden
realizar una adecuada gestión [4]. Algunos autores [6], [7] destacar las siguientes conclusiones:
228 Antonio Santos-Olmo, Luis Enrique Sánchez, Eduardo Fernández-Medina, Mario Piattini

1. La mayor carencia detectada en las metodologı́as ac- La metodologı́a propuesta resolverá todas estas carencias
tuales es el elevado nivel de aspectos subjetivos que detectadas durante la investigación, buscando que los re-
deben ser establecidos y que invalida los resultados sultados obtenidos sean no sólo validos desde el punto de
obtenidos, o por lo menos limita su uso [9]. A lo vista cientı́fico, sino que tengan una aplicación directa a las
largo de nuestra experiencia hemos comprobado que empresas objetivo de la investigación.
la elaboración de un análisis de riesgos por parte de
dos consultores, sobre la misma compañı́a, utilizando III. F RAMEWORK MARISMA
la misma metodologı́a y con los mismos interlocutores, El principal objetivo de esta investigación es el desarrollo
puede dar dos resultados completamente diferentes, al de un marco de trabajo metodológico que permita realizar
entrar en juego muchos aspectos subjetivos que deben análisis de riesgos con el menor grado de incertidumbre, que
ser valorados según la experiencia y el criterio de los sean válidos para las PYMES, que sean dinámicos, controlen
consultores. Esta problemática hace que los resultados aspectos asociativos y jerárquicos y permitan la tasación
obtenidos en un análisis de riesgos sean parcialmente económica y objetiva de los Sistemas de Información de una
útiles para la propia compañı́a, pero totalmente inútiles compañı́a.
cuando hablamos de terceras partes (compañı́as asocia- De cara a hacer posible la obtención de una valoración
das, proveedores, clientes, aseguradoras). económica objetiva de un sistema de información y de los
2. La segunda carencia detectada en las metodologı́as ac- riesgos a los que están sometidos estos activos, con el menor
tuales, es que actualmente las metodologı́as consideran grado de incertidumbre, con el objetivo de permitir a una
que las empresas y los activos están aislados. En base compañı́a aseguradora poder realizar un seguro del mismo, o
a nuestra experiencia de auditorı́a y certificación con permitir conocer a un tercero los riesgos que asume al ceder un
la norma ISO27001 [10], nos hemos dado cuenta que activo o colaborar con la compañı́a, planteamos la necesidad
uno de los mayores puntos de polémica es la definición de desarrollar un marco metodológico que permita realizar este
del .Alcance a certificar”, ya que obliga a establecer una proceso.
frontera clara de qué activos están dentro del alcance El marco metodológico estará formado por tres componen-
y cuáles no. Estos aspectos de asociatividad y jerarquı́a tes:
deben ser contemplados en un análisis de riesgos para
MI : Contendrá el modelo de información, y estará for-
que los resultados tengan un valor real y adecuado.
mado por las ontologı́as y las bases de conocimiento del
3. La tercera carencia detectada es la falta de un sistema de
marco metodológico.
tasación monetaria adecuado para los activos de infor-
I : Contendrá todas las métricas que nos permitirán las
mación. En reuniones mantenidas con aseguradoras, se
tasaciones económicas objetivas de los activos, y las
llegó a la conclusión de que, en la era del conocimiento,
reducciones del nivel de incertidumbre en la elaboración
una de las pocas cosas que todavı́a no podı́an asegurarse
del análisis de riesgos.
y que suponı́an un mayor riesgo para las compañı́as
M : Contendrá la propia metodologı́a de tasación y análi-
eran los sistemas de información, y que aunque cada
sis y gestión del riesgo.
vez más compañı́as solicitaban el poder asegurar y tasar
el sistema de información, las compañı́as no habı́an En las siguientes sub-secciones se irán detallando los prin-
localizado ningún mecanismo objetivo que les permitiera cipales elementos y caracterı́sticas del marco de trabajo que
asegurar una compañı́a con las garantı́as necesarias. se está desarrollando.
4. La cuarta carencia detectada es que la metodologı́a Modelo de Información - MARISMA.MI
que se construya debe adaptarse a las caracterı́sticas
requeridas por las PYMES, que principalmente exigen La primera parte del marco metodológico que proponemos,
un bajo coste de recurso, tanto económicos, como de contendrá un modelo de información que recoge todos los
tiempo y personal. conceptos relacionados con la metodologı́a que se pretende
5. Finalmente, la quinta y última carencia detectada es desarrollar. Estará formada por un conjunto de ontologı́as y
que actualmente las empresas desconocen las inter- una base de conocimiento, que nos permitirá reutilizar el
relaciones de sus activos con sus clientes y provee- conocimiento adquirido en diferentes implantaciones, y que
dores, carecen de ese grafo, lo que hace que les sea estará basada en las investigaciones realizadas por [11], [12],
difı́cil entender muchas veces los riesgos que asumen. entre otras.
Aquı́ introducimos un nuevo concepto que creemos que Para el desarrollo de estas ontologı́as, debemos ser capaces
puede llegar a solucionar ese problema y que es el de analizar las tres dimensiones del problema:
concepto de Red Social Empresarial.aplicada al control Conceptos relacionados con el campo de la tasación de
y la gestión de las inter-relaciones entre los activos de activos (TA) : para abarcar este dominio del problema,
las compañı́as derivados de sus estructuras empresarial, analizaremos otras investigaciones y estándares existen-
o de la aprobación de un proyecto. tes. Las investigaciones realizadas hasta el momento han
concluido que existen muy pocos estudios y estándares
relacionados con la materia [13], [14].
Desarrollando una metodologı́a de análisis de riesgos para que el sector asegurador pueda tasar los riesgos en las PYMES 229

Conceptos relacionados con el campo de la seguridad (S) : objetiva de un sistema de información y la generación de un
para abarcar este dominio del problema, utilizaremos análisis de riesgo objetivo que tenga en cuenta aspectos asocia-
los principales estándares relacionados con la gestión de tivos y jerárquicos, reutilización del conocimiento, dinamismo,
la seguridad de Sistemas de Información, en especial y que sea válida para las PYMES.
los relacionados con el análisis y gestión de riesgos La metodologı́a MARISMA está constituida por los siguien-
(ISO27001, ISO27002, ISO27005, MAGERIT, OCTA- tes artefactos:
VE, . . . ) [10], [15]–[24] y orientados en especial a
disminuir el nivel de incertidumbre de la generación de Sistema de Tasación de Activos (STA) : Permite, a partir
un análisis de riesgos . de la lista de activos de la compañı́a, obtener una tasación
Conceptos relacionados con la interrelación de compañı́as económica de los mismos. Esta tasación se realizará en
(asociatividad y jerarquı́a) (AJ) : para abarcar este do- base a criterios totalmente objetivos, de forma que el
minio del problema, y ante la ausencia de estándares valor de los activos no varı́e si dos consultores diferentes
oficiales, utilizaremos los estudios obtenidos durante la realizan la tasación sobre los mismos activos. La tasación
revisión sistemática, que serán complementados con los tendrá en cuenta también que pueden actuar sobre el valor
resultados prácticos obtenidos de aplicar la investigación de un activo dos tipos de factores: i) Factores jerárquicos:
en caso reales mediante el método cientı́fico “investiga- Por ejemplo, en el caso de una empresa filial, es posible
ción en acción”. que un determinado activo no le pertenezca, sino que
El conjunto resultante de analizar estos tres dominios sobre sea propiedad de la matriz. O que la matriz deje ese
un campo común como son los sistemas de información, activo a la filial mediante un leasing, con lo que sólo
dará lugar a un conjunto de ontologı́as que podremos aplicar poseerá un porcentaje del activo; ii) Factores asociati-
sobre la metodologı́a que estamos desarrollando. vos: Por ejemplo, un producto del cual la compañı́a se
encargue de desarrollar el software, siendo incorporado
Indicadores - MARISMA.I el hardware por otra compañı́a asociada. En este caso,
La segunda etapa para el desarrollo de nuestra metodologı́a el valor del producto tasable para la compañı́a será sólo
se está centrando en el estudio y desarrollo de un conjunto el correspondiente a la parte software del mismo. Este
de indicadores, reglas de negocio y métricas vinculadas a los proceso está formado por cinco tareas: T1 – Lista de
procesos seguridad de los sistemas de información. activos de la compañı́a; T2 – Rellenar el conjunto de
Uno de los objetivos de esta fase es facilitar que pueda propiedades de los activos; T3 – Calcular el valor total del
determinarse de forma semiautomática la valoración (tanto activo; T4 – Aplicar factores asociativos y jerárquicos; T5
monetaria como en cuanto a importancia dentro de la empresa) – Calcular el valor del activo en la compañı́a.
de los activos del sistema de información. Sistema de Valoración Objetivo de Amenazas (SVOA) :
Una vez que hemos desarrollado la primera fase del marco Permite valorar en base a métricas objetivas la pro-
de trabajo y obtenida una ontologı́a, ésta se utilizará entre otras babilidad de ocurrencia de cada posible amenaza que
cosas para obtener reglas del sistema de tasación. Por último, puede afectar a cada uno de los activos de la compañı́a.
estas reglas se utilizarán para aplicar factores derivados de las En este sistema será básica la Base de Conocimiento
posibles relaciones de cada activo, amenaza y vulnerabilidad que se va alimentando de cada nueva implantación,
en cuanto a la jerarquı́a y asociatividad de la compañı́a de forma que se pueda calcular automáticamente la
dentro de su entorno, buscando siempre reducir el nivel de probabilidad de ocurrencia de una amenaza en función
incertidumbre. de la calculada previamente para otra compañı́a con
El objetivo último perseguido en esta fase es ser capaces de similares caracterı́sticas. Por ejemplo, en función del
localizar y desarrollar indicadores y métricas que nos permitan ámbito geográfico. Los valores calculados también se
calcular de forma semi-automática los valores de los activos y verán afectados por la aplicación de factores jerárquicos
el nivel de riesgo al que están expuestos, reduciendo el nivel de y asociativos. Este proceso está formado por tres tareas:
incertidumbre en la elaboración del análisis de riesgos. De esta T1 – Pedir caracterı́sticas de la compañı́a; T2 – Pedir
forma, esta parte de la investigación permitirá la consecución factores asociativos y jerárquicos; T3 – Calcular el nivel
completa de los siguientes objetivos: i) Diseñar métricas para de amenaza de la compañı́a.
la valoración y tasación de activos de información; ii) Diseñar Sistema de Medición Objetiva de Vulnerabilidades
métricas para la valoración de las amenazas; iii) Diseñar (SMOV) : Permite valorar mediante métricas objetivas
métricas para la valoración de activos de información en base la probabilidad de que una vulnerabilidad pueda ser
a criterios de riesgo; iv) Diseñar métricas para la valoración de explotada para una compañı́a. Este sistema trabaja como
controles de seguridad en base a estándares existentes y para parte fundamental una ontologı́a de vulnerabilidades,
calcular la probabilidad de ocurrencia de una vulnerabilidad. para cada una de las cuales se calculará la probabilidad
de ocurrencia. Este valor se calculará en función del
Metodologı́a - MARISMA.M los niveles de cobertura de los controles implantados en
La tercera parte del marco de trabajo que estamos desarro- la compañı́a. De esta forma, el sistema trabajará sobre
llando contiene la metodologı́a que se aplicará para la tasación la base de un listado de controles. Para la primera
230 Antonio Santos-Olmo, Luis Enrique Sánchez, Eduardo Fernández-Medina, Mario Piattini

versión de la metodologı́a se empleará el listado de IV. C ONCLUSIONES Y TRABAJO FUTURO


controles de seguridad de la Norma ISO 27001 [10].
En este trabajo se ha propuesto MARISMA, un marco de
Los valores calculados también se verán afectados por
trabajo que permite la tasación objetiva de un sistema de
la aplicación de factores jerárquicos y asociativos. Este
información y la generación de un análisis de riesgos objetivo
proceso está formado por cinco tareas: T1 – Calcular
que tenga en cuenta aspectos asociativos y jerárquicos y sea
el nivel de cobertura de los controles; T2 – Lista de
de bajo coste en su generación y mantenimiento.
vulnerabilidades; T3 – Probabilidad de ocurrencia de
Durante la investigación, se han estudiado las principales
la vulnerabilidad; T4 – Aplicar factores asociativos y
metodologı́as existentes en el mercado relacionadas con la
jerárquicos; T5 – Calcular el valor del activo en la
generación de análisis de riesgos y se ha realizado una revisión
compañı́a.
sistemática de los diferentes modelos y metodologı́as para
Sistema de Valoración de Activos Objetivo (SVAO) : Per-
el análisis y gestión de riesgos, con el objetivo de estudiar
mite dar un valor, de forma cuantitativa y objetiva, a cada
las propuestas centradas en riesgos asociativos y jerárquicos
uno de los activos de la compañı́a sobre la base de los
orientadas a PYMES.
principales criterios de riesgo (Confidencialidad, Integri-
dad, Disponibilidad y Legalidad). Para ello se emplearán Como resultado de esta revisión se ha podido establecer
métricas que tomen como base estos criterios de riesgo. la importancia que tiene la gestión y el análisis de los riesgos
Los valores calculados también se verán afectados por sobre la seguridad de los Sistemas de Información en el desem-
la aplicación de factores jerárquicos y asociativos. Este peño y evolución sostenible de las empresas, ya que constituye
proceso está formado por cinco tareas: T1 – Lista de un requisito básico para alcanzar la misión y los objetivos
activos de la compañı́a; T2 – Rellenar el conjunto de organizacionales en un entorno altamente competitivo.
propiedades de los activos; T3 – Calcular el valor total del Además, se han realizado reuniones y entrevistas en empre-
activo; T4 – Aplicar factores asociativos y jerárquicos; T5 sas privadas y sectores como el asegurador, para establecer las
– Calcular el valor del activo en la compañı́a. necesidades reales de las empresas y terceros, de forma que
En función de las valoraciones obtenidas por los sistemas la investigación tenga una clara aplicación práctica.
SMOV (Probabilidad de ocurrencia de vulnerabilidades) y Se ha podido validar durante la investigación la problemáti-
SVAO (Valoración de activos en base a criterios de riesgo), ca de aplicar las metodologı́as existentes en el caso de las
podemos obtener un valor de riesgo objetivo para cada uno PYMES, ya que éstas han sido concebidas para grandes
de los activos de la compañı́a. Para realizar esto, nos estamos empresas, siendo la aplicación de este tipo de metodologı́as y
basando en las investigaciones de Feng [25] sobre generali- modelos difı́cil y costosa para las PYMES [40]–[44].
zación de la teorı́a Bayesiana de probabilidad subjetiva, las El problema principal de todos los modelos de análisis y
del modelo hı́brido (probabilı́stico y posibilı́stico) de Carlsson gestión de riesgos existentes es que no están teniendo éxito a
[26], y métodos de inferencia difusa (fuzzy inference) para la hora de implantarse en PYMES, debido principalmente a
desarrollar modelos inteligentes de evaluación de riesgos en que:
lı́nea (intelligent online risk assessment models) propuestos Unos fueron desarrollados pensando en organizacio-
por Abraham [27], entre otras [28]–[36]. Todas ellas orientadas nes grandes (Grandes estándares como CRAMM [23],
a disminuir el grado de incertidumbre en la generación del ISO/IEC 27005 [17], MAGERIT [20], OCTAVE [45],
análisis de riesgos. NIST SP 800-39 [46], MEHARI [21] o COBIT [47]) y
Una vez calculado un valor de riesgo objetivo para cada en las estructuras organizativas asociadas a éstas.
activo, se podrı́a utilizar como base para el cálculo del seguro Otros [37], [39], [48] han intentando simplificar el mo-
del Sistema de Información de la compañı́a, ya que contamos delo para que pudiera ser apto para compañı́as con
también con la valoración económica objetiva de cada activo recursos limitados, pero son modelos incompletos que
calculada previamente en el sistema STA. Como comentamos sólo afrontan parte del problema, o intentan aportar unas
anteriormente, para la valoración económica de los activos nos guı́as básicas de los pasos a realizar, pero sin entrar en
estamos basando en las investigaciones de Lambrinoudakis cómo evaluar y gestionar realmente los riesgos de una
[13]. forma en la que el propio personal técnico de la empresa
Como hemos visto, los factores jerárquicos y asociativos se se pueda involucrar. Además, la mayorı́a son modelos
aplican a todos y cada uno de los sistemas que conforman teóricos y están todavı́a en desarrollo.
el núcleo de la metodologı́a. Asimismo, para el diseño y La mayorı́a de las propuestas no tienen en cuenta la
aplicación de la misma es necesario contar con una tercer necesidad de contemplar riesgos jerárquicos y asociati-
factor: La necesidad de que la metodologı́a sea dinámica, de vos, factores cruciales en la estructura y funcionamiento
forma que si hay algún cambio en el sistema (Por ejemplo, actual de las empresas (en el que cada vez tiene más peso
añadir un nuevo activo o un control que originalmente no se el uso de sistemas en Cloud), sobre todo de las PYMES.
aplicaba) se puedan recalcular los valores de riesgo y tasación No existen formas objetivas de realizar un análisis de
de una forma automática y ágil. Para definir estos aspectos nos riesgo, dejando gran parte de la responsabilidad a los
estamos basando en las investigaciones de [26], [32], [37]– consultores, de forma que los resultados no tienen validez
[39]. para terceros.
Desarrollando una metodologı́a de análisis de riesgos para que el sector asegurador pueda tasar los riesgos en las PYMES 231

La valoración económica de los activos de información [12] Hewett, R. and R. Seker, A Risk Assessment Model of Embedded
es subjetiva, al no existir formas objetivas de valorarlo. Software Systems. 29th Annual IEEE/NASA Software Engineering
Workshop (SEW’05), 2005: p. 8.
De esta forma, creemos que la investigación propuesta es [13] Lambrinoudakis, C., et al., A formal model for pricing information
el inicio de una propuesta detallada y ambiciosa, ya que systems insurance contracts. Computer Standards amp; Interfaces, 2005.
27(5): p. 521-532.
solucionará gran parte de la problemática existente con las [14] Stewart, T.A., Trying to grasp the intangible. Fortune, 1995: p. 91.
metodologı́as actuales y tendrá una clara aplicación práctica. [15] ISO/IEC13335, ISO/IEC 13335, Information Technology - Security
Las ventajas de la investigación propuesta son claras; la Techniques - Management of Information and Communications Tech-
nology Security, 2004.
posibilidad de poder tener mecanismos de tasación de sistemas [16] ISO/IEC27002, ISO/IEC 27002:2005, the international standard Code
de información y de análisis de riesgos que sean objetivos, con of Practice for Information Security Management (en desarrollo). 2007.
coste reducidos y que tengan en cuenta las interrelaciones de [17] ISO/IEC27005, ISO/IEC 27005. Information Technology - Security
Techniques - Information Security Risk Management Standard, 2008.
los activos supone un cambio radical en la forma de ver los [18] Stoneburner, G., A. Goguen, and A. Feringa. Risk Management Guide
análisis de riesgo, ya que estos se convierten en herramientas for Information Technology Systems, NIST SP 800-30. 2009.
útiles para los terceros (ej: las aseguradoras) y posibilita que [19] 4360:2004, A.N., Standars Australia and Standards New Zealand. Risk
Management2004, Sydney, NSW.
las compañı́as tengan mecanismos objetivos de comparación [20] MageritV2, Methodology for Information Systems Risk Analysis and
de los riesgos cuando contratan un proyecto a otra compañı́as. Management (MAGERIT version 2), 2006, Ministerio de Administra-
Todos los estándares y propuestas para la evaluación y ges- ciones Públicas (Spain).
[21] MEHARI. Club de la Sécurité de l’Information Français. 2009; Available
tión de riesgos estudiados en este trabajo son muy importantes, from: https://www.clusif.asso.fr/.
y sus aportaciones serán tenidas en cuenta para el desarrollo de [22] OCTAVE. CERT - Software Engineering Institute, Carnegie Mellon.
una metodologı́a que incluya todas las caracterı́sticas deseadas. 2009; Available from: http://www.cert.org/octave/.
[23] CRAMM. Siemens Enterprise Communications Ltd. ÇRAMM toolkit”.
2009; Available from: http://www.cramm.com/.
AGRADECIMIENTOS [24] [24]ISO/IEC27002, ISO/IEC 27002, Information Technology - Security
Techniques - The international standard Code of Practice for Information
Esta investigación es parte del proyecto PROMETEO finan- Security Management., 2013.
ciado por la Secretarı́a Nacional de Educación Superior, Cien- [25] Feng, N. and M. Li, An information systems security risk assessment
cia, Tecnologı́a e Innovación (SENESCYT) del Gobierno de model under uncertain environment. Applied Soft Computing, 2011.
11(7): p. 4332-4340.
Ecuador, y el proyecto SIGMA-CC (Ministerio de Economı́a [26] Carlsson, C. and R. Fullér, Predictive Probabilistic and Possibilistic
y Competitividad y el Fondo Europeo de Desarrollo Regional Models Used for Risk Assessment of SLAs in Grid Computing. IPMU
FEDER, TIN2012-36904). 2010, Part II, CCIS 81, 2010: p. 747-757.
[27] Abraham, A., Nature Inspired Online Real Risk Assessment Models for
Security Systems. EuroISI 2008, LNCS 5376, 2008.
R EFERENCIAS [28] Chang, S.-I., et al., The development of audit detection risk assessment
system: Using the fuzzy theory and audit risk model. Expert Systems
[1] Kluge, D. Formal Information Security Standards in German Medium with Applications, 2008. 35(3): p. 1053-1067.
Enterprises. in CONISAR: The Conference on Information Systems [29] Wang, P., et al., A Fuzzy Decision Model of Risk Assessment Through
Applied Research. 2008. Fuzzy Preference Relations with Users’Confidence-interval. IEEE Com-
[2] Dhillon, G. and J. Backhouse, Information System Security Management puter Society AINA’06, 2006.
in the New Millennium. Communications of the ACM, 2000. 43(7): p. [30] Deng, Y., et al., Risk analysis in a linguistic environment: A fuzzy
125-128. evidential reasoning-based approach. Expert Systems with Applications,
[3] Barlette, Y. and V. Vladislav. Exploring the Suitability of IS Security 2011. 38(12): p. 15438-15446.
Management Standards for SMEs. in Hawaii International Conference [31] Ngai, E.W.T. and F.K.T. Wat, Fuzzy decision support system for risk
on System Sciences, Proceedings of the 41st Annual. 2008. Waikoloa, analysis in e-commerce development. Decision Support Systems, 2005.
HI, USA. 40(2): p. 235-255.
[4] Wiander, T. and J. Holappa, Theoretical Framework of ISO 17799 [32] Kumar, V., M. Schuhmacher, and M. Garcı́a, Integrated Fuzzy Approach
Compliant. Information Security Management System Using Novel ASD for System Modeling and Risk Assessment. MDAI 2006, LNAI 3885,
Method., in Technical Report, V.T.R.C.o. Finland, Editor 2006. 2006: p. 227 - 238.
[5] Wiander, T. Implementing the ISO/IEC 17799 standard in practice - [33] Lin, M., Q. Wang, and J. Li, Methodology of Quantitative Risk Assess-
experiences on audit phases. in AISC ’08: Proceedings of the sixth ment for Information System Security. CIS 2005, Part II, LNAI 3802,
Australasian conference on Information security. 2008. Wollongong, 2005: p. 526 - 531.
Australia. [34] Lo, C.-C. and W.-J. Chen, A hybrid information security risk assess-
[6] Michalson, L., Information security and the law: threats and how to ment procedure considering interdependences between controls. Expert
manage them. Convergence, 2003. 4(3): p. 34-38. Systems with Applications, 2012. 39(1): p. 247-257.
[7] Volonino, L. and S. Robinson. Principles and Practice of Information [35] Patel, S.C., J.H. Graham, and P.A.S. Ralston, Quantitatively assessing
Security. in 1 edition, Anderson, Natalie E. 2004. New Jersey, EEUU. the vulnerability of critical information systems: A new method for
[8] Spinellis, D. and D. Gritzalis. nformation Security Best Practise Disse- evaluating security enhancements. International Journal of Information
mination: The ISA-EUNET Approach. in WISE 1:First World Confe- Management, 2008. 28(6): p. 483-491.
rence on Information Security Education. 1999. [36] Salmeron, J.L. and C. Lopez, A multicriteria approach for risks as-
[9] A., S.-O., et al. Revisión Sistemática de Metodologı́as y Modelos para el sessment in ERP maintenance. Journal of Systems and Software, 2010.
Análisis y Gestión de Riesgos Asociativos y Jerárquicos para PYMES. in 83(10): p. 1941-1953.
XII Reunión Española sobre Criptologı́a y Seguridad de la Información [37] Nachtigal, S., E-business Information Systems Security Design Paradigm
(RECSI12). 2012. Donostia, San Sebastián (España): Septiembre, 2012. and Model. Royal Holloway, University of London, Technical Report,
[10] ISO/IEC27001, ISO/IEC 27001, Information Technology - Security 2009: p. 347.
Techniques Information security management systemys - Requirements., [38] Arikan, A.E., Development of a risk management decision support
2013. system for international construction projects. Middle East Technical
[11] Alhawari, S., et al., Knowledge-Based Risk Management framework University, 2005: p. 118.
for Information Technology project. International Journal of Information [39] Ma, W.-M., Study on Architecture-Oriented Information Security Risk
Management, 2012. 32(1): p. 50-65. Assessment Model. ICCCI 2010, Part III, LNAI 6423, 2010: p. 18-226.
232 Antonio Santos-Olmo, Luis Enrique Sánchez, Eduardo Fernández-Medina, Mario Piattini

[40] Batista, J. and A. Figueiredo, SPI in very small team: a case with CMM.
Software Process Improvement and Practice, 2000. 5(4): p. 243-250.
[41] Hareton, L. and Y. Terence, A Process Framework for Small Projects.
Software Process Improvement and Practice, 2001. 6: p. 67-83.
[42] Calvo-Manzano, J.A., et al., Experiences in the Application of Software
Process Improvement in SMES. Software Quality Journal., 2004. 10(3):
p. 261-273.
[43] Tuffley, A., B. Grove, and M. G., SPICE For Small Organisations.
Software Process Improvement and Practice, 2004. 9: p. 23-31.
[44] Mekelburg, D., Sustaining Best Practices: How Real-World Software Or-
ganizations Improve Quality Processes. Software Quality Professional,
2005. 7(3): p. 4-13.
[45] Alberts, C.J. and A.J. Dorofee, OCTAVE Criteria, Version 2.0, 2001.
[46] NIST, Security Metrics Guide for Information Technology Systems,
2004.
[47] COBITv4.0, Cobit Guidelines, Information Security Audit and Control
Association, 2006.
[48] Abdullah, H., A Risk Analysis and Risk Management Methodology
for Mitigating Wireless Local Area Networks Intrusion Security Risks.
University of Pretoria, 2006: p. 219.
RECSI 2014, Alicante, 2-5 septiembre 2014

Arquitectura de Seguridad Multinivel:


Una Guı́a para las Organizaciones Modernas
Robson de Oliveira Albuquerque1,2 , Fábio Buiati1,2 , Luis Javier Garcı́a Villalba1
1
Grupo de Análisis, Seguridad y Sistemas (GASS), Departamento de Ingenierı́a del Software e Inteligencia Artificial
Facultad de Informática, Despacho 431, Universidad Complutense de Madrid (UCM)
Calle Profesor José Garcı́a Santesmases s/n, Ciudad Universitaria, 28040 Madrid, España
Email: {robson, fabio, javiergv}@fdi.ucm.es

2
Faculdade de Tecnologia, Universidade de Brası́lia (UnB)
Curso de Engenharia de Redes de Comunicação, Departamento de Engenharia Elétrica
CEP: 70910-900 - Brası́lia -DF - Brasil
Email: {robson, fabio.buiati}@redes.unb.br

Resumen—La información puede considerarse como el activo Normas como la BS7799 e ISO 27000 [5] son guı́as amplia-
más importante de cualquier organización moderna. Garantizar mente reconocidas en el área de la seguridad de la información.
la seguridad de esta información implica preservar la confidencia- Plataformas como ITIL y COBIT [6] son utilizadas también en
lidad, la integridad y la disponibilidad de la misma, trı́ada cono-
cida como CIA en inglés. Este trabajo presenta una arquitectura la administración de las tecnologı́as de la información con el
de seguridad multinivel motivado por la necesidad de considerar fin de guiar a las organizaciones a aumentar su productividad
la información desde diferentes puntos de vista con el fin de y, en algunos aspectos, ayudan a mantener la seguridad de la
protegerla. Además, se sugiere una nueva clasificación de los información en términos de organización y metodologı́a [7].
elementos de información, operaciones, entidades y componentes Sin embargo, el cumplimiento de las normas no garantiza
que se pueden integrar para mostrar las distintas fuentes de
riesgos al tratar con información sensible. Se muestra también en absoluto la seguridad. Para hacer frente a la seguridad de
una visión general de cómo se trata y se representa actualmente la información se requiere ir más allá del cumplimiento de
la información y por qué es tan difı́cil garantizar la seguridad normas o de mejores prácticas.
en todos los aspectos del tratamiento de la información. Respecto a las arquitecturas de seguridad de la información,
Palabras clave—Arquitectura, confianza, seguridad de la in- el Zero Trust Model for Cybersecurity [8] sostiene un mensaje
formación. (Architecture, trust, information security)
muy claro: dejar de confiar en los paquetes de datos como si
I. I NTRODUCCI ÓN fuesen personas. La idea subyacente es que el concepto de
La gestión de seguridad de la información es fundamental en redes internas y externas debe cambiarse porque uno asume
cualquier organización. Aun ası́, son muy pocos los modelos que todo el tráfico no es de confianza. Zero Trust viene a
formales que ayudan a proteger eficazmente la información. decir que los datos internos deben ser protegidos contra abusos
Una manera de tratar el problema de la seguridad de la procedentes de la red interna y que los datos externos deben
información es gestionar los riesgos desde diferentes puntos ser protegidos en las redes públicas.
de vista. Estos riesgos están asociados a fenómenos naturales, [9] señala que existe una necesidad de mejorar la seguridad
riesgos tecnológicos y riesgos humanos [4]. Teniendo en de la información a nivel administrativo y organizacional. Por
cuenta estos aspectos, este trabajo propone una arquitectura su parte, [11] [10] advierten de un cambio en la manera
multinivel para la gestión de riesgos de seguridad en las de cómo las personan se relacionan con la seguridad de la
organizaciones modernas. Este trabajo está organizado en 7 información, convirtiéndose además en el centro del problema.
secciones, siendo la primera la presente introducción. La Con el fin de proteger la información, es muy importante
Sección II recoge los trabajos relacionados más representa- entender la forma en que se trata en el mundo digital. Desde
tivos. La Sección III propone una arquitectura de seguridad la perspectiva del usuario, la información puede ser un texto,
multinivel. La Sección IV presenta un modelo de confianza una imagen o una combinación de ambos. Internet redefinió la
para la arquitectura multinivel. Por último, la Sección V forma de representarla y de recuperarla [12]. La representación
muestra las principales conclusiones que se extraen de este de la información requiere de complementos estructurales o
trabajo. semánticas adicionales, que transforman los datos en algo
significativo para los seres humanos.
II. T RABAJO R ELACIONADO Considerando todo lo expuesto anteriormente, las arquitec-
Mucho se ha dicho sobre normativas y estándares en segu- turas de seguridad actuales no logran gestionar los riesgos,
ridad de la información y sobre la importancia de su uso. Las las polı́ticas, las personas y los activos de forma correcta.
normas de seguridad sirven como una guı́a para el desarrollo Para intentar paliar esta carencia, este trabajo propone una
de un sistema de gestión de seguridad de la información. arquitectura de seguridad de información multinivel que trata
234 R. de Oliveira, F. Buiati, L. J. Garcı́a

de conectar todas las piezas entre sı́ respecto a la seguridad de Considerando la importancia que tienen los datos actualmente,
la información. La especificación del modelo en niveles es im- una gran cantidad de información se puede recuperar a partir
portante para ver cómo todos los elementos de la arquitectura de los datos y los sistemas de información. Utilizando herra-
de seguridad interactúan. mientas y técnicas adecuadas, es posible crear además nuevos
conocimientos a partir de los datos que, a simple vista, no
III. A RQUITECTURA DE S EGURIDAD DE LA
parecen tener ningún sentido.
I NFORMACI ÓN
Cuando se trata de activos de información es muy impor-
La forma en la que vemos la seguridad está basada en tante que estos sean identificados y etiquetados, y la relación
una arquitectura multinivel. En este enfoque cada elemento es con la información debe ser claramente entendida por la
una pieza del rompecabezas que debe estar bien conectada, organización.
de forma que la seguridad de información pueda ser vista
Las redes de comunicación conectan los datos, la infor-
como un todo indivisible. La Figura 1 ilustra la arquitectura
mación y sus activos para que cualquier persona con acceso
de seguridad de la información propuesta con sus niveles.
autorizado pueda explorarlas. Quién controla (personas) o
cómo se controla (proceso, hardware o software) la red es lo
que la hace peligrosa o no. Ası́ que la creación de perı́metros
de redes, polı́ticas y otros mecanismos de defensa sigue siendo
una forma de controlar lo que entra y sale de la red. El uso
de estos mecanismos es clave para entender lo que sucede en
la transmisión dentro de los sistemas de información.
También en este nivel la seguridad tiene como foco salva-
guardar la confidencialidad, la integridad y la disponibilidad de
la información, debiendo aplicarse de forma efectiva en toda la
cadena. La confidencialidad se refiere a la limitación de acceso
a la información y a la divulgación a los usuarios autorizados.
La integridad se refiere a la fiabilidad de los recursos de
información, es decir, que los datos no han sido modificados
inapropiadamente, ya sea por accidente o deliberadamente. Por
último, la disponibilidad se refiere a la disponibilidad de los
recursos de información.
Las extensiones de seguridad de la información son nuevos
atributos o propiedades que protegen la información y los
sistemas, pero no se limitan a ellos. La autenticación, el
control de acceso, el no repudio, la privacidad, el anonimato
y la autorización son servicios que se caracterizan como
extensiones de seguridad.

III-B. Nivel Intermedio


Siguiendo un recorrido descendente nos encontramos con
este nivel que es la parte de la arquitectura que nos ayudará a
definir cuestiones tales quién, cómo, por qué y qué tecnologı́as
pueden utilizarse para garantizar la seguridad de la informa-
ción en el nivel superior. Los siguientes ı́tems son analizados:
polı́ticas de seguridad, procesos, personas y tecnologı́a.
Figura 1. Arquitectura de Seguridad Multinivel
Una polı́tica de seguridad de la información es un do-
cumento de alto nivel que describe los requisitos o reglas
III-A. Nivel Superior que se deben cumplir para garantizar la seguridad de la
El nivel superior es la base para empezar a pensar en la información en una organización. En general, esta polı́tica es
seguridad de información de cualquier organización. Sin la muy especı́fica y cubre una única organización. La polı́tica
adecuada comprensión de lo que son los datos, la información, de seguridad también está relacionada con los problemas
los activos de información, etc., no hay cómo hablar de de gestión y de control de la información, una vez que la
seguridad de la información, simplemente porque uno no sabe protección de la misma está directamente relacionada con la
qué hay que proteger. Es importante señalar que el enfoque de cultura de la organización.
“proteger todo” no es eficaz y es, además, bastante costoso. La polı́tica de seguridad debe explicar la necesidad de la se-
En general, en este nivel es donde se localizan los datos guridad de la información para todos los usuarios dentro de la
importantes o con valor para las organizaciones o las personas. organización y complementar los objetivos de la organización,
Arquitectura de Seguridad Multinivel: Una Guı́a para las Organizaciones Modernas 235

siendo necesario que esté alineada con el plan estratégico de de seguridad de la información. El proceso de auditorı́a es
la organización [13]. clave para encontrar riesgos, fallos técnicos, polı́ticas, pro-
En la seguridad de la información los procesos son una cedimientos y problemas normativos en una organización.
manera formal de identificar, medir, gestionar y controlar los Hay que tener en cuenta que la auditorı́a es un proceso que
riesgos relacionados con la información o su valor para la nunca termina. Cuando se realiza la auditorı́a, uno debe estar
organización. Los procesos incluyen mecanismos formales e preparado para abarcar temas desde seguridad fı́sica de los
informales (grandes o pequeños, simples o complejos, ...) para centros de datos hasta la seguridad lógica, incluyendo los
hacer las cosas y proporcionar un vı́nculo vital para todas las perı́metros de red, la configuración del sistema y los sistemas
interconexiones dinámicas. de información.
Las personas son el principal bloque del rompecabezas Otra de las tareas realizadas en este nivel es la monitori-
y representan el recurso humano. En general, una persona zación continua. Se trata de una actividad de mantenimiento
diseña e implementa cada parte de la polı́tica de seguridad, de los conocimientos de seguridad de la información, vulne-
crea y mantiene los procesos, los activos de información, la rabilidades, amenazas y riesgos asociados [14]. Es un punto
tecnologı́a utilizada, etc. Los problemas de seguridad afectan clave de apoyo a la toma de decisiones relativas a la gestión
a las personas, sus relaciones, sus valores y sus comporta- de riesgos de una organización.
mientos. Cuando se trabaja con seguridad de la información La monitorización continua se inicia definiendo qué, cómo,
es importante hacer frente a puntos como las estrategias rela- por qué y cuándo monitorizar los activos de información o
cionadas con la contratación, el acceso, las responsabilidades, cualquier parte de la arquitectura. Se apoya en tecnologı́a,
la formación, el despido, las sanciones y todo lo que sea procesos, procedimientos, entornos operativos y personas.
importante abordar para ayudar a mantener la estrategia de También ayuda en el establecimiento de prioridades y gestiona
seguridad de la información de la organización. el riesgo de forma coherente en toda la organización.
La tecnologı́a es el elemento del rompecabezas constituido
por un conjunto de sistemas de información, aplicaciones, IV. C ONFIANZA
herramientas, infraestructura y mecanismos de defensa que la Desde el punto de vista de la seguridad de la información, la
organización utiliza para llevar a cabo su misión de proteger confianza puede tener un valor de cero o de uno. Uno confı́a o
la información. Los elementos tecnológicos son susceptibles a no en sus sistemas de información, redes, activos, etc. El “tal
frecuentes cambios y actualizaciones y pueden hacerse obsole- vez” debe evitarse a toda costa. Por lo general, la confianza se
tos rápidamente. La tecnologı́a puede ser la parte fundamental adquiere mediante la observación empı́rica, por prueba formal
de una infraestructura de la organización. La tecnologı́a se usa de los sistemas, etc. [15].
también para resolver las amenazas de seguridad y los riesgos. La confianza y la seguridad están estrechamente relacio-
Es muy importante tener en cuenta que la tecnologı́a por nadas [15]. Si se consideran los objetivos de seguridad,
sı́ misma no hace nada. Debe ser vista como una parte está claro que los aspectos de confianza están conectados con
de un sistema complejo que tiene necesidades especı́ficas la seguridad ya que mantener la información segura depende
para proteger lo que es valioso en la organización. Además, de las personas, las extensiones de seguridad (autenticación,
la tecnologı́a debe trabajar conjuntamente con personas y autorización, control de acceso, no repudio, etc.).
procesos completando un ciclo, todos ellos guiados por la Considerando lo anteriormente expuesto, no se puede pro-
polı́tica de seguridad de la información de la organización. teger la información sin ser capaz de comprender todo el
ciclo de vida que tiene la información. Hay que tener en
III-C. Nivel Inferior cuenta una visión detallada si se desea más seguridad en el
Este nivel trata de las actividades diarias y las medidas sistema; uno debe ser capaz de representar, procesar y utilizar
que se deben adoptar en caso de un problema especı́fico. Las la información en un entorno donde las personas, la tecnologı́a,
prácticas de seguridad son guı́as para mantener la información los activos de información, el hardware, el software, etc., están
segura. Sin embargo, las normas, procedimientos de monitori- conectados entre sı́. Y, paralelamente, hay que tomar medidas
zación y auditorı́a dan a los administradores las herramientas de seguridad para garantizar su protección. Ahı́ es donde la
necesarias para ayudarles a mantener la información, los acti- arquitectura de seguridad de la información multinivel con
vos, las redes, los sistemas, etc., más seguros. Los siguientes confianza entra en escena porque sólo proteger una parte de
ı́tems son analizados: normativas de seguridad, auditorı́a y la información se ha demostrado ineficaz, como se ha visto
monitorización continua. recientemente [1][2].
Básicamente, una normativa define cómo deberı́an ser las La confianza en general es parte del rompecabezas cuando
cosas y cómo hay que valorarlas. También tiene que ver con hay un conocimiento suficiente de la información, los sistemas,
la forma de clasificar las acciones en correctas o equivocadas. la tecnologı́a y los demás componentes que ayudan hacer
Las normativas son primordiales para la priorización de los afirmaciones como “totalmente seguro” o la información es
objetivos y para definir cómo se deben hacer las cosas. segura porque se cumple alguna condición en particular.
La auditorı́a de la seguridad de la información es un proceso Esta arquitectura en niveles le permite a uno hacer frente
que determina la valoración cualitativa y cuantitativa del a determinados componentes y aislar problemas relacionados
estado actual del sistema analizado según criterios especı́ficos con cada uno de ellos.
236 R. de Oliveira, F. Buiati, L. J. Garcı́a

V. C ONCLUSIONES R EFERENCIAS
La tarea de garantizar la seguridad de la información no [1] G. Greenwald, E. MacAskill, L. Poitras, “Edward Snowden: the whistle-
es un fin en sı́ mismo; es un medio para lograr un fin [16]. blower behind the NSA surveillance revelations,” The Guardian, Vol. 9,
2013.
Se trata también de un tema en constante evolución, debido [2] J.-T. Richelson, “The Snowden Affair. Web Resource Documents the
a la creciente magnitud y complejidad de las amenazas de Latest Firestorm over the National Security Agency,” National Security
seguridad de la era digital. Como se observa en la actualidad, Archive Electronic Briefing Book, No. 436, 2013.
[3] Gartner Press Release. “Gartner Says Cloud-Based Security Services
el campo de investigación de la seguridad de información es Market to Reach 2.1 Billion dollars in 2013”, Stamford, Conn., 2013.
cada vez más importante porque el mundo está interconectado Disponible en ttp://www.gartner.com/newsroom/id/2616115.
con redes de comunicación que se utilizan para la transmisión [4] B. Blakley, E. McDermott, D. Geer, “Information security is information
risk management,” ACM Proceedings of the Workshop on New security
de información crı́tica y sensible. Paradigms, pp. 97–104, 2001.
En este trabajo se ha introducido una arquitectura de se- [5] M. Whitman, H. Mattord, “Management of Information Security,”
guridad multinivel donde los elementos de seguridad de la Cengage Learning, Fourth Edition, 2013.
[6] R. Parvizi, F. Oghbaei, S. R. Khayami, “Using COBIT and ITIL
información están interconectados siendo útiles para la gestión frameworks to establish the alignment of business and IT organizations
de riesgos en los diferentes niveles de la organización. De esta as one of the critical success factors in ERP implementation,” 5th
forma, la seguridad de la información puede ser vista como Conference on Information and Knowledge Technology (IKT), 2013 pp.
274–278, 2013.
un todo. [7] Department of Communications, Information Technology and the Arts
Gobierno, organizaciones y empresas que consideran la and the Trusted Information Sharing Network. “Secure Your Infor-
mation: Information Security Principles for Enterprise Architecture,”
gestión de seguridad de la información necesitan un enfoque Report, Australia, 2007.
sistemático para abordar de manera coherente la seguridad en [8] The National Institute of Science and Technology (NIST), “Developing
cada nivel, disminuyendo ası́ los riesgos de administración y a Framework to Improve Critical Infrastructure Cybersecurity. Submitted
by Forrester Research. In Response to RFI# 130208119-3119-01”,
mejorando la eficiencia de la gestión de la seguridad. Bajo esta 2013. Disponible en http://csrc.nist.gov/cyberframework/rfi comments/
perspectiva, la arquitectura de seguridad de la información en 040813 forrester research.pdf.
niveles puede ser utilizada como una guı́a para obtener mejores [9] R.-M. Ahlfeldt, P. Spagnoletti, G. Sindre. “Improving the Information
Security Model by using TFI”, In the New Approaches for Security, Pri-
resultados en la protección de la información. vacy and Trust in Complex Environments. IFIP International Federation
for Information Processing, Vol. 232, pp. 73–84, 2007.
AGRADECIMIENTOS [10] R. Blakley, A. Johnston, P. Lowry, Q. Hu, M. Warkentin, R. Basker-
Los autores también agradecen el apoyo proporcionado por ville, “Future directions for behavioral information security research,”
Computers & Security, Volume 32, February 2013, pp. 90–101.
el Laboratorio de Tecnologı́as de Decisión de la Universidad [11] S. Aurigemma, R. Panko, “A Composite Framework for Behavioral
de Brasilia (LATITUDE / UnB). Asimismo, Fábio quiere Compliance with Information Security Policies”, In proceedings of
agradecer la financiación que le brinda el Programa Nacional the 45th Hawaii International Conference on System Sciences. IEEE
Computer Society, 2012.
de Post-Doctorado de Brasil (PNPD/CAPES). El Grupo de [12] H. Chu, “Information Representation and Retrieval in the Digital Age”,
Investigación GASS agradece la infraestructura proporcionada Information Today, Inc, Second Edition, 2010.
por el Campus de Excelencia Internacional (CEI) Campus [13] ISACA. “An Introduction to the Business Model for Information Se-
curity”, 2009, Disponible en http://www.isaca.org/Knowledge-Center/
Moncloa - Clúster de Cambio Global y Nuevas Energı́as BMIS/Documents/IntrotoBMIS.pdf.
(y, más concretamente, el sistema EOLO como recurso de [14] The National Institute of Science and Technology (NIST), “Information
computación de alto rendimiento HPC - High Performance Security Continuous Monitoring (ISCM) for Federal Information Sys-
tems and Organizations”, NIST Special Publication, pp. 800–137, 2011.
Computing), infraestructura financiada por el Ministerio de [15] P. Lamsal, “Understanding Trust and Security”, Department of Computer
Educación, Cultura y Deporte (MECD) y por el Ministerio Science. University of Helsinki, Finland, 2001.
de Economı́a y Competitividad (MINECO). [16] T. Peltier, “Information security fundamentals,” CRC Press, 2013.
RECSI 2014, Alicante, 2-5 septiembre 2014

Hacia la seguridad criptográfica en sistemas DaaS


Rafael Álvarez Juan Santonja Antonio Zamora
Departamento de Ciencia de la Departamento de Ciencia de la Departamento de Ciencia de la
Computación e Inteligencia Artificial Computación e Inteligencia Artificial Computación e Inteligencia Artificial
Universidad de Alicante Universidad de Alicante Universidad de Alicante
Email: ralvarez@dccia.ua.es Email: jsl2@alu.ua.es Email: zamora@dccia.ua.es

Resumen—El nuevo paradigma de computación en la nube tanto consultas de información a la base de datos como de
posibilita la prestación de servicios por terceros. Entre ellos, se modificación de estructura.
encuentra el de las bases de datos como servicio (DaaS) que Son muchos los RDBMS comerciales existentes en la ac-
permite externalizar la gestión y alojamiento del sistema de
gestión de base de datos. tualidad, entre los más extendidos se encuentran MySQL (y
Si bien esto puede resultar muy beneficioso (reducción de MariaDB), PostgreSQL, Oracle, DB2, INFORMIX y Microsoft
costes, gestión simplificada, etc.), plantea algunas dificultades SQL Server. Todos ellos, junto a las caracterı́sticas propias del
respecto a la funcionalidad, el rendimiento y, en especial, la sistema de gestión de datos, poseen controles de seguridad
seguridad de dichos servicios. como la definición de roles de acceso, logs de auditorı́a o, en
En este trabajo se describen algunas de las propuestas de los más avanzados, sistemas de cifrado de la información.
seguridad en sistemas DaaS existentes y se realiza un análisis de
sus caracterı́sticas principales, introduciendo un nuevo enfoque Curino et al. [4] indican que el uso de sistemas DaaS en
basado en tecnologı́as no exclusivamente relacionales (NoSQL) el cloud es interesante desde el punto de vista económico por
que presenta ventajas respecto a la escalabilidad y el rendimiento. dos motivos, fundamentalmente: el primero, relacionado con
Palabras clave—Base de datos (database), Cloud Computing, la reducción de consumo energético ya que los costes son
Cifrado homomórfico (Homorphic encryption). menores cuando los recursos son compartidos por varios usua-
rios; el segundo, relacionado con los costes de gestión, tanto
I. I NTRODUCCI ÓN de licencias como gastos administrativos que son menores en
sistemas compartidos.
En la actualidad estamos asistiendo al rápido despliegue del Independientemente de los motivos económicos, existen
modelo de computación llamado cloud computing (compu- una serie de factores (véase [5]) que incentivan el uso de
tación en la nube). Este paradigma de computación ofrece servicios DaaS: la escalabilidad horizontal que permite que
un nuevo modelo de prestación de servicios tecnológicos los recursos puedan ser ampliados casi sin lı́mite en el cloud;
y de negocio. A medida que va creciendo la oferta de la velocidad de despliegue de aplicaciones e infraestructura
proveedores, también lo hace la diversidad de servicios que que es mucho más rápida en sistemas compartidos que en
ofrecen, ası́ tenemos servicios SaaS (software as a service), sistemas propios; la flexibilidad en la contratación de servicios
IaaS (Infrastructure as a Service), PaaS (Platform as a Service) especı́ficos evitando los costes de aquellos elementos que
y DaaS (Database as a Service). En DaaS, el modelo permite no son necesarios y, por último, la mayor fiabilidad de los
ofrecer bases de datos como servicio. proveedores de cloud que disponen de sistemas redundantes
Es este último caso el que resulta más interesante dada la de respaldo e infraestructura, mejorando la disponibilidad de
problemática relacionada tanto con la seguridad como con la los servicios.
funcionalidad cuando externalizamos una base de datos. En Aun cuando son muchas las ventajas, existen una serie de
concreto, los sistemas de bases de datos relacionales son los inconvenientes (véase [5]) que deben considerarse a la hora de
más utilizados para modelar problemas reales y administrar elegir un sistema DaaS, como son la velocidad, el rendimiento,
datos dinámicamente. los costes asociados a la gestión de grandes volúmenes de
Los sistemas de gestión de bases de datos relacionales información (Big Data) y la pérdida de control sobre la
(RDBMS, Relational Database Management Systems) son uno información. Es este último aspecto, el de la seguridad, el
de los elementos esenciales en los sistemas de computación eje fundamental del presente trabajo.
actuales, ya que permiten almacenar y administrar datos en Al externalizar un sistema relacional y ubicarlo en el cloud
forma de tablas, de forma razonablemente sencilla mediante la la información queda expuesta al administrador del sistema o
definición de relaciones entre tuplas y elementos estructurales cualquier elemento con acceso directo a la base de datos. Una
que limitan la existencia de duplicados, permitiendo la unión posible solución para proteger los datos, garantizando la con-
y búsqueda de elementos dentro de las tablas de forma óptima. fidencialidad de los mismos, consiste en cifrar la información;
Las bases de datos relacionales utilizan el lenguaje de con- con el inconveniente de que al realizar dicha acción, algunas
sulta estructurado o SQL (Structured Query Language). Dicho de las propiedades básicas de los sistemas relacionales no son
lenguaje, basado en el álgebra relacional, permite realizar viables. El reto consiste, pues, en construir un esquema de
238 R. Álvarez, J. Santonja, A. Zamora

cifrado de la base de datos que permita la viabilidad de dichas ejemplo, el sistema homomórfico parcial, requiere para el
propiedades (véase [16]). sistema más pequeño (512 dimensiones) un ancho de palabra
Entre esas propiedades básicas destacamos las siguientes de 200.000 bits, lo cual muestra la magnitud del problema.
operaciones: La clave pública usada en el sistema totalmente homomórfico
1. Relaciones entre tablas: Las tablas se relacionan entre tiene un tamaño de 17 MB y necesita 2.4 segundos para
sı́ mediante claves. generarse. El sistema mayor (32768 dimensiones) requiere dos
a) Clave Primaria: permite identificar un registro de horas para generar la clave y ocupa 2.3GB [2].
forma única.
b) Clave Ajena: aparece en una tabla haciendo refe- II-C. Propuesta de L.M.X. Rodrı́guez
rencia a la información de otra tabla. El esquema de cifrado para bases de datos relacionales
2. Operación Insertar: Añadir registros a una tabla propuesto por Rodrı́guez (véase [16]) pretende conseguir dos
3. Operación Consulta: Seleccionar registros dentro de una objetivos: garantizar la confidencialidad de la información
tabla y permitir que las consultas puedan ser procesadas por un
a) Consulta de atributos alfanuméricos sistema de base de datos relacional convencional. La propuesta
b) Consulta de intervalos utiliza diferentes tipos de primitivas criptográficas: un cifrador
c) Consulta de agregación por bloques (AES), un cifrador homomórfico (Paillier [11]) y
4. Operación Modificar: Actualización de datos de una un cifrador que preserva el orden (Boldyreva [3]). Cada uno
tabla. permite solventar limitaciones distintas a la hora de realizar
5. Operación Eliminar: Borrado de registros consultas relacionales sobre un sistema de bases de datos
cifrado.
Existen diversas soluciones a este problema propuestas en
Cifrador por bloques (AES): dado que los cifradores por
la literatura. En este trabajo se describen y analizan algunas de
bloques en modo directo (ECB) son deterministas (obtienen
ellas y se propone una nueva alternativa basada el paradigma
siempre el mismo texto cifrado para el mismo texto en claro
no exclusivamente relacional (NoSQL).
con igual clave), permiten realizar las consultas que involucren
II. S ISTEMAS DAA S RELACIONALES campos alfanuméricos tanto para búsqueda (SELECT) como
II-A. Sistemas con cifrado en descanso (at rest) condicionales (WHERE). En esta propuesta se ha seleccionado
el algoritmo AES por su buen rendimiento y ser un estándar
Muchos de los productos existentes basan su seguridad bien conocido.
exclusivamente en el cifrado del almacenamiento, de esta
Cifrador basado en homomorfismos (Paillier): en las
forma los datos se descifran de forma transparente al ser
bases de datos es habitual realizar operaciones de totales y
accedidos y se cifran al ser guardados, permaneciendo en claro
subtotales. Para permitir que el servidor realice operaciones
mientras perduren en memoria. A pesar de la eficiencia en
que impliquen sumas, en esta propuesta se emplea un cripto-
el rendimiento, el principal inconveniente que plantea este
sistema homomórfico bajo la suma, como el de Paillier [11],
modelo consiste en que el proveedor elige (y, por tanto,
en el que el resultado del producto de dos textos cifrados es
dispone de) las claves de cifrado.
idéntico al cifrado de la suma de esos textos sin cifrar; de esta
Aunque este modelo viene motivado por exigencias nor-
manera se pueden sumar los datos sin conocerlos en claro.
mativas, no resulta adecuado en aquellos casos en los que el
Cifrador que preserva el orden (Boldyreva): en este
proveedor no deba tener acceso a los datos, como ocurre en
tipo de cifrador, el texto cifrado presenta la caracterı́stica de
arquitecturas de tipo DaaS con datos sensibles.
preservar el orden numérico del texto en claro; posibilitando
Este modelo es adecuado para la protección ante un eventual
la realización de consultas que impliquen la evaluación de un
robo de medios fı́sicos, como unidades de disco o cintas de
intervalo de información, estableciendo lı́mites tanto inferiores
seguridad, ya que impedirı́a el acceso a la información en
como superiores.
claro. Las operaciones que realiza el sistema relacional hacen
La propuesta de Rodrı́guez [16] consta de tres elementos
uso de los datos en memoria, que se encuentran en claro.
esenciales: el proceso de cifrado, el modelo de almacenaje y
Algunas de las soluciones más utilizadas para este modelo
el proceso de consulta de la información cifrada.
son Oracle [10] y SQL Server [9].
El proceso de cifrado recibe como entrada un registro de
II-B. Esquema de cifrado homomórfico completo texto en claro el cual es analizado para elegir el méto-
Aun cuando el modelo no tiene una implementación práctica do de cifrado apropiado para cada campo: los campos
viable en la actualidad, la propuesta de Gentry [6] resolverı́a numéricos se cifran simultáneamente mediante el cifrador
completamente el reto propuesto. Consiste en un sistema de basado en homomorfismos y el que preservan el orden
cifrado homomórfico, capaz de soportar tanto las operaciones mientras que los alfanuméricos se cifran con el cifrador
de suma como de producto. por bloques.
El principal problema de esta propuesta radica, como se El modelo de almacenaje se ve condicionado por el
ha indicado, en que su implementación no es viable con proceso de cifrado, dado que por cada campo numérico
los medios computacionales disponibles en la actualidad. Por en claro se generan dos campos cifrados. El acceso a
Hacia la seguridad criptográfica en sistemas DaaS 239

cada campo cifrado se realiza en función de la operación ejecución de consultas muy aceptables. A pesar de ello, hay un
requerida en la consulta. conjunto de consultas básicas, relacionadas con ordenaciones
El proceso de consulta de información cifrada requiere y uniones, que no pueden ejecutarse.
la traducción de dichas consultas. El cliente solicita la Por otra parte el tamaño de la base de datos aumenta
consulta en claro y se analiza para determinar qué tipo significativamente, debido a que un mismo campo necesita
de algoritmo aplicar: para el caso de restricciones al- ser cifrado en varias capas.
fanuméricas se accede a los campos cifrados con AES,
para las comparaciones numéricas se accede a los campos III. A N ÁLISIS Y ENFOQUE N O SQL
cifrados con Boldyreva y, finalmente, para los cálculos Se puede identificar algunos problemas en las propuestas
que impliquen sumas se accede a los campos cifrados anteriores.
con Paillier. En el caso de los sistemas con cifrado en descanso (at rest,
Las limitaciones identificadas en el desarrollo de esta pro- sección II-A), es necesario confiar en el proveedor puesto que
puesta incluyen la imposibilidad de la ejecución de determina- es éste el que elige y custodia las claves de cifrado. Además, al
das consultas, como búsquedas textuales mediante expresiones ser sistemas de gestión de bases de datos puramente relaciona-
regulares, multiplicaciones, divisiones, números en coma flo- les, no han sido diseñados para ser escalables bajo el modelo
tante y fechas. de computación en la nube; es sobre el cliente donde recae
la responsabilidad de la escalabilidad, diseñando y adaptando
II-D. CryptDB el esquema de su base de datos de forma especial para
En la propuesta de Popa, et al. (véase [12], [13], [14], [15]) poder escalar de forma limitada mediante particionamiento
se desarrolla un sistema para garantizar la confidencialidad de (sharding) u otras técnicas similares. No parece ser la mejor
la información en base a la ejecución de consultas SQL sobre solución para el modelo DaaS.
datos cifrados utilizando un conjunto de esquemas de cifrado Si bien la propuesta de Rodrı́guez (sección II-C) soluciona
eficientes. el problema de la confianza, puesto que es el cliente quien
Este sistema permite gestionar las claves de cifrado a nivel elige y custodia las claves de cifrado, presenta el mismo
de usuario, de modo que en una tabla puede haber datos inconveniente frente a la escalabilidad horizontal del sistema.
de varios usuarios y sólo el usuario autorizado es capaz de Por otra parte, el uso de criptografı́a homomórfica implica
descifrar los datos que le pertenecen. una gran carga computacional, si bien, en esta propuesta no
CryptDB está formado por dos elementos: el sistema de se cuantifica suficientemente el impacto sobre el rendimiento
bases de datos y el servidor de aplicaciones; y tiene dos del sistema no cifrado.
objetivos fundamentales: limitar el acceso a la información El sistema CryptDB (sección II-D) delega toda la gestión de
por parte del proveedor de la base de datos y mantener la seguridad al proxy traductor de consultas; por lo tanto, dicho
confidencialidad en caso de que la seguridad de todo el sistema proxy debe estar gestionado y alojado por el cliente para evitar
se viera comprometida. tener que confiar en el proveedor DaaS. Bajo este modelo, el
Al igual que en la propuesta de Rodrı́guez, los campos son back-end relacional cifrado permite escalabilidad horizontal
cifrados de distintas maneras en función del tipo de dato y utilizando técnicas tradicionales como particionamiento (al
la operación a realizar. Para ello, se define una estructura igual que los sistemas con cifrado en descanso y la propuesta
de capas: igualdad, orden, búsqueda y suma. Cada dato es de Rodrı́guez) pero el proxy se convierte en un cuello de
cifrado tantas veces como sea necesario (mediante el algoritmo botella por el que pasan absolutamente todas las transacciones
adecuado) en función de las operaciones que se puedan realizar al back-end cifrado. Por otra parte, una gestión eficiente del
sobre el mismo. proxy obligarı́a al cliente a tener y mantener su propio sistema
Los cifrados que se pueden encontrar en las capas son: de computación en cloud privado, que es, precisamente, lo que
aleatorio, determinı́stico, preservando el orden, homomórfico se quiere evitar al adoptar una estrategia DaaS.
y para relaciones. Por todo lo anterior, consideramos que una posible solución
La arquitectura del sistema consta de dos partes: un proxy a los sistemas DaaS seguros se encuentra en el uso de
de base de datos y el sistema de gestión de bases de datos sistemas no exclusivamente relacionales (NoSQL, véase [1]),
relacional sin modificar. El proxy se encarga de traducir las ya que están diseñados desde su origen para la escalabilidad
consultas al formato adecuado para su ejecución en el sistema horizontal en sistemas de computación en la nube.
de gestión de bases de datos cifrado. En dicho servidor, se Si bien existen funcionalidades equivalentes en ambos en-
almacena la estructura de las tablas para realizar el proceso tornos, es necesario tener en cuenta que hay una serie de
de traducción consultas. El servidor de base de datos tiene una diferencias (véase [8]) entre ambos sistemas de bases de
serie de funciones definidas por el usuario para llevar a cabo datos. En primer lugar, los datos no se almacenan en tablas
algunas de las rutinas de cifrado/descifrado. sino en estructuras de documentos; no existen esquemas de
Al ser un sistema funcional, los creadores del mismo tablas definidos en NoSQL ya que las estructuras pueden
lo han podido probar como motor de base de datos para crecer de forma dinámica. Además, no existe un lenguaje
aplicaciones habituales en internet, como PHPbb o HOTCPR. estructurado de consultas estándar al estilo de SQL en los
Los resultados obtenidos muestran niveles de rendimiento y sistemas relacionales; podemos encontrar sistemas de bases
240 R. Álvarez, J. Santonja, A. Zamora

de datos NoSQL que tienen un lenguaje UnQL (Unstructured Por ello, este enfoque resulta una vı́a de trabajo futuro muy
Query Language), pero la sintaxis difiere en cada una de ellas. interesante que se está explorando en la actualidad.
Los sistemas de bases de datos NoSQL están orientadas a
AGRADECIMIENTOS
cumplir el Teorema de Brewer o Teorema CAP (Consistency,
Availability and Partition tolerance; véase [7]) y no el modelo Investigación parcialmente financiada por el MINECO me-
ACID (Atomicity, Consistency, Isolation and Durability) pro- diante el proyecto TIN2011-25452.
pio de los sistemas relacionales transaccionales. No obstante, R EFERENCIAS
existen alternativas para solventar este inconveniente.
[1] L. Adam, J. Mattson, “Investigating storage solutions for large data: A
Al igual que en las propuestas de Rodrı́guez y CryptDB, el comparison of well performing and scalable data storage solutions for
objetivo principal bajo el enfoque NoSQL consiste en que la real time extraction and batch insertion of data,” master of science thesis,
base de datos pueda ser gestionada por un tercero manteniendo Department of Computer Science and Engineering, Chalmers University
of Technology, Göteborg, Suecia, 2010.
la confidencialidad de la información y permitiendo la realiza- [2] A. Alcalde, “Lo último en criptografı́a: Fully Homomorphic
ción de consultas sobre los datos como si estuvieran en claro. Encryption,” 2013. Disponible en http://elbauldelprogramador.com/
Para ello, resulta imprescindible el almacenamiento múltiple lo-ultimo-en-criptografia-fully-homomorphic-encryption
[3] A. Boldyreva, N. Chenette, Y. Lee, A. O’Neill, “Order-preserving
de cada campo con distintos tipos de cifrado en función de symmetric encryption” en Advances in Cryptology- EUROCRYPT 2009,
las operaciones a realizar sobre el mismo. Praga, República Checa, LNCS vol.5479, 2009, pp. 224-241.
A continuación, detallamos algunas de las operaciones a [4] C. Curino, E.-P.-C. Jones, R.-A. Popa, N. Malviya, E. Wu, S. Madden,
H. Balakrishnan, N. Zeldovich, “Relational cloud: A database-as-a-
considerar junto con sus posibles soluciones: service for the cloud,” en Proceedings of the 5th Biennial Conference
Alta, baja y modificación de documentos. Es necesario on Innovative Data Systems Research, Pacific Grove, CA, 2011, pp.
que el cifrado se realice en el cliente, determinando los 235–241.
[5] K. Van Gelder, “Elastic Data Warehousing in the Cloud,” Re-
esquemas de cifrado oportunos en función del tipo de port Faculty of Exact Sciences, Vrije Universiteit Amsterdam, Net-
cada campo: cifrado homomórfico y cifrado que preserva herlands, 2011. Disponible en http://homepages.cwi.nl/∼boncz/msc/
el orden en el caso de campos numéricos y cifrado 2011-KeesvanGelder.pdf
[6] C. Gentry, “A fully homomorphic encryption scheme”, tesis doctoral,
determinı́stico en caso de campos alfanuméricos. Departament of Computer Science, Stanford University, 2009.
Búsqueda de elementos. Para el filtrado y localización de [7] S. Gilbert, N. Lynch, “Brewer’s conjecture and the feasibility of consis-
elementos se ha de considerar la naturaleza del campo tent, available, partition-tolerant web services,” SIGACT News, vol. 33
Iss. 2, pp. 51–59, 2002.
sobre el que se está buscando para determinar que cifrado [8] L. P. Issac, “SQL vs NoSQL Database Differences Explained with
utilizar. Esta operación se realiza en el cliente. few Example DB,” The Geek Stuff, 2014. Disponible en http://www.
Orden de elementos. El uso de un cifrado que preserva el thegeekstuff.com/2014/01/sql-vs-nosql-db/
[9] Microsoft docs., “Cifrado de datos transparente (TDE),”. Disponible en
orden permite ordenar resultados y delimitar intervalos. http://technet.microsoft.com/es-es/library/bb934049.aspx
Suma de elementos. Empleando un cifrador homomórfico [10] Oracle docs., “Transparent Data Encryption,” Oracle Database Advanced
para la suma, el servidor es capaz de realizar las opera- Security Administrator’s Guide. Disponible en http://docs.oracle.com/cd/
B19306 01/network.102/b14268/asotrans.htm
ciones de suma sin tener que descifrar los datos. [11] P. Paillier, “Public-key cryptosystems based on composite degree resi-
Relación entre documentos. Consiste en la búsqueda de duosity classes,” en Advances in Cryptology- EUROCRYPT 2009, Praga,
un elemento relacionado en dos colecciones de datos. República Checa, LNCS vol.1592, 2009, pp. 223-238.
[12] R. A. Popa, N. Zeldovich, H. Balakrishnan, “CryptDB: A Practical
Por otra parte, es necesario encontrar una implementación Encrypted Relational DBMS,” Report MIT-CSAIL-TR-2011-005, Com-
adecuada para el cifrado de datos numéricos en coma flotante puter Science and Artificial Intelligence Laboratory, Cambridge, 2011.
[13] R. A. Popa, C. Redfield, N. Zeldovich, H. Balakrishnan, “Cryptdb: pro-
y de tipo fecha, de modo que se pueda operar con ellos en el tecting confidentiality with encrypted query processing,” en Proceedings
servidor sin necesidad de descifrar los mismos. of the Twenty-Third ACM Symposium on Operating Systems Principles,
Cascais, Portugal, 2011.
IV. C ONCLUSI ÓN [14] R. A. Popa, N. Zeldovich, “Cryptographic treatment of CryptDB’s
Adjustable Join,” Report MIT-CSAIL-TR-2012-006, Computer Science
Se han descrito y analizado algunas propuestas significativas and Artificial Intelligence Laboratory, Cambridge, 2012.
de sistemas de bases de datos seguros para la computación en [15] R. A. Popa, F. H. Li, N. Zeldovich, “An ideal-security protocol for
la nube. También se ha introducido una posible solución a las order-preserving encoding,” en Proceedings of 2013 IEEE Symposium
on Security and Privacy, 2013, pp. 463–477.
deficiencias de los sistemas existentes mediante un enfoque no [16] L.M.X. Rodrı́guez, “Esquema de cifrado para la ejecución de consultas
exclusivamente SQL (NoSQL). en bases de datos cifradas,” tesis doctoral, Departamento de Compu-
Los sistemas NoSQL, al contrario que los sistemas de tación del Centro de Investigación y Estudios Avanzados del Instituto
Politécnico Nacional, México, D.F., Diciembre, 2009.
gestión de bases de datos relacionales tradicionales, han sido [17] S. Tu, M. F. Kaashoek, S. Madden, N. Zeldovich, “Processing analytical
diseñados desde el origen para la computación en la nube; queries over encrypted data,” en Proceedings of the 39th international
por lo tanto, posibilitan niveles de rendimiento y escalabilidad conference on Very Large Data Bases, Riva del Garda, Italia, 2013, pp.
289–300.
óptimos en dichas plataformas. No obstante, presentan ciertas
dificultades como el hecho de almacenar la información en
documentos sin estructura relacional o no ofrecer un lenguaje
de consulta estándar como el SQL.
RECSI 2014, Alicante, 2-5 septiembre 2014

Bitcoins y el problema
de los generales bizantinos
Cristina Pérez-Solà Jordi Herrera-Joancomartı́
Departament d’enginyeria de la Departament d’enginyeria de la
informació i les comunicacions informació i les comunicacions
Universitat Autònoma de Barcelona Universitat Autònoma de Barcelona
Email: cperez@deic.uab.cat Email: jordi.herrera@uab.cat

Resumen—En este artı́culo pretendemos mostrar porqué, a los generales deben comunicar sus observaciones y ponerse
nuestro entender, la comunidad cientı́fica y en especial los que de acuerdo en un plan de batalla común que permita atacar
trabajamos en el ámbito de la criptografı́a y la seguridad de la la ciudad y vencer. Para ello, los generales se comunican
información, debemos comprender el funcionamiento de la mo-
neda digital Bitcoin. Como se verá, los motivos que presentamos únicamente a través de mensajeros. Además, existe la posi-
trascienden a la propia moneda Bitcoin y se centran en la red bilidad que algunos de los generales sean traidores y, por lo
peer-to-peer (P2P) subyacente a dicha moneda, que proporciona tanto, decidan enviar mensajes con información errónea con el
un sistema distribuido que permite mantener un registro público objetivo de confundir a los generales leales. Un algoritmo que
también distribuido. Dicho registro permite distintos usos y, como solucione el problema debe asegurar que todos los generales
se verá, deja la puerta abierta a múltiples innovaciones.
Palabras clave—Bitcoin, criptomoneda (cryptocurrency), P2P, leales acuerdan un mismo plan de acción y que unos pocos
Sistemas Distribuidos (Distributed Systems), Problema de los traidores no pueden conseguir que el plan adoptado por los
Generales Bizantinos (Byzantine Generals Problem) generales leales sea equivocado.
Uno de los grandes logros que supone Bitcoin, más allá de
I. I NTRODUCCI ÓN ser la primera criptomoneda con una aceptación extendida1
Los sistemas distribuidos presentan un sinfı́n de propiedades por todo el mundo, es el hecho de ofrecer la primera solución
que los hacen unos candidatos idóneos en distintos escenarios. práctica al problema de los generales bizantinos. La aplicación
Por ejemplo, son sistemas altamente escalables, que pueden de los generales bizantinos a la criptomoneda permite, por
ofrecer rendimientos muy elevados. Por otro lado, en cuanto primera vez en la historia, transferir propiedad digital a otro
a la seguridad se refiere, un sistema distribuido presenta la usuario de Internet, de manera que solo el propietario pueda
ventaja de eliminar el único punto crı́tico que supone un hacerlo, únicamente el destinatario pueda recibirla, todo el
sistema centralizado, ası́ como la supremacı́a que implica el mundo pueda validar la transferencia y esta sea reconocida
control de dicho punto crı́tico. por todos los participantes, todo ello realizado de manera
Sin embargo, uno de los problemas también de seguridad totalmente distribuida.
asociado a los sistemas distribuidos es la naturaleza poco En este artı́culo, expondremos porqué es interesante conocer
controlable de las entidades que participan en el sistema la criptomoneda Bitcoin y repasaremos las aportaciones que
distribuido. Las entidades que lo forman tienen cierto grado el esquema utilizado por Bitcoin representan, más allá de la
de autonomı́a y, por lo tanto, su comportamiento puede ser propia moneda.
alterado, ya sea a causa de fallos no deseados dentro de la El resto del artı́culo se estructura de la siguiente manera:
propia entidad, como a causa de la existencia de entidades la Sección II presenta a grandes rasgos el sistema Bitcoin;
con intereses contrarios al resto del sistema. Uno de los después, la Sección III enfatiza las caracterı́sticas de Bitcoin
problemas de seguridad asociados a los sistemas distribuidos en relación a la notarización de información; posteriormente, la
es el conocido como los generales bizantinos. Sección IV comenta extensiones de la notarización que se han
El problema de los generales bizantinos [1] es un ex- propuesto, tanto como para el propio sistema Bitcoin como
perimento mental creado para ilustrar el dilema de lograr para sistemas posteriores construidos a su imagen; seguida-
un consenso entre un conjunto de entidades con un objetivo mente, la Sección V menciona algunas de las aplicaciones que
común cuando entre ellas pueden existir traidores, es decir, un sistema de notarización distribuido puede tener; finalmente,
entidades con objetivos opuestos que intenten dinamitar el la Sección VI presenta las conclusiones.
proceso. Además, se supone que las comunicaciones entre II. B ITCOIN : CONCEPTOS B ÁSICOS
dichas entidades son limitadas e inseguras. El problema se
presenta como una analogı́a con un escenario de guerra, donde Dado que este artı́culo pretende resaltar las caracterı́sticas
un grupo de generales bizantinos se encuentran acampados que hacen del sistema Bitcoin un sistema a tener en cuenta
con sus tropas alrededor de una ciudad enemiga que desean 1 Trabajos existentes realizados con datos de Enero de 2014 [2] descubren
atacar. Después de observar el comportamiento del enemigo, alrededor de 110000 nodos diferentes conectados en un dı́a cualquiera.
242 C. Pérez-Solà, J. Herrera-Joancomartı́

en distintos ámbitos más allá de la propia moneda, en esta motivo, para que se pueda validar la firma, la transacción debe
sección se describen únicamente unas nociones muy básicas incluir P KA . Por último, Alice indica que quiere transferir los
del funcionamiento de los Bitcoins, imprescindibles para que fondos a Bob firmando la dirección de Bob juntamente con el
el lector comprenda el abasto de las contribuciones que Bitcoin importe a transferir (output1 ). De este modo, solamente Bob,
representa.2 Por este motivo, es posible que dicha descripción que es el único conocedor de su clave privada, podrá gastar
sea incluso insuficiente para entender la corrección y com- la transacción T1 .
pletitud del sistema Bitcoin como moneda digital. El lector Bob puede verificar que le han sido transferidos los fondos
interesado en conocer a fondo el funcionamiento de la moneda comprobando que Addr(P KA ) coincida con la dirección de
puede obtener más información en: [3], [4], [5]. destino de T0 y que la firma SigSKA (T0 +output1 ) es correcta
con P KA .
II-A. Las transacciones
La unidad básica de funcionamiento de Bitcoin son las II-B. La cadena de bloques
llamadas transacciones. Una transacción indica un movimien- Tal como hemos descrito el sistema hasta este punto,
to de Bitcoins de una dirección de origen a una dirección no hay nada que impida a Alice gastar repetidamente los
de destino. Cada dirección de Bitcoins representa una clave 25BT C que ha recibido en la transacción T0 , es decir, crear
pública (Bitcoin se basa en criptografı́a de curvas elı́pticas). T1 , . . . , Ti transacciones con direcciones de destino diferentes
Para gastar Bitcoins es necesario conocer la clave privada utilizando la misma dirección de origen y el mismo puntero a
asociada a la clave pública que contenga un saldo en Bitcoins. la transacción anterior. Este comportamiento se conoce bajo el
Entonces, se pueden gastar esos Bitcoins, es decir, transferirlos nombre de doble gasto y, obviamente, es necesario prevenirlo
a otra dirección, firmando digitalmente con la clave privada la en cualquier tipo de moneda virtual.
transmisión de esta información y enviando la nueva transac- Con el objetivo de prevenir el doble gasto, Bitcoin anota
ción a toda la red. Veámoslo con un ejemplo: todas las transacciones ocurridas en un registro común cono-
Sea {P KA , SKA } ({P KB , SKB }) el par de claves, pública cido como cadena de bloques (o blockchain). De este modo,
y privada, del usuario Alice (respectivamente, del usuario cuando Bob recibe la transacción T1 de Alice, puede acudir
Bob). La función Addr(P K) nos devuelve la dirección de al registro público y comprobar que Alice no haya gastado
Bitcoin asociada a la clave pública P K, H es una función anteriormente el dinero que le está transfiriendo, es decir,
hash y SigSK (m) representa la firma de m con la clave comprobar que no existe ninguna otra transacción que tiene
privada SK. Supongamos que Alice ha recibido anteriormente en su input el mismo valor H(T0 ).
en una transacción T0 la cantidad de 25BT C a su dirección, Este registro único se genera, distribuye y almacena de
Addr(P KA ): forma distribuida, de modo que todos los participantes están
de acuerdo en su contenido sin la intervención de ninguna
T0 = {input0 , output0 } autoridad central. Es en esta creación de un registro público
input0 = {· · · } único de manera distribuida donde Bitcoin resuelve de manera
output0 = {Addr(P KA ), 25} práctica el problema de los generales bizantinos y por el cual
el potencial de Bitcoin sobrepasa de largo el de una moneda
virtual.
Alice desea, entonces, enviar los 25BT C a Bob. Para ello, El registro público de Bitcoin (la cadena de bloques)
Alice crea una nueva transacción, T1 : está formado, como su nombre indica, por un conjunto de
bloques enlazados de manera secuencial. Con el paso del
T1 = {input1 , output1 } tiempo, nuevos bloques son creados y añadidos a la cadena
input1 = {H(T0 ), SigSKA (T0 + output1 ), P KA } existente. La cadena de bloques es, por lo tanto, un registro que
output1 = {Addr(P KB ), 25} solo permite anexar información. Cada bloque contiene una
cabecera y una carga útil. La carga útil son las transacciones
Veamos el motivo de incluir cada uno de los elementos en la que han ocurrido en el sistema desde que se creó el último
transacción. En primer lugar, la transacción nueva T1 incluye bloque. De este modo, el conjunto de transacciones aceptadas
el hash de la transacción que se quiere gastar, T0 , que actúa como válidas por la red son las transacciones contenidas en
como un puntero. En segundo lugar, Alice, que es la propie- cada uno de los bloques que pertenecen a la cadena de bloques.
taria de la dirección que contiene los fondos, es la única que A su vez, la cabecera de cada bloque contiene un puntero al
puede gastarlos ya que es la única que conoce la clave privada bloque anterior, de modo que los bloques forman una cadena.
SKA necesaria para realizar la firma SigSKA (T0 + output1 ). Además, la cabecera contiene también un valor de nonce, que
Además, si Alice no ha usado anteriormente esta dirección, permite crear bloques válidos como veremos a continuación.
ella es también la única que conoce su clave pública P KA , Los usuarios que se dedican a crear bloques en la red Bitcoin
ya que la función Addr es pública pero no invertible. Por este son conocidos como mineros, y son una pieza fundamental del
2 De hecho, se presenta una simplificación del esquema que no corresponde
esquema. Cualquier usuario de la red puede ser un minero.
exactamente al protocolo Bitcoin, pero que permite entender sus puntos clave Su trabajo consiste en validar las transacciones que se envı́an
sin entrar en todos los detalles. por la red P2P, incluyendo las válidas en nuevos bloques y
Bitcoins y el problema de los generales bizantinos 243

reciben, en forma de Bitcoins, cada vez que generan un bloque.


Hemos visto como se transferı́an Bitcoins de una dirección a
otra pero, hasta este momento, no hemos comentado como se
crean estos Bitcoins. Los Bitcoins se crean a partir de un tipo
de transacción especial, la transacción de generación, que se
incluye en cada bloque. Dicha transacción tiene una dirección
de destino (que pertenece al minero que se ha generado el
bloque) pero no tiene ninguna dirección de origen. El importe
de esta transacción de generación va disminuyendo con el
Figura 1. Bifurcación de la cadena. tiempo y, a dı́a de hoy, es de 25BT C 3 . Cada bloque solo
puede contener una única transacción de generación.

descartando las inválidas. De este modo, si una transacción III. N OTARIZACI ÓN DE INFORMACI ÓN EN EL PROTOCOLO
intenta gastar un importe ya gastado, o bien un usuario intenta B ITCOIN
gastar una transacción que no le pertenece (generando por lo En esta sección, describiremos las contribuciones de Bitcoin
tanto una firma inválida), esta nueva transacción nunca será in- con relación a la notarización de información, es decir, a la
cluida en un bloque y, de este modo, no habrá existido para creación de un registro único común de manera totalmente
el sistema. Por lo tanto, se necesita asegurar que los mineros distribuida.
hacen su trabajo correctamente, es decir, que aunque existan Bitcoin utiliza la cadena de bloques para almacenar transac-
algunos mineros traidores que actúen en contra del interés ciones, es decir, las unidades de información almacenadas en
común, se asegura que los mineros leales consigan acordar una el registro único de Bitcoin son transacciones. Estas transac-
cadena única, que contenga únicamente transacciones válidas. ciones han sido creadas con anterioridad por algún miembro
Para lograrlo, se requiere que los bloques contengan una de la red, y difundidas por toda la red.
prueba de trabajo (proof-of-work) para ser considerados Suponiendo que existen usuarios en la red creando transac-
válidos. Dicha prueba de trabajo demuestra que el minero ciones, el trabajo de los nodos de Bitcoin, es decir, de las
ha gastado un tiempo de computación en la generación del entidades que forman parte del protocolo distribuido para crear
bloque. De este modo, mientras el poder de cómputo de la el registro común de información, se resume en cuatro grandes
red esté distribuido, un grupo pequeño de mineros traidores tareas: validación, afianzamiento, transmisión y almacenaje.
no podrá modificar la cadena de bloques en su beneficio. La
prueba de trabajo que utiliza Bitcoin consiste en encontrar un III-A. Validación
valor de nonce para el nuevo bloque de tal manera que el Los mineros validan cada una de las transacciones que se
hash del bloque sea inferior a un valor objetivo fijado. Por incluyen en un bloque. Sea T1 la transacción a validar, las
las propiedades de las funciones hash, la única manera de comprobaciones a realizar son las siguientes:
conseguir un hash inferior al valor objetivo es ir probando No existe doble gasto, es decir, T1 no intenta gastar una
diferentes valores de nonce, hasta dar con uno que genere el transacción anterior T0 ya gastada anteriormente.
hash buscado. La transacción anterior T0 que se intenta gastar existe.
Una vez un minero ha encontrado un bloque que cumple La clave pública especificada en la entrada de T1 se
los requisitos, lo envı́a a toda la red, de manera que el nuevo corresponde a la dirección de salida especificada en T0 .
bloque se convierte en el último de la cadena. A partir de ese La firma es correcta al validarla con la clave pública
momento, todos los mineros actualizan su estado, es decir, especificada en la entrada de T1 .
actualizan el puntero al último bloque conocido y actualizan
Aunque el funcionamiento de Bitcoin es muy similar al que
las transacciones conocidas por el sistema, incluyendo en
hemos descrito, en realidad su especificación no se describe
la generación del nuevo bloque solo aquellas que no se
en estos términos sino en otros mucho más generales, con el
encuentran ya en la cadena.
objetivo de permitir realizar transacciones más complejas. En
Se puede dar el caso que dos mineros encuentren dos
vez de fijar como se deben codificar las claves públicas, las
bloques distintos válidos que tengan el mismo bloque padre
direcciones y las firmas dentro de cada transacción, Bitcoin
de manera más o menos simultánea (Figura 1), y que ambos
dispone de un lenguaje de scripting propio basado en pila,
envı́en los bloques encontrados a toda la red. En este caso, se
el código del cual se inserta tanto en las salidas como en
acepta el bloque que genere la cadena más larga, en términos
las entradas de las transacciones. A la hora de validar una
del trabajo invertido en realizarla.
transacción, se apila el script de entrada con el de salida y se
Como se ha visto, la existencia de mineros es fundamental
evalúa el script resultante. Si el resultado final de la evaluación
para el funcionamiento del sistema, ası́ que es necesario asegu-
es Cierto, entonces la transacción se considera válida. En caso
rar que existen incentivos suficientes para que los usuarios de
contrario, la transacción se considera inválida.
la red quieran realizar el trabajo de minerı́a, cosa que supone
un coste (al menos en electricidad) para ellos. Actualmente 3 En el momento de escribir estas lı́neas, en Febrero de 2014, este importe
el incentivo principal de los mineros es la recompensa que equivale a unos 20,000 dólares.
244 C. Pérez-Solà, J. Herrera-Joancomartı́

Las validaciones descritas en este apartado forman parte de válido. De este modo, la información se propaga por toda la
lo que serı́a una validación completa. Nótese que para realizar red.
esta validación es necesario conocer la cadena de bloques Dado que, a diferencia de los bloques, las transacciones no
entera, juntamente con todas las transacciones que contiene. contienen ninguna prueba de trabajo, un nodo malicioso podrı́a
Esto tiene un coste de espacio elevado. Además, recorrer crear un gran número de transacciones válidas con la intención
la cadena en busca de las transacciones implicadas supone de desbordar la red. Para evitar este tipo de ataques, los nodos
también un coste computacional elevado, que junto al coste en estándar de Bitcoin aplican una polı́tica de retransmisión de
espacio, suponen un problema para dispositivos ligeros como transacciones, que obliga a incorporar una comisión a las
móviles o incluso ordenadores limitados. Por este motivo, transacciones que cumplen ciertas caracterı́sticas que las hacen
Bitcoin dispone del Protocolo de Validación Simplificado ideales para este tipo de ataques. Aún ası́, los usuarios que
(SPV, del inglés Simplified Payment Verification), que permite realizan transacciones tienen libertad para decidir si pagan o
a un usuario comprobar que ha recibido un pago utilizando no una comisión y, en caso de hacerlo, del importe que esto
significativamente menos recursos a costa de una reducción conlleva. Estas comisiones afectan, como hemos comentado,
en la seguridad de la validación. Para la validación SPV, solo la retransmisión de la transacción, además de su inclusión en
es necesario disponer de una copia de las cabeceras de los un bloque. Esto último es debido a que el minero, además de
bloques de la cadena (que el cliente puede pedir a otro(s) cobrar la recompensa por encontrar un bloque, también obtiene
nodo(s) de la red en cualquier momento) ası́ como de algunos todas las comisiones que las transacciones que contiene el
valores hash que permiten localizar la transacción dentro del bloque incorporan. Por este motivo, incluir comisiones en las
bloque. transacciones puede crear incentivos adicionales para que los
mineros las incluyan en sus bloques.
III-B. Afianzamiento
Además de validar las transacciones, es necesario también III-D. Almacenaje
crear los bloques que las afianzan, ası́ como validar a su vez El almacenaje de la cadena de bloques se lleva a cabo
la corrección de estos bloques. Este proceso es el que permite con mucha redundancia: todos los nodos completos de la red
construir el registro común único y se realiza de manera contienen una copia entera de la cadena de bloques (y sus
totalmente distribuida en Bitcoin. transacciones). Esto permite a estos nodos validar de manera
Como hemos visto, el afianzamiento en Bitcoin se basa en correcta cada nueva transacción.
una prueba de trabajo (proof-of-work), consistente en encontrar Tener que mantener una copia completa de la cadena puede
un valor de nonce para el bloque B de tal manera que H(B) < suponer un problema para los nodos operando en dispositivos
t, es decir, que el hash del bloque sea inferior al objetivo ligeros como, por ejemplo, dispositivos móviles. En Febrero
fijado. El valor objetivo no es constante, y permite adaptar la de 2014, después de 5 años de operación de la moneda Bitcoin,
dificultad de la prueba al poder de cómputo de la red en cada la cadena de bloques ocupa unos 13 GB.
momento, con el propósito de generar un nuevo bloque cada
10 minutos. IV. E XTENSIONES PARA LA NOTARIZACI ÓN DE LA
De este modo, si un atacante quiere modificar la cadena de INFORMACI ÓN
bloques, ya sea para dar marcha atrás y anular transacciones En esta sección, repasaremos algunas de las mejoras o
que ha realizado, ya sea para tener control de lo que se anota alternativas que se han propuesto sobre el protocolo de Bitcoin,
en el registro común, será necesario que éste disponga de algunas de ellas implementadas ya en otras criptomonedas,
un poder de cómputo superior al 50 % de la red4 . En caso otras solo presentadas a nivel teórico.
contrario, si el atacante intenta modificar la cadena de bloques
generando sus propias alternativas, no tendrá suficiente poder IV-A. Validación
de cómputo como para generar bloques más rápido que el Aunque los scripts de Bitcoin permiten especificar qué se
resto de la red, por lo que su rama no será la más larga, y necesita para poder gastar una transacción, el lenguaje es
será descartada. limitado. Según la propia descripción del lenguaje, este no
III-C. Transmisión es Turing-completo por diseño, argumentando motivos de se-
guridad para justificar esta decisión. Si bien es cierto que esto
Bitcoin utiliza una red P2P totalmente distribuida para pro- previene de realizar ciertos ataques (pensemos, por ejemplo,
pagar la información. Bloques y transacciones son transmitidos en un script con un bucle infinito, que se ejecutarı́a de manera
a través de esta red. indefinida cada vez que se intentara validar), también limita
Cuando un nodo quiere realizar una transacción (o bien el conjunto de programas que se pueden codificar con él.
encuentra un bloque válido), este lo envı́a a toda la red. Para Una extensión que se ha propuesto en este sentido es
hacerlo, lo envı́a a los nodos que se encuentran directamente incorporar un lenguaje Turing-completo a las transacciones
conectados con él y éstos, a su vez, lo reenvı́an a sus vecinos, [7], aumentando ası́ la potencia de las mismas. Este lenguaje
siempre que el objeto en cuestión (bloque o transacción) sea debe ir acompañado de un sistema de seguridad que permita
4 Estudios recientes presentan un ataque teórico que reduce este valor al evitar ciertos ataques, como el anteriormente comentado script
33 % del poder de cómputo total[6]. de ejecución infinita. Una de las propuestas contempla incluir
Bitcoins y el problema de los generales bizantinos 245

una comisión que se debe pagar por cada paso de ejecución del en concreto, cadenas de Cunningham de primera y segunda
algoritmo, de manera que los scripts más simples, que suponen especie o cadenas de primos gemelos.
menos tiempo de validación, resulten más baratos que aquellos Proof-of-Stake: En este caso, la probabilidad que un minero
más complejos, que necesitan gastar tiempo de computación encuentre un bloque depende de la cantidad de Bitcoins que
para ejecutarse. posee actualmente. De este modo, mientras la posesión de
Otra de las limitaciones del protocolo Bitcoin se encuen- Bitcoins sea distribuida, también lo será la capacidad de minar.
tra en relación al Protocolo de Validación Simplificado. El Proof-of-Burn: En este tipo de pruebas, la probabilidad
protocolo se puede llevar a cabo para el tipo de transacción de conseguir afianzar un bloque depende del número de
estándar dentro de Bitcoin, pero se complica enormemente Bitcoins destruidos expresamente para este propósito, es decir,
(hasta el punto que no se ha encontrado solución aún) para quemados. Destruir Bitcoins es tan sencillo como enviarlos a
ciertas variaciones del esquema. direcciones que no se puedan gastar, es decir, a scripts que se
evalúen a Falso de manera deliberada.
IV-B. Afianzamiento Proof-of-Excellence: En este sistema definido vagamente
en [10], se crean torneos periódicamente y se minan bloques
Bitcoin utiliza una prueba de trabajo basada en el cálculo en función del rendimiento de cada participante en el torneo.
de hashes para afianzar la información. A dı́a de hoy5 , se
estima que la red dispone de un poder de cómputo superior IV-C. Transmisión
a los 23000 TH/s. Esto supone un gasto energético elevado, Algunas criptomonedas surgidas después del auge de Bit-
hecho que ha empezado a causar alarma por los posibles coin modifican el tiempo medio necesario para crear un
efectos negativos sobre el medio ambiente. Además, dicho bloque, fijado en 10 minutos en Bitcoin. Aunque parezca un
gasto energético únicamente se utiliza para la propia crip- cambio trivial, esto tiene consecuencias importantes sobre la
tomoneda ya que el cálculo de los hash para afianzar los seguridad del esquema.
bloques no tiene ningún otro fin. Por lo tanto, es interesante Por un lado, la seguridad de una transacción en Bitcoin se
plantearse alternativas a la prueba de trabajo basada en hash mide utilizando el número de confirmaciones que ésta tiene,
que permitan obtener una funcionalidad equivalente. Se han es decir, cuántos bloques se han añadido a la cadena después
propuesto cuatro enfoques diferentes: del bloque que contiene la transacción en cuestión. El motivo
Proof-of-Work: Como hemos visto, consiste en demostrar es que, como más confirmaciones tenga una transacción, más
que se ha realizado una cantidad de trabajo para conseguir el difı́cil es anularla, ya que para ello habrı́a que construir una
bloque. Por lo tanto, la probabilidad de conseguir minar un rama alternativa de la cadena que supere en dificultad a la rama
bloque depende del poder de cómputo empleado en el trabajo. actual. Bajo este punto de vista, fijar un tiempo de creación
En este ámbito, las mejoras se centran en dos alternativas. de bloques de 10 minutos hace de Bitcoin un sistema lento en
Por un lado, proponer funciones que no requieran una inver- dar por válidas las transacciones. El cliente estándar espera a
sión en hardware para el minado de bloques (como sucede que existan 6 confirmaciones antes de aceptar una transacción
actualmente con la función SHA256), para democratizar el como pago, lo que fijarı́a un tiempo medio de 1 hora para el
proceso de minado y evitar ası́ grandes clústers de minado que proceso.
pudieran llegar a controlar la red. Dentro de esta alternativa se Por otro lado, cuando un nuevo bloque es encontrado por
encuentran funciones hash, como por ejemplo scrypt [8] que un minero, este lo envı́a a sus vecinos, de modo que el bloque
requieren un volumen elevado de memoria para su cálculo, se propaga por la red. Esta propagación no es instantánea,
haciendo poco viable la creación de hardware especı́fico. Otro y son necesarios algunos segundos para que los nodos la
enfoque, mucho más ambicioso, es la propuesta de una función reciban[2]. Durante este tiempo de propagación, el minero que
de proof-of-work tal que su propio cálculo permita resolver ha encontrado el bloque ya se encuentra minando encima de
problemas útiles computacionalmente costosos. El problema este, mientras que el resto de mineros aún trabajan en el bloque
principal de este enfoque es formalizar problemas que tengan anterior. Esto tiene dos consecuencias importantes. La primera
las siguientes propiedades, necesarias para una proof-of-work es que estos últimos mineros están realizando trabajo inútil. El
utilizada como sistema de validación de los bloques de la porcentaje de trabajo inútil por bloque, suponiendo un tiempo
cadena: 1) verificabilidad: el problema propuesto debe ser de propagación constante, es mayor como menor sea el tiempo
difı́cil de realizar pero, una vez resuelto, la validación de la de generación de bloques. La segunda consecuencia se deriva
solución encontrada debe ser muy simple; 2) granularidad: también de este problema, ya que el minero que ha encontrado
la dificultad del problema propuesto debe ser granular, en el el bloque se encuentra en clara ventaja respecto al resto de la
sentido que se debe permitir ajustar la dificultad del mismo red. Esto también se acentúa con la disminución del tiempo
de forma controlada y progresiva. En la actualidad únicamente de generación de los bloques.
se conoce una proof-of-work con estas caracterı́sticas, utilizada Una de las propuestas para minimizar el impacto que el
en la moneda digital PrimeCoin [9]. En este caso, la proof-of- trabajo inútil sobre bloques ya minados supone para el sistema
work consiste en encontrar ciertas cadenas de números primos, es la de recompensar no solo al bloque que queda en la cadena
principal, sino también a algunos de los bloques válidos que
5 Febrero 2014 hayan quedado en otras bifurcaciones de la cadena [7].
246 C. Pérez-Solà, J. Herrera-Joancomartı́

IV-D. Almacenaje VI. C ONCLUSI ÓN


En relación al almacenaje de la información, el principal Bitcoin es la primera moneda criptográfica que ha tenido
problema que Bitcoin tiene que afrontar es la escalabilidad. una grande aceptación entre la población, existiendo imple-
Con la continua creación de nuevas transacciones, el tamaño mentaciones del cliente estándar que permiten operar con ella
de la cadena de bloques no hace más que aumentar a buen para múltiples plataformas. Este hecho, por si solo, ya tiene
ritmo, augurando problemas de almacenamiento a largo plazo. un gran mérito. Además, más allá de ser una criptomoneda
Por otro lado, las restricciones en el tamaño de los bloques en utilización, con un esquema criptográfico robusto, total-
implican que en la actualidad la red bitcoin solamente pueda mente descentralizada y anónima, Bitcoin resuelve de manera
procesar un máximo de 7 transacciones por segundo6 , un valor práctica el problema de los generales bizantinos, permitiendo
demasiado pequeño para una moneda con vocación global. crear un registro único común de manera descentralizada. Los
Aunque de momento no se ha implementado ninguna so- usos de este registro sobrepasan de largo los de la propia
lución, se discute activamente la posibilidad de incorporar criptomoneda y, en consecuencia, creemos que es importante
un algoritmo de poda de la cadena, de manera que no sea dar a conocer su existencia. Como hemos expuesto, ya existen
necesario guardar todas las transacciones. Ası́, transacciones diferentes iniciativas que hacen uso de este registro con
antiguas podrı́an ser eliminadas, guardando de ellas solo su finalidades muy diversas y, a nuestro parecer, estas iniciativas
hash, para preservar la integridad de la cadena. son solo el principio de una larga lista de aplicaciones que se
pueden diseñar e implementar en base a este registro.
V. P OSIBLES APLICACIONES
AGRADECIMIENTOS
Las utilidades prácticas de Bitcoin (o de un sistema basado
Este trabajo está parcialmente financiado por el Ministerio
en la cadena de bloques) sobrepasan de largo las de una simple
de Educación, a través de los proyectos TIN2011-27076-C03-
moneda. A continuación, se listan algunas de las aplicaciones
02 CO-PRIVACY, TIN2010-15764 N-KHRONOUS, CONSO-
que el sistema proporciona, tanto aquellas de las que ya existen
LIDER INGENIO 2010 CSD2007-0004 ARES, y de la beca
implementaciones sobre Bitcoin, como aquellas que surgen a
FPU-AP2010-0078.
partir de alternativas derivadas, ası́ como también las que de
momento quedan en un plano teórico. R EFERENCIAS
Submonedas ([7], [11], [10], [12]): La cadena de bloques [1] Lamport, Shostak, and Pease, “The Byzantine Generals Problem,” in
Advances in Ultra-Dependable Distributed Systems, IEEE Computer
se puede utilizar para representar transacciones de otros Society Press, 1995. [Online]. Available: http://citeseerx.ist.psu.edu/
bienes, como por ejemplo, otras monedas, oro, acciones viewdoc/summary?doi=10.1.1.12.1697
o propiedad. [2] J. A. D. Donet, C. Pérez-Solà, and J. Herrera-Joancomartı́, “The Bitcoin
P2P Network,” in Proceedings of the 1st Workshop on Bitcoin Research
Derivados financieros ([7]): Se pueden representar tam- (in Assocation with FC14), ser. to appear, 2014.
bién en la cadena de bloques derivados financieros, [3] S. Nakamoto, “Bitcoin: A Peer-to-Peer Electronic Cash System,” 2008.
explicitando sobre que bien concreto se deriva el precio. [Online]. Available: https://bitcoin.org/bitcoin.pdf
[4] M. Nielsen, “How the Bitcoin protocol actually works,”
Servicios de marca de tiempo o timestamps ([13], [11]): 2013. [Online]. Available: http://www.michaelnielsen.org/ddi/
Incluyendo el hash de un archivo en un bloque de la how-the-bitcoin-protocol-actually-works/
cadena, se puede demostrar la existencia del archivo en [5] Bitcoin community, “Bitcoin wiki.” [Online]. Available: https://en.
bitcoin.it
el momento de la creación del bloque. [6] I. Eyal and E. G. Sirer, “Majority is not enough: Bitcoin mining is
Servicio de nombres de dominio o DNS ([11]): La cadena vulnerable,” in Proceedings of the 1st Workshop on Bitcoin Research In
se puede utilizar también para almacenar información de Assocation with Financial Crypto, 2014.
[7] V. Buterin, A. di Lorio, C. Hoskinson, and M. Alisie, “Ethereum white
nombres de dominio de manera totalmente distribuida. paper,” 2013. [Online]. Available: http://www.ethereum.org
Sistemas de Reputación Anónimos ([7]): Del mismo [8] C. Percival, “Stronger key derivation via sequential memory-hard fun-
modo que se pueden registrar nombres de dominio en ctions,” 2012.
[9] S. King, “Primecoin: Cryptocurrency with prime number
la cadena, ésta se puede utilizar para construir sistemas proof-of-work,” 2013. [Online]. Available: http://primecoin.io/bin/
de reputación anónimos. primecoin-paper.pdf
Cómputo multipartito seguro o Secure multiparty compu- [10] S. King and S. Nadal, “Ppcoin,” 2012. [Online]. Available: http:
//peercoin.net/bin/peercoin-paper.pdf
tation ([14], [15]): Protocolos para el cómputo bipartito [11] vinced, “Namecoin: a secure general purpose p2p key/value storage
y multipartito seguro se han propuesto recientemente, e system.” [Online]. Available: http://namecoin.info/
incluso se han realizado implementaciones de algunos de [12] Bitcoin Wiki, “List of alternative cryptocurrencies,” Última consulta:
febrero 2014. [Online]. Available: https://en.bitcoin.it/wiki/List of
los protocolos sobre Bitcoin. alternative cryptocurrencies
Juegos de Azar P2P ([16], [7]): Juegos de azar o loterı́as [13] Shesek, “BTProof: trusted timestamping on the bitcoin blockchain,”
pueden implementarse de manera que éstos resulten se- 2013. [Online]. Available: https://www.btproof.com/
[14] A. M., D. S., M. D., and M. L., “Fair two-party computations via bitcoin
guros para todas las partes, utilizando trozos de la cadena deposits,” in Proceedings of the 1st Workshop on Bitcoin Research In
(o hashes de estos) como generadores pseudoaleatorios. Assocation with FC, 2014.
[15] M. Andrychowicz, S. Dziembowski, D. Malinowski, and L. Mazurek,
6 El tamaño máximo de un bloque es de 1MB y el tiempo entre bloques es “Secure multiparty computations on bitcoin,” in to appear, 2014.
de 10 minutos. Esto proporciona 1,7KB por segundo, lo que suponen unas 7 [16] E. Voorhees, “Satoshidice,” 2012. [Online]. Available: https://en.bitcoin.
transacciones de 250bytes. it/wiki/SatoshiDice
RECSI 2014, Alicante, 2-5 septiembre 2014

Evaluación del Rendimiento de una Solución de


Cupones Electrónicos para Dispositivos Móviles
Andreu Pere Isern-Deyà, M. Francisca Hinarejos, Josep Lluís Ferrer-Gomila
Universitat de les Illes Balears (UIB), Email: {andreupere.isern, xisca.hinarejos, jlferrer}@uib.es

Resumen—El comercio electrónico móvil (m-commerce) repre- del papel para poder canjearlos en los comercios. Este modo
senta ya una importante área de negocio con grandes oportuni- de funcionamiento conlleva una pérdida en tiempo y recursos
dades para consumidores y comerciantes. Sin embargo, todavía tanto para los comerciantes como para los consumidores y
existen escenarios que requieren mejoras en cuanto a eficiencia,
como son los cupones electrónicos. La eficiencia y el rendimiento además frena su expansión.
de estas soluciones suele medirse únicamente considerando el Tanto los cupones electrónicos individuales como los mul-
coste de las operaciones criptográficas o realizando pruebas ticupones (el equivalente a los talonarios de cupones) han
de laboratorio en entornos limitados, muchas veces una única atraído la atención en los últimos años de la comunidad
máquina para ejecutar todo el escenario de pruebas (incluyendo
científica [6]–[20]. No obstante, las soluciones no se validan
consumidores y comerciantes). En este artículo presentamos un
análisis del rendimiento de una solución de cupones electrónicos, teniendo en cuenta el tiempo total de respuesta percibido por
mediante la cual comprobamos que no es suficiente analizar los consumidores, a pesar que este es un aspecto crítico que
únicamente la carga debido a las operaciones criptográficas, sino debe ser considerado tanto en la fase de diseño como de
que también deben considerarse otros factores, como el efecto de implementación.
la red.
Index Terms—cupón electrónico, seguridad, privacidad, efi-
Contribución. En este artículo incidimos en la importancia
ciencia, análisis de rendimiento de analizar todos los costes que influyen en el tiempo de
respuesta de los protocolos. Para realizar este trabajo, hemos
I. I NTRODUCCIÓN implementado en Java una solución propia de multicupo-
nes electrónicos para múltiples comerciantes [16], llamada
El comercio electrónico (e-commerce) representa uno de los MC − 2D y hemos analizado su eficiencia y rendimiento.
sectores más dinámicos e innovadores dentro de la economía La eficiencia la medimos respecto a una propuesta previa
global. Hoy día la atención que recibe el e-commerce es similar de multicupones electrónicos, la cual fue verificada en
incluso mayor dado el auge de los dispositivos móviles y un entorno limitado usando una sola computadora. Gracias
la mejora de las infraestructuras móviles de comunicaciones. a este análisis, demostramos que nuestra propuesta mejora
De hecho, la cuota de mercado de usuarios con teléfonos ampliamente la solución previa. Finalmente, desplegando la
inteligentes ha alcanzado alrededor del 18 % del total de implementación en un entorno de producción con dispositivos
dispositivos de usuario [1], siendo el comercio móvil (m- móviles Android, servidores remotos y comunicaciones reales,
commerce) uno de los sectores más beneficiados por este analizamos su rendimiento teniendo en cuenta los efectos de
hecho. De acuerdo con predicciones publicadas [2], en los la red. Además de comprobar que MC − 2D es viable en un
próximos cuatro años las ventas on-line crecerán entre un 10 % entorno real, también demostramos que no solo la criptografía
y un 15 % anual. incide en aumentar el tiempo de respuesta percibido por los
Sin embargo, todavía hay mucho trabajo que hacer en clientes del m-commerce, sino que otros costes pueden ser
el campo del m-commerce. Uno de los aspectos que más incluso mayores.
negativamente afecta a su crecimiento es la falta de privacidad Organización. El artículo está organizado de la siguiente
y confianza de los consumidores respecto a los comerciantes y forma. En la Sección II presentamos un análisis sobre las
a las transacciones on-line. Otro de los aspectos importantes, propuestas previas. En la Sección III se resume la solu-
a menudo dejado de lado, es la baja eficiencia (medida como ción propuesta. La Sección IV se dedica a presentar una
el tiempo de respuesta) de las soluciones de m-commerce comparación de eficiencia basada en el número y tipo de
percibida por los consumidores. operaciones criptográficas. Utilizando un escenario real, en la
En el campo del m-commerce, los cupones electrónicos son Sección V analizamos los diferentes factores que influyen en
uno de los temas que requiere importantes mejoras, sobre todo el rendimiento de la solución. Finalmente, cerramos el trabajo
en privacidad, usabilidad y eficiencia. Un cupón electrónico es con las conclusiones y las líneas futuras en la Sección VI.
la versión electrónica de los cupones en papel, documentos
impresos que permiten al consumidor conseguir o acceder II. T RABAJOS P REVIOS
a productos o servicios, normalmente bajo un descuento o
beneficio. En este sentido, encontramos conocidas soluciones Como se ha comentado en la introducción, existen propues-
comerciales, como cupones para restaurantes [3], [4], hoteles tas tanto comerciales como de carácter científico para cupones
[5], etc., aunque todas ellas se basan en la utilización final electrónicos. Respecto a las soluciones comerciales [3]–[5],
248 A. P. Isem-Deyà, M. F. Hinarejos, J. L. Ferrer-Gomila

éstas intentar ofrecer soluciones sencillas a bajo coste y nor- III-A. ¿Cómo Proporcionar Privacidad?
malmente basadas en papel. Es decir, evitan en la medida de lo
El funcionamiento de la solución se basa en el uso de la
posible llevar a cabo nuevas inversiones en implementaciones
firma parcial ciega y la firma de grupo.
y reutilizan los sistemas que ya tienen desarrollados. Por
Firma parcial ciega. Es una generalización de la firma
ejemplo, una manera sencilla que utilizan las compañías para
ciega [22] en la que el firmante tiene la capacidad de añadir
ofrecer cupones electrónicos es desplegando una simple página
a la firma resultante un conjunto de datos comunes acordados
web a través de la cual los clientes pueden comprar cupones
previamente entre el firmante y el solicitante. MC − 2D usa
para un determinado uso. Sin embargo, los clientes deben
el esquema de firma parcial ciega presentado en [23].
desplazarse físicamente hasta la tienda del comerciante (o a un
Firma de grupo. Es una primitiva criptográfica que genera
establecimiento autorizado) o utilizar su propia impresora para
firmas en las que la identidad de un firmante que pertenece a un
obtener una copia en papel. Este modo de funcionamiento no
grupo de usuarios se mantiene en secreto. En estos esquemas
facilita el uso de los cupones y limita su difusión.
se define una tercera parte, llamada Gestor de grupo, que es el
Respecto a las propuestas científicas actuales referentes a
encargado de generar los parámetros necesarios para realizar
cupones y multicupones electrónicos [6]–[20], éstas intentan
estas firmas. Además, es la única entidad capaz de revocar
ofrecer el mayor número de funcionalidades sin considerar el
el anonimato y revelar la identidad de la entidad firmante.
coste que pueden generar al aplicarse en escenarios reales. No
En nuestra solución se usa el esquema de firma de grupo
obstante, solo un número reducido de ellas [13], [16] proponen
propuesto en [24].
soluciones para un entorno donde los usuarios puedan gastar
sus cupones en diferentes comerciantes sin tener que emitir
III-B. Arquitectura y Protocolos
un multicupón para cada uno de ellos (escenarios multi-
comerciante). Por otra parte, en muchas de las propuestas no La Figura 1 representa la arquitectura de la solu-
se encuentra suficiente información para analizar su viabilidad, ción MC − 2D. Los participantes involucrados son el
tanto la referente a la implementación de las operaciones cliente (C), el vendedor (V), el emisor (E) y el ges-
criptográficas involucradas como a la eficiencia resultante. tor de grupo (G). Entre cada uno de los partici-
En la mayoría de los trabajos que proporcionan medidas pantes se definen siete protocolos: Inicialización,
de eficiencia, utilizan escenarios de laboratorio, con pruebas Afiliación/Desafiliación, Registro, Emisión,
limitadas y sin tener en cuenta todos los factores que influyen Pago Múltiple, Depósito y Reembolso.
en el rendimiento final de las soluciones. Los autores de [8],
Gestor de Grupo (G) Cliente (C)
[10] analizan sus propuestas basándose en cómo el número de
Registro
cupones contenidos en un multicupón incrementa el coste de
los diferentes protocolos para su gestión. Como resultado, los
Emisión
autores en [8] afirman que el coste es lineal respecto al número Inicialización
Pago
de cupones involucrados en cada transacción, mientras que en Múltiple
Reembolso
[10] se afirma (sin aportar ninguna prueba) que su esquema Emisor (E)
tiene un coste computacional constante con independencia Depósito
del número de cupones involucrados en cada transacción.
En [21], el autor realiza una implementación del esquema Inicialización
Afiliación Vendedor (V)
presentado en [13], pero considerando un entorno de pruebas
local, en donde todas las operaciones se ejecutan sobre una Figura 1: Arquitectura de MC − 2D.
misma computadora. Otras propuestas de cupones electrónicos
[6], [15], [17]–[19] proporcionan resultados de eficiencia en 1. Inicialización. Tanto G como E inicializan sus
entornos muy limitados y en pocos casos consideran el uso de servicios para recibir peticiones. G crea un conjunto de claves
algún tipo de dispositivo móvil [20]. secretas y una clave pública para el esquema de firma de grupo,
Por lo tanto, la evaluación de soluciones para multicupones mientras que E y los clientes generan sus propias claves RSA.
se ha realizado principalmente en términos del número de 2. Afiliación / Desafiliación. Todos los ven-
operaciones criptográficas. Sin embargo, este tipo de análisis dedores interesados en aceptar cupones emitidos por E se
no puede asegurar la viabilidad de una propuesta sobre redes y afilian a E mediante un simple acuerdo sin que se lleve a
dispositivos reales. Este es un aspecto crítico para el éxito del cabo ningún intercambio de información sensible.
m-commerce en general y de las soluciones para multicupones 3. Registro. Cada cliente interesado en usar cupo-
electrónicos en particular. nes tiene que registrarse con G mediante el protocolo de
Registro usando su identidad real, para así obtener una
III. U NA S OLUCIÓN DE C UPONES E LECTRÓNICOS pareja de claves de grupo. Entonces G enlaza la identidad real
A continuación resumimos los puntos fundamentales de de C con su correspondiente clave secreta para poder revocar
MC − 2D, solución de multicupones electrónicos para esce- el anonimato en caso de ser necesario.
narios multi-comerciante. Los detalles de la misma, así como 4. Emisión. El protocolo permite a C solicitar a E la
un amplio análisis de seguridad se pueden consultar en [16]. emisión de un multicupón firmado, al que llamamos MC2D .
Evaluación del Rendimiento de una Solución de Cupones Electrónicos para Dispositivos Móviles 249

1 MCω
cm ci c2 c1 E no puede reconocer. Además, MCPBS no contiene ninguna
seed identificador información referente a la identidad de C, gracias al uso de la
(ωseed ) (ω0 )
firma parcial ciega.
MC2D ci 5. Pago Múltiple. C puede pagar con cupones usando
cproof
i cpay
i el protocolo de Pago Múltiple (Figura 4) a cualquiera de
los V afiliados a E. El protocolo de Pago Múltiple tiene
2 MCPBS
Γ verif _data MC0ω cuatro pasos, mediante los cuales C puede gastar cualquier
número de cupones con una sola ejecución del protocolo,
Figura 2: Estructura MC2D compuesta por MCω (consideran- incluso cupones pertenecientes a diferentes tiras de cupones.
do un sola tira de m cupones) y MCPBS . Esta característica no incluida en propuestas previas contribuye
a mejorar la eficiencia de nuestra solución.
C firma usando el esquema de firma de grupo un conjunto
La estructura MC2D (Figura 2) está compuesta por dos de datos (data1 ) entre los cuales está la información de pago
elementos principales: MCω y MCPBS . (MCpayω ). V valida la información y, si los datos recibidos
1. MCω . Es la estructura que define todos los cupones que son válidos (MCpay ω no usado antes, MCpay ω pertenece a
forman un multicupón. MCω se organiza en múltiples MCPBS , verificación de MCPBS , etc.), envía un acuse de
tiras de cupones, cada una de ellas con un número recibo juntamente con el servicio solicitado. A continuación,
determinado de cupones y con el mismo valor (o des- se repite el proceso, esta vez usando otro conjunto de datos
cuento). Para cada tira de m cupones, la solución genera (data2 ) análogo
 al anterior,
 pero conteniendo la información
iterativamente (mediante hash chain) 2m + 1 hashes de prueba MCproof . Como antes, si las verificaciones son
ω
desde un identificador aleatorio y secreto (identificador satisfactorias, V envía un acuse de recibo.
seed: ωseed ) hasta el último hash de la tira (identificador
Cliente (C) Vendedor (V)
de la tira: ω0 ). Entonces, cada cupón (ci ) se define
mediante dos hashes: el de la derecha es la información Prepara información de pago
data1 = (MCpay
de pago (cpayi = ω2i−1 ) y el de la izquierda es la ω , idV , idr )
MCPBS , data1 , SignG
C (data1 ) , CertG
información de prueba cproof i = ω2i , ∀0 < i ≤ m
Verifica los elementos recibidos
(i indica el i-ésimo cupón de la tira). C mantiene MCω   Envía acuse de recibo de data1
s, SV s, SignG
C (data1 )
en secreto, excepto el elemento ω0 , como veremos a
continuación. Prepara información de prueba
 
2. MCPBS . Es la firma parcial ciega sobre MC0ω , la lista de data2 = MCproof
ω , idV , idr

todos los ω0 contenidos en MCω . El elemento MCPBS data2 , SignG


C (data2 )

contiene además datos de verificación (verif _data) así   Verifica los elementos recibidos
como información pública y acordada previamente (Γ) SignG Envía acuse de recibo de data2
SV C (data2 )

entre C y E. Ésta define las características de MC2D :


número de tiras y número de cupones en cada tira, el Figura 4: Protocolo de Pago Múltiple.
valor o descuento de cada cupón, marcas temporales
para limitar su validez, etc. 6. Depósito (on-line o off-line). El protocolo de
Depósito permite a V solicitar a E un depósito corres-
Cliente (C) Emisor (E) pondiente al valor de los cupones recibidos de los clientes.
Oculta MC0ω a E
V puede depositar cupones por cada transacción de pago
s = Γ, blind MC0ω
  (Depósito on-line) o solo cuando tiene una lista de cupones
s
(Depósito off-line).
7. Reembolso. En caso que C quiera recuperar el valor
Firma parcial ciega:
0 de cupones sin gastar, el protocolo le permite que E autorice
0 σ = SignP BS
(s)
σ sk E su reembolso. Este protocolo es opcional y su aplicación
 0 dependerá de la implementación y del escenario.
= Γ, verif _data, MC0ω
 
MCPBS = unblind σ
IV. C OMPARACIÓN CON UNA P ROPUESTA S IMILAR
Figura 3: Protocolo de Emisión. A continuación comparamos la eficiencia de nuestra solu-
ción (MC − 2D) frente al esquema multi-comerciante pro-
Una vez C ha generado MCω , empieza el protocolo de puesto en [13]. Con el objetivo de comparar las medidas,
Emisión (Figura 3). La emisión de un multicupón implica hemos adaptado el escenario de pruebas a las condiciones de
la ejecución de un proceso basado en una firma parcial ciega ejecución que los autores del esquema propuesto en [13] han
sobre MC0ω , mediante el cual E firma MC0ω (aunque no pueda realizado y analizado en [21] (un único portátil para cliente,
obtener los datos en claro), juntamente con la información comerciante y emisor, considerando la misma capacidad de
común (Γ). Como resultado, C obtiene MCPBS , elemento que cómputo). Además, hemos considerado las mismas pruebas
250 A. P. Isem-Deyà, M. F. Hinarejos, J. L. Ferrer-Gomila

Cuadro I: Comparación práctica de rendimiento respecto a [13].


Emisión (segundos) Pago Múltiple (segundos)
k = 5 cupones k+1 k = 5 cupones k+1
C E Total C V Total
[13] - - 4,280 0,811 - - 33,01 6,476
Nuestra solución 0,023 1,182 1,205 < 0,005 0,877 1,204 2,082 < 0,02
Nuestra solución* n/a n/a n/a n/a 0,093 1,204 1,297 < 0,02
* - aplicando precomputación para la firma de grupo en el cliente durante el protocolo de Pago Múltiple
n/a - no aplicable

Red
que en [21], teniendo en cuenta solo el tiempo de computación.
De esta forma, comparamos el tiempo necesario para emitir y
gastar un grupo de cinco cupones (k = 5) y la carga adicional
de emitir o gastar un cupón adicional (k + 1). El Cuadro I
ADSL
recoge los resultados de rendimiento de ambas soluciones.
Analizando el proceso de emisión, el cliente solo necesita
23 ms de computación para obtener un MC2D , lo que sig- Figura 5: Escenario de pruebas.
nifica que es aproximadamente 3,5 veces más rápido que el
presentado en [21].
Referente al protocolo de Pago Múltiple, nuestra pro- del vendedor (V), y un servidor virtual alojado en la red
puesta también obtiene mejores resultados. Tanto es así que el corporativa de la universidad, para ejecutar el código del
tiempo necesario para gastar 5 cupones es aproximadamente emisor (E). La aplicación cliente corre en un dispositivo
15 veces menor que el mostrado en [21]. Si además aplicamos Android, concretamente HTC Desire, que se conecta a los
técnicas de precomputación para la firma de grupo, nuestro servidores remotos mediante una red WiFi y una conexión
protocolo llegaría a ser hasta 25 veces más rápido, como se ADSL comercial. El Cuadro II resume las propiedades de los
puede observar en el Cuadro I. dispositivos considerados, mientras que el Cuadro III define
Finalmente, el tiempo necesario para emitir o gastar un las principales características de las dos redes consideradas.
cupón adicional en nuestro esquema, es despreciable. Esto es
debido a que durante el protocolo de Pago Múltiple, V Cuadro II: Dispositivos de test considerados.
solo tiene que computar dos hashes para cada cupón adicional.
Por tanto, aunque se gasten múltiples cupones durante una Dispositivo Rol CPU RAM OS

sola ejecución del protocolo, el tiempo de computación solo Virtualbox E 2.8 GHz 1GiB Debian Linux
aumentará de forma lineal en función del coste de dos opera- EC2 µ-instance V 2 EC2 CU (1) 633MiB AWS Linux
(≈ 1.0-1.2GHz)
ciones de hash por cada cupón. Como conclusión, el análisis HTC Desire C 1GHz 512MiB Android 2.3
demuestra que a diferencia de [13], MC − 2D es una solución (1)
Una EC2 CU (Compute Unit) proporciona la CPU equivalente
escalable donde su rendimiento es independiente del número a un procesador Xeon a 1.0-1.2GHz [25]
de cupones emitidos o gastados.
V. E VALUACIÓN DEL R ENDIMIENTO Cuadro III: Características de las redes.
Como hemos enfatizado en §I, no solo se debe tener en
cuenta el coste computacional de las operaciones del protoco- Camino Tasa de transmisión (media) Latencia (media)

lo, sino que también hay que introducir los costes debidos Origen Destino Bajada Subida Round-trip
C (ADSL) V <3Mbps <0.3Mbps >200 ms
al efecto de la red. En esta Sección vamos a evaluar el V E >25Mbps >25Mbps <100 ms
rendimiento de MC − 2D utilizando un dispositivo Android
como plataforma cliente. Además, hemos añadido la lógica
necesaria para implementar la comunicación entre clientes y
V-B. Tiempo de Respuesta y Longitud de Mensajes
servidores remotos.
Para conocer el rendimiento de la solución, hemos analizado
V-A. Escenario de Pruebas el tiempo de respuesta total percibido por la aplicación cliente,
La Figura 5 representa el escenario de pruebas considerado realizando pruebas para los protocolos en las que está invo-
para obtener los valores de rendimiento de MC − 2D. El es- lucrada, es decir, los protocolos de Registro, Emisión
cenario que proponemos emula un entorno real de producción y Pago Múltiple. Todas las pruebas se han repetido 20
con dispositivos móviles, servidores remotos y conexiones veces y se ha realizado la media de los valores obtenidos
de red comerciales. Así pues, como plataforma de servidor, descartando los resultados extremos.
hemos elegido la solución Elastic Cloud Computing (EC2) En el tiempo de respuesta total percibido por el cliente,
de Amazon Web Services (AWS), para ejecutar el código podemos distinguir dos factores principales:
Evaluación del Rendimiento de una Solución de Cupones Electrónicos para Dispositivos Móviles 251

• Tiempo de computación. La aplicación cliente tiene que Pago Múltiple, representa un coste asumible en caso que
realizar cálculos y operaciones matemáticas para generar se requiera comprobar inmediatamente con el emisor si los
las peticiones y procesar las respuestas recibidas. En este cupones recibidos no se han usado previamente.
caso, los valores temporales dependen de la capacidad de En definitiva, además de evidenciar la eficiencia y el rendi-
procesamiento de cada dispositivo, principalmente de la miento de MC−2D, el análisis también demuestra que no solo
CPU y de la memoria disponible. es necesario evaluar el coste respecto al uso de los recursos de
• Tiempo de transmisión de red. El tiempo consumido por procesamiento necesarios, sino que también es imprescindible
la aplicación para enviar y recibir datos a través de la evaluar el tiempo consumido en la transferencia de datos a
red. través de la red. Tanto es así que hemos demostrado que el
tiempo necesario para enviar y recibir mensajes, puede ser
2500 incluso más importante que el tiempo de procesamiento de
Tiempo de respuesta total (ms)

2000
los mismos mensajes.

1500
VI. C ONCLUSIONES
En este trabajo hemos comprobado como nuestra propuesta
1000
de cupones electrónicos para el escenario multi-comerciante
500 es eficiente, escalable y que puede ser usada en dispositivos
0
móviles. Para demostrarlo, hemos implementado la solución,
Registro Emisión PagoMúltiple comparado su eficiencia respecto a la propuesta previa y
cpu red analizado su rendimiento considerando un escenario real.
Figura 6: Tiempo de respuesta total para cada protocolo En primer lugar, la comparación nos permite afirmar que
(usando HTC Desire y acceso WiFi). MC − 2D es más eficiente, utilizando el mismo escenario
de pruebas que la propuesta anterior y considerando solo el
efecto de la computación. Esto es debido, principalmente, a
La Figura 6 muestra el tiempo de respuesta medido en el la utilización de mecanismos criptográficos con una menor
cliente para cada uno de los protocolos analizados usando carga y a la capacidad de nuestro esquema de permitir emi-
el dispositivo móvil HTC Desire. El protocolo que implica tir y gastar cupones utilizando una misma transacción. En
mayor coste es el de Pago Múltiple, dado que es el que segundo término, la implementación completa del esquema
incorpora mayor número de operaciones, tanto para cliente sobre la plataforma Android nos ha permitido realizar una
como para vendedor (entre las cuales hay que destacar dos evaluación del rendimiento considerando un escenario realista,
firmas de grupo) y también un mayor tiempo de espera de con servidores remotos y comunicaciones reales, escenario
red. alejado de los entornos de prueba limitados que normalmente
Si analizamos la Figura 7, podemos observar como la mayor encontramos en las propuestas científicas. De esta manera,
parte del tiempo consumido por cada uno de los protocolos es las medidas reflejan todos los factores que pueden afectar al
básicamente debido a tareas de red: enviar mensajes y quedar tiempo de respuesta. De hecho, hemos podido comprobar que
en espera de recibir los mensajes de respuesta. Las tareas de los costes debidos a otras tareas diferentes a la computación
red llegan a significar incluso más del 50 % del tiempo de deben también ser analizados cuidadosamente para obtener
respuesta total percibido por la aplicación cliente. una solución viable y con un tiempo de respuesta adecuado
para el entorno de ejecución de la misma.
100
Carga debida a cada protocolo (%)

Como trabajo futuro, sería interesante estudiar la viabilidad


80 de llevar a cabo el pago con cupones en los comercios
60 utilizando tecnología NFC.
40 AGRADECIMIENTOS
20 Este trabajo ha sido parcialmente financiado por el Ministe-
rio de Educación y Ciencia bajo el proyecto CONSOLIDER-
0
Registro Emisión PagoMúltiple ARES (CSD2007-00004).
cpu red
R EFERENCIAS
Figura 7: Porcentaje de carga debido a cada una de las tareas. [1] BuddeComm. Global Mobile Communications - Statistics, Trends and
Regional Insights. Report, verificado en Abril, 2014. http://goo.gl/
Si también analizamos el resultado obtenido teniendo en Vw40qu.
[2] Techcrunch. Forrester 2012-2017: e-Commerce Forecast Analysis. Sitio
cuenta una ejecución on-line del protocolo de Depósito por web, verificado en Abril, 2014. http://goo.gl/7Dtwup.
parte del vendedor durante el Pago Múltiple, podemos [3] Edenred. Compañía internacional de talonarios de cupones para restau-
afirmar que el tiempo añadido en el tiempo de total de respues- rantes. Sitio web, verificado en Abril, 2014. http://www.edenred.com.
[4] Gourmet. Compañía internacional de talonarios de cupones para
ta es de solo 680 ms. Por consiguiente, el hecho de ejecutar restaurantes. Sitio web, verificado en Abril, 2014. http://www.
una validación on-line de los cupones por cada ejecución del cheque-dejeuner.com/.
252 A. P. Isem-Deyà, M. F. Hinarejos, J. L. Ferrer-Gomila

[5] Bancotel. Compañía internacional de talonarios de cupones para hoteles. [25] Amazon Web Services. Amazon Elastic Compute Cloud: Instance Types
Sitio web, verificado en Abril, 2014. http://www.bancotel.es/. and Compute Resources Measurement, verificado en Abril, 2014. http:
[6] Boying Zhang, Jin Teng, Xiaole Bai, Zhimin Yang, and Dong Xuan. //goo.gl/k0CJhn.
P3-coupon: A probabilistic system for Prompt and Privacy-preserving
electronic coupon distribution. In PerCom, pages 93–101. IEEE, 2011.
[7] Carlo Blundo, Stelvio Cimato, and Annalisa De Bonis. Secure e-
coupons. Electronic Commerce Research, 5:117–139, January 2005.
[8] Liqun Chen, Matthias Enzmann, Ahmad-Reza Sadeghi, Markus Sch-
neider, and Michael Steiner. A Privacy-Protecting Coupon System. In
Financial Cryptography and Data Security, volume 3570 of Lecture
Notes in Computer Science, pages 578–578. Springer-Verlag, Berlin,
Heidelberg, 2005.
[9] Sébastien Canard, Aline Gouget, and Emeline Hufschmitt. A handy
multi-coupon system. In Applied Cryptography and Network Security,
volume 3989 of Lecture Notes in Computer Science, pages 66–81.
Springer-Verlag, Berlin, Heidelberg, 2006.
[10] Lan Nguyen. Privacy-protecting coupon system revisited. In Financial
Cryptography and Data Security, volume 4107 of Lecture Notes in
Computer Science, pages 266–280. Springer-Verlag, Berlin, Heidelberg,
2006.
[11] Liqun Chen, B. Alberto N. Escalante, Hans Löhr, Mark Manulis, and
Ahmad-Reza Sadeghi. A privacy-protecting multi-coupon scheme with
stronger protection against splitting. In Proceedings of the 11th Inter-
national Conference on Financial Cryptography and 1st International
Conference on Usable Security, volume 4886 of Lecture Notes in
Computer Science, pages 29–44. Springer-Verlag, Berlin, Heidelberg,
2007.
[12] Alberto N. Escalante, Hans Löhr, and Ahmad-Reza Sadeghi. A non-
sequential unsplittable privacy-protecting multi-coupon scheme. In GI
Jahrestagung (2), pages 184–188, 2007.
[13] Frederik Armknecht, B. Alberto N. Escalante, Hans Löhr, Mark Ma-
nulis, and Ahmad-Reza Sadeghi. Secure multi-coupons for federated
environments: privacy-preserving and customer-friendly. In Proceedings
of the 4th International Conference on Information Security Practice and
Experience, volume 4991 of Lecture Notes in Computer Science, pages
29–44. Springer-Verlag, Berlin, Heidelberg, 2008.
[14] Liu Xin and Qiu liang Xu. Practical compact multi-coupon systems. In
IEEE International Conference on Intelligent Computing and Intelligent
Systems (ICIS), volume 3, pages 211 –216, 2009.
[15] Sue-Chen Hsueh and Jun-Ming Chen. Sharing secure m-coupons
for peer-generated targeting via eWOM communications. Electronic
Commerce Research and Applications, 9:283–293, July 2010.
[16] A. Pere Isern-Deya, M.F. Hinarejos, JL. Ferrer-Gomila, and M. Payeras-
Capellà. A secure multicoupon solution for multi-merchant scenarios.
In IEEE 10th International Conference on Trust, Security and Privacy
in Computing and Communications (TrustCom), pages 655–663, 2011.
[17] Xiaoling Dai and John Grundy. NetPay: An off-line, decentralized
micro-payment system for thin-client applications. Electronic Commerce
Research and Applications, 6(1):91–101, 2007.
[18] Jen-Ho Yang and Chin-Chen Chang. A low computational-cost elec-
tronic payment scheme for mobile commerce with large-scale mobile
users. Wireless Personal Communication, 63(1):83–99, March 2012.
[19] Wenmin Li, Qiaoyan Wen, Qi Su, and Zhengping Jin. An efficient and
secure mobile payment protocol for restricted connectivity scenarios in
vehicular ad hoc network. Computer Communications, 35(2):188 – 195,
2012.
[20] Francisco Borrego-Jaraba, Pilar Castro Garrido, Gonzalo Cerruela Gar-
cía, Irene Luque Ruiz, and Miguel Ángel Gómez-Nieto. A Ubiquitous
NFC Solution for the Development of Tailored Marketing Strategies
Based on Discount Vouchers and Loyalty Cards. Sensors, 13(5):6334–
6354, 2013.
[21] Alberto N. Escalante. Privacy-protecting multi-coupon schemes with
stronger protection against splitting. In Master’s Thesis. Department of
Computer Science. Saarland University. 2008.
[22] David Chaum. Blind Signatures for Untraceable Payments. Advances
in Cryptology Proceedings of Crypto 82, pages 199–203, 1983.
[23] Hung-Yu Chien, Jinn-Ke Jan, and Yuh-Min Tseng. RSA-based Partially
Blind Signature with Low Computation. International Conference on
Parallel and Distributed Systems ICPADS 2001, pages 385–389, 2001.
[24] Dan Boneh, Xavier Boyen, and Hovav Shacham. Short Group Signa-
tures. In Advances in Cryptology – CRYPTO 2004, volume 3152 of
Lecture Notes in Computer Science, pages 227–242. Springer-Verlag,
Berlin, Heidelberg, 2004.
RECSI 2014, Alicante, 2-5 septiembre 2014

Análisis Visual del Comportamiento de


Aplicaciones para Android
Oscar Somarriba, Ignacio Arenaza-Nuño, Roberto Uribeetxeberria, Urko Zurutuza

Dpto. de Electrónica e Informática


Mondragon Goi Eskola Politeknikoa
Mondragon Unibertsitatea
Emails: oscar.somarriba@alumni.mondragon.edu, {iarenaza,ruribeetxeberria,uzurutuza}@mondragon.edu

Resumen—Los dispositivos móviles inteligentes equipados con del mercado), Android es el OS más atacado con un 99 % de
funciones avanzadas de computación y comunicaciones han los ataques malware según lo publicado por Cisco y Kapersky
crecido rápidamente. Sin embargo, a pesar de los mecanismos de Labs durante el tercer trimestre Q3 del 2013, y resumido en
seguridad existentes, y dada la cantidad creciente de dispositivos
conectados a Internet, también han aumentado exponencialmente el reporte de SOPHOS [2]. Esta investigación se enfoca en el
la cantidad de aplicaciones maliciosas (malware) dirigidas a ellos. seguimiento del comportamiento en tiempo de ejecución de las
En este trabajo mostramos cómo los componentes peligrosos applicaciones y la visualización de sus funciones maliciosas
y maliciosos del malware móvil se pueden visualizar de una para descubrir qué tipo de ataques o intenciones existen
manera intuitiva a fin de descubrir fácilmente qué funciones de detrás de estas. La plataforma propuesta de monitorización
Android pueden desencadenar el fraude. Nuestro enfoque incluye
un método para interceptar llamadas a funciones (”hooking”) con está compuesta básicamente de cuatro elementos, a saber: (i)
el fin de recoger trazas pertinentes de la aplicación durante de una aplicación Android llamada (Sink) que guı́a al usuario en
tiempo de ejecución. Esto permite la monitorización de llamadas la selección y parametrización de la aplicación a supervisar,
a funciones de la API de Android relacionadas con los permisos (ii) un cliente embebido que se inserta en cada aplicación a
de instalación de la misma. Las trazas obtenidas se colectan en ser supervisada, (iii) un servicio web encargado de recoger
un servidor web central donde tiene lugar la visualización del
comportamiento de las aplicaciones. la aplicación a monitorizar, enviar al dispositivo la aplicación
Palabras clave—seguridad en aplicaciones móviles (mobile instrumentada, y recopilar las trazas que va generando, (iv) y
application security), software malicioso en aplicaciones móviles finalmente un componente de visualización que muestra grafos
(mobile malware), análisis Visual (visual analytics), análisis del relacionados con el comportamiento de las trazas o llamadas
comportamiento de aplicaciones móviles (application behavior a funciones, relativa a la aplicación monitorizada.
analysis)
Se prevé que esta herramienta pueda ser utilizada por
analistas malware con el fin de realizar una inspección visual
I. I NTRODUCCI ÓN
de las aplicaciones en estudio. Por otra parte, la monitori-
La adopción masiva de las comunicaciones móviles en la zación de una aplicación en el momento de su ejecución es
vida cotidiana ha traı́do una necesidad de establecer en la esencial para entender cómo esta interactúa con el dispositivo,
sociedad una confianza en la infraestructura móvil, y esto con componentes claves tales como las APIs (Application
supone un gran reto en la actualidad. Esto es debido a que las Programming Interfaces) provistas por el sistema. Una API
plataformas móviles, como teléfonos inteligentes y tabletas, especifica cómo algunos componentes de software (rutinas,
ası́ como las aplicaciones móviles están aumentando expo- protocolos y herramientas) deben actuar cuando estén sujetos
nencialmente en popularidad. Actualmente existen alrededor a invocaciones de otros componentes. Al rastrear y analizar
de 1 millión de aplicaciones para el Sistema Operativo móvil estas interacciones, podemos ser capaces de dar seguimiento
Android en su sitio web de ventas en lı́nea Google Play, con un a cómo se comportan las aplicaciones, a cómo manejan datos
estimado de 50 mil millones de descargas [1]. En contraste, el sensibles e interactuar con el sistema operativo.
software malicioso (malware) que ataca la plataforma Android
ha aumentado considerablemente en los últimos 24 meses en I-A. Contribución y organización del artı́culo
un 100 %. Las nuevas familias de malware Android están A lo largo de este artı́culo se presenta un método para
evolucionando rápidamente para evitar ser detectados por los la detección de malware, mediante el análisis visual de la
escáneres tradicionales basados en firmas. Hay una necesi- ejecución de las funciones a las que llaman. La subsiguientes
dad de mejorar las capacidades de detección para superar partes del trabajo están organizadas como a continuación se
los nuevos desafı́os de detección debido a la ofuscación, y detalla. La sección II le da al lector las nociones básicas detrás
ası́ mitigar o remediar el impacto de la evolución de malware de los componentes utilizados en las siguientes secciones y re-
para Android. copila el trabajo previo relacionado con la temática. La sección
Dado que el sistema operativo móvil más popular es An- III describe la arquitectura de monitorización y visualización
droid OS de la compañia Google (en la actualidad tiene el 70 % del sistema presentado. La sección IV muestra los resultados
254 O. Somarriba, I. Arenaza, R. Uribeetxeberria, U. Zurutuza

obtenidos con la infraestructura implementada haciendo uso que agrupa la frecuencia de llamadas al sistema de las apli-
de diferentes aplicaciones. Por último, las secciones V y VI caciones para detectar malware [8]. En un reciente trabajo de
presentan las conclusiones e identifican unas posibles lı́neas Jiang y Zhou [9] se han mapeado los tipos más comunes
futuras de trabajo, respectivamente. de violaciones de permisos en un gran conjunto de datos de
malware. Por otro lado, en [10], [11] se pueden encontrar
II. A NTECEDENTES Y T RABAJOS RELACIONADOS estudios más amplios sobre el estado del arte de la seguridad
En los ambientes convencionales de Java, el código fuente para los dispositivos móviles.
es compilado en un conjunto de instrucciones llamado byte- Entre los sistemas de monitorización de comportamiento
code, el cuál es almacenado en un formato de ficheros .class. de aplicaciones se encuentra una propuestas que permite
Estos ficheros son más tarde leı́dos por la Máquina Virtual de visualizar mediante grafos las llamadas a funciones de una
Java (JVM) al momento de su ejecución. Por otra parte, en aplicación determinada, pero los autores lo hacen mediante
Android, el código fuente de Java que ha sido compilado en técnicas de análisis estático [12]. El sistema hace un mapa de
ficheros .class debe ser convertido en ficheros .dex, frecuen- todas las funciones disponibles, mientras que este trabajo solo
temente referidos como ficheros ejecutables del tipo Dalvik monitoriza y visualiza aquellas funciones que se suceden en
(Dalvik Executable). Además, Android application package tiempo de ejecución, obteniendo además los parámetros que
file (apk), es el formato de fichero utilizado para distribuir se envı́an a la función. No se han encontrado propuestas de
e instalar software de aplicaciones y middleware en el sistema detección de malware en base a análisis dinámico que opere
operativo Android. Las apps se presentan en un fichero con en el dispositivo del usuario de manera muy ligera y ”online”.
el formato .apk, en un contenedor de la aplicación binaria Esto es necesario debido a la apertura de la Plataforma
que consiste en ficheros .dex, AndroidManifest.xml, y los Android donde el malware puede también ser instalado a
ficheros de recursos de la aplicación. Asimismo, el archivo través de apps de otras fuentes, tales como páginas web y
.apk resultante se firma con una clave (keystore) para establecer de memorias USB, lo que requiere mecanismos de detección
la identidad del autor de la app. Existen métodos para realizar que operan en el propio dispositivo.
el proceso en el sentido inverso. Apktool es un conjunto
de herramientas para realizar ingenierı́a inversa en apps, lo III. D ESCRIPCI ÓN DEL SISTEMA
que simplifica el proceso de ensamble y desensamble de En esta sección se presenta una solución aplicable para la
ficheros binarios de Android (.apk) a ficheros Smali (.smali), detección de anomalı́as producto de la presencia de malware
permitiendo la modificación del código fuente. Esto resulta en las aplicaciones, basada en un análisis dinámico combinado
especialmente útil para el análisis de las aplicaciones. con el soporte de un servidor web.
El análisis y detección de malware para Android ha sido La Figura 1 muestra la estructura de la plataforma de mo-
un tema candente de la investigación en los últimos años. Un nitorización propuesta. Las etapas para llevar a cabo la misma
ejemplo de los mecanismos de inspección para la identifica- consisten en los siguientes pasos lógicos: Etapa I: Envió de
ción de aplicaciones con malware para Android se presenta en la aplicación APP y de una lista de permisos que se desean
[3], donde también se desarrolló un sistema de instrumentación monitorizar al Servidor Web, Etapa II: Instrumentación de la
transparente para la automatización de las interacciones de los aplicación mediante un proceso de hooking generando APP’,
usuarios. Etapa III: Instalación y activación de la APP’ reemplazando a
Además, en [4] se utiliza un marco de seguridad llamado APP en el dispositivo, Etapa IV: Almacenamiento de las trazas
XManDroid para extender el mecanismo de seguimiento de de APP’ en una base de datos, y la Etapa V: Visualización de
Android, con el fin de detectar y prevenir ataques del tipo los grafos relacionados con APP’.
escalada de privilegios a nivel de aplicación durante el tiempo De nuevo, en la Figura 1 se muestra un diagrama de bloques
de ejecución sobre la base de una polı́tica determinada. Adi- formado por cuatro componentes: la aplicación Sink, un cliente
cionalmente, los autores en [5] y [6] han propuesto diferentes embebido, un servidor web, y el componente de visualización.
técnicas de seguridad con respecto a los permisos de las III-1. La Aplicación Sink: es una aplicación Android con
apps. Por ejemplo, en este último, se propone una herramienta dos funciones principales: una de gestión de la aplicación a
para extraer la especificación de permisos del código fuente monitorizar, y otra para el manejo de las trazas. La parte del
de Android OS. Por otra parte, las técnicas de detección tratamiento de la aplicación, a su vez, está compuesta de un
de malware en dispositivos móviles usualmente se pueden conjunto de actividades como se muestra en la Figura 2(d).
clasificar de acuerdo al modo en el que se realiza el análisis: En la Figura 2(a) el usuario selecciona la aplicación que
análisis estático y análisis dinámico. La primera se basa en desea monitorizar, entre aquellas que no vienen reinstaladas de
intentar identificar el código malicioso por descompilación de fábrica. En el siguiente paso se seleccionan los permisos que
la aplicación y la búsqueda de cadenas o bloques de códigos el usuario estime convenientes a monitorizar, relacionados con
sospechosos; en la segunda se analiza el comportamiento de la aplicación y considerados como peligrosas según el mapa
una determinada aplicación utilizando la información de su de funciones API obtenido con PScout [6]. La interfaz guı́a
estado de ejecución. Algunos tipos recientes de detección de después al usuario a lo largo de varias actividades donde se
malware son: Dendroid [7] como un ejemplo de un análisis llevan a cabo la subida de la aplicación y lista de permisos a
estático para dispositivos con Android, y Crowdroid, sistema monitorizar al Servidor, descarga de la aplicación modificada,
Análisis Visual del Comportamiento de Aplicaciones para Android 255

Hooking Process
Non
Monitored Stage I Function 1

Android Function 2

application N APP Function n

List of
Application functions
to hook Disassembled to hook
Permissions files

Monitored partial
Android trace
application 2 APP’ Stage II
SINK Modified
Embedded files
client Hooked
Stage III: application
Running DrawGraph
APP’ (Java Program)
Monitored
Android partial
trace
Stage IV
application 1 Database Databases
Embedded Traces
client of APP’ Stage V

Web Service

Smart Device Server

Figura 1: Componentes del Sistema de Monitorización del comportamiento de la Aplicación.

e instalación de la misma. Finalmente, un botón permite iniciar junto con el nombre de la función (e.g., sendTextMessage(),
o detener la monitorización de la aplicación en el cualquier getDeviceID(), execSQL(), SendBroadcast(), etc.). A continua-
instante. ción, todos los ficheros modificados junto con el resto de los
Por otra parte, el Sink permite realizar la gestión de las recursos desensamblados se reensamblan y se empaquetan en
trazas, ejecutando servicios en segundo plano. Este gestor un fichero binario Android .apk. Al terminar la Etapa II, la
es el encargado de colectar las trazas enviadas desde los APP’ es descargada al Sink.
clientes embebidos individuales, ubicados en cada una de las III-4. Visualizaciones: Con el fin de realizar un análisis vi-
aplicaciones supervisadas, añadiéndoles una marca de tiempo sual del comportamiento de las aplicaciones se utiliza una base
y el hash del ID del dispositivo, y su almacenamiento en una de datos NoSQL basada en grafos, Neo4j1 . Neo4j almacena los
memoria intermedia circular común. Por último, las trazas se datos en una estructura orientada a grafos, en lugar de utilizar
envı́an periódicamente al servicio web donde se almacenan en las tablas relacionales de las bases de datos convencionales.
una base de datos. En términos generales, un grafo es una representación de un
III-2. El Cliente Embebido: consiste en un módulo de conjunto de nodos y las relaciones entre ellos unidos por medio
comunicación que utiliza el protocolo UDP para la transmisión de enlaces, (vértices y aristas o arcos, respectivamente). Esto
de las trazas de las funciones modificadas invocadas en APP’, se ilustra en la Etapa V de la Figura 1. De esta manera,
al Sink. se puede plasmar cada uno de los comportamientos de la
aplicación analizada con una representación simple pero muy
III-3. El Servicio Web: provee los siguientes servicios al ilustrativa. Los grafos se elaboran mediante relaciones de
Sink: subir aplicaciones, descargar las aplicaciones modifi- tipo ”una Aplicación incluye varias Clases que a su vez
cadas y enviar las trazas. Ahora la pieza clave de todo el llaman a Funciones”. El primer nodo superior, ”Aplicación”,
sistema y donde reside la lógica del método presentado, es la contiene el nombre del paquete de la aplicación, que es única
herramienta que instrumenta la aplicación, el proceso conocido para cada una de las aplicaciones existentes, mientras que el
como ”hooking”. Este componente mapea los permisos de segundo nodo, ”Clase”, representa el nombre del componente
la aplicación en llamadas a funciones que son marcadas, las de Android que ha llamado a la ”API call”, el nodo ”Función”.
cuáles van ser monitorizadas. Por lo tanto, este proceso es una Una vez se obtiene la información recogida por el servicio
acción automática realizada por el servidor Web cada vez que Web en la base de datos, toda su estructura de llamadas a fun-
una aplicación es enviada al mismo. ciones puede ser filtrada y tratada. Inicialmente se genera un
Las funciones modificadas registrarán el nombre de la grafo sin incluir colores empleando el lenguaje Cypher Query
aplicación, el nombre de paquete de la aplicación, y el hash de
la aplicación y enviará esta información al cliente embebido 1 Software disponible en el sitio web http://www.neo4j.org
256 O. Somarriba, I. Arenaza, R. Uribeetxeberria, U. Zurutuza

(a) (b) (c) (d)


Figura 2: Interfaz de Usuario del Sink. (a) Selección de la aplicación, (b) Pasos de la aplicación, (c) Selección de los permisos,
y (d) Proceso de monitorización.

Languaje, que permite operar y aplicar transformaciones en el API ”sospechosas”, y en función de sus parámetros, se asignan
grafo. colores a éstas. Al hacerlo, nos permite identificar rápidamente
Para ello, un experto debe completar y encadenar un las funciones y asociarla con elementos relacionados. Al
conjunto de reglas que ayudan a resaltar el comportamiento aplicar la clasificación de funciones en base a un color para
malicioso conocido (por ejemplo, la llamada a la función cada nodo del grafo, esto permite la construcción de un ”mapa
SendMessageText(). Para ello, se buscan los nodos en la parte visual”que describe y ayuda al análisis de su funcionamiento.
inferior del grafo relacionado con las llamadas a funciones Además, este grafo es adecuado para guiar el analista durante
API consideradas maliciosas. Las reglas incluyen la búsqueda el examen de clasificación de una muestra de malware peli-
y representación de funciones maliciosas (representadas en grosa debido a que el sombreado rojo de los nodos indican
rojo), sospechosas o maliciosas pero no crı́ticas (en naranja) estructuras maliciosos identificados por la infraestructura de
y benignas (en verde). Cuando se detecta un comportamiento monitorización. Esta revisión debe realizarse entre todos los
malicioso como el envı́o de mensajes SMS a un número de nodos de las funciones llamadas en el nivel más bajos de cada
pago premium sin el consentimiento del usuario, se procede a rama del árbol del grafo. Sin embargo, con el fin de colorear
representar el nodo bajo inspección en color rojo como señal completamente el grafo de la aplicación hasta llegar al nodo
de alerta usando Cypher. raı́z, hay que recurrir a realizar un análisis de abajo hacia
arriba (”bottom-top”) del vecindario de cada función invocada
IV. R ESULTADOS
y las asociadas. Por lo tanto, si una de las ramas del grafo es
En esta sección se muestran los resultados de utilizar la coloreada en rojo, a continuación, la app se considera como
plataforma de monitorización y visualización para algunos potencialmente maliciosa.
ejemplos. En este artı́culo, exploramos 3 diferentes apps con En particular, los grafos de las aplicaciones como Skype,
el fin de evaluar todo el marco de trabajo: Angry Birds, y Fake Player se muestran en la Fig. 3 lo cual
Skype-free IM & video calls proporciona al usuario una indicación del estado de seguridad
La aplicación popular Angry Birds de éllos. Para ello, se han creado reglas Cypher para colorear
El malware Fake player aquellos nodos que contienen una llamada a función de envı́o
IV-A. Las Trazas de SMS en rojo, y llamadas a funciones para obtener y mostrar
publicidad (Adware) en naranja.
Después de ejecutar las aplicaciones arriba mencionadas
durante 2-3 de minutos cubriendo todas las funcionalidad de Como resultado, el grafo generado para la aplicación Skype
la aplicación, el servidor Web recolecta un gran volumen de no muestra ninguna amenaza y sus nodos aparecen coloreados
trazas de cada una de las mismas. en verde, tal y como se muestra en la Fig. 3(a).
Por otra parte, en la Fig. 3(b) existe una aplicación con
IV-B. Análisis Visual de las Trazas Adware, por lo que varios nodos de esta aplicación están
Como se ha dicho anteriormente, un conjunto de reglas coloreados en naranja, mientras en contraste las funciones
predefinidas por expertos nos permite identificar las funciones maliciosas que identifican un malware se colorean en rojo,
Análisis Visual del Comportamiento de Aplicaciones para Android 257

como se muestra en la Figura 3(c) para la aplicación Fake aplicaciones de terceras partes y las aplicaciones instaladas
Player. en el dispositivo.
Asimismo se puede ampliar el modelo anti-malware descrito
V. C ONCLUSIONES en este trabajo, desarrollando una arquitectura que lo comple-
mente mediante la detección automática de malware móvil
En este trabajo se propone una arquitectura de supervisión
como por ejemplo con el uso de VirusTotal, realizando ası́ un
con el objetivo de monitorizar aplicaciones Android a gran
paso de filtrado previo. En definitiva, se podrı́a obtener un
escala, sin modificar el firmware del mismo, sin la necesidad
sistema mas versátil disponiendo en el móvil de una aplicación
de obtener permisos de administrador del dispositivo, y que
que reporte anomalı́as (i.e., desviación del patrón de tráfico de
resulta en un grafo de visualización donde se destacan las
las aplicaciones de red) a un servidor anti-malware en su red.
llamadas a función correspondientes a los comportamientos de
malware predefinido. La plataforma está compuesta por cuatro R EFERENCIAS
componentes: el cliente embebido, el Sink, el servicio web y [1] Businessinsider, “businessinsider.” Available Online, 2014.
la visualización. Antes de que una aplicacón sea supervisada, [2] Sophos, “Sophos mobilebile security threat report.” Available On-
el Sink la transfiere al Servicio Web, que se encarga de la line, 2014. http://www.sophos.com/en-us/medialibrary/PDFs/other/
sophos-mobile-security-threat-report.ashx.
inserción de los hooks añadiendo el cliente embebido en el [3] M. Karami, M. Elsabagh, P. Najafiborazjani, and A. Stavrou, “Behavioral
interior la aplicación. Finalmente el Sink descargará la apli- analysis of android applications using automated instrumentation,” in
cación recién instrumentada. Cuando una función modificada Software Security and Reliability-Companion (SERE-C), 2013 IEEE 7th
International Conference on, pp. 182–187, June 2013.
es llamada, se construye una traza parcial que será pasada al [4] S. Bugiel, L. Davi, A. Dmitrienko, T. Fischer, and A.-R. Sadeghi,
cliente embebido que a su vez la enviará al Sink. Este recoge “Xmandroid: A new android evolution to mitigate privilege escalation
los trazas parciales de todas las aplicaciones supervisadas, las attacks,” Technical Report TR-2011-04, Technische Universität Darms-
tadt, Apr. 2011.
completa, y las sube mediante el servicio Web. El Servidor [5] J. Jeon, K. K. Micinski, J. A. Vaughan, A. Fogel, N. Reddy, J. S. Foster,
finalmente transforma las trazas y las almacena en una base and T. Millstein, “Dr. android and mr. hide: Fine-grained permissions in
de datos de grafos. android applications,” in Proceedings of the Second ACM Workshop on
Security and Privacy in Smartphones and Mobile Devices, SPSM ’12,
Por último, se aplican un conjunto de reglas predefinidas (New York, NY, USA), pp. 3–14, ACM, 2012.
con el fin de obtener una visualización donde se pone de [6] K. W. Y. Au, Y. F. Zhou, Z. Huang, and D. Lie, “Pscout: Analyzing
relieve o resalta la conducta maliciosa de la aplicación super- the android permission specification,” in Proceedings of the 2012 ACM
Conference on Computer and Communications Security, CCS ’12, (New
visada. La infraestructura desarrollada es capaz de monitorizar York, NY, USA), pp. 217–228, ACM, 2012.
simultáneamente varias aplicaciones en distintos dispositivos [7] G. Suarez-Tangil, J. E. Tapiador, P. Peris-Lopez, and J. Blasco, “Den-
y la recopilación de todos las trazas se da en un mismo droid: A text mining approach to analyzing and classifying code structu-
res in android malware families,” Expert Syst. Appl., vol. 41, pp. 1104–
lugar. Las pruebas realizadas en este trabajo muestran que 1117, Mar. 2014.
las aplicaciones pueden ser preparadas para ser supervisadas [8] I. Burguera, U. Zurutuza, and S. Nadjm-Tehrani, “Crowdroid: Behavior-
en cuestión de minutos y las aplicaciones modificadas se based malware detection system for android,” in Proceedings of the 1st
ACM Workshop on Security and Privacy in Smartphones and Mobile
comportan como estaban originalmente diseñadas. Además, se Devices, SPSM ’11, (New York, NY, USA), pp. 15–26, ACM, 2011.
ha mostrado que la infraestructura se puede utilizar para de- [9] X. Jiang and Y. Zhou, Android Malware. Springer New York, 2013.
tectar comportamientos maliciosos en aplicaciones, tales como [10] M. La Polla, F. Martinelli, and D. Sgandurra, “A survey on security
for mobile devices,” Communications Surveys Tutorials, IEEE, vol. 15,
el monitorizado del malware Fake Player. Las evaluaciones pp. 446–471, First 2013.
del Sink han revelado que nuestro sistema de supervisión es [11] G. Suarez-Tangil, J. Tapiador, P. Peris-Lopez, and A. Ribagorda, “Evo-
reactivo, no pierde ninguna de las trazas parciales, y tiene un lution, detection and analysis of malware for smart devices,” Communi-
cations Surveys Tutorials, IEEE, vol. PP, no. 99, pp. 1–27, 2013.
impacto muy pequeño en el rendimiento de las aplicaciones [12] H. Gascon, F. Yamaguchi, D. Arp, and K. Rieck, “Structural detection
supervisadas. of android malware using embedded call graphs,” in Proceedings of the
2013 ACM workshop on Artificial intelligence and security, pp. 45–54,
ACM, 2013.
VI. T RABAJOS FUTUROS
Como trabajo futuro, la plataforma se puede ampliar para
ser capaz de supervisar las funciones Android conocidas como
Intents, enviadas por la aplicación que permitirı́an a una
aplicación llamar a funciones que no requieren ningún tipo
de permiso especı́fico (como por ejemplo que una función
llame a un navegador sin que la aplicación tenga permisos
de Internet). No ser capaz de monitorear Intents significa que
la infraestructura no es capaz de realizar un seguimiento, de
si la aplicación supervisada inicia otra aplicación durante un
corto perı́odo de tiempo para realizar una tarea determinada,
e.g., para abrir un navegador web para mostrar la EULA (end-
user license agreement). Además, esto permitirı́a saber cómo
la aplicación bajo prueba se comunica con el resto de las
258 O. Somarriba, I. Arenaza, R. Uribeetxeberria, U. Zurutuza

(a) Grafo de Skype.

(b) Grafo del juego Angry Birds.

(c) Grafo del malware Fake Player.


Figura 3: Grafos de las aplicaciones bajo prueba. (a) Diagrama Superior: Grafo de Skype, (b) Diagrama Intermedio: Grafo de
la aplicación Angry Birds, y (c) Diagrama Inferior: Grafo del malware Fake Player.
RECSI 2014, Alicante, 2-5 septiembre 2014

Estudio práctico de mecanismos de seguridad en


dispositivos Android
Enric Jódar Ciurana Josep Pegueroles Vallés Juan Vera del Campo
Departament d’Enginyeria Telemàtica Departament d’Enginyeria Telemàtica Departament d’Enginyeria Telemàtica
Universitat Politècnica de Catalunya Universitat Politècnica de Catalunya Universitat Politècnica de Catalunya
Email: enric.jodar@entel.upc.edu Email: josep.pegueroles@upc.edu Email: juanvi@entel.upc.edu

Resumen—Android climbed up to 80 percent of the smartp- ası́ como la percepción sobre el nivel de seguridad por parte de
hone and mobile devices market share. One of the key aspects los usuarios. En la sección III se han estudiado los principales
for the acceptance of a mobile OS is the security degree the user elementos de seguridad sobre los que va a tratar el artı́culo.
perceives from the system. In this article, we explore some of the
important security mechanisms implemented in Google Android En el apartado IV desarrollamos en detalle el análisis de
through the study of several recent vulnerabilities. Particularly, seguridad mediante ejemplos concretos y en la sección V se
we discuss a recent security issue in WhatsApp, the dangers hacen diversas propuestas que permitan mejorar la seguridad
of connecting devices to external machines and the security de nuestro dispositivo. Finalmente, este artı́culo acaba con las
of current mechanisms for access control. We describe these conclusiones de nuestro trabajo y referencias para consultar.
vulnerabilities through in-lab proof-of-concepts. The experience
learned from these cases is used to propose better practices for
improving the security of the system. II. T RABAJO RELACIONADO
Palabras clave—Android, acceso (access control), cifrado
(encryption), revisión (survey), seguridad (security) La elaboración de este artı́culo parte de un análisis realizado
en el año 2009 [2] en el que se destacan los principales
I. I NTRODUCCI ÓN mecanismos de seguridad en el sistema operativo Android,
El sistema operativo (SO) Android, presente tanto en smar- ası́ como se describen algunos cambios y propuestas concretas
pthones como en tabletas, ha sufrido un gran crecimiento en que permitirı́an mejorar en este aspecto. Aunque en el análisis
el número de usuarios provocando también que la comunidad realizado se hace referencia al móvil HTC Dream, cuyas
de desarrolladores haya crecido [1]. De la misma forma las prestaciones no se asemejan a la de los móviles actuales, el
posibilidades para utilizar la plataforma Android con fines artı́culo nos han permitido obtener una visión más concreta
técnicos-comerciales también han crecido, se hace necesario sobre la construcción del sistema.
realizar un estudio por parte de la comunidad sobre qué nivel En [3] hemos podido analizar una encuesta hecha a 60
de seguridad se puede garantizar en los dispositivos actuales. usuarios donde se estudia comparativamente las acciones que
Las prestaciones del primer dispositivo, el HTC Dream el usuario realiza en un ordenador personal frente a las que
más conocido como T-Mobile G1, no tienen nada que ver realiza en un smartphone. En el artı́culo se comprueba que los
con las prestaciones de los terminales actuales. Ası́ pues, es usuarios prefieren utilizar el ordenador al realizar operaciones
razonable pensar que tanto las funcionalidades disponibles con datos sensibles como por ejemplo introducir el número
para el usuario como las herramientas del sistema hayan de la seguridad social, el número de cuenta bancaria, efectuar
mejorado de forma considerable, permitiendo una multitud de procesos de compra o bien intercambiar información personal
aplicaciones que a su vez conllevan implicaciones a nivel de relativa a la salud. El artı́culo muestra que un 60 % de
privacidad y seguridad de los datos del usuario. los usuarios reticentes a utilizar el smartphone para realizar
Android está construido sobre el kernel de Linux y su este tipo de operaciones argumentan motivos relacionados
código es de tipo abierto o open-source. Esto ha permitido con la seguridad del dispositivo. En el estudio también se
identificar vulnerabilidades del sistema que posteriormente han observan los criterios seguidos por parte de los usuarios al
sido subsanadas, ya sea a partir de acciones de los usuarios o instalar aplicaciones Android. Los criterios más valorados son
bien por la determinación de Google para mejorar su sistema. el precio, la popularidad y las crı́ticas recibidas por otros
La falta de documentación técnica actualizada sobre dis- usuarios. Sin embargo, los permisos, la polı́tica de privacidad
positivos Android relacionada con la seguridad y el análisis y las condiciones de uso de la aplicación son los criterios que
de ésta es el motivo por el cual hemos decidido realizar este menos se valoran por parte de los usuarios.
artı́culo. El análisis se ha hecho con ejemplos reales y recientes
de algunas vulnerabilidades del sistema. III. D ESCRIPCI ÓN DEL SISTEMA A NDROID
El artı́culo está organizado de la siguiente manera. La
sección II hace referencia a anteriores artı́culos donde se revisa En esta sección se describen los principales mecanismos
el estado del arte de la seguridad en dispositivos Android que intervienen en la seguridad de los dispositivos.
260 E. Jódar, J. Pegueroles, J. Vera

III-A. Mecanismos de cifrado o una contraseña elegida por el usuario. Actualmente las
Android desde la versión 2.3.4 tiene soporte para el cifrado opciones se han incrementado añadiendo la posibilidad de
del sistema de ficheros aunque ésta opción se ofreció a los proteger el dispositivo mediante desbloqueo facial-voz o bien
usuarios a partir de la versión 3.0, para ello se utiliza dm-crypt, deslizando el dedo por la pantalla, aunque las últimas opciones
herramienta presente en el kernel. El cifrado, según se describe contemplan un nivel muy bajo de seguridad.
en [4], se realiza con un algoritmo AES de 128 bits con el Respecto al control de procesos y ficheros en el sistema,
modo CBC. La master key se cifra con otra clave AES de 128 la ejecución de las aplicaciones se realiza de manera aislada
bits, para ello se utiliza la función PBKDF2, implementada debido al sistema POSIX, ası́ pues cada paquete (APK) tiene
en OpenSSL. La sal se genera a partir de una secuencia de asignado un UserID (UID) y el código de la aplicación se
números o contraseña establecida por el usuario. ejecuta en un proceso de manera aislada a la de cualquier otra.
Éste es un proceso irreversible en el cual se cifra por El UID también restringe el acceso a los archivos de la propia
completo el sistema de ficheros, sólo se puede revertir en aplicación frente a otras siempre que éstos se almacenen en
caso de realizar un borrado al estado de fábrica, perdiendo el directorio de la aplicación. El acceso al sistema de ficheros
ası́ los datos almacenados. A nivel lógico se sigue utilizando sigue las directrices establecidas en Linux (rwx) de la misma
el sistema de ficheros de manera transparente para el usuario. forma que ocurre con el sistema POSIX.
Sin embargo, a nivel fı́sico los datos se encuentran cifrados
III-D. Sistema de permisos
y no podrı́an ser extraı́dos por otro dispositivo sin la clave
correspondiente. Cuando es necesario acceder a un fichero En el caso de Android, durante la instalación de la aplicación
determinado éste se descifra y se vuelve a cifrar una vez se informa al usuario de los permisos que ésta va a requerir
finalizada su modificación. El proceso se realiza a nivel de para su correcto funcionamiento. El usuario tiene la opción de
bloque del sistema de ficheros. aceptar el procedimiento o bien rechazarlo si cree que alguno
Actualmente, el sistema también permite el cifrado de de los permisos puede ser perjudicial para el dispositivo o los
dispositivos de almacenamiento externo. Una vez realizado el datos que éste contiene. La desventaja principal se encuentra
proceso, los ficheros cifrados sólo serán accesibles desde el en el hecho que no se puede aceptar o rechazar un subgrupo
mismo dispositivo. determinado de permisos.

III-B. Firma de aplicaciones y Keystore III-E. Repositorio de aplicaciones (Play Store)


Cualquier aplicación debe estar firmada para poder ser La tienda oficial de aplicaciones de Android, antiguamente
instalada en el entorno Android. La firma del paquete (APK) conocida como Google Play, aún tiene fallos de seguridad im-
se realiza a través de un certificado digital auto firmado, éste portantes debidos a la falta de revisión de las Apps subidas por
es generado a partir de la keystore creada por el desarrollador. los desarrolladores. Recientemente Google ha publicado una
Toda modificación y/o actualización del APK deberá firmarse patente que podrı́a ser utilizada para evitar que aplicaciones
con el mismo certificado. La utilización de autoridades de malware, copias de otras ya existentes, sean introducidas en
certificación se limita en el uso de la navegación segura y la tienda oficial [7]. De esta manera, cuando un desarrollador
durante el uso de las VPN configuradas en el dispositivo. suba una aplicación, el sistema hará una comparación de los
A través de la KeyStore el sistema operativo realiza la recursos utilizados con otras aplicaciones disponibles en la
gestión de claves criptográficas, de esta manera se facilita Play Store. En caso que un número razonable de recursos
el almacenamiento de claves de forma segura por parte de coincidan (ficheros multimedia, de datos o ejecutables), la
las aplicaciones sin tener que aplicar medidas de seguridad aplicación pasará a ser revisada manualmente para comprobar
adicionales durante el desarrollo. si se trata de una aplicación pirata o copia de otra. Esta
En la versión 4.3 se han aplicado mejoras de seguridad novedad permitirá ofrecer más seguridad tanto a los desarro-
debido a la capacidad de gestión multiusuario de las claves y la lladores de las aplicaciones que pueden ser vı́ctimas de copias
mejora en el respaldo de claves basado en sistemas hardware o suplantación, como a los usuarios que podrán adquirir más
[5]. Ası́ pues en los dispositivos multiusuario, una misma confianza en la tienda oficial de Android.
aplicación puede almacenar y gestionar diferentes claves de-
III-F. Conectividad USB
pendiendo del usuario que utiliza la aplicación. Por otra parte,
el respaldo de claves basado en sistemas hardware ofrece Los móviles y las tabletas pueden conectarse mediante un
mayor seguridad ya que las claves no pueden ser exportadas ni USB, ya sea para copiar datos de usuario no protegidos o bien
manipuladas por ningún otro elemento que no sea el hardware para realizar operaciones a través del Android Debug Brigde
usado para tal finalidad. (ADB). A partir de la versión 4.2, la opción para habilitar
la conexión USB solo es visible en caso de activar el modo
III-C. Mecanismos de control de acceso desarrollador en el dispositivo. Más segura es la conexión con
Los dispositivos siempre han dispuesto de mecanismos de la versión 4.2.2 ya que además de habilitar la conexión USB, se
control de acceso. Ya en la versión Gingerbread 2.2, la debe confirmar la conexión mediante la aceptación de la firma
segunda versión más utilizada después de Jelly Bean [6], RSA del ordenador al cual conectamos nuestro dispositivo. A
la protección se realizaba a partir de un patrón, un PIN primera instancia la conexión USB puede parecer inofensiva y
Estudio práctico de mecanismos de seguridad en dispositivos Android 261

las medidas de seguridad adoptadas en la versión 4.2.2 pueden con Android 2.3.7, ası́ pues suponemos que en alguna de las
parecer poco resolutivas pero más adelante comprobaremos actualizaciones posteriores se debió introducir el error.
que no es ası́. Otra amenaza a la cual podrı́amos estar sometidos los
usuarios son los cargadores de baterı́a de uso público. El hecho
IV. A N ÁLISIS DE SEGURIDAD de disponer de un cargador público, ya sea con un coste para
En esta sección se presentan tres vulnerabilidades que pue- el usuario o bien de uso gratuito, es cada vez más frecuente
den o podrı́an haber afectado a una cantidad considerable de debido a la poca duración de la baterı́a de los dispositivos. En
usuarios de smartphones o tabletas con consecuencias graves el campus universitario Campus Nord (UPC) disponemos de
para la privacidad y seguridad de los datos de dichos usuarios. un equipamiento que suministra energı́a mediante la conexión
de un cable USB de datos, como se muestra en la figura 1. En
IV-A. Vulnerabilidad en la privacidad de WhatsApp este equipamiento, la energı́a se obtiene a través de la radiación
solar y se almacena en una baterı́a conectada a la celda solar.
En marzo de 2014 se conoció una importante vulnerabilidad Además, dispone de un conjunto de conectores dependiendo
que afecta a la privacidad de los usuarios del servicio What- del dispositivo que se quiera conectar, el tiempo de conexión
sApp [8]. La brecha de seguridad fue detectada al observar recomendado es de 30 minutos. Esta solución puede convertir-
que el histórico de las conversaciones era guardado en una se a su vez en una amenaza en caso que hubiera algún tipo de
parte de la memoria interna (/sdcard) o en la SD Card mecanismo , por ejemplo una Raspberry o cualquier elemento
externa, donde cualquier aplicación con permisos para acceder similar, que acceda a los datos del dispositivo e incluso pueda
al almacenamiento externo y a Internet podı́a subir el histórico copiarlos. En este caso, la extracción de la información se
a un servidor remoto. Aunque el archivo de backup estaba podrı́a llevar a cabo a través de un script que ejecute comandos
cifrado, el método de cifrado era muy simple ya que utilizaba en ADB y realizar ası́ una copia de determinada información.
la misma clave de 192 bits en todos los dispositivos que Al utilizar esta infraestructura, el usuario debe confiar en
utilizaban la aplicación. Esa clave fue descubierta y distribuida el buen uso que se hace de ella por parte de la empresa
en 2011. o institución responsable, aunque cabe recordar que si este
Posteriormente a la publicación de esta vulnerabilidad, elemento se encuentra en el espacio público, podrı́a ser incluso
WhatsApp cambió el método de cifrado y utilizó una clave manipulado.
única por dispositivo generada a partir de la cuenta WhatsApp
asociada a éste. Aunque se produjo una mejora considerable, IV-C. Control de acceso: reconocimiento facial
sólo con acceder a las cuentas del dispositivo (permiso GE- Por último, hemos realizado un test para comprobar la
TACCOUNTS) y utilizar un nuevo método de descifrado, se seguridad del mecanismo de acceso mediante reconocimiento
pudo obtener nuevamente la clave [9]. facial, técnica implementada en la versión 4.0 de la plataforma.
Esta vulnerabilidad fue aprovechada en 2013 por una apli- Para ello hemos habilitado el mecanismo en la Samsung
cación llamada Balloon Pop 2 que se distribuyó a través de Galaxy Tab3 y posteriormente hemos realizado una fotografı́a
la Play Store, una vez detectada fue retirada por parte de con una tableta Sony Xperia Z a la misma persona que ha
Google. La aplicación, a grandes rasgos perseguı́a los mismos activado el reconocimiento facial. Se ha podido comprobar
objetivos, las copias de las conversaciones eran almacenadas que se ofrece un nivel de seguridad bajo, tal como se indica
en un sitio web en el cual pagando una cantidad determinada y en la subsección III-C, ya que el dispositivo protegido por
introduciendo el móvil de la vı́ctima, cualquier usuario podı́a reconocimiento facial ha sido desbloqueado utilizando la foto-
espiar el histórico de conversaciones. grafı́a realizada en la tableta Sony Xperia Z. Cualquier persona
que tenga acceso a nuestro dispositivo y a una foto nuestra,
IV-B. Conectividad USB ya sea impresa en papel o mostrada por pantalla, podrı́a
En octubre de 2013 fue reportado un fallo de seguridad conseguir introducirse en nuestro sistema. Para incrementar
relativo al mecanismo de control de acceso al dispositivo. la seguridad del mecanismo, en la versión 4.1 se añadió la
Según el informe [10] la vulnerabilidad afectaba las versiones necesidad de parpadear durante el desbloqueo del dispositivo
4.0, 4.1, 4.2 y 4.3, posteriormente se depuró en la versión para evitar que se utilicen fotografı́as de la vı́ctima durante
4.4. En el informe se demuestra como cualquier dispositivo el reconocimiento facial. Adicionalmente, en junio de 2012
que tenga activada la depuración USB está expuesto a la Google presentó una patente [11] que finalmente se aceptó en
amenaza. El fallo se encuentra en la implementación de la junio de 2013. La patente propone una mejora en la seguridad
clase ChooseLockGeneric, ésta se ocupa de seleccionar el del control de acceso facial añadiendo la posibilidad de usar
método de acceso al dispositivo por parte del usuario, en gestos en la detección facial. El usuario deberá establecer un
caso de existir uno y querer cambiarlo se debe introducir gesto determinado para poder desbloquear el dispositivo, de
correctamente el anterior. Este error ha sido verificado en un esta manera el atacante además de disponer de una fotografı́a
dispositivo Android 4.1.2 a través del comando ADB y la de la vı́ctima tendrı́a que simular la mueca escogida por el
aplicación de test que proporciona el creador del informe y usuario. Algunos ejemplos son sacar la lengua, sonreı́r o bien
que permite inhabilitar el sistema de login. A su vez se ha mover las cejas. Con esta medida resulta más complejo llevar
comprobado que la vulnerabilidad no afecta a un dispositivo a cabo el ataque ya que se deberı́an utilizar técnicas de edición
262 E. Jódar, J. Pegueroles, J. Vera

dispositivos de almacenamiento externo. Teniendo en cuenta


que los cambios en el SO no son decisión del usuario final,
aunque la comunidad de desarrolladores puede incentivarlos,
proponemos otra solución que sı́ está al alcance del usuario,
el cifrado del dispositivo y la SD Card.
V-B. Cifrado del dispositivo y la SD Card: Si optáramos
por cifrar el dispositivo obtendrı́amos una solución parcial a
la vulnerabilidad descrita anteriormente. Durante la utilización
del smartphone o la tableta cualquier aplicación maligna
continuarı́a siendo una amenaza ya que los ficheros no se
encontrarı́an protegidos. Por otra parte, en caso de pérdida
o robo, nuestra información permanecerı́a inaccesible. Sin
embargo, si eligiéramos cifrar la SD Card, conseguirı́amos una
protección completa frente la vulnerabilidad presentada ya que
durante la utilización del smartphone o la tableta, una aplica-
ción maligna que intentara acceder a nuestros datos necesitarı́a
la contraseña de descifrado. Aun siendo una propuesta válida
para mitigar la amenaza, ésta conlleva un empeoramiento en el
nivel de usabilidad debido a que se produce una ralentización
en el tratamiento de ficheros, ası́ como se requieren más
autorizaciones por parte del usuario durante la realización de
acciones.
V-C. Antivirus: La tercera solución que proponemos es
proteger el dispositivo usando un antivirus. Actualmente en
la plataforma Android hay una gran variedad de soluciones
que realizan escaneo de malware, protección de navegación
web, ası́ como escaneo de aplicaciones y contenidos en la SD
Card, entre otras cosas. Aun ası́, un estudio realizado por V.
Rastogi et al. [12] demuestra que este tipo de software debe
mejorar ya que es susceptible a ataques de transformación
Figura 1. Cargador móvil solar
por parte del malware y virus residentes en los dispositivos.
Por otra parte, la eficacia de la aplicación antivirus se ve
muy reducida en caso de que esta no posea privilegios de
de imagen para simular la acción del usuario propietario del usuario administrador. En estas circunstancias, la aplicación no
dispositivo. conseguirı́a monitorizar las actividades de otras aplicaciones
debido a la falta de privilegios, y a su vez, tampoco podrı́a
V. R ECOMENDACIONES PARA LA MEJORA DE LA monitorizar las actividades consideradas como más peligrosas.
SEGURIDAD Ası́ pues, en caso de utilizar esta opción, se recomienda
A raı́z de los casos del apartado IV, se derivan algunas rootear el dispositivo previamente.
cuestiones relativas a la seguridad y la usabilidad de los dispo- V-D. Sistema de permisos: Por último, la solución más
sitivos móviles en el entorno Android en las cuales queremos simple y plausible serı́a adoptar cambios en la gestión del
incidir particularmente. En esta sección propondremos algunas sistema de permisos tal y como se describe en la sección
acciones que permitan mejorar la seguridad de los dispositivos. III-D, empezando por una mejor concienciación por parte del
El caso IV-A señala la importancia de proteger adecuada- usuario sobre qué tipo de permisos requiere una aplicación y
mente el sistema de almacenamiento del dispositivo, ası́ como como ésta puede manipular sus datos personales. Seguido de
valorar correctamente cuáles son las acciones que puede una modificación del sistema que permita aceptar o rechazar
realizar una aplicación. un subgrupo de permisos de manera que el usuario no se deba
V-A. Almacenamiento externo: La primera recomendación aceptar todo el conjunto para ası́ poder utilizar la aplicación
hace referencia al acceso al almacenamiento externo ya que deseada. Éste es un problema muy común y una de las
este no se rige por los sistemas descritos en la subsección principales fuentes de amenazas debido a la inexperiencia
III-C. A menos que haya un cambio sustancial en el sistema o poco conocimiento técnico de las personas que utilizan
de acceso a datos de la memoria externa, creemos que la dispositivos móviles con plataforma Android.
información sensible no deberı́a ser almacenada en medios El caso IV-B demuestra la importancia de los mecanismos
compartidos. Eso implica necesariamente una revisión del de control de los dispositivos.
sistema operativo en la gestión de archivos que a su vez, V-E. Depuración USB: Sólo deberı́an tener activada los
deberı́a incidir en el diseño de las aplicaciones que utilicen desarrolladores, y utilizarla con suma cautela. A través de la
Estudio práctico de mecanismos de seguridad en dispositivos Android 263

conexión USB con el ADB se pueden realizar muchas acciones Cabe destacar también la necesidad de compromiso entre
que comprometen la seguridad y privacidad de los datos del seguridad y usabilidad, tan importante es un sistema seguro
dispositivo. Hacer una copia completa del dispositivo, eliminar como suficientemente práctico y amigable para el usuario. En
datos o bien instalar aplicaciones malware son algunos de los esta dirección el sistema Android deberı́a asumir la necesidad
ejemplos más comunes. Hasta la versión 4.2.2 la amenaza de realizar algunos cambios estructurales que se han comen-
solo podrı́a ser contrarrestada en caso de tener la depuración tado anteriormente en la subsección V como por ejemplo el
USB deshabilitada. A partir de la versión 4.2.2 hasta la 4.3 sistema de permisos de las aplicaciones.
el acceso al dispositivo está sujeto a mayor control ya que Se han identificado algunas lı́neas futuras para profundizar
además se debe confirmar la conexión mediante un diálogo el estudio realizado en este trabajo. Usualmente, las vulnera-
basado en el algoritmo RSA, para ello se precisa desbloquear bilidades de seguridad se corrigen por parte de los desarro-
el control de acceso del dispositivo (III-C). En caso de que el lladores cuando estas son detectadas. Aun ası́, es necesario
usuario no haya establecido ningún mecanismo de protección un método general para poder identificarlas y evitar que los
de acceso, el dispositivo sufrirı́a la misma vulnerabilidad que programadores de aplicaciones las introduzcan inadvertida-
en las versiones anteriores de la plataforma ya que cualquier mente. Por otro lado, la protección contra alguno de estos
individuo con acceso fı́sico al dispositivo podrı́a aceptar el ataques (como por ejemplo, la identificación de la cara del
diálogo RSA y confirmar la conexión. Cabe destacar que no usuario) depende directamente de la potencia de procesado
es conveniente utilizar la opción ”Permitir siempre en este del hardware.
ordenador” en el diálogo RSA ya que eso inhabilitarı́a la Finalmente, por falta de espacio no se han incluido en el
protección adicional que nos proporcionan las versiones más estudio otras vulnerabilidades identificadas, como la posibili-
recientes del sistema. dad de modificar el sistema operativo sin el consentimiento
V-F. Conexión a otros dispositivos: Los dispositivos tienen del usuario, aplicaciones capaces de eludir el sistema POSIX
la capacidad de interconectarse entre ellos usando tecnologı́as de permisos o aplicaciones que pueden ser modificadas por un
diversas como Bluetooth, USB, Wi-Fi, NFC... Ası́ pues nuestra atacante incluso después de su firmado digital.
recomendación es tener activadas estas tecnologı́as únicamente
AGRADECIMIENTOS
cuando sea necesario, con ello conseguiremos tener nuestro
dispositivo más protegido frente amenazas del entorno. De Este trabajo se ha financiado en parte por los proyectos
lo contrario, se podrı́a dar el caso donde terceros accedieran TAMESIS (TEC2011-22746) y ARES (CSD2007-00004).
a nuestros datos o podrı́amos sufrir infecciones de virus, R EFERENCIAS
malware, rootkits, etc. Además, también debemos ser cons-
[1] J. Fingas, “Android climbed to 79 percent of smartphone
cientes sobre la importancia de conectar nuestros dispositivos a market share in 2013, but its growth has slowed,” January
otros dispositivos de confianza, de lo contrario nos podrı́amos 2014. [Online]. Available: http://www.engadget.com/2014/01/29/
exponer a amenazas como las que hemos tratado en el caso strategy-analytics-2013-smartphone-share/
[2] A. Shabtai, Y. Fledel, U. Kanonov, Y. Elovici, and S. Dolev, “Google
IV-A o IV-B. Android: A State-of-the-Art Review of Security Mechanisms,” ArXiv
V-G. Interfaz de login: Todos los usuarios deberı́an tenerla e-prints, Dec. 2009.
activada. Aunque las contraseñas o combinaciones de dı́gitos [3] E. Chin, A. P. Felt, V. Sekar, and D. Wagner, “Measuring user
confidence in smartphone security and privacy,” Proceedings of the
podrı́an verse expuestas a ataques de fuerza bruta o ataques Eighth Symposium on Usable Privacy and Security - SOUPS ’12,
de diccionario, de momento se consideran las opciones más no. 1, p. 1, 2012. [Online]. Available: http://dl.acm.org/citation.cfm?
robustas en el mecanismo de control de acceso. Los méto- doid=2335356.2335358
[4] Google, “Notes on the implementation of encryption in android
dos usando parámetros biomédicos no son lo suficientemente 3.0,” 2014. [Online]. Available: https://source.android.com/devices/tech/
eficaces como para adoptarlos como métodos de control de encryption/android crypto implementation.html
acceso. De hecho, el mismo dispositivo ya lo advierte en el [5] ——, “Android 4.3 apis,” 2014. [Online]. Available: http://developer.
android.com/about/versions/android-4.3.html
momento de elegir el mecanismo y tal como se indica en el [6] ——, “Platform versions,” 2014. [Online]. Available: http://developer.
apartado IV-C se ha conseguido romper el control de acceso. android.com/about/dashboards/index.html
[7] ——, “Detecting pirated applications,” Febrero 2014. [Online].
VI. C ONCLUSIONES Y L ÍNEAS FUTURAS Available: http://www.google.com/patents/EP2693356A2?cl=en
[8] B. Bosschert, “Steal whatsapp database (poc),” Marzo 2014. [Online].
Del análisis realizado y expuesto en este artı́culo se constata Available: http://bas.bosschert.nl/steal-whatsapp-database/
que la plataforma Android aún teniendo versiones comerciales [9] ——, “Steal whatsapp update,” Marzo 2014. [Online]. Available:
http://bas.bosschert.nl/steal-whatsapp-update/
estables y bastante seguras, debe mejorar e incrementar los [10] US-CERT/NIST, “Vulnerability summary for cve-2013-6271,”
métodos de seguridad utilizados en los dispositivos. De lo Diciembre 2013. [Online]. Available: http://web.nvd.nist.gov/view/
contrario, seguiremos encontrando vulnerabilidades (algunas vuln/detail?vulnId=CVE-2013-6271
[11] Google, “Facial recognition,” Junio 2013, pN 8457367. [Online].
de ellas graves) que afecten a un gran número de usuarios. Available: http://patft1.uspto.gov/
Además, las vulnerabilidades detectadas, o bien la falta de [12] V. Rastogi, Y. Chen, and X. Jiang, “Evaluating Android Anti-malware
implementación de algunas técnicas de seguridad, pueden against Transformation Attacks,” NORTHWESTERN University, no.
March, 2013. [Online]. Available: https://www.eecs.northwestern.edu/
provocar que la plataforma Android no sea considerada como docs/techreports/2013 TR/NU-EECS-13-01.pdf
una opción empresarial en beneficio de otras plataformas
existentes como Windows Phone, BlackBerry o iOS.
RECSI 2014, Alicante, 2-5 septiembre 2014

Identificación de la Fuente en Vı́deos de


Dispositivos Móviles
David Manuel Arenas González, Jocelin Rosales Corripio, Ana Lucila Sandoval Orozco, Hiram Jafet Romo Torres,
Luis Javier Garcı́a Villalba

Grupo de Análisis, Seguridad y Sistemas (GASS), Departamento de Ingenierı́a del Software e Inteligencia Artificial
Facultad de Informática, Despacho 431, Universidad Complutense de Madrid (UCM)
Calle Profesor José Garcı́a Santesmases, 9, Ciudad Universitaria, 28040 Madrid
Email: {darenas, jocerosa, asandoval, javiergv}@fdi.ucm.es, hromot@hotmail.com

Resumen—La realización de vı́deos con dispositivos móviles de las cámaras digitales. En los dispositivos móviles, se ha
se ha convertido en una actividad común dado su alto grado de visto una gran competencia entre fabricantes que se esfuerzan
utilización y el gran número de usuarios. Además, la portabilidad en integrar una videocámara de alta definición al alcance del
de este tipo de dispositivos hace que estén a mano de los
usuarios gran cantidad de tiempo facilitando que se utilicen para usuario. Como consecuencia de este fenómeno y de la gran
generar vı́deos en una gran diversidad de situaciones. Por tanto, cantidad de tiempo que una persona pasa junto a un teléfono
estos vı́deos pueden ser utilizados como evidencias en procesos inteligente, este se ha convertido en el primer dispositivo de
judiciales. Todo lo anterior hace necesario contar con técnicas de grabación de vı́deos para muchos usuarios en la sociedad
análisis forense enfocadas en vı́deos de dispositivos móviles dada actual.
las caracterı́sticas peculiares de sus cámaras. En este trabajo se
estudia la identificación de la fuente de adquisición de los vı́deos Debido al frecuente uso de los dispositivos móviles, en
de dispositivos móviles y se presenta una técnica basada en la ciertos casos existen restricciones legales sobre el uso de
extracción del ruido del sensor y la transformada wavelet de los este dispositivo, ası́ como también de su uso en distintos
fotogramas extraı́dos del vı́deo. Estos fotogramas son extraı́dos lugares, tales como: colegios, universidades, oficinas de go-
mediante un algoritmo que tiene en cuenta la naturaleza de los bierno, empresas, etc. Actualmente los vı́deos se exhiben con
mismos, mejorando la selección de los fotogramas a analizar.
Finalmente se presentan experimentos con vı́deos de dispositivos mayor frecuencia, ya sea directa o indirectamente en procesos
móviles para evaluar la validez de las técnicas utilizadas. judiciales como pruebas o evidencias para la aplicación de
Palabras clave—Análisis forense de vı́deos, fuente de adquisi- la ley [3]. Por tanto, dada la importancia de los vı́deos en
ción de vı́deos, patrón de ruido del sensor, PRNU. (Video forensics estas situaciones, el análisis forense cobra especial relevancia.
analysis, video source adquisition, sensor pattern noise, PRNU). Dentro de las distintas ramas del análisis forense, destaca la
que nos permite identificar la fuente de adquisición, en este
I. I NTRODUCCI ÓN caso de la videocámara que generó el vı́deo. En este trabajo se
Si las imágenes capturadas por dispositivos electrónicos son presentan técnicas de análisis forense para la identificación de
consideradas parte de la verdad como hechos reales, en pocos la fuente de adquisición de vı́deos, centrándonos especialmente
minutos, un vı́deo puede comunicar una enorme cantidad de en los vı́deos generados por dispositivos móviles.
información. Según el medidor de tráfico “Alexa, The Web Este trabajo está estructurado en 6 secciones, siendo la
Information Company” [1], Youtube es actualmente el tercer primera de ellas la presente introducción. En la sección 2
sitio con más visitas del mundo, lo cual nos deja un claro se presentan brevemente las diferencias entre el pipeline en
indicio de la popularidad de la que gozan los vı́deos entre los la creación de una imagen y un vı́deo. La sección 3 realiza
diferentes medios en los que puede desplegarse. Existe una un estado del arte del análisis forense para imágenes y
amplia gama de dispositivos móviles que pueden reproducirlo vı́deos generados por dispositivos móviles. En la sección 4
y/o grabarlo, como por ejemplo: teléfonos móviles, tablets, se presenta la técnica propuesta. Los experimentos realizados
vı́deoconsolas portátiles y cámaras digitales o de vı́deo. En y sus resultados son presentados en la sección 5. Por último
cuanto a los dispositivos móviles, Gartner Inc. [2], afirma en la sección 6 se presentan las conclusiones obtenidas de este
que las ventas de teléfonos inteligentes creció un 36 % en el trabajo.
cuarto trimestre del 2013. Asimismo, este tipo de dispositivos
representó el 57.6 % de las ventas globales de teléfonos II. P IPELINE DE UNA V IDEOC ÁMARA
móviles en el cuarto trimestre de 2013, frente al 44 % del año Antes de mencionar alguna de las técnicas existentes para la
anterior. Al igual que las cámaras digitales han desplazado identificación de la fuente, es importante comprender cuál es
en términos de uso a las cámaras tradicionales de pelı́cula, el procedimiento realizado para generar un vı́deo. Este proceso
actualmente, los dispositivos móviles equipados con cámaras, es similar en la generación de una imagen y de un vı́deo, salvo
tienen un papel importante poniendo fin al rápido crecimiento que en un vı́deo finalmente existe un último paso que consiste
266 D. M. Arenas, J. Rosales, A. L. Sandoval, H. J. Romo, L. J. Garcı́a

en codificar los fotogramas resultantes para la creación de un rendimiento promedio del 93.4 % de 16 experimentos que
un archivo único final de vı́deo. Esta codificación tiene como se realizaron. Hay diversos grupos de investigación que han
objetivo transformar todos los fotogramas capturados en una aportado en esta área, en donde se presentan buenos resultados,
secuencia de ellos a lo largo de un tiempo. También se busca por ejemplo en [13], [14] y [15].
conseguir un tamaño lo más óptimo posible del archivo final, Dentro de los métodos existentes que se basan en las
ya que en un vı́deo existen fotogramas capturados que son imperfecciones del sensor, hay dos grandes ramas de las cuales
redundantes entre sı́. Es decir, en ocasiones entre un fotograma se pueden trabajar: defectos del pixel o patrón de ruido del
y otro, se puede compartir caracterı́sticas de la escena que sensor. En [16] se demostró que los sensores de las cámaras
facilitan el poder optimizar el tamaño del vı́deo final sin perder generan un patrón de ruido (Sensor Pattern Noise) que podrı́a
contenido visual. Por ejemplo, para la codificación MPEG, ser utilizado como método único de identificación.
existe una estructura llamada GOP (Group of Pictures) que En [17] se demostró que el ruido del sensor extraı́do de las
especifica el orden en el que las imágenes son ordenadas y imágenes podı́an ser severamente contaminado por los detalles
soluciona el problema de redundancia en la codificación. Para de las escenas concretas. Para lidiar con ese problema, se
la codificación habitualmente se utilizan los códecs: MPEG-x propuso un nuevo enfoque para la atenuar la influencia del
o H.26x para cámaras digitales y 3GP para teléfonos móviles, detalle de las escenas en el ruido del sensor mejorando la
este último tiene la capacidad de ser compatible con los tasa de acierto. En los experimentos se tomaron 9 cámaras
códecs: MPEG-4, H.263 o H.264 [4]. y 320 fotos de cada una, variando las escenas al aire libre
e interiores. En [18], [19] y [20] se presentan otros métodos
III. T ÉCNICAS DE I DENTIFICACI ÓN DE LA F UENTE de identificación de fuente basados en las imperfecciones del
La mayor parte de las investigaciones realizadas sobre la sensor.
identificación de la fuente se han realizado para imágenes Por último, en el área de las transformadas wavelets existen
fotográficas estáticas. La mayorı́a de las técnicas que se diversos enfoques. Por ejemplo en [21] se propone una nue-
pueden aplicar a una imagen se pueden emplear con los va técnica de identificación basada en las caracterı́sticas de
diferentes fotogramas de un vı́deo [5]. probabilidad condicional. Este tipo de caracterı́sticas fueron
En [6] se realiza una comparación detallada de los prin- propuestas inicialmente para propósitos de estegoanálisis en
cipales grupos de técnicas de identificación de fuente de [22]. Se obtuvieron unos resultados del 98.6 %, 97.8 % y
adquisición. Estas se dividen en cinco grupos y están basadas 92.5 % de acierto en la clasificación de 2, 3 y 4 iPhones
en: metadatos, caracterı́sticas de la imagen, defectos de la respectivamente con un recorte de imagen de 800x600.
matriz CFA e interpolación cromática, imperfecciones del En [23] se determina que el uso del patrón de ruido
sensor y las transformadas wavelet. del sensor conjuntamente con la transformada wavelet es un
El área que está basada en metadatos, es la más sencilla método efectivo para la identificación de fuente, alcanzando
de analizar, aunque depende en gran medida de los datos que una tasa de éxito promedio del 87.21 %.
inserta el fabricante. Asimismo la agregación de metadatos a En el caso del desarrollo de técnicas para la identificación
la imagen no es obligatoria. En [7], [8], [9] y [10] se utilizan de fuente de vı́deo, existen pocas referencias al respecto.
los metadatos con fines de clasificación de imágenes digitales. Algunas se basan directamente en la secuencia de codificación
En [11] se trata el tema de la identificación de la fuente y otras en la extracción de frames aplicando algún método de
utilizando las caracterı́sticas de la misma. Se contemplan tres clasificación para imágenes fijas.
tipos de caracterı́sticas: caracterı́sticas de color, caracterı́sticas En [24], se propone un algoritmo en base a la informa-
de calidad y caracterı́sticas de la imagen en el dominio de ción del vector de movimiento en el flujo codificado. En
la frecuencia. La clasificación de las imágenes es realizada los experimentos realizados se utilizaron 100 secuencias de
por una Maquina de Soporte Vectorial (SVM). El resultado vı́deo (20 de ellas procedentes de VQEG (Video Quality
obtenido para una clasificación de cuatro cámaras de dos Experts Group)[25] y 80 de DVDs). Todos los vı́deos fueron
fabricantes distintos con contenidos similares en la imágenes codificados por diferentes aplicaciones de edición de vı́deo
fue del 100 %, mientras que para la clasificación de imágenes conocidos. Mediante un experimento se obtuvo un 74.63 % de
con contenidos distintos entre sı́ fue 93.05 %. Un último precisión en la identificación del software que se utilizó en la
experimento se realizó con un conjunto de 8 cámaras que codificación.
alcanzo una precisión del 95,46 %. En [26] propone un método de identificación utilizando los
En [12] se utiliza una técnica que se basa en los algorit- fotogramas extraı́dos de vı́deos. Las caracterı́sticas de proba-
mos propietarios de interpolación cromática, los cuales dejan bilidad condicional se extraen directamente de los fotogramas
correlaciones a través de los planos de bits adyacentes de una del vı́deo. En las pruebas realizadas se utilizaron 4 modelos
imagen. Estos pueden ser representados mediante un conjunto diferentes de cámaras y un clasificador SVM, obteniendo, en
de 108 métricas de similitud binarias y 10 métricas de calidad un primer experimento aplicado en el dominio del espacio
de la imagen (IQM). Con un clasificador KNN se realizan con los valores de luminancia, un 82.6 % de precisión. En un
experimentos utilizando 9 cámaras de teléfonos móviles y 200 segundo experimento usando el mismo conjunto de vı́deos,
fotos de cada una. Para el entrenamiento se utilizaron 100 fotos tomando el valor de luminancia, el promedio de clasificación
de cada cámara y las 100 restantes para las pruebas. Se obtuvo fue de 100 %. En un tercer experimento en donde se utilizaron
Identificación de la Fuente en Vı́deos de Dispositivos Móviles 267

un conjunto de vı́deos con mayores cambios en las escenas se Existen diversos métodos para calcular la diferencia de
obtuvo un 97.2 % de acierto. histogramas de color de dos dimensiones. En este trabajo se
optó por el cálculo de la correlación, ya que es un vector
IV. D ESCRIPCI ÓN DE LA T ÉCNICA
aleatorio (variable aleatoria multidimensional) y además, los
Al completar la generación de un vı́deo es posible que se resultados obtenidos con el coeficiente de correlación son me-
introduzcan, en cada uno de sus fotogramas, algunos defectos jores que otras medidas [27]. Se puede mencionar por ejemplo
que se vean reflejados como ruido, llamados comúnmente la distribución de probabilidad continua (chi-cuadrado) o la
“huellas”. Estas “huellas” se pueden utilizar para detectar la intersección o distancia de Bhattacharyya.
fuente de adquisición del vı́deo. A continuación, se describe el El primer fotograma del vı́deo se toma como parte del
método de extracción de fotogramas del vı́deo y se referencia conjunto de fotogramas elegidos. Se realiza la comparación
el algoritmo que permite extraer el patrón de ruido del sensor. tomando el primer y el segundo fotograma, si no hay una
Los fotogramas seleccionados para la clasificación son diferencia significativa entre ellos en base al umbral, se toma el
obtenidos mediante el algoritmo 1. siguiente fotograma y se realiza una nueva comparación con el
primero, esto se realiza hasta que el resultado de la correlación
Algoritmo 1: Algoritmo de extracción de fotogramas sea menor al umbral, para tomar en cuenta al fotograma para la
Input: vı́deo: Vı́deo a procesar clasificación e identificación. Si al final la cantidad de cambios
nFotogramas: Número de fotogramas deseados de escena en base al umbral, es menor a la cantidad necesaria,
umbralI : Umbral inicial se repite el proceso de comparación incrementando el umbral,
incU : Incremento del umbral hasta que la cantidad de cambios de escena sea mayor o igual
Result: fotogramas: Vector de fotogramas a los deseados.
Para poder determinar el umbral inicial, se realizaron varios
1 histogramas ← extraerHistogramas(vı́deo);
experimentos sobre los vı́deos, y se halló que mediante la
2 umbral ← estimarUmbral(histogramas, nFotogramas,
comparación de los histogramas de un vı́deo, la correlación
umbralI , incU );
promedio más baja fue de -0.27, presentando al menos 1 o 2
3 fotogramas ← extraerFotogramas(vı́deo, umbral,
cambios de escena, definiendo ası́ el umbral inicial. Para el
histogramas);
valor del incremento se experimentó con diferentes valores,
tales como: 0.1, 0.01, 0.001, 0.0001 y 0.0001. El valor de
El algoritmo calcula y compara los fotogramas contenidos 0.001 fue el elegido, ya que demostró ser un valor ideal para
en un vı́deo. Los fotogramas que presenten un cambio de llegar a el número de fotogramas deseados en un menor tiempo
escena significativo serán utilizados para la clasificación e y con más exactitud. Estos incrementos se realizan porque,
identificación. Esto se debe a que el ruido del sensor extraı́do si el umbral se encuentra más cercano al valor máximo de
de una imagen puede estar severamente contaminada por los correlación directa, es decir al valor de 1, se pueden encontrar
detalles de la escena [17], además de que los datos de un vı́deo más cambios de escena, y ası́ extraer la cantidad de fotogramas
contienen redundancia temporal, espacial y espectral. En el definidos por el usuario para la clasificación e identificación.
algoritmo son necesarios 4 parámetros para su funcionamiento: Mediante el análisis de los trabajos de la literatura, se
Video del cual serán extraı́dos los fotogramas. llegó a la conclusión de que el patrón de ruido del sensor
Numero de fotogramas deseados a extraer. y la transformada wavelet, ayudan a definir una huella, siendo
Umbral inicial que será la referencia para determinar métodos efectivos para la identificación de fuente. Este articulo
cuando existe un cambio de escena. extiende el uso del patrón de ruido del sensor y la transformada
Valor del incremento para el umbral que se realizará en wavelet de [23]. La técnica está enfocada en representar las
cada iteración. huellas en vectores de caracterı́sticas.
El primer paso consiste en extraer el histograma (frecuencia El esquema presentado en la Figura 1 muestra el diagrama
de los valores de color) de los fotogramas, y calcular mediante funcional de la técnica.
la correlación de cada par de fotogramas contiguos la similitud La obtención del patrón de ruido del sensor de las imágenes,
existente. La correlación se calcula con la ecuación (1). se basa en el método descrito en [23].
El siguiente paso es obtener las caracterı́sticas que caracte-
P 0 rizan el ruido del sensor para fines de la clasificación. Un total
H 1 (i)H 0 2 (i)
correlacion(H1 , H2 ) = qPi (1) de 81 caracterı́sticas son obtenidas utilizando el algoritmo de
0 2 0 2
i H 1 (i) H 2 (i)
extracción de caracterı́sticas descrito en [23].
donde, V. E XPERIMENTOS Y RESULTADOS
1 X Para probar la efectividad del técnica propuesta, se captu-
H 0 k (i) = Hk (i) − ( Hk (j)) raron vı́deos sin ninguna consideración en las caracterı́sticas
N j
temporales o espaciales, debido a que deben representar casos
siendo N el número de niveles de intensidad para cada canal reales. Como actualmente los dispositivos móviles presentan
de color RGB. grandes mejoras en la calidad del vı́deo, se consideró usar
268 D. M. Arenas, J. Rosales, A. L. Sandoval, H. J. Romo, L. J. Garcı́a

Figura 1. Esquema funcional de extracción de patrón de ruido del sensor.

vı́deos con calidad de 1080p (vı́deos de alta definición), es Tabla II


decir con una resolución de 1920x1080 pixeles. PAR ÁMETROS DE LOS EXPERIMENTOS

La Tabla I muestra las especificaciones básicas y los mode- Parámetro Valor


los de dispositivos móviles considerados para los experimen- Numero de vı́deos para entrenamiento por cámara 5
tos. Numero de vı́deos para pruebas por cámara 5
Método de extracción Histograma
Tabla I Umbral inicial -0.27
C ONFIGURACI ÓN DE LAS C ÁMARAS DE DISPOSITIVOS M ÓVILES
Incremento umbral 0.001
Numero de fotogramas deseados por vı́deo 100
Marca Condiciones
FPS Formato Códec
(Modelo) de Captura
Apple Resolución: 1080p
24 mov H.264
iPhone 5 (M1) Tipo de escena: Cualquiera V-A. Influencia de la Resolución en la Tasa de Acierto
Nokia Orientación: Vertical
808 Pureview (M2)
30 mp4 MPEG-4
Flash: Deshabilitado
Para analizar la influencia que tiene tamaños de recortes de
Samsung Luz: Natural los fotogramas en la tasa de acierto, se realizó la identificación
30 mp4 MPEG-4
Galaxy S4 (M3) Balance de blancos: Autom de la fuente de los 5 dispositivos móviles de la Tabla I con
Wiko Zoom digital: 0 cada una de las siguientes resoluciones de los fotogramas:
12 3gp MPEG-4
Cink Slim (M4) Tiempo de vı́deo: 2 min
Zopo Resoluciones estándar: 128x128, 320x240, 640x480,
15 3gp MPEG-4
ZP-980 (M5) 800x600, 1024x768.
Resolución recomendada: 1024x1024
Resolución real del fotograma: 1920x1080.
En la Tabla II se resumen las condiciones experimentales Los parámetros utilizados para la extracción de las carac-
usadas en la evaluación de la técnica propuesta. terı́sticas definido en [23] son: Daubechies 8 wavelet, recorte
La clasificación se ha realizado utilizando el método de del fotograma centrado y estimación de varianza adaptativa.
aprendizaje supervisado SVM con kernel RBF, ya que es uno En la Tabla III se muestra el porcentaje de acierto medio en
de los más utilizados para este tipo de clasificaciones [6]. Los la identificación de la fuente de cada dispositivo con respecto
parámetros utilizados en el clasificador SVM son los mismos a los distintos tamaños de recortes de los fotogramas. Por
que los empleados en [23]. Se utilizó el paquete LibSVM [28] porcentaje de acierto se entiende al porcentaje de fotogramas
que permite la clasificación de múltiples clases. de los 5 vı́deos de cada dispositivo móvil clasificados correc-
Con la finalidad de mostrar a grandes rasgos tiempos de tamente. Cada vı́deo obtuvo un porcentaje de acierto en la
ejecución para la obtención del conjunto de caracterı́sticas, identificación de la fuente que se muestra en la tabla III.
para una imagen con un recorte de 1024x768, en un procesador En la mayorı́a de los casos, los porcentajes de acierto por
Intel Core i7 de 1.6GHz con 8Gb de RAM, se consumen dispositivo, aumentan cuanto más grande sea el recorte de los
aproximadamente 2 segundos. Para 500 imágenes con el fotogramas (esto se da para todos los casos si se tiene en
recorte anterior y utilizando la misma máquina, en las fases de cuenta la tasa de acierto promedio). Obteniendo para la mayor
entrenamiento y clasificación de la SVM se emplearon aproxi- resolución la mayor tasa de acierto promedio, un 85.56 %. En
madamente unos 650 segundos y 1 segundo respectivamente. todos los experimentos realizados se supera la tasa por vı́deo
individual del 50 %. Esto indica que en todos los casos, para
Identificación de la Fuente en Vı́deos de Dispositivos Móviles 269

Tabla III
TASA DE ACIERTO × RESOLUCI ÓN DE FOTOGRAMAS .

Dispositivos % Acierto
Resolución
M1 M2 M3 M4 M5 Medio
128x128 65.80 % 79.20 % 66.60 % 75.00 % 64.00 % 70.12 %
320x240 73.80 % 88.20 % 78.00 % 78.80 % 63.40 % 76.44 %
640x480 79.60 % 95.60 % 85.00 % 85.60 % 66.20 % 82.40 %
800x600 81.80 % 96.80 % 84.80 % 86.00 % 68.80 % 83.64 %
1024x768 80.80 % 97.40 % 88.80 % 85.40 % 75.40 % 85.56 %
1024x1024 81.20 % 97.20 % 92.20 % 88.00 % 78.40 % 87.40 %
Figura 2. Porcentaje de mejora de la tasa de acierto × por resolución.
1920x1080 87.40 % 98.80 % 93.00 % 89.80 % 82.60 % 90.32 %

(640x480) para identificar la fuente de los 5 dispositivos


todos los fotogramas de un vı́deo concreto de un dispositivo móviles de la Tabla I. En la Tabla IV se muestra un resumen de
concreto, al menos el 50 % de los fotogramas son identificados los experimentos realizados y los parámetros de configuración
correctamente. Finalmente la identificación de la fuente de un del algoritmo de extracción de las caracterı́sticas utilizados en
vı́deo debe responder a la pregunta concreta de a qué fuente de cada uno de ellos.
adquisición pertenece ese vı́deo. Como criterio lógico, puede
estimarse que el vı́deo pertenece a la fuente con el mayor Tabla IV
TASA DE ACIERTO UTILIZANDO DIFERENTES CONFIGURACIONES
número de fotogramas clasificados con respecto a las otras
fuentes (mayor porcentaje de acierto con respecto a las otras Configuración Varianza Aplicar Zero Meaning % de Acierto
fuentes). Se podrı́a dar el caso en el que varias fuentes tengan 1 Adaptativa No 82.4 %
exactamente el mismo número de fotogramas clasificados y a 2 Adaptativa Sı́ 82.32 %
su vez sean el mayor número con respecto a las otras fuentes. 3 No adaptativa Sı́ 81.56 %
En este caso, poco habitual, se dirı́a que la fuente del vı́deo 4 No adaptativa No 82.96 %
no puede ser identificada con determinación y estarı́a entre la
duda de esas distintas fuentes. La diferencia entre la mejor y la peor tasa de acierto
Los resultados obtenidos no dejan lugar a dudas sobre la mostrada en la Tabla IV es del 1.4 %. Este resultado indica que
identificación de la fuente de adquisición del vı́deo teniendo los parámetros de configuración del algoritmo de extracción
en cuenta el criterio definido anteriormente, ya que en todos de caracterı́sticas no influye significativamente en el porcentaje
los casos el acierto superó el 50 %. Asimismo puede verse de acierto de identificación de la fuente de vı́deos. Puede verse
que las tasas de acierto en muchos casos son mucho mayores que la tasa óptima de acierto se consigue con los parámetros
(llegando en ocasiones hasta el 100 %). Por tanto, según este de estimación de la varianza no adaptativa y sin utilizar el filtro
experimento, tomando el criterio antes definido y teniendo zero-meaning. Asimismo los peores resultados se obtuvieron
en cuenta el vı́deo como entidad unitaria (es decir un vı́deo con los parámetros de estimación de varianza no adaptativa y
se clasifica bien o no), se puede concluir que esta técnica el uso del filtro zero-meaning. Dado el estrecho margen entre
identifica la fuente de un vı́deo con un 100 % de acierto. las tasas de acierto que hay entre las diferentes configuraciones
Como se puede observar en la Tabla III, utilizando la imagen y los resultados de la configuración óptima y las restantes,
completa existe una mayor tasa de acierto promedio en la las conclusiones no pueden extrapolarse de forma categórica
identificación de fuente, aunque el incremento es pequeño. para cualquier experimento, aunque éstas deben de tenerse en
Sin embargo, la influencia que tiene la resolución en la tasa de cuenta para futuros experimentos y aplicación de la técnica.
aciertos de la identificación de la fuente que adquirió un vı́deo
se refleja en la Figura 2, donde se muestra que la mejora en la VI. C ONCLUSIONES
tasa de acierto para la tamaño de recorte de 1920x1080 es del Una vez presentada la técnica y realizados los experimentos
2.92 % con respecto a un tamaño de recorte de 1024x1024. Por variando los distintos parámetros, se llega a la conclusión
tanto, a partir de un cierto tamaño de recorte el incremento de general de que esta técnica obtiene buenos resultados y es
la tasa de acierto es pequeña, e incluso en algunos casos este válida para la identificación de la fuente en vı́deos de disposi-
puede disminuir un poco. También hay que tener en cuenta tivos móviles. La aplicación a escenarios reales de esta técnica
que a mayor tamaño de recorte mayor tiempo de ejecución la consideramos realista y viable, siempre que los videos a
del algoritmo de extracción de caracterı́sticas. clasificar pertenezcan a un conjunto cerrado y conocido de
dispositivos móviles.
V-B. Influencia de los Parámetros de Ejecución en la Tasa El algoritmo de extracción de fotogramas presentado tiene
de Acierto en cuenta la naturaleza de un vı́deo y sus fotogramas, op-
Para analizar cómo afecta el uso de los distintos parámetros timizando la extracción de los fotogramas claves. Es decir,
del algoritmo propuesto, en [23] en la identificación de la extrae los fotogramas teniendo en cuenta que si los fotogra-
fuente de vı́deos, se realizó un conjunto de experimentos mas obtenidos tienen mayor variación de escena entre ellos
utilizando el mismo tamaño de recorte centrado del fotograma (buscando los cambios de escena), el proceso de clasificación
270 D. M. Arenas, J. Rosales, A. L. Sandoval, H. J. Romo, L. J. Garcı́a

obtendrá mejores resultados. Sin embargo, para la clasificación [8] M. Boutell and J. Luo, “Beyond Pixels: Exploiting Camera Metadata for
utilizando SVM se necesita un número determinado de foto- Photo Classification,” Pattern Recognition, vol. 38, no. 6, pp. 935–946,
June 2005.
gramas para el entrenamiento, y esto el algoritmo también lo [9] J. Tesic, “Metadata Practices for Consumer Photos,” IEEE Multimedia,
tiene en cuenta ya que se puede dar el caso en el que el vı́deo vol. 12, no. 3, pp. 86–92, September 2005.
cambie poco de escena y tenga que obtener los fotogramas más [10] M. Boutell and J. Luo, “Photo Classification by Integrating Image
Content and Camera Metadata,” in Proceedings of the 17th International
distantes en escenas entre los que hay. Una vez obtenidos los Conference on Pattern Recognition, vol. 4. IEEE Computer Society,
fotogramas nos basamos en la extracción de caracterı́sticas que August 2004, pp. 901–904.
se obtienen del patrón de ruido del sensor y la transformada [11] M. J. Tsai, C. L. Lai, and J. Liu, “Camera/Mobile Phone Source
Identification for Digital Forensics,” in Proceedings of the International
wavelet especificado en [23]. Conference on Acoustics Speech and Signal Processing. IEEE, April
Los resultados promedios de clasificación varı́an dependien- 2007, pp. II–221–II–224.
do de los parámetros utilizados. Teniendo en cuenta un tamaño [12] O. Celiktutan, I. Avcibas, B. Sankur, N. P. Ayerden, and C. Capar,
“Source Cell-Phone Identification,” in Proceedings of the IEEE 14th
de recorte centrado, se concluye que a mayor tamaño de Signal Processing and Communications Applications. IEEE, April
recorte, mejores son los resultados. Asimismo, se ha evaluado 2006, pp. 1–3.
como afecta el uso de los distintos parámetros de configuración [13] Y. Long and Y. Huang, “Image Based Source Camera Identification
using Demosaicking,” in Proceedings of the IEEE 8th Workshop on
definidos en [23] en la identificación de la fuente de vı́deos de Multimedia Signal Processing. IEEE, October 2006, pp. 419–424.
dispositivos móviles usando un recorte centrado de fotograma [14] S. Bayram, H. Sencar, N. Memon, and I. Avcibas, “Source Camera
de 640x480. En este sentido, no se han podido obtener Identification Based on CFA Interpolation,” in Proceedings of the IEEE
International Conference on Image Processing, vol. 3, September 2005,
conclusiones categóricas y extrapolables sobre el uso de los pp. III–69–72.
parámetros de configuración, ya que en todos los experimentos [15] S. Bayram, H. T. Sencar, and N. Memon, “Classification of Digital
realizados la tasa de acierto están comprendida en un margen Camera-Models Based on Demosaicing Artifacts,” Digital Investigation,
vol. 5, no. 1, pp. 49–59, June 2008.
muy pequeño. [16] J. Lukas, J. Fridrich, and M. Goljan, “Digital Camera Identification from
Una vez clasificados los fotogramas seleccionados, se debe Sensor Pattern Noise,” IEEE Transactions on Information Forensics and
responder a la pregunta de cuál es la fuente de adquisición del Security, vol. 1, no. 2, pp. 205–214, June 2006.
[17] C. Li, “Source Camera Identification Using Enhanced Sensor Pattern
vı́deo como entidad unitaria. Nuestro criterio ha sido que el Noise,” IEEE Transactions on Information Forensics and Security,
vı́deo pertenece a la fuente cuyo mayor número de fotogramas vol. 5, no. 2, pp. 280–287, June 2010.
se han clasificado de ese tipo. Este criterio debe tenerse en [18] Z. J. Geradts, J. Bijhold, M. Kieft, K. Kurosawa, K. Kuroki, and
N. Saitoh, “Methods for Identification of Images Acquired with Digital
cuenta en futuras comparaciones con otras técnicas. Cameras,” in Proceedings on Enabling Technologies for Law Enforce-
ment and Security, vol. 4232. SPIE-International Society for Optical
AGRADECIMIENTOS Engine, February 2001, pp. 505–512.
[19] T. Lanh, K. Chong, S. Emmanuel, and M. Kankanhalli, “A Survey on
El Grupo de Investigación GASS agradece la infraestructura Digital Camera Image Forensic Methods,” in Proceedings of the IEEE
proporcionada por el Campus de Excelencia Internacional International Conference on Multimedia and Expo, July 2007, pp. 16–
19.
(CEI) Campus Moncloa - Clúster de Cambio Global y Nuevas [20] F. D. O. Costa, M. Eckmann, W. J. Scheirer, and A. Rocha, “Open Set
Energı́as (y, más concretamente, el sistema EOLO como Source Camera Attribution,” in Proceedings of the Patterns and Images
recurso de computación de alto rendimiento HPC - High Proceedings of the 25th Conference on Graphics. IEEE, August 2012,
pp. 71–78.
Performance Computing), infraestructura financiada por el [21] A. Wahab, A. Ho, and S. Li, “Inter-Camera Model Image Source
Ministerio de Educación, Cultura y Deporte (MECD) y por Identification with Conditional Probability Features,” in Proceedings of
el Ministerio de Economı́a y Competitividad (MINECO). the 3rd Image Electronics and Visual Computing Workshop, November
2012.
[22] A. Wahab, J. Briffa, H. Schaathun, and A. T. S. Ho, “Conditional
R EFERENCIAS Probability Based Steganalysis for JPEG Steganography,” in Proceedings
[1] “Alexa Top 500 Global Sites,” http://www.alexa.com/topsites, 2014. of the International Conference on Signal Processing Systems, May
[2] “Gartner Says Annual Smartphone Sales Surpassed Sales of Feature 2009, pp. 205–209.
Phones for the First Time in 2013,” http://www.gartner.com/newsroom/ [23] J. Rosales Corripio, A. L. Sandoval Orozco, L. J. Garcı́a Villalba,
id/2665715, 2014. J. Hernandez-Castro, and S. J. Gibson, “Source Smartphone Identifica-
[3] C. Wen and K. Yang, “Image authentication for digital image evidence,” tion Using Sensor Pattern Noise and Wavelet Transform,” in Proceedings
Forensic Science Journal, vol. 5, no. 1, pp. 1–11, September 2006. of the 5th International Conference on Imaging for Crime Detection and
[4] “Formatos, códecs y extensiones de archivos de audio y vı́deo Prevention, December 2013, pp. 1–6.
compatibles - Cómo - BlackBerry Q10 Smartphone - 10.1,” [24] Y. Su, J. Xu, and B. Dong, “A Source Video Identification Algorithm
http://docs.blackberry.com/es-es/smartphone users/deliverables/50637/ Based on Motion Vectors,” in Proceedings of the Second International
mba1344953159594.jsp, 2014. Workshop on Computer Science and Engineering, vol. 2, October 2009,
[5] P. Bestagini, M. Fontani, S. Milani, M. Barni, A. Piva, M. Tagliasacchi, pp. 312–316.
and S. Tubaro, “An Overview on Video Forensics,” in Proceedings of the [25] “Video Quality Experts Group (VQEG),” http://www.its.bldrdoc.gov/
20th European Signal Processing Conference, August 2012, pp. 1229– vqeg/vqeg-home.aspx, 2014.
1233. [26] S. Yahaya, A. Ho, and A. Wahab, “Advanced Video Camera Identifica-
[6] A. Sandoval Orozco, D. Arenas González, J. Rosales Corripio, tion Using Conditional Probability Features,” in Proceedings of the IET
L. Garcı́a Villalba, and J. Hernandez-Castro, “Techniques for Source Conference on Image Processing, July 2012, pp. 1–5.
Camera Identification,” in Proceedings of the 6th International Confe- [27] E. Bashkov and N. Shozda, “Content-Based Image Retrieval Using Color
rence on Information Technology, May 2013, pp. 1–9. Histogram Correlation,” Graphicon Proceedings, 2002.
[7] N. L. Romero, V. G. Chornet, J. S. Cobos, A. S. Carot, F. C. Centellas, [28] C. C. Chang and C. J. Lin, “LIBSVM: A Library for Support Vector
and M. C. Mendez, “Recovery of Descriptive Information in Images Machines. Version 3.17, Abril 26, 2013,” http://www.csie.ntu.edu.tw/
∼cjlin/libsvm/.
From Digital Libraries by Means of EXIF Metadata,” Library Hi Tech,
vol. 26, no. 2, pp. 302–315, 2008.
RECSI 2014, Alicante, 2-5 septiembre 2014

Clasificación sin Supervisión de Imágenes de


Dispositivos Móviles
David Manuel Arenas González, Jocelin Rosales Corripio, Ana Lucila Sandoval Orozco,
Jorge Alberto Zapata Guridi, Luis Javier Garcı́a Villalba

Grupo de Análisis, Seguridad y Sistemas (GASS), Departamento de Ingenierı́a del Software e Inteligencia Artificial
Facultad de Informática, Despacho 431, Universidad Complutense de Madrid (UCM)
Calle Profesor José Garcı́a Santesmases, 9, Ciudad Universitaria, 28040 Madrid
Email: {darenas, jocerosa, asandoval, javiergv}@fdi.ucm.es, jorge.zapata@jazg.net

Resumen—Cada dı́a el uso de imágenes de dispositivos móviles caracterı́sticas propias que las hacen diferentes a la restantes,
como evidencias en procesos judiciales es más habitual y común. este trabajo se enfoca en las fotos de este tipo de dispositivos.
Por ello, el análisis forense de imágenes de dispositivos móviles Dentro de la identificación de la fuente existen dos gran-
cobra especial importancia. En este trabajo se estudia la rama
del análisis forense que se basa en la identificación de la fuente, des enfoques: escenarios cerrados o escenarios abiertos. Un
concretamente en la agrupación o clustering de imágenes según escenario cerrado es aquel en el cual la identificación de la
la fuente de adquisición. Como diferencia con otras técnicas del fuente de la imagen se realiza sobre un conjunto de cámaras
estado del arte para la identificación de la fuente, en el clustering concreto y conocidas a priori. Para este enfoque normalmente
no se tiene un conocimiento a priori del número de imágenes ni se utiliza un conjunto de imágenes de cada cámara para
dispositivos a identificar, ni se tienen datos de entrenamiento
para una futura fase de clasificación. Es decir, se realiza un entrenar un clasificador y posteriormente se predice la fuente
agrupamiento por clases con todas las imágenes de entrada. La de adquisición de las imágenes objeto de investigación. La
propuesta se basa en la combinación de clustering jerárquico y técnica más utilizada para la tarea de clasificación de imágenes
plano y en el uso del patrón de ruido del sensor. Se han realizado digitales es Support Vector Machine (SVM). Este trabajo se
un conjunto de experimentos que emulan situaciones similares a centra en la identificación de la fuente en escenarios abiertos,
las que se pueden dar en la realidad para mostrar la robustez y
fiabilidad de los resultados de la técnica. Los resultados obtenidos es decir, el analista forense no conoce a priori el conjunto
son satisfactorios en todos los experimentos realizados superando de cámaras a las que pertenece la imagen a identificar su
en tasa de acierto a otras propuestas descritas en el estado del fuente. Obviamente en este tipo de clasificación, en la que no
arte. se tienen datos de cámaras a priori, el objetivo no es identificar
Palabras clave—Análisis forense de imágenes, clustering de la marca y modelo de la cámara, sino poder agrupar distintas
imágenes, patrón de ruido del sensor, PRNU. (Image forensics
analysis, image clustering, sensor pattern noise, PRNU). imágenes en grupos disjuntos en los que todas sus imágenes
pertenecen al mismo dispositivo. Este planteamiento es muy
cercano a situaciones de la vida real, ya que en muchos casos
I. I NTRODUCCI ÓN
el analista desconoce por completo el conjunto de cámaras a
En la actualidad, el número de cámaras integradas a dis- las que pueden pertenecer un conjunto de imágenes. Además,
positivos móviles ha proliferado permitiendo a millones de es prácticamente imposible tener un conjunto de imágenes para
consumidores tomar fotografı́as e incluso compartir de manera entrenar un clasificador con todas las cámaras de dispositivos
sencilla el contenido capturado. La industria de los dispositivos móviles existentes en el mundo.
móviles ha desarrollado la tecnologı́a necesaria para abaratar Este trabajo está estructurado en 5 secciones, siendo la
los costos y de esta manera hacerlos muy accesibles al público. primera de ellas la presente introducción. En la sección 2 se
El gran número de cámaras en dispositivos móviles consti- presentan brevemente los trabajos previos relacionados con
tuye un mayor número de evidencias presentadas ante la ley en las técnicas de análisis forense para la identificación de la
delitos como robo de información de tarjetas de crédito, por- fuente de imágenes de dispositivos móviles. En la sección 3
nografı́a infantil, espionaje industrial, etc. Por tanto, el análisis se presenta la técnica propuesta. Los experimentos realizados
forense de este tipo de imágenes cobra especial importancia y sus resultados se presentan en la sección 4. Por último en
en las investigaciones judiciales. Dentro de análisis forense de la sección 5 se presentan las conclusiones obtenidas de este
imágenes digitales existen dos grandes ramas: la identificación trabajo.
de la fuente de adquisición y la detección de manipulaciones
malintencionadas. Este trabajo se centra en la primera rama, es II. T RABAJOS R ELACIONADOS
decir, dada una imagen o conjunto de imágenes identificar la La mayorı́a de las investigaciones realizadas sobre la identi-
marca y modelo de la cámara que realizó la foto mediante ficación de la fuente de adquisición de imágenes se centran en
la clasificación por agrupamiento o clustering. Asimismo, cámaras digitales tradicionales o DSC (Digital Still Camera),
dado que las cámaras de dispositivos móviles tienen unas no siendo en su mayorı́a estas técnicas válidas para imágenes
272 D. M. Arenas, J. Rosales, A. L. Sandoval, J. A. Zapata, L. J. Garcı́a

de dispositivos móviles. La principal razón por la que se como pueden ser: distancia euclideana, distancia Manhattan y
necesitan técnicas especı́ficas para imágenes de dispositivos distancia Chebychev, entre otras. Alternativamente, es posible
móviles es que muchas de ellas se basan en la extracción usar funciones de similitud S(Xi , Xj ) las cuales comparan dos
de caracterı́sticas de aspectos relacionados con el sensor. En vectores Xi y Xj en forma simétrica, es decir, S(Xi , Xj ) =
general, los sensores de las DSC utilizan la tecnologı́a CCD S(Xj , Xi ). Estas funciones alcanzan sus valores más altos
(Charge Coupled Device), siendo estos sensores de mayor cuando Xi y Xj son más similares. La medida más usada
calidad que los que utilizados en cámaras de los dispositivos en la identificación de fuente de imágenes es la correlación
móviles, los cuales se utilizan la tecnologı́a CMOS (Comple- normalizada [3], [4], [5] definida como:
mentary Metal Oxide Semiconductor). Dada la alta calidad  
de muchos de los sensores de las DSC, las técnicas forenses Xi − Xi Xj − Xj
corr (Xi , Xj ) = (1)
que utilizan las caracterı́sticas del sensor tienen un enfoque Xi − Xi · Xj − Xj
diferente al que se utiliza para las cámaras de dispositivos
móviles. Asimismo, existen otros aspectos diferenciadores Donde Xi y Xj representan la media del vector, Xi Xj
entre DSC y cámaras de dispositivos móviles que se deben es el producto punto de dos vectores y kXi k es la norma L2
tener en cuenta en las distintas técnicas. Algunos de estos de Xi . Dado que el patrón de ruido del sensor es una matriz
aspectos son el sistema de lentes y filtros o el algoritmo de bidimensional, previamente a la aplicación de las funciones
interpolación utilizado. En [1] puede verse una panorámica de del cálculo de la correlación, se realiza una transformación a
las distintas investigaciones realizadas. vector unidimensional.
Para cualquier tipo de clasificación de imágenes, ya sea De acuerdo a la clasificación de algoritmos de clustering
en escenarios abiertos o cerrados, se necesita obtener ciertas propuesta en [6] encontramos los métodos jerárquicos cuyo
caracterı́sticas que permitan a las técnicas de clasificación propósito es lograr una estructura denominada dendograma
realizar su tarea. Según [2] se pueden establecer cuatro grupos que representa la agrupación de los objetos de acuerdo a
de técnicas para este fin: basadas en la aberración de las sus niveles de similitud. Esta agrupación puede realizarse
lentes, basadas en la interpolación de la matriz CFA, basadas de distintas formas: aglomerativa o decisiva. La agrupación
en las imperfecciones del sensor y basadas en el uso de las aglomerativa considera inicialmente a cada objeto como una
caracterı́sticas de la imagen. Dentro de este último grupo clase independiente hasta, de forma iterativa, lograr agrupar
puede hacerse una subdivisión en las basadas en caracterı́sti- todos los objetos en una clase única. La agrupación de
cas del color (Color Features), caracterı́sticas de la calidad forma divisiva se basa en la idea de partir de una sola clase
(Quality Features) y estadı́sticas del dominio wavelet. Este hasta lograr separar todos los objetos en clases individuales.
trabajo utiliza las técnicas basadas en las imperfecciones del También existen los algoritmos de particionamiento en donde
sensor, concretamente aquellas basadas en el patrón de ruido iniciando de una partición, el algoritmo se encarga de mover
del sensor Sensor Pattern Noise (SPN) el cual es originado objetos de un cluster a otro hasta minimizar cierto criterio de
por las imperfecciones en el proceso de fabricación de los error. Dentro de esta categorı́a el método más famoso es el
semiconductores o las producidas por la utilización de la k-means, sin embargo la mayorı́a de estos métodos requieren
cámara en el dı́a a dı́a. conocer de antemano el número de clusters, por lo cual no
El objetivo del análisis de clusters o clustering es agrupar son muy utilizados en temas de análisis forense de imágenes.
una colección de objetos en clases representativas llamadas Por último, existen otros algoritmos de clustering como: [7]
clusters, sin información a priori, de forma que los objetos que produce clusters por medio de grafos, [8] basado en
pertenecientes a cada cluster guarden una mayor similitud la densidad donde los puntos dentro de un cluster vienen
con respecto de objetos en otros clusters. La agrupación de dados por cierta función de probabilidad, clusters basados en
imágenes puede llevarse a cabo mediante técnicas de apren- modelos como árboles de decisión [9] o redes neuronales [10]
dizaje supervisadas o sin supervisión. En el primer caso es y clustering con métodos de soft-computing como fuzzy clus-
indispensable conocer información del dispositivo a priori, es tering [11], métodos evolucionarios de clustering y recocido
decir se identifica claramente con la clasificación en escenarios simulado en clustering [12].
cerrados en donde se requiere una fase de entrenamiento con Existen trabajos previos sobre agrupación de imágenes
las caracterı́sticas extraı́das de las imágenes y una segunda fase por métodos sin supervisión, todos ellos consideran al SPN
de clasificación conforme al resultado anterior. Sin embargo, como el criterio más fiable para representar la huella digital
en un caso real puede ser difı́cil contar con la cámara en de un dispositivo, es de ahı́ que utilizan concretamente el
cuestión o con un subconjunto de fotografı́as tomadas por PRNU (Photo Response Non-Uniformity) como huella y la
la misma para llevar a cabo un entrenamiento, de ahı́ la correlación normalizada como medida de similitud para lograr
necesidad de técnicas de aprendizaje sin supervisión, que el agrupamiento de imágenes por dispositivo.
se corresponden directamente con los escenarios abiertos. El En [13] se utiliza una técnica de clasificación con aprendiza-
clustering tradicional se caracteriza por ser una técnica de je no supervisado donde mediante la maximización de grafos
aprendizaje sin supervisión. se logra una agrupación. El clustering se realiza a partir de
Para poder determinar la similitud entre objetos pertene- grafos no dirigidos con pesos, comenzando con una matriz
cientes a un mismo cluster existen medidas de distancia de afinidad donde los pesos de conexión entre vértices es el
Clasificación sin Supervisión de Imágenes de Dispositivos Móviles 273

valor de correlación entre cada SPN, iniciando con un nodo 1, ..., N utilizando el algoritmo de extracción y el parámetro
aleatorio. En cada iteración conectan los nodos restantes y de supresión de ruido s0 = 5 propuestos en [14]:
eligen los nodos más cercanos al central obteniendo una nueva  
matriz de afinidad en cada paso, el algoritmo se detiene cuando n(i) = I (i) − F I (i) (2)
el número de nodos más cercanos es menor a un parámetro
k. Posteriormente el grafo es particionado hasta el punto en Donde n es el patrón de ruido de cada imagen i, I es el
donde la similitud en un conjunto sea máxima y mı́nima con conjunto de imágenes con ruido del sensor y F es el filtro
respecto a otros conjuntos. de extracción del ruido basado en la transformada wavelet.
En [4] se realizan agrupamientos mediante campos mar- Para esto se utilizó el algoritmo desarrollado por Goljan et-
kovianos aleatorios. Se propone un algoritmo de clustering al en [15]. En nuestra propuesta no se ha utilizado ningún
partiendo de una matriz que contiene todas las correlaciones algoritmo de mejoramiento de ruido, como los propuestos por
entre SPN de diversas cámaras. En cada iteración el algoritmo [5] y [4]. El filtro de Wiener en el dominio de la frecuencia es
agrupa dentro de clases los SPN más similares haciendo suficiente para eliminar la mayorı́a de los detalles de la escena
uso de las caracterı́sticas locales de los campos markovianos presentes al extraer el SPN.
aleatorios y asigna una nueva etiqueta de clase a cada SPN Para cada uno de los N ruidos (n1 , ..., nN ) se obtiene
maximizando una función de probabilidad. El criterio para el valor de correlación usando la ecuación 1 y esto genera
detener el algoritmo se cumple cuando no hay cambios en una matriz de similitud H de N × N . Dicha matriz es
las etiquetas después de cierto número de iteraciones. simétrica y está compuesta de unos en su diagonal principal
(ya que la correlación de un ruido consigo mismo es 1) . Una
El algoritmo propuesto en [5], en el cual se basa esta
vez generada la matriz no será necesario volver a calcular
investigación, utiliza clustering jerárquico para agrupar las
las correlaciones entre ruidos a lo largo del algoritmo de
imágenes. Previo al algoritmo de clustering, los autores apli-
clustering ahorrando tiempo y capacidad de procesamiento.
can una función de mejora del ruido del sensor, que fortalece
El algoritmo de clustering jerárquico seleccionado consiste
los componentes bajos y atenúa los componentes altos en el
en encontrar dentro de la matriz H el par de ruidos k y l con un
dominio wavelet, con la finalidad de eliminar los detalles de la
valor de correlación más alto. Cabe mencionar que los valores
escena en el mismo. Con una matriz de similitud que contiene
de correlación en la diagonal principal no se toman en cuenta.
todas las correlaciones entre los diferentes SPN y tomando
A continuación las filas y columnas correspondiente a k y l
como punto de partida a cada imagen como un cluster único,
son eliminadas y tanto una nueva fila como una nueva columna
el algoritmo de clustering agrupa los dos clusters con un valor
son agregadas a la matriz. Los valores de esta nueva fila y
de correlación más alta formando un solo cluster y actualiza
columna son el resultado de una función de criterio de enlace.
la matriz con una nueva fila y columna que vienen a sustituir
La función elegida para este trabajo fue el criterio de enlace
las filas y columnas de los clusters agrupados. El criterio
promedio puesto que sus resultados son más satisfactorios que
de enlace elegido para mezclar dos clusters fue el de enlace
con otros criterios de enlace como criterio simple o criterio
promedio. En cada iteración del algoritmo se almacena en una
completo, tal como se sugiere en [5]. La ecuación 3 muestra
partición el estado de los clusters en ese momento y se calcula
la función del criterio de enlace promedio entre dos clusters
el coeficiente silueta global. Al final del algoritmo se elige la
A y B.
partición cuyo valor del coeficiente silueta sea el mı́nimo. En
esa partición el número de clusters deberı́a corresponderse con 1 X
número de dispositivos que existen inicialmente, ası́ como el H (A, B) = corr (ni , nj ) (3)
kAk kBk
ni∈A,nj∈B
contenido de cada cluster con los SPN de cada dispositivo. Los
autores realizan una etapa de entrenamiento con el algoritmo Donde el valor corr(ni , nj ) se calcula con la ecuación
descrito y una etapa de clasificación para las imágenes restan- 1 y puede ser tomado de la matriz H para simplificar el
tes. Para realizar esto basta obtener el promedio de los SPN procesamiento computacional. kAk y kBk son la cardinalidad
por cada cluster y compararlos contra las imágenes restantes, de los clusters A y B respectivamente.
la imagen se clasificará dentro del cluster cuya correlación sea Cada iteración del algoritmo toma los dos clusters con
más alta. el valor de correlación más alto en la matriz y mezcla los
objetos contenidos en éstos para crear un nuevo cluster, al
III. D ESCRIPCI ÓN DE LA T ÉCNICA mismo tiempo que almacena el estado de los distintos clusters
El algoritmo de agrupación sin supervisión propuesto en particiones P0 , ..., PN −1 con el objetivo de conocer el
está basado en el presentado en [5]. Se trata de una com- contenido de los clusters en cada momento. En el clustering
binación entre un clustering jerárquico y un clustering plano. jerárquico, el resultado final del algoritmo es un cluster que
Es decir, a pesar de formar una estructura de dendrograma con contiene a todos los objetos. Sin embargo, en este trabajo
cada iteración del algoritmo, al final los clusters son tomados para el agrupamiento de fotografı́as, cada cluster deberı́a
como entidades sin relación alguna ya que cada uno de ellos representar un dispositivo al final de la ejecución. Por este
debe corresponder a un dispositivo especı́fico. motivo se usó el coeficiente silueta como medida de validación
Previo a realizar el clustering, es necesario obtener los pa- de clusters. El coeficiente silueta mide el ı́ndice de similitud
trones de ruido del sensor del conjunto de imágenes I (i) , i = entre los elementos de un mismo cluster (cohesión) y la
274 D. M. Arenas, J. Rosales, A. L. Sandoval, J. A. Zapata, L. J. Garcı́a

similitud entre los elementos de un cluster con respecto a 800 Lumia, Samsung GT-S5830M, LG E400, Sony ST25a y
los demás (separación). A diferencia de Caldelli et al. [5] Zopo ZP980). Del conjunto total hay 150 fotografı́as de cada
el cálculo del coeficiente silueta se realiza por cada cluster modelo.
contenido en la partición Pi y no por cada patrón de ruido, Todas las imágenes fueron recortadas a 1024x1024 pı́xeles,
como observamos en la ecuación 4. poseen una orientación horizontal y son tanto de interiores
como de exteriores con el objetivo de simular un escenario
sj = máx(bj ) − aj (4) más realista. En la extracción del patrón de ruido de todas las
imágenes se utilizó el promedio a cero (zero-mean) de filas
donde, aj (cohesión) es la correlación promedio entre todos
y columnas, los 3 canales de color RGB fueron convertidos
los patrones de ruido dentro del cluster cj . bj (separación) es
a una sola matriz de intensidades de grises, eliminando la
la correlación promedio de los patrones de ruido contenidos
información correspondiente al tono y la saturación, pero
en el cluster cj con respecto a los patrones de ruidos en los
conservando la luminancia.
clusters restantes. Se toma el cluster vecino más cercano, es
Para medir el grado de certeza en los resultados se utilizó la
decir, aquel con la correlación más alta.
tasa de verdaderos positivos TPR (True Positive Rate). El TPR
Para cada iteración q del algoritmo se obtiene una medida
promedio para cada uno de los siguientes experimentos se cal-
global de todos los coeficientes siluetas calculados a partir de
cula, computando para cada cluster el número de fotos que han
los K clusters. Esto equivale a promediar los valores sj en q.
sido bien clasificadas (TPR de cada cluster) y promediando los
La ecuación 5 muestra dicho cálculo.
TPR de todos los clusters resultantes (si hay menos clusters
K que dispositivos se promedia teniendo en cuenta el número de
1 X
SCq = sj (5) dispositivos). Para calcular el TPR de cada cluster, hay que
K j=1 detectar en el cluster cual es el dispositivo que tiene el mayor
número de imágenes con respecto al total de imágenes por
Una vez concluido el clustering jerárquico se procede a bus-
dispositivo, siendo ese el cluster predominante del dispositivo,
car el SCq con el valor mı́nimo, lo cual indica que los clusters
posteriormente hay que calcular el porcentaje de fotos que
de la partición Pq∗ están en un nivel de correlación mayor.
ha sido bien clasificadas para ese dispositivo en ese cluster.
El número de clusters en ese instante deberı́a corresponder
Realmente en la inmensa mayorı́a de los casos puede verse
al número real de dispositivos. El objetivo de almacenar la
fácilmente que un cluster se asocia a uno o varios dispositivos
partición en cada momento del algoritmo es evitar volver a
como puede apreciarse en matrices de confusión de las Tablas
ejecutar el clustering ya que se tiene información de todos los
I, II y III. Si hay varios clusters con el mismo número de
clusters en cada iteración q.
fotos de un dispositivo o un cluster con igual número de fotos
En el Algoritmo 1 se muestra el pseudocódigo de la
de varios dispositivos y a su vez éstos son los máximos, se
propuesta.
toma como cluster predominante para el dispositivo el que se
desee de entre las distintas opciones. Puede darse el caso que
Algorithm 1: Algoritmo de clustering si hay un cluster de más, un cluster no sea predominante de
1 Calcular el patrón de ruido n(i) de cada imagen donde ningún dispositivo (ver Tabla II) y su TPR para ese cluster sea
i ∈ 1, ..., N ; 0. También puede que se forme un cluster menos (ver Tabla
2 Generar matriz de similitud H ∈ RN xN ; III), en este caso este se tendrá en cuenta la asociación del
3 foreach q ∈ 1, ..., N − 1 do cluster al dispositivo y utilizar para el promedio el número de
4 Encontrar el par de clusters H(k, l) con la mayor dispositivos como se indicó anteriormente.
similitud;
5 Eliminar el par de filas y columnas Tabla I
TPR CON IGUAL N ÚMERO DE DISPOSITIVOS QUE CLUSTERS
correspondientes a los clusters k y l;
6 Calcular los valores del nuevo cluster usando el Clusters TPR
criterio de enlace promedio y agregar tanto la fila Marca - Modelo
1 2 3 4 5 promedio
como columna correspondientes; Apple Iphone 5 49 0 0 1 0
7 Determinar el coeficiente silueta global SCq ; Huawei U8815 0 50 0 0 0
8 Almacenar la partición Pq ; LG E400 0 1 49 0 0
Nokia 800 Lumia 0 0 0 50 0
9 Encontrar la partición donde el coeficiente silueta
Samsung GT5830m 0 0 0 0 50
mı́nimo minq (SCq ); TPR por cluster 98 % 100 % 98 % 100 % 100 % 99.2 %

En los resultados de los experimentos se consideran 3


IV. E XPERIMENTOS Y R ESULTADOS posibles casos: a) Número de clusters identificados igual al
Los experimentos fueron realizados con un conjunto total número de dispositivos, b) número de clusters identificados
de 1050 fotografı́as de 7 modelos diferentes de cámaras de mayor al número de dispositivos, y c) número de clusters
dispositivos móviles (Apple iPhone 5, Huawei U8815, Nokia identificados menor al número de dispositivos. Aunque el
Clasificación sin Supervisión de Imágenes de Dispositivos Móviles 275

Tabla II
TPR CON MENOR N ÚMERO DE DISPOSITIVOS QUE CLUSTERS los conjuntos de imágenes por cada dispositivo no poseen
una distribución simétrica para comprobar la adaptabilidad
Clusters TPR del algoritmo propuesto en un escenario real. En las Tablas
Marca - Modelo
1 2 3 4 promedio V y VI se presentan los resultados obtenidos de agrupar las
Apple I- phone 5 100 0 0 0 imágenes de 5 y 7 dispositivos respectivamente. El número
Huawei - U8815 0 100 0 0 de imágenes por dispositivo es variado y aún ası́ podemos
LG - E400 0 0 97 3
observar un muy alto grado de acierto (97.76 % TPR promedio
TPR por cluster 100 % 100 % 97 % 0% 99 %
de los experimentos de las Tablas V y VI).
Tabla III Como se puede observar en los casos de número de imáge-
TPR CON MAYOR N ÚMERO DE DISPOSITIVOS QUE CLUSTERS nes asimétrico se ha experimentado con grupos de bastante
disparidad numérica y en algunos casos con grupos pequeños
Clusters TPR (5 imágenes de un tipo de dispositivo), aun ası́ se han
Marca - Modelo
1 2 3 4 promedio logrado resultados de agrupación satisfactorios. Cabe destacar
Apple Iphone 5 100 0 0 0 que existe una diferencia significativa en el resultado del
Huawei U8815 0 100 0 0
experimento del grupo C de la Tabla VI, ya que se obtiene un
LG E400 0 0 100 0
Nokia 800 Lumia 100 0 0 0
TPR sensiblemente más bajo que el obtenido en el resto de
Samsung GT 5830M 0 0 0 100 experimentos. La causa a esta situación es que como se puede
TPR por cluster 100 % 100 % 100 % 100 % 80 % observar este experimento hay una cámara (Zopo Zp980) con
una sola imagen. El hecho de que haya una sola imagen de
un dispositivo hace que exista una alta probabilidad de que
primer caso es el ideal, el segundo caso también tiene un ese cluster no se genere correctamente, ya que sólo existen
valor alto de TPR puesto el algoritmo deja ciertas imágenes dos casos, la generación correcta al 100 % o la fusión de
desasociadas, es decir, fuera del cluster que les corresponde y este cluster con otro. Concretamente en este experimento la
estas no son consideradas en el TPR por no ser acierto. Por imagen del Zopo Zp980 no se ha clasificado correctamente
otro lado, en el último caso es donde se tienen porcentajes como cluster independiente y se ha fusionado con el clus-
de acierto más bajo porque el algoritmo une dos o más ter del Huawei U8815, bajando considerablemente el TPR.
dispositivos dentro de un mismo cluster. Simplemente para este experimento si se hubiera clasificado
Se realizaron varios experimentos para comparar los resulta- en un cluster independiente esa única imagen, el TPR habrı́a
dos entre recortar la imagen desde el centro o desde la esquina sido del 99,71 %. Como puede observarse para clusters con
superior izquierda, teniendo este último criterio un TPR más una única imagen si se da una clasificación incorrecta el TPR
alto. Una de las posibles razones por la que las dos zonas de baja sensiblemente, ya que esa única imagen hace que el TPR
recortes obtienen distintos resultados, es porque generalmente, parcial del cluster sea del 0 %, aunque la práctica totalidad de
las fotografı́as se toman enfocando en el centro el objeto de las imágenes se hayan clasificado correctamente.
interés, el cual normalmente tiene un mayor grado de detalle.
Tabla V
Este alto grado de detalle en el recorte de la imagen, en TPR PARA CLUSTERING ASIM ÉTRICO DE 5 DISPOSITIVOS
ciertos casos, puede dificultar la clasificación de la misma.
La Tabla IV muestra el TPR en función del número distinto Apple Huawei LG Nokia Samsung
Grupo Iphone 5 U8815 E400 800 Lumia GT 5830m TPR
de dispositivos utilizados y el número de fotos utilizadas por A 100 95 90 85 80 99.78 %
dispositivo. Todos los dispositivos tienen el mismo número de B 50 45 40 35 30 99.1 %
fotos. En la Tabla IV se puede observar como el TPR aumenta C 100 75 50 25 10 99.6 %
en el caso del recorte en el centro a medida que se agrupan D 100 30 20 10 5 99 %
más dispositivos mientras que en el recorte por la esquina se
mantienen buenos resultados.
Tabla VI
Tabla IV TPR PARA CLUSTERING ASIM ÉTRICO DE 7 DISPOSITIVOS
TPR EN FUNCI ÓN DEL N ÚMERO DISTINTO DE DISPOSITIVOS Y EL N ÚMERO
DE FOTOS POR DISPOSITIVO Apple Huawei LG Nokia Samsung Sony Zopo
Grupo Iphone 5 U8815 E400 800 Lumia GT 5830m ST25a Zp980 TPR
A 100 95 90 85 80 75 70 99.84 %
Número Crop Corner Crop Center
B 50 45 40 35 30 25 20 99.36 %
de Número de Dispositivos Número de Dispositivos C 100 75 50 25 10 5 1 85.43 %
Fotos 3 5 7 3 5 7 D 100 50 40 30 20 10 5 99.21 %

50 99.33 % 99.20 % 99.71 % 66.67 % 80 % 99.71 %


100 99 % 100 % 99.57 % 66.67 % 80 % 99.71 %
V. C ONCLUSIONES
En un escenario cerrado no es muy probable contar con En este trabajo se ha realizado un análisis de las principales
el mismo número de imágenes de cada dispositivo a iden- técnicas de agrupación de imágenes sin supervisión, siendo
tificar, por esa razón se realizaron experimentos en donde estas de suma importancia en el análisis forense de imágenes
276 D. M. Arenas, J. Rosales, A. L. Sandoval, J. A. Zapata, L. J. Garcı́a

digitales. A pesar del auge que han tenido las cámaras de AGRADECIMIENTOS
dispositivos móviles en estos tiempos, aún no existen en el El Grupo de Investigación GASS agradece la infraestructura
estado del arte muchas referencias para la agrupación no proporcionada por el Campus de Excelencia Internacional
supervisada de imágenes de dispositivos móviles. La mayor (CEI) Campus Moncloa - Clúster de Cambio Global y Nuevas
parte de los trabajos se refieren a la clasificación supervisada Energı́as (y, más concretamente, el sistema EOLO como
y en muchos casos no se centran en imágenes de dispo- recurso de computación de alto rendimiento HPC - High
sitivos móviles, las cuales tienen caracterı́sticas peculiares. Performance Computing), infraestructura financiada por el
La comparación de los resultados de este trabajo con los Ministerio de Educación, Cultura y Deporte (MECD) y por
de otros trabajos del estado del arte no puede realizarse de el Ministerio de Economı́a y Competitividad (MINECO).
forma precisa, ya que en los mismos no se hace referencia
al número final de clusters generados, lo cual es un tema R EFERENCIAS
fundamental. Además en estos trabajos no se detalla como [1] A. L. Sandoval Orozco, D. M. Arenas González, J. Rosales Corripio,
L. J. Garcı́a Villalba, and J. C. Hernandez-Castro, “Techniques for
se han calculado las tasas de acierto, ni se hace referencia a Source Camera Identification,” in Proceedings of the 6th International
las mismas cuando los clusters generados por la clasificación Conference on Information Technology, May 2013, pp. 1–9.
son diferentes en número a la cantidad dispositivos utilizados, [2] T. Van Lanh, K. S. Chong, S. Emmanuel, and M. S. Kankanhalli, “A
Survey on Digital Camera Image Forensic Methods,” in Proceedings of
haciendo esto que la comparativa de sus tasas con respecto a the IEEE International Conference on Multimedia and Expo. IEEE,
nuestra interpretación del TPR carezca de sentido. El ruido July 2007, pp. 16–19.
agregado en cada fotografı́a por el sensor de la cámara, [3] J. Fridrich, “Digital Image Forensics,” IEEE Signal Processing Magazi-
ne, vol. 26, no. 2, pp. 26–37, March 2009.
debido a las fallos en el proceso de fabricación de este o [4] C.-T. Li, “Unsupervised Classification of Digital Images Using Enhan-
defectos por el uso diario, ha demostrado ser una fuente fiable ced Sensor Pattern Noise,” in Proceedings of the IEEE International
de identificación de un dispositivo. Asimismo, el cálculo de Symposium on Circuits and Systems. IEEE, May 2010, pp. 3429–3432.
[5] R. Caldelli, I. Amerini, F. Picchioni, and M. Innocenti, “Fast Image
correlación normalizada entre ruidos de sensor extraı́dos de Clustering of Unknown Source Images,” in Proceedings of the IEEE
dos o más fotografı́as es una medida de similitud bastante International Workshop on Information Forensics and Security. IEEE,
utilizada en las técnicas de aprendizaje sin supervisión de December 2010, pp. 1–5.
[6] L. Rokach, “A Survey of Clustering Algorithms,” in Data Mining and
imágenes, siendo las técnicas de clustering aquellas que tienen Knowledge Discovery Handbook, O. Maimon and L. Rokach, Eds.
mejores resultados. Springer US, 2010, pp. 269–298.
El algoritmo de esta propuesta está basado en la combina- [7] C. Zahn, “Graph-Theoretical Methods for Detecting and Describing
Gestalt Clusters,” IEEE Transactions on Computers, vol. C-20, no. 1,
ción de un clustering jerárquico y un clustering plano para la pp. 68–86, January 1971.
separación entre clusters. El uso del coeficiente silueta para [8] J. D. Banfield and A. E. Raftery, “Model-Based Gaussian and Non-
la validación de los clusters demostró dar buenos resultados Gaussian Clustering,” Biometrics, vol. 49, no. 3, pp. pp. 803–821,
September 1993.
al obtener elevados TPR, también el número de clusters [9] D. Fisher, “Knowledge Acquisition Via Incremental Conceptual Cluste-
correspondió al número de dispositivos reales en la mayorı́a ring,” Machine Learning, vol. 2, no. 2, pp. 139–172, 1987.
de los casos. [10] J. Vesanto and E. Alhoniemi, “Clustering of the Self-Organizing Map,”
IEEE Transactions on Neural Networks, vol. 11, no. 3, pp. 586–600,
El porcentaje de aciertos al utilizar el recorte de la imagen May 2000.
desde la esquina izquierda era más estable que aquellos recor- [11] F. Hoppner, Fuzzy Cluster Analysis: Methods for Classification, Data
tados por el centro, pese a encontrar diferentes observaciones Analysis and Image Recognition, ser. Jossey-Bass higher and adult
education series. Wiley, 1999.
en la literatura argumentando la saturación y ausencia de [12] S. Z. Selim and K. Alsultan, “A Simulated Annealing Algorithm for the
iluminación encontrada en esas regiones. Clustering Problem,” Pattern Recogn., vol. 24, no. 10, pp. 1003–1008,
Los experimentos realizados en este trabajo han permitido Oct. 1991.
[13] B.-b. Liu, H.-K. Lee, Y. Hu, and C.-H. Choi, “On Classification of
comprobar gran diversidad de situaciones con respecto a la Source Cameras: A Graph Based Approach,” in Proceedings of the IEEE
simetrı́a o no de los conjuntos del fotos, el tamaño de los International Workshop on Information Forensics and Security (WIFS),.
mismos, el número de dispositivos utilizados y el uso de IEEE, December 2010, pp. 1–5.
[14] J. Lukas, J. Fridrich, and M. Goljan, “Digital Camera Identification from
dispositivos de la misma marca. Tras todos los experimentos Sensor Pattern Noise,” IEEE Transactions on Information Forensics and
realizados se concluye que los resultados de la aplicación de Security, vol. 1, no. 2, pp. 205–214, June 2006.
la técnica son buenos (98.01 % TPR promedio de todos los [15] M. Goljan, J. Fridrich, and T. Filler, “Large Scale Test of Sensor
Fingerprint Camera Identification,” in Proceedings of the SPIE on Media
experimentos realizados). Forensics and Security, vol. 7254. International Society for Optics and
Photonics, February 2009, pp. 72 540I–72 540I.
RECSI 2014, Alicante, 2-5 septiembre 2014

Identificación de la Fuente de Imágenes de


Dispositivos Móviles Basada en el Ruido del Sensor
Jocelin Rosales Corripio, David Manuel Arenas González, Ana Lucila Sandoval Orozco,
Luis Javier Garcı́a Villalba

Grupo de Análisis, Seguridad y Sistemas (GASS), Departamento de Ingenierı́a del Software e Inteligencia Artificial
Facultad de Informática, Despacho 431, Universidad Complutense de Madrid (UCM)
Calle Profesor José Garcı́a Santesmases, 9, Ciudad Universitaria, 28040 Madrid
Email: jocerosa@ucm.es, {darenas, asandoval, javiergv}@fdi.ucm.es

Resumen—La fuente de una imagen digital se puede identificar Debido al incremento en sus capacidades de almacena-
a través de los rasgos que el dispositivo que la genera impregna miento, procesamiento, usabilidad y portabilidad ası́ como
en ella durante el proceso de su generación. La mayorı́a de a su bajo coste, los dispositivos móviles están presentes en
las investigaciones realizadas en los últimos años sobre técnicas
de identificación de fuente se han enfocado únicamente en diversidad de actividades, lugares y eventos de la vida diaria. A
la identificación de cámaras tradicionales DSC (Digital Still causa del extenso uso de las cámaras digitales de dispositivos
Camera). Considerando que hoy en dı́a las cámaras de los móviles se han generado polémicas, discusiones y normas
dispositivos móviles prácticamente han sustituido a las DSCs se sobre la prohibición de su uso en lugares como escuelas,
detectó la necesidad de realizar investigación sobre las técnicas oficinas de gobierno, eventos empresariales, conciertos, em-
para identificar la fuente de imágenes generadas por dispositivos
móviles. Las imágenes digitales generadas por una cámara presas, etc. Una consecuencia más de su extenso uso es que
digital contienen intrı́nsecamente un patrón del ruido del sensor las imágenes digitales en la actualidad son utilizadas como
que se puede usar como medio de identificación de la fuente. testigos silenciosos en procesos judiciales, siendo una pieza
Especı́ficamente, las cámaras digitales de dispositivos móviles crucial de la evidencia del crimen [3]. Es por ello que contar
cuentan en su mayorı́a con un tipo de sensor que deja rasgos con herramientas que permitan identificar a los dispositivos
caracterı́sticos en la imagen. En este trabajo se propone un
algoritmo basado en el ruido del sensor y en la transformada que han generado una cierta imagen digital cobra importancia
wavelet para identificar el dispositivo móvil (marca y modelo) ya que podrı́a servir en diversas áreas como la lucha contra
que ha generado determinadas imágenes bajo investigación. la pornografı́a infantil, la prevención de robo de tarjetas de
Palabras clave—Análisis forense, imagen digital, patrón de crédito, el combate a la piraterı́a, la prevención de secuestros,
ruido del sensor, PRNU. (Forensics analysis, digital image, sensor etc.
pattern noise, PRNU).
II. T ÉCNICAS DE A N ÁLISIS F ORENSE EN I MAGENES
I. I NTRODUCTION
La investigación en este campo estudia el diseño de técnicas
Con frecuencia las fotografı́as son consideradas como una para identificar las caracterı́sticas, especialmente marca y
parte de la verdad al ser hechos reales capturados por disposi- modelo, de los dispositivos utilizados para la generación de
tivos electrónicos (cámaras). Sin embargo, con el desarrollo de imágenes digitales. El éxito de estas técnicas depende del
la tecnologı́a han surgido herramientas potentes y sofisticadas supuesto de que todas las imágenes adquiridas por un mismo
que facilitan de una manera impresionante la alteración de dispositivo presentan caracterı́sticas intrı́nsecas del dispositivo.
las imágenes digitales, incluso para quienes no tienen conoci- Las caracterı́sticas que se usan para identificar marca y modelo
mientos técnicos o especializados en el área [1]. de las cámaras digitales se derivan de las diferencias que
El desarrollo de las tecnologı́as digitales ha estado y con- existen entre las técnicas de procesamiento de las imágenes
tinúa avanzando a un ritmo imparable. Cada dı́a el número y las tecnologı́as de los componentes que se utilizan [4].
de cámaras digitales va creciendo, ası́ como la facilidad de El mayor problema con este enfoque es que los diferentes
acceso a ellas. Las cámaras digitales de móviles merecen modelos de las cámaras digitales usan componentes de un
especial atención, ya que estudios realizados indican que al número reducido de fabricantes, y que los algoritmos que
final del año 2012 el número total de dispositivos móviles usan también son muy similares entre modelos de la misma
activos alcanzó los 6,7 billones y se estima que para el verano marca. Es por ello que la fiabilidad de la identificación de
del 2013 este número igualará al total de la población del la cámara fuente depende en gran parte de la identificación
planeta 7,1 billones. El 83 % de estos dispositivos móviles de varias caracterı́sticas independientes del modelo. Según
cuentan con cámara digital integrada, las cuales a diferencia [4] se pueden establecer cuatro grupos de técnicas para este
de las cámaras digitales convencionales son llevadas por sus fin: utilización de la aberración de las lentes, interpolación
dueños todo el tiempo a la mayorı́a de lugares que asiste y en de la matriz CFA, uso de las caracterı́sticas de la imagen e
muchos casos tienen conexión a internet [2]. imperfecciones del sensor. Esta última constituye el objeto de
278 J. Rosales, D.M. Arenas, A.L. Sandoval, L.J. Garcı́a

este trabajo. Además de las anteriores existe otro grupo de (luminancia), generándose un total de 36 caracterı́sticas para
técnicas basadas en los metadatos. representar cada imagen. Después, las imágenes tomadas por
Las técnicas basadas en el estudio de las huellas que los la cámara bajo investigación son etiquetadas como la clase
defectos del sensor dejan sobre las imágenes se dividen en positiva y las tomadas por las cámaras disponibles restantes
dos ramas: defectos de pı́xel y patrón de ruido del sensor como las clases negativas. Después de la fase de entrenamiento
SPN (Sensor Pattern Noise). En la primera se estudian los de la SVM en la que se calcula el hiper-plano que separa
defectos de pı́xel, los pı́xeles calientes, los pı́xeles muertos, los casos positivos y negativos toman en cuenta las clases
los defectos de fila o columna, y los defectos de grupo. En desconocidas del escenario abierto moviendo el hiper-plano
la segunda se construye un patrón del ruido promediando los generado por un valor dado ya sea hacia adentro (hacia las
múltiples residuos de ruido obtenidos mediante algún filtro de clases positivas) o hacia afuera (las clases negativas). En los
eliminación de ruido. La presencia del patrón se determina experimentos utilizan un conjunto de 25 cámaras digitales
utilizando algún método de clasificación como correlación o de 9 fabricantes, 150 imágenes en formato JPEG de cada
máquinas SVM. cámara con diferentes configuraciones de luz, zoom y flash.
En [5] se estudian los defectos de los pı́xeles en los sensores Los resultados de los experimentos mostraron una precisión
de tipo CCD, centrándose en la evaluación de diferentes ca- del 94,49 %, del 96,77 % y del 98,10 %, utilizando conjuntos
racterı́sticas para examinar las imágenes e identificar la fuente: abiertos con 2/25, 5/25, y 15/25 cámaras, respectivamente,
defectos del sensor CCD, formato de los archivos usados, ruido definiendo un conjunto abierto x/y como el conjunto de y
introducido en la imagen y marcas de agua introducidas por cámaras donde x cámaras son usadas para entrenar y probar las
el fabricante de la cámara. Entre los defectos del sensor CCD imágenes que pueden pertenecer a cualquiera de las cámaras
considerados se encuentran los puntos calientes, los pı́xeles x conocidas, ası́ como a las otras y-x cámaras desconocidas.
muertos, los defectos en grupo y los defectos de fila o columna. En [8] se basan en el trabajo de [6] para extraer el ruido
En sus resultados se observa que cada una de las cámaras tiene del sensor usando el cálculo de similitudes como método
un patrón de defecto diferente. Sin embargo, también se señala de la clasificación. Exponen que el ruido del sensor puede
que el número de defectos en los pı́xeles para una cámara estar muy contaminado por los detalles de los escenarios y
es diferente entre fotos y varı́a demasiado en función del proponen que entre más fuerte es un componente del ruido
contenido de la imagen. Asimismo, se revela que el número de del sensor es menos fiable y por lo tanto debe ser atenuado.
defectos cambia con la temperatura. Al considerar únicamente Proponen una forma de atenuar los valores altos del ruido del
los defectos de los sensores de tipo CCD este estudio no es sensor y realizan experimentos de identificación con 6 cámaras
aplicable al análisis de imágenes generadas por dispositivos tradicionales diferentes (100 imágenes de cada cámara). Para
móviles. las imágenes de 1536x2048 pixeles obtuvieron una tasa de
En [6] se analiza el patrón de ruido del sensor de un acierto del 38.5 % con la implementación sin la mejora y del
conjunto de cámaras, el cual funciona como una huella 80.8 % con la mejora propuesta; para las imágenes de 512x512
dactilar, permitiendo la identificación única de cada cámara. pı́xeles obtuvieron una tasa de acierto del 21.8 % sin la mejora
Para obtener este patrón se realiza un promedio del ruido y del 78.7 % con la mejora propuesta.
obtenido a partir de diferentes imágenes utilizando un filtro
de eliminación de ruido. Para identificar la cámara a partir de III. A LGORITMO DE I DENTIFICACI ÓN DE LA F UENTE
una imagen dada, se considera el patrón de referencia como Debido a la propiedad determinista del patrón de ruido del
una marca de agua cuya presencia en la imagen es establecida sensor que está presente en cada imagen capturada, se puede
mediante un detector de correlación. El estudio se realizó con usar este patrón como huella para identificar el dispositivo
320 imágenes procedentes de 9 modelos distintos de cámaras. que generó la imagen objeto en investigación. Haciendo una
También se demuestra que este método está afectado por analogı́a, se puede decir que el patrón del ruido del sensor es
algoritmos de procesamiento de la imagen como la compresión para una cámara digital lo que la huella para un ser humano.
JPEG y la corrección gamma. Los resultados para fotografı́as Para poder identificar la marca y el modelo de la cámara
con diferentes tamaños y recortadas no son satisfactorios [4]. digital de un dispositivo móvil se requiere de un algoritmo
En [7] se propone un enfoque para la identificación de que nos permita extraer el ruido del sensor y otro que nos
la cámara fuente considerando escenarios abiertos, donde a permita obtener las caracterı́sticas de las huellas obtenidas para
diferencia de los escenarios cerrados no se da por sentado ası́ poder clasificarlas e identificarlas.
contar con acceso a todas las posibles cámaras de origen de la Tomando como referencia las ideas principales de [6] se
imagen. Este enfoque, considera 9 diferentes áreas de interés propone un algoritmo para extraer el ruido del sensor (también
ROI (Region Of Interest) que se encuentran en las esquinas y conocido como ruido residual) que se describe en el algoritmo
el centro de las imágenes. El uso de las regiones de interés 1.
permite trabajar con imágenes de diferentes resoluciones sin Con el promediado a cero se limpia la huella de las
la necesidad de rellenar con ceros las imágenes y sin el uso caracterı́sticas que no son intrı́nsecas al sensor aplicando como
de artefactos de interpolación de color. Para determinar las se sugiere en [9], de tal manera que los promedios de las filas
caracterı́sticas se calcula el SPN para cada uno de los canales y de las columnas sean iguales a cero. Esto se logra restando
R, G y B. Asimismo, se calcula el SPN para el canal Y el promedio de la columna a cada pı́xel de la columna y
Identificación de la Fuente de Imágenes de Dispositivos Móviles Basada en el Ruido del Sensor 279

Algoritmo 1: Extraer ruido del sensor Algoritmo 2: Extracción de Caracterı́sticas


Input: Imagen Input: Imagen
varianza: (adaptativa o no adaptativa) Huella del sensor de la imagen
Result: Huella del sensor de la imagen Result: 81 caracterı́sticas
1 procedure E XTRAER H UELLA(I) 1 procedure E XTRAER C ARACTERISTICAS(I)
2 Realizar descomposición wavelet de 4 niveles de In ; 2 Separar los canales R, G y B de la huella del sensor;
3 foreach nivel de la descomposición wavelet do 3 foreach canal de color do
4 foreach c ∈{H,V,D} do 4 Hacer una descomposición wavelet de un nivel;
5 Calcular la varianza local; 5 foreach c ∈{H,V,D} do
6 if varianza adaptativa then 6 Calcular k momentos centrales con
n
7 Calcular 4 varianzas con ventanas de X k
mk = n1 |ci − c| ;
tamaños 3, 5 ,7 y 9 respectivamente;
i=1
8 Seleccionar la varianzas mı́nima;
7 end procedure
else
9 Calcular la varianza con una ventana
de tamaño 3; Tabla I
PAR ÁMETROS UTILIZADOS EN LOS EXPERIMENTOS
10 Calcular los componentes wavelet sin ruido
aplicando el filtro de Wiener a la varianza;
Parámetro Valor
11 Obtener la imagen limpia del ruido del sensor Tipo de Fotos Sin ninguna restricción
aplicando la Transformada Inversa Wavelet; Dimensiones 1024 x1024
12 Calcular el ruido del sensor con Fotos Entrenadas x Cámara 100
Iruido =Ientrada −Ilimpia ; Fotos Probadas x Cámara 100
13 Aplicar a Iruido un promediado a cero; Cálculo de la Varianza Enfoque no adaptativo
14 Aumentar en Iruido el peso del canal verde con
Iruido =0,3·IruidoR +0,6·IruidoG +0,1·IruidoB ;
15 end procedure Ericsson el UST25a (SE1) y el U5I (SE2); y de Samsung
el GTI9100 (S1) y el GTS5830 (S2). El algoritmo propuesto
obtuvo un porcentaje de acierto promedio de 93.625 % al
identificar entre marca y modelo como se observa en la matriz
posteriormente restando el promedio de la fila a cada pı́xel de de confusión de la Tabla II.
la fila. Esta operación se aplica a todas las filas y columnas
de la imagen. Después de limpiar la imagen se le da un Tabla II
M ATRIZ DE CONFUSI ÓN DEL EXPERIMENTO 1
mayor peso al canal verde ya que debido a la configuración
de la matriz de color éste contiene más información sobre
la imagen que el resto de los canales de color [10][11]. La Cámara A1 A2 A3 B1 SE1 SE2 S1 S2
identificación de las cámaras se realiza utilizando una máquina A1 92 1 0 0 0 1 0 6
de soporte vectorial SVM para lo que es necesario extraer una A2 0 96 0 0 1 0 3 0

serie de caracterı́sticas que representen a las huellas de los A3 0 0 99 0 0 0 1 0


B1 0 0 0 94 0 2 0 4
sensores. Se calculan un total de 81 caracterı́sticas (3 canales
SE1 7 2 0 0 91 0 0 0
x 3 componentes wavelet x 9 momentos centrales) mediante
SE2 2 0 0 1 0 94 1 2
el algoritmo 2.
S1 4 8 0 0 0 5 83 0
Con las caracterı́sticas que se extraen tanto de las imágenes
S2 0 0 0 0 0 0 0 100
para entrenamiento como para probar se alimenta la máquina
SVM y se obtienen las clasificaciones.
Con la finalidad de acercarse a escenarios más reales el
IV. E XPERIMENTOS Y RESULTADOS segundo experimento se realizó con 14 cámaras digitales de
Para evaluar la efectividad del algoritmo de identificación de dispositivos móviles de 7 fabricantes. De Apple se conside-
la fuente de dispositivos móviles se realizaron dos experimen- raron los modelos iPhone3G (A1), iPhone4S (A2), iPhone3
tos, en los que se consideraron los 1024x1024 pı́xeles centrales (A3) y iPhone5 (A4); de BlackBerry el 8520 (B1); de Sony
de las fotografı́as como se recomienda ampliamente en [12]. Ericsson el UST25a (SE1) y el U5I (SE2); de Samsung el
La Tabla I resume los principales parámetros utilizados. GTI9100 (S1), el GTS5830 (S2) y el GT-S5830M (S3); de Lg
En el primer experimento se probó con un grupo de 8 el E400 (L1); de HTC el DesireHD (H1) y el Desire (H2);
cámaras digitales de dispositivos móviles de 4 fabricantes. De y de Nokia el E61I (N1). El algoritmo propuesto obtuvo un
Apple se consideraron los modelos iPhone3G (A1), iPhone4S porcentaje de acierto promedio de 87,214 % como se puede
(A2) y iPhone3 (A3); de BlackBerry el 8520 (B1); de Sony observar en la matriz de confusión de la Tabla III.
280 J. Rosales, D.M. Arenas, A.L. Sandoval, L.J. Garcı́a

Tabla III
M ATRIZ DE CONFUSI ÓN DEL EXPERIMENTO 2

Cámara A1 A2 A3 A4 B1 SE1 SE1 S1 S1 S3 L1 H1 H2 N1


A1 90 0 0 2 0 0 0 0 7 0 1 0 0 0
A2 0 91 0 3 0 0 0 3 0 0 0 1 2 0
A3 0 0 98 0 0 0 0 2 0 0 0 0 0 0
A4 0 0 1 88 0 0 0 0 0 0 3 6 0 2
B1 0 0 0 2 73 0 0 0 4 0 0 1 0 20
SE1 7 0 0 0 0 80 0 0 0 0 1 12 0 0
SE2 1 0 0 2 2 0 86 1 2 5 1 0 0 0
S1 4 5 0 4 0 0 1 83 0 0 1 0 2 0
S2 0 0 0 0 0 0 0 0 100 0 0 0 0 0
S3 0 0 1 0 0 0 8 0 0 85 0 1 0 5
L1 0 0 0 9 0 6 0 0 2 0 70 13 0 0
H1 2 0 0 0 0 11 0 0 1 0 1 85 0 0
H2 0 6 0 0 0 0 0 0 0 0 0 0 94 0
N1 0 0 0 0 2 0 0 0 0 0 0 0 0 98

V. C ONCLUSIONES R EFERENCIAS
En este trabajo se estudian las diferentes técnicas de análi- [1] T. Gloe, M. Kirchner, A. Winkler, and R. Bohme, “Can We Trust Digital
sis forense de imágenes para solucionar el problema de la Image Forensics?” in Proceedings of the 15th International Conference
on Multimedia, September 2007, pp. 78–86.
identificación de la fuente de una imagen. Se describe la idea [2] T. Ahonen and A. Moore, “Tomi Ahonen Almanac 2012: Mobile
principal de cada una de las técnicas ası́ como algunos de los Telecoms Industry Annual Review,” 2012. [Online]. Available:
trabajos más representativos que se han realizado aplicándolas. http://www.tomiahonen.com/ebook/almanac.html
[3] M. Al-Zarouni, “Mobile Handset Forensic Evidence: a Challenge for
De acuerdo a la estructura y funcionamiento de las cámaras Law Enforcement,” in Proceedings of the 4th Australian Digital Foren-
digitales de dispositivos móviles las técnicas más adecuadas sics Conference, December 2006.
para realizar análisis forense en ellas son las que se basan en el [4] T. Van Lanh, K. S. Chong, S. Emmanuel, and M. S. Kankanhalli, “A
Survey on Digital Camera Image Forensic Methods,” in Proceedings of
ruido del sensor y las que utilizan las transformadas wavelet. the IEEE International Conference on Multimedia and Expo, July 2007,
En virtud de lo anterior se propuso un algoritmo para la iden- pp. 16–19.
tificación de los dispositivos móviles fuente combinando las [5] Z. J. Geradts, J. Bijhold, M. Kieft, K. Kurosawa, K. Kuroki, and
N. Saitoh, “Methods for Identification of Images Acquired with Di-
técnicas basadas en la huella del sensor y en la transformación gital Cameras,” in Proceedings of the Enabling Technologies for Law
wavelet. Por último con los experimentos realizados y sus Enforcement and Security Conference, vol. 4232, February 2001, pp.
resultados se demuestra que la combinación de estas técnicas 505–512.
[6] J. Lukas, J. Fridrich, and M. Goljan, “Digital Camera Identification from
es efectiva para la identificación del modelo y fabricante con Sensor Pattern Noise,” IEEE Transactions on Information Forensics and
un alto porcentaje de acierto. Security, vol. 1, no. 2, pp. 205–214, June 2006.
Aún estimando que son buenos los resultados obtenidos por [7] F. D. O. Costa, M. Eckmann, W. J. Scheirer, and A. Rocha, “Open Set
Source Camera Attribution,” in Proceedings of the 25th Conference on
la técnica, obviamente existe margen de mejora de las tasas Graphics, Patterns and Images, August 2012, pp. 71–78.
de acierto, sobre todo teniendo en cuenta el caso en el que [8] C. T. Li, “Source Camera Linking Using eEnhanced Sensor Pattern
el número de cámaras aumenta considerablemente. Cuanto Noise Extracted from Images,” in Proceedings of the 3rd International
Conference on Crime Detection and Prevention (ICDP 2009). Curran
mayor sea la mejora en la tasa de acierto mayor será la Associates, Inc., December 2009, pp. 1–6.
posibilidad de aplicación de la técnica a situaciones reales. A [9] M. Chen, J. Fridrich, M. Goljan, and J. Lukas, “Determining Image
grandes rasgos las principales lı́neas de investigación a tener Origin and Integrity Using Sensor Noise,” IEEE Transactions on Infor-
mation Forensics and Security, vol. 3, no. 1, pp. 74–90, March 2008.
en cuenta en los trabajos futuros son: mejora en la selección [10] O. Celiktutan, B. Sankur, and I. Avcibas, “Blind Identification of Source
del recorte de la fotografı́a (distintas dimensiones y zonas), Cell-Phone Model,” IEEE Transactions on Information Forensics and
optimización de los parámetros de configuración de la máquina Security, vol. 3, no. 3, pp. 553–566, September 2008.
[11] C. McKay, “Forensic Analysis of Digital Imaging Devices,” University
SVM, optimización en la selección de la función wavelet y la of Maryland,” Technical Report, 2007.
combinación de esta técnica con otras como las basadas en las [12] C. T. Li and R. Satta, “On the Location-Dependent Quality of the
caracterı́sitcas del color, las basadas en las métricas de calidad Sensor Pattern Noise and its Implication in Multimedia Forensics,” in
Proceedings of the 4th International Conference on Imaging for Crime
de la imagen o las que utilizan otros tipos de caracterı́sticas Detection and Prevention 2011 (ICDP 2011). Curran Associates, Inc.,
extraı́das del ruido del sensor. November 2011, pp. 1–6.
RECSI 2014, Alicante, 2-5 septiembre 2014

Aprendizaje supervisado para el enlace de registros


a través de la media ponderada
Daniel Abril Guillermo Navarro-Arribas Vicenç Torra
Instituto de Investigación Dep. Enginyeria de la Informació Instituto de Investigación
en Inteligencia Artificial (IIIA), i de les Comunicacions (DEIC), en Inteligencia Artificial (IIIA),
Consejo Superior de Universitat Autònoma Consejo Superior de
Investigaciones Cientı́ficas (CSIC) de Barcelona (UAB) Investigaciones Cientı́ficas (CSIC)
Email: dabril@iiia.csic.es Email: guillermo.navarro@uab.cat Email: vtorra@iiia.csic.es

Resumen—En el área de la privacidad de datos, las técnicas en dichas bases de datos. Privacy Preserving Data Mining
para el enlace de registros son utilizadas para evaluar el riesgo de (PPDM) [10] y Statistical Disclosure Control (SDC) [11] son
revelación de un conjunto de datos protegido. La idea principal dos disciplinas cuya función es la investigación de métodos
detrás de estas técnicas es enlazar registros que hacen referencia
a un mismo individuo, entre diferentes bases de datos. En este y herramientas para asegurar la privacidad de estos datos.
trabajo se presenta una variación del enlace de registros basada Dentro de estos campos el enlace de registros se utiliza para
en una media ponderada para calcular distancias entre registros. obtener una evaluación del riesgo de revelación de información
Mediante el uso de un método supervisado de aprendizaje confidencial sobre un conjunto de datos previamente protegido
nuestra propuesta permite determinar cuales son los pesos que [12], [14]. Por lo tanto el riesgo de re-identificación de un
maximizan el número de enlaces entre los registros de la base
de datos original y su versión protegida. El resultado de este individuo se evalúa mediante la identificación de enlaces de
trabajo se aplica en la estimación del riesgo de revelación de registros pertenecientes al mismo individuo entre los datos
datos protegidos. protegidos y originales. En [13] los autores definen un método
Palabras clave—enlace de registros (record linkage), privacidad general de evaluación de un conjunto de datos protegido
de datos (data privacy), riesgo de divulgación (disclosure risk). basado en la combinación de diferentes medidas analı́ticas,
cuyo objetivo es evaluar el riesgo de revelación de información
I. I NTRODUCCI ÓN confidencial y la evaluación de la cantidad de información
El enlace de registros consiste en el proceso de identi- perdida en el proceso de protección.
ficación de forma rápida y precisa de dos o más registros En este artı́culo se introduce un nuevo método de evaluación
distribuidos en varias bases de datos (o fuentes de información del riesgo de revelación con el fin de mejorar la precisión de
en general) los cuales hacen referencia a la misma entidad las técnicas actualmente utilizadas. Este consiste en la utiliza-
o individuo. Esta técnica fue inicialmente introducida por ción de una media ponderada como distancia en el proceso de
Dunn [1] en el campo de la sanidad pública, con el fin de enlace de registros y un algoritmo de aprendizaje supervisado,
crear historiales médicos completos mediante el enlace de de manera que el algoritmo de aprendizaje aprenda cuales
toda la información recopilada sobre un paciente, la cual son los pesos que maximizan el número de enlaces entre el
estaba repartida por varias bases de datos. Estos enlaces fueron conjunto de datos original y el protegido.
posibles gracias a la utilización de campos clave como el La organización de este artı́culo es la siguiente. En la
nombre o la fecha de nacimiento, entre otros. En los siguientes Sección II, se presentan algunos conceptos básicos necesarios
años, esta idea fue mejorada y matemáticamente formalizada para el resto de las secciones. En la Sección III se describe el
[2], [3], [4]. Hoy en dı́a se ha convertido en una popular método de aprendizaje supervisado para el enlace de registros
técnica utilizada por agencias estadı́sticas, comunidades de cuando se utiliza la media ponderada. La evaluación del
investigación y otras instituciones, no solo para la integración método presentado se introduce en la Sección IV. Finalmente,
de bases de datos [5], [6], sino también para la limpieza de la Sección V presenta las conclusiones del trabajo realizado.
datos [7] o el control de la calidad de los datos [8]. Un claro
ejemplo de la utilización de estos métodos es para la detección II. E NLACE DE REGISTROS EN LA PRIVACIDAD DE DATOS
de registros duplicados entre diferentes conjuntos de datos [9].
Debido a la necesidad de distintas agencias gubernamentales En esta sección se presentan algunas ideas y definiciones
u otras instituciones de coleccionar y analizar grandes cantida- básicas para comprender el uso de las técnicas de enlace de
des de datos confidenciales, las técnicas de enlace de registros registros en el campo de la privacidad de datos.
fueron recientemente introducidas en el área de la privacidad PPDM y SDC están orientadas a trabajar sobre bases de
de datos. Esta área de investigación proporciona métodos de datos, principalmente tablas o ficheros (microdata). Estas
seguridad para las bases de datos estadı́sticos con el fin de bases de datos pueden verse como una matriz, X, de N
combatir la revelación de información confidencial contenida filas (registros) y n columnas (atributos), donde cada fila
282 D. Arbril, G. Navarro-Arribas, V. Torra

corresponde a un único individuo (o entidad). En este contexto a y b se define como:


se pueden diferenciar dos tipos diferentes de atributos: n
!2
X ViX (a) − ViX ViY (b) − ViY
Identificadores: son aquellos atributos que pueden iden- d(a, b)2 = −
tificar directamente un individuo, como por ejemplo el i=1
σ(ViX ) σ(ViY )
número de identificación nacional (DNI) o el número de (1)
cuenta bancaria. La distancia de Mahalanobis se define como:
Casi-identificadores: son aquellos atributos que por ellos dM D(a, b)2 = (a − b)0 Σ−1 (a − b)
mismos no son capaces de identificar un único individuo,
sin embargo, cuando dos o más de ellos son combinados, donde, Σ = [V ar(V X ) + V ar(V Y ) − 2Cov(V X , V Y ] y
pueden identificar inequı́vocamente un individuo. Estos V ar(V X ) es la varianza de los atributos V X , V ar(V Y )
atributos se pueden dividir a su vez en dos tipos, los es la varianza de los atributos V Y y Cov(V X , V Y ) es la
confidenciales (Xc ) y los no confidenciales (Xnc ), de- covarianza entre los atributos V X y V Y . Si la matriz de
pendiendo del tipo de información que representen. Un covarianza es una matriz identidad, entonces la distancia
ejemplo de atributo no confidencial serı́a el código postal, de Mahalanobis se reduce a la distancia Euclı́dea.
mientras que un ejemplo de atributo confidencial podrı́a III. A PRENDIZAJE SUPERVISADO PARA EL ENLACE DE
ser el salario. REGISTROS
Previa publicación de un conjunto de datos X, es necesaria En esta sección se presenta el método de aprendizaje
su protección mediante la aplicación de un método ρ, el cual supervisado, el cual se usa junto a una distancia ponderada,
dará lugar a un conjunto de datos protegidos Y . Estos métodos para determinar cuales son los pesos de esta distancia que ma-
de protección solo protegerán los atributos considerados como ximizan el número de re-identificaciones entre los registros del
casi-identificadores no confidenciales, Ync = ρ(Xnc ), ya que fichero original y protegido. En la Sección III-A se introduce
para asegurar la privacidad de los individuos los identifica- la distancia usada, la media ponderada, mientras que en la
dores son eliminados y/o cifrados. Los casi-identificadores Sección III-B se introduce el problema de aprendizaje como
confidenciales no son modificados ni eliminados debido a su un problema de optimización en base a la media ponderada.
interés de análisis, por lo tanto quedarán intactos. De este
III-A. Distancia ponderadas
modo, podemos ver el conjunto de datos protegido como
Y = ρ(Xnc )||Xc . Este escenario fue presentado en [13] y Es bien conocido que la multiplicación de la distancia
posteriormente utilizado en otros trabajos como [14]. Euclı́dea por una constante no altera los resultados de ningún
En el campo de la privacidad de datos, el enlace de registros algoritmo de enlace de registros. De modo que se puede
es utilizado para re-identificar individuos entre la base de datos expresar la Ecuación 1 como una media ponderada. Esta se
protegida y la base de datos original, es decir, se usa como una pude formalizar como:
medida de evaluación del riesgo de revelación. Actualmente n
!2
2
X 1 ViX (a) − V X i (a) V Y (b) − V Y i (b)
existen dos enfoques diferentes del enlace de registros para d(a, b) = − i
i=1
n σ(ViX ) σ(ViY )
la evaluación del riesgo. El enlace de registros probabilı́stico
(PRL) [16] y el enlace de registros basado en distancias La cual, si definimos para cada atributo:
(DBRL) [17]. ViX (a) − V X i (a) V Y (b) − V Y i (b)
!2
2
En el trabajo realizado en este artı́culo se utiliza el segundo di (a, b) = X
− i
σ(Vi ) σ(ViY )
tipo, el enlace de registros basado en distancias, el cual es
explicado con detalle a continuación. Esta expresión se pude redefinir como,
II-A. Enlace de registros basado en distancias d(a, b)2 = AM (d1 (a, b)2 , . . . , dn (a, b)2 ),
La idea principal del enlace de registros basado en distancias donde AM es la media aritmética
es la definición de una función de distancia. Como es sabido, X
dependiendo de la distancia utilizada se pueden obtener resul- AM (c1 , . . . , cn ) = ci /n
tados completamente diferentes. A continuación se revisan dos i
.
de las distancias más utilizadas y testeadas en la literatura del En general, cualquier operación de agregación C [18] puede
DBRL, la distancia Euclı́dea y la distancia de Mahalanobis. utilizarse: d(a, b)2 = C(d1 (a, b)2 , . . . , dn (a, b)2 ).
En este artı́culo usaremos V1X , . . . , VnX y V1Y , . . . , VnY De esta definición, es trivial la consideración de diferentes
para indicar el conjunto de atributos de los ficheros X e operadores de agregación, como por ejemplo la media ponde-
Y , respectivamente. Usando esta notación, podemos expresar rada.
los valores de cada atributo de un registro a ∈ X como Definición 1 Considerando p = P (p1 , . . . , pn ) como un
a = (V1X (a), . . . , VnX (a)) y un registro b ∈ Y como vector de pesos, es decir, pi ≥ 0 y i pi = 1. Entonces,
b = (V1Y (b), . . . , VnY (b)). Además, indicaremos la media de la distancia ponderada se define como:
los valores de un atributo ViX como ViX .
d2 W Mp (a, b) = W Mp (d1 (a, b)2 , . . . , dn (a, b)2 ),
La distancia Euclı́dea es usada para bases de datos con P
atributos estandarizados. La distancia entre dos registros donde W Mp (c1 , . . . , cn ) = i pi · ci .
Aprendizaje supervisado para el enlace de registros a través de la media ponderada 283

III-B. Aprendizaje supervisado definir el siguiente problema de optimización:


N
X
Minimize: Ki (3)
Para simplificar la formalización del proceso, se asume que i=1
cada registro (fila) bi de Y es la versión protegida de ai Subject to:
de X. Es decir, los dos conjuntos de datos están alineados. 2 2
d W Mp (ai , bj ) − d W Mp (ai , bi ) + CKi > 0, ∀i, j = 1, . . . , N, i 6= j
Entonces, dos registros están correctamente enlazados usando (4)
un operador de agregación C cuando la agregación de los Ki ∈ {0, 1} (5)
n
valores ai y bi es más pequeña que para ai y bj para todo X
=1 (6)
i 6= j. Formalmente, ai se considera correctamente enlazado i=1
pi ≥ 1 (7)
con bi cuando se satisface la siguiente ecuación para todo
i 6= j.
Como se puede observar, este es un problema de optimiza-
C(ai , bi ) < C(ai , bj ) (2) ción con una función objetivo (Ecuación (4)) y unas restriccio-
nes (Ecuación (5)) lineales. Debido al operador de agregación
usado, se han tenido que añadir un par de restricciones al
En condiciones óptimas estas desiguales las satisfacen todos problema. Las Ecuaciones (6) y (7) hacen referencia a las
los registros ai . No obstante, en general no se pude esperar restricciones introducidas por el uso de pesos de la media
que se cumpla debido a los errores introducidos en el conjunto ponderada.
de datos por el algoritmo de protección. Por lo tanto, el Teniendo en cuenta que N es el número de registros y n
proceso de aprendizaje es formalizado como un problema de el número de variables de los dos conjuntos de datos X y Y ,
optimización. se puede calcular fácilmente el número total de restricciones
La Ecuación (2) debe ser relajada de manera que la solución del problema. N 2 restricciones de la Ecuación (4), N son
pueda violar alguna de las restricciones. Esta relajación es las restricciones necesarias para la Ecuación (5), 1 restricción
formalizada creando el concepto de bloque. Un bloque es para la suma de todos los pesos, Ecuación (6), y finalmente
el conjunto de ecuaciones referentes a un registro ai , es n restricciones de la Ecuación (7). Por lo tanto el problema
decir, el conjunto de todas las distancias entre un registro tiene un total de N 2 + N + n + 1 restricciones.
original y todos los registros protegidos. Ası́, podemos asignar
IV. A N ÁLISIS EXPERIMENTAL
a cada bloque una variable Ki , teniendo tantas variables como
número de registros. Además, hemos considerado para la El método presentado en la sección anterior ha sido evalua-
formalización una constante C que multiplica Ki para superar do utilizando diferentes conjuntos de datos protegidos. Para la
las inconsistencias y satisfacer las restricciones. La idea de este protección de datos se ha utilizado la Microaggregation [5], un
enfoque es que cada variable Ki indique, por cada bloque, si método muy conocido para la protección de microdatos. Este
todas las restricciones correspondientes se satisfacen (Ki = 0) método proporciona privacidad mediante la agrupación de los
o si por el contrario, no se satisfacen (Ki = 1). Ası́, si un datos en pequeños grupos de k elementos, y posteriormente
registro ai no cumple la Ecuación (2) por algún registro bj , reemplazando los datos originales de cada agrupación por su
no importa que otro registro bk (k 6= j) también viole la correspondiente centroide. El parámetro k determina el grado
ecuación para el mismo ai . Teniendo en cuenta esta asunción, de protección aplicado: cuanto mayor es el valor de k, mayor
el objetivo del problema será minimizar el número de bloques es la protección aplicada y a su vez mayor es la información
que no cumplen sus restricciones. De este modo, podremos perdida en el proceso.
encontrar los pesos que minimizan el número de violaciones, Se han considerando los conjuntos de datos con los siguien-
o en otras palabras, los pesos que maximizan el número de tes parámetros de protección:
re-identificaciones entre los dos conjuntos de datos. M4-33: 4 atributos microaggregados en grupos de 2 con
Utilizando esta notación, tenemos que la siguiente restric- k = 3.
ción tiene que satisfacerse para todos los pares i 6= j. M4-28: 4 atributos, los primeros 2 atributos con k = 2,
y los últimos 2 con k = 8.
M4-82: 4 atributos, los primeros 2 atributos con k = 8,
C(ai , bj ) − C(ai , bi ) + CKi > 0. y los últimos 2 con k = 2.
M5-38: 5 atributos, los primeros 3 atributos con k = 3,
y los últimos 2 con k = 8.
Como Ki = {0, 1}, se pude usar C como una constante, M6-385: 6 atributos, los primeros 2 atributos con k = 3,
la cual expresa la mı́nima distancia requerida entre el enlace los siguientes 2 atributos con k = 8, y los últimos 2 con
correcto y el resto. Cuanto más grande es el valor, más enlaces k = 5.
correctos se distinguen de los incorrectos. M6-853: 6 atributos, los primeros 2 atributos con k = 8,
Utilizando estas restricciones anteriores y el operador de los siguientes 2 atributos con k = 5, y los últimos 2 con
agregación presentado en la Definición 1, d2 W Mp , se puede k = 3.
284 D. Arbril, G. Navarro-Arribas, V. Torra

Para cada uno de los conjuntos de datos se han prote- R EFERENCIAS


gido 400 registros aleatoriamente extraı́dos del censo [19] [1] Dunn, H.L. (1946). Record Linkage. American Journal of Public Health
del proyecto European CASC [20], el cual contiene 1080 36 (12), pp. 1412–1416.
registros y 13 atributos, y ha sido extensamente usado en [2] Newcombe, H. B., J. M. Kennedy, S. J. Axford, and A. P. James (1959)
Automatic Linkage of Vital Records, Science, 130, pp. 954–959.
otras investigaciones como [21], [22], [23]. Los grados de [3] Newcombe, H. B., J. M. Kennedy (1962). Record linkage: making
protección, k, aplicados, varı́an entre la mı́nima protección maximum use of the discriminating power of identifying information.
posible, k = 2 y un buen grado de protección, k = 8, Commun. ACM 5, 11, pp. 563-566.
[4] Fellegi, I., Sunter, A., (1969). A Theory for Record Linkage. Journal of
según [13]. the American Statistical Association 64 (328), pp. 1183¿ –1210.
[5] Defays, D., Nanopoulos, P. (1993) Panels of enterprises and confiden-
d2 AM d2 M D d2 W M tiality: The small aggregates method, Proc. of the 1992 Symposium on
M4-33 0,84 0,94 0,955 Design and Analysis of Longitudinal Surveys, Statistics Canada, pp.
M4-28 0,685 0,9 0,93 195–204.
M4-82 0,71 0,9275 0,9425 [6] Statistics Canada. (2010). Record linkage at Statistics Canada. http://
M5-38 0,3975 0,8825 0,905 http://www.statcan.gc.ca/record-enregistrement/index-eng.htm
M6-385 0,78 0,985 0,9925
[7] Winkler, W. E. (2003) Data cleaning methods, Ninth ACM SIGKDD
M6-853 0,8475 0,98 0,9875
International Conference on Knowledge Discovery and Data Mining.
Tabla I [8] Batini, C., Scannapieco, M. (2006) Data Quality - Concepts, Methodo-
R ESULTADOS EN EL ENLACE DE REGISTROS BASADO EN DISTANCIAS . logies and Techniques Series: Data-Centric Systems and Applications.
[9] Elmagarmid, A., Panagiotis G., Verykios, V., ( 2007). Duplicate Re-
cord Detection: A Survey. IEEE Transactions on Knowledge and Data
Engineering 19 (1), pp. 1–16.
En la Tabla I se muestran los resultados de aplicar los [10] Agrawal, R., Srikant, R. (2000) Privacy-preserving data mining. ACM
métodos estándar de enlace de registros basado en distancias, Sigmod Record, vol. 29, issue 2, pp. 439-450.
[11] Willenborg, L., De Waal, T. (2001) Elements of Statistical Disclosure
d2 AM y d2 M D, y el nuevo método supervisado basado en la Control. Springer Verlag.
media ponderada, d2 W M , presentado en la Sección III. Los [12] Spruill, N.L., (1982) Measures of confidentiality. Proc. Survey Research
valores de dicha tabla son el ratio de registros correctamente Section American Statistical Association, pp. 260–265.
[13] Domingo-Ferrer, J., Torra, V., (2001) A quantitative comparison of
re-identificados, de modo que 1 significa que el 100 % de las disclosure control methods for microdata, pp. 111–133 of [15].
re-identificaciones fueron correctas. [14] Winkler, W.E, (2004) Re-identification methods for masked microdata,
Como se puede apreciar, el método presentado obtiene Privacy in Statistical Databases 2004, Lecture Notes in Computer
Science 3050, pp. 216–230.
un incremento relevante en el número de re-identificaciones [15] Doyle, P., Lane, J., Theeuwes, J., Zayatz, L. (editors) (2001) Confiden-
cuando es comparado con los métodos estándar actualmente tiality, disclosure, and data access: theory and practical applications for
utilizados. Este incremento es especialmente importante al statistical agencies, Elsevier Science.
[16] Jaro, M. A. (1989) Advances in Record Linkage Methodology as
comparar d2 W M con la distancia Euclı́dea, en el cual vemos Applied to Matching the 1985 Census of Tampa, Florida. Journal of
un incremento de hasta un 50 % para el conjunto M5-38. the American Statistical Society, 84:406, pp. 414–420.
[17] Pagliuca, D., Seri, G., (1999), Some results of individual ranking method
V. C ONCLUSI ÓN on the system of enterprise accounts annual survey, Esprit SDC Project,
Delivrable MI-3/D2.
En este artı́culo se ha introducido una variante de enlace [18] Torra, V., Narukawa, Y., (2007) Modeling decisions: information fusion
and aggregation operators, Springer.
de registros basado en distancias. Nuestra propuesta utiliza un [19] U.S. Census Bureau. Data Extraction System, 2011, http://www.census.
algoritmo de aprendizaje supervisado el cual gracias a una gov/.
media ponderada permite determinar los pesos de esta que [20] Brand, R., Domingo-Ferrer, J., Mateo-Sanz, J.M., (2002) Reference
datasets to test and compare SDC methods for protection of numerical
maximizan el número de re-identificaciones entre el fichero microdata. Technical report, European Project IST-2000-25069 CASC.
original y el protegido. De este modo, se han mejorado los [21] Laszlo, M., Mukherjee, S., (2005) Minimum spanning tree partitioning
sistemas estándar de evaluación del riesgo de un fichero algorithm for microaggregation. IEEE Transactions on Knowledge and
Data Engineering 17(7), pp. 902–911.
protegido. [22] Domingo-Ferrer, J., Torra, V., (2005) Ordinal, Continuous and Hete-
Este y otros trabajos en la misma lı́nea de investigación, el rogeneous k-Anonymity Through Microaggregation, Data Mining and
enlace de registros basado en distancias, se pueden encontrar Knowledge Discovery 11(2), pp. 195–212.
[23] Yancey, W., Winkler, W.E., Creecy, R., (2002) Disclosure risk as-
en los siguientes artı́culos [24], [25]. sessment in perturbative microdata protection. In Inference Control in
Statistical Databases, Lecture Notes in Computer Science 2316, pp. 135–
AGRADECIMIENTOS 152.
[24] Abril, D., Navarro-Arribas, G., Torra, V., (2012). Improving record linka-
Esta investigación está parcialmente financiada por el ge with supervised learning for disclosure risk assessment. Information
MICINN (proyectos ARES-CONSOLIDER INGENIO 2010 Fusion, 13(4), 274–284.
CSD2007-00004, TIN2010-15764 y TIN2011-27076-C03-03) [25] Abril, D., Navarro-Arribas, G., Torra, V., (2012). Choquet integral for
record linkage. Annals of Operations Research, 195(1), 97–110.
y por by the EC (FP7/2007-2013) Data without Boundaries
(número de subvención 262608). Algunos de los resultados
presentados en este artı́culo han sido obtenidos gracias al
Centro de Supercomputación de Galicia (CESGA). El trabajo
contribuido por el primer autor ha sido parte de un programa
de doctorado en Informática de la Universidad Autónoma de
Barcelona (UAB).
RECSI 2014, Alicante, 2-5 septiembre 2014

Gestión de identidades digitales basada en el


paradigma de la reducción de tiempo de exposición
Jose Marı́a Alonso Antonio Guzmán Alfonso Muñoz
Telefonica Digital Identity - Privacy Telefonica Digital Identity - Privacy Telefonica Digital Identity - Privacy
Security researcher Security researcher Security researcher
Email: chema@11paths.com Email: antonio.guzman@11paths.com Email: alfonso.munoz@11paths.com

Resumen—La presente investigación analiza la problemática contraseña en más de un servicio la fortaleza de las medidas de
actual de la gestión de identidades digitales centrada en tres seguridad de estos no tendrá ningún valor. Este uso indebido
pilares fundamentales: la seguridad de la solución, su usabilidad y de las contraseñas es tan solo una de las razones por las que
el coste de su implementación. En este artı́culo se profundiza en la
posibilidad de utilizar el paradigma de la reducción de tiempo de las cifras que modelan el robo de identidad no dejan de crecer
exposición para garantizar una mejor aproximación a la gestión [5].
de identidades, dando lugar a una gestión robusta, usable y de Este robo de identidades es uno de los problemas más
menor coste que soluciones previas. La argumentación teórica importantes según el informe[6]. Es un problema que pone
se justifica con el desarrollo de la infraestructura de gestión manifiesto la ineficacia de las soluciones propuestas para
de identidades Latch, analizando datos reales en escenarios de
comunicación comunes en Internet proteger la forma en la que los usuarios acceden a los
Palabras clave—gestión de identidades, tiempo de exposición, servicios. Aunque el robo de identidades puede localizarse en
Latch diferentes puntos de los sistemas informáticos o estar debido
a equivocadas actitudes de los usuarios, es en los mecanismos
I. I NTRODUCCI ÓN de autenticación y de autorización donde esta amenaza se
convierte en un ataque al permitir que un usuario ilegı́timo
Cada individuo que accede al mundo digital acumula múlti-
tenga acceso a recursos sólo accesibles a los usuarios legı́ti-
ples identidades digitales, cada una correspondiente con la
mos. Aunque existen multitud de mecanismos para resolver
forma en la que se decide interactuar con los diferentes
estos procesos de autenticación y autorización todos ellos
servicios. El número de identidades cuya suma converge en
apuestan por aumentar la complejidad de la contraseña para
una única identidad fı́sica se incrementa constantemente, a
impedir su suposición o robo [7][8] y algunos apuestan por
pesar de los esfuerzos invertidos en el desarrollo y adopción
minimizar la probabilidad de que una contraseña se reutilice
de esquemas de federación que permiten delegar los procesos
para varios servicios[8]. En [9] se propone un criterio de
de autenticación y autorización en terceros de confianza [1]
evaluación que permite comparar unas soluciones frente a
[2] [3]. Algunas de las explicaciones que hay detrás de este
otras. Este criterio propone tres aspectos a evaluar que a su
comportamiento son:
vez queda descompuesto en diversas métricas: la seguridad
La desconfianza en los propietarios de los servicios que ofrece una solución determinada, la usabilidad y el coste
digitales que usan los usuarios. de su implementación. En la aplicación de este criterio no
Ver en la generación de identidades digitales la posibili- es posible encontrar ninguna solución que maximice los tres
dad de ganar en anonimato. aspectos de su definición simultáneamente.
Definición de contenedores que permitan parcelar di- El NIST estadounidense propone la siguiente relación de
ferentes regiones de nuestras vidas digitales (trabajo, amenazas definidas sobre los sistemas autenticación y, por
amigos, familia, etc.). extensión, sobre los sistemas de autorización [10].
Evaluación de la tecnologı́a.
En la práctica, si no se es muy escrupuloso en la forma en la Online Guessing.
que se utilizan estas identidades, aparecerán relaciones entre Phising.
todas ellas. De hecho, lamentablemente, es una realidad que Pharming.
una mayorı́a de usuarios repiten las contraseñas en más de un Eavesdropping.
servicio [4]. Esto plantea un escenario en el que, si el usuario Replay.
ha elegido una contraseña que sea deducible, podrá compro- Session hijack.
meter la seguridad de todas las identidades que confı́en en Man-in-the-middle (MitM).
un esquema login-password. Incluso si la contraseña que el Denial of Service.
usuario ha elegido es una contraseña fuerte, si esta contraseña Malicious code (Man-in-the-device (MitD) or Man-in-
se usa en un sistema de seguridad débil, podrá ser capturada the-Browser (MitB))
por un atacante. De nuevo si el usuario ha utilizado la misma
286 J. Alonso, A. Guzmán, A. Muñoz

Aquellas soluciones que más seguridad ofrecen como son La ecuación 2 refleja el odd ratio (OR) que mide la
los mecanismos de autenticación y autorización basados en probabilidad condicionada en el comportamiento de dos gru-
el uso de token hardware [10] proponen soluciones de se- pos, que en esta argumentación están formados por aquellos
guridad frente a todas las amenazas listadas anteriormente. ataques en los que no hay lı́mite en el tiempo en el que
Sin embargo, adolecen de una baja usabilidad y su coste los objetivos del ataque son accesibles y los ataques que si
de implementación es muy alto. En este artı́culo se propone encuentran restricciones en la exposición de estos servicios.
una solución de seguridad que propone un nivel de seguridad Si se considera que OR>1 entonces se puede concluir que
comparable a estos token hardware pero sin menoscabar su existe una mayor probabilidad de éxito de ataque si existe
usabilidad y simplificando la complejidad de su adopción por un sistema expuesto continuamente. A partir de este punto,
los proveedores de los servicios. puede deducirse el porcentaje de riesgo atribuible (attributable
risk percentage, ARP) a la reducción de la exposición de
II. PARADIGMA DE LA REDUCCI ÓN DEL TIEMPO DE
los sistemas, ecuación 3, que indica qué porción de ataques
EXPOSICI ÓN
exitosos podrı́an ser evitados (independientemente del sistema
La mayorı́a de los modelos de seguridad en los que se basan de autorización que utilice un proveedor de servicios) si se
las soluciones existentes realizan una serie de asunciones para minimizara la exposición en relación con todos los casos.
determinar cuál es el escenario en el que se propone su
utilización. Es frecuente encontrar asunciones que consideran RR − 1
ARP = (3)
que los atacantes dispondrán de recursos infinitos para la RR
implementación de sus ataques. Estos recursos son los medios Esta expresión 3 permite estimar, conocido RR, si la in-
materiales y el tiempo de los que podrán disponer para versión requerida para habilitar estos procesos encaminados
vulnerar las medidas de seguridad. En base a esta asunción a reducir el tiempo de exposición es aceptable o no, en
es posible hacer una estimación relativa a qué amenazas comparación con el riesgo a sufrir un ataque y el daño que este
se pretende hacer frente cuando se propone una medida de ataque puede producir (ARP). La experiencia profesional y el
seguridad. conocimiento técnico de las técnicas de ataque a los sistemas
La idea principal de este trabajo se centra en proponer una protegidos por la reducción de su exposición, confirman la
propuesta que complemente a los sistemas de autorización asunción inicial de que el riesgo relativo es mayor que
y autenticación actuales, por tanto el cambio pudiera ser 1. Las ecuaciones anteriores reflejan claramente la utilidad
inmediato y no abrupto, centrándose en el paradigma de la de incorporar estos principios a los sistemas de autentica-
reducción del tiempo de exposición. Si se limita los recursos ción/autorización actuales. No obstante todavı́a quedan una
que un atacante puede aplicar para vulnerar las medidas de serie de preguntas en el aire que no es posible resolver sin
seguridad (autenticación y autorización) se deberı́a minimizar experimentación:
el robo de identidades. El tiempo de exposición que un sistema 1. Cómo de costoso/complejo serı́a implantar este concepto
de autorización y autenticación está expuesto a un atacante, en sistemas de autorización actuales. Entendiendo que
cuando un usuario legı́timo no tiene intención de autenticarse, el sistema, como tal, no se modifica si no que se
es crı́tico. Analı́ticamente esta propuesta puede razonarse de le proporciona una capa extra que gestione esta
la siguiente forma: caracterı́stica.
Si se define la relación entre el éxito (o fracaso) de un
ataque a un sistema de autenticación y el tiempo en que 2. Usabilidad. Por definición un sistema de autenticación
este sistema está accesible (tiempo de exposición) como una es un entorno incómodo para un usuario, es algo que se
probabilidad condicionada p(Successf ulAttack—exposed) interpone entre él y los servicios que desea consumir lo
es posible cuantificar el riesgo relativo RR como 1: más rápido y fácil posible. ¿Supone algún inconveniente
p(Successf ulAttack|exposed) esta capa extra de seguridad?
RR = >1 (1)
p(Successf ulAttack|unexposed)
3. Mitigación/utilidad. Por desgracia, no es sencillo estimar
Es decir, asumimos que existe una relación directa entre de manera especı́fica y pormenorizada el impacto de
la probabilidad de éxito de un ataque sobre un sistema y este tipo de mecanismos en el fraude y vulneración de
la exposición de este sistema. Nuestra intuición nos lleva a mecanismos de protección actual en Internet. Existen
plantear la hipótesis de que esta probabilidad será menor si multitud de informes globales (medidas reales pero
existe una reducción en esta exposición que si no se adopta agregadas) pero es difı́cil conocer valores reales para
ninguna medida que reduzca dicha exposición. Si, intuitiva- evaluar si un mecanismo de seguridad concreto mejora
mente, podemos considerar esta hipótesis como válida, del o no la situación actual en la protección de identidades
razonamiento anterior se puede deducir la siguiente expresión digitales.
2:
p(Successf ulAttack|exposed) En los siguientes apartados, mediante experimentación, se
p(F ailedAttack|exposed)
OR = >1 (2) podrá obtener algunas medidas reales de la utilización de este
p(Successf ulAttack|unexposed)
p(F ailedAttack|unexposed) paradigma en escenarios reales y estimar con mayor precisión
Gestión de identidades digitales basada en el paradigma de la reducción de tiempo de exposición 287

su utilidad si fuera adoptada en el mercado. 2. Latch no interfiere en la forma en que un sistema


de autenticación/autorización toma sus decisiones, por
tanto el sistema podrı́a obviar esta información. No
III. P ESTILLOS DIGITALES . M INIMIZAR EL TIEMPO DE
parece razonable que si implementa esta capa ignore
EXPOSICI ÓN CON L ATCH
el pestillo definido, no obstante se habilita esta carac-
La aplicación del paradigma de la reducción de tiempo de terı́stica para que si existiera algún problema a la hora
exposición a sistema de autenticación en escenarios reales se de recibir la información del pestillo (por ejemplo en un
podrı́a aplicar de diferentes formas. Nuestra propuesta se cen- entorno de tiempo real limitado a una respuesta antes
tra en la utilización del concepto de pestillos (latch, en inglés) de 2 milisegundos) pudiera decidir qué hacer con la
digitales, este concepto, como se verá posteriormente, intro- autorización concreta de un usuario, permitir acceso o
duce una serie de ventajas notorias en términos de seguridad, no. Tal es la flexibilidad que actualmente ya existen
anonimato, usabilidad y transparencia. El concepto de pestillo proveedores de cierta relevancia que utilizan Latch:
digital es sencillo de entender con un sı́mil cotidiano. Cuando Telefónica, Movistar, Acens, Tuenti, Grupo Cortefiel,
una familia está en su casa además de cerrar la cerradura Cajamar, Universidad de la Rioja o la Universidad de
utilizando sus llaves podrı́a instalar un cerrojo/pestillo que Salamanca.
podrı́a utilizar para proporcionar mayor seguridad a su puerta. 3. La gestión de los pestillos digitales se traslada a una
Las ventajas que introduce esto son las siguientes: aplicación móvil (disponible para android, iphone, win-
1. La seguridad no depende de las llaves que tenga la dows mobile y firefox os) [12]. Acercando el control de
familia y que un atacante podrı́a haber duplicado o la identidades digitales al usuario. El usuario mediante la
robado una copia. aplicación movil podrá vincular uno o más pestillos con
2. El pestillo es una capa extra. El usuario decide cuándo la autenticación de servicios/operaciones concretas de un
está activo o no (tiempo de exposición) no interfiriendo proveedor. Por tanto, el usuario solo tendrá que hacer
en la forma en la que se implementa la seguridad por ON/OFF en sus pestillos y el proveedor de servicios
parte de un fabricante de sistemas de autenticación (en solo necesitará consultar el estado de los mismos antes
nuestro caso, la puerta o la seguridad de la cerradura de de proceder a la autenticación.
la misma). Como se verá posteriormente el proveedor
de servicios podrı́a considerar o no este pestillo, esto
da garantı́a absoluta de que un gestor de un sistema de
autenticación tiene el control del sistema independien-
temente del estado del pestillo digital.
3. El sistema es muy sencillo. En su generalización a
servicios digitales facilitarı́a homogenizar la seguridad
de diferentes cuentas digitales (identidades) con uno
o pocos pestillos digitales. Esto ofrece un nivel de
seguridad comparable al nivel 4 definido por el NIST
[10].
El concepto de pestillo digital se ha llevado a la práctica
en el desarrollo de la arquitectura Latch. En esencia, la
arquitectura propuesta tiene dos fases: el pareado de cuentas
y el modo de operación. El pareado de cuentas (1) supone
vincular, sin que ello suponga niguna pérdida de privacidad
por parte del usuario, una cuenta de un proveedor de servicios
con una cuenta de un usuario de Latch. Información detallada
puede encontrarse en [11], esta arquitectura puede resumirse
de la siguiente forma:
1. El proveedor de servicios que utiliza un sistema de
autenticación determinado podrá disponer de una capa
extra (pestillo digital). Esta información la recibirá por
un canal especı́fico con las protecciones adecuadas (con-
fidencialidad, integridad y autenticidad). Para facilitar la Figura 1: Proceso de pareado de cuentas con Latch
integración de Latch con la arquitectura del proveedor de
servicios se proporcionan SDKs en diferentes lenguajes Una vez que se ha completado el proceso de pareado de
(.net, ruby, .c, python, php, java, dotnetnuke) ası́ como cuentas, el usuario está en disposición de poder determinar
múltiples plugins (drupal6, drupal7, joomla, prestashop, cuál es el nivel de exposición de los servicios y operaciones
redmine, wordpress, openvpn, ssh, roundcube, squirrel- proporcionadas por el proveedor con quien ha contratado los
Mail) [11]. servicios (figura 2). Cuando un usuario solicita alguna de estas
288 J. Alonso, A. Guzmán, A. Muñoz

operaciones (e.g. el login en el servicio), el proveedor, que IV. E JEMPLOS DE USO


habrá integrado en la lógica de sus sistemas las llamadas IV-A. Ejemplos de uso en un CMS (CONTENT MANAGE-
básicas que aseguran la lógica de la interacción con Latch, MENT SYSTEM)
solicitará el estado en el que el usuario en cuestión habı́a
decido que, en ese instante, se encontrara la operación. El En la actualidad la plataforma Latch tiene 4 meses de vida
servidor de Latch recuperará el estado de esta operación y y aunque es un perı́odo corto ya cuenta con más de 600
se la devolverá al proveedor. Si el estado de esta operación integradores (proveedores de servicios) y miles de usuarios
fuera bloqueado, el proveedor podrı́a deducir que está ante un registrados. En la situación actual es posible estudiar una serie
intento fraudulento de acceso y actuar en consecuencia. de comportamientos relacionados con el uso de los sistemas
de autenticación. En esta investigación se centra el foco en
Con todas estas caracterı́sticas queda claro que es posible el servicio en producción que más usuarios tiene actualmente
diseñar una solución basada en el paradigma de la reducción Latch. Estamos hablando en concreto del Content Management
del tiempo de exposición, enmascarando la complejidad de System Joomla [13]. Joomla es un Sistema de gestión de
la plataforma, simplificando su uso y minimizando el cos- contenidos que permite desarrollar sitios web dinámicos e
te/tiempo tanto a usuarios como a proveedores. Del mismo interactivos. Permite crear, modificar o eliminar contenido
modo son notorios aspectos de flexibilidad de la propuesta. de un sitio web de manera sencilla a través de un panel
Algunos de ellos son: de administración. Latch protege las cuentas de usuarios en
1. Configuración de polı́ticas de gestión de identidades ba- su autenticación (independientemente su rol). Joomla tiene
sadas en múltiples parámetros: tiempo, geolocalización, pareados 24797 usuarios, lo cual es una cantidad razonable
etc. para extraer alguna conclusión real sobre el uso del paradigma
2. Delegación del acceso a sus cuentas a otros usuarios. de reducción de tiempo de exposición en usuarios reales.
Por ejemplo, serı́a útil para control parental. En primer lugar puede observarse como en el 22 % de las
3. Monitorización por parte del usuario de accesos basado solicitudes han intentado accesos ilegı́timos (con credenciales
en robo de identidad. Permite tomar contramedidas válidas). Este acceso ha sido bloqueado dado que el bloqueo
frente al posible robo de claves de acceso. estaba activo, el usuario legı́timo fue notificado de dicha
4. One-time use. Los servicios pueden configurarse para circunstancia. Del mismo modo se detecta que el 69 % de
que se habiliten cuando el usuario se autentica pero los usuarios han configurado alguna opción de autobloqueo
inmediatamente después no permita autenticarse de nue- (temporizador para cerrar cerrojo si abierto), ası́ como existe
vo por un atacante que tuviera las claves. Esto lleva un número menor de usuarios, un 17 % que desea aprovechar
al extremo la protección basada en mı́nimo riesgo de caracterı́sticas extras de Latch y utilizarlo como un canal de
exposición. segundo factor (OTP). Cada vez que alguien se autentique en
la web y el cerrojo está abierto se solicitará introducir una
clave de un solo uso enviado al móvil del usuario original.

Figura 2: Arquitectura propuesta para garantizar la reducción


del tiempo de exposición
Figura 3: Panel de control simplificado de Latch

En este punto, se puede observar que mediante el diseño y


desarrollo de la arquitectura Latch es viable aplicar el paradig- IV-B. Ejemplo y tendencias en protección frente a fraude
ma de reducción de tiempo de exposición a entornos reales con bancario
sistemas de autenticación variados. Demostrando como estas Es difı́cil cuantificar el efecto de aplicar una medida de
propuestas pueden adaptarse rápidamente a servicios actuales. seguridad como es Latch. Aunque si bien es cierto que permite
Para concluir nuestra investigación, cubierto ya la inves- devolver al usuario la sensación de control sobre su vida
tigación analı́tica y el entorno de experimentación, presenta digital, es complicado trasladar esta sensación a una métrica
interés analizar datos reales de cientos de usuarios, a modo cuantitativa. Por otro lado, aunque su aplicación sı́ ofrecerı́a
de ejemplo, en un CMS (Content Management System) real, resultados medibles desde la perspectiva de los integradores
ası́ como analizar tendencias en el uso de nuevos mecanismos de esta tecnologı́a, por ejemplo, en términos de prevención
de seguridad basados en el paradigma que implementa Latch. del fraude, las polı́ticas de privacidad de las compañı́as, que
Gestión de identidades digitales basada en el paradigma de la reducción de tiempo de exposición 289

Tabla I: Impacto de Latch en las pérdidas por fraude CNP


Q4 - 2013 Q1 - 2014 Q2 - 2014 Q3 - 2014 Q4 - 2014 Q1 - 2015 Q2 - 2015 Q3 - 2015 Q4 - 2015
A 0,00012 0,05087 0,1016 0,1524 0,2031 0,2539 0,3046 0,3554 0,4061
B 47779 20804529 41561279 62318029 83074779 103831529 124588279 145345029 166101779
C 2,29·108 9,99·1010 1,99·1011 2,99·1011 3,99·1011 4,98·1011 5,98·1011 6,98·1011 7,97·1011
D 2,9347·10−2 2,8500·10−2 2,7653·10−2 2,6806·10−2 2,5960·10−2 2,5113·10−2 2,4266·10−2 2,3419·10−2 2,2572·10−2
E 6,73·104 2,85·107 5,52·107 8,02·107 1,04·108 1,25·108 1,45·108 1,63·108 1,80·108
F 43,02 42,60 42,40,48 34,18 43,77 47,55 43,06 47,71 49,32
G 2,90·104 1,21·107 2,34·107 2,74·107 4,53·107 5,95·107 6,25·107 7,79·107 8,88·107

apuestan por el uso de Latch, hacen imposible la publicación usuarios esperados de Latch. Además, en esta adopción, se
de esta información. Por ello, y para finalizar este artı́culo, han considerado una serie de perturbaciones para modelar las
se presenta una simulación que pretende estimar a cuánto fluctuaciones debidas a condicionantes externos (noticias, etc)
podrı́a ascender la cantidad prevenida de ser defraudada en sobre los gustos de los usuarios. Ası́, a partir de los usuarios
caso de que se apostara por Latch como medida de protección registrados durante el primer cuarto del año 2014 (50000
de uno de los tipos de fraude que más impacto ha tenido usuarios de Latch), es posible estimar cuál será el número
en los últimos tiempos. En [14] se justifica una tendencia de usuarios de Latch durante un año. En la fila C se establece
descendente en la cantidad defraudada por el uso fraudulento la cantidad movida por usuarios de Latch usando sus tarjetas.
de tarjetas de crédito. A pesar de ello la cantidad absoluta A partir de este valor, y usando los datos de los informes
perdida debido a esta lacra en 2013 ha sido próxima 1030 mencionados, es posible determinar la evolución del fraude en
millones de euros. Esta cantidad se divide en tres tipos de relación con el aumento de transferencias (fila D) y la cantidad
fraude que tienen que ver con estas tarjetas: fraude relacionado defraudada por fraude de tarjetas por usuarios de Latch (fila
con los procesos en los que no es posible la comprobación E). A partir de esta información ha sido posible estimar cuál
de que efectivamente se está en posesión de la tarjeta (Card será la evolución del fraude CNP (fila F) y, por último, el
Not Present (CNP)) (e.g. procesos de compra por Internet), ahorro esperado por el uso de Latch en la fila G.
fraude derivado de su utilización en terminales punto de venta
(Point Of Sale (POS)) sin supervisión y derivado de su uso V. C ONCLUSIONES
en cajeros automáticos (Automatic Teller Machine (ATM)). La presente investigación pone de relieve la problemática
Para este estudio concreto, se propone el uso de Latch como actual de la gestión de identidades digitales en Internet. Aun-
medida mitigadora del fraude CNP. Se trata de un escenario en que muchas propuestas se han realizado, entre ellas esfuerzos
el que la necesidad de comprobar que quién está solicitando notorios en esquemas de federación de identidades, hoy dı́a no
una operación es quien dice ser, hoy por hoy, no se ha existe una propuesta definitiva que sin irrumpir bruscamente
resuelto eficientemente. Con Latch, y gracias al canal extra en cambios a los sistemas de autenticación actuales (y en
de seguridad que facilita, es posible, a dı́a de hoy, demostrar funcionamiento) proporcione cierta seguridad extra, sea usable
que quién está solicitando la operación, al menos, conoce las y el coste de implementación sea asumible (debe pensarse que
credenciales de acceso a Latch. en el peor de lo casos se compite con un sistema ampliamente
difundido y de bajo coste como es el par usuario-contraseña).
Para poder estimar en qué medida la implantación de Latch
Nuestra propuesta introduce de manera innovadora el con-
puede suponer un beneficio para, en este caso, las entidades
cepto de pestillo digital y lleva a la práctica en una plataforma
bancarias que emitan tarjetas para sus clientes es necesario
real, Latch, que aunque con pocos meses de vida está siendo
modelar la adopción de una nueva tecnologı́a. Para esta labor
utilizada por miles de usuarios. Se analizan datos reales
se han utilizado las métricas propuestas por la International
en un escenario de ejemplo y se compara con diferentes
Telecommunication Union [15] para estimar la evolución en la
estudios globales con el fin de demostrar la viabilidad de
madurez tecnológica de distintas regiones. Esta madurez mide
aplicar el concepto de reducción del tiempo de exposición a
diferentes aspectos de las sociedades tecnológicas, entre los
la protección de las identidades digitales.
cuáles están el acceso a las nuevas tecnologı́as y la formación
en su uso adecuado. Se ha trasladado la tendencia definida R EFERENCIAS
en el informe [16] a la forma en que podrı́a comportarse
[1] Shibboleth, https://shibboleth.net/
el número de usuarios de Latch en los paı́ses de Europa [2] openID Foundation, http://openid.net/
occidental y se han fijado las condiciones iniciales en el [3] M. Urueña, A. Muñoz, D. Larrabeiti, “Analysis of privacy vulnerabilities
número de usuarios que existen ya para Latch en el primer in single sign-on mechanisms for multimedia websites”. Multimedia
Tools and Applications 2014, Volume 68, Issue 1, pp 159-176. Doi:
cuarto de 2014 y el porcentaje de la población de Europa 10.1007/s11042-012-1155-4.
Occidental (409000000 habitantes) que posee un smartphone [4] SsplashData, “The 2013 list of worst passwords”, http://splashdata.com/
(56 %). En la fila A de la tabla I, se indica cuál es el press/worstpasswords2013.htm
[5] Visa, “Visa Europe 2013 Annual Report Enabling new commerce and
porcentaje de adopción esperado de Latch a lo largo del año delivering growth”, http://annualreport.visaeurope.com/downloads/visa
2014. En la fila B se traduce este porcentaje al número de ar2013 complete.pdf
290 J. Alonso, A. Guzmán, A. Muñoz

[6] D. Charoen, “Password Security”. International Journal of Security


(IJS), Volume (8): Issue (1):2014
[7] M. Raza, M. Iqbal, M. Sharif, W. Haider, “A Survey of Password Attacks
and Comparative Analysis on Methods for Secure Authentication”.
World Applied Sciences Journal 19 (4): 439-444, 2012. ISSN 1818-
4952; DOI: 10.5829/idosi.wasj.2012.19.04.1837
[8] S. Komanduri, R. Shay, P. Gage, ;. Mazurek, L. Bauer, N. Christin,
L. Cranor, S. Egelman, “Of Passwords and People: Measuring the
Effect of Password-Composition Policies”. CHI 2011, May 7-12, 2011,
Vancouver, BC, Canada
[9] J. Bonneau, C. Herley, P. Oorshot, F. Stajano, “The quest to replace
passwords: A framework for comparative evaluation of web authentica-
tion schemes”. In Security and Privacy (SP), 2012 IEEE Symposium on
(pp. 553-567). IEEE.
[10] W. Burr, D. Dodson, E. Netwon, R. Perlner, W. Timothy, S. Gupta, E.
Nabbus, “NIST Special Publication 800-63-1. Electronic Authentication
Guideline”, December 2011. http://csrc.nist.gov/publications/nistpubs/
800-63-1/SP-800-63-1.pdf
[11] Latch, “Tu interruptor de seguridad digital”. https://latch.elevenpaths.
com/www/index.html
[12] ElevenPaths, “Latch. Añade un nivel adicional de protección a tus
servicios digitales”. http://goo.gl/ksXfm7
[13] Joomla, “Content Management System”, http://www.joomla.org/
[14] European central bank, “Second Report on card fraud”, july 2013. https:
//www.ecb.europa.eu/pub/pdf/other/cardfraudreport201307en.pdf
[15] International Telecommunication Union, http://www.itu.int/
[16] Measuring the information Society 2012, http://goo.gl/iW1yWt
RECSI 2014, Alicante, 2-5 septiembre 2014

Sistema P2P de protección de la privacidad en


motores de búsqueda basado en perfiles de usuario
Cristina Romero-Tris, Alexandre Viejo, Jordi Castellà-Roca, Youssef Benkaryouh

Universitat Rovira i Virgili, UNESCO Chair in Data Privacy


Departament d’Enginyeria Informàtica i Matemàtiques
Av. Paı̈sos Catalans 26, E-43007 Tarragona, Spain
Email: {cristina.romero, alexandre.viejo, jordi.castella}@urv.cat
youssef.benkaryouh@estudiants.urv.cat

Resumen—Los motores de búsqueda en Internet (como por El historial de consultas puede contener información personal
ejemplo Google, Bing, Yahoo, AOL, etc.) almacenan en sus servi- que permita identificar de forma única a un usuario. Por
dores las consultas efectuadas por los usuarios. Esta información ejemplo, un usuario que busca su nombre completo, su número
les permite crear perfiles, y ası́ mejorar el servicio ofrecido
(resultados personalizados, sugerencias, correcciones, etc.). Sin de seguridad social, su residencia, ocupación, etc. Además
embargo, estos perfiles pueden también comprometer el derecho las consultas pueden contener información sensible como
a la privacidad de los usuarios. La información que contienen problemas de salud, la orientación sexual, polı́tica, religión,
puede servir para identificar a un usuario y ası́ relacionar su etc.
identidad con consultas personales y confidenciales. Por esta El almacenamiento en servidores remotos de esta informa-
razón, es necesario aplicar alguna medida de control que proteja
la privacidad de los usuarios de motores de búsqueda. Este ción puede suponer un riesgo, y por lo tanto necesita ser
artı́culo presenta un entorno P2P diseñado para permitir que protegida. Sin embargo, el escándalo de AOL [1] demostró que
los usuarios se agrupen en diferentes categorı́as en función los usuarios no pueden confiar en la protección ofrecida por los
de su perfil y puedan ejecutar un protocolo para proteger su motores de búsqueda. En este caso, se publicaron 20 millones
privacidad. de consultas realizadas por 658.000 usuarios. Algunos de ellos
Palabras clave—Motor de búsqueda (Web Search Engine), Per-
fil de usuario (User Profile), Privacidad (Privacy), Recuperación fueron identificados, y su identidad pudo ser relacionada con
privada de la información (Private information retrieval), Servicios las consultas que habı́an realizado, quedando ası́ su privacidad
personalizados (Customized Services), Sistema P2P (P2P System) expuesta.
Los motivos anteriores ponen de manifiesto un compromiso
entre la privacidad y la calidad del servicio recibido. Por un
I. I NTRODUCCI ÓN lado, los usuarios necesitan tomar alguna medida para proteger
Los motores de búsqueda en Internet (en inglés, Web Search su privacidad. Por otro lado, los usuarios pueden ser reticentes
Engines - WSEs) son una herramienta básica para encontrar a utilizar un sistema que les proporcione privacidad pero cuya
contenidos y páginas en Internet. Los motores de búsqueda respuesta sea lenta, o los resultados que les interesen no
almacenan información de las páginas Web, la indexan y estén en las primera páginas. Si un usuario ofusca su perfil
responden a las consultas de los usuarios con una lista de de manera significativa, obtendrá una buena protección de su
resultados que corresponden a los enlaces a las páginas que privacidad, pero también recibirá un peor servicio, y viceversa.
contienen la información buscada. En este artı́culo se propone un método que ofrece un
El éxito de un motor de búsqueda respecto a los otros reside compromiso aceptable entre privacidad, utilidad del perfil y
en la adecuación de los resultados a los intereses del usuario. tiempo de respuesta.
Por ejemplo, consideremos un usuario que consulta el término
“Mercurio”. Si el usuario está interesado en la astronomı́a, el I-A. Estado del arte
motor de búsqueda deberı́a mostrar los resultados relacionados La protección de la privacidad frente a los motores de
con el planeta. Por el contrario, si sus intereses se centran en búsqueda es un tema tratado con anterioridad en distintos
la quı́mica, los resultados deberı́an corresponder al elemento trabajos. Una forma de clasificar estos trabajos es de acuerdo
quı́mico. con el número de usuarios que participan en el protocolo:
Por esta razón, para un motor de búsqueda es necesario existen protocolos single-party y multi-party. Los protocolos
conocer los intereses de sus usuarios. Para ello, basándose single-party permiten que un usuario proteja su privacidad
principalmente en el historial de consultas, los motores de de forma individual. Los protocolos multi-party requieren un
búsqueda crean un “perfil” de usuario que permite personalizar grupo de usuarios que colabore para proteger su privacidad.
los resultados de acuerdo con los intereses de cada usuario. Los protocolos single-party se basan en generar consultas
Aunque los perfiles sirven para mejorar la calidad del falsas [2] o en modificar las consultas que son enviadas a los
servicio, también pueden ser una amenaza para la privacidad. motores de búsqueda [3]. Sin embargo, algunas propuestas
Sistema P2P de protección de la privacidad en motores de búsqueda basado en perfiles de usuario 292

(p.e. [4], [5]) muestran que las consultas generadas por una II. A RQUITECTURA PROPUESTA
máquina no tienen las mismas caracterı́sticas sintácticas y El objetivo principal de nuestra propuesta es construir una
semánticas que las consultas humanas. De acuerdo con los arquitectura P2P que permita que los usuarios se agrupen en
trabajos de [4] y [5], es posible detectar consultas automáticas diferentes categorı́as en función de sus perfiles. En esta sección
con una probabilidad de error muy baja (alrededor de 0,02 %). se explica en detalle la arquitectura que compone la red Peer-
Otra opción dentro de los protocolos single-party es usar un to-Peer de manera que los usuarios puedan agruparse según
canal anónimo como por ejemplo Tor [6]. No obstante, en este su perfil en redes no estructuradas. Para ello, a continuación
caso el motor de búsqueda no es capaz de generar un perfil se definen la estructura del perfil considerado y la topologı́a
del usuario, ofreciendo una peor calidad del servicio (ver [7] de la red. En esta sección se explica en detalle la arquitectura
para más detalles). que compone la red Peer-to-Peer.
Por otro lado, los protocolos multi-party no están afectados
por los errores de detección de consultas falsas, y generalmente II-A. El vector Perfil
son más rápidos que los esquemas basados en canales anóni- Para definir el vector que caracteriza el perfil del usuario, el
mos. En estos protocolos, los usuarios ofuscan su perfil con sistema utiliza las categorı́as definidas en el Open Directory
consultas falsas generadas por otros usuarios. La obtención de project (ODP) [10]. ODP es una clasificación ampliamente
estas consultas falsas se realiza mediante la creación de grupos aceptada de las diferentes categorı́as que existen de páginas
de usuarios, que pueden ser dinámicos [7], o estáticos [8], [9]. Web. Esta clasificación se realiza a varios niveles. Por ejemplo,
Los protocolos con grupos dinámicos utilizan un servidor la consulta “Michael Jordan” estarı́a clasificada en ODP bajo
para agrupar a los usuarios. Este nodo puede ser un cuello las categorı́as (de más general a más especı́fica) “deportes
de botella, o puede suponer problemas de seguridad, o sufrir : baloncesto: profesional: NBA: jugadores”. Por cuestiones
ataques de denegación de servicio. de simplicidad, llamaremos L al nivel de la categorı́a, ası́ la
En los protocolos con grupos estáticos, no es necesario un categorı́a “deportes” se encuentra a nivel L = 1, la categorı́a
servidor que cree dinámicamente los grupos. Sin embargo, “profesional” a nivel L = 2, etc. Asimismo, llamaremos CL
el problema en este caso es que los grupos contienen los al conjunto de categorı́as que se encuentran en un nivel, y s al
mismos usuarios en cada ejecución del protocolo, existiendo número de categorı́as que contiene el nivel. Por ejemplo, en el
la posibilidad de que usuarios deshonestos creen perfiles de nivel L = 1 hay s = 16 categorı́as, C1 = {c1 , . . . , c16 }={arte,
los otros miembros del grupo. negocios, ordenadores, juegos, salud, hogar, infancia y adoles-
cencia, noticias, ocio, referencia, regional, ciencia, compras,
I-B. Contribución y organización del artı́culo sociedad, deportes, mundo}.
Definimos también Qi = {q1 , . . . , qk } como el conjunto
Considerando las ventajas y desventajas de las soluciones de consultas generadas por el usuario i, y EiL = {c1 , . . . , ck }
con grupos dinámicos y estáticos, en este trabajo se propone como el conjunto de categorı́as de nivel L a las que pertenecen
una solución hı́brida. El sistema presentado en este artı́culo las consultas de Qi . Para obtener la categorı́a a la que pertene-
clasifica a los usuarios de los motores de búsqueda en grupos, ce cada consulta, se utiliza el método de análisis textual, como
donde cada grupo representa una temática o categorı́a. Un el propuesto en [11]. Este método aplica, para cada consulta,
usuario puede pertenecer a varios grupos (si su perfil, generado un análisis morfosintáctico y semántico, cuyo resultado final
a partir de su historial de consultas, contiene diversas cate- es la categorı́a ODP a la que pertenece la consulta.
gorı́as) durante una “sesión”, es decir, un perı́odo de tiempo Finalmente, definimos el perfil PiL de un usuario i en el
variable en el que el usuario envı́a consultas al motor de nivel L como un vector, donde cada posición corresponde al
búsqueda de forma regular. Cuando esta sesión finaliza, el peso w de una categorı́a del nivel L, PiL = {wc1 , . . . , wcs }.
usuario se desconecta del sistema, cambiando la topologı́a de Cada peso w es el número de apariciones de esa categorı́a en
los grupos y haciéndola ası́ dinámica. EiL .
La principal contribución respecto a trabajos anteriores es la Por ejemplo, consideremos que nuestro sistema está fijado
creación y mantenimiento de perfiles dinámicos. El beneficio para L = 1. Consideremos también un usuario a que ha
que obtiene el usuario del sistema es que enviará siempre generado k = 3 consultas Qa = {q1 , q2 , q3 }, con categorı́as
consultas cuya temática esté ligada a sus intereses. Ésto Ea1 =arte, deporte, arte. El perfil resultante serı́a PiL =
protege su privacidad ya que ofusca su perfil (no contiene sus {2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0}.
consultas reales), pero mantiene sus intereses (permitiendo la Este perfil es dinámico, es decir, a medida que el usua-
obtención de resultados personalizados). rio vaya enviando más consultas, mayor información con-
En la Sección I-A se describen brevemente las principales tendrá su perfil. Por ejemplo, si el usuario a envı́a otra query
propuestas para proteger la privacidad de los usuarios de los q4 de arte, y otra q5 de negocios, su perfil será PiL =
motores de búsqueda. En la Sección II se presenta la arquitec- {3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0}.
tura propuesta y en la Sección III el protocolo de privacidad.
La Sección IV presenta los resultados de la simulación del II-B. Estructura de la red
sistemas propuesto. Finalmente, las conclusiones se describen Los usuarios se conectan entre ellos usando una red P2P.
en la Sección V. Esta red está formada por varios clusters, donde cada cluster
Sistema P2P de protección de la privacidad en motores de búsqueda basado en perfiles de usuario 293

representa cada una de las categorı́as de nivel L. Esto quiere uno de los nodos escogido al azar en el cluster, que se
decir que, por ejemplo, para L = 1 tendremos una red P2P convertirá en el nuevo superpeer. El segundo mensaje se
formada por 16 clusters. envı́a al servidor bootstrap, indicando la dirección IP del
Dentro de cada cluster, existe un nodo llamado superpeer nuevo superpeer.
que mantiene la lista de direcciones de los nodos que perte- Si el usuario que se desconecta es un nodo normal de
necen a ese cluster. Dependiendo de su perfil, un nodo puede un cluster, simplemente enviará una notificación a su
estar conectado a uno o varios clusters. superpeer para ser borrado de la lista de nodos del
Para acceder a la red, se utiliza un servidor bootstrap, cluster. Los nodos que ya estaban en el cluster en
encargado de mantener y proporcionar la lista de superpeers el momento de la desconexión, borrarán al usuario de
(direcciones IP) a los nuevos nodos. sus listas en el caso de que intenten conectarse con
A continuación se describe con mayor detalle las formas él y reciban un mensaje de error indicando que ya no
que existen de cambiar la estructura de la red. está disponible.
II-B1. Nueva conexión de un nodo: Como muchas redes
III. P ROTOCOLO DE P RIVACIDAD
P2P, la red se construye gradualmente a medida que nuevos
nodos se conectan al sistema. Los pasos para insertar un nuevo La sección anterior explica la estructura de la red P2P. En
nodo en el sistema son: esta sección, asumimos que cada usuario ya está conectado a
1. Consideramos un nuevo usuario i que quiere enviar la red, y posee la lista de direcciones IP de los nodos de uno
una consulta qi . En primer lugar, el sistema extrae la o varios clusters a los que pertenece su perfil.
categorı́a cj a la que pertenece qi y crea el perfil inicial En este punto, utiliza un protocolo de privacidad para
del usuario PiL = {0c1 , . . . , 1cj , . . . , 0cs } proteger las consultas que envı́a al motor de búsqueda. La
2. El usuario i se conecta al bootstrap, que le envı́a la lista idea general de este protocolo es que cuando el usuario
de superpeers existentes en el sistema. En este punto, genera una consulta, no la envı́a directamente al motor de
dos situaciones pueden ocurrir: búsqueda, sino que la envı́a a otro nodo de la red. Este nodo
es escogido al azar dentro del cluster al cual corresponde
No hay superpeer para la categorı́a cj . En este
la categorı́a de la consulta. A su vez, el nodo que recibe
caso, i se convierte en el nuevo superpeer de esa
la consulta puede aceptarla o rechazarla. Si la rechaza, el
categorı́a, y envı́a un mensaje al servidor bootstrap.
usuario buscará a otro nodo del cluster que se la acepte. El
El bootstrap guardará la IP de i en la lista de
nodo que acepta la consulta tiene dos posibilidades: enviarla
superpeers, asociada con cj .
al motor de búsqueda, o reenviarla a otro nodo del cluster.
Existe un superpeer para la categorı́a cj . El usuario
El nodo elegirá una opción u otra en base a su historial de
i manda una petición al superpeer de cj para ser
consultas enviadas. Si decide reenviar la consulta a otro nodo,
incluido en su cluster. El superpeer le envı́a la lista
éste elegirá de nuevo entre las dos posibilidades, hasta que
de direcciones IP de los nodos que ya pertenecen a
finalmente un nodo envı́e la consulta al motor de búsqueda.
cj , y después incluye la IP de i en esta lista.
Finalmente, los resultados para la consulta se devuelven al
El usuario i utiliza la lista de nodos que le envı́a el
nodo que la generó por el camino inverso que siguió la
superpeer para ejecutar el protocolo de privacidad
consulta.
explicado en la Sección III.
A continuación se describen las fases del protocolo anterior
II-B2. Modificación del perfil de un nodo: Hay dos ma- con más detalle:
neras en las que el perfil de un usuario puede ser modificado:
1. Realiza una nueva consulta de una categorı́a de su perfil III-A. Inicializaciones
con peso wc > 0. En este caso, se trata de una categorı́a Asumimos que un nodo i de la red tiene dos perfiles:
ya existente en su perfil, y simplemente se incrementa Un perfil real PiL , construido a partir de las categorı́as
en una unidad el peso wc de la categorı́a. de las consultas que genera, tal como se explica en la
2. Realiza una nueva consulta de una categorı́a de su Sección II-A.
perfil cuyo peso wc = 0. En este caso, el perfil cambia Un perfil ofuscado ΦL i , con la misma estructura que el
el peso de la categorı́a a wc = 1, y el usuario debe perfil real, pero construido a partir las categorı́as de las
conectarse a un nuevo cluster. Utilizando la lista de consultas que envı́a al motor de búsqueda.
superpeers proporcionada por el bootstrap, el usuario El objetivo del protocolo de privacidad es hacer que el perfil
vuelve a ejecutar una de las opciones del paso 2. ofuscado se parezca lo máximo posible al perfil real, ofuscan-
II-B3. Salida de usuario: Cuando un usuario se desconec- do la información que el motor de búsqueda almacena, pero
ta del sistema, la estructura de la red cambia, y los siguientes manteniendo su utilidad. Para controlar el nivell de distorsión
cambios deben realizarse: del perfil se ha definido el parámetro de ofuscación z. Este
Si el usuario que se desconecta es un superpeer, asu- parámetro representa la diferencia máxima que puede existir
mimos que antes de desconectarse envı́a dos mensajes. entre el peso de una categorı́a en el perfil real wcPj y el peso
El primer mensaje contiene la lista de direcciones IP de esa misma categorı́a en el perfil ofuscado wcΦj . Es decir, se
de los nodos del cluster. Este mensaje es enviado a tiene que cumplir la siguiente condición: wcPj < wcΦj + z.
Sistema P2P de protección de la privacidad en motores de búsqueda basado en perfiles de usuario 294

Además, definimos otro parámetro ξ: la probabilidad de reenviaron, y los pasan al nodo del que la recibieron. Ası́,
rechazo. Este parámetro indica la probabilidad (entre 0 y 1) finalmente, la consulta llega hasta el usuario que la generó.
que tiene un nodo de rechazar una consulta que recibe de otro
IV. A N ÁLISIS DEL SISTEMA
usuario.
Con el objetivo de analizar el sistema propuesto, se ha
III-B. Envı́o de la consulta implementado una aplicación que simula las consultas que
Esta fase del protocolo se ejecuta cada vez que un usuario enviarı́a cada usuario al WSE si utilizara este sistema. Además,
i genera una consulta qi . esta aplicación analiza diversas estadı́sticas de las simulación,
como el número de saltos que realiza una consulta antes de
1. i calcula la categorı́a cj a la que pertenece qi .
recibir la respuesta. Comparando el perfil original y el perfil
2. i incrementa una unidad el peso wcPj de su perfil real.
obtenido en la simulación, se puede verificar si las categorı́as
3. i escoge al azar un nodo v del cluster que corresponde
se mantienen en el perfil, permitiendo personalizar los resul-
a cj .
tados de futuras consultas. Otro de los parámetros analizados
4. i y v ejecutan el siguiente protocolo de compromiso
es el número de saltos de cada consulta, que permite estimar
de bit para saber si v deberı́a aceptar o rechazar la
el tiempo de espera. Es decir, si el sistema requiere un gran
consulta. Sin este procedimiento, un usuario egoı́sta
número de saltos, esto supondrı́a una gran espera y por lo
podrı́a rechazar siempre las peticiones recibidas.
tanto los usuarios serı́an reticentes a su utilización.
a) i escoge al azar un valor X de longitud suficiente Los datos empleados en la simulación son los proporciona-
y aplica una función resumen criptográfica segura dos por AOL. Primero, se han ordenado todas las consultas
computacionalmente H(), obteniendo x = H(X). por la fecha en que fueron realizadas. El simulador recibe cada
b) i envı́a x al nodo v. consulta en su tic correspondiente, es decir, para cada segundo.
c) v escoge al azar otro valor Y , y aplica la misma Los perfiles ofuscados de los usuarios de AOL serı́an los que
función de hash obteniendo y = H(Y ). hubieran obtenido si hubieran utilizado nuestro sistema.
d) v envı́a y al nodo i. Dado el gran número de datos de AOL únicamente se ha
e) i envı́a X al nodo v, para que verifique si x == considerado un dı́a entero para hacer la simulación. El trabajo
H(x). futuro serı́a ampliar la simulación a más dı́as.
f ) v envı́a Y al nodo i, para que verifique si y == El simulador y el protocolo incluyen diferentes parámetros
H(Y ). que afectan a su comportamiento:
g) Si alguna de las verificaciones falla, los nodos se
Ofuscación (z): nivel máximo permitido de distorsión del
desconectan y el usuario i recomienza esta fase del
perfil.
protocolo eligiendo otro v 0 .
Probabilidad de rechazo (ξ): un nodo rechazarı́a la
h) Si las verificaciones se llevan a cabo con éxito,
consulta en función de una probabilidad fijada ξ. Esta
i y v calculan un hash que concatena X e Y :
probabilidad se obtiene mediante el protocolo de com-
H(X||Y ). El resultado de este hash se usa como
promiso de bit.
entrada para un generador pseudo-aleatorio que
Nivel de las categorı́as (L): se ha fijado el primer nivel
genera un valor (λ) de manera aleatoria entre 0
L = 1 al hacer las simulaciones.
y 1. Si λ ≥ ξ, v acepta la consulta qi . Si λ < ξ, v
rechaza la consulta y el usuario i recomienza esta El nivel de las categorı́as es el mismo para todas las simula-
fase del protocolo eligiendo otro v 0 . ciones realizadas, pero el nivel de ofuscación y la probabilidad
de rechazo cambian para ofrecer un análisis más completo.
5. Suponiendo que el nodo que finalmente acepta la con-
Más concretamente, el sistema se ha simulado para tres valores
sulta es v, éste calcula wcΦv +z, y lo compara con wcPv .
j j de ofuscación (z = 0, 5, 10), y cuatro probabilidades de
Si wcPj ≤ wcΦj + z, v envı́a la consulta al motor de rechazo (ξ = 0.25, 0.5, 0.75, 1).
búsqueda. Además, incrementa una unidad el peso A continuación, se muestra el promedio de resultados para
wcΦj de su perfil ofuscado. tres usuarios diferentes en cada una de las configuraciones.
Si wcPj > wcΦj + z, v escoge al azar otro nodo r La Tabla I muestra el número de saltos promedio que ha
del cluster que corresponde a cj . En este punto, el necesitado una consulta para ser enviada al motor de búsqueda
protocolo vuelve a ejecutarse entre v y r a partir y recibir los resultados, es decir, ida y vuelta: el número de
del paso 4. nodos que han reenviado la consulta y los resultados. Los
resultados muestran que el número de saltos se encuentra sobre
III-C. Recepción de los resultados de los 4 saltos por consulta. También se observa que un nivel
La fase del protocolo anterior se ejecuta hasta que uno de de ofuscación de z = 0 obliga a realizar un mayor número de
los nodos finalmente envı́a la consulta al motor de búsqueda. saltos hasta encontrar un usuario que quiera enviar la consulta
Este nodo es responsable de comenzar el reenvı́o de los al motor de búsqueda. Esto ocurre porque los usuarios tienen
resultados que recibe del motor de búsqueda. Ninguno de menor flexibilidad para alejarse de su perfil real, restringiendo
los nodos conoce el camino completo que siguió la consulta, el número de consultas falsas que pueden enviar. Además, la
simplemente reciben los resultados del nodo al que se la tabla muestra que, para z = 0, la probabilidad de rechazo
Sistema P2P de protección de la privacidad en motores de búsqueda basado en perfiles de usuario 295

ξ afecta ligeramente a los resultados. Cuanto mayor es la a los resultados. Esto se debe a que el hecho de aceptar más
probabilidad de rechazo, mayor es el número de saltos. Por o menos consultas, no está relacionado con la ofuscación, y
otro lado, los resultados no parecen estar afectados por esta por lo tanto con la distanci entre perfiles.
probabilidad de rechazo cuando z = 5 o z = 10. Esto se debe
a que los nodos tienen flexibilidad suficiente para alejarse de Tabla III
su perfil real, y pueden aceptar más consultas falsas. P ROMEDIO DE SALTOS DE CADA CONSULTA PARA DISTINTOS VALORES DE
zYξ

Tabla I
hhhh Prob. rech. (ξ)
hh 0,25 0,5 0,75 1
P ROMEDIO DE SALTOS DE CADA CONSULTA PARA DISTINTOS VALORES DE Ofusc. (z) hhh
hh
zYξ 0 14,46 8,23 9,89 19,53
5 22,34 19,30 24,78 21,21
hhhh Prob. rech. (ξ) 10 22,94 23,02 27,79 21,54
hh 0,25 0,5 0,75 1
Ofusc. (z) hhh
hh
0 4,32 4,36 4,45 4,62
5 3,48 3,46 3,51 3,42 V. C ONCLUSIONES Y TRABAJO FUTURO
10 3,43 3,41 3,45 3,41
Los motores de búsqueda en Internet crean perfiles de
El siguiente punto a analizar es la relación entre el número sus usuarios para personalizar los resultados y ofrecer un
de consultas propias que el usuario ha enviado al motor mejor servicio. La información almacenada en el perfil puede
de búsqueda, y el número total de consultas generadas. Por suponer una amenaza para la privacidad del usuario. Por esta
ejemplo, consideremos un usuario que genera 171 consultas, razón, en este trabajo se ha propuesto una arquitectura P2P
y ejecuta el protocolo propuesto para distribuirlas entre los que permite que los usuarios se agrupen según sus perfiles,
usuarios de la red. Por distintas razones (e.g., la consulta permitiendo al mismo tiempo conservar un perfil ofuscado (o
le ha sido reenviada en un ciclo, o ningún usuario la ha sintético) muy similar a su perfil real. Una vez en grupos, los
aceptado), al final tiene que enviar él mismo 23 de esas usuarios ejecutan un protocolo con el que envı́an sus consultas
consultas. Entonces, decimos que el motor de búsqueda conoce de manera que el motor de búsqueda obtiene un perfil que
23 de las 171 consultas reales generadas por el usuario, y no se corresponde al del usuario en lo que se refiere a las
por lo tanto, el nivel de conocimiento que tiene de su perfil consultas pero si a las categorı́as. Esto sirve para favorecer
es de 23/171 = 0,135. La Tabla II muestra estos valores una personalización de los resultados por parte del motor de
promedios para cada una de las configuraciones. En estos búsqueda, mientras se protege la privacidad del usuario.
resultados podemos observar resultados muy similares para Para analizar el protocolo propuesto, varias simulaciones se
todas las configuraciones, independientemente de z y de ξ. han llevado a cabo con distintas configuraciones de paráme-
Esto quiere decir que estos parámetros afectan al número de tros. De estas simulaciones, se han mostrado los resultados
saltos que realizará la consulta, pero no a las razones por las que corresponden al número de saltos, al porcentaje del perfil
que un usuario envı́a su propia consulta. que posee el motor de búsqueda, y a la distancia entre el
perfil obtenido tras ejecutar el protocolo (ofuscado) y el perfil
Tabla II
real del usuario. Los resultados muestran que (1) un nivel
P ROMEDIO DEL PORCENTAJE DEL PERFIL CONOCIDO POR EL MOTOR DE máximo de ofuscación nulo aumenta el número de saltos de
B ÚSQUEDA PARA DISTINTOS VALORES DE z Y ξ las consultas, (2) los porcentajes de perfil que obtiene el motor
hhhh de búsqueda no están afectados por el nivel de ofuscación ni
Prob. rech. (ξ)
Ofusc. (z)
hh hhhh 0,25 0,5 0,75 1 la probabilidad de rechazo, y (3) la distancia entre el perfil
h
0 0,30 0,30 0,29 0,24 real y el ofuscado está estrechamente relacionada con el nivel
5 0,28 0,29 0,27 0,30 máximo de ofuscación z.
10 0,29 0,29 0,28 0,30
Como trabajo futuro, se prevee realizar más simulaciones
ajustando otros parámetros del sistema, como el número mı́ni-
Por último, las simulaciones realizadas analizan la distancia
mo de conexiones que debe tener un usuario o el procentaje
entre el perfil real del usuario y su perfil ofuscado. Para ello,
de usuarios egoı́stas presentes en la red. Además, el trabajo
dado el perfil real PiL = {wcP1 , wcP2 , . . . , wcPs }, y el perfil
futuro también incluye una propuesta para controlar el origen
ofuscado ΦL i = {wcΦ , wcΦ2 , . . . , wcΦs }, la distancia entre ambos
1 de consultas “ilegales”, i.e., que un usuario pueda demostrar
d(P, Φ) se calcula aplicando la siguiente fórmula:
que no generó una consulta, sino que estaba enviándola para
q beneficio de otro usuario de la red.
d(P, Φ) = (wcP − wcΦ )2 + (wcP − wcΦ )2 + . . . + (wcP − wcΦ )2
1 1 2 2 s s
R EFERENCIAS
La Tabla III muestra el promedio de distancias entre el perfil
[1] M. Barbaro and T. Zeller, “A face is exposed for aol searcher no.
real y el ofuscado de cada usuario para cada configuración. De 4417749,” New York Times, August 2005.
estos resultados podemos extraer que, cuanta más flexibilidad [2] “TrackMeNot,” http://mrl.nyu.edu/dhowe/trackmenot, 2013.
hay en el lı́mite de ofuscación z, mayor será la distancia entre [3] J. Domingo-Ferrer, A. Solanas, and J. Castella-Roca, “h(k)-private
information retrieval from privacy-uncooperative queryable databases,”
el perfil real del usuario y su perfil ofuscado. Por el contrario, Journal of Online Information Review, vol. 33, no. 4, pp. 1468–1527,
la probabilidad de rechazo ξ no parece afectar de forma regular 2009.
Sistema P2P de protección de la privacidad en motores de búsqueda basado en perfiles de usuario 296

[4] R. Chow and P. Golle, “Faking contextual data for fun, profit, and
privacy,” in Proceedings of the 8th ACM workshop on Privacy in the
electronic society – WPES’09, 2009, pp. 105–108.
[5] S. T. Peddinti and N. Saxena, “On the privacy of web search based
on query obfuscation: a case study of trackmenot,” in Proceedings of
the 10th international conference on Privacy enhancing technologies –
PETS’10, 2010, pp. 19–37.
[6] R. Dingledine, N. Mathewson, and P. Syverson, “Tor: the second-
generation onion router,” in Proceedings of the 13th conference on
USENIX Security Symposium, 2004, pp. 21–31.
[7] J. Castella-Roca, A. Viejo, and J. Herrera-Joancomarti, “Preserving
user’s privacy in web search engines,” Computer Communications,
vol. 32, no. 13–14, pp. 1541–1551, 2009.
[8] A. Viejo and J. Castella-Roca, “Using social networks to distort users’
profiles generated by web search engines,” Computer Networks, vol. 54,
no. 9, pp. 1343–1357, 2010.
[9] A. Erola, J. Castella-Roca, A. Viejo, and J. M. Mateo-Sanz, “Exploiting
social networks to provide privacy in personalized web search,” Journal
of Systems and Software, vol. 84, no. 9, pp. 1734–1745, 2011.
[10] ODP, “Open Directory Project,” http://www.dmoz.org/, 2013.
[11] D. Sánchez, J. Castellà-Roca, and A. Viejo, “Knowledge-based scheme
to create privacy-preserving but semantically-related queries for web
search engines,” Inf. Sci., vol. 218, pp. 17–30, Jan. 2013. [Online].
Available: http://dx.doi.org/10.1016/j.ins.2012.06.025
RECSI 2014, Alicante, 2-5 septiembre 2014

Refinamiento Probabilı́stico del Ataque de


Revelación de Identidades
Alejandra Guadalupe Silva Trujillo, Javier Portela Garcı́a-Miguel, Luis Javier Garcı́a Villalba
Grupo de Análisis, Seguridad y Sistemas (GASS), Departamento de Ingenierı́a del Software e Inteligencia Artificial
Facultad de Informática, Despacho 431, Universidad Complutense de Madrid (UCM)
Calle Profesor José Garcı́a Santesmases, 9, Ciudad Universitaria, 28040 Madrid, España
Email: {asilva, javiergv}@fdi.ucm.es, jportela@estad.ucm.es

Resumen—En la actualidad muy pocas empresas reconocen disponible acerca de una persona puede ser referenciada con
que se encuentran continuamente en riesgo al estar expuestos a otra y dar lugar a prácticas de violación de la intimidad.
ataques informáticos tanto internos como externos. Más allá de Cada persona tiene el derecho de controlar su información
simplemente instalar herramientas de protección contra hackers
y células del crimen organizado tales como antivirus y firewalls, personal y proporcionarla a ciertas terceras partes. Desde la
deben incluir mecanismos adecuados de seguridad en TI que década pasada se observa una mayor preocupación por cómo
brinden protección a los ataques que son cada vez más complejos. se maneja la información privada de los usuarios en el ámbito
Existen diversos estudios que muestran que aún cuando se gubernamental y de las empresas. Y recientemente, después
aplique el cifrado de datos en un sistema de comunicación, es de la filtración de información de un técnico estadunidense
posible deducir el comportamiento de los participantes a través
de técnicas de análisis de tráfico. En este artı́culo presentamos un de la CIA al mundo, aumentaron las mesas de diálogo,
ataque a un sistema de comunicación anónimo basado en el ata- investigaciones y fundamentalmente se creó toda una polémica
que de revelación de identidades. El refinamiento probabilı́stico en torno a la privacidad de los datos y lo expuesto que estamos
presenta una mejora sustancial respecto al ataque previo. a ser objetos de monitorización.
Palabras clave—Análisis de tráfico, ataques estadı́sticos de re- Las organizaciones privadas y públicas, ası́ como las per-
velación, comunicaciones anónimas, privacidad. (Traffic analysis,
statistical disclosure attacks, anonymous communications, privacy).
sonas deben incluir la protección de la privacidad más allá de
los tı́picos aspectos de integridad confidencialidad y disponi-
bilidad de los datos. Aplicaciones utilizadas para garantizar
I. I NTRODUCCI ÓN la protección de la privacidad son por ejemplo los sistemas
de resistencia a la censura, espionaje, entre otros; algunos de
Empresas, organizaciones y sociedad generan millones de ellos utilzados para ofrecer seguridad a disidentes o periodistas
datos diariamente desde diferentes fuentes tales como: ope- viviendo en paı́ses con regı́menes represores. Dentro de la
raciones comerciales y mercantiles, redes sociales, disposi- misma rama de tecnologı́as, también existen mecanismos uti-
tivos móviles, documentos, entre otros. La mayor parte de lizados para acelerar la transición de cifrado como un servicio,
esta información se almacena en bases de datos altamente que incluye cifrado basado en hardware con almacenamiento
sensibles. Se consideran datos sensibles aquellos que puedan de llaves, esquemas de protección centralizada de datos para
revelar aspectos como origen racial o étnico, estado de salud aplicaciones, bases de datos, ambientes virtuales de almace-
presente y futuro, información genética, creencias religiosas, namiento, y controles de acceso basados en roles.
filosóficas y morales, afiliación sindical, opiniones polı́ticas, Los ataques en las redes de comunicación son un serio
preferencia sexual y cualquier otro que pueda utilizarse para problema en cualquier organización. Las nuevas tecnologı́as
generar un daño, llámese robo de identidad, extorsión ó fraude tienen un gran reto al buscar mejorar soluciones de seguridad
por mencionar algunos. para centros de datos. Se ha probado que el análisis de tráfico y
La seguridad en los data centers se ha vuelto una de las la topologı́a de una red, no proporcionan suficiente protección
grandes prioridades ya que tanto los ladrones de datos y células en la privacidad de los usuarios aún cuando se apliquen
del crimen organizado buscan insistentemente infiltrarse en el mecanismos de anonimato, ya que a través de información
perı́metro de defensas a través de complejos ataques con un auxiliar, un atacante puede ser capaz de menguar sus propie-
éxito alarmante, derivando en efectos devastadores. Hoy en dades. En el contexto de las redes de comunicación, con el
dı́a estamos inmersos en una sociedad digital donde podemos análisis del tráfico se puede deducir información a partir las
organizar un evento y enviar una invitación por Facebook; caracterı́sticas observables de los datos que circulan por la red
compartir fotos con amigos por medio de Instagram; escuchar tales como: el tamaño de los paquetes, su origen y destino,
música a través de Spotify; preguntar la ubicación de una tamaño, frecuencia, temporizacion, entre otros.
calle utilizando Google Maps. La información personal es En este artı́culo nos enfocamos en mostrar cómo el análisis
protegida por medio de la legislación y aunque no en todos los de tráfico de datos puede comprometer el anonimato de un sis-
paı́ses se aplique efectivamente, en el ámbito de la sociedad tema de comunicación anónima a través de técnicas y métodos
digital funciona de manera diferente [1]. Toda la información que arrojen como resultado los patrones de comunicación de
298 A. Silva, J. Portela, L. J. Garcı́a

los elementos que la componen. La participación de los derechos humanos nacionales e interna-
La composición del presente artı́culo es de la siguiente cionales, el gobierno, los medios de comunicación ası́ como la
manera, en primer lugar la introducción. En la sección II sociedad parecen estar lejanos de este problema. El escándalo
abordamos el estado del arte. La siguiente sección describe a expensas de la intrusión y diseminación de la vida privada
el algoritmo utilizado, haciendo énfasis en el refinamiento e ı́ntima de las personas es inaceptable. Es un cı́rculo vicioso
probabilı́stico. En la sección IV presentamos la aplicación que tiene su origen en la violación de un derecho, pero más
del algoritmo. Y finalmente en la sección V mostramos las cuando se lleva a las redes sociales y de ahı́ a la mayorı́a de
conclusiones sobre los resultados y trabajos futuros los medios de comunicación con el pretexto de ser noticia.
II-B. Privacy Enhancing Technologies
II. E STADO DEL ARTE
La Comisión Europea define las Tecnologı́as que mejoran
II-A. Privacidad la privacidad [5] como “El uso de los PETs puede ayudar a
La definición de privacidad de acuerdo a [2] es el derecho diseñar sistemas de comunicación y servicios de forma que
de un individuo a decidir qué información acerca de él mismo minimiza la recolección y uso de datos personales y facilita el
puede ser comunicada a otro y bajo qué circunstancias. cumplimiento con la regulación de protección de datos”. No
Economistas, sociólogos, historiadores, abogados, ingenie- hay una definición aceptada por completo de las PETs, ası́ co-
ros en sistemas informáticos, por mencionar algunos, han mo tampoco existe una clasificación. La literatura relacionada
adoptado su propia definición de privacidad, tal como su valor, a las categorı́as de los PETs de acuerdo a sus principales
alcance, prioridad y curso de estudio. Detalles relacionados funciones, administración de privacidad y herramientas de
a los antecedentes, legislación e historia de la privacidad protección de privacidad [6] [7] [8]. En general las PETs son
se muestran en [3]. De acuerdo a los expertos, privacidad observadas como tecnologı́as que se enfocan en:
e intimidad son conceptos difı́ciles de definir; consideramos a. Reducir el riesgo de romper principios de privacidad y
parte de ello: las condiciones de salud, identidad, orientación cumplimiento legal.
sexual, comunicaciones personales, preferencias religiosas, b. Reducir al mı́nimo la cantidad de datos que se tienen
estados financieros, además de muchas otras caracterı́sticas. sobre los individuos.
Trabajos relacionados en cómo las PETs se han aplicado desde c. Permitir a los individuos a mantener siempre el control
áreas del entorno económico, social y técnico [4]. de su información.
Las bases de la legislación respecto a la privacidad datan del Varios investigadores se han centrado en proteger la pri-
año 1948, en la Declaración Universal de Derechos Humanos vacidad y los datos personales por medio de técnicas crip-
donde se estableció que ninguna persona debı́a ser sujeta a tográficas. Las aplicaciones PETs tales como seguros digitales
interferencias arbitrarias en su privacidad, familia, hogar o individuales o administradores virtuales de identidad se han
correspondencia, ası́ como a su honor y reputación. Pero, a desarrollado para plataformas confiables de cómputo. Tradi-
pesar de los avances polı́ticos y legales que se han dado, no ha cionalmente las PETs han estado limitadas para proporcionar
sido posible resolver algunos de los problemas fundamentales pseudononimato [9]. En contraste a los datos totalmente
para evitar los abusos que se dan todos los dı́as. La falta de anónimos, el pseudononimato permite que datos futuros o
claridad y precisión en los derechos a la libertad de expresión adicionales sean relacionados a datos actuales. Este tipo de
y los lı́mites de información son un problema latente. herramientas son programas que permiten a individuos negar
El desarrollo e los medios de comunicación digital, el auge su verdadera identidad desde sistemas electrónicos que operan
de las redes sociales, la facilidad de acceso a dispositivos tec- dicha información y sólo la revelan cuando sea absolutamente
nológicos, está permeando la tranquilidad de miles de personas necesario. Ejemplos incluyen: navegadores web anónimos,
en su vida pública y privada. Ejemplos abundan, como el caso servicios email y dinero electrónico. Para dar un mejor enfoque
de una funcionaria de una localidad belga, quien fue sorpren- acerca de las PETs, consideremos la taxonomı́a de Solove
dida y videograbada mientras mantenı́a relaciones sexuales en [10] utilizada para categorizar la variedad de actividades que
las oficinas del Ayuntamiento. La grabación fue realizada y afectan la privacidad. Para mayor información respecto a
subida a Internet por un grupo de jóvenes. Otro escándalo se las propiedades de privacidad en escenarios de comunicación
dio cuando el presidente del Instituto de Seguridad Social de anónimos vea [9].
Guatemala quién fue filmado en su oficina cuando realizaba Recolección de información: Vigilancia, Interrogatorio.
actos poco legales. A diferencia del primer caso, en éste último Procesamiento de la Información: Agregación, Identifi-
sı́ existı́a un crimen que perseguir y la acción se justificaba cación, Inseguridad, Uso secundario, Exclusión.
para dar a conocer los hechos públicamente. Difusión de la Información: Violación de la confidencia-
Como éstos, muchos más casos son parte del material lidad, Divulgación, Exposición, Aumento de la accesibi-
disponible en internet y en los medios convencionales, como lidad, Chantaje, Apropiación, Distorsión.
los videos que se filtraron de la Viceministra de Cultura y Invasión: Intrusiones, Interferencia en la toma de deci-
Juventud de Costa Rica, y del concejal del PSOE en Yébenes, siones.
España. A nadie parece importar los efectos que continúan La recolección de la información puede ser una actividad
afectando vidas, donde la indiferencia parece ser la constante. dañina, aunque no toda la información es sensible, ciertos
Refinamiento probabilı́stico del Ataque de Revelación de Identidades 299

datos definitivamente lo son. Cuando la información es ma- mensajerı́a instantánea entre otros. Ambos tipos de sistemas
nipulada, utilizada, combinada y almacenada. se etiqueta a se basan en la propuesta de Chaum [12], quién introdujo
dichas actividades como Procesamiento de la información; el concepto de mix. El objetivo de una red de mixes es
cuando la información es liberada, encaja en las actividades ocultar la correspondencia entre elementos de entrada con los
conocidas como Difusión de la información. Finalmente, el de salida, es decir encubrir quien se comunica con quien.
último grupo de las actividades es la Invasión que incluye Una red de mixes reúne un cierto número de paquetes de
violaciones directamente a individuos. Todas estas actividades usuarios diferentes llamado el conjunto anónimo, y entonces
son parte de las prácticas comunes de las compañı́as que a través de operaciones criptográficas cambia la apariencia de
se dedican a recolectar información, como la preferencia de los paquetes de entrada, por lo que resulta complicado para
compras, hábitos, nivel educativo, entre otros. Todo ello por el atacante conocer quiénes se comunican. Los mixes son el
medio de múltiples fuentes para propósitos de venta. bloque base para construir todos los sistemas de comunicación
En otras sub-disciplinas de las ciencias computacionales, de alta latencia [12]. Por otro lado en los últimos años, se
la privacidad también ha sido motivo de investigación prin- han desarrollado también sistemas de baja latencia, como por
cipalmente en como las soluciones de privacidad se pueden ejemplo: Crowds [13], Hordes [14], Babel [15], AN.ON [16],
aplicar en contextos especı́ficos. En otras palabras, definir el Onion routing [17], Freedom [18] and Tor [19]. Actualmente,
proceso de cuándo y cómo deben aplicarse las soluciones de la red de comunicación anónima más utilizado es Tor, que
privacidad. Antes de elegir una tecnologı́a de la protección de permite navegar de manera anónima en la web. En [20]
privacidad surgen varias preguntas que deben responderse da- se muestra un comparativo de la ejecución de sistemas de
do que no existe la certeza de que una tecnologı́a soluciona un comunicación de alta y baja latencia.
problema en especı́fico. Una de las preguntas a considerar es
quién define qué es la privacidad, el diseñador de tecnologı́as, II-D. Redes mixes
los lineamientos de la organización, o los usuarios [11]. En 1981, Chaum introduce el concepto de las redes mixes
cuyo propósito es ocultar la correspondencia entre elementos
II-C. Comunicaciones anónimas de entrada con los de salida. Una red de mixes recolecta
Las comunicaciones anónimas tienen como objetivo ocultar un número de paquetes desde diferentes usuarios llamado el
las relaciones en la comunicación. Dado que el anonimato conjunto anónimo, y entonces cambia la apariencia de los
es el estado de ausencia de identidad, las comunicaciones paquetes de entrada a través de operaciones criptrográficas. Lo
anónimas se pueden lograr removiendo todas las caracterı́sticas anterior hace imposible relacionar entradas y salidas. Las pro-
identificables de una red anónima. Consideremos a un sistema piedades de anonimato serán más fuertes en tanto el conjunto
donde se concentra un conjunto de actores en una red de anónimo sea mayor. Un mix es un agente intermediario que
comunicación, tales como clientes, servidor y nodos. Estos oculta la apariencia de un mensaje, incluyendo su longitud.
actores intercambian mensajes por medio de canales públi- Por ejemplo, supongamos que Alice genera un mensaje para
cos de comunicación. Pitfzmann y Hansen [9] definieron el Bob con una longitud constante. Un protocolo emisor ejecuta
anonimato como el estado de ser no identificable dentro de varias operaciones criptográficas a través de las llaves públicas
un conjunto de sujetos, conocido como el conjunto anónimo. de Bob. Después, la red mix oculta la apariencia del mensaje
Una de las principales caracterı́sticas del conjunto anónimo al decodificarlo con la llave privada del mix.
es su variación en el tiempo. La probabilidad que un atacante El proceso inicial para que Alice envı́e un mensaje a Bob
puede efectivamente revelar quién es el receptor de un mensaje utilizando un sistema de mixes es preparar el mensaje. La
es exactamente de 1/n, siendo n el número de miembros en primera fase es elegir la ruta de transmisión del mensaje; dicha
el conjunto anónimo. La investigación en esta área se enfoca ruta debe tener un orden especı́fico para enviar iterativamente
en desarrollar, analizar y llevar a cabo ataques de redes de antes de que el mensaje llegue a su destino final. La siguiente
comunicación anónimas. La infraestructura del Internet fue fase es utilizar las llaves públicas de los mixes elegidos
inicialmente planteado para ser un canal anónimo, pero ahora para cifrar el mensaje, en el orden inverso en que fueron
sabemos que cualquiera puede espiar la red. Los atacantes elegidos. En otras palabras la llave pública del último mix cifra
tienen diferentes perfiles tales como su área de acción, rango inicialmente el mensaje, después el penúltimo y finalmente la
de usuarios, heterogeneidad, distribución y localización. Un llave pública del primer mix es usada. Cada vez que se cifra
atacante externo puede identificar patrones de tráfico para el mensaje una capa se construye y la dirección del siguiente
deducir quiénes se comunican, cuándo y con qué frecuencia. nodo es incluida. De esta manera cuando el primer mix obtiene
En la literatura se ha clasificado a los sistemas de comuni- un mensaje preparado, dicho mensaje será descifrado a través
cación anónima en dos categorı́as: sistemas de alta latencia y de la llave privada correspondiente y será direccionado al
baja latencia. Las primeras tienen como objetivo proporcionar siguiente nodo.
un fuerte nivel de anonimato pero son aplicables a sistemas Los ataques externos se ejecutan desde fuera de la red,
con actividad limitada que no demandan atención rápida tal mientras que los internos son desde nodos comprometidos
como el correo electrónico. Por otro lado, los sistemas de los cuales son de hecho parte de la misma red. Las redes
baja latencia ofrecen mejor ejecución y son utilizados en de mixes son una herramienta poderosa para mitigar los
sistemas de tiempo real, como por ejemplo aplicaciones web, ataques externos al cifrar la ruta emisor- receptor. Los nodos
300 A. Silva, J. Portela, L. J. Garcı́a

participantes de una red mix transmiten y retardan los mensajes III. A LGORITMO
con el fin de ocultar su ruta. Pero es posible que puedan estar
El objetivo de nuestro algoritmo es extraer información
comprometidos y llevar a cabo ataques internos. Este tipo de
relevante sobre las relaciones entre cada par de usuarios.
problema se trata en [13] al ocultar el emisor o receptor de
En [24] se describe el problema, ası́ como el marco base y
los nodos de transmisión.
supuestos. Las tablas de las rondas donde se muestran los
patrones de comunicación entre usuarios se representan con
II-E. Análisis de tráfico valores de 1 si existe relación y 0 en caso contrario. El
atacante es capaz de observar cuántos mensajes son enviados y
El análisis de tráfico pertenece a la familia de técnicas
recibidos, es decir las sumas marginales por fila y columna de
utilizada para deducir información de los patrones de un
cada ronda 1, . . .,T donde T es el número total de rondas.
sistema de comunicación. Se ha demostrado que el cifrado
En cada ronda sólo consideramos usuarios que reciben y
por sı́ mismo no garantiza el anonimato. Aún cuando el
envı́an mensajes. Por lo tanto, decimos que un elemento (i, j)
contenido de las comunicaciones sean cifradas, la información
está presente en una ronda si las marginales correspondientes
de enrutamiento debe enviarse claramente ya que los ruteado-
son diferentes a 0.
res deben determinar el siguiente punto de la red a dónde
Hemos adoptado el término “cero trivial”, que son los
se direccionará el paquete. En [21] se muestran algunos de
elementos que representan pares de usuarios que nunca han
las técnicas de análisis de tráfico utilizadas para revelar las
coincidido en ninguna ronda, Denotando nij el contenido del
identidades en una red de comunicación anónima.
elemento (i, j), ni+ el valor marginal de la fila i, n+j el valor
marginal de la columna j, n la suma de los elementos y r el
II-F. Ataques estadı́sticos número de filas.
La familia de ataques estadı́sticos fue iniciada por Danezis
en [22] donde introdujo el ataque estadı́stico de revelación Algoritmo 1: Descripción del algoritmo
(Statistical Disclosure Attack, SDA). En dicho trabajo se nota 1 Generar n11 de una distribución uniforme entera donde
que llevando a cabo un amplio número de observaciones por i = 1, j = 1;
cierto perı́odo de tiempo en una red de mixes, se puede calcular 2 Iniciar un recorrido por columnas, para cada elemento
la probabilidad de distribuciones de envı́o/recepción de mensa- nk1 en esta columna hasta k − 1, se calculan nuevas
jes y con ello menguar la identidad de los participantes en un cotas para nk1 a partir de la siguiente ecuación:
sistema de comunicación anónimo. A partir de éste ataque se
k−1 r
desarrollaron muchos más tomando como base el análisis de X X 
máx (0, (n+1 − ni1 ) − ni+ ≤
tráfico para deducir cierta información a partir de los patrones
i=1 i=k+1
de comportamiento en un sistema de comunicación.
k−1
Los ataques contra redes de mixes son conocidos también X
como ataques de intersección [23]. Se toma en cuenta la nij ≤ mı́n(nk+ , n+j − ni1 )
i=1
secuencia de un mensaje a través de una misma ruta en
la red, esto quiere decir que se analiza el tráfico. El con- nk1 se genera según un entero uniforme;
junto de los receptores más probables se calcula para cada 3 El último elemento de la fila se rellena automáticamente
mensaje en la secuencia e intersección de los conjuntos lo al coincidir las cotas superior e inferior coinciden,
que permite conocer quién es el receptor de un determinado haciendo n(k+1)+ = 0 por conveniencia;
mensaje. Los ataques de intersección se diseñan basándose 4 Cuando se completa la columna ésta se elimina de la
en la correlación de los tiempos donde emisores y receptores tabla y se recalculan las marginales por fila ni+ y el
se encuentran activos. Al observar los elementos que reciben valor n;
paquetes durante las rondas en las que Alice está enviando 5 La tabla tiene ahora una columna menos y se repite el
un mensaje, el atacante puede crear un conjunto de receptores proceso hasta llenar todos los elementos;
más frecuentes de Alice. La información proporcionada a los
atacantes es una serie de vectores representando los conjuntos
de anonimato observados de acuerdo a los t mensajes enviados Al final lo que obtenemos son una serie de tablas factibles
por Alice. Dentro de la familia de ataques estadı́sticos, cada generadas para cada ronda. Por lo que la media de cada
uno de ellos se modela con un escenario muy especı́fico; y elemento sobre todas las tablas para todas las rondas es una
en algunos casos poco semejantes al comportamiento de un estimación de su valor real. La media obtenida por elemento
sistema de comunicación real. Algunos asumen que Alice tiene y ronda se agrega sobre todas las rondas la cual representa un
exactamente m receptores y que envı́a mensajes a cada uno estimado de la tabla agregada A.
b Para cada elemento, se estima
de ellos con la misma probabilidad, o bien son ataques que la probabilidad de cero, calculando el porcentaje de tablas con
se enfocan en un solo usuario como soluciones individuales elemento cero para cada ronda en que el elemento está presente
que son interdependientes, cuando la realidad indica cuestiones y multiplicando las probabilidades obtenidas para todas esas
diferentes. rondas. En la tabla resultante los elementos se ordenan por
Refinamiento probabilı́stico del Ataque de Revelación de Identidades 301

su probabilidad de cero a excepción de los elementos que babilidades estimadas para cada celda, normalizadas en
son cero triviales. De esta manera, los elementos con menor cada caso a sus restricciones, en lugar de la distribución
probabilidad de ser cero son los que se consideran candidatos uniforme.
a tener una relación. Para llevar a cabo la clasificación selec- 5. Se generan métricas de clasificación binaria y se vuelven
cionamos un punto de corte p y consideramos “celdas cero” a estimar las probabilidades.
si probabilidad de cero > p, en tanto las “celdas positivas” 6. Se itera el proceso a partir del punto 4.
son aquellas donde la probabilidad de cero< 1 − p. Aquellas
IV. A PLICACI ÓN DEL A LGORITMO
celdas que no entran en estas dos categorı́as se les llama “no
clasificadas”. Llevamos a cabo un gran número de simulaciones luego
El algoritmo utilizado en [24] presupone inicialmente equi- de generar rondas. El algoritmo no proporciona soluciones
probabilidad de las tablas extraı́das. Al desarrollarlo se obtie- uniformes, dado que algunas tablas son más probables que
nen, al margen de una primera clasificación de las celdas (i, otras debido al orden utilizado al ir llenando filas y columnas.
j) en 1 ó 0 según exista comunicación o no entre ese par de No nos enfocamos en encontrar soluciones para un solo
usuarios, estimaciones para la tasa de mensajes enviados por usuario, por lo que: i) Reordenamos aleatoriamente filas y
ronda para cada celda. A partir de estas estimaciones iniciales, columnas antes de calcular tablas factibles; ii) Conservamos
puede volver a desarrollarse el algoritmo en un segundo ciclo, solo las tablas factibles diferentes.
en el cual las tablas no se generan con equiprobabilidad. En el La Tabla I presenta los resultados obtenidos aplicando los
primer ciclo del algoritmo el valor de cada celda en cada tabla- algoritmos anteriormente descritos. Los resultados de la itera-
ronda era generado según una distribución uniforme mante- ción 1 corresponden a la aplicación de lo que llamamos primer
niendo las restricciones dadas por la información marginal ciclo [24]; a partir de la iteración 2 se ejecuta el segundo ciclo
conocida. En este segundo ciclo existen varias posibilidades y de acuerdo a los resultados que obtuvimos pudimos observar
teniendo en cuenta las primeras estimaciones: que tres iteraciones nos proporcionaban mejores resultados en
la mayorı́a de los casos. Se puede observar también que la
a. Generar el valor de cada celda en cada tabla-ronda según complejidad de las rondas crece cuando el número de usuarios
una distribución de Poisson cuyo parámetro lambda es la y el número de rondas es mayor.
tasa estimada de mensajes por ronda para esa celda.
b. Generar el valor de cada celda en cada tabla-ronda según Tabla I
R ESULTADOS DE LA S IMULACI ÓN
la distribución de probabilidad discreta del número de
mensajes por ronda en esa celda. Esta distribución es
No. de % de
construida a partir de los resultados del primer ciclo usuarios
Iteración Sensibilidad Especificidad VPP VPN
clasificación
del algoritmo, estimando probabilidades de 0, 1, 2, . . . 1 0.9876 0.5789 0.9166 0.9090 0.91
mensajes según su porcentaje relativo de ocurrencias. 10
2 0.9876 0.9473 0.9473 0.9876 0.98
3 0.9876 0.9473 0.9473 0.9876 0.98
Este segundo ciclo puede volver a servir de base para ciclos 4 0.9473 0.9876 0.9473 0.9876 0.98
1 0.3225 0.9948 0.9090 0.9018 0.90
sucesivos en un proceso iterativo. En los resultados siguientes 2 0.6774 0.9948 0.9545 0.9507 0.95
15
se ha utilizado la opción b). Para llevar a cabo nuestro ataque, 3 0.8387 0.9948 0.9629 0.9747 0.97
4 0.8064 0.9948 0.9615 0.9698 0.96
primero por cuestiones pedagógicas, simulamos los datos de
1 0.1818 0.9857 0.6666 0.8846 0.87
un sistema de correo electrónico. Para la generación de rondas 2 0.7272 0.9857 0.8888 0.9583 0.95
20
definimos el número de usuarios participantes N, lambda que 3 0.8181 0.9857 0.9 0.9718 0.96
4 0.7272 0.9857 0.8888 0.9583 0.95
es el promedio de mensajes enviados por ronda en la celda (i, 1 0.2297 0.9969 90.9444 0.8507 0.85
j) y el número de rondas NR que se desea generar. 25
2 0.4324 1 1 0.8858 0.89
3 0.5540 1 1 0.9080 0.91
1. Con las rondas simuladas se ejecuta el Algoritmo 1 y se 4 0.6486 1 1 0.9261 0.93
obtienen las tablas factibles de cada ronda. Posteriormen- 1 0.1058 0.9981 0.90 0.8764 0.8768
2 0.2235 0.9981 0.95 0.8909 0.8928
te se lleva a cabo un test de clasificación binaria para los 30
3 0.3764 0.9981 0.96 0.9104 0.9136
elementos calculados, donde 0 en la celda (i, j) significa 4 0.3058 0.9981 0.96 0.9013 0.904
1 0.0441 0.9986 0.8571 0.8544 0.85
que no existe relación entre el emisor i y el receptor j, 2 0.2205 0.9986 0.9677 0.8780 0.88
35
en tanto 1 significa que sı́ hay comunicación entre ellos. 3 0.2720 0.9986 0.9736 0.8851 0.89
2. Generar métricas caracterı́sticas para los tests de clasifica- 4 0.2941 0.9986 0.9756 0.8882 0.89

ción binaria (sensibilidad, especificidad, valor predictivo


negativo, valor predictivo positivo). En la Figura 1 se modela la tasa de clasificación respecto
3. Con la información de las tablas factibles para cada a las veces que se ha iterado el algoritmo. Se puede observar
ronda se calculan las frecuencias relativas de 0, 1, 2, . . . una mejora en el porcentaje de clasificación en todos los casos,
mensajes para cada celda y se obtiene una aproximación en relación a la iteración 1.
a la distribución de probabilidad del número de mensajes
por ronda, a partir de la normalización de esas frecuencias V. C ONCLUSIONES
relativas. En las redes de comunicación, los mixes ofrecen protección
4. Se vuelve a ejecutar el algoritmo utilizando las pro- contra observadores al ocultar la apariencia de los mensajes,
302 A. Silva, J. Portela, L. J. Garcı́a

R EFERENCIAS
[1] B. Krishnamurthy. “Privacy and Online Social Networks: can color less
green ideas sleep furiosly?” IEEE Security and Privacy, Vol. 11, No. 3,
pp. 14–20, May 2013.
[2] A. Westin. “Privacy and Freedom”, Vol. 25, New York: Atheneum:
Washington and Lee Law Review, 1968.
[3] R. Gellman y P. Dixon. “Online Privacy: A Reference Handbook”, Santa
Barbara, CA.: ABC - CLIO, September, 2011.
[4] R. Gross and A. Acquisti. “Information revelation and privacy in online
social networks”, Proceedings of the 2005 ACM workshop on Privacy in
the electronic society, Alexandria, VA, USA, pp. 71–80, November 2005.
[5] European Commission. “Press release: Privacy Enhancing Technologies
(PETs)”, May 2, 2007.
[6] L. Fritsch. “State or the art of privacy-enhancing technology (PET)”,
Norwegian Computing Center Report, Oslo, Norway, 2007.
[7] The META Group, “State of the art of privacy-enhancing technology
(PET)”, Danish Ministry of Science, Technology and Innovation, Den-
mark, March, 2005.
[8] C. Adams. “A Classification for Privacy Techniques”, University of
Ottawa Law and Technology Journal, Vol. 3, No. 1, pp. 35–52, 2006.
Figura 1. Tasa de clasificación vs. Número de iteración [9] A. Pfitzmann y M. Hansen. “Anonymity, unlinkability, unobservability,
pseudonymity, and identity management: a consolidated proposal for
terminology”, TU Dresden, February 2008.
[10] D. Solove. “A Taxonomy of Privacy”, University of Pennsylvania Law
sus patrones, longitud y enlaces entre emisores y receptores. Review, Vol. 154, No. 3, January, 2006.
El objetivo de este trabajo es desarrollar un ataque estadı́stico [11] C. Diaz y S. Gurses. “Understanding the landscape of privacy techno-
logies”, Proc. of the Information Security Summit, pp. 58–63, Prague,
global para revelar la identidad de emisores y receptores en una Czech Republic, May, 2012.
red de comunicaciones que está protegida por técnicas estándar [12] D. Chaum. “Untraceable electronic mail, return addresses, and digital
basadas en mixes. Para efecto de refinar nuestro ataque toma- pseudonyms”, Communications ACM, Vol. 24, No. 2, pp. 84–90, Fe-
bruary 1981.
mos en cuenta las tablas factibles no repetidas, calculamos [13] M. K. Reiter y A. D. Rubin. “Crowds: anonymity for Web transac-
las frecuencias relativas para cada celda y obtuvimos una tions”, ACM Transactions on Information Security and System Security
aproximación a la distribución de probabilidad del número (TISSEC), Vol. 1, No. 1, pp. 66-92, November 1998.
[14] B. Levine y C. Shields. “Hordes: a multicast based protocol for
de mensajes. El método puede ser aplicado en otro tipo de anonymity”, Journal of Computer Security, Vol. 10, No. 3, pp. 213-240,
sistemas de comunicación como por ejemplo en redes sociales September 2002.
y protocolos punto a punto; asimismo puede ser implementado [15] C. Gulcu y G. Tsudik. “Mixing Email BABEL”, in Proceedings of the
1996 Symposium on Network and Distributed System Security, pp. 2-16,
fuera del dominio de las comunicaciones como la revelación San Diego, CA, USA., February 1996.
estadı́stica de tablas públicas y la investigación forense. Nues- [16] O. Berthold, H. Federrath y S. Kospel. “Web MIXes: A system for
tro método es afectado por muchos factores como el número anonymous and unobservable Internet access”, in Proceedings of the
International workshop on Designing Privacy Enhancing Technologies:
de usuarios y el número promedio de mensajes por ronda lo Design Issues in Anonymity and Unobservability, pp. 115-129, Berkeley,
que deriva a una alta complejidad de las tablas que influye CA, USA., July 2000.
de manera negativa en el ataque. El alcance en la tasa de [17] D. Goldschlag, M. Reed y P. Syverson. “Hiding Routing Infomation”,
in Proceedings of the the First Workshop on Information Hiding, pp.
clasificación muestra que entre mayor es el número de rondas 137-150, London, UK, 1996.
se obtienen mejores resultados. Finalmente iteramos el algorit- [18] A. Back, I. Goldberg y A. Shostack. “Freedom systems 2.1. security
mo. Es necesaria mayor investigación para definir con cuántas issues and analysis”, Zero Knowledge Systems, May 2001.
[19] R. Dingledine, N. Mathewson y P. Syverson. “Tor: The second-
iteraciones se pueden ver mejores resultados. De acuerdo a generation onion router”, in Proceedings of the the 13th USENIX Security
la literatura revisada, podemos concluir que los protocolos de Syposium, pp. 303-320, San Diego, CA, USA, August 2004.
anonimización propuestos hasta ahora consideran escenarios [20] K. Loesing. “Privacy-enhancing Technologies for Private Services”,
University of Bamberg, 2009.
muy especı́ficos. Los ataques estadı́sticos de intersección se [21] M. Edman y B. Yener. “On Anonymity in an Electronic Society:
centran en un usuario solamente, sin considerar las relaciones A Survey of Anonymous Communication Systems”, ACM Computing
entre todos los usuarios. Surveys, Vol. 42, No. 1, pp. 1–35, December 2009.
[22] G. Danezis. “Statistical disclosure attacks: Traffic confirmation in open
environments”, in Proceedings of the Security and Privacy in the Age of
Uncertainty Conference, (SEC2003), Kluwer, pp. 421–426, May 2003.
AGRADECIMIENTOS [23] J. F. Raymond. “Traffic Analysis: Protocols, Attacks, Design Issues,
and Open Problems”, in Proceedings of the International Workshop on
El Grupo de Investigación GASS agradece la infraestructura Designing Privacy Enhancing Technologies: Design Issues in Anonymity
and Unobservability”, New York, NY, USA, 2001.
proporcionada por el Campus de Excelencia Internacional [24] J. Portela Garcı́a-Miguel, D. Rupérez Cañas, A. L. Sandoval Orozco,
(CEI) Campus Moncloa Clúster de Cambio Global y Nuevas A. G. Silva Trujillo y L. J. Garcı́a Villalba. “Ataque de Revelación
Energı́as (y, más concretamente, el sistema EOLO como de Identidades en un Sistema de Correo Electrónico”, Actas de la XII
Reunión Española sobre Criptologı́a y Seguridad de la Información
recurso de computación de alto rendimiento HPC - High (RECSI 2012), Donostia-San Sebastián, España, Septiembre 2012.
Performance Computing), infraestructura financiada por el
Ministerio de Educación, Cultura y Deporte (MECD) y por
el Ministerio de Economı́a y Competitividad (MINECO).
RECSI 2014, Alicante, 2-5 septiembre 2014

Herramienta para la Compensación de Parámetros


de QoS y Seguridad
Ana Nieto, Javier Lopez
Departamento de Lenguajes y Ciencias de la Computación
Universidad de Málaga, España
Email:{nieto,jlm}@lcc.uma.es

Resumen—El análisis conjunto de mecanismos de seguridad No obstante, el análisis conjunto de los mecanismos de
y QoS es esencial para las redes heterogéneas donde diversos seguridad y QoS deberı́a basarse en el estudio de relaciones
dispositivos pueden coexistir en entornos dinámicos. En concreto, paramétricas, es decir, relaciones de dependencia entre los
los dispositivos no siempre pueden ser conocidos, por lo que
diferentes requisitos y mecanismos pueden surgir para el análisis. parámetros que definen la composición de los mecanismos
En este artı́culo, proponemos una herramienta para facilitar la de seguridad y los de QoS. Además, definir estas relaciones
configuración de entornos basada en el análisis paramétrico de en base a un contexto es básico para expresar la relevancia de
dependencias, tomando como base de conocimiento un conjunto los parámetros, relaciones, operaciones y otros componentes y
de parámetros de seguridad y QoS. Esta forma de análisis de propiedades, que tienen cabida en el sistema de información.
parámetros a alto nivel permite considerar las dependencias
y la compensación entre mecanismos con independencia del I-A. Definición de un Modelo para el Análisis de Relaciones
sistema de información subyacente. Posibilita por tanto evaluar
el impacto que tales mecanismos, y otros definidos acorde al Paramétricas basado en el Contexto (CPRM)
modelo, tienen sobre un sistema previo a su despliegue. En base al paradigma actual y futura convergencia de las
Palabras clave—CPRM; QoS; PRM; Seguridad; redes, en [6] definimos un modelo para estudiar las relaciones
paramétricas basado en el contexto, denominado CPRM por
I. I NTRODUCCI ÓN Y F UNDAMENTOS sus siglas en inglés (Context-based Parametric Relationship
Diversos modelos para el análisis conjunto de aspectos de Model). Dicho modelo define la estructura de un sistema en
seguridad y calidad de servicio (QoS) emergen como conse- base a un conjunto de parámetros y sus relaciones, un conjunto
cuencia directa de la amplia diversidad de dispositivos que de operaciones que definen efectos sobre los parámetros de-
componen las redes heterogéneas. En particular, los modelos pendientes, y una estructura de pesos que define la relevancia
genéricos para el análisis del balanceo o compensación de subjetiva y no subjetiva de los componentes del modelo.
requisitos de seguridad y QoS son, desde el punto de vista Por ejemplo, un administrador puede considerar subjeti-
práctico, los más relevantes para las redes heterogéneas de vamente que la confianza es un parámetro clave para la
composición dinámica, en las que no se puede prever con gran subsistencia del sistema de información. En ese caso, el
exactitud los dispositivos que formarán la red. parámetro confianza tendrı́a un peso mayor en el sistema que
Definimos un modelo genérico para el análisis de la com- otros parámetros menos relevantes dado el caso. A su vez, los
pensación de seguridad y QoS como aquel que se abstrae de mecanismos que implementen el valor de confianza podrı́an
detalles especı́ficos de una tecnologı́a y que ofrece la posi- heredar la relevancia o peso de su parámetro padre, en este
bilidad de integrar en el estudio cualquier tipo de tecnologı́a caso, el parámetro confianza. Estos valores subjetivos estarı́an
y dispositivo a distinto nivel. De hecho, podemos encontrar sujetos a la variabilidad del contexto, de forma que en un
algunos ejemplos de modelos genéricos en la literatura que se momento dado, ya sea por las medidas de seguridad adoptadas
ajustan en mayor o menor medida a esta definición [1], [2], o por el entorno donde está el individuo, su relevancia puede
enfoques más especı́ficos sobre seguridad o QoS [8], [4], [5], variar. Por ejemplo, en un entorno familiar bien definido,
[3], y otros, que emplean técnicas paramétricas para mejorar la el parámetro confianza y los mecanismos estrechamente de-
configuración de servicios [10]. Por ejemplo, en [1] se emplean pendientes podrı́an relajar su relevancia de no existir otras
técnicas de model checking para verificar las equivalencias dependencias que se lo impidan. Esto es ası́, porque en el
entre especificaciones de seguridad y QoS, con el objetivo de contexto hogar el individuo podrı́a asumir que la confianza
controlar los flujos de información ilegı́timos en el sistema. No viene dada por su ubicación. Aunque no tiene porqué ser ası́.
obstante, obliga a definir un modelo de comunicación entre las Además, el modelo también contempla valores no subjeti-
aplicaciones del sistema, restringiendo por tanto su ámbito de vos; destinados a definir el impacto o reacción en cadena que
uso. Alternativamente, en [2] se define un modelo basado en el podrı́a ocasionar una dependencia. Estos valores, se definen,
contexto, que proporciona una función de utilidad para tener en primer lugar, de forma aproximada en las dependencias del
en consideración las preferencias del usuario. Sin embargo, contexto general (GC, General Context), mientras que, una vez
no permite medir el impacto que unos parámetros del sistema que los parámetros son instanciados, el peso es actualizado al
tienen sobre otros, y el conjunto de contextos es limitado. contexto particular (PC, Particular Context).
Herramienta para la Compensación de Parámetros de QoS y Seguridad 304

A PRM
1  wp1 wpA
CPRM
wd(1,5) ,5
(2
) 2  wp2 CPRMi

wd(A,C) wd(2,4) 3  wp3 B


wd

,C) wp B
w d(B
wd(1,4) wd(3,4)
4   wp4 3,5) A B C
wd(
5  wp5 1   3   5  
1   3   4  
wp
C C 2   3   5  
2   3   4  
A, B, C, parámetros instanciados.
1,2,3,4,5, parámetros instancia.

Figura 1. Instanciación de Parámetros. Figura 2. Interfaz de Administración.

La Figura 1 muestra parte de un sistema de dependencias modelo (PRM, CPRM, CP RMi ) y de contexto (GCs y PCs),
paramétrico instanciado siguiendo el modelo CPRM dada su salvar cualquier esquema en ficheros para su posterior uso y
definición en [6]1 . La descripción de la formulación ma- modificación, ası́ como el espacio de trabajo completo, con los
temática asociada a las dependencias, ası́ como las reglas de modelos y contextos asociados. También es posible extraer o
coherencia para la integración de contextos pueden consultarse eliminar contextos de los esquemas de modelo contextuales
en trabajos previos con más detalle [7]. En este caso, nos (CPRM, CP RMi ). El objetivo final es el análisis dirigido a
centramos en la visión general de cómo la integración de los la obtención de mediciones sobre el modelo de dependencias:
parámetros y su instanciación quedarı́an reflejadas. 1. Incremento y decremento de parámetros.
Partimos de un conjunto de parámetros que definen, de 2. Selección de conjuntos de parámetros por tipo y nivel.
forma general, el escenario a evaluar. Este contexto base (BC) 3. Selección de parámetros instanciados (llamados padre)
es fijo y no varı́a, y se encuentra en el PRM 2 . Pueden variar o bien de sus instancias (llamadas hijos) para distinguir
los pesos/relevancia de los parámetros, pero el BC siempre entre diferentes opciones de configuración.
queda presente a la espera de que sus parámetros, relaciones, 4. Calcular árboles de dependencias especı́ficos para un
niveles, tipos y operaciones tomen los valores de contexto parámetro, con el fin de posibilitar un examen más
definidos en el GC y, posteriormente, en los sucesivos PCs. exhaustivo sobre el proceso de incremento/decremento.
El BC es el resultado de un proceso de análisis exhaustivo A su vez, SQT permite visionar los resultados mediante
sobre las arquitecturas y el entorno donde la herramienta diagramas de barras superpuestas que indican el impacto de
tendrá cabida. En nuestro caso, surge del estudio de mecanis- un conjunto de parámetros en el resto de parámetros del
mos de Seguridad y QoS en el Internet del Futuro [7]. Aunque sistema, o bien sobre un conjunto especı́fico, en base al
la herramienta propuesta permite definir BC personalizados, tipo/nivel, etc. También es posible seleccionar un parámetro
siendo por tanto extensible a otros ámbitos de estudio, nuestro en particular, como veremos en el caso de estudio. Otro modo
principal objetivo es su uso para el análisis de la compensación de representación empleado es el uso de grafos, por medio de
entre parámetros de Seguridad y QoS. En efecto, el BC que GraphViz. Ası́, el modelo de dependencias es representado
proporcionamos define dichos tipos de relaciones y no otros, mediante un grafo, en el que los parámetros se muestran
que deberı́an ser agregados con posterioridad, según el caso. acorde con la representación del tipo y agrupados por niveles
En este artı́culo proporcionamos las directrices básicas para según se define en el modelo.
la implementación y el uso del modelo por medio de una Para posibilitar el cumplimiento de tales requisitos, la
herramienta desarrollada a tal efecto, a la que denominaremos herramienta implementa un conjunto de reglas de coherencia
SQT, por sus siglas en inglés Security and QoS tradeoff Tool. definidas para el modelo en [6]. El cumplimiento de estas
SQT proporciona un interfaz gráfico para la administración reglas garantiza que el sistema paramétrico final mantiene la
(Figura I-A) permitiendo al operador importar esquemas de coherencia entre las dependencias.
El resto del artı́culo se divide como sigue. La Sección II
1 Hacemos referencia al modelo que define las estructuras PRM, CPRM,
muestra los detalles de implementación del prototipo conforme
CP RMi (modelo instanciado a partir de un CPRM) y la relación entre sus los requisitos dados. La Sección III estudia la usabilidad del
componentes como CPRM.
2 De cara a nuestro estudio, el BC no representa una estructura contextual, prototipo para el análisis de la compensación entre parámetros
ya que los parámetros en el BC (en el PRM) carecen de pesos. de Seguridad y QoS. Por último, exponemos las conclusiones
Herramienta para la Compensación de Parámetros de QoS y Seguridad 305

y el trabajo futuro. En particular, empleamos las funciones getGC y getPC


para extraer o generar un contexto en base a una estructura
Create PRM and .dot file Llamada a getCPRMinstance paramétrica. En el caso de getGC, si la estructura introdu-
PRM = PARAMETRIC_DEFAULT()
instantiated(CPRM)
cida es un PRM, y, por consiguiente, sin contexto asociado,
PRM
Get General Context (GC) tipos especiales agregados
generará un GC asociado a los parámetros de la estructura.
PRM
GC = getGC(PRM)
uniqueIdentifiedModel(CPRM,PC)
Si, por el contrario, recibe un CPRM o un CP RMi , que son
GC
Get Contextual-based PRM (CPRM) CPRM & PC con parámetros unificados
estructuras con un GC asociado, entonces devolverá el GC
CPRM = getCPRM(GC, PRM) convetParamToLayer asociado a la estructura. De igual forma, getPC sólo devuelve
CPRM
get Particular Context (PC)
getLayerInfo los PC asociados a una estructura cuando están definidos,
getIDdepAntCon
getPC(CPRM, M, P)
CPRM
es decir, cuando la entrada es un CP RMi . En otro caso,
PC
Get CPRM instance (CPRMi)
devolverı́a un PC aleatorio adecuado al tipo de estructura5 .
getCPRMinstance(PC, CPRM) addParametersAndCombine Por otra parte, las funciones getCPRM y getCPRMinstance
CPRMi asocian contextos con modelos. Es decir, getCPRM recibe un
show results addDependencies
Accumulative Influence
modelo y un GC que asignará al modelo. De esta asignación
Accumulative Dependence
Impact on the system: increasing and decreasing CreateDotFileINSTANCE se obtiene un modelo paramétrico contextualizado (CPRM)
coherente. El caso de getCPRMinstance es ligeramente distin-
(a) Generación CP RM i. (b) Integración de un PC. to, ya que en un CP RMi varios PCs pueden coexistir. Aunque
Figura 3. Modelo de Componentes. ambas funciones persiguen obtener una estructura nueva a
partir de un modelo y un contexto, en el caso de getCPRMi
se precisa un análisis mucho más exhaustivo.
II. P ROTOTIPADO DEL M ODELO Dado que un CP RMi es una instancia de un CPRM, se
espera que sea una estructura dinámica, donde los PCs son
El prototipo del modelo CPRM fue implementado en
intercambiados con mucha más frecuencia que un GC, que,
Matlab, ofreciendo una versión plug-in. Para el uso de SQT
aunque puede ser modificado, se asume que es una parte
con toda su funcionalidad, debe instalarse GraphViz, a fin de
mucho más estable. Por tanto, el caso en el que diferentes
interpretar los ficheros .dot que contienen las dependencias 3 .
parámetros se identifiquen igual en un CP RMi y un PC
Los siguientes apartados abordan el diseño de SQT.
podrı́a ser posible, dada la diversidad de escenarios que
II-A. Modelo de Componentes podrı́an definirse como PC. Estos casos deben considerarse
para no solapar comportamientos de distintos parámetros.
El diseño de SQT está basado en el uso de componentes, Este es sólo un ejemplo de los aspectos a contemplar en la
tanto desde el punto de vista arquitectural, como desde el integración de PCs en un CP RMi .
punto de vista de la integración de contextos, considerados La Figura 3(b) muestra de forma más detallada la secuencia
como componentes intercambiables. Ası́, teniendo en cuenta de acciones realizadas por la función de integración de PCs,
que en un CPRM puede existir un único GC, cualquier getCPRMinstance. Esta función recibe una estructura CPRM y
estructura de modelo puede ser ampliada/modificada usando la transforma en el primer paso para incluir los tipos y campos
SQT por medio de la agregación/sustitución de un GC, y de adicionales en una estructura CP RMi . Si la estructura ya es
tantos PCs como sea preciso. Cuando en el CPRM se integra un CP RMi , entonces no realiza ningún cambio inicial, se
un PC, decimos que se genera una instancia del CPRM y lo considera que la estructura está instanciada.
denotamos como CP RMi .
El siguiente paso, es asegurarnos de que los identificadores
Ası́ mismo, de cara a facilitar la tarea de análisis, es
de los parámetros en el modelo, ya un CP RMi , no coinciden
preciso que podamos volver a una versión anterior del modelo
con los identificadores de los parámetros del PC. Tras este
retirando el último contexto agregado, o construir nuevos
paso, obtenemos un modelo unificado, en el que los parámetros
contextos retirando alguno de los contextos integrados (no
del modelo y el contexto significan lo mismo. Para estudiar
necesariamente el último). Esto es posible gracias a las reglas
la compensación paramétrica de los parámetros instancia-
de integración y coherencia definidas para el modelo que
dos, getCPRMinstance convierte en niveles los parámetros
implementa SQT [6], y a la definición de la cadena de
padre, es decir, aquellos parámetros p para los que existen
integración y estructuras de datos descritas aquı́.
parámetros en PC que instancian a p (de forma matemática:
Para permitir dicha funcionalidad, la integración de compo- p|∃p2 ∈ P C, p ∈ P (p2)). Estos niveles contienen información
nentes se efectúa en SQT conforme al diagrama de actividad de interés para, en caso de retirar el PC que provocó la
mostrado en la Figura 3(a), en el que se ilustra la creación instanciación, que el nivel asociado a un padre desaparezca
de un CP RMi a partir de un PRM4 , para un caso de prueba. y se restaure como parámetro sin instanciar.
Para ello, creamos estructuras intermedias por defecto.
Por último, se establecerán las dependencias que heredará el
3 Los ficheros .dot pueden ser modificados directamente o interpretados hijo, y se crearán aquellas necesarias para mantener el modelo
desde otras herramientas.
4 En este ejemplo, el PRM es creado usando una función por defecto acorde 5 M y P indican el número de parámetros instancia que queremos que se
a la definición del modelo. generen por cada parámetro del modelo que se recibe como entrada.
Herramienta para la Compensación de Parámetros de QoS y Seguridad 306

coherente. Por ejemplo, si una instancia (hijo) se relaciona con


un parámetro con el que el parámetro padre no tiene relación, S = {D1, D2, D3, D4, D5}; (1)
se agregarı́a una nueva dependencia entre el parámetro padre D1 = #prm, nxtID, {{prm1, id, inf o, f ile}, ...}; (2)
y el parámetro con el que se relaciona el hijo (ej. Figura 1). D2 = #cprm, nxtID, {{cprm1, id, inf o, gcid, f ile}, ...}; (3)
Finalmente, a nivel de análisis, todas las pruebas posi- D3 = #cprmi , nxtID, {{cpmi1, id, inf o, gcid, pclist, f ile}, ...}; (4)

bles sobre un PRM son posibles sobre estructuras CPRM o pclist = [pcid1, pcid2, ...]; (5)
D4 = #gc, nxtID, {{gc1, gcid, inf o, f ile}, ...}; (6)
CP RMi (inclusive la interpretación mediante diagramas .dot).
D5 = #pc, nxtID, {{pc1, gcid1, inf o, f ile}, ...}; (7)
La diferencia sustancial, es que mientras que un PRM es
estático, un CPRM presenta también una visión subjetiva del
contexto de la red, dando más relevancia a unos parámetros, El esquema para el PRM sienta las bases de los esquemas
relaciones u operaciones conforme a las prioridades de admi- definidos para el modelo CPRM y las instancias CP RMi . No
nistración o el conocimiento profundo de la red. Un CP RMi , obstante, hay diferencias que, aunque sutiles en el esquema,
además, permite la integración de partes dinámicas en base suponen un cambio notorio en el proceso de cálculo de SQT.
a particularidades, contextos más variables y fugaces, pero Ası́, mientras que la estructura CPRM supone un punto de
también más especı́ficos. Una vez que se conocen el conjunto inflexión entre un PRM y un modelo instanciado, los cambios
de dispositivos tanto como para establecer sus dependencias realmente relevantes se producen de cara a la definición de
y darles valores no subjetivos, sino próximos a la realidad, un CP RMi . Esto se debe en gran medida a dos factores
partes del GC pueden ser instanciadas con el PC. clave: la definición de los tipos especiales para las instancias
de parámetros y los parámetros instanciados, y la conversión
puntual de parámetros como niveles. Estos factores, junto a
II-B. Estructuras de Datos la capacidad de restauración y modificación del modelo por
medio de la eliminación y agregación de contextos, suponen
Aunque en los ejemplos anteriores se mostró la creación un gran cambio respecto los modelos no instanciados, que
de GCs y PCs por defecto en base a un modelo o estructura, quedan relegados a un desempeño más estático.
cualquier estructura PRM, CPRM, CP RMi , PC o GC tiene II-B1. Estructuras para los Contextos: A modo de ejem-
su formato predefinido con el que son creadas y empleadas. plo, mostramos a continuación dos esbozos de definiciones de
La herramienta mantiene todas estas estructuras como parte GC (Exp. 8-14) y PC (Exp.15-17).
de una estructura general, S, que gestiona los esquemas y
GC(1, 1 : 2) = {N L{id nivel1 peso1; id nivel2 peso2; ...}} (8)
contextos y que puede ser salvada, como espacio de trabajo.
GC(2, 1 : 2) = {N T {id tipo1 peso1; id tipo2 peso2; ...}} (9)
Desde el punto de vista de la implementación, se puede GC(3, 1 : 2) = {N O{id op1 peso1; id op2 peso2; ...}} (10)
considerar que S (Exp. 1) contiene el modelo de datos, GC(4) = {}; (11)
compuesto por las estructuras de modelo y de contexto. En GC(5, 1 : 2) = {N P, N P rop}; (12)
particular, la Tabla I muestra, grosso modo, las diferencias GC(6 : (5 + N P ), 1 : N P rop) = {id param1 peso1; ...} (13)
existentes entre los esquemas de modelo. Éstas, permiten GC(6 + N P, 1 : 2) = {N D, {id dep1 peso1; ...}} (14)
identificar cuándo una estructura de modelo es un PRM, un
CPRM ó un CP RMi , y gestionar las operaciones definidas
Las estructuras de contexto comparten algunos campos
acorde al tipo de estructura y su definición. Las partes comunes
con las estructuras de modelo. Esto es preciso dado que las
entre los modelos, son las que posibilitan la integración basada
primeras pretenden efectuar cambios sobre los componentes de
en componentes. En particular, como parte del esquema PRM,
los modelos (parámetros, relaciones, tipos...). No obstante, los
las propiedades de niveles, tipos, operaciones y parámetros
campos NProp y NP hacen referencia a la propia estructura de
contienen elementos comunes como por ejemplo identificado-
contexto, no a los campos del modelo. Es decir, las estructuras
res inequı́vocos, nombre (string), y forma de representación
de contexto definen su propia forma de extensión. Por ejemplo,
visual en los diagramas Matlab o GraphViz (color y forma).
en la versión actual, la parte de definición de parámetros en un
Además, cada parámetro, una vez calculadas sus dependencias
PC cuenta con 5 campos de propiedad (NProp=5): una lista de
con el resto, conserva la matriz de dependencias paramétrica,
identificadores de parámetros padre (idPadres), el identificador
definida en [7], creada de forma recursiva, que define todas
del parámetro (que puede ser modificado si las reglas de
las relaciones de dependencia posibles que involucran al
integración lo demandan), el nombre del parámetro y el peso.
parámetro. Dichas matrices ocupan espacio en la estructura del
PRM, a cambio de evitar el cálculo de mapas repetidas veces.
P C(1, 1 : 4) = {N P, N prop, N D, {IDpc, descrip.}}; (15)
Se obtienen a su vez de la matriz de dependencias general,
P C(2 : (1 + N P ), 1 : N prop) = {idP adres, id, nombre, peso}; (16)
donde se muestran todas las relaciones simples en su forma P C{3 + N P } = {idP aramA, idOp, idP aramB, peso; ...}; (17)
matricial binaria. Este conocimiento se extrae a su vez de las
denominadas dependencias en bruto (DB), que expresan las
relaciones A → B por medio del identificador del parámetro Dado un PC, cuando un CPRM es instanciado (Fig. 3(b)), se
A, el de la operación de dependencia y el del parámetro B. crean dos tipos especiales: instance e instantiated. Ası́, cuando
Herramienta para la Compensación de Parámetros de QoS y Seguridad 307

Tabla I
C AMPOS PARA LAS E STRUCTURAS DE DATOS DE LOS E SQUEMAS DE M ODELOS

Fila,Columna: Propósito Definición PRM CPRM (cambios sobre PRM) CP RMi (cambios sobre CPRM)
1,1-2: Info. niveles Número de niveles (NL) + Propiedades Agrega a las propiedades de cada nivel Define niveles especiales para los parámetros instancia-
de Niveles un peso wl dos
2,1-2: Info. tipos Número de tipos (NT) + Propiedades de Agrega a las propiedades de cada tipo Agrega los dos tipos especiales: instance e instantiated
Tipos un peso wt
3,1-2: Info. operaciones Número de operaciones (NO) + Propie- Agrega a las propiedades de cada ope- -
dades de Operaciones ración un peso wo
4,1-2: Otra información Directorio por defecto (DD) - Agrega información isobre las instancias realizadas
5,1: NP Propio del modelo
5,2: NProp 5 6 6
5+NP,1-NProp: Parámetros Propiedades de Parámetros Agrega a las propiedades de cada Los parámetros instanciados cambian su nivel por el
parámetro un peso wp nuevo creado como resultado de su instanciación
6+NP,1: Dependencias Dependencias en bruto (DB) ó Matriz de dependencias procesada (MD)
6+NP,2-3: Tras procesar DB matriz de ceros NPxNP + DB Matriz de costes NPxNP + DB -

Tabla II
un parámetro sea instanciado y se cree un nivel a partir de PAR ÁMETROS DEL C ONTEXTO BASE (BC)
éste, se etiquetará al parámetro como instantiated permitiendo
aplicar las reglas de herencia para el cálculo del impacto HIGH-LEVEL REQUIREMENTS
paramédico. A su vez, cuando el parámetro es etiquetado como QoS Reliability, Fault Tolerance, Availability
Security Authentication, Authorization, Confidentiality, Integrity, Trust, Privacy
instance, se espera un identificador del PC que provocó la
LOCAL PROPERTIES
instanciación, y se tiene en cuenta que el parámetro es más Resources PowerConsumption, Memory, Rayleigh Channel, Energy, Compu-
dinámico que un parámetro que no sea instancia. tationTime
Security Anti-Tampering, Encryption, Public Key Cryptography, Symmetric
Cryptography, Secure Key Exchange, Secure Key redistribution, Key
Generation, Signature Scheme
III. C ASO DE U SO Y E VALUACI ÓN
COMMUNICATION
En esta sección mostraremos cómo realizar pruebas para QoS Data Rate, Packet Size, Signal Strength, Data Transmission, Transmis-
sion Time, Transmission Power
estimar la compensación entre requisitos de Seguridad y QoS. Characteristics Time-sleeping, Required-time-on
Consequence Retransmmission
MEASUREMENTS
III-A. Parámetros del Contexto Base QoS Throughput, Delay, Jitter, Packet Loss, Response Time, Bit Error Rate
(BER)
El ejemplo propuesto para el caso de análisis está basado
ENVIRONMENT
en el funcionamiento de una red de sensores. Como tal, QoS Allowable Bandwidth, Error Probability
considera como parte del conjunto de parámetros del contexto Attacks DoS, Malicious Devices
Consequence Interference, Congestion, Overhead, Fading, Shadowing, Noise
base (BC) aquellos parámetros generales que pueden estar
relacionados con una red de sensores, ası́ como las relaciones
entre éstos (consultar [7]). Adaptado al caso que nos ocupa,
los parámetros del BC son mostrados en la Tabla II6 . III-B. Agregación de un Contexto
Aunque el GC por defecto para estos parámetros es ini-
cialmente establecido con peso igual a 1 para todos los Una vez aplicado el GC, podemos aplicar diferentes PCs
parámetros (∀p|p ∈ P RM, wp = 1), es posible establecer un sobre el CPRM resultante. Este hecho conduce a lo que
GC subjetivo, basado en nuestras prioridades de administra- denominamos instanciación del modelo paramétrico. A modo
ción. Por ejemplo, aumentar la relevancia/impacto del cifrado de ejemplo, mostraremos los cambios producidos en el sistema
(Encryption), de tal forma, que todos los parámetros que al aplicar el contexto particular mostrado en la Tabla III, cuyos
tengan una dependencia en la que Encryption se encuentre en pesos son estimaciones acorde al trabajo [9].
el antecedente serán más afectados que el resto de parámetros.
Los parámetros afectados por el incremento del parámetro Tabla III
P ESOS wd CONFORME [9]
Encryption, pueden consultarse usando el árbol paramétrico
particularizado para un parámetro. El efecto, sin embargo, Dependence Weight
podrá variar dependiendo del tipo de relación definida entre
General Parameter Antecedent R Consequent wd
los parámetros y de los pesos definidos para las relaciones. Por
CAS + ECDSA 1
ahora, todos los pesos para las relaciones tienen valor unitario DAS + ECDSA 1
(wd = 1, ∀d : A → B|d ∈ P RM ). Estos pesos pueden Authentication
CAS ¬c Memory 0
DAS ¬c Memory 5
modificarse con un GC, pero en nuestro caso lo haremos con CAS c PacketSize 5
un ejemplo de instanciación de parámetros. DAS c PacketSize 1
ECDSA ¬c Energy 1
6 Las
PairingBased ¬c Energy 5
dependencias entre los parámetros no son mostradas debido a su Signature Scheme
ECDSA c Computation Time 1
extensión. Puede consultarse el diagrama ampliado que contiene estos y otros PairingBased c ComputationTime 5
parámetros en [7].
Herramienta para la Compensación de Parámetros de QoS y Seguridad 308

150
los mecanismos de autenticación CAS y DAS tienen sobre
CAS los parámetros de rendimiento (Figura 4) o de cualquier otro
100
tipo. Note que los parámetros sobre los que se percibe el
efecto no fueron obtenidos de [9], sino que son resultado de
la integración con el BC definido a priori. La información del
50 sistema será mucho más fiable y enriquecedora conforme el
número de PC integrados sea mayor.
0 IV. C ONCLUSIONES Y TRABAJO FUTURO
En este artı́culo proporcionamos las directrices básicas
para la implementación y el uso de una herramienta para la
−50
DataTransmission
TransmissionTime
PacketSize
PowerConsumption

Delay

Overhead
PacketLoss
evalucación de la compensación entre parámetros de Seguridad
Energy

ErrorProbability
Interference
Retransmission
TimeSleeping

J itter
RequiredTimeOn

Noise
ComputationTime

ResponseTime
SignatureScheme

ECDSA
BER
y QoS (SQT). SQT está basada en un modelo genérico para
la compensación paramétrica basado en el contexto (CPRM)
definido en trabajos previos. Un requisito importante perse-
guido es que cualquier contexto pueda ser intercambiado en
un CPRM por otro nuevo o modificado. El caso de estudio
40
abordado muestra cómo es posible emplear SQT para los fines
DAS propuestos.
30

20
AGRADECIMIENTOS
Este trabajo ha sido parcialmente subvencionado por el Mi-
10
nisterio de Economı́a y Competitividad a través del proyecto
0 ARES (CSD2007-00004). Adicionalmente, ha sido financiado
−10 por la Junta de Andalucı́a través del proyecto FISICCO
(TIC-07223). El primer autor ha sido subvencionado por el
−20
Programa FPI.
−30
R EFERENCIAS
−40
DataTransmission
TransmissionTime
PacketSize
PowerConsumption

Delay

Overhead
PacketLoss
Energy

ErrorProbability
Interference
Retransmission
TimeSleeping

J itter
RequiredTimeOn
Memory

Noise
ComputationTime

ResponseTime
SignatureScheme

ECDSA
DAS
BER

[1] Alessandro Aldini and Marco Bernardo. A formal approach to the


integrated analysis of security and qos. Reliability Engineering & System
Safety, 92(11):1503–1520, 2007.
[2] Mourad Alia, Marc Lacoste, Ruan He, and Frank Eliassen. Putting to-
gether qos and security in autonomic pervasive systems. In Proceedings
of the 6th ACM workshop on QoS and security for wireless and mobile
networks, pages 19–28. ACM, 2010.
[3] Siegfried Benkner and Gerhard Engelbrecht. A generic qos infrastructure
Figura 4. Impacto de CAS y DAS sobre el Rendimiento. for grid web services. In Telecommunications, 2006. AICT-ICIW’06.
International Conference on Internet and Web Applications and Servi-
ces/Advanced International Conference on, pages 141–141. IEEE, 2006.
[4] Roland Bless and M Rohricht. Secure signaling in next generation net-
works with nsis. In Communications, 2009. ICC’09. IEEE International
La Tabla III muestra los parámetros generales que serán ins- Conference on, pages 1–6. IEEE, 2009.
tanciados (Authentication y SignatureScheme) y los paráme- [5] Cynthia Irvine and Timothy Levin. Toward a taxonomy and costing
tros instancia (CAS, DAS, ECDSA, PairingBased). Una vez method for security services. In Computer Security Applications
Conference, 1999.(ACSAC’99) Proceedings. 15th Annual, pages 183–
integrado el nuevo contexto, los parámetros de Authentication 188. IEEE, 1999.
y SignatureSheme pasarı́an a ser niveles, y como tales pueden [6] Ana Nieto and Javier Lopez. A context-based parametric relationship
ser consultados. Esta es una ventaja adicional del modelo, ya model (cprm) to measure the security and qos tradeoff in configurable
environment. In IEEE International Conference on Communications
que permite comprobar el efecto que este último cambio de (ICC), pages 755–760. IEEE, 2014.
contexto tuvo sobre parámetros que ya se encontraban en el [7] Ana Nieto and Javier Lopez. Analysis and taxonomy of security/qos
modelo. En el nuevo contexto final, cada vez que se incremen- tradeoff solutions for the future internet. Security and Communication
Networks, In Press.
te el parámetro Authentication o SignatureScheme, también [8] Tarik Taleb, Yassine Hadjadj Aoul, and Abderrahim Benslimane. In-
serán incrementados los parámetros instancia, y con ellos los tegrating security with qos in next generation networks. In Global
parámetros dependientes de éstos, que han podido introducir Telecommunications Conference (GLOBECOM 2010), 2010 IEEE, pages
1–5. IEEE, 2010.
nuevas dependencias para hacer el modelo coherente. [9] Rehana Yasmin, Eike Ritter, and Guilin Wang. An authentication
Finalmente, el proceso de ajuste entre parámetros de Seguri- framework for wireless sensor networks using identity-based signatu-
dad y QoS, se realiza en base al BC definido y la instanciación res. In Computer and Information Technology (CIT), 2010 IEEE 10th
International Conference on, pages 882–889. IEEE, 2010.
del modelo con los mecanismos cuyo impacto en el sistema [10] I-Ling Yen, Hui Ma, Farokh B Bastani, Hong Mei, et al. Qos-
resultante queremos medir. Por ejemplo, una vez introducido el reconfigurable web services and compositions for high-assurance sys-
último contexto (Tabla III), podemos evaluar el impacto que tems. 2008.
RECSI 2014, Alicante, 2-5 septiembre 2014

Monitorización y selección de incidentes en


seguridad de redes mediante EDA
J. Camacho, G. Maciá-Fernández, J. Dı́az-Verdejo, P. Garcı́a-Teodoro
Departamento de Teorı́a de la Señal, Telemática y Comunicaciones - CITIC
Universidad de Granada
Email: {josecamacho, jedv, gmacia, pgteodor}@ugr.es

Resumen—Uno de los mayores retos a los que se enfrentan se limitan básicamente a recopilar e interrelacionar los datos
los sistemas de monitorización de seguridad en redes es el gran procedentes de los sensores con la finalidad de facilitar su
volumen de datos de diversa naturaleza y relevancia que deben análisis y consulta por parte del administrador, mostrándolos
procesar para su presentación adecuada al equipo administrador
del sistema, tratando de incorporar la información semántica más en base a secuencias temporales y/o priorizándolos a partir
relevante. En este artı́culo se propone la aplicación de herramien- de esquemas simples. En algunos casos se incluyen algunas
tas derivadas de técnicas de análisis exploratorio de datos para la heurı́sticas y estadı́sticas simples (p.e., Pravail Security Analy-
selección de los eventos crı́ticos en los que el administrador debe tics3 ), pero es evidente que se requieren métodos y técnicas
focalizar su atención. Adicionalmente, estas herramientas son más potentes y de mayores prestaciones para el análisis y
capaces de proporcionar información semántica en relación a los
elementos involucrados y su grado de implicación en los eventos visualización de los datos. En este contexto, las técnicas de
seleccionados. La propuesta se presenta y evalúa utilizando el análisis exploratorio de datos (EDA) [3] pueden resultar extre-
desafı́o VAST 2012 como caso de estudio, obteniéndose resultados madamente útiles tanto para establecer los eventos relevantes
altamente satisfactorios. en los que el administrador deberı́a centrar su atención, como
Palabras clave—análisis exploratorio de datos (exploratory data para mostrar las propiedades o caracterı́sticas implicadas en
analysis), big data, visualización de datos (data visualization),
seguridad en redes (network security), sistemas de monitorización cada evento.
de seguridad en redes (network security monitoring systems) En este trabajo proponemos y evaluamos una metodologı́a
basada en EDA que proporciona medidas y gráficas para
I. I NTRODUCCI ÓN conseguir el objetivo antes mencionado. Para ello se realiza
Los sistemas de monitorización de la seguridad en redes una elección de herramientas que, secuenciadas adecuada-
(NSM, del inglés Network Security Monitoring) [1] tienen mente, permiten, en primer lugar, determinar los eventos
como finalidad la agregación y análisis de los datos proce- potencialmente relevantes sin intervención del administrador.
dentes de los diversos mecanismos y sensores desplegados en A partir de estos, mediante la obtención e interpretación de
el entorno de red, a fin de validar y, en su caso, responder algunas gráficas, el administrador puede recabar información
a incidentes de seguridad. Aunque suelen incorporar datos semántica respecto de dichos eventos que puede serle de
procedentes de sistemas de detección de intrusiones (IDS, utilidad para la posterior comprobación o supervisión de los
del inglés Intrusion Detection Systems) [2] como elemento mismos.
relevante, no son, en sı́ mismos, sistemas IDS. Por el contrario, El resto del artı́culo se estructura como sigue. En la Sección
su operación está orientada a seleccionar, priorizar y validar II se presentan brevemente las herramientas y técnicas en las
las alertas generadas por otros sistemas de monitorización y que se basan los análisis de datos subsiguientes. En la Sección
trazado de eventos. III se describe el funcionamiento del sistema propuesto, ex-
Entre las limitaciones que deben afrontar los NSM podemos plicitándose la secuenciación de las técnicas y procedimientos
mencionar el gran volumen de datos que deben manejar, ya a aplicar. En la Sección IV se describe la aplicación del
que integran información de múltiples fuentes, muchas de ellas sistema desarrollado al reto VAST 2012 [4], para lo que se
generando un elevado número de registros (p.e., trazas de describirá previamente dicho reto ası́ como la parametrización
cortafuegos, de sesiones, alertas de IDS, etc.). Adicionalmente, realizada, aspecto clave del análisis. Finalmente, en la Sección
los datos deben ser preprocesados, agregados y presentados V se presentan las contribuciones más relevantes del trabajo
al administrador de forma que éste pueda comprenderlos y y se apuntan brevemente algunos trabajos de futuro.
gestionarlos fácilmente. En consecuencia, dos son los retos II. H ERRAMIENTAS DE AN ÁLISIS EXPLORATORIO DE
más relevantes para el diseño de NSM: el análisis de los datos DATOS
y la presentación/visualización de los resultados.
La mayorı́a de los NMS existentes (p.e., Sguil1 o Snorby2 ) El análisis exploratorio de datos (EDA) tiene como objetivo
facilitar el conocimiento y visualización de la estructura que
1 http://sguil.sourceforge.net
2 https://snorby.org 3 http://www.arbornetworks.com/products/pravail/securityanalytics
310 J. Camacho, J. Dı́az-Verdejo, G. Maciá-Fernández, P. Garcı́a-Teodoro

presenta un conjunto de datos. Para ello utiliza una serie de variables nos permiten identificar los tipos de tráfico o
técnicas y herramientas que permiten analizar su propiedades incidentes que tienen lugar en la red.
relevantes y presentarlas de forma adecuada para facilitar su oMEDA: Los gráficos oMEDA permiten comparar valo-
interpretación. Entre las técnicas empleadas se encuentran res de variables en dos grupos de observaciones a partir
algunas bien conocidas como PCA (Principal Component de un diagrama de barras. Ası́, un valor positivo para
Analysis) [6], ası́ como otras más novedosas, propuestas re- una variable en oMEDA significa que el primer grupo
cientemente por parte de los autores, como son MEDA [7] y de observaciones presenta un valor mayor para dicha
oMEDA [8]. variable que el segundo grupo, mientras que un valor
A continuación, se describen brevemente las técnicas utili- negativo representa lo contrario. En el contexto de la
zadas: seguridad, oMEDA se utiliza para identificar las variables
PCA: El análisis de componentes principales permite relacionadas con un evento anómalo, comparando dicho
transformar un conjunto de N observaciones, cada una evento con la tendencia genérica en la red. El resultado
de ellas con M variables o componentes que pueden nos permite determinar caracterı́sticas del evento anóma-
estar correlacionadas entre sı́, a un nuevo espacio de lo, que potencialmente nos pueden permitir identificar las
caracterı́sticas decorrelacionadas denominadas compo- causas de dicho evento y, en su caso, proponer medidas
nentes principales (Principal Components o PCs). Sin paliativas o de respuesta de forma veloz y eficaz.
entrar en detalles, que pueden consultarse en [5], si X Las herramientas descritas se encuentran implementadas en
es la matriz de datos, de dimensión N × M , el análisis un módulo para Matlab
c desarrollado por uno de los autores
PCA permite expresar estas observaciones de acuerdo a: [12].

X = TA · PtA + EA , (1) III. M ONITORIZACI ÓN Y VISUALIZACI ÓN :


ARQUITECTURA Y METODOLOG ÍA
donde A es el número de PCs incluidas en el modelo,
TA es la matriz N × A de puntuaciones (scores), PA La metodologı́a de monitorización y visualización de in-
la matriz M × A de cargas (loadings), compuesta por cidentes de seguridad propuesta se basa en la detección e
los A autovectores de XX := X0 · X con los mayores interpretación de anomalı́as a partir del análisis PCA, para
autovalores asociados, y EA la matriz N ×M de residuos. lo que se usan las gráficas de Hotelling T2 y Q, junto con
En el contexto del análisis de datos podemos decir, de MEDA y oMEDA para determinar las variables y relaciones
forma coloquial, que el objetivo de este análisis es retener entre ellas asociadas a dichas anomalı́as. Esta combinación
la mayor información posible sobre los datos con el de herramientas resulta extremadamente útil para los fines
menor número posible de parámetros. El procedimiento mencionados en escenarios caracterizados por un elevado
para la selección adecuada de A depende de la aplicación número de datos y parámetros.
concreta considerada [9]. El resto de herramientas se En la Figura 1 se muestra un diagrama de bloques del
basan en el modelo PCA. sistema planteado para NSM. Como puede observarse, se
Gráficos de evolución: Los gráficos de evolución, uti- consideran dos bloques diferenciados que se discuten a conti-
lizados ampliamente en el entorno industrial, permiten nuación.
visualizar de forma simple la parte del modelo y de los
residuos obtenida en la ec. (1) para el conjunto de ob- III-A. Preprocesado
servaciones. Para ello, se obtienen una pareja de gráficos
a partir del leverage o estadı́stico T2 de Hotelling, que En este bloque se preparan los datos procedentes de las
comprime la información en el modelo, y la estadı́stica fuentes para su análisis. Las secuencias de datos de entrada
Q [10], que comprime la información en el residuo. son preprocesadas y parametrizadas de acuerdo a un conjunto
En el contexto de la seguridad, ambas gráficas permiten de caracterı́sticas/variables seleccionadas.
identificar con sencillez cualquier evento anómalo. Cada variable contabiliza el número de veces que, durante
MEDA: Los gráficos MEDA son mapas de color de un cierto intervalo de tiempo w, aparece cierto valor o valores
tamaño M ×M en los que se representa la relación (posi- en los registros (logs) del dispositivo fuente. A modo de
tiva o negativa) existente entre las parejas de variables de ejemplo, una variable podrı́a contabilizar el número de veces
un conjunto de datos. Los coeficientes de MEDA son una que un puerto determinado, p.e., el 21 (ftp), aparece en las
variante de la correlación menos sensible al ruido y, por trazas durante un periodo de 1 minuto. La motivacion para esta
tanto, con mejores cualidades para detectar la estructura elección es que el número de entradas en una traza en las que
en los datos. Para facilitar la visualización de los gráficos aparece un puerto concreto puede proporcionar información
MEDA, se suele usar un método de serialización [11] para detectar eventos asociados a un protocolo.
que reordena las variables de acuerdo a un criterio de Aunque el sistema de parametrización puede diseñarse de
similitud. De esta forma es más fácil identificar grupos forma especı́fica para los dispositivos de monitorización y
de variables, ya que tienden a formar cuadrados en el detección disponibles en la red, se pueden definir ciertas
gráfico. En el contexto de la seguridad, los grupos de buenas prácticas de diseño:
Monitorización y selección de incidentes en seguridad de redes mediante EDA 311

Datos F1 Evento1 – Variables1


Evento 2 – Variables2
MEDA

... Parametrización EWMA PCA EventoN - VariablesN

Líneas de
OMEDA
tiempo
Datos FN Preprocesado
Preprocesado
Análisis y visualización
visualizaci

Figura 1. Diagrama de bloques del sistema.

Seleccionar una variable por nivel de seguridad, prioridad A partir del modelo PCA se obtiene la estructura de las
o alarma en los registros del dispositivo (por ejemplo, variables con los gráficos MEDA y la evolución temporal
variable ”warning variable ”critical”).
2
(lı́neas de tiempo) de los estadı́sticos Hotelling T2 y Q, que
Seleccionar una variable por código en los registros del serán utilizados para detectar anomalı́as, las cuales se reflejan
dispositivo (por ejemplo, variable contador del código en estos gráficos por picos en la evolución. Para cada anomalı́a
ASA-4). o conjunto de anomalı́as próximas en el tiempo se obtienen
Seleccionar una variable por dirección IP o grupo de gráficos oMEDA para determinar cuáles son las variables
direcciones IP con sentido topológico o funcional en la relacionadas con dicha anomalı́a.
red (por ejemplo, variable contador de la IP del DNS De la metodologı́a propuesta resulta relevante su capa-
local o de las IPs de un departamento concreto). cidad, no sólo para manejar grandes volúmenes de datos,
Seleccionar una variable por grupo de puertos relaciona- sino también para gestionar una alta dimensionalidad. Es
dos con un protocolo de interés (por ejemplo, variable decir, los eventos u observaciones del sistema pueden ser
contador del puerto 80 y el 8080). representados con tantos parámetros como se estime opor-
En cada intervalo de tiempo w, se combinan las carac- tuno, no siendo problemática la introducción de información
terı́sticas evaluadas para cada fuente en un único vector, → −
xt , redundante o relacionada, que será adecuadamente procesada
que será la observación correspondiente al instante t sobre por los esquemas PCA subyacentes. Por el contrario, cuantos
la que se realizarán los análisis posteriores. A continuación, más parámetros se incluyan, mayor sera la información que
esta observación se utiliza para actualizar, siguiendo una podrá extraerse. Esta es una caracterı́stica diferencial de la
estrategia de media móvil de peso exponencial o EWMA propuesta, ya que la mayorı́a de las herramientas de análisis
(Exponentially Weighted Moving Average), la matriz XX que de redes operan sobre series de datos unidimensionales o de
representa el estado actual de la red monitorizada. La matriz reducida dimensionalidad [13].
se actualiza con la entrada de nuevos datos de la forma IV. C ASO DE ESTUDIO : APLICACI ÓN A VAST 2012
XXt = λ · XXt + → −
xt 0 · →

xt , donde 0 ≤ λ ≤ 1 es un factor de
La mejor forma de explicitar y mostrar las potencialidades
olvido que permite descartar información pasada.
de la metodologı́a propuesta en la sección anterior es aplicarla
III-B. Análisis y visualización y explicarla en un escenario concreto. Para ello considera-
remos el segundo reto del VAST 2012 [4].
En el segundo bloque se realizan todas las operaciones Este reto considera un escenario correspondiente a una
necesarias para el análisis de los datos, visualización y pos- red corporativa bancaria con varias sedes y acceso a Internet
terior interpretación. Se inicia el procesamiento realizando (Figura 2) en la que ocurren incidentes de seguridad durante
un análisis PCA de XX. La aproximación utilizada para la dos dı́as. El desafı́o consiste en determinar los eventos más
parametrización, a diferencia de las habitualmente utilizadas relevantes, sus causas y las posibles soluciones.
en los NSM, puede generar un elevado número de parámetros Los datos proporcionados consisten en una traza de un
y, consecuentemente, una alta dimensionalidad de las obser- cortafuegos Cisco ASA, conteniendo 23.711.341 registros, y
vaciones. Sin embargo, esto no supone un problema dado el la salida generada por un IDS, que incluye 35.948 registros.
análisis PCA que se realiza a continuación. Usando PCA, Los conjuntos de datos, su descripción y los detalles sobre el
el sistema permite identificar eventos donde se correlacionan reto se encuentran disponibles en [4].
las variables contador antes mencionadas, permitiendo de
forma sencilla establecer puertos, segmentos de red, niveles IV-A. Parametrización y preprocesado
de seguridad vulnerados en firewall o IDS, etc., asociados a De acuerdo a la metodologı́a propuesta, los datos pro-
cada evento anómalo. cedentes de las trazas del IDS y del cortafuegos se han
312 J. Camacho, J. Dı́az-Verdejo, G. Maciá-Fernández, P. Garcı́a-Teodoro

Figure 3. Bank of Money Regional Headquarters Network


Figura 2. Red utilizada en el reto VAST 2012.

Tabla I
parametrizado agregando los datos durante periodos de w = 1 N ÚMERO DE PAR ÁMETROS DEFINIDOS PARA CADA TIPO DE
minuto. La elección de la ventana temporal viene determinada CARACTER ÍSTICA .
por la resolución temporal de las trazas del IDS, que impiden
el uso de ventanas de menor tamaño. Se obtienen ası́ 2.350 Campo #parámetros
observaciones, ordenadas temporalmente. Prioridad syslog 5
Cada observación del sistema corresponde a un vector de Operación 6
Trazas cortafuegos

112 caracterı́sticas o variables que representa la información Código del mensaje 25


procedente de ambas fuentes de datos. En particular, se han Protocolo 3
asignado 69 variables para las trazas del cortafuegos y las Dirección IP 9
restantes 43 para las trazas del IDS. En la Tabla I se muestran Puerto 17
los números de parámetros establecidos para cada campo Dirección 2
presente en las trazas. Ası́, se consideran 17 parámetros aso- Tiempos conexión 2
ciados a cada uno de los puertos correspondientes a servicios Subtotal 69
estándar (número de puerto inferior a 1024) que aparecen en Dirección IP 9
Trazas IDS

las trazas. En el caso de las direcciones IP, se han establecido Puerto 17


9 parámetros a partir de la topologı́a de la red y de los rangos Tipo alerta 5
de direcciones existentes. En la Tabla II se muestran algunos Prioridad 3
de los parámetros seleccionados. La notación utilizada hace Etiqueta 9
referencia a la fuente de los datos (fw o ids) y al significado Subtotal 43
o flag asociado a cada uno.

IV-B. Análisis y visualización ejemplo, uno de los cuadrados rojos relaciona logs de prioridad
Una vez realizada la parametrización de los datos de entrada media en el IDS (ids_prio2) reportando intentos de robo
se procede a realizar un análisis PCA que será la base para de información (ids_leak) en el firewall (ids_ipfwhq)
el resto del estudio. A partir del modelo PCA, se obtiene utilizando el protocolo VNC (ids_lvnc).
un gráfico MEDA (Figura 3) que muestra la existencia de MEDA nos da una idea de eventos de seguridad comunes
agrupaciones de variables en el conjunto de datos (cuadrados en nuestra red, pero no incorpora información temporal. La
rojos). MEDA nos permite establecer, a nivel general, las evolución temporal se analiza con los gráficos de evolución,
relaciones comunes entre variables en nuestra red. A modo de Figura 4, donde las posibles anomalı́as se identifican como los
Monitorización y selección de incidentes en seguridad de redes mediante EDA 313

Tabla II
E JEMPLOS DE PAR ÁMETROS UTILIZADOS Y VALORES ASOCIADOS . 2000
Parámetro Campo Valor(es) asociado(s)
fw syscritical Prioridad syslog Critical
fw syserror Prioridad syslog Error 1434 & 1435
1500 374 & 375
fw as37 Código mensaje asa-3-710003
fw pshell Puerto 514

Leverage
ids ipfwr Dirección IP 10.32.0.100 o 172.25.0.1
ids iplog Dirección IP 172.23.0.2 1000 1418
ids misc Clasificación Misc. activity 1480

394
500 31 & 32
20 40 60 80
1 443 & 442

10
20 0
0.5 500 1000 1500 2000
30 (a)
40
50 0
7000
60
374 & 375
6000 1, 11,
70 −0.5 13, 15, 17,
31, 32

Squared Residuals
80 5000 1418 1480

90 394
4000
−1 1434
1455−1457
3000
1271 1654−1656
Figura 3. MEDA para todo el conjunto de datos. 156
& 994
2000 157 1674−1676
237

1000
valores más altos.
Las observaciones seleccionadas como anomalı́as son ana- 0
500 1000 1500 2000
lizadas, bien en solitario, bien en grupos de observaciones
(b)
consecutivas, para determinar las variables que hacen de ellas
valores anómalos. A este fin, como se indicó en la Sección Figura 4. Evolución temporal de leverage (a) y residuo (b).
III, se obtienen gráficos oMEDA.
Para ilustrar el procedimiento, consideraremos el gráfico 1400
oMEDA de las observaciones {1,11,13,15} (Figura 5). A partir 1200
de esta gráfica se identifican dos parámetros con valores muy
altos: fw iplog (variable 54) y fw syslog (variable 55). De 1000

acuerdo a esta información, el administrador puede concluir 800


que las anomalı́as se encuentran relacionadas con el puerto
d2A

600
syslog en el servidor de trazas fw iplog. En el caso de las
observaciones {374, 375}, dos de las que mayores valores 400
proporcionan en las lı́neas de tiempo, se identifican de forma 200
análoga las variables ids lssh, ids pssh, fw ptelnet, ids limap,
0
ids lpop3, ids leak, ids ipfwhq e ids prio2 como asociadas
a la anomalı́a. Esto apunta a la existencia de problemas −200
20 40 60 80
relacionados con intentos de acceso o fuga de información
en los servicios SSH, IMAP y POP. El análisis manual de las Figura 5. oMEDA para las observaciones {1,11,13,15}
trazas para el periodo de tiempo asociado a las observaciones
nos lleva a la conclusión de que en este periodo se produ-
cen escaneos e intentos reiterados de acceso en los puertos inspección e intrepretación de los registros asociados a dichas
correspondientes, lo que resulta coherente con la información observaciones, tanto en las trazas de IDS como de cortafue-
proporcionada por el sistema. gos. Los detalles de dicho análisis exceden los objetivos del
presente artı́culo, por lo que a continuación nos limitaremos
IV-C. Resultados a relacionar los incidentes encontrados y a comparar nuestros
A partir de la información obtenida en los pasos previos, hallazgos con los de otros autores participantes en el reto,
tanto a nivel de observaciones a supervisar como de las incluyendo los ganadores [14] (Tabla III).
variables implicadas en cada caso, se ha procedido a la Como resultado del análisis realizado, se han identificado
314 J. Camacho, J. Dı́az-Verdejo, G. Maciá-Fernández, P. Garcı́a-Teodoro

Tabla III
I NCIDENTES DE SEGURIDAD REPORTADOS POR NUESTRO SISTEMA Y POR Consecuentemente, una de las lı́neas de trabajo futuro debe
LOS DE OTROS AUTORES . centrarse en la integración de todas las herramientas en un
NMS de fácil uso, automatizando el sistema y posibilitando
Anomalı́a Propuesta [14] [15] [16]
Ataques DNS/Controlador X el acceso a los datos originales a partir de los hallazgos del
Intentos de intrusión al cortafuegos X X X mismo para su inspección por parte del administrador.
Tráfico FTP hacia nodos externos X X
Actividad IRC X X X AGRADECIMIENTOS
Errores en trazas X
Este trabajo ha sido parcialmente financiado por el MICINN
a través del proyecto TEC2011-22579.

las siguientes actividades sospechosas, para las que también R EFERENCIAS


se han obtenido los intervalos de actividad: [1] R. Bejtlich, “The Tao of Network Security Monitoring”, Addison-Wesley,
2004.
Ejecución remota no interactiva. [2] P. Garcı́a-Teodoro, J. Dı́az-Verdejo, G. Maciá-Fernández, E. Vázquez,
DNS spoofing hacia el servidor DNS y el controlador de “Anomaly-based network intrusion detection: Techniques, systems and
dominio. Esta actividad se circunscribe a la red interna. challenges”, Computers & Security, 28(1):18–28, 2009.
[3] G. Keren, C. Lewis, “A Handbook for data analysis in the behavioral
Escaneo de puertos en el cortafuegos. sciences: statistical issues,“, L. Erlbaum, 1993.
Ataques de buffer overflow y denegación de servicio [4] “Vast challenge 2012”, http://www.vacommunity.org/vast+challenge+
hacia el servidor DNS y el controlador de dominio. 2012.
[5] I.T. Jollifee, “Principal component analysis”, Springer-Verlag, 2002.
Actividad IRC continuada. [6] P. Geladi, B.R. Kowalski, “Partial Least-Squares Regression: a tutorial”,
Adicionalmente, algunas de las anomalı́as encontradas han Analytica Chimica Acta, 185:1–17, 1986.
[7] J. Camacho, “Missing-data theory in the context of exploratory data
resultado en la constatación de errores de formato en los analysis,” Chemometrics and Intelligent Laboratory Systems, 103:8–18,
archivos de traza en un volumen no despreciable. Estos 2010.
errores no habı́an sido informados por ninguno de los autores [8] J. Camacho, ”Observation-based missing data methods for exploratory
data analysis to unveil the connection between observations and variables
participantes en el reto ni en publicaciones posteriores. in latent subspace models,” Journal of Chemometrics, 25(11):592–600,
Se puede comprobar (Tabla III) que el sistema propuesto ha 2011.
permitido identificar no sólo los eventos previamente hallados [9] J. Camacho, A. Ferrer,“Cross-validation in {PCA} models with the
element-wise k-fold (ekf) algorithm: Practical aspects,” Chemometrics
por otros autores, sino algunos nuevos (ataques DNS y errores and Intelligent Laboratory Systems, 131:37–50, 2014.
en las trazas) a partir del análisis de un reducido número de [10] J.E. Jackson, “A User’s Guide to Principal Components,” Wiley, 2003.
observaciones seleccionadas por el mismo. Adicionalmente, [11] G. Caraux and S. Pinloche, “Permutmatrix: a graphical environment to
arrange gene expression profiles in optimal linear order,” Bioinformatics,
dicho análisis ha sido realizado de forma dirigida, focalizando 21(7):1280–1, 2005.
la atención en las variables sugeridas a partir de la metodologı́a [12] J. Camacho, “EDA toolbox”, disponible en http://wdb.ugr.es/
∼josecamacho/downloads.php, 2013.
propuesta.
[13] R. Marty, “Applied Security Visualization,” Pearson Education, 2008.
[14] F. Fischer, J. Fuchs, F. Mansmann, D. A. Keim, “Banksafe: A visual
V. C ONCLUSI ÓN situational awareness tool for large-scale computer networks: Vast 2012
En este trabajo se ha propuesto un sistema para la mejora challenge award: Outstanding comprehensive submission, including
multiple vizes,” en Proc. IEEE VAST, pp. 257–258, IEEE Computer
de las prestaciones de los NSM existentes en tres aspectos Society, 2012.
clave: la integración y parametrización de la información [15] Y. Cao, R. Moore, P. Mi, A. Endert, C. North, R. C. Marchany, “Dynamic
procedente de diversas fuentes heterogéneas, la selección analysis of large datasets with animated and correlated views: Vast 2012
mini challenge 2 award: Honorable mention for good use of coordinated
automática de los incidentes más relevantes y la incorporación displays.‘”, en Proc. IEEE VAST, pp. 283–284, IEEE Computer Society,
de información semántica al proceso de análisis. Cada una 2012.
de estas contribuciones resulta relevante, ya que facilitan la [16] L. Shi, Q. Liao, C. Yang, “Investigating network traffic through com-
pressed graph visualization: Vast 2012 mini challenge 2 award: good
tarea de los administradores de seguridad durante el proceso adaptation of graph analysis techniques,” en Proc. IEEE VAST, pp. 279–
de monitorización y verificación de las alertas generadas por 280, IEEE Computer Society, 2012.
los sistemas automáticos, que pueden resultar muy numerosas
y, consecuentemente, inmanejables.
La metodologı́a propuesta ha mostrado una gran capacidad
para dirigir al administrador hacia los incidentes relevantes
y su interpretación. La evaluación realizada sobre el reto
VAST12 ha permitido identificar todos los incidentes repor-
tados hasta la actualidad en dicho reto, ası́ como algunos que
no habı́an sido detectados.
El sistema se encuentra actualmente implementado en la-
boratorio a nivel de realización de los análisis PCA y la
obtención de las diferentes gráficas de forma no integrada, esto
es, se requiere de la intervención del administrador en cada
paso para ejecutar y proporcionar las entradas a cada módulo.
RECSI 2014, Alicante, 2-5 septiembre 2014

Sistema de Detección de Anomalı́as para protocolos


propietarios de Control Industrial
Iñaki Garitano1 , Mikel Iturbe, Ignacio Arenaza-Nuño, Roberto Uribeetxeberria, Urko Zurutuza

Dpto. de Electrónica e Informática


Escuela Politécnica Superior
Mondragon Unibertsitatea
Email: {igaritano,miturbe,iarenaza,ruribeetxeberria,uzurutuza}@mondragon.edu

Resumen—Las Infraestructuras Crı́ticas, ofrecen servicios salvaguardar la seguridad y el correcto funcionamiento de


esenciales para el funcionamiento de sociedades modernas y se las CIs e ICSes ante las APTs y otros softwares maliciosos,
controlan mediante Sistemas de Control Industrial. Garantizar ya que de ello depende en gran medida el bienestar de las
su seguridad es primordial debido a las graves consecuencias que
puede acarrear un ataque exitoso. Además, la reciente aparición sociedades avanzadas. Además, la seguridad es un proceso
de gusanos diseñados de manera exclusiva evidencia el creciente continuo donde cada medida de seguridad aporta o establece
interés que sufren dichos sistemas. Las soluciones de seguridad una barrera más, en un entorno donde no existe la seguridad
existentes se centran en protocolos de red públicos de Sistemas de absoluta. De ahı́ que sea necesario encontrar y desarrollar
Control Industrial, dejando a un lado los propietarios, debido en nuevas técnicas de seguridad que sean capaces de detectar no
gran medida a su desconocimiento. Con el propósito de ofrecer
un mecanismo de seguridad integral, tanto para protocolos solo ataques bien conocidos, sino también posibles amenazas
propietarios como públicos, a lo largo de este artı́culo se presenta que pudiesen alterar el funcionamiento de los ICSes.
un Sistema de Detección de Anomalı́as basado en el payload Los Sistemas de Detección de Intrusiones (Intrusion Detec-
y el flujo de los paquetes, en conjunto con un método capaz tion Systems, IDS) se clasifican en base a distintos parámetros
de describir el comportamiento de red mediante un conjunto como bien pueden ser: el origen de los datos auditados, el
de reglas. La validación se ha realizado utilizando un Sistema
de Control Industrial real. El bajo número de falsos positivos método de detección o el modo de repuesta. Si bien es cierto
demuestra su validez. que los IDSes se pueden catalogar en base a distintos atributos,
Palabras clave—detección de anomalı́as (anomaly detection), en el entorno de los ICSes se clasifican principalmente en
protocolos propietarios (proprietary protocols), sistemas de control base al método de detección. Aquı́ podemos diferenciar dos
industrial (Industrial Control Systems) grandes familias: las que se basan en el conocimiento, también
I. I NTRODUCCI ÓN conocidos como los basados en firmas, y los que se basan en
el comportamiento, conocidos como Sistemas de Detección de
Los Sistemas de Control Industrial (Industrial Control Anomalı́as (Anomaly Detection Systems, ADS).
Systems, ICS) hacen referencia al conjunto de elementos El método tradicional de detección de intrusiones está ba-
especializados en la monitorización y control de procesos sado en firmas, donde las firmas describen patrones de ataque
industriales, los cuales incluyen las Infraestructuras Crı́ticas y el tráfico de red es analizado para ver si corresponde con
(Critical Infrastructures, CIs), necesarias para el correcto alguna de las firmas. Esta estrategia sólo detecta ataques
funcionamiento de las sociedades avanzadas. conocidos, debido a que es necesario conocer los detalles de
Las Amenazas Persistentes Avanzadas (Advanced Persistent un ataque para crear las firmas que lo describan. Por ello, los
Threats, APTs) suponen una nueva generación de software IDSes basados en el conocimiento son ineficientes a la hora
malicioso y sofisticado. Con unas metas concretas y bien de detectar APTs [4]–[5] y ataques desconocidos (zero-day
definidas, tienen un nivel de eficacia muy elevado y son attacks).
sigilosas durante su ejecución, siendo capaces de ocultarse Las diferencias existentes entre los ICSes y las tradicionales
ante las posibles medidas de seguridad. Algunas de las APTs Tecnologı́as de la Información y de las Comunicaciones, tales
diseñadas para atacar a las CIs e ICSes son Stuxnet [1] y Duqu como los protocolos de red correspondientes a los ICSes
[2], cuyos objetivos son la interrupción de los servicios o el o la falta de recursos de la mayorı́a de los componentes
ciberespionaje y el robo de información. industriales, ponen de manifiesto la necesidad de la creación de
Los ataques contra los ICSes, y en consecuencia la inte- medidas de seguridad especialmente diseñados para los ICSes
rrupción de sus servicios, podı́a acarrear serias consecuencias [6]–[7]. Si bien es cierto que la seguridad de red se puede
de diversa ı́ndole (económica, medioambiental. . . ), potencial- aportar a través de mecanismos de seguridad, tales como cor-
mente catastróficas, como muestran el impacto causado por tafuegos o IDSes, estos últimos son especialmente adecuados
algunos ataques anteriores [3]. Por ello, es de vital importancia debido a las peculiaridades del tráfico de red industrial. En la
1 Afiliación actual: University Graduate Center at Kjeller (UNIK), Noruega. mayorı́a de los casos, aun teniendo un ICS que controla un
Email: igaritano@unik.no proceso fı́sico continuo y cambiante, la comunicación entre
316 I. Garitano, M. Iturbe, I. Arenaza-Nuño, R. Uribeetxeberria, U. Zurutuza

los Master Terminal Unit (MTU) o servidores de control reduciendo de esta manera la sobrecarga de cálculo. Aunque
y los Remote Terminal Unit (RTU) o Programmable Logic es una mejora de PAYL [13], sin embargo Anagram presenta
Controller (PLC), siguen patrones repetitivos y prácticamente algunas deficiencias y es susceptible a ataques como demos-
estáticos [8]. Esta caracterı́stica permite describir el tráfico de traron Pastrana et al. [14].
red a través de patrones de comportamiento para su posterior McPAD [15] utiliza una versión modificada de análisis
utilización por los IDSes. basado en bigramas con el objetivo de detectar octetos co-
Mientras que la mayorı́a de los ICSes utilizan protocolos rrespondientes a shellcodes. Sin embargo, McPAD, en el caso
públicos, también es cierto que un número importante de de existir ligeras diferencias entre el conjunto de aprendizaje
ICSes utilizan protocolos propietarios. Es decir, protocolos y un ataque, no es eficiente a la hora de detectar ataques.
privados cuyas especificaciones se desconocen o sólo están Hadžiosmanović et al. [4] realizan una comparación de
disponible bajo acuerdos de confidencialidad. Actualmente, la diferentes algoritmos basados en n-gramas para el análisis de
mayorı́a de las soluciones y tecnologı́as de seguridad sólo anomalı́as en protocolos binarios entre los que se encuentra el
están disponibles para protocolos públicos, lo cual pone de protocolo de control industrial Modbus. Entre los algoritmos
manifiesto la necesidad de crear herramientas de seguridad analizados, Anagram [12] es el que mejores resultados obtiene
capaces de trabajar tanto con protocolos públicos como pro- a la hora de detectar anomalı́as en las pruebas realizadas con
pietarios. el protocolo de control Modbus.
Otra aproximación a la detección de anomalı́as en tráfico
I-A. Contribución y organización del artı́culo
desconocido es la realizada por Hoeve [16], el cual presenta
A lo largo de este artı́culo se presenta un método para una metodologı́a para detectar intrusiones en tráfico de control
la detección de anomalı́as de protocolos industriales tanto cifrado. Para ello no inspeccióna la carga útil de los paquetes,
propietarios como públicos, que se transportan por encima del sino que se basa en separar las inserciones de tráfico produci-
protocolo TCP/IP. La detección se realiza mediante el análisis das por comandos, y reconocer las inserciones conocidas para
de la carga útil o payload de los paquetes de red y la informa- luego alertar de las que no lo son. Sin embargo, a la hora
ción de los flujos de la red. La sección II recopila el trabajo de detectar anomalı́as en tráfico de control, es más deseable
realizado en el campo de los detectores de anomalı́as que una granularidad de inspección alta [17] ya que es capaz de
agrupan la carga útil de los paquetes o trabajan con protocolos identificar ataques de inyección de datos.
cifrados. La sección III describe la arquitectura del sistema
de detección de anomalı́as presentado. La sección IV muestra III. D ESCRIPCI ÓN DEL SISTEMA
los resultados experimentales que miden el rendimiento del
sistema presentado. Por último, las secciones V y VI extraen Entre los ADS mencionados en la sección II no hay ninguno
las conclusiones e identifican posibles lı́neas futuras de trabajo, que combine la información granulada de la carga útil junto
respectivamente. con la información de flujo que posibilite la detección de
anomalı́as en protocolos de control industrial. En esta sección
II. T RABAJOS RELACIONADOS presentamos una solución aplicable a protocolos propietarios
Existe una gran variedad de ADSes relacionados con los y públicos, que utiliza la agrupación de los octetos de la
ICSes ([9]–[10]). La mayorı́a de los ADSes responden a proto- carga útil, sin intentar interpretar su contenido, junto con la
colos públicos, es decir, protocolos cuyas especificaciones son información de flujo para la detección de anomalı́as. Cabe
conocidas. Esto permite conocer el propósito de los campos mencionar que la idea principal del ADS presentado es crear
que componen cada paquete de red, lo cual hace posible saber un modelo de comportamiento para cada segmento de red entre
qué está transportando la carga útil del paquete. Ası́ el ADS los posibles RTUs y MTUs del sistema. Posteriormente cada
será capaz de detectar las anomalı́as cada vez que el contenido modelo es sintetizado en un conjunto de reglas los cuales
se queda fuera del criterio preestablecido. Esta metodologı́a es describen el comportamiento esperado, no los patrones de
conocida como Deep Packet Inspection (DPI). Sin embargo, ataque.
en el caso de protocolos propietarios la carga útil de las tramas La figura 1 muestra la estructura del ADS propuesto. El pro-
de red es ininteligible, lo cual dificulta en gran medida el uso ceso de generación del patrón de comportamiento del tráfico
de la metodologı́a DPI. de red y su sintetización en reglas se hace en modo fuera de
Aunque no directamente relacionados con protocolos pro- lı́nea, para luego utilizarlo en tiempo real. Ası́ se establece
pietarios, varios ADSes agrupan las cargas útiles de los paque- si el tráfico de red se rige bajo unos limites preestablecidos.
tes para detectar anomalı́as. Estos sistemas están generalmente Seis componentes forman el ADS presentado, descritos a
basados en n-gramas, cuya viabilidad para detectar anomalı́as continuación:
en cualquier tipo de tráfico lo demostraron Bigham et al. Analizador de paquetes. Captura el tráfico de red y filtra
[11], incluso en algunos casos en los que el tráfico de red los protocolos comunes tales como DNS o ARP dejando sólo
está cifrado. el tráfico ICS relevante. Una vez obtenido y filtrado, guarda
Anagram [12] es un detector de anomalı́as basado en el tráfico capturado en un fichero binario con formato pcap.
análisis de n-gramas capaz de detectar ataques miméticos. Extractor de caracterı́sticas. Recibe un fichero de captura
Para este fin utiliza la randomización junto con filtros Bloom, como entrada y extrae todas las caracterı́sticas necesarias para
Sistema de Detección de Anomalı́as para protocolos propietarios de Control Industrial 317

01010011100101001011
0111011010111010101000101
1110101100100100100001011
0010111001000101100010110
Extractor de n length data
Ensamblador
características de datos
0010101110101011111010101
1101010001010010010100010
1001001001100100001

Tráfico Descripciones
de red Descripciones de de grupos
capturado paquetes

Analizador Generador
de paquetes de reglas

Reglas
generadas
Fuera de línea

Tráfico En línea
de red

Red industrial

Tráfico
de red Sistema de
Centro de
detección
notificaciones
de anomalías

Figura 1. Componentes del Sistema de Detección de Anomalı́as.

crear el patrón de comportamiento que posteriormente será sin- compara la misma posición de octeto de todos los
tetizado en reglas. Estas son las caracterı́sticas extraı́das: paquetes y ası́ identifica las columnas (los octetos) cuyo
Número de paquete valor cambia entre diferentes filas (paquetes).
Timestamp 4. Agrupa las columnas adyacentes cuyo valor cambia
Dirección IP de origen y destino entre las distintas filas. Ası́ se crean grupos de octetos
Número de puerto de origen y destino cuya longitud, n, es el número de octetos cambiantes
Longitud de la carga útil (número de octetos) consecutivos. La tabla I muestra cinco grupos distintos,
Carga útil (cadena hexadecimal) siendo tanto el grupo dos como el cinco del flujo 2
Ensamblador de datos. Es la pieza clave de todo el sistema bigramas, esto es, grupos formados por dos octetos.
y donde reside la lógica del método presentado. Su función 5. Identifica la posición del octeto inicial de cada grupo y
se centra en analizar y comparar cada octeto de la carga útil anota tanto la posición como el número de octetos que
de todos los paquetes que forman el mismo flujo de tráfico de lo constituyen.
red y en base a los criterios preestablecidos, formar grupos de 6. Identifica y anota todos los posibles valores de cada
octetos y extraer sus caracterı́sticas. A continuación se detalla grupo, es decir, los distintos valores de los octetos que
cada uno de los pasos que realiza el ensamblador de datos: forman cada grupo.
7. Una vez identificados y definidos todos los grupos, la
1. Ordena los paquetes según al flujo de red al que per-
información se envı́a al siguiente componente del ADS,
tenecen, esto es, los clasifica en base a la dirección IP
el generador de reglas.
de origen y dirección IP de destino. Una vez ordenados,
extrae el contenido por encima del protocolo TCP/IP, la Generador de reglas. Este componente es el encargado
carga útil, de cada uno de los paquetes. de sintetizar el patrón de comportamiento, cada grupo y sus
2. Por cada flujo de red, organiza los octetos de la carga útil caracterı́sticas, en un conjunto de reglas. Dichas reglas serán
de los paquetes en filas y columnas. Cada fila contiene utilizadas posteriormente por el ADS, con el fin de comparar
la carga útil de un único paquete, mientras que cada la situación en tiempo real con el patrón de comportamiento
columna está formada por un único octeto, el octeto de red y ası́ detectar las anomalı́as. Nótese que cada conjunto
correspondiente a la posición de la columna. de reglas describe el tráfico de un único proceso industrial
3. Por cada columna compara todas las filas, esto es, y un único segmento de red, por ello es necesario crear un
318 I. Garitano, M. Iturbe, I. Arenaza-Nuño, R. Uribeetxeberria, U. Zurutuza

Tabla I
E JEMPLO DE LOS GRUPOS DE OCTETOS .

Núm. Carga útil (Octetos)


paquete 1 2 3 4 5 6 7 8 9 10 11 12 13 14
1 32 01 00 07 56 80 04 A0 00 00 40 61 20 ...
2 32 01 00 07 66 80 05 60 00 00 40 71 20 ...
7 32 01 00 07 76 80 04 A0 00 00 40 61 20 ...
Flujo 1. Carga útil de los paquetes que forman el flujo dirección IP
de origen 192.168.1.2 y dirección IP de destino 192.168.1.240.

Grupo 1 Grupo 2 Grupo 3

Núm. Carga útil (Octetos)


paquete 1 2 3 4 5 6 7 8 9 10 11 12 13 14
3 32 03 00 00 75 68 00 02 00 D0 00 00 04 ...
4 32 03 00 00 76 68 00 02 00 90 00 00 04 ...
5 32 07 00 00 00 00 00 0C 00 D6 00 01 12 ...
Flujo 2. Carga útil de los paquetes que forman el flujo dirección IP
origen 192.168.1.240 y dirección IP destino 192.168.1.2.

Grupo 1 Grupo 2 Grupo 3 Grupo 4 Grupo 5

nuevo conjunto de reglas para cada segmento de red o proceso de reglas.


industrial, además de cuando el proceso en cuestión sufre La tabla II muestra las dos reglas generadas para los
alteraciones. Las reglas generadas siguen el formato de Snort primeros dos grupos del flujo 1 mostrados en la tabla I. La
[18], un IDS basado en el tráfico de red flexible y ligero. Las primera regla, la cual corresponde al primer grupo, verifica si
reglas permiten a una versión modificada de Snort verificar el los paquetes cumplen los siguientes requisitos:
contenido de cada paquete de red para comprobar si la carga Utiliza el protocolo TCP.
útil contiene alguna anomalı́a. La dirección IP de origen es 192.168.1.2.
Las reglas de Snort se dividen en dos secciones lógicas: El puerto de origen es 102.
la cabecera y las opciones. El propósito de la cabecera es Está dirigido a cualquier puerto de la IP 192.168.1.240.
establecer la acción que Snort deberá realizar en el caso de El tamaño de la carga útil es mayor a ocho octetos.
detectar alguna anomalı́a e identificar cada flujo de paquetes. El contenido del octavo octeto no corresponde a los
Para ello, en la cabecera se definen las siguientes opciones: valores 0x56, 0x66 ó 0x76.
Acción de la regla. Define qué acción realizar cuando se Tiene los flags ACK y PUSH de TCP.
cumplen las opciones definidas en la regla. Sistema de detección de anomalı́as. El objetivo de este
Protocolo de red. componente es comparar en tiempo real el tráfico de red con
Dirección IP de uno de los nodos del flujo. las reglas generadas en modo fuera de lı́nea y en el caso de
Máscara de red de uno de los nodos del flujo. detectar alguna inconsistencia alertar e identificar los paquetes.
Número de puerto de uno de los nodos del flujo. Para ello, se utiliza una versión modificada de Snort [18].
Dirección del tráfico. La razón de modificar Snort es que, por defecto, Snort no
Dirección IP de otro de los nodos del flujo. puede valerse de las reglas creadas por el módulo generador
Máscara de red de otro de los nodos del flujo. de reglas. La mayor limitación reside en que Snort no acepta
Número de puerto de otro de los nodos del flujo. reglas con un número de opciones mayor a 256. Esto limita
En el caso de las opciones de la regla, el número de palabras en gran medida el tamaño y la cantidad de miembros de
clave disponibles es muy elevada, a continuación se detallan los grupos generados. Debido a ello, se ha procedido a la
aquellas que son necesarias para este caso en concreto: modificación de Snort, evitando ası́ que el número de opciones
Mensaje. Define el mensaje a mostrar junto con la alerta. máximo sea un impedimento a la hora de la ejecución.
Tamaño de la carga. En este caso se indica el tamaño Centro de notificaciones. Este componente es una interfaz
mı́nimo. de usuario gráfica que posibilita el análisis de las anomalı́as
Contenido de la carga. Permite buscar contenido especı́fi- reportadas por Snort. Su arquitectura se basa en Basic Analysis
co en la carga útil del paquete. Es este caso su cometido and Security Engine (BASE) [19].
es detectar la ausencia de un valor en concreto.
Posición del octeto inicial del patrón. IV. R ESULTADOS EXPERIMENTALES
Longitud del patrón (número de octetos). La validación del sistema presentado se ha realizado me-
Flags del protocolo TCP. diante el uso de tráfico de red real de un ICS. Cabe mencionar
Número de identificación de la regla. la dificultad de la obtención de tráfico ICS real y que esté libre
Versión de la regla. Identifica inequı́vocamente revisiones de ataque. Además, hasta donde sabemos, no existe ningún
Sistema de Detección de Anomalı́as para protocolos propietarios de Control Industrial 319

Tabla II
E JEMPLO CON LAS REGLAS CREADAS PARTIENDO DE DOS GRUPOS DE LA TABLA I.

alert tcp 192.168.1.2 102 −> 192.168.1.240 any (msg:”plc group1”; dsize:8<; \
content:!”|56|”; offset:8; depth:1; \
content:!”|66|”; offset:8; depth:1; \
content:!”|76|”; offset:8; depth:1; \
flags:PA; sid:1000001; rev:1;)

alert tcp 192.168.1.2 102 −> 192.168.1.240 any (msg:”plc group2”; dsize:10<; \
content:!”|04A0|”; offset:10; depth:2; \
content:!”|0560|”; offset:10; depth:2; \
flags:PA; sid:1000002; rev:1;)

Tabla IV
conjunto de datos estándar para realizar pruebas de este tipo. C ARACTER ÍSTICAS DE LOS PATRONES DE COMPORTAMIENTO
El ICS del cual se ha obtenido el tráfico de red controla un GENERADOS .
proceso de laminación de metal. El tráfico de red ha sido
Núm. Núm. de Núm. de Longitud Longitud
capturado en dos segmentos de red distintos, lo cual permite la captura paquetes grupos mı́n. (octetos) máx. (octetos)
evaluación de la respuesta del sistema ante tráfico diferente. 1 74.856 52 1 71
Las dos capturas se han realizado en condiciones libres de 2 104.141 6 1 227
ataques, en un entorno sin anomalı́as antes, durante y después
de la captura. Los Controladores Lógicos Programables (Pro-
grammable Logic Controller, PLC) y conmutadores de red que que el conjunto de reglas creado tiene una exactitud muy alta.
componen la red del ICS corresponden a las familias Siemens Si se analiza toda la captura de red, no solo el restante 25 %
S7 y Siemens SCALANCE, respectivamente. de los paquetes, sino el total de la captura, el número de falsos
La tabla III muestra los detalles de cada una de las capturas positivos se mantiene. Esto indica que el proceso de genera-
de tráfico de red realizadas para el proceso de generación ción de reglas es capaz de sintetizar en reglas todas las posibles
de reglas y validación del sistema presentado. Las capturas opciones y que el ADS no genera más falsos positivos que lo
tienen una duración de entre dos horas y de dos horas y necesario. Obviamente, el porcentaje disminuye al comparar
media, lo cual se traslada a un total de 309.830 y 329.742 el número de falsos positivos con el total de los paquetes
paquetes de tráfico de red respectivamente. Una vez filtrados capturados (0,016 % y 0,052 % respectivamente). En cuanto
los paquetes, las capturas se componen 99.808 y 138.855 al número de reglas activadas a causa de alguna anomalı́a
paquetes correspondientes al protocolo Siemens S7. detectada, en el caso de la primera captura sólo siete de ellas
han generado una alerta. Eso significa que los 49 paquetes que
Tabla III han registrado un falso positivo, están concentrados en esas
C APTURAS DE RED PARA LA GENERACI ÓN DE REGLAS Y VALIDACI ÓN DEL siete reglas. En cuanto a la segunda captura, la concentración
SISTEMA .
de reglas activadas es todavı́a mayor, ya que pese a que hay
Núm. Duración Núm. total Núm. de un número mayor de paquetes falsos positivos, el número de
captura (segundos) de paquetes paquetes útiles reglas afectadas es menor. Sin embargo, porcentualmente, el
1 9013 309.830 99.808
2 7198 329.742 138.855 número de reglas que generan falsos positivos es mayor en la
segunda captura que en la primera.
Para el proceso de generación de reglas que describen el Tabla V
patrón de comportamiento del tráfico de red, se ha utilizado el R ESULTADOS EXPERIMENTALES : ANOMAL ÍAS DETECTADAS .
75 % de cada captura de red. La tabla IV muestra el número
Núm. de captura
de paquetes utilizado para la creación del patrón de comporta- 1 2
miento, esto es, la creación de los grupos, ası́ como el número Paquetes falsos positivos (F.P.) 49 173
de grupos generados para cada captura y su longitud máxima F.P. vs. restante 25 % de paquetes 0,2 % 0,5 %
F.P. vs. todos los paquetes 0,016 % 0,052 %
y mı́nima en número de octetos. Hay que tener en cuenta que Reglas falsas positivas 7 2
cada grupo se sintetiza en una única regla. Una vez generadas F.P. vs. todas las reglas 13,46 % 33,33 %
las reglas fuera de lı́nea, cada fichero de captura al completo ha
sido comprobado con su conjunto de reglas correspondiente. El número de falsos positivos obtenido se debe en gran
El ADS ha verificado todo el tráfico, alertando al centro de medida a la existencia de un identificador de paquete en
notificaciónes de cada una de las anomalı́as detectadas. el protocolo transportado por encima del protocolo TCP/IP.
La tabla V muestra los resultados obtenidos. En ambos Generalmente, los protocolos de red disponen de un identi-
casos, se puede observar que el número de falsos positivos ficador de paquete, esto es, un número que identifica cada
respecto al 25 % de los paquetes no utilizados en el proceso paquete de manera inequı́voca. Este número se incrementa
de generación de reglas es relativamente bajo, lo cual indica de manera gradual hasta llegar a un lı́mite establecido por
320 I. Garitano, M. Iturbe, I. Arenaza-Nuño, R. Uribeetxeberria, U. Zurutuza

el número de octetos destinados para su representación. Ası́, de todos los paquetes pueden ayudar a una representación más
si las capturas de tráfico incluyeran todos los valores posibles exacta del tráfico de red. Esto harı́a más difı́cil enmascarar un
del identificador de paquete, el número de falsos positivos se ataque, ya que el atacante no sólo deberı́a replicar el contenido
reducirı́a de manera considerable. Con lo cual, el hecho de dinámico de los paquetes, sino también el estático, dificultando
aumentar el tiempo de captura o el porcentaje de la captura ası́ la inserción de código malicioso.
utilizada para la generación de las reglas, reducirı́a el número
R EFERENCIAS
de alertas. Otra solución serı́a la de descartar la regla que
verifica la sección del identificador de paquete, entendiendo [1] N. Falliere, L. O. Murchu, and E. Chien, “W32.Stuxnet dossier,” White
paper, Symantec Corp., Security Response, 2011.
que este campo puede contener todos los valores posibles. [2] B. Bencsáth, G. Pék, L. Buttyán, and M. Félegyházi, “Duqu: Analysis,
No aporta valor verificar un campo cuyo contenido puede ser detection, and lessons learned,” in ACM European Workshop on System
cualquiera. Además, esta solución reducirı́a la carga de trabajo Security (EuroSec), 2012.
[3] B. Miller and D. Rowe, “A survey SCADA of and critical infrastructure
del ADS. Otro de los resultados a resaltar es el hecho de que incidents,” in Proceedings of the 1st Annual conference on Research in
el sistema ha sido capaz de detectar todos aquellos paquetes information technology, pp. 51–56, ACM, 2012.
cuyo contenido se ha modificado de manera manual. [4] D. Hadžiosmanović, L. Simionato, D. Bolzoni, E. Zambon, and S. Etalle,
“N-gram against the machine: On the feasibility of the n-gram network
analysis for binary protocols,” in Research in Attacks, Intrusions, and
V. C ONCLUSIONES Defenses, pp. 354–373, Springer, 2012.
El creciente número de amenazas y el interés que despiertan [5] C. Tankard, “Advanced Persistent threats and how to monitor and deter
them,” Network security, vol. 2011, pp. 16–19, August 2011.
los sistemas de control industrial hace necesaria su protección [6] Keith Stouffer, Joe Falco, and Karen Scarfone, “Guide to Industrial
mediante la creación de nuevos sistemas de seguridad. En este Control Systems (ICS) Security, Special publication 800-82,” tech. rep.,
artı́culo presentamos un sistema de detección de anomalı́as National Institute of Standards and Technology, June 2011.
[7] B. Galloway and G. Hancke, “Introduction to Industrial Control Net-
para protocolos propietarios de ICS basado en la agrupación works,” IEEE Communications Surveys & Tutorials, vol. 15, no. 2,
de los octetos de la carga útil que además utiliza información pp. 860–880, 2012.
de flujo de red. Los protocolos propietarios dificultan la [8] R. Chandia, J. Gonzalez, T. Kilpatrick, M. Papa, and S. Shenoi, “Security
Strategies for SCADA Networks,” in Critical Infrastructure Protection
creación de ADSes debido a la falta de las especificaciones (E. Goetz and S. Shenoi, eds.), vol. 253 of IFIP International Federation
del protocolo. Sin embargo, la carga útil del protocolo puede for Information Processing, pp. 117–131, Springer US, 2008.
ser tratada como un conjunto de datos en crudo del cual [9] I. Garitano, R. Uribeetxeberria, and U. Zurutuza, “A review of SCADA
anomaly detection systems,” in Soft Computing Models in Industrial and
se puede extraer un patrón de comportamiento habitual del Environmental Applications, 6th International Conference SOCO 2011,
sistema. La naturaleza repetitiva y estática del tráfico entre los pp. 357–366, Springer, 2011.
MTUs y RTUs de los ICS hace posible que se puedan detectar [10] B. Zhu and S. Sastry, “SCADA-specific intrusion detection/prevention
systems: a survey and taxonomy,” in Proceedings of the 1st Workshop
anomalı́as, con un margen de falsos positivos relativamente on Secure Control Systems (SCS), 2010.
bajo. [11] J. Bigham, D. Gamez, and N. Lu, “Safeguarding SCADA Systems with
El sistema presentado consta de seis componentes, los Anomaly Detection,” in Computer Network Security (V. Gorodetsky,
L. Popyack, and V. Skormin, eds.), vol. 2776 of Lecture Notes in
cuales generan el patrón de comportamiento del tráfico de Computer Science, pp. 171–182, Springer Berlin Heidelberg, 2003.
red, lo sintetizan en un conjunto de reglas y posteriormente, [12] K. Wang, J. J. Parekh, and S. J. Stolfo, “Anagram: A content anomaly
a través de un IDS modificado, detectan paquetes de red detector resistant to mimicry attack,” in Recent Advances in Intrusion
Detection, pp. 226–248, Springer, 2006.
que se desvı́an del comportamiento habitual del sistema. La [13] K. Wang and S. J. Stolfo, “Anomalous payload-based network intrusion
metodologı́a descrita ha sido validada mediante dos capturas detection,” in Recent Advances in Intrusion Detection, pp. 203–222,
reales de tráfico de ICS, con un porcentaje de falsos positivos Springer, 2004.
[14] S. Pastrana, A. Orfila, J. E. Tapiador, and P. Peris Lopez, “Randomized
por debajo del 0,5 %. El método es extensible a diferentes Anagram revisited,” Journal of Network and Computer Applications,
protocolos de red de control industrial, tanto propietarios como 2014.
públicos, ya que el sistema se abstrae del significado de los [15] R. Perdisci, D. Ariu, P. Fogla, G. Giacinto, and W. Lee, “McPAD: A
multiple classifier system for accurate payload-based anomaly detec-
diferentes paquetes, centrándose sólo en el contenido. tion,” Computer Networks, vol. 53, no. 6, pp. 864 – 881, 2009. Traffic
Classification and Its Applications to Modern Networks.
VI. T RABAJOS FUTUROS [16] M. Hoeve, “Detecting Intrusions in Encrypted Control Traffic,” in
Proceedings of the First ACM Workshop on Smart Energy Grid Security,
A lo largo de este artı́culo, el tráfico se clasifica en base a SEGS ’13, (New York, NY, USA), pp. 23–28, ACM, 2013.
las direcciones IP de origen y destino. La utilización de más [17] D. Hadžiosmanović, D. Bolzoni, S. Etalle, and P. Hartel, “Challenges
caracterı́sticas, como el tamaño del paquete, mejorarı́a el resul- and opportunities in securing industrial control systems,” in Complexity
in Engineering (COMPENG), 2012, pp. 1–6, June 2012.
tado del sistema de detección de anomalı́as. Generalmente los [18] M. Roesch, “Snort – Lightweight Intrusion Detection for Networks,”
paquetes del mismo protocolo de un mismo tamaño tienen el in Proceedings of LISA ’99: 13th Systems Administration Conference
mismo propósito (p. ej. los paquetes generados que actualizan (USENIX, ed.), vol. 99, (Seattle, WA, USA), pp. 229–238, November
1999.
el valor de una temperatura tendrán cargas útiles de la misma [19] A. Flores, J. Fields, A. Graham, J. Hart, K. Johnson, D. Mackie,
longitud). S. Muller, T. Rupp, C. Svensson, and M. Valdez, “Basic Analysis and
Por otro lado, a lo largo de este trabajo solo se han Security Engine,” 2010. Online. Accedido el 14 de Marzo de 2014
http://base.professionallyevil.com.
contemplado aquellos octetos de la carga útil que cambian de
valor a lo largo de distintos paquetes. La creación de grupos
estáticos, es decir, secuencias de octetos idénticas a lo largo
RECSI 2014, Alicante, 2-5 septiembre 2014

Protocolo para la Notificación y Alerta de Eventos


de Seguridad en Redes Ad-hoc
Leovigildo Sánchez-Casado, Roberto Magán-Carrión, Pablo Garrido-Sánchez, Pedro Garcı́a-Teodoro
Departamento de Teorı́a de la Señal, Telemática y Comunicaciones
Universidad de Granada - CITIC
Email: sancale@ugr.es, rmagan@ugr.es, pablogs9@correo.ugr.es, pgteodor@ugr.es

Resumen—Las lı́neas de defensa de seguridad tradicionales que un nodo malicioso elimina paquetes en su ruta (multi-
para proteger un sistema dado son prevención, detección y salto) hacia un destino dado; ataques de jamming, donde un
respuesta. A pesar de que sobre el papel dichos módulos deben nodo genera interferencias y evita el acceso con éxito de
inter-operar a fin de conseguir una seguridad integral, por lo
general se plantean y adoptan como soluciones independientes. otros al canal de comunicaciones; ataques de suplantación de
El presente trabajo aborda el estudio y desarrollo de un protocolo identidad (spoofing, sybil), consistentes en la falsificación de
de notificación y alerta de eventos de seguridad cuyo fin principal la identidad de un nodo; ataques de route poisoning, donde
es servir de interfaz entre los módulos de detección y respuesta. se falsifican las tablas de encaminamiento de los nodos a fin
Ideado especı́ficamente para redes ad-hoc, su uso posibilita de atraer tráfico hacia una cierta zona con fines maliciosos
poner en conocimiento de los elementos constitutivos del entorno
monitorizado la ocurrencia de un cierto comportamiento mali-
(eliminación, falsificación, acceso no permitido).
cioso detectado. Este conocimiento será clave para la ejecución Si bien son conocidas las medidas preventivas de adopción
posterior de los mecanismos de respuesta oportunos. aconsejada para evitar la ocurrencia de actuaciones maliciosas
También susceptible de ser usada para la distribución de como las antes referidas, como sucede en cualquier otro
información en procesos de detección/respuesta colaborativos,
entorno de comunicaciones, su despliegue no garantiza en
nuestra propuesta viene a cubrir una carencia manifiesta en el
campo objeto de estudio. modo alguno la no aparición de las mismas. En consecuencia,
Palabras clave—seguridad en redes (network security), redes ad- ante la potencial superación de las barreras de seguridad
hoc (ad-hoc networks), intrusión (intrusion), detección (detection), preventiva dispuestas (generalmente basadas en el empleo de
respuesta (response), notificación y alerta (notification and alert) esquemas criptográficos), se precisa complementar éstas con
otras orientadas a la detección de eventos indeseados. En este
I. I NTRODUCCI ÓN caso, sobre la base de la monitorización de la actividad habida
en el entorno, el objetivo es determinar la ocurrencia de com-
Las redes ad-hoc constituyen en la actualidad un paradigma portamientos maliciosos contra la seguridad del sistema. En
de comunicaciones de uso creciente. La ausencia de infraes- respuesta a estos eventos debieran ser adoptadas las medidas
tructura y la posible adopción de rutas origen-destino multi- oportunas para su resolución y, en suma, la recuperación del
salto hacen este tipo de entornos altamente atractivos para sistema. Adicionalmente, es recomendable la realimentación
aplicaciones de carácter medioambiental, militar, gestión de de todo el proceso a fin de permitir la adaptación dinámica
situaciones de crisis (p.e., terremotos, atentados terroristas), del entorno (véase Figura 1) [5].
etc. de alta autonomı́a [1]. Esta versatilidad se ve incrementada
En la literatura se encuentran desarrollados numerosos
cuando, además, los nodos que conforman la red tienen capaci-
esquemas de prevención, detección y respuesta (menos de
dad de movilidad, lo que constituye las denominadas MANET
los terceros que de los dos primeros), pero se evidencia una
(Mobile Ad-hoc NETworks) [2], nombre del que derivan y
alta carencia de propuestas orientadas a la inter-operación de
con el que están relacionados otros también conocidos como
estos módulos. De esta manera, las soluciones de seguridad
VANET (Vehicular Ad-hoc NETworks) y FANET (Flying Ad-
habitualmente disponibles son parciales por cuanto que sólo
hoc NETworks).
se enfocan en uno de los tres aspectos citados y, sobre todo,
No obstante las ventajas de este tipo de entornos, son varias porque se desarrollan obviando la necesidad de disponer de
también sus limitaciones. Por una parte, por restricciones procedimientos efectivos de comunicación entre los distintos
usuales relacionadas con el tiempo de vida de la baterı́a, la
capacidad de almacenamiento y la potencia de cómputo de los
nodos. Por otro lado, y no menos importante que lo anterior,
por los enormes riesgos de seguridad inherentes a este tipo de
redes y sistemas [3]. Especialmente motivados por su natura-
leza abierta (inalámbrica), además de la potencial inexistencia
de una infraestructura de control y gestión centralizados, son
varios los tipos de amenazas existentes [4]. Por mencionar Figura 1: Lı́neas de defensa tradicionales ante incidentes de
algunos, sı́rvase citar, entre otros, ataques de dropping, en los seguridad.
322 L. Sánchez-Casado, R. Magán-Carrión, V. Roldán-Pérez, P. Garcı́a-Teodoro

módulos. Esto es especialmente cierto y crı́tico para entornos seguridad, su complejidad (derivada de su amplia versatilidad)
de red ad-hoc [6]. En este caso, y frente a otros mecanismos hace que este estándar no resulte el mejor candidato para el fin
existentes en la actualidad como es el simple envı́o de un co- que aquı́ perseguimos. En especial para redes ad-hoc, donde,
rreo electrónico al administrador del sistema, debe habilitarse según lo ya apuntado en la Sección I, interesarı́a la adopción
algún procedimiento que permita la constatación de este hecho de soluciones especı́ficas y, en consecuencia, ligeras desde el
por parte del resto de la red para la subsiguiente ejecución de punto de vista del coste y carga implicados.
esquemas de respuesta aislados y/o distribuidos globalmente Seguidamente se describe la propuesta de notificación y
coherentes. alerta en nuestro caso adoptada. Ésta, frente a las anteriores,
El presente trabajo aborda el diseño y uso de un protocolo está especı́ficamente diseñada para su uso en entornos ad-hoc,
de notificación y alerta de eventos de seguridad en la lı́nea de manera que resulte los menos costosa posible desde el punto
antes apuntada. Para ello, el resto del documento se organiza de vista de los recursos requeridos.
como sigue. En la Sección II se discuten algunas propuestas
en la lı́nea aquı́ planteada existentes en la bibliografı́a especia- III. P ROTOCOLO DE NOTIFICACI ÓN Y ALERTA DE
lizada. Tras ello, y habida cuenta de la baja idoneidad de las EVENTOS DE SEGURIDAD
mismas para entornos ad-hoc, en la Sección III se presenta Como ya se ha comentado anteriormente, no existen reporta-
nuestra propuesta concreta y se discute su uso con varios das en la literatura soluciones adecuadas para la notificación de
fines relacionados. Seguidamente, la Sección IV se dedica a eventos de seguridad en redes ad-hoc. Ideada tomando como
un breve análisis de prestaciones del protocolo introducido base el protocolo de routing AODV [17] para este tipo de
desde el punto de vista del impacto que tiene su uso sobre redes, la propuesta particular que en este apartado se desarrolla
las comunicaciones del entorno. Finalmente, en la Sección V presenta las siguientes caracterı́sticas principales:
se concluye con los aspectos más relevantes de la propuesta Versátil, al implementarse sobre la capa de aplicación
realizada y se apuntan brevemente algunas actuaciones de (concretamente sobre el puerto 703, actualmente sin
futuro. asignación).
II. T RABAJO RELACIONADO Rápido y eficiente, definiéndose sobre UDP para reducir
retardos y consumo de recursos.
Podemos encontrar algunas propuestas de esquemas de Flexible, ya que posibilita su uso con diversos fines,
notificación de incidentes de seguridad en la literatura. En contemplándose en la versión actual dos principales:
concreto, es de reseñar el protocol IDXP [7] y el formato
• notificación de eventos de seguridad una vez que
de mensajes asociado IDMEF [8] desarrollados por la IETF
se haya detectado la ocurrencia de incidentes re-
(http://www.ietf.org). Ambos están centrados exclusivamente
señables, e
en el manejo de información propia de un IDS (Intrusion De-
• intercambio de información orientada a la potencial
tection System), no siendo adecuados para datos relacionados
detección colaborativa de tales eventos o a la res-
con respuesta a incidentes en un contexto más general [9].
puesta ante los mismos.
Otra propuesta de notificación es IODEF [10]. De tipo
XML, IODEF no ha sido adoptado de forma masiva debido El envı́o de estos mensajes se prevé en tres variantes:
a los requerimientos en cuanto a las herramientas necesarias unicast, broadcast a toda la red y broadcast a los vecinos,
para soportarlo. Frente a este formato, es de mencionar la es decir a un salto (TTL=1), dependiendo del tipo de
disponiblidad de otros protocolos y formatos de mensaje tales mensaje concreto de que se trate.
como X-ARF [11] y XMPP [12], [13], [14]. Es evidente la necesidad de definir los mensajes especı́ficos
Sea como fuere, la escasa generalización alcanzada por que darán soporte a las funcionalidades mencionadas, ası́ co-
las propuestas mencionadas hace que las recomendaciones mo los aspectos relacionados con el envı́o de los mismos.
acerca de soluciones de gestión de información de incidentes Seguidamente se discute en detalle todo ello.
de seguridad tiendan hacia el uso de ficheros de tipo texto,
aconsejándose el empleo de formatos ligeros como CSV III-A. Usos y tipos de mensajes
(Comma Separated Value). Como se ha comentado desde el principio, el protocolo
Al margen de las propuestas especı́ficas para incidentes de está inicialmente pensado para llevar a cabo la notificación
seguridad antes comentadas, otra posibilidad para el manejo de de alertas de seguridad ante la constatación de ciertos inci-
información relacionada con una red es syslog [15]. Desarro- dentes en el entorno ad-hoc monitorizado. Esta comunicación
llado en la década de 1980 como parte del proyecto Sendmail permitirá, en su caso, el despliegue posterior de medidas de
para tracear los eventos de un sistema, syslog permite la respuesta orientadas a dar solución a los incidentes reportados.
separación del software que genera los mensajes del sistema No obstante este fin principal, también es posible la adopción
que los almacena y del software que los analiza. Los mensajes del protocolo para otros objetivos no menos interesantes en el
syslog están etiquetados con un código indicativo del tipo de contexto de la seguridad que nos ocupa. Para ello se propone
software que los generó (ftp, mail, etc.) y un grado de severi- un diseño flexible a través de la especificación de diversos
dad (desde Emergency, el más alto, hasta Debug, el más bajo). tipos de mensajes. En concreto, en este punto se plantea
Aunque syslog puede utilizarse para la gestión de eventos de un segundo uso del protocolo: intercambio de información
Protocolo para la Notificación y Alerta de Eventos de Seguridad en Redes Ad-hoc 323

0 2 3 7 8 1516 2324 31
de seguridad entre los nodos del entorno para, por ejemplo, Tipo
mensaje
Tipo evento Severidad Confiabilidad Longitud total
posibilitar una detección de eventos maliciosos de forma
colaborativa o una respuesta coordinada frente a los mismos. ID mensaje
III-A1. Notificación de alertas: Como ya se ha indicado ID nodo malicioso
con anterioridad, es manifiesta la ausencia de procedimientos
ID nodo detector
de alerta de eventos de seguridad en entornos de red; en parti-
cular, para redes ad-hoc. Tomando como base los desarrollos Marca temporal detección
IDS realizados por los autores [18], [19], al tiempo que la Datos opcionales (tipo + longitud + datos) Relleno
(000...0)
experiencia en esquemas de respuesta [20], [21], se plantea un
procedimiento de notificación de alertas de seguridad para la
Figura 2: Formato de mensajes de notificación de alertas.
comunicación de la siguiente información una vez determinada
la ocurrencia de un evento intrusivo malicioso:
Tipo de mensaje: necesario para diferenciar entre los Datos (opcional): aunque en la versión actual no está de-
distintos usos ya apuntados para el protocolo pretendido. finido, serı́a interesante la inclusión de otra posible
Tipo de evento detectado: teniendo presentes las distintas información útil varia. Por ejemplo, la localización exacta
tipologı́as existentes (dropping, sinkhole, etc. [4]), parece del nodo malicioso para solucionar ataques de jamming.
evidente que los posibles mecanismos de respuesta a Sean cuales fueren estos posibles usos futuros, el formato
desplegar dependerán de la tipologı́a concreta del ataque. de este campo debe ser:
Severidad del evento: para indicar el grado de afectación < tipo datos > < longitud octetos datos > < datos >
de éste. Por ejemplo, no es lo mismo un ataque de Gracias al campo de longitud total previo referido, resulta
dropping donde se descarte un 20 % de los paquetes a posible el uso secuenciado de información extra diversa.
retransmitir que uno donde se descarten todos ellos. También es de señalar la necesidad de, con objeto de que
Confiabilidad de la detección: para indicar el grado de el mensaje sea múltiplo de 32 bits, contemplar un campo
certeza con el que se concluye el proceso de detección. de relleno (padding) consistente en todo ceros, localizado
Asi, por ejemplo, no es comparable la detección de un (en su caso) al final del campo de información opcional.
ataque fundamentada en la observación de un patrón
conocido (basada en firmas o misuse) que una derivada de De acuerdo con todo lo anterior, el formato de los mensajes
la desviación del comportamiento del sistema analizado de notificación de alertas de incidentes de seguridad propuesto
(detección basada en anomalı́as). Es evidente que en el es el mostrado en la Figura 2. En ella se indican los campos
primer caso la confiabilidad será del 100 %, mientras que anteriormente referidos, junto con los bits asignados a cada
en el segundo será función (previsiblemente) del grado uno ellos. Es de significar que algunos de los campos se pro-
de desviación observado [22]. ponen con una longitud superior a la estrictamente necesaria
Identidad del nodo malicioso: necesaria para la adopción en este punto para posibilitar la expansión futura del protocolo.
de ciertos mecanismos de respuesta especı́ficos (p.e., III-A2. Intercambio de información de seguridad: Más
el aislamiento del nodo en cuestión). Esta identidad se allá de la indudable utilidad de los mensajes de alerta descritos,
refiere tı́picamente a la dirección IP del nodo atacante. es manifiesto el posible uso del protocolo de notificación
Identidad del nodo detector: similar a la anterior, ésta ideado para otros fines. Es el caso del potencial intercambio
identifica el nodo que detectó el incidente reportado y de información de seguridad entre nodos. Esta aplicación, al
que corresponde con el nodo emisor del mensaje de margen de la evidente similitud con esquemas como IDMEF o
notificación. syslog, surge principalmente de los trabajos [18], [19], donde
Instante de detección: identificativo del momento tempo- se plantean esquemas IDS colaborativos fundamentados en
ral en el que se produjo la observación del incidente de el intercambio de información entre nodos (principalmente
seguridad reportado. Esta información puede resultar útil vecinos). Éstos, frente a los de naturaleza aislada, donde
de cara a la correlación de eventos. cada nodo implementa su propio IDS a partir de información
adquirida exclusivamente de forma local, persiguen la adop-
Adicionalmente a la información principal anterior, centrada ción de decisiones de detección más globales y, como tales,
en el evento de seguridad especı́fico detectado, otra informa- más robustas y fiables. Huelga decir que la aplicabilidad del
ción oportuna a considerar en los mensajes es: citado intercambio incluye también IDS centralizados donde
Identificador del mensaje: como es habitual en numero- se precisa la adquisición de información de toda la red por
sos protocolos de comunicaciones, este valor se refiere parte de un solo nodo central. En uno y otro caso, centrali-
a un número monótonamente creciente identificativo del zado y distribuido, el esquema de intercambio es totalmente
mensaje para, entre otros fines, robustecer el protocolo análogo: existe un nodo (que implementa un IDS) que solicita
ante ataques de repetición. información de otro cierto nodo (por ejemplo, porque el IDS
Longitud total: debido principalmente al campo que sigue local del solicitante ha disparado una alarma para él) a otros
abajo, es preciso la indicación expresa de la longitud total nodos de la red (todos, su vecindad, etc.), en respuesta a lo
(en palabras de 32 bits) del mensaje. cual se proporciona la información especı́fica solicitada para
324 L. Sánchez-Casado, R. Magán-Carrión, V. Roldán-Pérez, P. Garcı́a-Teodoro

0 2 3 7 8 1516 31
facilitar la posterior decisión de detección. Tipo
mensaje
o
N entradas Longitud total
Habida cuenta que los esquemas IDS propuestos por los
ID mensaje
autores son multi-capa (acceso al canal, capa de red, etc.), la
información requerida se va a identificar en los mensajes inter- ID nodo solicitado
cambiados organizada en base a los procedimientos/protocolos
ID nodo solicitante
especı́ficos a los que aquélla se refiere. En la Figura 3 se
muestra el formato especı́fico de los mensajes involucrados en Protocolo 1 Parámetro 1
el intercambio de información. Por lo que respecta a los de ..
.
solicitud (subfigura 3(a)), los campos involucrados son:
Protocolo n Parámetro n
Tipo de mensaje: a través del cual se indica la semántica
del paquete. Solicitud de información de seguridad en (a)
este caso, frente a la notificación de eventos descrita en
0 2 3 7 8 1516 31
III-A1 o la respuesta a la solicitud descrita más adelante.
Tipo o
Número de entradas: relativo a la cantidad de variables mensaje N entradas Longitud total
cuyo valor se solicita. Como se indica más adelante, cada ID mensaje
variable se especifica a través de 32 bits.
Longitud total: con el cual se especifica la longitud total ID nodo informado
(en octetos) del mensaje enviado. ID nodo emisor
ID mensaje: como en los mensajes de notificación de
Protocolo 1 Parámetro 1
alertas, si bien en este caso también se utilizará este cam-
po para hacer corresponder solicitudes con respuestas. Valor variable 1
ID nodo solicitado: para identificar unı́vocamente el nodo ..
.
del que se solicita la información.
ID nodo solicitante: para identificar unı́vocamente el Protocolo n Parámetro n
nodo que solicita la información y que, en definitiva, se Valor variable n
prevé llevará a cabo el proceso de detección posterior.
(b)
Variable 1...n: campos sucesivos de 32 bits de longitud
a través de los cuales se identifica cada una de las n va-
Figura 3: Mensajes de solicitud (a) y respuesta (b) de infor-
riables indicadas en el campo número de entradas de las
mación.
que se pide información para el nodo solicitado. Como
hemos mencionado anteriormente, cada variable queda
definida (como se hace, por ejemplo, en las MIB de solicitado en el mensaje de petición (=nodo informado).
gestión) a partir de dos campos: protocolo/procedimiento Tras ser identificada cada variable (con 32 bits como se
al que hace referencia (por ejemplo, IP, ICMP, 802.11, ha establecido antes, 8 de los cuales son para indicar el
etc.) e identificador dentro del mismo. protocolo/procedimiento al que se refiere), seguidamente
Por lo que respecta a los mensajes de respuesta a los de se especificará su valor mediante un campo de 32 bits.
solicitud anteriores, su formato es el especificado en la Figura Aunque la funcionalidad de intercambio de información
3(b): objeto de estudio no se ha desarrollado completamente en
Tipo de mensaje: respuesta a solicitud de información. la práctica, en la Tabla I se indican algunas de las variables
Número de entradas: cantidad de variables cuyo valor consideradas y que son utilizadas en los IDS desplegados hasta
se indica en el mensaje. Como se indica más adelante, la fecha por los autores, además de ser de amplio uso para este
cada variable implica el uso de 64 bits, 32 para su fin en la literatura. Ası́, el protocolo propuesto proporciona
identificación y 32 para su valor. una gran flexibilidad, posibilitando la extensión del mismo
Longitud total: con el cual se especifica la longitud total mediante la definición e inclusión de nuevas variables.
(en octetos) del mensaje enviado. No queremos concluir la exposición de los posibles usos
ID mensaje: para hacer corresponder solicitudes con y tipos de mensajes asociados al protocolo de notificación
respuestas. desarrollado sin reseñar de nuevo la versatilidad pretendida
ID nodo informado: para identificar unı́vocamente el para el mismo. Ası́, por ejemplo, se podrı́a definir un nuevo
nodo del que se comunica la información. tipo de mensaje de intercambio de información ası́ncrona
ID nodo emisor: para identificar unı́vocamente el nodo donde no se precise una solicitud previa. Para ello, por
que envı́a la información. ejemplo, podrı́amos utilizar el mismo formato de la Figura
Variable 1...n: campos sucesivos de 64 bits de longitud 3(b) con los siguientes matices:
a través de los cuales se identifica e informa de cada Tipo de mensaje: fijado a un valor diferente de los tres
una de las n variables indicadas en el campo número de previos ya descritos.
entradas de las que se requirió información para el nodo ID mensaje: identificativo del paquete en sı́ y no para
Protocolo para la Notificación y Alerta de Eventos de Seguridad en Redes Ad-hoc 325

Tabla I: Ejemplo de variables para intercambio de información. banda AB (en bits/s) consumido por la transmisión de los
Protocolo/ Parámetro Notas mensajes previamente especificados.
Procedimiento Consideremos una red MANET compuesta de L nodos
Miscelánea Perı́odo muestreo En s legı́timos {N1 , ..., NL } con un rango de cobertura de r metros,
Velocidad En m/s y que se encuentran distribuidos uniformemente en un área
Topologı́a Aceleración En m/s2 de a × b m2 , con a, b  r. Asumiendo la existencia de
Localización Posición GPS
movilidad, cada nodo Ni tendrá su propio conjunto de vecinos
Fı́sica RSSI De 0 a −80 dBm
Vi . En este escenario general, consideramos adicionalmente
#PRTS Paquetes RTS / CTS enviados
MAC 802.11
#PCTS y recibidos la existencia de M nodos maliciosos. Dichos nodos serán
#PHELLO Paquetes HELLO / RREQ /
excluidos de los cálculos, pues es de suponer que éstos
#PRREQ RREP enviados, recibidos, no participarán en actuaciones que tienen como objetivo su
retransmitidos y descartados
AODV #PRREP detección o aislamiento de la red.
NumSeq Número de secuencia Para el cálculo del ancho de banda consumido será necesario
HopCount Número de saltos
definir una serie de cantidades de interés, ası́ como sus
#Pdatos Paquetes de datos enviados, recibi-
Aplicación dos y perdidos notaciones.
#Sesiones Número de sesiones a/s
fi,j : representa la frecuencia (en transmisiones por
segundo) con la que el nodo Ni envı́a mensajes (de alerta
o de solicitud de información de seguridad) acerca de un
hacer corresponder solicitudes con respuestas. nodo Nj . Dicha frecuencia de transmisión vendrá de-
III-B. Distribución de mensajes terminada por el procedimiento de detección subyacente
implementado.
Un aspecto importante en el diseño de todo procedimiento
P a/s/r : representa el tamaño de los paquetes transmiti-
de notificación de alertas es el esquema a emplear para la
dos (alerta, solicitud o respuesta de información). Dicho
transmisión o envı́o de la información correspondiente, pues
tamaño depende de la existencia de datos adicionales
el objetivo es que los recursos implicados, y con ello el
en el caso de los mensajes de alerta o del número
impacto sobre las comunicaciones globales, sean los menores
de parámetros solicitados/respondidos en el caso de los
posibles. Distintas posibilidades son contempladas para ello
mensajes de intercambio de información.
en la bibliografı́a: inundaciones, encaminamiento selectivo,
E[Vi ]: denota el número esperado de vecinos del nodo
agrupamiento, publicación/suscripción [16]. En nuestro caso,
Ni . Dada L/ab la densidad de nodos en el área total, y
vamos a considerar las siguientes posibilidades en función de
(L/ab)πr2 el número de nodos en el área de cobertura
la aplicación y tipo de mensaje:
de Ni , es evidente que, restando el propio nodo:
Broadcast a toda la red para la notificación de alertas ante
la detección de incidentes. Los nodos que reciban dichos (L − 1)πr2
mensajes podrán, a su vez, retransmitir la eventualidad E[Vi ] = (1)
ab
reportada para su distribución a toda la red.
Broadcast a los vecinos para los mensajes de solicitud p(Iv,j): representa la probabilidad de que un nodo Nv
de información. Para ello, estos paquetes serán enviados dado conozca la información solicitada relativa al nodo
sobre la red con el campo TTL del paquete IP sobre el Nj y, en consecuencia, pueda responder con un mensaje
que se encapsulan a valor 1. Es de significar que este (unicast) a la solicitud recibida.
tipo de transmisión es más eficiente que el anterior por Una vez definida la notación se ha de distinguir la aplicación
cuanto que permitirı́a la inclusión de inteligencia en las concreta para la que se está empleando el protocolo, pues tanto
retransmisiones de los nodos para evitar informaciones el número como el tamaño de paquetes intercambiados (y con
duplicadas. ello el ancho de banda) será dependiente del uso.
También podrı́a considerarse el envı́o unicast, dependien-
do del deseo del nodo emisor en cuanto a información
IV-A. Notificación de alertas
pretendida y procedencia de la misma.
Unicast para los mensajes de respuesta hacia el nodo Para calcular el ancho de banda consumido por la notifica-
solicitante. ción de alertas debemos considerar el peor escenario, es decir,
Todas estas cuestiones, ası́ como la propia especificación aquel en el que todos los nodos de la red tienen conectividad
de los mensajes, tiene un impacto directo sobre las prestacio- con al menos otro de los nodos. Puesto que la idea es notificar
nes de la comunicaciones del entorno monitorizado. Ello es a todos los nodos la existencia del nodo malicioso, este proceso
estudiado brevemente en el siguiente apartado. será broadcast a toda la red, donde cada nodo retransmitirá el
mensaje de alerta recibido. En esta situación, el número de
IV. A N ÁLISIS DE PRESTACIONES paquetes de alerta propagados por la red para la notificación
En esta sección se realizará un breve análisis de prestaciones iniciada por el nodo Ni relativa al nodo malicioso Nj será de
del protocolo propuesto. Para ello, se obtendrá el ancho de L paquetes (siendo L el número de nodos legı́timos en la red).
326 L. Sánchez-Casado, R. Magán-Carrión, V. Roldán-Pérez, P. Garcı́a-Teodoro

En consecuencia, el valor esperado del ancho de banda para R EFERENCIAS


las situaciones de alerta iniciadas por el nodo Ni respecto a [1] J. He, Mr. Ji, Y. Li, Y. Pan, “Wireless ad-hoc and Sensor Networks:
alert
Nj , ABi,j , será: Management, Performance, and Applications,” Boca Raton, FL: CRC
Press, 2014.
alert a [2] K.I. Lakhtaria (Ed.), “Technological Advancements and Applications in
E[ABi,j ] = fi,j ·P a ·L bits/s (2) Mobile Ad-Hoc Networks: Reseach Trends,” Hershey, PA: IGI Global,
2012.
IV-B. Intercambio de información de seguridad con vecinos [3] R. Beyah, J. McNair, C. Corbett “Security in Ad-hoc and Sensor
Networks,” Hackensack, NJ: World Scientific, 2010.
Con respecto a la segunda aplicación aquı́ prevista, el [4] P. Garcı́a-Teodoro, L. Sánchez-Casado, G. Maciá-Fernández, “Taxo-
intercambio de información se producirá cada vez que un nodo nomy and Holistic Detection of Security Attacks in MANETs,” capı́tulo
Ni precise conseguir información de seguridad acerca de un del libro “Security for Multihop Wireless Networks”(S. Khan, J. LLoret,
Eds.), CRC Press, 2014.
nodo Nj para, por ejemplo, determinar su comportamiento. [5] H. Bidgoli (Ed.), “Book of Information Security. Threats, Vulnerabilities,
Dicho flujo se inicia con un mensaje de solicitud broadcast a Prevention, Detection, and Management. Volume 3,” John Wiley & Sons,
los vecinos, que será respondido únicamente por aquellos que 2006.
[6] A. Nadeem, M.P. Howarth, “A Survey of MANET Intrusion Detection
conozcan la información solicitada por el iniciante. Dichas & Prevention Approaches for Network Layer Attacks,” en IEEE Com-
respuestas serán enviadas en mensajes de respuesta unicast munications Surveys & Tutorials, Vol. 15, N. 4, 2013, pp. 2027–2045.
(véase Sección III-B). [7] B. Feinstein,G. Matthews, “The Intrusion Detection Exchange Protocol
(IDXP),” RFC 4767, 2007.
Ası́, el valor esperado del ancho de banda consumido ante [8] H. Debar, D. Curry, B. Feinstein, “The Intrusion Detection Message
las posibles peticiones de información de un nodo Ni a sus Exchange Format (IDMEF),” RFC 4765, 2007.
inf [9] K. Gorzelak, T. Grudziecki, P. Jacewicz, P. Jaroszewski, L. Juszczyk,
vecinos respecto del nodo Nj , ABi,j , será:
P. Kijewski, “Proactive Detection of Network Security Incidents,” ENI-
SA report (A. Belasovs, Ed.), 2011.
  [10] R. Danyliw, J. Meijer, Y. Demchenko, “The Incident Object Description
inf s
E[ABi,j ] = fi,j · P s + P r ·E[Vi ]·p(Iv,j) bits/s (3) Exchange Format,” RFC 5070, 2007.
[11] X-ARF, “Network Abuse Reporting” http://www.x-arf.org, 2014.
[12] P. Saint-Andre, “Extensible Messaging and Presence Protocol (XMPP):
Una vez que completemos la implementación efectiva del Core,” RFC 6120, 2011.
protocolo propuesto, estos estudios teóricos deberán concre- [13] P. Saint-Andre, “Extensible Messaging and Presence Protocol (XMPP):
Instant Messaging and Presence,” RFC 6121, 2011.
tarse sobre escenarios prácticos a fin de ser conscientes de los [14] P. Saint-Andre, “Extensible Messaging and Presence Protocol (XMPP):
requisitos reales involucrados. Address Format,” RFC 6122, 2011.
[15] R. Gerhards, “The Syslog Protocol,” RFC 5424, 2009.
V. C ONCLUSI ÓN [16] J. Li, S. Khan, Q. Li “An Efficient Event Delivery Scheme in Mobile
Ad-hoc Communities,” en International Journal of Communication
En este trabajo se propone un protocolo de notificación y Networks and Distributed Systems, Vol. 10, N. 1, 2013, pp. 25-39.
alerta de eventos de seguridad ideado para la comunicación [17] C. Perkins,E. Belding-Royer, S. Das, “Ad-hoc On-demand Distance
Vector (AODV) Routing,” RFC 3561, 2003.
de actividades maliciosas contra la seguridad de un entorno [18] L. Sánchez-Casado, G. Maciá-Fernández, P. Garcı́a-Teodoro, “An Effi-
de red. Por una parte, el procedimiento permite proporcionar cient Cross-Layer Approach for Malicious Packet Dropping Detection in
diversa información útil, de cara a la adopción de medidas MANETs,” en 11th. IEEE Int. Conference on Trust, Security and Privacy
in Computing and Communications (TrustComm), Liverpool (UK), junio
reactivas subsiguientes. Por otro lado, la notificación realizada 2012, pp. 231-238.
es distribuida a fin de permitir su uso en entornos no centra- [19] L. Sánchez-Casado, G. Maciá-Fernández, P. Garcı́a-Teodoro, N. As-
lizados como son las redes ad-hoc. Por último, el protocolo chenbruck, “A Novel Collaborative Approach for Sinkhole Detection
in MANETs,” en Workshop on Security on ad-hoc Networks (SecAN),
puede ser usado también como mecanismo de intercambio de Benidorm (España), junio 2014, pp. 1-14.
información de seguridad entre nodos en este tipo de entornos, [20] R. Magán-Carrión, F. Pulido-Pulido, J. Camacho-Páez, P. Garcı́a-
con el objeto de posiblitar una detección colaborativa. Teodoro, “Tampered Data Recovery in WSNs through Dynamic PCA
and Variable Routing Strategies,” en 3rd. Int. Conference on Communi-
Si bien las bondades de la propuesta han sido evidenciadas cations and Network Security (ICCNS), Londres (UK), noviembre 2013.
a nivel teórico en el documento, es objetivo inmediato de los Publicado en Journal of Communications, Vol. 8, N. 11, 2013, pp. 738-
autores la implementación efectiva del protocolo y evaluación 750.
[21] R. Magán-Carrión, J. Camacho-Páez, P. Garcı́a-Teodoro, “A Multi-
de prestaciones del mismo en escenarios experimentales de agent Self-healing System against Security Incidents in MANETs,” en
simulación. Este desarrollo prevé incorporarse al framework Workshop on Active Security through Multi-Agent Systems (WASMAS),
NETA (NETwork Attack) [23], creado por el grupo de inves- Salamanca (España), junio 2014, pp. 1-12.
[22] P. Garcı́a, J.E. Dı́az-Verdejo, G. Maciá, E. Vázquez, “Anomaly-based
tigación NESG (”Network Engineering & Security Group”; Network Intrusion Detection: Techniques, Systems and Challenges,” en
http://nesg.ugr.es) y consistente en un entorno basado en Computers & Security, Vol. 28, 2009, pp. 18-28.
OMNET++ para el despliegue, estudio y evaluación de ataques [23] L. Sánchez-Casado, R.A. Rodrı́guez-Gómez, R. Magán-Carrión, G. Ma-
ciá-Fernández, “NETA: Evaluating the Effects of NETwork Attacks.
en redes MANET. MANETs as a Case Study,” en Advances in Security of Information
and Communication Networks, ser. Communications in Computer and
AGRADECIMIENTOS Information Science, Vol. 381, (A. Awad, A. Hassanien, K. Baba, Eds.),
Springer Berlin Heidelberg, 2013, pp. 1-10.
Este trabajo ha sido parcialmente financiado por el MICINN
a través del proyecto TEC2011-22579 y por el MECD a
través de la beca del programa de “Formación de Profesorado
Universitario” (FPU, Ref.: AP2009-2926).
RECSI 2014, Alicante, 2-5 septiembre 2014

Implementación de un ataque DoS a redes WPAN


802.15.4
Aleix Dorca Jordi Serra-Ruiz
Estudis d’Informàtica, Estudis d’Informàtica,
multimedia i Teleciomunicació multimedia i Teleciomunicació
Universitat Oberta de Catalunya Universitat Oberta de Catalunya
Email: adorca@uoc.edu Email: jserrai@uoc.edu

Resumen—Las redes industriales y, concretamente, las redes son interesantes puesto que implementar una solución similar
de sensores son hoy en dı́a una realidad emergente y con muchas utilizando redes cableadas podrı́a suponer un problema de
expectativas de cara al futuro sobre todo en entornos empresa- presupuesto y un problema de logı́stica haciéndola inviable
riales o públicos. Los grandes ayuntamientos están creando las
smart cities con este tipo de estructuras. Entre los estándares en la mayorı́a de casos. Utilizando el aire como medio de
que existen parece que hay dos que se imponen, los estándares comunicación da la posibilidad de instalar todos aquellos
802.15.4 y ZigBee. Conjuntamente proporcionan un conjunto dispositivos o nodos necesarios a un precio muy económico
de protocolos y servicios a los usuarios para permitir una en comparación con levantar toda una calle para colocar unos
comunicación fiable y segura. Todo y eso, como la mayorı́a de sensores de presencia de vehı́culos estacionados.
redes inalámbricas, estas redes no están exentas de potenciales
peligros que pueden ponerlas en un compromiso. El objetivo A grandes rasgos, los dos tipos de redes presentan las
de este artı́culo es mostrar la implementación de un ataque de siguientes similitudes:
denegación de servicio mediante un caso real. Como prueba de Permiten la comunicación entre dispositivos mediante el
concepto, se muestra como dejar inhabilitado un nodo de una
envı́o de datos con encaminamiento multi-salto (multi-
red que utiliza la especificación 802.15.4.
Palabras clave—Seguridad (security), Wi-Fi, 802.15.4, ZigBee, hop).
Smart Cities, DOS. Lo más usual es tratar con dispositivos que disponen de
recursos mı́nimos, ya sea de proceso, memoria o almace-
I. I NTRODUCCI ÓN namiento, en los dos casos. Los dispositivos acostumbran
a ser pequeños y alimentados con pequeñas baterı́as que
Antes de tratar especı́ficamente los estándares que son con el tiempo hay que reemplazar.
el objeto de este artı́culo es interesante hacer una breve
Las principales diferencias son las siguientes:
presentación de lo que son las redes adhoc y, como caso
especial, las redes de sensores que se utilizan es este tipo Las redes adhoc permiten la comunicación entre cual-
concreto de infraestructuras. Estos dos tipos de redes tienen quier par de dispositivos mientras que las redes de
muchas similitudes pero a la vez también presentan algunas sensores definen tipos de encaminamiento especı́ficos.
diferencias importantes. A pesar de que los dispositivos acostumbran a tener
[1] describe una red adhoc como un conjunto de nodos que recursos mı́nimos, esta caracterı́stica se hace todavı́a más
se comunican entre sı́ mediante unos enlaces radioeléctricos. patente en las redes de sensores donde los dispositivos,
Cada dispositivo de esta red tiene libertad total de movimientos una vez asociados a la red, han que estar largos perı́odos
por el espacio, y eso hace que la red se tenga que adaptar tiempos (meses o años) sin ser recargados o reempla-
a los cambios de manera autónoma y automática. Los nodos zados. Es evidente que la gestión de la energı́a es un
pueden aparecer y desaparecer en cualquier momento. Por eso punto clave en la gestión y diseño de estas redes. Algunos
cada nodo se tiene que comportar como un encaminador de la ejemplos podrı́an ser:
información para el resto de los nodos, ya que los cambios en  Calles donde los sensores de ocupación de plazas de
la estructura de la red pueden necesitar de esa caracterı́stica, estacionamiento se encuentran bajo tierra.
y tiene que hacer circular por la red el tránsito que recibe y  Monitorización de espacios naturales. (humedad,
del cual no es el destinatario final. luz, lluvia...)
Las redes de sensores son una particularidad formada por  Detección de incendios, terremotos o inundaciones.
dispositivos autónomos que por lo general se encargan de  Control del tráfico.
monitorizar condiciones ambientales o fı́sicas. Ası́, por ejem- Los nodos en redes de sensores a menudo tienen relacio-
plo, podemos encontrar sensores destinados en el control de nes de confianza entre nodos cercanos puesto que no es
temperatura, presión, peso, sonido, vibraciones, etc. Estos dis- extraño que todos ellos recojan información similar o re-
positivos inalámbricos envı́an la información que sus sensores dundante, por lo que enviarla por la red serı́a una pérdida
detectan a través de la red hacia nodos de control. Estas redes de recursos. Este comportamiento de complicidad no se
328 A. Dorca, J. Serra-Ruiz

encuentra en las redes adhoc. Network), responsable de las tareas de control de la red y de
la seguridad.
I-A. Protocolo 802.15.4 y ZigBee
Cualquier dispositivo RFD siempre tiene que estar asociado
En esta sección se mostrará el comportamiento general a un FFD para el correcto funcionamiento de la red. En el
del estándar 802.15.4 y el protocolo ZigBee, que permiten apartado de topologı́a de la red de ZigBee se ven algunos
comunicar dispositivos remotos de bajo rendimiento. ejemplo de asociación de nodos.
I-A1. Estándar 802.15.4: El estándar 802.15.4 define las Formato de trama
capas de comunicación fı́sica y de acceso al medio de la pila de La tabla I muestra el esquema de la estructura del formato
protocolos. Otras caracterı́sticas de este estándar son el hecho de una trama MAC.
que presenta una alta flexibilidad en cuanto a la configuración Donde: MHR es la cabecera, MSDU los datos (o Payload)
de red, un bajo coste computacional y a la vez un muy bajo y un final de trama (MFR)
consumo [3].
Campo de control: Este campo de longitud 16 bits
La capa fı́sica además de enviar y recibir paquetes a la red
contiene toda la información de control del paquete.
se encarga de toda una serie de tareas como por ejemplo la
Eso incluye el tipo de trama (Datos, ACK, etc.), si
activación del enlace, la detección de energı́a o el indicador
la seguridad está habilitada, si se necesario un ACK
de baja calidad.
para esta trama. Además se define si los campos de
Canales de transmisión
direccionamiento estarán todos presentes y la longitud
La capa fı́sica se puede configurar para transmitir en di-
de estos. Por ejemplo, si el campo Intra-PAN está activo
ferentes canales o bandas de frecuencia dependiendo de las
entonces el campo de PAN origen no estará presente. La
necesidades de cada caso. Se definen los siguientes canales:
tabla II muestra la estructura de estos campos.
Banda de 2450 MHz de 16 canales con una velocidad máxima
Control de secuencia: Este campo se utiliza para veri-
de 250 kbps. Banda de 915 MHz de 10 canales con una
ficar el orden de llegada de los paquetes y para evitar
velocidad máxima de 40 kbps y banda de 868 MHz de 1
ataques de reenvı́o. Este valor aparecerá en los paquetes
canal con una velocidad máxima de 20 kbps.
ACK conforme el paquete con el código de secuencia
Se ha que tener en cuenta que la comunicación en la banda
especificado ha sido recibido.
de 2450 MHz trabaja en el misma zona de frecuencia que
Campos de direccionamiento: Estos cuatro valores no
los dispositivos Wi-Fin 802.11. Es por eso que se recomienda
son siempre obligatorios y dependerá del tipo de trama.
escoger los canales 15, 20, 25 o 26 del estándar 802.15.4 para
Existen cuatro campos que corresponden a las PAN de
no provocar interferencias.
origen y destino y la dirección origen y destino a nivel
Capa de acceso al medio
MAC. Las direcciones MAC pueden tener diferentes
Esta capa define como se realiza la comunicación a bajo
medidas según los estándares IEEE: 16 o 64 bits.
nivel entre dispositivos. Se definen aspectos como la ge-
Carga (Payload): En este campo se almacena los datos
neración de los beacons, la duración de la transmisión de
del paquete, concretamente, estará los datos del protocolo
estos, el establecimiento de una polı́tica de slots equitativa,
ZigBee, a pesar de que no tendrı́a que ser siempre
la asociación de nodos y la validación de las tramas [4].
ası́ puesto que este estándar está preparado para en-
El protocolo de acceso al medio se implementa mediante el
capsular otros protocolos. La longitud de este campo
algoritmo CSMA-CA.
es variable siempre y cuando no sobrepase la longitud
La capa de control de acceso al medio define dos tipos de
máxima de una trama MAC (127 bytes).
dispositivos que se pueden encontrar en una red 802.15.4 [5]:
Código de verificación (FCS): 16 bits que almacenan los
Los nodos de función completa (Full Function Device– datos de verificación de la trama. Se utiliza un algoritmo
FFD): Estos vienen equipados con una serie completa de CRC de 16 bits.
funciones en la capa de acceso al medio, cosa que les
I-A2. La especificación ZigBee: La especificación ZigBee
permite actuar como coordinadores de la red o como
se encarga de definir en detalle las capas superiores de la pila
dispositivos finales. Cuando estos nodos actúan como
de protocolos. Concretamente se trata de las capas de red y
coordinadores pueden enviar beacons, o señalizaciones
de aplicación. Además, ZigBee también define los siguientes
para proveer la red de servicios de sincronı́a, comunica-
aspectos:
ción y procesos de acceso a la misma.
Los nodos de función reducida (Reduced Function De- Tipo de dispositivos descritos en el apartado I-A1
vice–RFD): Este tipo de nodos solo pueden actuar como Topologı́a de la red.
nodos finales y no como coordinadores. Vienen equipa- Procedimiento para acceder o abandonar la red.
dos con sensores, actuadores, transductores, interrupto- Algoritmos de encaminamiento.
res, etc. Y solo pueden interactuar con dispositivos que Topologı́a
sean nodos de función completa. En en cuanto a la topologı́a de la red se definen tres tipos de
Todas las redes 802.15.4 han de tener como mı́nimo un distribución de los nodos [5]. Se pueden apreciar en la figura 1
dispositivo FFD que actúe como coordinador. Uno de estos Estrella: Existe un nodo central que a la vez actúa de
dispositivos es elegido coordinador de la PAN (Personal Area coordinador y gestor. El nodo central es un dispositivo
Implementación de un ataque DoS a redes WPAN 802.15.4 329

Bytes:2 1 0/2 0/2/8 0/2 0/2/8 variable 2


PAN destino Destino PAN origen Origen
Control Secuencia Datos FCS
Campos de direccionamiento
MHR MSDU MFR
Tabla I
F ORMATO DE LA TRAMA MAC

Bits: 0-2 3 4 5 6 7-9 10-11 12-13 14-15


Tipo de trama Segur. habilitada Trama pendiente ACK necesario Intra PAN Reser. Tipo direc. destino Reser.o Tipo direc. origen
Tabla II
F ORMATO DEL CAMPO DE CONTROL DE LA CAPA MAC

II. A SPECTOS DE SEGURIDAD


Aparte de estas caracterı́sticas básicas se ha puesto especial
énfasis en la seguridad de los estándares. Las dos especifi-
caciones establecen una serie de opciones que hacen que la
Estrella Malla Grup d'arbres (Cluster Tree)
seguridad ya no dependa del propio código de la aplicación.
Coordinador de la xarxa
El protocolo puede cifrar, por ejemplo, el contenido de las
Dispositiu de funcionalitats completes
tramas.
Dispositiu de funcionalitats reduïdes

II-A. Seguridad en IEEE 802.15.4


Figura 3: Topologies de xarxa en ZigBee.
Figura 1. Topologı́a de las redes de sensores El estándar 802.15.4 define tres modos de seguridad [5]–[6]:
• El paquet és per a mi? SÍ: Passa’l a una capa superior de la pila de protocols; NO:
continua... 1. Sin seguridad.
• El paquet és per a un node fill meu? SÍ: Envia’l al node; NO: continua... 2. Modo ACL (Access Control Lists). No presenta cifrado
• Existeix un ruta pel paquet? SÍ: Envia’l al següent salt; NO: continua...
pero solo se aceptan paquetes de dispositivos en listas
• Hi hamientras
FFD recursos per realitzar
que elunaresto
descoberta
son, de ruta?
o puedenSÍ: Procedeix
ser,ambRFD.
el procés
de descoberta; NO: Envia’l per l’arbre a la branca superior. de control de acceso.
Malla: Este tipo de topologı́a permite que entre en- 3. Modo Seguro. Algunas de las caracterı́sticas que pue-
Per tal de realitzar una descoberta de ruta s’utilitza l’algorisme AODV (AdHoc On
caminadores
Demand Distance VectorFFD delque,tipo
Routing)[10] Clusterconsisteix
resumidament, Treeen también
enviar un paquethaya de incluir este modo son: Integridad, Confidencialidad,
a tots els nodes veı̈ns, el quals també el propagaran, amb la finalitat d’arribar al destı́. A
comunicación sin tener que depender del nodo
mesura que el paquet passa per tots els nodes s’actualitza el cost de la ruta per la qual
central. Control de acceso, etc.
Grupo
el paquet de Quan
a passat. árboles:
el paquetEn estearriba
finalment tipo de s’envia
al destı́ topologı́a existe
una resposta al node un
origen amb la ruta que ha estat més òptima. El node origen, aleshores, actualitza la seva A la vez se definen cuatro servicios de seguridad:
nodo central
taula de rutes. que a la vez actúa como coordinador de
la red y gestor. De este nodo dependen toda otra serie 1. Control de acceso vı́a ACL.
2 deAspectes
nodos que depueden
seguretat ser tanto FFD como RFD. En este 2. Cifrado de datos mediante el algoritmo AES de 128bits.
caso los nodos
A part d’aquestes FFD actuarán
caracterı́stiques bàsiques s’ha como encaminadores
posat especial para
èmfasi en la seguretat 3. Integridad de las tramas.
dels estàndards. D’entrada tots dos protocols estableixen tota una sèrie d’opcions que fan 4. Control de secuencia para evitar ataques de reenvı́o.
queotros dispositivos
la seguretat ja no depengui delRFD. Esdeescalable
propi codi siempre
l’aplicació. El propi y cuando
protocol pot xifrar,
per exemple, el contingut de les trames. Vegem les diferents opcions que els protocols Finalmente se definen ocho configuraciones de seguridad
los encaminadores sean FFD.
ofereixen.
posibles en las que se puede escoger el algoritmo de cifrado
2.1 Seguretat en IEEE 802.15.4 ası́ como el modo y la longitud del código de integridad.
Encaminamiento
L’estàndard 802.15.4 defineix tres modes de seguretat[2][7]:
Algunas configuraciones incluyen solo autenticación de las
El 1.encaminamiento
Sense seguretat en las redes ZigBee se realiza depen- tramas mientras que otras más completas añaden la opción
diendo del tipo de topologı́a que se ha escogido. En cualquier de cifrado según los requerimientos de la aplicación.
caso intervienen procesos de descubrimiento
6 de rutas ası́ como
encaminamiento mediante tablas de rutas. El algoritmo de II-B. Seguridad en ZigBee
encaminamiento es sencillo y se puede resumir en que si Aparte de los elementos de seguridad del estándar 802.15.4
la información es para el propio nodo se pasa a la pila de de los que ZigBee también se puede beneficiar, define toda
protocolos, sino se mira si es para un nodo hijo y se envı́a al una serie de conceptos orientados a la seguridad. De entrada
nodo o a la ruta preestablecida. la seguridad en ZigBee se basa en los siguientes principios [7]:
Para realizar el descubrimiento de la ruta idónea se utiliza Simplicidad: Cada capa se encarga de su seguridad.
el algoritmo AODV (AdHoc on Demand Distance Vector Es directa: Las claves de cifrado se intercambian direc-
Routing) que consiste en enviar un paquete a todos los nodos tamente entre origen y destino.
vecinos, que también propagarán, con el fin de llegar al nodo Extremo a extremo: Los datos circulan cifrados de origen
destino. A medida que el paquete pasa por los nodos se a destino sin tener que ser descifrados en cada salto.
actualiza el coste de la ruta por la cual el paquete ha pasado. ZigBee define tres tipos diferentes de claves de cifrado que
Y cuando el paquete llega al destino se envı́a una respuesta al se utilizan, cada una de ellas, en casos muy diferenciados [5].
nodo origen con la ruta más óptima. Los tres tipos de claves son:
330 A. Dorca, J. Serra-Ruiz

1. Clave maestra: esta clave no se utiliza para cifrar in- mensaje de incremento de temperatura, el nodo atacante
formación, sino para la generación de otras claves. Esta podrı́a reenviar un decremento del valor provocando que
clave se establece en el momento de la construcción, el nodo destino actúe de manera inversa a la deseada.
pero puede ser entrada por el propio usuario o bien asig- Para evitar este tipo de ataques se utilizan los códigos
nada por un centro de confianza. Todos los dispositivos de secuencia, el cifrado, etc.
disponen de una clave maestra propia y única.
2. Clave de red: la disponen todos los dispositivos de la III. ATAQUES
red y se utiliza para enviar mensajes a toda la red. En esta sección se muestran la descripción de los ataques
Los mensajes cifrados broadcast se cifran y se descifran que se han realizado en este trabajo.
mediante esta clave cuando la seguridad está habilitada.
Esta clave se establece en el momento de la unión a la III-A. Ataques de denegación de servicio
red o bien mediante procesos de renovación de claves. Los ataques de denegación de servicio se pueden categorizar
3. Clave de enlace: se utiliza para establecer comunicacio- según la capa de la pila de protocolos a la que van dirigidos [8].
nes seguras entre dos dispositivos. Se obtiene a partir de Posibles ataques a la capa fı́sica:
la clave maestra mediante un proceso llamado SKKE. Interferencias (Jamming): consiste en saturar un canal de
Los servicios de seguridad en ZigBee incluyen métodos comunicación con información errónea para que ningún
para el establecimiento de claves, el envı́o de estas claves, otro dispositivo pueda utilizarlo. En general este tipo de
la protección de tramas y la gestión de dispositivos. Como ataque se cancela mediante diferentes canales en los que
el control de secuencia (freshness), que mediante contadores transmitir.
que se regeneran cada vez que se renuevan las claves se Alteración de datos (Data tampering): consiste en mo-
permite controlar la secuencia de los mensajes para que no se dificar la información que circula por la red, capturando
realicen ataques de reenvı́o. La integridad de los mensajes, que los datos y modificándolos. Este tipo de ataque se puede
asegura que los mensajes enviados no han sido modificados frenar con códigos de verificación de datos.
durante la transmisión por ningún tercero. La autenticación, Posibles ataques a la capa de enlace:
que mediante claves de red o enlace, los dispositivos pueden
Colisión: en este caso, similar al jamming, se modifica
estar seguros que el origen de los mensajes es de quién dicen
cierta información del origen provocando que la veri-
ser, evitando la suplantación por parte de intrusos. El cifrado,
ficación del paquete provoque un error. De este modo
que mediante el algoritmo AES de 128 bits la protección se
se provoca un reenvı́o de los paquetes que puede llevar
extiende a nivel de red o dispositivo. El cifrado es opcional
al lı́mite los recursos. No se conoce un procedimiento
sin necesidad de afectar otras caracterı́sticas de seguridad. Las
totalmente fiable para evitar este tipo de ataques.
tramas están encapsuladas en la especificación 802.15.4, por
Ruido en el canal: existen muchos errores en la trans-
lo que las cabeceras no van cifradas, como se puede observar
misión que implican un gran reenvı́o de paquetes. Si
en la tabla I
se consigue que un dispositivo agote todos sus recursos
II-C. Vulnerabilidades y quede aislado o inoperativo el ataque se considera
Las redes adhoc y, por extensión, las redes de sensores satisfactorio. Para evitarlo se puede establecer un umbral
pueden ser vulnerables a toda una serie de ataques que se a partir del cual no se retransmite.
pueden categorizar de la siguiente manera [2]–[5]: Longitud de las tramas: este ataque deja la red inservible
1. Denegación de servicio (Denial of Service-DOS): Estos ocupando el canal enviando muy poca información a
ataques hacen que un nodo deje de funcionar mientras intervalos regulares y constantes.
dura el ataque o indefinidamente. Posibles ataques a la capa de red y encaminamiento:
2. Escucha de la red (eavesdropping): Como su nombre Homing: este ataque obtiene información sobre nodos
indica, un dispositivo escucha la red a la espera de que son de especial importancia en la red. En las redes
recibir información. Evidentemente utilizando cifrado en ZigBee, el ataque se centra en el PAN Coordinator. El
la red o sobre los datos este ataque pasa a ser inútil, cifrado de datos puede mitigar el ataque.
siempre y cuando no se combine con algún ataque para Encaminamientos erróneos o selectivos: se implementa
obtener las claves de cifrado. sobre encaminadores que rechazan o encaminan errónea-
3. Usurpación de identidad (spoofinng): Este ataque con- mente paquetes. Para evitar este tipo de ataques el
siste al hacerse pasar por otro dispositivo, ya sea a nivel dispositivo puede probar de encaminar los paquetes por
MAC, de red u otras. De este modo se pueden obtener otra ruta.
paquetes por el dispositivo atacante. Si este usurpa un Agujeros negros (Black holes) y agujeros de gusano
encaminador y actúa de manera ”legal”, podrá capturar (Wormholes): en las redes que utilizan el protocolo de
toda la información que encamine. descubrimiento de rutas basado en el coste del enlace,
4. Reenvı́o de paquetes (replay): Este ataque consiste a este ataque puede provocar la construcción de rutas
reenviar paquetes capturados para que el destino actúe erróneas si un dispositivo siempre anuncia la calidad de
de manera errónea. Por ejemplo, si un sensor manda un su enlace como la mejor. De este modo la mayorı́a de
s’ha executat la següent comanda al sistema Debian per tal de posar en funcionament
l’encaminador de la mota M1:

$ cd /opt/tinyos-2.x/support/sdk/c/blip
Implementación de un ataque DoS a redes WPAN 802.15.4 331
$ driver/ip-driver /dev/ttyUSB0 115200

USB

M1
Debian 6.0

M2
Figura 2. mota Z1 de Zolertia

Figura 5: Diagrama de muntatge.


Figura 3. Esquema de montaje
paquetes serán enviados a través de él y este podrá aplicar
NOTA: El dispositiu /dev/ttyUSB0 correspon a la mota M1. Per saber quin és l’enllaç
decisiones de encaminamiento erróneas o simplemente en un entorn de desenvolupament es pot executar la comanda que ens retorna la llista de
descartarlos. a la mota
motes connectades i les M1,
dadestodos dejarı́an de poderse comunicar. Para
per accedir-hi:
Sybil: se basa en que un nodo pueda presentar varias programar las motas se han de conectar inicialmente a la
identidades a la vez. Ası́ se pueden romper esquemas máquina Debian con un cable 12 USB/MicroUSB, después ya
de encaminamiento múltiple o bien causar problemas en no es necesario esa conexión y pueden operar mediante pilas
entornos geográficamente dispares. y por tanto ser un nodo completamente autónomo. Con las
Posibles ataques a la capa de aplicación: aplicaciones base que hay disponibles, la mota M1 se ha
Inundar la red (Flooding), HELLO attacks: una vez programado con la aplicación IPBaseStation, mientras que la
introducido el nodo malicioso en la red, envı́a peticiones mota M2 utiliza el servicio TCPEcho.
de conexión que pueden llevar al nodo remoto a agotar El siguiente paso consiste en examinar los paquetes que se
los recursos y quedar inoperantivo. Para evitar este ataque envı́an en el momento de la asociación de la mota M2 en la
se presentan soluciones del tipo limitar el número de red y los que se envı́an durante la transmisión de paquetes al
conexiones establecidas o presentar rompecabezas al servicio Echo para poder, posteriormente, inyectar los paquetes
cliente que tiene que resolver antes no se le otorgue el previamente modificados desde el dispositivo atacante.
recurso. Para averiguar qué paquetes circulan por la red durante
De-sincronización: Mediante el envı́o con códigos de las fases de asociación de dispositivos y la conexión al
secuencia erróneos a nodos que ha establecido conexión servicio Echo se ha utilizado el software Wireshark y la
con un tercero se puede forzar el reenvı́o de tramas. herramienta zbdump. Y para escuchar la red mediante el
Si además se sigue el ataque con insistencia se pueden dispositivo RZUSBSTICK son necesarias las herramientas
agotar sus recursos. Estos ataques no tienen sentido si que se encuentran en KillerBee [11]. Eso es debido a que
los nodos pueden comprobar la veracidad de los paquetes una simple tarjeta WiFi convencional no puede escuchar las
mediante cifrado o códigos MAC. frecuencias de las redes 802.15.4
Mediante el dispositivo RZUSBSTICK, el software Wi-
IV. R ESULTADOS EXPERIMENTALES reshark y la herramienta zbdump se ha determinado cuáles
Este apartado pretende mostrar una prueba de concepto en el son los paquetes esenciales y necesarios para llevar a cabo
que se ha llevado a cabo un ataque de denegación de servicio la asociación de un dispositivo al encaminador. Y al mismo
sobre una red 802.15.4/ZigBee. El proceso que se ha seguido tiempo se ha obtenido el paquete que se envı́a cuando se
es muy simple y lo que se desea mostrar es la facilidad con solicita un Echo al servicio de la mota M2. Esta información
la que ha sido posible dejar sin recursos un nodo de la red. se ha utilizado para construir posteriormente unos paquetes
Entre los posibles ataques que se han mostrado, este ataque especı́ficos con los que atacar el sistema.
recaerı́a sobre el agotamiento de recursos en la capa de
aplicación y la capa de enlace puesto que ambos tienen gran IV-A. Atacando al sistema
parte de implicación. El ataque desarrollado se basa en dos scripts que por un
Para montar la red ZigBee se han utilizado dos sensores o lado asocian una serie de nodos falsos al encaminador M1 y
motas. Concretamente se ha utilizado la plataforma Z1 de la de la otra envı́an paquetes al servicio TCPEcho de la mota
marca Zolertia [9], mostrada en la figura 2. M2 de manera ininterrumpida mediante el encaminador M1.
Por otro lado, para simular el dispositivo atacante se ha Los paquetes de la Mota M2 con las respuestas solicitadas
utilizado un sniffer/inyector de la marca Atmel: el dispositivo pasan a través de M1 y llegan a los nodos falsos maliciosos
RZUSBSTICK [10]. que están programados especialmente para no responder a las
En esta prueba de concepto es necesario que un sensor actúe peticiones ACK que solicita M2 de sus respuestas. Como el
como nodo encaminador (llamado M1 en la figura 3) y que número de nuevas peticiones por parte de los nodos falsos
el otro actúe como dispositivo RFD hoja (M2). La topologı́a no cesa y la mota M2 está continuamente enviando los datos
escogida es la de estrella. Y el nodo al que se atacará agotando que supone no han llegado a los nodos destino, la tabla del
los recursos es el que actúa como encaminador (la mota M1). encaminador se satura y se queda sin recursos, lo que hace
Por lo que en el caso de tener más sensores conectados bloquear completamente el encaminador, dejando a todos los
332 A. Dorca, J. Serra-Ruiz

mota M1 deje de responder. El bloqueo de la mota M1 es


absoluto siendo necesario un reinicio completo del dispositivo
para que vuelva a funcionar la comunicación con la mota M2.
El envı́o de paquetes por parte del nodo malicioso no es en
ningún caso exhaustivo. En este caso cada paquete se envı́a
con un retraso de 0.5 segundos respeto la anterior cosa que
permite un tiempo suficiente a todas las partes del sistema a
responder sin provocar un bloqueo del medio. A pesar de que
el ataque de saturación del medio es igualmente factible, este
Figura 4. Captura de red, ACK no es demasiado interesante para los protocolos.
V. C ONCLUSI ÓN
En este artı́culo se ha descrito el funcionamiento y las
sensores aislados de la red.
caracterı́sticas básicas de los estándares 802.15.4 y ZigBee,
La programación del capturador de tráfico es relativamente
el montaje y puesta en funcionamiento de redes de sensores
sencilla, ya que se aprovecha las tramas reales para inyectar
utilizados en redes de ”Smart Cities”.
el código modificado y no contestar a los ACK. Básicamente
A continuación se han descrito las opciones de seguridad
se realizan los siguientes pasos:
que estos dos protocolos ofrecen, describiendo cuales son los
1. Inicialización: utilizando la API de Killerbee se define casos de ataque más comunes en este tipo de redes y dedicando
en qué canal retransmitir y el perı́odo de tiempo que se un apartado especial a los ataques de denegación de servicio
dejará pasar entre paquetes. Las herramientas KillerBee en el que se basa la prueba de concepto de ataque sobre una
todavı́a no disponen de un programa que escuche todos red 802.15.4/ZigBee.
los canales a la vez por el que se ha de determinar. Para Finalmente se ha ejemplificado un caso real en el que es
este escenario se ha fijado el canal. posible dejar sin recursos un dispositivo 802.15.4 mediante
2. Bucle principal: para cada dispositivo se genera el valor únicamente herramientas de libre distribución y la programa-
del paquete en la variable origen. La posición donde se ción en Python de un script que envı́a solicitudes Echo de
ha de poner este valor se ha determinado del estudio manera indefinida hasta que el dispositivo se satura y deja de
de los paquetes capturados con zbdump y Wireshark funcionar.
y de la especificación del formato de trama MAC. En Como trabajo futuro está el estudio más detallado de las
la figura 4 se puede ver un ejemplo de los paquetes posibles mejoras al protocolo estándar para que no se puedan
capturados, concretamente, el Ack correspondiente en realizar este tipo de ataques sobre las cabeceras no cifradas.
formato Daintree mediante la herramienta zbdump.
3. Inyección: el paquete se envı́a a la red(inject). AGRADECIMIENTOS
4. Se duerme el sensor los segundos especificados. This work was partly funded by the Spanish Government th-
5. El script acaba con la limpieza de la trama enviada. rough projects TIN2011-27076-C03-02 “CO-PRIVACY” and
En el caso del ataque con el envı́o de solicitudes el script CONSOLIDER INGENIO 2010 CSD2007-0004 “ARES”.
que hace las peticiones al servicio Echo es similar al anterior R EFERENCIAS
caso, cambiando únicamente las variables utilizadas de la API.
[1] E. Peig, “Redes abiertas (Cuando los usuarios forman parte de la red),”
Una vez ejecutado el ataque el nodo falso envı́a paquetes Barcelona, Ed. UOC, 2012.
de solicitud de Echo de manera indiscriminada desde direc- [2] C. Karlof, D. Wagner, “Secure routing in wireless sensor networks:
ciones falsas de dispositivo asociados a la M1 que no existen Attacks and countermeasures,” en IEEE SPNA, 2002.
[3] S. Coleri Ergen, “ZigBee/IEEE 802.15.4 summary,” Unknown, 2004.
provocando que la M1 tenga que responder a todos los Ack [4] IEEE, “802.15.4,” http://www.ieee802.org/15/pub/TG4.html.
solicitados, ası́ como a la propia respuesta del protocolo. Como [5] P. Baronti, P. Pillai, V.W.C. Chook, S. Chessa, A. Gotta, and Y. Fun
el nodo falso malicioso no responde a ningún paquete, se crea Hu, “Wireless sensor networks: A survey on the state of the art and the
802.15.4 and ZigBee standards,” Computer Comunications, vol 30(7),
una situación en la que la mota M1 tiene que reenviar paquetes pp. 1655–1695, 2007.
varias veces. [6] H. Li, B. Xue, W. Song, “Application and Analysis of IEEE 802.14.5
Cuando se desea realizar una comunicación con la mota Security Services.” en 2nd International Conference on Networking and
Digital Society (ICNDS), pp. 139–142, 2010.
M2 esta responde correctamente a algunas peticiones pero a [7] H. Li, Z. Jia, X. Xue, “Application and Analysis of Zigbee Security
medida que el ataque progresa ésta dejará de responder. Pero Services Specication,” en Networks Security Wireless Communications
en realidad la mota M1 ha dejado de encaminar paquetes. El and Trusted Computing (NSWCTC), pp.494–497, 2010.
[8] A.D. Wood, J.A. Stankovic, “Denial of service in sensor networks”,
número de paquetes necesario para que la mota M1 deje de Computer, vol.35(10), pp.54–62, 2002.
responder varı́a en cada ejecución y depende de la cantidad [9] Zolertia, “Platform Z1”, http://www.zolertia.com/ti
de envı́os correctos realizados y del tiempo transcurrido antes [10] Atmel, “Rzusbstick”, http://www.atmel.com/tools/rzusbstick.aspx
[11] KillerBee, “Homepage”, http://code.google.com/p/killerbee/
del ataque.
En general, según las pruebas llevadas a cabo, la mota M2
responde una decena de peticiones de Echo antes de que la
RECSI 2014, Alicante, 2-5 septiembre 2014

Análisis y Desarrollo de un Canal Encubierto en


una Red de Sensores
Jose A. Onieva Ruben Rios Bernardo Palenciano
Dpto. de Lenguajes y Ciencias Dpto. de Lenguajes y Ciencias Dpto. de Infraestructura de TTI
de la Computación de la Computación Algeciras
Universidad de Málaga Universidad de Málaga Email: bpalenciano@ttialgeciras.com
Email: onieva@lcc.uma.es Email: ruben@lcc.uma.es

Resumen—Continuamente aparecen nuevos estudios ası́ como En este trabajo comenzamos ofreciendo una visión general
nuevos desarrollos de canales encubiertos. Como veremos, existen de las caracterı́sticas y particularidades tanto de los cana-
más de cien diseños distintos para redes de ordenadores, pero les encubiertos como de las redes de sensores (sección II).
no hemos encontrado en la literatura ningún análisis, diseño
e implementación de canales encubiertos sobre redes de sen- Seguidamente, en la sección III analizamos los requisitos
sores. En este artı́culo presentamos los resultados del diseño e necesarios que deberı́a ofrecer un canal encubierto basado en
implementación de un canal multitasa basado en los tiempos redes de sensores a partir de un escenario ficticio. Asimismo,
de monitorización sobre una red de sensores. En este proceso presentamos el diseño de un canal encubierto multitasa que
se han establecido las principales propiedades necesarias y, en se ajusta a los requisitos establecidos anteriormente. En la
base a ellas, se desarrolla e implementa el canal encubierto. Se
describe el proceso de desarrollo y se analiza su detectabilidad. sección IV demostramos la viabilidad del diseño a partir
Palabras clave—Canales encubiertos (covert channels), De- de una prueba de concepto sobre una red de sensores. A
tección de intrusos (Intrusion detection), Information Warfare, continuación se presenta un analisis de la detectabilidad del
Redes de sensores (sensor networks), Seguridad de la Información canal (sección V). Por último, se presentan las conclusiones y
(Information Security), Seguridad en redes (Network Security). posibles lı́neas de trabajo futuro.
II. P RELIMINARES
I. I NTRODUCCI ÓN
II-A. Canales Encubiertos
La noción de canal encubierto surgió hace varias décadas en Los canales encubiertos pertenecen al campo de la ocul-
el contexto de los sistemas de seguridad multinivel [1], donde tación de la información. A diferencia de la criptografı́a,
procesos con distintos niveles de seguridad no deberı́an comu- que se preocupa de mantener desconocido el significado de
nicarse entre sı́. De esta forma, los canales encubiertos pueden la información, esta disciplina tiene como objetivo evitar el
definirse como “cualquier canal de comunicación que puede descubrimiento de la información en sı́.
ser aprovechado por un proceso para transferir información Para entender mejor el concepto de canal encubierto se suele
de manera que viola la polı́tica de seguridad del sistema” [2]. acudir al problema de los prisioneros (prisioners’ problem [5]):
Siendo una propiedad fundamental de estos canales que su Alice y Bob se encuentran en prisión y están intentando
presencia pase inadvertida ante un posible observador. desarrollar un plan para escapar. Se les permite comunicarse
Si bien los canales encubiertos nacen en el contexto de a condición de que Walter, el guardián, pueda inspeccionar
los sistemas de seguridad multinivel, el ámbito de estudio todas las notas que se intercambian. En el caso de que Walter
fue evolucionando a medida que los sistemas se conectaban detectara algún indicio de que Alice y Bob están planeando
entre sı́, dando origen a canales encubiertos en redes de fugarse, éste no les permitirı́a seguir comunicándose. Ası́ pues,
comunicación [3]. No obstante, hasta donde alcanza nuestro podemos ver que los canales encubiertos facilitan un medio
conocimiento, no existen diseños en redes de sensores. de comunicación que pase inadvertido a los ojos de un posible
Quizás el estudio más próximo a nuestro trabajo se encuen- examinador del contenido o del formato en el que se realiza
tre en [4], donde los autores presentan un análisis y diseño de una comunicación aparentemente normal.
canales encubiertos en protocolos de enrutamiento dinámico Existen numerosos estudios que aglutinan y clasifican los
para redes ad-hoc. En efecto, las redes de sensores pueden distintos tipos de canales en base a diversos criterios [6], [7].
ser consideradas como un tipo de red ad-hoc, pero presentan Sin embargo, la clasificación más utilizada, y que adoptamos
además un gran número de caracterı́sticas especı́ficas que en este artı́culo, se fundamenta en las técnicas de ocultación
obligan a focalizar el análisis y diseño de este tipo de canales utilizadas:
sobre ellas. Más aún cuando las redes de sensores están siendo Canales de almacenamiento (Storage Channels): son
cada vez más utilizadas para la monitorización y control de aquellos que permiten que un proceso escriba en una
individuos, ambientes y recursos en multitud de escenarios, zona de memoria para que otro proceso recupere tal
tanto militares como civiles. información mediante la lectura de tal zona.
334 Jose A. Onieva, Ruben Rios, Bernardo Palenciano

que los nodos responden a las consultas realizadas por los


usuarios de la red.
Internet BS La versatilidad de estas redes y su reducido tamaño hace
de ellas una solución ideal para multitud de aplicaciones de
monitorización y control, donde los dispositivos se integran
discretamente en el entorno. De hecho, este tipo de redes ya
ha sido aplicada con éxito en multitud de escenarios [10], lo
usuario sensores que las convierte en sistemas cada vez más aceptados.
Al mismo tiempo, esto puede suponer un mayor interés
Figura 1. Red de sensores
por explotar este tipo de redes con fines maliciosos. Se hace
necesario por tanto un minucioso estudio sobre la viabilidad
de desarrollar canales encubiertos en redes de sensores, pues
Canales de temporización (Timing Channels): en estos
su utilización repercutirı́a negativamente en la seguridad y pri-
canales un proceso codifica información mediante la
vacidad de los entornos donde se desplieguen estos sistemas.
modulación de su propio comportamiento de manera
que otro proceso al observar estos cambios es capaz de III. E STUDIO Y A N ÁLISIS
recuperar la información señalizada.
III-A. Escenario
Si bien esta clasificación es muy general y está orientada
a procesos, es igualmente válida para canales encubiertos en Para la creación de un canal de comunicación oculto, en
redes de comunicación, teniendo en cuenta que las zonas primer lugar, es necesario plantearse su aplicabilidad, y para
de memoria referidas en los canales de almacenamiento se ello lo más indicado es idear un escenario de uso ficticio en
corresponden a determinados campos de los paquetes de el que podrı́a ser utilizado.
red y la modulación del comportamiento en los canales de Supongamos una empresa dedicada al cultivo y venta de
temporización puede hacerse evidente cambiando la tasa de mejillones en el Estrecho de Gibraltar. La empresa hace
envı́o de paquetes. uso de una red de sensores en la zona con el objeto de
monitorizar las condiciones del medio marino y conseguir
II-B. Redes de Sensores ası́ un mejor producto. Sin embargo, ésta no es la única
actividad desarrollada por la compañı́a. Aprovecha su situa-
Una red de sensores [8] es un sistema distribuido formado
ción privilegiada para llevar a cabo un transporte ilegal de
por un gran número de dispositivos de capacidad y tamaño
sustancias en contenedores.
reducido (denominados nodos o motas) cuyo objetivo es
Supongamos además que Alice y Bob son agentes de
monitorizar un determinado fenómeno fı́sico gracias a los
la Guardia Civil que sospechan de las actividades ilegales
sensores que incorporan. Una vez detectada información de
desarrolladas por la empresa citada anteriormente. Con el
relevancia, ésta es transmitida de manera inalámbrica hasta
fin de destapar el tráfico de sustancias, Alice se infiltra
un dispositivo (conocido como estación base o sink) que se
en la compañı́a y necesita informar a Bob del contenedor
encarga de procesarla y ofrecerla a los usuarios de la red,
donde se transportan las sustancias ilegales para que pueda
como se muestra en la Figura 1.
atraparlos en el acto. Alice, que teme por su integridad fı́sica
Dado que la estación base es la encargada de obtener toda
si fuese descubierta informando de esta actividad, decide idear
la información de los sensores, el modelo de comunicación
un mecanismo de comunicación oculta utilizando la red de
más habitual es de muchos a uno, donde caben dos opciones
sensores. Sin embargo, por cuestiones geográficas, Bob sólo
dependiendo del número de sensores desplegados y el rango
tiene acceso a un número limitado de sensores.
de transmisión de estos. En el modelo de un único salto todos
Nuestro canal oculto de comunicación deberı́a ser de utili-
los nodos de la red transmiten directamente a la estación base
dad para que Alice pueda informar a Bob del contenedor en
sin necesidad de realizar enrutamiento. Es más simple, pero
el que se encuentran las sustancias ilegales sin ser delatada.
sólo es posible cuando el número de nodos y el área de
despliegue es reducida. En el modelo multisalto, los nodos III-B. Requisitos del canal
que se encuentran alejados utilizan a sus vecinos para hacer
A continuación analizamos los requisitos que serı́an desea-
llegar sus datos a la estación base. Normalmente utilizando el
bles para el tipo de canal encubierto que necesitarı́an Alice y
camino más corto o protocolos de inundación.
Bob a fin de alcanzar su objetivo en el escenario propuesto.
Por otro lado, existen diferentes modos de funcionamiento o
de notificación de eventos. Por lo general, suelen distinguirse Grado de detectabilidad. El canal de comunicación oculto
las tres alternativas [9]. En la monitorización continua los no- debe ser difı́cilmente detectable. Esta caracterı́stica se ve
dos envı́an información sobre el entorno de manera periódica, facilitada por el hecho de ser las redes de sensores un
mientras que en el modelo de monitorización basado en even- campo bastante inexplorado en la búsqueda de este tipo
tos se transmite información únicamente cuando un parámetro de canales1 .
alcanza un valor excepcional (i.e., ocurre un evento). Además, 1 Como hemos indicado previamente, en este trabajo presentamos el primer
existe un modo de monitorización basado en consultas en el canal encubierto para redes de sensores.
Análisis y Desarrollo de un Canal Encubierto en una Red de Sensores 335

emisor receptor
Ancho de banda moderado. La capacidad del canal no n
se considera un factor esencial ya que la intención es el
envı́o de pequeñas cantidades de información, como por
t=2
n
t=2 H

ejemplo, la referencia de un contenedor. t=3 t=3 O


Integridad. Debido a que la información enviada es sen- n
sible, es necesario que ésta sea recibida correctamente.
Sentido de la comunicación. Basta con crear un canal
t=1
n
t=1 L

unidireccional, pues el propósito no es realizar un inter- t=4 t=4 A

cambio de datos sino, simplemente, comunicar informa-


ción desde un punto a otro.
Estas particularidades determinarán el ámbito de aplicabili- Figura 2. Codificación y sincronización
dad del canal, y a su vez éste puede condicionar la decisión
del tipo de canal a implementar.
t = 15s t = 30s
III-C. Configuración de la red Bob Bob

El escenario de aplicación determina el modo de funciona-


miento y configuración de la red, y esto, a su vez, influye en
el tipo de canal encubierto que es más conveniente desarrollar
dado los requisitos establecidos anteriormente.
BS BS
Debido a que el objetivo de nuestra red de sensores es
Alice Alice
la de tomar valores de diferentes parámetros del agua cada (a) Estado inicial (canal sin actividad) (b) Cambia el intervalo (canal activo)
cierto intervalo de tiempo, el modo de funcionamiento más
Figura 3. Funcionamiento del canal multitasa
conveniente es el de monitorización continua.
Por otra parte, dado que los sensores se encontrarán des-
plegados en un área extensa se hace imposible el uso de un último caso harı́a falta una sincronización muy fiable, o la
modelo en un único salto, ya que el rango de transmisión de integridad exigida al canal serı́a difı́cil de conseguir.
estos harı́a imposible que se comunicaran directamente con la Para desarrollar un canal multitasa en nuestra red de senso-
estación base. Ası́, el modelo de enrutamiento multisalto es el res, puesto que su funcionamiento es en modo monitorización
más adecuado para nuestro escenario. continua y se envı́an paquetes de forma periódica siguiendo
En cuanto al sistema operativo de la red de sensores, cabe un tiempo preestablecido t, se tiene que cambiar el tiempo
destacar Contiki [11] y TinyOS [12]. En este trabajo nos de monitorización según sea necesario. En nuestro escenario,
hemos decantado por Contiki debido a las bondades de su Bob observa constantemente los mensaje enviados en la red
simulador. de sensores. Mientras la estación base no envı́e información
oculta, los nodos estarán configurados para enviar mensajes
III-D. Diseño de un canal multitasa
cada intervalo t. En otro caso, la estación base comunicará a
Debido a que el cambio en la frecuencia de monitoriza- los nodos la supuesta intención de reconfigurar los tiempos de
ción de los sensores es normal para atender a las distintas monitorización con la excusa de cambiar la estrategia de toma
circunstancias que se producen en el medio, a los requisitos de de datos. Los nodos no volverán a comunicarse con la estación
consumo de energı́a y a las necesidades de procesamiento de base hasta pasado el tiempo ordenado, como se muestra en la
la estación base, utilizar estos cambios para la implementación Figura 3, donde inicialmente los nodos transmiten cada 15s
de un canal encubierto parece prometedor. y más tarde se cambia el intervalo de notificación a 30s. De
Al diseñar un canal de temporización podemos optar por esta forma, Bob podrá interpretar los distintos cambios en el
una canal binario, tal y como se hiciera en [13], o podemos intervalo de monitorización y finalmente obtendrá su mensaje.
inclinarnos por un canal multitasa. En un canal binario, cada A pesar de que hemos investigado otras posibilidades de
cierto intervalo de tiempo, el emisor puede enviar un paquete o ocultación, teniendo también en cuenta la posibilidad de
mantenerse en silencio. El receptor monitoriza cada intervalo desarrollar canales de almacenamiento, estos últimos suponen
de tiempo para determinar si un paquete fue recibido o no. cambios que podrı́an degradar el uso de la red de sensores
El resultado es un código binario donde un 1 representa la (e.g. por cambios en los parámetros de enrutamiento) y la vida
detección de un paquete en el intervalo y un 0 representa la útil de la misma, además de ser susceptibles a varias técnicas
ausencia del mismo. En un canal multitasa, emisor y receptor de detección. Si bien para los canales de temporización
acuerdan dos conjuntos (intervalos de tiempo, carácter) y la desarrollados hasta ahora en redes de datos convencionales
correspondencia entre ellos. Ası́, cada intervalo de tiempo también se han desarrollado técnicas de detección basadas
distinto corresponderá a un único carácter (ver Figura 2). en la regularidad del envı́o de los paquetes de datos [14],
Pueden producirse errores de decodificación si los tiempos de éstas no son aplicables a las redes de sensores que, por
los distintos intervalos son muy parecidos. Es decir, en este diseño, en el caso de redes de monitorización continua, ya
336 Jose A. Onieva, Ruben Rios, Bernardo Palenciano

Tabla I
C ODIFICACI ÓN DE CARACTERES Nodo Estación Nodo Estación
observado base observado base
Carácter Tiempo ··· Carácter Tiempo
t = 20s id = 1 t = 20s id = 1
FINAL 15 ··· f 130
cambio 20 ··· z 135 t = 40s id = 2 t = 40s id = 2

e 25 ··· j 140 t = 60s id = 3 t = 60s id = 3


a 30 ··· x 145
(espacio) 35 ··· w 150 t = 80s id = 4

o 40 ··· k 155 t = 120s id = 4


t = 100s id = 5
s 45 ··· ··· ···
t = 180s id = 5

presentan patrones de envı́o regulares. En cualquier caso, la (a) (b)


detectabilidad del canal diseñado se tratará más detenidamente Figura 4. Diferentes circunstancias de colisiones
en la sección V.
IV. D ESARROLLO DE UN CANAL MULTITASA
es de 30 segundos, podemos estar seguros de que pasados
El desarrollo de un canal encubierto multitasa requiere esta- 90 segundos desde que la estación base mandó la orden de
blecer una tabla de equivalencias entre intervalos y caracteres. monitorizar cada 30 segundos, se habrá transmitido tres veces
Asimismo, es necesario calcular previamente un intervalo de el carácter ‘a’. Y este tiempo de 90 segundos (tiempo del
funcionamiento normal de la red. Este tiempo vendrá determi- carácter × 3) será diferente para otro carácter. El motivo de
nado por el tipo de aplicación y en nuestro caso lo fijaremos enviar tres veces cada carácter es intentar reducir a cero el
en t = 15 segundos, en un intento de alcanzar un balance entre porcentaje de errores. Y es que en la implementación del canal
la actualidad de los datos y el tiempo de vida de las motas2 . nos hemos encontrado con un feroz enemigo: las colisiones.
Tras realizar pruebas de precisión con el simulador de Debido a que el medio de transmisión inalámbrico es
Contiki (más tarde confirmadas sobre la implementación que compartido, si un sensor recibe simultáneamente dos mensajes,
hemos realizado con motas Tmote Sky de Moteiv) un nodo ambos colisionan y por lo tanto ambos mensajes se vuelven
que haga las funciones de sniffer3 para Bob tiene un error incomprensibles. Esto puede llevar a confusiones por parte del
de precisión de 1 ∼ 2 segs en el cálculo del intervalo de sniffer a la hora de medir los tiempos transcurridos.
envı́o de paquetes. Por ello, y para asegurar el requisito de Las colisiones pueden afectar al nodo observado por Bob
integridad (en contra del ancho de banda) hemos seleccionado tanto durante el envı́o como durante la recepción de paquetes.
un incremento de 5 segundos en los intervalos que diferencian Tras múltiples tests en nuestro escenario de pruebas (similar
a los distintos caracteres, como puede apreciarse en la tabla I. al de la Figura 3) se constata que las colisiones de los
En dicha tabla se ha utilizado un conjunto de caracteres paquetes recibidos en este nodo suponen un 5 % del total
reducido del castellano y se ha aplicado una codificación de de las colisiones. Sin embargo, las que más nos interesan,
Huffman [16] según la frecuencia de aparición de estos con el y que suponen un 95 % del total de las colisiones, son las
fin de reducir el retraso de las comunicaciones, aumentando que afectan a los paquetes que envı́a el nodo. A fin de
ası́ el ancho de banda efectivo del canal. Además, como puede detectarlas, los paquetes han de contar con un identificador
verse, cuando el intervalo de envı́o de datos por parte de las en la cabecera para que el sniffer pueda compararlo con el
motas vuelve al original (i.e. 15 segundos), se produce el final identificador de paquetes consecutivos. Si el sniffer recibe el
del mensaje enviado. paquete con identificador 3 y a continuación recibe el paquete
Para implementar el sniffer en el simulador de Contiki es con identificador 5, calcula que entre ambas recepciones se
necesario que los nodos de la red se comuniquen en modo perdió un paquete.
broadcast y que sea a nivel de aplicación donde se decida
Las pérdidas de paquetes individuales pueden darse en dos
si un paquete está dirigido a un nodo u otro. Es decir, el
circunstancias diferentes:
identificador del nodo destino va incluido en la carga útil
de datos o payload de los paquetes pero sólo el autentico 1. Se pierde un paquete durante un intervalo de tiempo en
destinatario lo procesa cuando observa su identificador. Ası́, el que la tasa de envı́o se mantiene inalterada.
el nodo que hace las funciones de sniffer puede observar y 2. Se pierde el primer paquete que cambiaba el intervalo
procesar todos los paquetes, aunque no estén dirigidos hacia de tiempo respecto a su predecesor.
él a nivel de aplicación. En la Figura 4 se observan las dos circunstancias posibles
En nuestro diseño final decidimos utilizar repeticiones con en un escenario en el que suponemos inicialmente t = 20
el fin de aumentar la integridad del canal. Por ejemplo, segundos y un cambio posterior a t = 60 segundos. En la
sabiéndose que el intervalo de transmisión de la letra ‘a’ primera se ve como el nodo espiado envı́a cuatro paquetes
a la estación base, los tres primeros cada 20 segundos y
2 La tendencia actual es incorporar células solares para alargar su vida útil
un último paquete 40 segundos después del tercero. El nodo
(e.g. ECS310 de enocean ). R
3 En el mercado existen varias soluciones que permiten esta funcionalidad, sniffer detecta la colisión del cuarto paquete, por lo que sabe
como es el caso de Jackdaw [15] que entre el instante 60 segundos y el instante 100 segundos
Análisis y Desarrollo de un Canal Encubierto en una Red de Sensores 337

se ha perdido un paquete. Tenemos que el tiempo transcurrido integridad, disponibilidad y la vida de la baterı́a. Dado que
entre el envı́o del paquete tres y el envı́o del paquete cinco es nuestro canal no afecta a ninguno de estos servicios, eludirı́a
40 segundos. Si se supone, como es el caso, que el paquete que la mayorı́a de las soluciones de seguridad actuales.
se ha perdido fue enviado transcurrido el mismo intervalo que Como ya se ha comentado con anterioridad, las redes de
el último recibido, sólo tenemos que coger los 40 segundos y sensores son un tipo de red ad-hoc inalámbricas cuyas diferen-
dividirlos por 2, obteniendo que el intervalo transcurrido entre cias hacen inviable la aplicación de IDSs (Intrusion Detection
el paquete colisionado y el quinto paquete es de 20 segundos. Systems) desarrollados para redes ad-hoc. Para empezar, la
Para la segunda circunstancia, si utilizáramos la misma capacidad de los nodos impide instalar un agente de detección
solución se obtendrı́a que el tiempo transcurrido entre el completo. Por ello, se usan soluciones parciales como:
paquete colisionado, el número tres, y el paquete cuatro es Analizar las fluctuaciones en las lecturas de los sensores
de 40 segundos, por lo que obtendrı́amos un tiempo erróneo. Analizar la integridad del código
Esta circunstancia se soluciona almacenando en cada captura Vigilar la información intercambiada entre los sensores
de tráfico el intervalo del último envı́o y restándoselo al Ante un IDS dedicado al análisis de las lecturas de los
tiempo transcurrido entre las dos últimas transmisiones con sensores, nuestro canal encubierto pasarı́a totalmente desaper-
éxito. En este caso, con la captura del paquete número dos cibido puesto que no altera dichos valores. De igual forma, la
almacenarı́amos el intervalo 20 segundos, al recibir el cuarto vigilancia de la información intercambiada entre los sensores
paquete transcurridos 80 segundos detectarı́amos la colisión no pondrı́a de manifiesto el canal encubierto puesto que no se
y a estos 80 segundos le restarı́amos el intervalo almacenado modifica ninguno de los campos de los paquetes. A su vez,
anteriormente de 20 segundos, obteniendo el resultado de 60 un exhaustivo estudio del código que forma el programa de
segundos. las motas tampoco supondrı́a un problema, ya que la única
Aunque se sabe como solucionar ambos casos, el gran funcionalidad sospechosa (los envı́os de cambios de tiempo
problema es que resulta imposible saber durante la ejecución de monitorización) se realizarı́an desde la estación base y sin
en que circunstancia nos encontramos. Por ello, optando necesidad de modificar su código.
por alguna de las dos soluciones conseguiremos reducir el En [17] se propone una solución de IDS especı́fico para re-
número de errores aunque no por completo. Además, este des de sensores. Esta solución considera dos tipos de agentes:
esquema podrı́a requerir un pequeño cambio en el código de locales y globales. Los agentes locales monitorizan tanto las
la aplicación de las motas de forma que se puedan numerar operaciones realizadas como la información enviada y recibida
los paquetes (si el propio protocolo de envı́o de paquetes por el nodo. Por tanto, los agentes locales detectarı́an los
de la aplicación de las motas no lo hace por defecto). Si ataques que afecten la integridad fı́sica o lógica de la mota
bien, el cambio es mı́nimo, como veremos en la sección V, ası́ como el intento de influenciar en la recogida de datos por
de producirse, éste aumentarı́a la detectabilidad del canal por parte de entidades no autorizadas.
parte de agentes locales. Por otro lado, los agentes globales vigilan las interaccio-
Dado que el requisito de integridad de los datos es esencial nes con sus vecinos inmediatos, comportándose a modo de
en nuestro escenario, en una segunda implementación del canal guardián que analiza y procesa el contenido paquetes. Estos
encubierto hemos debido corregir las colisiones mediante la agentes serı́an capaces de detectar si un nodo está borrando
replica de intervalos (y el control de estas repeticiones para o modificando algún campo de los paquetes intercambiados
mantener la integridad del mensaje decodificado), reduciendo por las motas antes de retransmitirlo. En el caso de detectar
ası́, desafortunadamente, el ancho de banda de manera drástica. alguna amenaza de seguridad, el agente generarı́a información
No obstante, como habiamos extraido en III-B, se trata del de alerta y la enviarı́a a la estación base.
requisito menos estricto de todos. Dado que nuestro canal no modifica el estado de los
Tras multiples simulaciones, en esta segunda implementa- nodos ni la información contenida en los paquetes de manera
ción hemos logrado un ancho de banda de 1/230 caracter/seg. arbitraria, los agentes descritos no serı́an capaces de detectarlo.
Esto significa que para comunicar en nuestro escenario el Sı́ podrı́an levantar ciertas sospechas los continuos mensajes
identificador de referencia de un contenedor de 10 caracteres, de actualización de la tasa de transferencia por parte de la
por ejemplo; Alice necesitarı́a unos 38 minutos4 . La tasa de estación base. Aunque la estación base es un nodo autorizado,
error detectada inherente al escenario y el funcionamiento que y, además, su comportamiento entrarı́a dentro del uso normal
realiza es del 4 %. de la red. No obstante, continuos cambios en estos tiempos
V. E STUDIO DE DETECTABILIDAD (si queremos enviar un mensaje oculto con 10 caracteres, se
cambiarı́an los tiempos de monitorización 20 veces en un
Debido a la naturaleza inalámbrica de las redes de sensores, intervalo de tiempo relativamente corto, ya que utilizamos
un atacante podrı́a escuchar las transmisiones e incluso inyec- también un carácter de cambio por cada cambio de caracter),
tar tráfico en la red; especialmente si la red está desplegada si el mensaje enviado en el canal encubierto es muy largo,
en un entorno hostil. Por ello, la seguridad en redes de sen- podrı́an levantar sospechas en el caso de que se produzca un
sores se centra en proteger cuatro aspectos: confidencialidad, análisis detallado de esta frecuencia.
4 La adecuación del tiempo necesario para transmitir un mensaje será rela- Una posible solución ante este problema serı́a utilizar varias
tivo al objetivo que se persigue en la comunicación oculta. motas para enviar los datos ocultos. De esta forma, cada uno
338 Jose A. Onieva, Ruben Rios, Bernardo Palenciano

de los nodos no recibirı́a un volumen notorio de notificaciones desventajas y ventajas asociadas): canal encubierto sobre uIP,
de cambio de intervalo, y los agentes locales de estos nodos utilización de los campos de protocolos de enrutamiento (RSSI
no verı́an como una situación anómala el recibir un número y LQI), y modificación de las rutas seguidas por los paquetes.
dado de notificaciones, que se verı́a reducido en función del También resulta de interés indicar que se ha llevado a
número de motas utilizadas. cabo la implementación del canal propuesto como prueba
Para que esta solución tuviese sentido es necesario que el de concepto sobre el simulador de Contiki y evaluado su
sniffer pueda monitorizar varios nodos de manera simultánea, funcionamiento desplegándolo sobre un número muy reducido
ya sea porque la ganancia de su antena se lo permite o porque de motas fı́sicas. Se hace por tanto necesario llevar a cabo un
tiene varias antenas en distintas ubicaciones. Asimismo, serı́a despliegue sobre una red de sensores real con objeto de hacer
necesario establecer una secuencia predefinida de motas a mediciones más fiables.
observar por parte de Bob, por lo que la implementación y
AGRADECIMIENTOS
sincronización del canal se hace más compleja. Nótese que
en este último caso se abren nuevas vı́as de ocultación. Se Este trabajo ha sido sido financiado parcialmente por el
podrı́a investigar, por ejemplo, desarrollar un canal encubierto Ministerio de Ciencia e Innovación y de la Junta de Andalucı́a
de conteo (i.e., se codifican los caracteres en función del a través de los proyectos ARES (CSD2007-00004) y FISICCO
número de nodos que envı́en en un intervalo) o bien un canal (P11-TIC-07223), respectivamente.
de ordenación (i.e., el orden de envı́o indica la información). R EFERENCIAS
El empleo de técnicas de detección dependerá siempre de
[1] B. W. Lampson, “A Note on the Confinement Problem,” Commun. ACM,
las caracterı́sticas de la aplicación y del escenario concreto vol. 16, no. 10, pp. 613–615, 1973.
sobre el que dicha aplicación se ejecuta. Dada la sobrecarga [2] S. L. Brand, “Department of Defense Trusted Computer System
que pueden introducir estos mecanismos, en términos de Evaluation Criteria - The Orange Book,” U.S. Department of
Defense, Tech. Rep. DoD 5200.28-STD, 1985. [Online]. Available:
transmisión sobre el medio inalámbrico y de procesamiento y http://csrc.nist.gov/publications/history/dod85.pdf
almacenamiento en los nodos, su uso puede resultar justificable [3] Center for Advanced Internet Architectures, “Covert Channels in
únicamente en aplicaciones con fuertes requisitos de seguridad Computer Network Protocols Bibliography,” March 2014. [Online].
Available: http://caia.swin.edu.au/cv/szander/cc/cc-cnetworks-bib.html
y en las que los dispositivos involucrados dispongan de la su- [4] S. Li and A. Ephremides, “Covert channels in ad-hoc wireless networks,”
ficiente capacidad y autonomı́a como para que la ejecución de Ad Hoc Networks, vol. 8, no. 2, pp. 135 – 147, 2010.
un sistema de detección no imponga una limitación intolerable [5] G. J. Simmons, “The Prisoners’ Problem and the Subliminal Chan-
nel,” in Advances in Cryptology: Proceedings of CRYPTO, ser. LNCS,
sobre las prestaciones ofrecidas al usuario final. D. Chaum, Ed. Santa Barbara, California, USA: Plenum Press, August
Ası́ pues, se puede concluir que nuestro canal de comunica- 21-24 1983, pp. 51–67.
ción oculto es lo suficientemente difı́cil de detectar como para [6] C. Meadows and I. S. Moskowitz, “Covert Channels – A Context-
Based View,” in Proceedings of the First International Workshop on
pasar desapercibido ante sistemas de detección usuales. No Information Hiding. London, UK: Springer-Verlag, 1996, pp. 73–93.
obstante, agentes locales que llevaran a cabo un análisis en [7] J. Shen, S. Qing, Q. Shen, and L. Li, “Optimization of Covert Channel
la estadı́stica de los cambios de frecuencia en los mensajes Identification,” in SISW ’05: Proceedings of the Third IEEE Interna-
tional Security in Storage Workshop. Los Alamitos, CA, USA: IEEE
de monotorización de las motas podrı́an elevar las alertas Computer Society, 2005, pp. 95–108.
necesarias para comenzar a investigar la existencia de dicho [8] J. Yick, B. Mukherjee, and D. Ghosal, “Wireless sensor network survey,”
canal. Computer Networks, vol. 52, no. 12, pp. 2292 – 2330, 2008.
[9] J. Al-Karaki and A. Kamal, “Routing techniques in wireless sensor
VI. C ONCLUSIONES networks: a survey,” IEEE Wireless Communications, vol. 11, no. 6,
pp. 6 – 28, dec. 2004.
En este artı́culo hemos diseñado una canal encubierto sobre [10] L. Krishnamurthy, R. Adler, P. Buonadonna, J. Chhabra, M. Flanigan,
N. Kushalnagar, L. Nachman, and M. Yarvis, “Design and deployment
una red de sensores con un ancho de banda muy limitado pero, of industrial sensor networks: Experiences from a semiconductor
hasta donde alcanza nuestro conocimiento, es el primer intento plant and the north sea,” in Proceedings of the 3rd International
de análisis, diseño e implementación de este tipo de canales Conference on Embedded Networked Sensor Systems, ser. SenSys ’05.
New York, NY, USA: ACM, 2005, pp. 64–75. [Online]. Available:
en este entorno. http://doi.acm.org/10.1145/1098918.1098926
Para ello hemos ideado un escenario ficticio y extraı́do [11] “Contiki: The open source os for the internet of things.” [Online].
los requisitos principales del canal. A partir de estos se ha Available: http://www.contiki-os.org/
[12] “Tinyos official website.” [Online]. Available: http://www.tinyos.net/
desarrollado un canal de temporización multitasa y se ha [13] S. C. Cabuk S., Brodley C.E., “Ip covert timing channels: Design and
llevado a cabo un estudio sobre la detectabilidad de este tipo detection,” in Proceedings of the 11th ACM Conference on Computer
de comunicaciones en redes de sensores. Si bien el ancho de and Communications Security. ACM Press, 2004.
[14] S. Cabuk, C. E. Brodley, and C. Shields, “Ip covert channel detection,”
banda del canal es mejorable, hemos preferido, acorde con los ACM Trans. Inf. Syst. Secur., vol. 12, pp. 22:1–22:29, April 2009.
requisitos extraı́dos, primar la integridad de los datos enviados. [15] “Rzraven usb stick (jackdaw).” [Online]. Available: http://www.ibr.cs.
Asimismo hemos encontrado nuevas vı́as de ocultación que tu-bs.de/projects/mudtn/doxygen/a01892.html
[16] D. Huffman, “A method for the construction of minimum-redundancy
estamos analizando en la actualidad. En concreto, se tratan de codes,” in Proceedings of the I.R.E., editor, Ed., pp. 1098–1102.
canales de almacenamiento y modificación del enrutamiento; [17] R. Roman, J. Zhou, and J. Lopez, “Applying intrusion detection systems
por lo que habrá que analizar detenidamente sus implicaciones to wireless sensor networks,” in IEEE Consumer Communications &
Networking Conference (CCNC 2006), IEEE. Las Vegas (USA): IEEE,
a nivel de detectabilidad y de funcionamiento de la red. Más January 2006, pp. 640–644.
especı́ficamente, tres son los candidatos (que presentan sus
Índice de autores

Abril, Daniel, 281 Garcı́a, Gerard, 203


Alonso, Jose Marı́a, 285 Garcı́a Teodoro, Pedro, 309, 321
Álvarez, Rafael, 237 Garcı́a Villalba, Luis Javier, 157, 163, 233, 265, 271, 277, 297
Arenas González, David Manuel, 265, 271, 277 Garitano, Iñaki, 315
Arenaza Nuño, Ignacio, 253, 315 Garrido Sánchez, Pablo, 321
Aznar, Francisco, 29 Garrigues, Carles, 221
Gayoso Martı́nez, V., 185
Benkaryouh, Youssef, 291 Gimeno, Cecilia, 29
Blanco Justicia, Alberto, 69, 107 González Manzano, Lorena, 209
Borrego, Carlos, 203 González Tablas, Ana I., 209
Borrell, Joan, 119 Guasch, Sandra, 197
Buiati, Fábio, 233 Guzmán, Antonio, 145, 285

Caballero Gil, Cándido, 75, 87 Hecht, Juan Pedro, 19


Caballero Gil, Pino, 13, 51, 75, 179 Hernández Álvarez, F., 185
Camacho, J., 309 Hernández Encinas, L., 185
Cano M., Jeimy J., 215 Hernández Goya, Candelaria, 179
Cardell, Sara D., 7 Hernández Serrano, Juan, 87
Casado, Abel, 19 Herrera Joancomartı́, Jordi, 241
Castellà Roca, Jordi, 93, 291 Hinarejos, M. Francisca, 125, 247
Caubet, Juan, 101 Holgado, Pilar, 133
Cerveró, M. A., 81
Climent, Joan Josep, 57 Isern Deyà, Andreu Pere, 247
Conde, Josep, 45 Iturbe, Mikel, 315
Cucurull, Jordi, 197
Jardı́ Cedó, Roger, 93
de Fuentes, José M., 209 Jódar Ciurana, Enric, 259
de los Santos, Sergio, 145
de Oliveira Albuquerque, Robson, 233 Kabatyanskiy, Grigory, 39
de Toro, M. Carmen, 119
Dı́az Verdejo, J., 309 León, Olga, 87
Domingo Ferrer, Josep, 69, 107 Lerch-Hostalot, Daniel, 173
Dorca, Aleix, 327 Lopez, Javier, 303
Draper Gil, Gerard, 125 López Ramos, Juan A., 57

Esparza, Oscar, 101 Maciá Fernández, G., 309


Ezquerra, Daniel, 119 Maestre Vidal, Jorge, 163
Magán Carrión, Roberto, 321
Fabregas, Ángela, 119 Marqués Arpa, Tomás, 167
Farràs, Oriol, 107 Márquez Alcañiz, Luis, 191
Fernández, Marcel, 39 Martı́n Fernández, Francisco, 75
Fernández Medina, Eduardo, 191, 227 Martı́n Del Rey, Ángel, 139
Ferrer Gomila, Josep Lluı́s, 125, 247 Martı́nez, Santi, 45
Fúster Sabater, Amparo, 7, 13, 51, 63, 139 Mateos, Verónica, 133
Mateu, V., 81
Garcı́a Alfaro, Joaquı́n, 151 Megı́as, David, 173
Garcı́a Font, Victor, 221 Mellado, Daniel, 191

341
342

Miret, Josep M., 35, 81 Soriano Ibañez, Miguel, 87


Molina Gil, Jezabel, 51, 87
Molins, José, 25 Tena, Juan G., 35
Montoya Vitini, F., 185 Tomàs, Rosana, 45
Moreira, José, 39 Tornos, José Luis, 113
Muñoz, Jose L., 101 Torra, Vicenç, 281
Muñoz, Alfonso, 145, 285 Tortosa, Leandro, 57
Munilla, J., 63
Mut Puigserver, Macià, 93 Uribeetxeberria, Roberto, 253, 315

Valera, J., 81
Navarro Arribas, Guillermo, 281
Valls, Magda, 45
Nieto, Ana, 303
Vera Del Campo, Juan, 259
Onieva, Jose A., 333 Viejo, Alexandre, 93, 291
Orúe López, A., 185 Villagrá, Victor A., 133

Zamora, Antonio, 237


Palenciano, Bernardo, 333
Zapata Guridi, Jorge Alberto, 271
Payeras Capellà, M. Magdalena, 93
Zurutuza, Urko, 253, 315
Pegueroles Vallés, Josep, 259
Peinado, A., 63
Pérez Solà, Cristina, 241
Petrović, Slobodan, 3
Piattini, Mario, 227
Portela Garcı́a-Miguel, Javier, 297

Ramió Aguirre, Jorge, 19


Diego Ray, 133
Ribagorda, Arturo, 209
Rico, Rafael, 25
Rifà Pous, Helena, 221
Rios, Rubén, 333
Rivero Garcı́a, Alexandra, 179
Robles, Sergi, 203
Rodrı́guez Sanchez, Gerardo, 139
Román Muñoz, Fernando, 157
Romero Tris, Cristina, 151, 291
Romo Torres, Hiram Jafet, 265
Rosado, David G., 191
Rosales Corripio, Jocelin, 265, 271, 277
Rubio Hernán, Jose, 151

Sabido Cortés, Iván Israel, 157


Sadornil, Daniel, 35, 45
Salazar, José Luis, 113
Sánchez, David, 107
Sánchez-Azqueta, Carlos, 29
Sánchez, Adrià, 203
Sánchez Casado, Leovigildo, 321
Sánchez, Luis Enrique, 227
Sandoval Orozco, Ana Lucila, 265, 271, 277
Santonja, Juan, 237
Santos Olmo, Antonio, 227
Sebé, F., 81
Serra Ruiz, Jordi, 167, 327
Silva Trujillo, Alejandra Guadalupe, 297
Somarriba, Oscar, 253
2014 © los editores, Universidad de Alicante
ISBN: 978-84-9717-323-0

También podría gustarte