Documentos de Académico
Documentos de Profesional
Documentos de Cultura
S3 02 PrCaAn
S3 02 PrCaAn
GSM
Alberto Peinado
1 Introducción
La arquitectura del sistema GSM [8] se compone de las estaciones móviles (MS) que
se comunican a través de enlaces radioeléctricos con las estaciones base (BS), las
cuales se encuentran conectadas a centros de conmutación móviles (MSC). Estos
MSC, que están interconectados, son los encargados de facilitar la conexión entre los
enlaces radioeléctricos y la red fija. Por otra parte, el sistema dispone de una base de
datos denominada HLR que contiene el registro de todos los usuarios del sistema junto
con su localización, y de otra base de datos VLR ubicada en cada MSC que contiene
información de los usuarios visitantes en su área de localización. El AUC es el centro
de autenticación de usuarios que contiene las claves individuales Ki de cada usuario, y
es en consecuencia parte fundamental del proceso de autenticación.
Si bien es cierto que UMTS ha redefinido sus funciones y servicios relacionados con
la privacidad y la autenticación con el fin de solucionar los problemas que presentaba
GSM, también lo es el hecho de que GSM no va a desaparecer de inmediato. Es por
esto, que todavía continúan apareciendo nuevas propuestas para mejorar la autentica-
ción en GSM, definida en la recomendación 02.09 [10] cuyos problemas se pueden
resumir en los siguientes cuatro puntos:
A consecuencia de esto han venido apareciendo diversas propuestas que han intentado
solucionar total o parcialmente los mencionados problemas, al tiempo que proporcio-
naban algún servicio adicional como el no-repudio o la utilización de canales anóni-
mos. Por ejemplo, en 1998 Al-Tawil et al [1] propusieron un nuevo método de auten-
ticación con menor tasa de tráfico de señalización y menor tiempo de establecimiento
de llamada, aunque no conseguía resolver los problemas del protocolo original. Por
otro lado, Lo y Chen, en 1999 [6,7] propusieron un nuevo sistema de comunicaciones
seguras para GSM basado en criptografía de clave pública. El gran inconveniente de
esta propuesta es que propone una arquitectura completamente distinta a la original.
En cualquier caso, y aunque los problemas exclusivos de la autenticación quedaban
resueltos, los derivados del aumento del tráfico entre VLR y HLR, el espacio de alma-
cenamiento en los VLR , y la sobrecarga del HLR seguían estando presentes. Parale-
lamente, Stach [9] presentó una modificación que proporcionaba no repudio de servi-
cio gracias a la utilización de una función unidireccional adicional.
La primera propuesta que consigue eliminar parcialmente los problemas del protocolo
original sin alterar la arquitectura original de GSM se debe a Lee et al [3], que resuel-
ve los problemas b)-d). Recientemente, Lee et al [4] han propuesto una extensión del
protocolo de autenticación GSM que resuelve a)-d), consiguiendo la autenticación
mutua entre MS y BS, la reducción del consumo de ancho de banda entre VLR y
HLR, la reducción del tamaño de almacenamiento necesario en los VLR, y la descarga
del HLR permitiendo la autenticación del MS por parte del VLR, sin necesidad de
acudir en todo momento al HLR.
Este último protocolo [4] sirve de punto de partida para la propuesta que se presenta
en este artículo con el objetivo de proporcionar, además, autenticación sobre canales
anónimos en GSM. Por otra parte, el protocolo de Lin y Jan [5] para autenticación
sobre canales anónimos permite desarrollar en combinación con [4] un protocolo efi-
ciente de autenticación sobre canal anónimo en GSM que satisfaga los requisitos men-
cionados. Es importante mencionar que sólo es utilizable la estructura general de [5],
puesto que se ha demostrado en [2] la vulnerabilidad del principio de autenticación,
consiguiendo acceder ilegalmente al sistema mediante la generación de tickets falsos.
La seguridad del sistema GSM está basada en los algoritmos A3, A5 y A8, de tal mo-
do que A5 es el responsable de cifrar las comunicaciones entre MS y BS mediante una
clave de sesión Kc, que se establece previamente entre MS y BS, una vez que el MS ha
sido autenticado. Para ello, el MS debe calcular y devolver al sistema una respuesta
SRESm a partir de un desafío RAND que debe cifrar con el algoritmo A3 utilizando su
clave Ki que comparte con el HLR/AUC del sistema. Ese mismo desafío RAND sirve
para calcular la clave de sesión Kc mediante el algoritmo A8 y la clave Ki.
El VLR debe almacenar esos tríos de parámetros con el fin de utilizarlos en sucesivas
autenticaciones de este mismo MS. En cada una de estas autenticaciones el VLR envía
al MS el desafío RANDi. El MS calcula SRESm = A3(Ki, RANDi) y lo devuelve al VLR,
que lo compara con el SRESi del correspondiente trío que ha sido generado por HLR,
y calcula también la clave de sesión Kc = A8(Ki, RANDi) que utilizará para cifrar las
posteriores comunicaciones.
Por último, cuando el VLR recibe SRESm debe comprobar si su valor coincide con
SRESi. En tal caso, el MS queda autenticado.
Este protocolo está basado en la generación de una clave secreta temporal TKi que
genera el HLR y permite al VLR autenticar al MS sin necesidad de conectarse poste-
riormente con el HLR, y sin necesidad de que el VLR conozca la clave Ki.
b) Del mismo modo que en el GSM original, el nuevo VLR obtiene el IMSI del MS
y lo envía al HLR junto con su identidad VLR_ID y el sello de tiempo T, utilizan-
do un canal seguro.
Nótese que este protocolo se basa en los algoritmos A3 y A5, y por tanto, la seguridad
del protocolo también depende de la seguridad de estos algoritmos. No hay que con-
fundir en ningún caso los algoritmos genéricos A3, A5 con sus implementaciones
particulares que han sido en varias ocasiones criptoanalizadas. Lo que este protocolo
permite es una implementación sencilla y eficiente, puesto que podrá utilizar los algo-
ritmos que el sistema GSM defina para su funcionamiento, evitando una sobrecarga de
las aplicaciones que puede ejecutar la SIM del usuario.
En [5], Lin y Jan presentan un protocolo (LJ) de autenticación sobre canales anónimos
para redes inalámbricas que puede ser aplicado a GSM. Este protocolo fue diseñado
suponiendo que existe o que se puede implementar una infraestructura de clave públi-
ca en el sistema, y se basa en la generación de tickets de prepago que permitan su
posterior utilización de forma anónima. El procedimiento de autenticación se divide en
dos fases: la fase de generación del ticket, y la fase de autenticación o utilización del
ticket.
En esta sección no se describe con detalle el protocolo LJ, puesto que ya se ha demos-
trado en [2] que el sistema es inseguro y pueden generarse tickets falsos para engañar
al sistema y acceder sin nigún problema. En cambio, su estructura general sí que re-
sulta útil al ser combinada con el protocolo LHY. De un modo más preciso, el proto-
colo LJ supone que MS y HLR comparten una clave secreta Ki, y que todos los usua-
rios MS conocen (y tienen almacenada en su SIM) la clave pública eh del HLR, para
poder enviarle mensajes cifrados.
En esta fase se describe el proceso de generación del ticket de prepago que solicita un
MS para utilizarlo posteriormente de forma anónima. Esta fase incluye la autentica-
ción del MS por parte del HLR y la posterior autenticación del HLR por parte del MS
a través del ticket generado.
{ }
a) MS 9/5 +' , 1 1 , ,' , 7 , 7 , &HUW
En este paso, MS envía a VLR información para que sea transferida al HLR, de for-
ma que VLR no tenga acceso a ella. La única información que VLR debe conocer es
la identidad HD de HLR
b) VLR {
+/5 1 1 , ,' , 7 , 7 , &HUW }
c) HLR (
9/5 1 1 , & , ' , 7 )
siendo (C,D,Texpire) el ticket generado por HLR. Los detalles de generación de C y D
son omitidos por simplicidad. Basta considerar que existe una relación matemática
entre ellos (que ha sido criptoanalizada en [2]) y que dependen de un parámetro o
clave secreta que solo HLR conoce.
d) VLR ( )
06 1 1 , & , ' , 7
En este caso, VLR envía un mensaje de broadcast a todos los usuarios, de modo que el
destinatario real lo pueda identificar a través del valor de N1.
e) MS comprueba que el ticket es válido. Para ello comprueba las relaciones mate-
máticas que existen entre ellos y la clave secreta de HLR, a través de la clave pública
que todos conocen.
Cuando el MS quiere utilizar un canal anónimo debe utilizar el ticket generado pre-
viamente por el HLR. Para ello, debe generar un identificador distinto en cada ocasión
(y por tanto anónimo) NewID.
b) VLR 06 r
siendo r un número aleatorio.
c) MS 9/5 K,L
d) VLR comprueba la validez del ticket a través de las relaciones que deben cumplir
los parámetros L, K, B, E, y la clave pública del HLR
En esta fase se describe el proceso de generación del ticket de prepago que solicita un
MS para utilizarlo posteriormente de forma anónima. Esta fase incluye la autentica-
ción del MS por parte del HLR y la posterior autenticación del HLR por parte del MS
a través del ticket generado.
{
a) MS 9/5 +' , 1 1 , ,' , 7 , 7 ! , &HUW }
donde N1 es un numero aleatorio, T y Texpire son sellos de tiempo, y Certi es la informa-
ción de autenticación que utilizará el HLR
En este paso, MS envía a VLR información para que sea transferida al HLR, de for-
ma que VLR no tenga acceso a ella. La única información que VLR debe conocer es
la identidad HD de HLR. Certi se puede obtener cifrando con A3 y usando como clave
Ki. De este modo no es necesario implementar otro algoritmo de cifrado en la SIM del
MS.
b) VLR { }
+/5 1 1 , ,'+ , 7 , 7* , - + . * , &HUW + * )
siendo (Auth_VLRh, TKi, Texpire) el ticket generado por HLR, donde Auth_VLRh = A3(Ki,
T) y TKi = A3(Ki, Texpire).
Es importante resaltar que este mensaje debe ser enviado por una canal seguro entre
HLR y VLR.
En este caso, VLR envía un mensaje de broadcast a todos los usuarios, de modo que el
destinatario real lo pueda identificar a través del valor de N1.
e) MS comprueba que el ticket es válido. Para ello comprueba que donde Auth_VLRh
= A3(Ki, T) y obtiene la clave temporal TKi = A3(Ki, Texpire)
De este modo se consigue una autenticación mutua, puesto que MS es autenticado por
HLR a traves de Certi, y tanto VLR como HLR son autenticados por MS a través de
Auth_VLRh. Si la autenticación es afirmativa, el MS considera que el ticket
(Auth_VLRh, TKi, Texpire) es válido, es decir, que lo ha emitido el HLR de su sistema.
Cuando el MS quiere utilizar un canal anónimo debe utilizar el ticket generado pre-
viamente por el HLR.
a) MS → VLR: Auth_VLRh, Texpire.
c) MS 9/5 SRESm
Por otro lado, el sistema solo tendrá que acudir al HLR cuando caduque el Texpire. El
procedimiento de autenticación es el mismo que en GSM, esto es, está basdo en un
sistema desafío/respuesta, pero de tal forma que el VLR no conoce, ni puede conocer
la verdadera identidad de MS.
Conclusiones
Agradecimientos
Este trabajo ha sido financiado por el proyecto TIC2001-0586 “Gestión del acceso
seguro a redes abiertas de recursos distribuidos”.
References
1. AL-TAWIL, K., AKRAMI, A., YOUSSEF, H., “A new authentication protocol for GSM
rd
networks”, Proc. IEEE 23 Annual Conference on Local Computer Networks (LCN’98),
1998, pp. 21-30.
2. BARBANCHO, A.M., PEINADO, A., “Cryptanalysis of anonymous channel protocol for
large-scale area in wireless communications”, Computer Networks (2003) (In Press, avail-
able on line http://www.sciencedirect.com)
3. LEE, C.H., HWANG, M.S., YANG, W.P., “Enhanced privacy and authentication for the
global system for mobile communications”, Wireless Networks, 5 (1999), pp. 231-243.
4. LEE, C.H., HWANG, M.S., YANG, W.P., “Extension of authentication protocol for
GSM”, IEE Proc.-Commun., 150 (2003), pp. 91-95.
5. LIN, W.D., JAN, J.K., “A Wireless-based Authentication and Anonymous Channels for
Large Scale Area”, Proc. Sixth IEEE Symposium on Computers and Communications
(ISCC’01), 3-5 July, Tunisia, (2001), pp. 36-41.
6. LO, C.C., CHEN, Y.J., “ A secure communication architecture for GSM networks” , Proc.
IEEE Pacific Rim Conference on Communications, computers and signal processing,
1999, pp.221-224.
7. LO, C.C., CHEN, Y.J., “ Secure communication mechanisms for GSM networks” , IEEE
Transactions on Consumer Electronics, 45 (4), 1999, pp. 1074-1080.
8. MEHROTRA, A., GSM System Engineering, Artech House Publishers, 1997.
9. STACH, J.F., PARK, E.K., MAAKI, K., “ Performance of an enhanced GSM protocol
supporting non-repudiation of service” , Computer Communications, 22 (1999), pp. 675-
680.
10. ETSI, “ Recommendation GSM 02.09; Security related network functions” , Tech. Rep,
European telecommunications Standard Institute, ETSI, June 1993.