MXPA06004980A - Metodo y aparato para autentificacion en comunicaciones inalambricas - Google Patents

Metodo y aparato para autentificacion en comunicaciones inalambricas

Info

Publication number
MXPA06004980A
MXPA06004980A MXPA/A/2006/004980A MXPA06004980A MXPA06004980A MX PA06004980 A MXPA06004980 A MX PA06004980A MX PA06004980 A MXPA06004980 A MX PA06004980A MX PA06004980 A MXPA06004980 A MX PA06004980A
Authority
MX
Mexico
Prior art keywords
value
key
response
session key
subscriber station
Prior art date
Application number
MXPA/A/2006/004980A
Other languages
English (en)
Inventor
G Rose Gregory
Paddon Michael
M Hawkes Philip
E Semple James
Original Assignee
M Hawkes Philip
Paddon Michael
G Rose Gregory
Semple James F
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by M Hawkes Philip, Paddon Michael, G Rose Gregory, Semple James F filed Critical M Hawkes Philip
Publication of MXPA06004980A publication Critical patent/MXPA06004980A/es

Links

Abstract

Los sistemas y métodos de seguridad de comunicaciones inalámbricas entre una red y una estación de abonado incluyen insertar un marcador que denota un tipo de codificación dentro de un valor aleatorio usado para la autentificación, calcular una primera clave de sesión y un primer valor de respuesta como función del valor aleatorio, entonces calcular una segunda clave de sesión y un segundo valor de respuesta como función del valor aleatorio, la primera clave de sesión y el primer valor de respuesta. Los dos niveles de claves de sesión y valores de respuesta pueden ser usados por estaciones de abonado y puntos de acceso a la red actualizados para evitar que atacantes intercepten los tripletes de autentificación.

Description

MÉTODO Y APARATO PARA AUTENTIFICACION EN COMUNICACIONES INALÁMBRICAS CAMPO DE LA INVENCIÓN La presente descripción se relaciona, de manera general, con telecomunicaciones inalámbricas y, de manera más especifica, con un método para asegurar sistemas de telecomunicaciones inalámbricas.
ANTECEDENTES DE LA INVENCIÓN Una tecnología celular para comunicaciones inalámbricas es definida por el protocolo del Sistema Global para Móviles (GSM) . El GSM ha sido extendido además por nuevos servicios, como el Servicio de Radio de Paquete General (GPRS) , el cual ofrece contenido de Internet y servicios de datos basados en paquetes para redes GSM. El GSM es usado por muchos tipos de comunicaciones inalámbricas incluyendo de voz, búsqueda en Internet, correo electrónico y datos multimedios. El GSM incorpora varios mecanismos de seguridad para proteger el contenido comunicado sobre esos sistemas. Los proveedores y usuarios de servicios igualmente dependen de esos mecanismos de seguridad para la privacidad de sus comunicaciones y protección de sus datos. Los mecanismos de seguridad típicamente operan autentificando los usuarios con la red, entonces el usuario codifica datos antes de su transmisión sobre el aire. Esas medidas de seguridad son objeto de ataques por terceras partes. Por lo tanto existe la necesidad de un método y un aparato para asegurar las comunicaciones inalámbricas.
BREVE DESCRIPCIÓN DE LOS DIBUJOS La FIGURA 1 ilustra una porción de un sistema de red GSM típico que puede verse comprometido por un atacante; La FIGURA 2 ilustra los componentes de una estación de abonado que pueden estar implicados durante la autentificación; La FIGURA 3 es un diagrama de flujo que ilustra la operación de un centro de autentificación; La FIGURA 4 es un diagrama de flujo que ilustra la operación de un punto de acceso a la red ilustrativo; La FIGURA 5A es un diagrama de flujo que ilustra la operación de una primera estación de abonado ilustrativa; La FIGURA 5B es un diagrama de flujo que ilustra la operación de una segunda estación de abonado ilustrativa; y La FIGURA 6 es un diagrama de flujo que ilustra la operación de una estación de abonado y un centro de acceso a la red. La FIGURA 7 ilustra una estación de abonado.
DESCRIPCIÓN DETALLADA DE LA INVENCIÓN La codificación es un proceso para modificar datos para protegerlos contra el acceso por una tercera parte no autorizada. Esta técnica generalmente emplea el cifrado de los datos transmitidos sobre una interfaz aérea, por ejemplo, entre estaciones de abonado y estaciones base, así como sobre otros enlaces alámbricos o inalámbricos, a una parte remota deseada. El cifrado se refiere en general a datos codificados de tal manera que únicamente el receptor con "la clave" apropiada pueda descodificarlos. El cifrado puede ser logrado, por ejemplo, efectuando una operación OR exclusiva entre una secuencia de bits pseudoaleatoria y los bits de una ráfaga normal de datos de comunicaciones. Únicamente cuando un receptor tenga la clave apropiada puede ser "deshecha" la operación y la ráfaga de datos de comunicación extraída. El tipo de codificación usado en los sistemas de comunicaciones inalámbricas se efectúa usando un cifrador o codificador de flujo. El algoritmo de codificación para el cifrador o codificador de flujo toma una clave secreta conocida únicamente por el dispositivo del usuario (como un teléfono celular o específicamente, una tarjeta de Módulo de Entidad de Abonado (SIM) de un dispositivo) y un número de cuadro, y genera un flujo pseudoaleatorio de bits (es decir, flujo clave) para ser sometido a una operación XOR con la entrada para la codificación. La información también es usada para codificar los datos recibidos. De este modo, los bits son codificados de manera efectiva independientemente uno del otro. Dos algoritmos comúnmente usados para generar una secuencia pseudoaleatoria para usarse como se describió anteriormente son los algoritmos A5/1 y A5/2. Los protocolos GSM originales soportan tres niveles de seguridad para la codificación con el enlace aéreo: no codificado; A5/2; y A5/1 codificado. El algoritmo A5 es usado para codificar opcionalmente sobre conexiones de voz o datos. El A5 es un codificador de flujo, que usa una clave de codificador de 64 bits, pero se basa en bloques con una longitud de bloque de 228 bits. El A5 está diseñado para ser implementado de manera eficiente en componentes físicos o hardware implica únicamente operaciones de XOR y adición de un bit. El A5 tiene dos versiones: el A5/1 usado en Europa; y A5/2 usado en sistemas de exportación. Tanto el A5/1 y A5/2 son algoritmos de codificador de flujo usados para la codificación, pero cada uno proporciona una seguridad ligeramente diferente e incurre en una complejidad diferente. Como será reconocido por aquellos expertos en la técnica, el A5 es parte de la especificación GSM. El A5/1 es conocido como la versión "fuerte" limitada a exportación, y el A5/2 en la versión estándar "débil" que no tiene limitaciones de exportación. Otra versión de la codificación A5 algunas veces usada es la A5/3, la cual se basa en el Sistema de Telecomunicaciones de Móvil Universal (UMTS) de codificador de bloques/algoritmo de Acceso Múltiple por División de Código de Banda Ancha (WCDMA) conocido como "KASUML" . El Kasumi es un codificador de bloque de 64 bits que usa una clave de 128 bits verdadera. Cada uno de esos algoritmos usa, como la clave secreta, una clave de sesión de 64 bits (Kc) derivada por un mecanismo de autentificación, como de acuerdo al mecanismo de autentificación soportado por el GSM estándar. La seguridad del GSM se basa en un mecanismo de desafío-respuesta usando una clave secreta de 128 bits (K.) almacenada en la tarjeta SIM y sobre el Centro de Autentificación (AuC) de la red local del usuario.
Durante la inicialización de una sesión activa, el AuC genera un valor elegido aleatoriamente (RAND) de 128 bits y aplica un algoritmo de autentificación como el A3 o A8 también parte de la especificación del GSM, al RAND. El algoritmo genera una respuesta esperada (SRES) y una clave de codificación por la sesión (la Kc) , cada una de las cuales son funciones del RAND de la Kj.. El RAND, la SRES y la Kc constituyen colectivamente un Vector de Autentificación GSM (triplete de autentificación) . Durante el registro, el triplete de autentificación es enviado a la estación base, la cual envía el RAND a la estación de abonado. La tarjeta SIM en la estación de abonado lee el RAND y calcula la SRES y la clave de sesión Kc de acuerdo al mismo algoritmo de autentificación o algoritmo de acuerdo a la clave (A3 o A8, respectivamente), usando su clave secreta Ki. El valor de SRES calculado es enviado a la estación base, la cual puede comparar este con la SRES en el triplete de autentificación, autentificando por lo tanto la validez de la estación de abonado o suscriptor. Una vez que la estación de abonado o suscriptor es autentificada, la Kc puede ser usada para la codificación de comunicaciones durante la sesión activa, de acuerdo a lo dirigido por la estación base. Desafortunadamente los algoritmos A5 son susceptibles a ataques por terceras partes, haciendo que los datos y la red se vean comprometidos. Hablando de manera general, la codificación de los datos comunicados sobre sistemas inalámbricos se efectúa después de codificar por corrección de errores. Es bien sabido que la codificación introduce relaciones lineales conocidas entre los bits a ser modificados. De este modo, aunque un atacante pueda no conocer los valores reales de bits de entrada individuales, puede saber que ciertos grupos efectuarán una operación XOR hasta cero, de acuerdo con las relaciones lineales conocidas de la codificación. Esas relaciones conocidas pueden permitir a los atacantes irrumpir en comunicaciones seguras sin conocimiento específico del contenido de los datos que estén codificados. Esos ataques son conocidos como ataques de "texto cifrado únicamente", y han demostrado ser efectivos contra los diferentes algoritmos de codificación A5. Un ejemplo de ese ataque es u'n ataque conocido como "Hombre a la Mitad" (MITM) de acuerdo a lo descrito por Biham et al. Básicamente, el ataque' MITM contra GSM implica una estación base falsa capaz de rechazarse internamente así misma en el proceso de autentificación e interceptar el RAND y la SRES. La estación base falsa obliga a la estación de abonado a usar el algoritmo A5/2 más débil para la codificación después de la autentificación. ^'Únicamente una pequeña cantidad de la comunicación codificada por .A5/2 se requiere para que la estación base falsa rompa la Kc del tráfico A5/2. En ese punto, la estación base falsa puede actuar como un traductor entre la codificación A5/2 y la rama entre la estación de abonado y la estación base falsa, y cualquier codificación que sea solicitada por la estación base real en la rama entre la estación base falsa y la estación base real. De manera más importante, la estación base falsa es capaz de recuperar todo el triplete de autentificación, el cual puede entonces ser reutilizado, como para espiar llamadas telefónicas o establecer un servicio falso. Además, aunque han sido desarrollados algoritmos A5 más fuertes, como el A5/3, puesto que la Kc funciona con cualquiera de esos algoritmos, aún los más fuertes son minados por grietas de seguridad en los algoritmos más débiles que permiten que la Kc sea interceptada en primer lugar. Aunque se han hecho propuestas para proteger contra este tipo de ataque, actualmente no existe una solución efectiva que no requiera cambios significativos a los protocolos o equipo GSM estándar. También, los cambios a las SIM y estaciones de abonado desarrolladas pueden ser imposibles o impracticables para su implementación. Los cambios a la infraestructura de la red también serían problemáticos, costosos, y difíciles de sincronizar. De este modo, las soluciones actualmente propuestas a la amenaza de esos ataques pueden ser demasiado costosas o impracticables para implementarse realmente. Con referencia ahora a la FIGURA 1 de los dibujos, en ella se ilustra una porción de un sistema de red GSM típico que puede verse comprometido por un ataque. Un usuario puede comunicarse sobre la red usando una estación de abonado 100, la cual puede ser o incluir un teléfono celular, y una tarjeta de Módulo de Identidad de Abonado (SIM) 104. Por supuesto, debe comprenderse que las enseñanzas de la presente se aplican a varios dispositivos de comunicación y no se limitan a teléfonos celulares. La tarjeta SIM 104 es una pieza pequeña de circuito que puede ser colocada dentro de un teléfono celular. La tarjeta SIM 104 puede almacenar información personal acerca de un usuario, como su número telefónico, cable secreta (explicada con mayor detalle más adelante) , entidades de agenda, y otros detalles. Alguna de esta información puede ser usada de modo que el usuario pueda ser identificado y autentificado en la red que proporciona el servicio telefónico. La tarjeta SIM 104 también puede incluir capacidad de procesamiento, capacidad de codificación para transmisiones de voz y datos antes de la transmisión de la estación de abonado a la red. La tarjeta SIM 104 puede ser movida opcionalmente de un dispositivo a otro y/o pueden ser insertadas diferentes tarjetas SIM 104 en cualquier teléfono celular GSM. Por ejemplo, si un usuario tiene un teléfono pero usa éste para llamadas personales y de negocios, puede cambiar la tarjeta SIM dependiendo de cómo usará el teléfono (una tarjeta contiene su identidad y datos personales y la segunda tarjeta contiene su identidad- y datos de negocios) . Cuando un usuario enciende la estación 'de abonado 100, intenta localizar uno o más Puntos de Acceso a la Red (NAP) 106 para ser usados para comunicaciones. Un NAP puede incluir, por ejemplo, una estación base u otros componentes físicos o hardware adecuados para conectarse a una red GSM. Para hacer esto, la estación de abonado 100 verifica señales piloto enviadas desde diferentes NAP. La estación de abonado puede elegir las señales piloto más fuertes, las cuales identificarán a un NAP como adecuado para establecer un enlace con la red. La siguiente descripción del sistema de red GSM, la estación de abonado 100 establece un enlace con un NAP 106. Después de que la estación de abonado 100 es conectada a la red vía un enlace 108 establecido con el NAP 106, la red debe determinar la ubicación de la estación de abonado 100. Una base de datos como un Registro de Ubicación Visitado (VLR) 112 puede almacenar una entrada en cada estación de abonado en su área local, junto con la última ubicación conocida de la estación de abonado o suscriptor. Las estaciones de abonado pueden informar periódicamente su Registro de Ubicación Local (HLR) 110 de su ubicación actual, permitiendo que el HLR 110 actualice la información almacenada en consecuencia y encamine las llamadas entrantes a la estación de abonado. Cuando una estación de abonado no está itinerando (es decir cuando está en el área servida por su operador local) las funciones del HLR 110 y el VLR 112 pueden ser combinadas. Cuando sea usado, el VLR 112 puede ser útil para comunicarse entre una estación de abonado itinerante en una red externa y el HLR 110 propio de la estación de abonado que esté en la red local. Debe comprenderse que los conceptos de la presente pueden ser aplicados a sistemas inalámbricos con y sin VLR. Después de que la red identifica la ubicación actual de la estación de abonado 100 puede intentar autentificar al usuario. La autentificación es una parte de las medidas de seguridad GSM. Una clave secreta de usuario (Ki) es central para la seguridad en el sistema GSM, y una es usada durante la autentificación. A cada usuario se le asigna un número aleatorio como clave secreta, referida como Ki, almacenada en su tarjeta SIM 104 y en una base de datos llamada Centro de Autentificación (AuC) 114. La clave secreta es guardada cuidadosamente puesto que el descubrimiento por una tercera parte degradaría el sistema. La Ki nunca es enviada desde el AuC 114, de modo que no puede ser escuchada en la transmisión. La K nunca abandona la tarjeta SIM 104. Durante la autentificación, el NAP 106 solicita primero al AuC 114 un número aleatorio y una respuesta asociada. El AuC 114 incluye un procesador 116 el cual puede generar el número aleatorio (RAND) y efectúa un algoritmo de seguridad en el cual RAND y la Ki del usuario son usados como entradas. El algoritmo de seguridad puede ser de acuerdo con el protocolo de autentificación A3/A8, por ejemplo, aunque pueden ser usados otros protocolos también. Las salidas de este algoritmo son la respuesta (SRES) y una clave de codificación especial, conocida como la clave de sesión (Kc) . La SRES puede ser usada para autentificar al usuario, y la Kc puede ser usada por la estación de abonado y la red para codificar y descodificar datos de comunicaciones después de que ocurra la autentificación. Después de que el AuC genera y calcula el RAND, SRES y Kc, agrupa los tres valores en conjunto en lo que se conoce como triplete de autentificación (triplete) y proporciona el triplete al NAP 106. El NAP 106 extrae entonces el RAND del triplete, y envía solo el RAND a la estación de abonado 100. La estación de abonado 100 sabe cuales algoritmos de autenticación fueron usados por el AuC para generar el SRES y Kc. De este modo, usando los mismos algoritmos de autentificación, la estación de abonado 100 puede tomar el RAND recibido del NAP y calcular la misma SRES y Kc. Como se describió anteriormente, esos valores son funciones de K±, la clave secreta almacenada en la tarjeta SIM 104 y disponibles para ser usados por la estación de abonado 100. La FIGURA 2 ilustra componentes adicionales de la estación de abonado 100 que pueden estar implicados durante el proceso de autentificación. Una sección de entrada analógica puede incluir un transceptor 200 que tenga un receptor 202 y un transmisor 204. La estación de abonado 100 también puede incluir un sistema de procesamiento 206 que incluye un procesador 208 residente en el teléfono celular del usuario y la tarjeta SIM 104 la cual, como se explicó anteriormente, tiene su propio procesador. Regresando ahora a la FIGURA 1, una vez que la estación base 100 (o su tarjeta SIM 104) calcula la SRES y Kc, puede retener la Kc y enviar la SRES de regreso a NAP 106. Si el NAP 106 puede autentificar la estación de abonado 100, entonces las comunicaciones pueden proceder y cada entidad puede usar la Kc para codificar y descodificar datos de comunicaciones de acuerdo al algoritmo de codificación seleccionado por el NAP y especificado para la estación -de abonado 100. Para autentificar la estación de abonado 100, el NAP 106 primero verifica si la SRES correcta recibida es de la estación de abonado 100. Para hacer esto, el NAP 106 puede, vía un procesador 118, comparar la SRES recibida de la estación de abonado 100 y la SRES recibida de la AuC 114. Si no son iguales, entonces la autentificación falla. Si son iguales, sin embargo, entonces el abonado es autentificado y las comunicaciones pueden proceder. Como se explicó anteriormente, el ataque MITM es conducido durante el procedimiento de autentificación. Cuando el NAP 106 envía un RAND a la estación de abonado 100 para su autentificación, el RAND es interceptado por un atacante 120. El atacante 120 envía el RAND a la estación de abonado del usuario legítima 100. La estación de abonado 100, cree que esta petición de autentificación proviene legítimamente del NAP 106, calcula la SRES como parte de la rutina de autentificación normal descrita anteriormente, y regresa la SRES al NAP 106. La SRES es interceptada nuevamente por el atacante 120, el cual envía sobre la red. En este punto, el atacante 120 aparece "autentificado" por el NAP 106, y también toma posesión del RAND y la SRES, la cual interceptó. La única parte de un triplete de autentificación completo de la que carece el atacante 120 es la Kc. Sin embargo, el atacante 120 puede usar el algoritmo de codificación débil A5/2 para obtener este valor. Por ejemplo, bajo condiciones normales, cuando el NAP verifica la autentificación, el NAP 106 envía una petición para que la estación de abonado 100 proceda con las comunicaciones usando la codificación A5/1 ó A5/3 (mensaje inicial cifrado) . Durante un ataque, sin embargo el atacante 120 puede interceptar el mensaje de inicio cifrado y, en lugar de enviar éste a la estación de abonado 100, cambia el mensaje de inicio cifrado y en su lugar le dice a la estación de abonado 100 usar A5/2, el algoritmo de codificación débil. La petición de A5/2 aparece a la estación de abonado 100 un mensaje de inicio cifrado legítimo, de modo que la estación de abonado comenzará la codificación de sus datos de comunicaciones con el algoritmo A5/2. El atacante 120, el cual aún está interceptando comunicaciones entre el NAP 106 y la estación de abonado 100, puede entonces emplear el criptoanalisis de A5/2 para recuperar la Kc. Una vez que conoce la Kc, el atacante 120 puede actuar como un traductor y comunicarse con la estación de abonado 100 vía el A5/2 y comunicarse con el NAP 106 vía cualquier algoritmo que NAP 106 especifique en su mensaje de inicio cifrado, puesto que la misma Kc funciona con cualquiera de los algoritmos A5. De manera más importante, en este punto el atacante 120 tiene todas las piezas de un triplete de autentificación válido, el cual puede entonces reutilizar para sesiones futuras, como para espiar llamadas telefónicas o robar servicio telefónico colocándose como un usuario autentificado. Para evitar el robo de la Kc durante la autentificación o comunicaciones activas, el proceso de autentificación puede incluir un paso adicional que implique a la K¡. la cual, como se explicó anteriormente, no puede ser interceptada por una tercera parte. La FIGURA 3 es un diagrama de flujo que ilustra un procedimiento efectuado por un AuC para inyectar el paso de K adicional en una rutina de autentificaci-ón normal. El procedimiento puede ser implementado con sistemas legales en los cuales las estaciones de abonado y componentes de la red (como el NAP, VLR, un HLR) sean viejos y sistemas actualizados en los cuales los componentes de la red sean actualizados para reconocer y responder al nuevo procedimiento. El procedimiento también funciona con sistemas que incluyen algunos componentes legales y algunos componentes actualizados. Primero, en el bloque 300, el AuC puede generar un valor aleatorio el cual puede ser codificado para servir como un RAND en el proceso de autentificación. Para modificar el valor aleatorio apropiadamente, el AuC puede seleccionar primero el tipo de codificación para la comunicación con la estación de abonado en el bloque 302. El tipo de codificación seleccionado puede implicar cualquier algoritmo de codificación no fácilmente comprometido por una tercera parte atacante. Por ejemplo, el AuC puede decidir contra la selección de A5/A2, el cual se sabe es un algoritmo de codificación débil. El AuC puede en su lugar seleccionar el A5/1 ó A5/3, aunque pueden ser usados también otros algoritmos robustos. Después de que el AuC selecciona un tipo de codificación, modifica el valor aleatorio en el bloque 304, lo cual da como resultado un valor de RAND, RANDi, para ser usado para la autentificación. El RANDi puede tener un formato especial dado que un cierto número de sus bits son enviados a un valor especial. Este valor puede ser reconocido tanto por la estación de abonado como por el punto de acceso a la red, y puede indicar el tipo de codificación que es seleccionado en el bloque 302. El valor de esos bits puede de este modo formar un "marcador de codificación obligado". El formato del RANDi, que incluye el marcador de codificación obligado, puede estar de acuerdo con las enseñanzas de un artículo titulado "Further Development of the Special RAND mecanism", Vodafone and Orange, 3GPP SA3 documento S3-0305880. Sin embargo, aquellos expertos en la técnica reconocerán que pueden ser implementados también otros formatos de RAND, en tanto algunos bits del RANDi sean reservados para incluir valores especiales (no aleatorios) que describan ambos el tipo de autentificación seleccionada y sean reconocibles por componentes físicos actualizados en el NAP y la estación de abonado. Una vez que el RAND^. es conocido, el AuC puede en el bloque 306 proceder de acuerdo con el procedimiento de autentificación tradicional, en el cual usa un algoritmo de seguridad para calcular una Kc y una SRES correspondiente al RANDi. El algoritmo de seguridad puede, por ejemplo, ser de acuerdo con el protocolo de comunicación A3/A8. La Kc y SRES resultantes son denotadas como Kc? y SRESi puesto que corresponden al RANDi. En el bloque 308, el AuC agrupa esos tres valores para formar un triplete Ti. En lugar de pasar este triplete al NAP para su autentificación, sin embargo, el procedimiento ilustrativo efectúa procedimientos de seguridad adicionales que implican a la Ki, para proporcionar una capa de protección extra. En el bloque 310, el AuC efectúa una función unidireccional conocida como función pseudoaleatoria, en la cual la salida puede ser reproducida dadas las mismas entradas, pero si cualquiera de los valores de entrada no son conocidos, la salida no puede ser reproducida debido a que la salida no incluye ninguna información acerca de la entrada desconocida. Un tipo de función que puede ser usado es una función arbitraria segura como la SHA-1. Los detalles con respecto a la SHA-1 se proporcionan en FIPS-180-1 y FIPS-180-2, NIST. Otra función adecuada puede ser un Código de Autentificación de Mensaje seguro como, por ejemplo, HMAC. Los detalles con respecto al HMAC son proporcionados en un documento titulado "Hash based Message Authentication Code" por Krawczy et al, RFX2401. Por supuesto, debe comprenderse que las enseñanzas de la presente pueden ser implementadas con cualquier función pseudoaleatoria y no se limitan al SHA-1, HMAC u otros tipos de Códigos arbitrarios seguros o de Autentificación de Mensaje. La salida de la función pseudoaleatoria efectuada sobre el triplete Ti en el bloque 310 se considera un número aleatorio. Aunque su secuencia se derivó en realidad de manera cuidadosa por los pasos anteriores, parece ser uno de un número generado aleatoriamente, y puede ser usado como tal. De este modo, la salida generada en el bloque 310 puede ser usada como un segundo RAND, el RAND 2, en una operación de autentificación secundaria. En el bloque 314, puede ser implementado un algoritmo de seguridad para calcular una segunda Kc y una segunda SRES las cuales corresponden al RAND2. El algoritmo de seguridad puede nuevamente ser de acuerdo con el protocolo de autentificación A3/A8. La Kc y SRES resultante son denotadas como Kc2 y SRES2 puesto que corresponden al RAND2. En el bloque 316, el AuC agrupa esos tres valores para formar un segundo triplete T2. En este punto, el AuC tiene dos tripletes disponibles para la autentificación en la estación de abonado. Dependiendo de si el NAP incluye componentes físicos actualizados que puedan acoplarse en un método de seguridad, el AuC puede pasar uno o ambos de esos tripletes NAP para usarlos durante al autentificación. En el bloque 318, la red determina si el NAP comprende componentes físicos legales o componentes físicos actualizados. Esta determinación puede ser hecha por el AuC, el VLR o el HLR, o por alguna combinación de los mismos. Si el NAP comprende componentes físicos o hardware legal, en el bloque 320 el Auc envía únicamente el segundo triplete T2 al NAP. En este caso, la autentificación procederá como es usual, con el NAP y la estación de abonado los valores en T2 para lograr la autentificación, y nunca usando ninguno de los valores de Ti. Si, por otro lado, el NAP comprende componentes físicos o hardware actualizado pueda soportar la metodología de seguridad ilustrada, como entonces en el bloque 322 el AuC enviará ambos tripletes Ti y T2, al NAP. La Figura 4 es un diagrama de flujo que ilustra la operación de un punto de acceso a la red actualizado ilustrativo tras la recepción de ambos tripletes. En el bloque 400, ambos tripletes Ti y T2 son recibidos del AuC, ya sea directamente o a través del VLR o HLR. En lugar de enviar el RAND de ambos tripletes a la estación de abonado, aunque, el NAP envía únicamente el RAND del primer triplete, RANDi. Esto se hace para "probar" si la estación de abonado comprende componentes físicos de computación legal o actualizado, y de este modo si la estación de abonado al igual que el NAP son capaces de acoplarse a la metodología de seguridad ilustrativa. En el bloque 404, la estación de abonado procesa el RANDi y genera una respuesta. El valor de esta respuesta dependerá de si la estación de abonado comprende componentes físicos de computación legales o actualizados. De este modo, la descripción pasa ahora a los detalles particulares del procesamiento de la estación de abonado, los cuales son ilustrados en las FIGURAS 5A y 5B. La FIGURA 5A es un diagrama de flujo que ilustra una operación de una estación de abonada actualizada acoplada en la autentificación con el NAP actualizada. En el bloque 500, la estación de abonado recibe el RANDi en un formato especial de NAP. Debido a que esta es una estación de abonado actualizado, reconocerá el marcador de codificación obligado en el RANDi, en el bloque 502. Debido a que la estación de abonado reconoce este marcador, sabe que el NAP también se actualizó en la estación de abonado y el NAP puede acoplarse en la metodología de seguridad ilustrativa. Primero, en el bloque 504, la estación de abonado calcula la Kc? y la SRESi de acuerdo al procedimiento de autentificación normal. En otras palabras, la tarjeta SIM puede recibir la Ki y cruzarla con el RANDi para calcular la KC? y SRESi. Sin embargo, en lugar de enviar de regreso el SRES1 y usar la KC?, para la codificación, la estación de abonado, continúa con la metodología de seguridad ilustrativa para implementar la capa extra de seguridad. En el bloque 506, combina un RANDi, a la SRESi, la KC? para formar un primer triplete Ti. Entonces en el bloque 508, la estación de abonado efectúa una función seudoaleatoria, como se explicó anteriormente, para Ti. La salida de esta función en el bloque 510 es el RAND2, el mismo valor previamente calculado en el AuC. La estación de abonado es entonces la Ki almacenada en la tarjeta SIM para calcular la Kc2 y la SRES2 en el bloque 512. Finalmente, en el bloque 514, la SRES2 es enviada nuevamente al NAP. Si la estación de abonado no está actualizada, no puede acoplarse en la metodología de seguridad ilustrativa descrita anteriormente. Aun, cuando una estación de abonado legal sea capaz de autentificarse a si misma en el NAP usando el RANDi con formato especial.
La FIGURA 5B es un diagrama de flujo que ilustra la operación de una estación de abonado legal acoplado en la autentificación con el NAP actualizado. En el bloque 516, la estación de abonado recibe el RANDi con formato especial del NAP. Sin embargo, debido a que la estación de abonado no está actualizada, no puede reconocer el marcador de codificación obligado dentro del RANDi. Por lo tanto, la estación de abonado cree que el RANDi es simplemente un número aleatorio y usa este como un RAND normal. Es decir, que la estación de abonado dirige su tarjeta SIM para utilizar la Ki y calcula la K? y la SRESi, lo cual se muestra en el bloque 518. En el bloque 520, la estación de abonado regresa la SRESi al NAP para su autentificación. Regresando ahora a la FIGURA 4, en el bloque 406 el NAP recibe una SRES de la estación de abonado. Como se explicó anteriormente con referencia a las FIGURAS 5A y 5B, este valor de SRES puede ser SRESi o SRES2, dependiendo de si la estación de abonado se actualizó o es legal. De este modo, en el bloque 408 el NAP determina primero si el valor recibido es igual a SRES1 que tiene del Ti. Si es así, entonces el NAP sabe que la estación de abonado fue incapaz de reconocer el formato especial del RADNi e implementa el mecanismo de seguridad tradicional. De este modo, en el bloque 410 el NAP detecta la estación de abonado que comprende componentes físicos de computación legales y es incapaz de acoplarse a la metodología de seguridad ilustrativa. Por lo tanto, el NAP puede operar de acuerdo al procedimiento de autentificación tradicional, y enviar un mensaje de inicio cifrado que solicite a la estación de abonado comenzar usando un tipo de codificación particular, como es indicado en el bloque 412. La estación de abonado también opera de acuerdo al procedimiento de autentificación tradicional y, como se muestra en los bloques 414, usa la KC? previamente calculada (en la FIGURA 5B) para codificar sus datos de comunicación . Si, por otro lado, el NAP determina en el bloque 408 de la SRES no es igual a la SRESi que tiene del Ti, entonces el NAP sabe que la estación de abonado puede incluir componentes físicos de computación actualizados capaces de efectuar la metodología de seguridad ilustrativa. Primero, sin embargo, el NAP puede codificar que la estación de abonado envío de regreso el valor de respuesta apropiado para indicar esto. De este modo, en el bloque 416 el NAP prueba si la SRES es igual a la SRES2 que tiene del T2. Si no, en el bloque 418 falla la autentificación. Sin embargo, si es detectada una similitud entonces en el bloque 420 el NAP detecta que la estación de abonado es una NAP actualizada. Por lo tanto, el NAP sabe que en bloque 422 que no necesita ser enviada una petición de tipo de codificación en el mensaje de inicio cifrado, y que en el bloque 424 la estación de abonado usara la segunda clave de sesión Kc2 previamente calculada (en la FIGURA 5A) para codificar sus datos de comunicaciones. La petición del tipo de codificación puede aún ser enviada para evitar el cambio de los protocolos existentes, pero este no afectará la elección del algoritmo de codificación. Además, si un atacante intenta enviar una petición falsa a la estación de abonado indicando un tipo de codificación diferente al especificado en el marcador de codificación obligado reconocido en el bloque 502, la estación de abonado reconocerá esta como una petición falsa y la ignorará, codificando los datos de comunicaciones de acuerdo con el tipo de codificación especificado en el marcador, o declinando el envío de datos de comunicación del todo. La FIGURA 6 es un diagrama de flujo que ilustra la operación de una estación de abonado y un punto de acceso a la red cuando cada uno ha verificado al otro como actualizado. Como se explicó anteriormente, cada uno puede usar la Kc2 para la codificación y descodificación debido a que se ha derivado con una segunda capa de seguridad usando la K bien resguardada. Sin embargo, de acuerdo a otra característica de la estación de abonado y el NAP puede en su lugar calcular otra clave de codificación más, sobre la base de la Kc2, para codificar y descodificar comunicaciones. Hacer esto rechaza internamente otra capa más de seguridad. En los bloques 600 y 602, la estación de abonado y el NAP, respectivamente, se detectan entre sí como actualizados. De este modo, cada uno conoce la metodología de seguridad que* puede ser empleada. Tras usar esta metodología y calcular la Kc2 segura, sin embargo, la estación de abonado puede en el bloque 604 crear una nueva clave como función de la Kc2 y algún valor "X". El NAP puede calcular la misma nueva clave, en el bloque 606. Esta nueva clave puede ser la salida de la función particular, de acuerdo en lo indicado en los bloques 608 y 610. Por ejemplo, cuando existe un valor descifrador, la KC?dificada puede ser una clave específica del codificador o cifrador. Cuando X es un valor de autentificación, la KC?dxficada puede ser una clave de autentificación. Esas claves, aunque se basen en la misma Kc2, pueden ser usadas respectivamente para cifrar datos y para la autentificación. La FIGURA 7 ilustra una estación de abonado de acuerdo a una modalidad. Como se ilustra, la estación de abonado incluye el circuito receptor 700 acoplado a una unidad de cálculo de clave y respuesta 704. El circuito receptor 700 recibe información de autentificación, como el valor de RAND, y proporciona esta información a la unidad de clave y cálculo 704. La unidad de clave y cálculo 704 también recibe la clave secreta la estación de abonado Ki, desde la unidad de almacenamiento de memoria 702. De esas entradas, la unidad de clave y cálculo 704 genera una primera respuesta SRESi y una primera clave KC?, las cuales proporcionan retroalimentación a la unidad de clave y cálculo 704. La unidad de clave y cálculo 704 genera una segunda respuesta SRES2 y una segunda clave Kc2. La segunda respuesta SRES2 es proporcionada al circuito de transmisión 708 para la transmisión para la autentificación completa, mientras que la segunda clave Kc2 es proporcionada a la unidad de codificación/descodificación 710 para el procesamiento y recepción de datos. El procesador 706 también es proporcionado para la coordinación y control de la unidad de de clave y cálculo 704, la unidad de codificación/descodificación 710, y la unidad de almacenamiento de memoria 702. La FIGURA 7 proporciona una operación funcional de la operación de una estación de abonado, donde las modalidades alternativas pueden combinar unidades funcionales o aún especificar bloques funcionales individuales o implementar los mecanismos de seguridad discutidos aquí. Aunque la especificación describe modalidades particulares de la presente invención, aquellos expertos en la técnica pueden contemplar variaciones de la presente invención sin apartarse del concepto inventivo. Por ejemplo, las enseñanzas de la presente se refieren a elementos de red conmutados por circuitos pero son igualmente aplicables a elementos de red de dominio conmutados por paquetes. También, las enseñanzas de la presente no se limitan a los pares de triplete de autentificación sino que también pueden ser aplicadas para el uso de un solo triplete incluyendo dos valores de SRES (uno del formato acostumbrado y uno del nuevo formato) . Aquellos expertos en la técnica comprenderán que la información y señales pueden ser representadas usando cualquiera de una variedad de tecnologías y técnicas diferentes. Por ejemplo, los datos, instrucciones, órdenes, información, señales, bits, símbolos y segmentos que puedan ser referidos a través de la descripción anterior pueden ser representados por voltajes, corrientes, ondas electromagnéticas, campos o partículas magnéticas, campos o partículas ópticas, o cualquier combinación de las mismas. Aquellos expertos en la técnica apreciarán además que los diferentes bloques lógicos, módulos, circuitos, métodos y algoritmos ilustrativos descritos en relación con las modalidades descritas aquí pueden ser implementados como componentes electrónicos, programas y sistemas de programación o software de computadora, o combinaciones de ambos. Para ilustrar claramente esta intercambiabilidad de componentes físicos de computación o hardware y sistemas o software, los diferentes componentes, bloques, módulos, circuitos, métodos y algoritmos ilustrativos han sido descritos anteriormente generalmente en términos de su funcionalidad. Si esa funcionalidad es implementada como componentes físicos de computación o hardware o programas y sistemas de programación o software depende de la aplicación particular y las restricciones de diseño impuestas sobre todo el sistema. Los expertos pueden implementar la funcionalidad descrita de varias formas para cada aplicación particular, pero esas decisiones de implementación no serán interpretadas como si se apartaran del alcance de la presente invención. Los diferentes bloques lógicos, módulos y circuitos ilustrativos descritos en relación con las modalidades descritas aquí pueden ser implementados o efectuados con un procesador para propósitos generales como un procesador de señales digitales (DSP) , un circuito integrado específico de la aplicación (ASIC) , un arreglo de compuertas programable en el campo (FPGA) u otro dispositivo lógico programable, lógica discreta o lógica de transistores, componentes físicos discretos, o cualquier combinación de los mismos diseñados para efectuar las funciones descritas aquí. Un procesador para propósitos generales puede ser un microprocesador, pero de manera alternativa, un procesador puede ser cualquier procesador, controlador, microcontrolador o máquina de estado convencional. Un procesador también puede ser imple entado como una combinación de dispositivos de cómputo, por ejemplo, una combinación de un DSP y un microprocesador, una pluralidad de microprocesadores, uno o más microprocesadores en conjunto con un núcleo de DSP, o cualquier otra de esas configuraciones. Los métodos o algoritmos descritos en relación con las modalidades descritas aquí pueden ser realizados directamente en componentes físicos de computación o hardware, en un módulo programas y sistemas de programación o software ejecutado por un procesador, o en una combinación de los dos. Un módulo de programas y sistemas de programación o software puede residir en una memoria RAM, memoria instantánea, memoria ROM, memoria EPROM, memoria EEPROM, registros, disco duro, un disco removible, un CD-ROM, o cualquier otra forma de medio de almacenamiento conocida en la técnica. El medio de almacenamiento puede ser acoplado al procesador, de modo que el procesador pueda leer información de, y escribir información a, el medio de almacenamiento. De manera alternativa, el medio de almacenamiento puede estar integrado al procesador. El procesador y el medio de almacenamiento pueden residir en un ASIC. La descripción anterior de las modalidades descritas se proporcionó para permitir a cualquier experto en la técnica hacer o usar la presente invención, las diferentes modificaciones a esas modalidades serán fácilmente evidentes a aquellos expertos en la técnica, y los principios genéricos definidos aquí pueden ser aplicados a otras modalidades sin apartarse del espíritu o alcance de la invención. De este modo, la presente invención no pretende limitarse a las modalidades mostradas aquí, sino de acuerdo con el más amplio alcance consistente con los principios y características novedosas descritas aquí.

Claims (32)

  1. NOVEDAD DE LA INVENCIÓN Habiéndose descrito la invención como antecede, se reclama como propiedad lo contenido en las siguientes: REIVINDICACIONES 1. Un método de seguridad de comunicaciones inalámbricas con una red en una estación de abonado o suscriptor, caracterizado porque comprende: recibir un valor aleatorio de la red; calcular una primera clave de sesión y un primer valor de respuesta como función del valor aleatorio; calcular una segunda clave de sesión y un segundo valor de respuesta como función del valor aleatorio, la primera clave de sesión y el primer valor de respuesta; y comunicar el segundo valor de respuesta a la red para la autentificación.
  2. 2. El método de conformidad con la reivindicación 1, caracterizado porque el valor aleatorio incluye un marcador de codificación que identifica un tipo de codificación para una comunicación.
  3. 3. El método de conformidad con la reivindicación 2, caracterizado porque el marcador comprende una pluralidad de bits que especifican una secuencia predeterminada de valores.
  4. 4. El método de conformidad con la reivindicación 2, caracterizado porque el tipo de codificación es diferente de la codificación A5/A2.
  5. 5. El método de conformidad con la reivindicación 1, caracterizado porque comprende además recibir una petición de codificación que es inconsistente con el tipo de codificación e ignorar la petición.
  6. 6. El método de conformidad con la reivindicación 5, caracterizado porque comprende además codificar datos de comunicaciones de acuerdo con el tipo de codificación.
  7. 7. El método de conformidad con la reivindicación 5, caracterizado porque comprende además declinar transmitir datos de comunicaciones en respuesta a que la petición de codificación es inconsistente con el tipo de codificación.
  8. 8. El método de conformidad con la reivindicación 1, caracterizado porque comprende además: recuperar una clave secreta almacenada en la estación de abonado; donde el cálculo de la primera clave de sesión y la primera clave de respuesta es también función de la clave secreta.
  9. 9. El método de conformidad con la reivindicación 1, caracterizado porque comprende además: modificar el valor aleatorio, donde el cálculo de la segunda clave de sesión y el segundo valor de respuesta comprende combinar el valor aleatorio modificado, la primera clave de sesión y el primer valor de respuesta para formar un triplete de autentificación, y autentificar una función arbitraria sobre el triplete de autentificación.
  10. 10. El método de conformidad con la reivindicación 9, caracterizado porque la segunda clave de sesión y el segundo valor de respuesta se calculan como función de la salida de la función arbitraria y una clave secreta que está almacenada en una tarjeta SIM en la estación de abonado.
  11. 11. El método de conformidad con la reivindicación 1, caracterizado porque comprende además calcular una clave codificada como función de la primera clave de sesión y un valor predeterminado.
  12. 12. El método de conformidad con la reivindicación 11, caracterizado porque la clave codificada comprende una clave del cifrador o codificador.
  13. 13. El método de conformidad con la reivindicación 11, caracterizado porque la clave codificada comprende una clave de autentificación.
  14. 14. El método de conformidad con la reivindicación 11, caracterizado porque comprende además codificar datos de comunicaciones con la clave codificada antes de comunicar los datos a la red.
  15. 15. Un método de seguridad de comunicaciones inalámbricas con una estación de abonado en una red, caracterizado porque comprende: generar un valor aleatorio que tiene un marcador que especifique un tipo de codificación; calcular una primera clave de sesión y un primer valor de respuesta como función del valor aleatorio; calcular una segunda clave de sesión y un segundo valor de respuesta como función del valor aleatorio, la primera clave de sesión y el primer valor de respuesta; comunicar el valor aleatorio a la estación de abonado; recibir un valor de respuesta de abonado de la estación de abonado en respuesta al valor aleatorio; y comparar el valor de la respuesta del abonado en cada uno del primer y segundo valores de respuesta.
  16. 16. El método de conformidad con la reivindicación 15, caracterizado porque el marcador comprende una pluralidad de bits que especifican una secuencia predeterminada de valores.
  17. 17. El método de conformidad con la reivindicación 15, caracterizado porque el tipo de codificación obligado es diferente de la codificación A5/2.
  18. 18. El método de conformidad con la reivindicación 15, caracterizado porque el cálculo de la primera clave de sesión y el primer valor de respuesta también es función de una clave secreta asociada con la estación de abonado.
  19. 19. El método de conformidad con la reivindicación 15, caracterizado porque el cálculo de la segunda clave de sesión y el segundo valor de respuesta comprende : combinar el valor aleatorio y modificado, la primera clave de sesión y el primer valor de respuesta para formar un triplete de autentificación. efectuar una función arbitraria sobre el triplete de autentificación.
  20. 20. El método de conformidad con la reivindicación 19, caracterizado porque la segunda clave de sesión y el segundo valor de respuesta son calculados de la función de la salida de la función arbitraria y una clave secreta que está asociada con la estación de abonado.
  21. 21. El método de conformidad con la reivindicación 15, caracterizado porque el valor de la respuesta del abonado es igual al primer valor de respuesta, y donde el método comprende además calcular una clave codificada como función de la primera clave de sesión y un valor predeterminado.
  22. 22. El método de conformidad con la reivindicación 21, caracterizado porque comprende además recibir datos de comunicación de la estación de abonado y codificar los datos de comunicaciones con la clave codificada.
  23. 23. El método de conformidad con la reivindicación 21, caracterizado porque la clave codificada comprende una clave del cifrador o codificador.
  24. 24. El método de conformidad con la reivindicación 21, caracterizado porque la clave codificada comprende una clave de autentificación.
  25. 25. Una estación de abonado, caracterizada por que comprende : medios para recibir un valor aleatorio de la red; medios para calcular una primera clave de sesión y un primer valor de respuesta como función del valor aleatorio, y además para calcular una segunda clave de sesión y un segundo valor de respuesta como función del valor aleatorio, la primera clave de sesión y el primer valor de respuesta; medios para comunicar el segundo valor de respuesta a la red para la autentificación; y medios para aplicar la segunda clave de sesión a la codificación de datos para la transmisión.
  26. 26. Una red, caracterizada porque comprende: medios para generar un valor aleatorio que comprende un marcador que especifica un tipo de codificación; medios para calcular una primera clave de sesión y un primer valor de respuesta como función del valor aleatorio; medios para calcular una segunda clave de sesión y ?n segundo valor de respuesta como función del valor aleatorio, la primera clave de sesión y el primer valor de respuesta; medios para comunicar el valor aleatorio a la estación de abonado; medios para recibir un valor de respuesta del abonado de la estación de abonado en respuesta al valor aleatorio; y medios para comparar el valor de la respuesta del abonado con cada uno del primer y segundo valores de respuesta.
  27. 27. Una estación de abonado, caracterizado porque comprende: un receptor configurado para recibir un valor aleatorio de la red; un sistema procesador configurado para calcular una primera clave de sesión y un primer valor de respuesta como función del valor aleatorio, y calcular una segunda clave de sesión en el segundo valor de respuesta como función del valor aleatorio, la primera clave de sesión y el primer valor de respuesta; una unidad de codificación adaptada para recibir la segunda clave de sesión para la codificación y descodificación de datos de transmisión; y un transmisor configurado para enviar el segundo valor de respuesta a la red para la autentificación.
  28. 28. La estación de abonado de conformidad con la reivindicación 27, caracterizada porque el sistema procesador comprende un primer procesador con el dispositivo de comunicación y un segundo procesador en una tarjeta SIM.
  29. 29. La estación de abonado de conformidad con la reivindicación 28, caracterizada porque el dispositivo de comunicaciones comprende un teléfono celular móvil del sistema global.
  30. 30. La estación de abonado de conformidad con la reivindicación 27, caracterizada porque el sistema procesador está configurado además para combinar el valor aleatorio, la primera clave de sesión y el primer valor de respuesta para formar un triplete de autentificación y efectuar una función arbitraria sobre el triplete de autentificación.
  31. 31. La estación de abonado de conformidad con la reivindicación 27, caracterizada porque el sistema procesador está configurado además para calcular una clave codificada como función de la primera clave de sesión y un valor predeterminado.
  32. 32. La estación de abonado de conformidad con la reivindicación 26, caracterizada porque comprende además : una unidad de almacenamiento' de memoria para almacenar una clave secreta única para la estación de abonado, donde el procesador calcula la segunda clave de sesión y el segundo valor de respuesta como función de la clave secreta, el valor aleatorio, la primera clave de sesión y el primer valor de respuesta.
MXPA/A/2006/004980A 2003-11-07 2006-05-03 Metodo y aparato para autentificacion en comunicaciones inalambricas MXPA06004980A (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US60/518,041 2003-11-07
US10944155 2004-09-16

Publications (1)

Publication Number Publication Date
MXPA06004980A true MXPA06004980A (es) 2006-10-17

Family

ID=

Similar Documents

Publication Publication Date Title
US8064602B2 (en) Method and application for authentication of a wireless communication using an expiration marker
EP1787486B1 (en) Bootstrapping authentication using distinguished random challenges
EP2357858B3 (en) Enhanced security design for cryptography in mobile communication systems
JP4263384B2 (ja) ユーザ加入識別モジュールの認証についての改善された方法
KR100564674B1 (ko) 무선 시스템에서 공중을 통한 통신을 안전하게 하는 방법
KR100593576B1 (ko) 두 당사자 인증 및 키 일치 방법
KR100843524B1 (ko) 무선 통신에서의 인증을 위한 방법 및 장치
US6532290B1 (en) Authentication methods
CA2758332C (en) Method and apparatus for transmitting and receiving secure and non-secure data
MXPA06004980A (es) Metodo y aparato para autentificacion en comunicaciones inalambricas
MXPA06005168A (es) Autenticacion de una comunicacion inalambrica a traves del uso de un indicador de vencimiento