Brevet FR3057132A1 — publié le 20180406

Procédé d'authentification mutuelle entre un équipement utilisateur et un réseau de communication La présente invention concerne le domaine de l'accès à un réseau de communication, et plus particulièrement la sécurité de l'authentification lors de l'accès à ce réseau. Dans le cadre des réseaux mobiles de type 3G et 4G, l'organisme « 3GPP » (« Third Generation Partnership Project ») a défini des protocoles destinés à garantir la sécurité de l'accès d'un client à un réseau mobile. En particulier, les protocoles « UMTS AKA » (de l'anglais « Universal Mobile Telecommunications System » et « Authentication and Key Agreement ») et « EPS AKA » (pour « Evolved Packet System ») décrivent une authentification mutuelle et l'établissement de clés de session destinées à assurer la confidentialité et l'intégrité de données échangées entre le client et le réseau mobile lors de l'accès au réseau. Les protocoles AKA définissent ainsi des échanges d'une authentification mutuelle entre le réseau et le client. L'authentification repose sur le fait que le client, plus précisément un élément de sécurité (« Secure Element » en anglais), par exemple une carte UICC/USIM (pour « Universal Integrated Circuit Card./Universal Subscriber Identity Module ») comprise dans un équipement client tel qu'un terminal mobile, et le réseau partagent la connaissance d'une même clé secrète, nommée habituellement « clé d'authentification K » qui est utilisée pour générer des vecteurs d'authentification utilisés lors de l'authentification, et pour dériver des clés telles que des clés de chiffrement de la voie radio et de contrôle d'intégrité. On comprend que la compromission d'une telle clé secrète partagée par le client et le réseau remet en cause la sécurité du réseau mobile. La clé d'authentification K peut ainsi être compromise, par exemple dans le cas de cartes UICC/USIM mal implémentées ou de failles de sécurité chez des encarteurs qui ont pour rôle d'injecter ces clés dans des cartes UICC/USIM, ou par des clients indélicats. Une telle compromission peut avoir comme conséquence la création de clones de cartes UICC/USIM, l'utilisation d'une carte clonée permettant alors de se faire passer pour un abonné légitime. Dans des conditions particulières d'utilisation, qui nécessitent des connaissances poussées sur les algorithmes cryptographiques utilisés et l'interception d'un aléa lors de l'accès au réseau, il est également possible d'intercepter des communications. Un des buts de l'invention est de remédier à des insuffisances/inconvénients de l'état de la technique et/ou d'y apporter des améliorations. A cette fin, l'invention propose un procédé d'authentification mutuelle entre un équipement utilisateur et un réseau de communication, ledit réseau comprenant une entité de 3057132 2 gestion de la mobilité et un serveur d'abonnés, ledit procédé, mis en oeuvre par l'équipement utilisateur, comprenant : - réception d'un challenge d'authentification comprenant un jeton d'authentification, fonction d'un premier index et d'un premier message d'authentification calculé par le serveur 5 d'abonnés et fonction d'un premier numéro de séquence, - vérification qu'une des conditions appartenant à un ensemble de conditions est vraie, ledit ensemble de conditions comprenant : - le premier numéro de séquence est identique à un deuxième numéro de séquence mémorisé dans l'équipement utilisateur, et 10 - le premier numéro de séquence est identique à la valeur précédente du deuxième numéro de séquence et le premier index est strictement supérieur à un deuxième index mémorisé dans l'équipement client, - calcul et envoi, lorsque l'une des conditions est vraie, d'un résultat d'authentification et d'un message d'authentification, fonction de la valeur précédente du deuxième numéro de 15 séquence, ledit résultat d'authentification étant destiné à être vérifié pour authentifier l'équipement utilisateur. Le procédé d'authentification mutuelle décrit ici permet de renforcer la sécurité du réseau mobile. En effet, en cas de compromission d'une clé secrète maître appelée « clé d'authentification K », partagée par l'équipement utilisateur et le réseau, plus précisément le 20 serveur d'abonnés, et utilisée pour calculer le jeton d'authentification AUTN et un ensemble de données cryptographiques telles que des clés de session, un attaquant qui aurait cloné un équipement utilisateur, plus précisément un élément de sécurité de l'équipement utilisateur, ne pourrait pas utiliser ce clone pour se faire passer pour un abonné légitime. En effet, l'attaquant ne peut pas immédiatement obtenir le numéro de séquence du serveur ou du client, nécessaire 25 lors d'une session d'accès au réseau pour s'assurer de la synchronisation entre les deux équipements. Le jeton d'authentification qui est transmis à travers le réseau ne transporte plus le numéro de séquence du réseau masqué par une clé d' anonymisation générée à partir de la clé d'authentification K, comme cela est décrit par exemple dans la spécification TS 33.102. A la place il transporte uniquement un message d'authentification calculé à partir de ce numéro de 30 séquence. Il est donc impossible pour l'attaquant d'obtenir le numéro de séquence. Par ailleurs, une nouvelle valeur, appelée index a été introduite lors de la génération de jetons d'authentification. Un tel index, géré au niveau du serveur d'abonnés et au niveau de l'équipement utilisateur permet de détecter des désynchronisations entre les numéros de séquence gérés respectivement au niveau du serveur d'abonnés et au niveau de l'équipement 35 utilisateur. Il est par ailleurs avantageusement utilisé pour resynchroniser spontanément le 3057132 3 serveur d'abonnés et l'équipement utilisateur. « Spontanément » signifie que des commandes explicites de resynchronisation n'ont plus besoin d'être envoyées par l'équipement utilisateur en cas de désynchronisation. Ainsi, il n'est plus possible pour un attaquant de tracer un équipement utilisateur dans le 5 réseau à partir de commandes de resynchronisation qu'il émettrait suite à une désynchronisation avec le réseau. Une telle traçabilité n'est pas admissible dans un contexte de respect de la vie privée et constitue de ce fait un problème de sécurité dans le réseau mobile. Dans un premier exemple de réalisation, correspondant au cas où le premier numéro de séquence est identique au deuxième numéro de séquence, procédé comprend : 10 - incrément du deuxième numéro de séquence, et - réinitialisation du deuxième index. Dans cet exemple, l'équipement utilisateur et le serveur d'abonnés sont synchronisés. L'élément de sécurité, qui calcule et envoie le résultat d'authentification suite à la réception du jeton d'authentification incrémente alors le deuxième numéro de séquence qu'il gère. Cet 15 incrément est représentatif de l'envoi du résultat d'authentification à l'entité de gestion de la mobilité. Dans un deuxième de réalisation, correspondant au cas où le premier numéro de séquence est identique à la valeur précédente du deuxième numéro de séquence et que le premier index est strictement supérieur à un deuxième index mémorisé dans l'équipement 20 client, le procédé comprend : - mémorisation dans le deuxième index du premier index. Cet exemple correspond au cas où l'équipement utilisateur et le serveur d'abonnés sont désynchronisés d'un pas. Une telle désynchronisation est consécutive à la perte d'un message lors de l'établissement d'une session précédente. Par exemple, une réponse d'authentification 25 envoyée par l'équipement utilisateur n'a pas été reçue par l'entité de gestion de la mobilité ou le message d'authentification envoyé par l'entité de gestion de la mobilité au serveur d'abonnés a été perdu. Dans ce cas, le numéro de séquence n'est pas incrémenté par l'équipement utilisateur et le deuxième index est mis à jour en fonction du premier index. Le premier et le deuxième index donnent ainsi une indication du nombre d'authentifications inachevées. A noter qu'avec 30 cet exemple, la désynchronisation du numéro de séquence reste de un pas, quel que soit le nombre d'authentifications inachevées. Les deux exemples précédents qui correspondent aux deux conditions vérifiées par l'équipement utilisateur, permettent à celui-ci de détecter une désynchronisation et de se mettre en quelque sorte en attente d'une resynchronisation du serveur d'abonnés. Ainsi, la 35 resynchronisation n'est plus consécutive à une demande explicite, consécutive à la détection 3057132 4 d'une désynchronisation, et n'implique plus l'envoi par l'équipement utilisateur d'un numéro de séquence que doit mémoriser le serveur d'abonnés. De telles demandes de resynchronisation peuvent être détectées par un attaquant qui peut alors tracer un équipement utilisateur en forçant des désynchronisations. Une telle traçabilité n'est pas souhaitable dans un réseau de 5 télécommunications mobiles. Ainsi le procédé d'authentification mutuelle décrit ici ne permet plus à un attaquant de tracer un équipement utilisateur en suivant les demandes de resynchronisation puisque ces demandes n'ont plus lieu d'être. L'invention porte aussi sur un procédé d'authentification mutuelle entre un équipement 10 utilisateur et un réseau de communication, ledit réseau comprenant une entité de gestion de la mobilité et un serveur d'abonnés, ledit procédé, mis en oeuvre par le serveur d'abonnés comprenant : - réception d'une requête de données d'authentification, - calcul et envoi à l'entité de gestion de la mobilité d'une donnée d'authentification 15 comprenant une résultat attendu d'authentification et un jeton d'authentification, ledit jeton d'authentification étant fonction d'un index et d'un premier message d'authentification fonction d'un premier numéro de séquence, - réception d'un deuxième message d'authentification, fonction de la valeur précédente d'un deuxième numéro de séquence mémorisé dans l'équipement utilisateur, 20 - calcul d'un deuxième message d'authentification au moyen du premier numéro de séquence et comparaison du premier et du deuxième message d'authentification, l'authentification mutuelle étant réussie lorsque les deux messages d'authentification sont égaux. Dans un exemple de réalisation, le procédé comprend, lorsque l'authentification est 25 réussie : - incrément du premier numéro de séquence, et - réinitialisation de l'index. L'invention concerne également un procédé d' authentification mutuelle entre un équipement client et un réseau de télécommunications, ledit réseau comprenant une entité de 30 gestion de la mobilité et un serveur d'abonnés, ledit procédé, mis en oeuvre par l'entité de gestion de la mobilité comprenant : - envoi d'une requête de données d'authentification, - réception d'une donnée d'authentification en provenance du serveur d'abonnés, ladite donnée d'authentification comprenant un résultat attendu d'authentification fonction d'un 35 premier numéro de séquence, et un jeton d'authentification, ledit jeton d'authentification étant 3057132 5 fonction d'un index et d'un premier message d'authentification fonction d'un premier numéro de séquence, - envoi du jeton d'authentification compris dans la donnée d'authentification à l'équipement utilisateur, 5 - réception, en provenance de l'équipement utilisateur, d'un résultat d'authentification et d'un message d'authentification, ledit message d'authentification étant fonction d'une valeur précédente d'un deuxième numéro de séquence mémorisé par l'équipement utilisateur, - envoi du message d'authentification au serveur d'authentification lorsque le résultat d'authentification reçu de l'équipement client est égal au résultat attendu d'authentification reçu 10 du serveur. L'invention porte également sur un équipement utilisateur d'un réseau de télécommunications, ledit réseau comprenant une entité de gestion de la mobilité et un serveur d'abonnés, comprenant : - des moyens de réception, agencés pour recevoir un challenge d'authentification 15 comprenant un jeton d'authentification, le jeton d'authentification étant fonction d'un premier index et d'un premier message d'authentification calculé par le serveur d'abonnés et fonction d'un premier numéro de séquence, - des moyens de vérification, agencés pour vérifier qu'une des conditions appartenant à un ensemble de conditions est vraie, ledit ensemble de conditions comprenant : 20 - le premier numéro de séquence est identique à un deuxième numéro de séquence mémorisé dans l'équipement utilisateur, et - le premier numéro de séquence est identique à la valeur précédente du deuxième numéro de séquence, et le premier index est strictement supérieur à un deuxième index mémorisé dans l'équipement client, 25 - des moyens de calcul et d'envoi, agencés pour calculer et envoyer, lorsque l'une des conditions est vraie, un résultat d'authentification et un message d'authentification, fonction de la valeur précédente du deuxième numéro de séquence, ledit résultat d'authentification étant destiné à être vérifié pour authentifier l'équipement utilisateur. L'invention concerne aussi un programme pour un équipement utilisateur, comprenant 30 des instructions de code de programme destinées à commander l'exécution des étapes du procédé d'authentification mutuelle décrit précédemment et mises en oeuvre par l'équipement utilisateur, lorsque le programme est exécuté sur ledit équipement utilisateur. L'invention concerne aussi un serveur d'abonnés dans un réseau de télécommunications, ledit réseau comprenant un équipement utilisateur et une entité de gestion 35 de la mobilité, comprenant : 3057132 6 - des premiers moyens de réception, agencés pour recevoir une requête de données d' authentification, - des moyens de calcul et d'envoi, agencés pour calculer et envoyer à l'entité de gestion de la mobilité une donnée d'authentification comprenant une résultat attendu d'authentification, 5 un jeton d'authentification, ledit jeton d'authentification étant fonction d'un premier index et d'un premier message d'authentification fonction d'un premier numéro de séquence, - des deuxièmes moyens de réception, agencés pour recevoir un deuxième message d'authentification, en provenance de l'équipement utilisateur et transmis par l'entité de gestion de la mobilité, fonction de la valeur précédente d'un deuxième numéro de séquence mémorisé 10 dans l'équipement utilisateur, - des moyens de calcul et de comparaison, agencés pour calculer un deuxième message d'authentification au moyen du premier numéro de séquence et pour comparer le premier et le deuxième message d'authentification, l'authentification mutuelle étant réussie lorsque les deux messages d'authentification sont égaux. 15 L'invention porte également sur un programme pour un serveur d'abonnés, comprenant des instructions de code de programme destinées à commander l'exécution des étapes du procédé d'authentification mutuelle décrit précédemment et mises en oeuvre par le serveur d'abonnés, lorsque le programme est exécuté sur ledit serveur. L'invention porte également sur une entité de gestion de la mobilité dans un réseau de 20 télécommunications, ledit réseau comprenant un équipement client et un serveur d'abonnés, comprenant : - des premiers moyens d'envoi, agencés pour envoyer une requête de données d' authentification, - des premiers moyens de réception, agencés pour recevoir une donnée 25 d'authentification en provenance du serveur d'abonnés, ladite donnée d'authentification comprenant un résultat attendu d'authentification fonction d'un premier numéro de séquence et un jeton d'authentification, ledit jeton d'authentification étant fonction d'un index et d'un premier message d'authentification fonction d'un premier numéro de séquence, - des deuxièmes moyens d'envoi, agencés pour envoyer le jeton d'authentification 30 compris dans la donnée d'authentification à l'équipement utilisateur, - des deuxièmes moyens de réception, agencés pour recevoir en provenance de l'équipement utilisateur, un résultat d'authentification et un message d'authentification, ledit message d'authentification étant fonction d'une valeur précédente d'un deuxième numéro de séquence mémorisé par l'équipement utilisateur, 3057132 7 - des troisièmes moyens d'envoi, agencés pour envoyer le message d'authentification au serveur d'authentification lorsque le résultat d'authentification reçu de l'équipement client est égal au résultat attendu d'authentification reçu du serveur. L'invention porte également sur un programme pour une entité de gestion de la 5 mobilité, comprenant des instructions de code de programme destinées à commander l'exécution des étapes du procédé d'authentification mutuelle décrit précédemment et mises en oeuvre par l'entité de gestion de la mobilité, lorsque le programme est exécuté sur ladite entité. L'invention concerne aussi un système d'authentification dans un réseau de télécommunications, comprenant : 10 - au moins un équipement utilisateur tel que décrit précédemment, - un serveur d' abonnés tel que décrit précédemment, et - une entité de gestion de la mobilité telle que décrite précédemment. D'autres caractéristiques et avantages de la présente invention seront mieux compris de 15 la description et des dessins annexés parmi lesquels : - la figure 1 présente les étapes d'un procédé d'authentification, selon un exemple de réalisation ; - la figure 2 est une représentation schématique d'un équipement utilisateur, selon un exemple de réalisation ; 20 - la figure 3 est une représentation schématique d'un serveur d'abonnés, selon un exemple de réalisation ; - la figure 4 est une représentation schématique d'une entité de gestion de la mobilité, selon un exemple de réalisation. 25 Les étapes d'un protocole d'authentification mutuelle entre un équipement utilisateur et un réseau mobile, selon un exemple de réalisation, vont maintenant être décrites en relation avec la figure 1. Un utilisateur (non représenté sur la figure 1) est équipé d'un équipement utilisateur UE agencé pour accéder à un réseau mobile. L'équipement utilisateur UE comprend habituellement 30 un terminal et un élément de sécurité (« Secure Element » en anglais), par exemple une carte UICC/USIM (pour « Universal Integrated Circuit Card/Universal Subscriber Identity Module »). Un tel élément de sécurité est agencé pour stocker et traiter des données sensibles, par exemple une application d'accès au réseau et des données associées (on parle de « credentials » en anglais), telles que des clés et des algorithmes cryptographiques. De telles 35 données sont destinées à être utilisées par un protocole d' authentification mutuelle avec le 3057132 8 réseau lors de l'accès à ce dernier. L'invention n'est pas limitée à un équipement utilisateur de ce type et dans un autre exemple de réalisation, l'équipement utilisateur UE comprend une zone logicielle sécurisée agencée pour traiter les données sensibles d'accès au réseau. L'architecture du réseau mobile et le procédé d'authentification mutuelle sont illustrés 5 ici dans le cadre d'un réseau de type « EPS » (pour « Evolved Packet System »). L'invention n'est cependant pas limitée à ce type de réseau et s'applique également à d'autres types de réseaux mobiles tels que par exemple le réseau « GPRS » (de l'anglais « General Packet Radio Service »), ou « UMTS » (de l'anglais « Universal Mobile Telecommunications System »). Une station de base eNB est agencée pour gérer la transmission et la réception radio 10 avec l'équipement utilisateur UE. L'équipement utilisateur UE est par exemple un smartphone, un téléphone portable, une tablette, etc. Une entité de gestion de la mobilité MME est, de manière classique, responsable du contrôle dans un réseau « EPC » (« Evolved Packet Core »). Elle est en charge entre autres de la gestion de la signalisation du réseau et de l'équipement utilisateur UE, de l'établissement des 15 connexions, de la gestion de la mobilité de l'équipement UE et de l'authentification de l'équipement utilisateur UE à partir de données obtenues d'un serveur d'abonnés HSS (ou « AuC » pour « Authentication Center », ou centre d'authentification). La gestion de la mobilité, ou handover, peut impliquer plusieurs entités de gestion de la mobilité, dont une entité précédente, notée old_MME sur la figure 1, impliquée lors de l'établissement d'une session 20 précédente d'accès au réseau à partir de l'équipement utilisateur UE. On dit qu'une session a été établie dès lors qu'une authentification mutuelle entre l'équipement utilisateur UE et le réseau s'est déroulée avec succès. Une passerelle de service S-GW (pour « Serving GateWay ») est agencée pour router des paquets IP entre l'équipement utilisateur UE et le réseau coeur et une passerelle de paquets 25 P-GW (pour « Packet Data Network Gateway ») est agencée pour fournir une connectivité vers des réseaux externes. Une entité réseau d'enregistrement d'identités « EIR » (pour « Equipment Identity Register ») est agencée pour mémoriser des informations de sécurité et d'identification relatives à des terminaux mobiles. C'est grâce à cette entité qu'un opérateur peut bloquer un équipement mobile volé. Enfin, une entité de gestion PCRF (de l'anglais « Policy and Charging 30 Rules Function ») est en charge de la gestion et du contrôle en temps réel d'une session et offre une interface de paiement et de facturation. Les fonctions de la passerelle de service S-GW, de la passerelle de paquets P-GW, de l'entité d'enregistrement EIR, de l'entité de gestion PCRF, les fonctions classiques des entités de gestion de la mobilité MME et old_MME et les interfaces entre les différentes entités sont décrites en détail dans la spécification TS 23.401. Les 3057132 9 passerelles de service S-GW, de paquets P-GW, l'entité d'enregistrement EIR et l'entité de gestion PCRF ne sont pas représentées sur la figure 1 pour des raisons de lisibilité. A des fins d'accès au réseau, l'équipement utilisateur UE mémorise une clé secrète maître K, appelée clé d'authentification, partagée avec le serveur d'abonnés HSS. La clé 5 d'authentification K est destinée à être utilisée pour la génération de données d'authentification et pour la dérivation de clés telles que des clés session. De telles clés de session sont par exemple destinées à être utilisées pour le chiffrement de la voie radio, pour le contrôle d'intégrité, etc. Plus précisément la clé d'authentification K est mémorisée dans l'élément de sécurité de l'équipement utilisateur UE. L'équipement utilisateur UE mémorise et gère 10 également un numéro de séquence SQNC, associé à un état de l'élément de sécurité. Cet état évolue au fil des sessions, ce qui se traduit par l'incrément d'un pas du numéro de séquence à chaque session établie. A noter que le numéro de séquence SQNC n'est jamais réinitialisé. Le numéro de séquence SQNC est habituellement utilisé pour éviter des attaques par rejeu lors d'une authentification d'un équipement utilisateur auprès du réseau. 15 Dans le cadre du procédé d'authentification mutuelle décrit ici, l'élément de sécurité de l'équipement utilisateur UE mémorise également un index idx,. L'index idx, est destiné à éviter certains types d'attaques par rejeu au cours desquelles un challenge serait rejoué pour un même numéro de séquence. L'index permet en effet de distinguer deux jetons d'authentification calculés avec le même numéro de séquence. Par ailleurs, l'index permet, au niveau de 20 l'équipement utilisateur UE de tenir compte de la perte d'une réponse d'authentification durant l'établissement d'une session précédente, et qui a provoqué une désynchronisation des numéros de séquence entre le serveur d'abonnés HSS et par l'équipement utilisateur UE. En effet, le serveur d'abonnés HSS n' incrémente pas son numéro de séquence s'il n'a pas reçu et validé la réponse d'authentification. Il permet également de resynchroniser lors d'une session suivante 25 les deux entités sans envoyer explicitement le numéro de séquence. Cela permet de s'affranchir des demandes de resynchronisation qui font l'objet d'une commande explicite échangée entre les deux entités et qui, détectées par un attaquant, peuvent permettre de tracer un équipement utilisateur dans le réseau. Pour chaque abonné qu'il gère, par exemple pour l'équipement utilisateur UE, le serveur 30 d'abonnés HSS mémorise un triplé comprenant la clé d'authentification K de l'abonné, un numéro de séquence SQN0,, et un index idx0r,c. A noter qu'en cas de fonctionnement normal du réseau c'est-à-dire sans perte de message lors de l'établissement de sessions, le numéro de séquence SQN01,,, et l'index idx0r,, mémorisés en association avec l'équipement utilisateur UE et gérées par le serveur d'abonnés HSS sont identiques au numéro de séquence SQNC et à 35 l'index idx, mémorisés et gérés par l'équipement utilisateur UE. Une différence entre les 3057132 10 valeurs mémorisées et gérées par l'équipement utilisateur UE et celles mémorisées par le serveur d'authentification HSS est représentative de la perte d'au moins un message lors de l'établissement d'une session. Certains échanges décrits ci-dessous sont conformes à ceux de la procédure 5 d'enregistrement d'un terminal mobile dans un réseau telle que décrite dans la spécification TS 23.401, paragraphe 5.3.2.1. En particulier les messages échangés, lorsqu'ils ont le même nom, ainsi que leurs paramètres, sont identiques à ceux de la spécification. Ils ne sont donc pas décrits dans le détail. Dans une étape initiale E0, le terminal UE émet une requête d'attachement au réseau 10 Attach Request. La requête est reçue par la station de base eNB et retransmise dans une étape El de retransmission à l'entité de gestion de la mobilité MME. La requête d'attachement comprend un identifiant du terminal UE. Cet identifiant est soit un identifiant temporaire de type « GUTI » (pour « Globally Unique Temporary Identifier »), s'il en possède un, soit un identifiant permanent d'abonné, ou « IMSI » (pour 15 « International Mobile Subscriber Identity »), stocké dans l'élément de sécurité de l'équipement utilisateur UE. Si l'équipement utilisateur UE possède un identifiant temporaire, celui-ci lui a été affecté lors d'un précédent attachement de l'équipement UE au réseau par l'entité de gestion de la mobilité précédente old_MME. Dans un autre exemple de réalisation, correspondant à un réseau UMTS, l'identifiant temporaire est de type « TMSI » (« Temporary Mobile Subscriber 20 Identity »). Si l'équipement utilisateur UE s'est identifié avec un identifiant temporaire, alors dans une étape E2 d'envoi, l'entité de gestion de la mobilité MME envoie une requête d'identification, Identification Request, à destination de l'entité de gestion de la mobilité précédente old_MME qui a alloué l'identifiant temporaire à l'équipement client UE 25 précédemment. L'entité de gestion de la mobilité précédente old_MME envoie, dans une étape E3 de réponse, une réponse d'identification, Identification Response, à l'entité de gestion de la mobilité MME. La réponse d'identification comprend un contexte propre à l'équipement utilisateur UE qui comprend l'identifiant unique d'abonné IMSI auquel a été associé l'identifiant temporaire, ainsi que des informations de sécurité. 30 Dans un cas où l'étape précédente a échoué, c'est-à-dire dans le cas où l'équipement utilisateur UE était inconnu de l'entité de gestion de la mobilité précédente old_MME, l'entité de gestion de la mobilité MME envoie à l'équipement utilisateur UE via la station de base eNB, dans une étape E4 d'envoi, une requête d'identité, Identity Request. Cette requête est destinée à obtenir de l'équipement utilisateur UE l'identifiant d'abonné unique IMSI. L'équipement 35 utilisateur UE répond à cette requête dans une étape E5 de réponse, en envoyant à l'entité de 3057132 11 gestion de la mobilité MME une réponse à la requête d'identité, Identity Response, qui comprend l'IMSI. Les étapes E2, E3, E4 et E5 étant optionnelles, puisqu'exécutées uniquement lorsque l'équipement utilisateur UE est inconnu de l'entité de gestion de la mobilité MME, elles apparaissent en pointillés sur la figure 1. 5 A ce stade, l'entité de gestion de la mobilité MME possède l'identifiant unique IMSI d'abonné associé à l'équipement utilisateur UE. Dans une étape suivante E6 d'envoi, l'entité de gestion de la mobilité MME envoie une requête de données d'authentification, Authentication Data Request, au serveur d'abonnés HSS. La requête de données d'authentification comprend l'identifiant IMSI de l'équipement client 10 UE, ainsi qu'un identifiant du réseau visité VPLMNid. Le réseau visité VPLMN (de l'anglais « Visited Public Land Mobile Network ») est celui à partir duquel l'équipement utilisateur UE accède au réseau au cours de la session courante. L'entité de gestion de la mobilité MME qui reçoit la requête d'attachement envoyée par l'équipement utilisateur UE est une entité du réseau visité d'identifiant VPLMNid. 15 Dans une étape E7 de génération et d'envoi de données d'authentification, le serveur d'abonnés HSS identifie dans sa base d'abonnés, à partir de l'identifiant IMSI de l'équipement utilisateur UE, la clé d'authentification K dont il partage la connaissance avec l'équipement utilisateur UE, le numéro de séquence SQN01,,, et la valeur d'index idx0p,, tels que stockés par le réseau. Le serveur d'abonnés HSS génère ensuite une donnée d'authentification AV qui 20 comprend : un jeton d'authentification AUTN, une réponse d'authentification attendue XRES, un aléa R et une clé maîtresse de session MSK. La clé maîtresse de session MSK est destinée à être utilisée pour dériver des clés de session telles que des clés de chiffrement de la voie radio et de contrôle d'intégrité pour une session courante. Le jeton d'authentification AUTN est destiné à être utilisé pour l'authentification du réseau par l'équipement utilisateur UE. La réponse 25 attendue XRES correspond à la valeur que doit répondre l'équipement utilisateur UE à l'entité de gestion de la mobilité MME suite à l'envoi par celle-ci du jeton d'authentification AUTN et de l'aléa R. Enfin, l'aléa R, généré par le serveur d'abonnés HSS est destiné à éviter des rejeux de données d'authentification à partir de l'équipement utilisateur d'un attaquant. La donnée d'authentification est donc de la forme : AV = (AUTN, XRES, R, MSK). 30 Plus précisément, les valeurs suivantes, destinées à être utilisées pour générer la donnée d'authentification AV sont calculées par le serveur d'abonnés HSS : - Un chiffré Cid,, de l'index idx0p,, mémorisé par le serveur d'abonnés HSS : Cidx = EncK(R, idxop,c), où EncK est un algorithme de chiffrement symétrique paramétré par la clé d'authentification K propre à l'équipement utilisateur UE. L'algorithme de chiffrement 3057132 12 symétrique est par exemple l'algorithme « AES » (de l'anglais « Advanced Encryption Standard ») ; - un premier message d'authentification MAC1 = H1(K, R, VPLMNid, AMF), où H1 est une fonction de hachage avec clé secrète, VPLMNid (de l'anglais « Visited Public 5 Land Mobile Network ») un identifiant propre au réseau visité dans lequel se situe l'équipement utilisateur UE, et AMF (de l'anglais « Authentication Management Field ») un paramètre réseau inclus dans chaque donnée d'authentification et interprétable par l'élément de sécurité et l'équipement mobile ; - XRES = H2(K, R, SQNop,C, VPLMNid, AMF), où H2 est une fonction de hachage avec 10 clé secrète ; - CK = H3(K, R, SQNop C, VPLMNid, AMF), où H3 est une fonction de hachage avec clé secrète. La clé CK est une première clé intermédiaire permettant de calculer la clé MSK. Elle est destinée à être calculée également par l'équipement utilisateur UE ; - IK = H4(K, R, SQNop C, VPLMNid, AMF), où H4 est une fonction de hachage avec clé 15 secrète. La clé IK est une deuxième clé intermédiaire destinée à être calculée également par l'équipement utilisateur UE ; - MSK = KDF(CK, IK, VPLMNid), où KDF est une fonction de dérivation de clés destinée à être utilisée pour obtenir une pluralité de clés de session, par exemple une clé de chiffrement de la voie radio, une clé de contrôle d'intégrité, etc. ; et 20 - AUTN = (MACi, AMF, Cidx)- En fin d'étape E7, le serveur d'abonnés HSS envoie la donnée d'authentification AV générée, ainsi que l'identifiant IMSI de l'équipement utilisateur UE à l'entité de gestion de la mobilité MME. Il incrémente également d'un pas son index idx0r,c. Par exemple, idx0p,,c = idx0p,, + 1. L'incrément est représentatif de l'envoi par le serveur d'abonnés HSS de la donnée 25 d'authentification AV. Dans une étape E8 de génération de clés et d'envoi d'un challenge d'authentification, l'entité de gestion de la mobilitOé MME dérive la clé MSK afin de générer la première CK et la deuxième IK clé intermédiaire propres à l'équipement utilisateur UE. En fin d'étape E8, l'entité de gestion de la mobilité MME envoie au terminal client UE via la station de base eNB un 30 challenge d'authentification, Authentication Challenge qui comprend le jeton d'authentification AUTN reçu du serveur d'abonnés HSS et l'aléa R. Le challenge d'authentification est noté (AUTN, R). Dans une étape suivante E9 de calcul et de vérification, l'équipement utilisateur UE calcule un deuxième et un troisième message d'authentification MAC2, MAC3, à partir de l'aléa 35 R reçu et de données qu'il a mémorisées. 3057132 13 Ainsi, le deuxième message d'authentification MAC2=H1(K, R, SQNC, VPLMNid, AMF), où H1 est la fonction de hachage avec clé secrète utilisée par le serveur d'abonnés HSS lors de la génération de la donnée d'authentification , est calculé à partir du numéro de séquence courant SQNC mémorisé par l'équipement utilisateur UE. 5 Le troisième message d'authentification MAC3=H1(K, R, SQNC 1, VPLMNid, AMF) est calculé à partir d'un numéro de séquence précédent, noté SQNC 1. Le numéro de séquence précédent SQNC -1 est la valeur qu'avait le numéro de séquence courant lors de la précédente session établie, c'est-à-dire associée à une authentification mutuelle réussie. Dans un exemple de réalisation, le numéro de séquence SQNC est une valeur entière discrète. Le numéro de 10 séquence précédent SQN,1 peut donc être calculé en enlevant « 1 » au numéro de séquence courant. Dans un autre exemple de réalisation, un numéro de séquence courant SQNC est obtenu en appliquant une fonction f au numéro de séquence précédent ; dans ce cas, le numéro de séquence précédent SQNC -1 peut être mémorisé, ou calculé au moyen d'une fonction inverse f1. L'équipement utilisateur UE déchiffre également l'index Cid, qu'il a reçu chiffré dans le 15 jeton d'authentification AUTN. Il obtient ainsi l'index idx0r,, tel qu'envoyé dans la donnée d'authentification par le serveur d'abonnés HSS. L'équipement utilisateur UE vérifie ensuite si l'une des deux conditions suivantes est vraie : - soit que le premier message d'authentification MACi reçu dans le jeton 20 d'authentification AUTN au cours de l'étape E8 est identique au deuxième message d'authentification MAC2 que l'équipement utilisateur UE a calculé. En d'autres termes, il vérifie que : MAC2 = H1(K, R, SQNC, VPLMNid, AMF) = MAC1 (1) - soit que le premier message d'authentification MACi reçu dans le jeton 25 d'authentification AUTN au cours de l'étape E8 est égal au troisième message d'authentification MAC3 que l'équipement utilisateur UE a calculé à partir du numéro de séquence précédent SQNC 1, et que l'index idx, qu'il stocke est inférieur à l'index idx0r,, qu'il a reçu chiffré et qu'il a déchiffré précédemment. En d'autres termes, l'équipement utilisateur UE vérifie que : 30 MAC3 = H1(K, R, SQN,-1, VPLMNid, AMF) = MAC1 ET idx, REVENDICATIONS1. Procédé d'authentification mutuelle entre un équipement utilisateur (UE) et un réseau de communication, ledit réseau comprenant une entité de gestion de la mobilité (MME) et un serveur d'abonnés (HSS), ledit procédé, mis en oeuvre par l'équipement utilisateur, comprenant : - réception (E8) d'un challenge d'authentification comprenant un jeton d'authentification (AUTN), fonction d'un premier index (idxop,c) et d'un premier message d'authentification (MACi) calculé par le serveur d'abonnés et fonction d'un premier numéro de séquence (SQNop,c), - vérification (E9) qu'une des conditions appartenant à un ensemble de conditions est vraie, ledit ensemble de conditions comprenant : - le premier numéro de séquence est identique à un deuxième numéro de séquence (SQN,) mémorisé dans l'équipement utilisateur, et - le premier numéro de séquence est identique à la valeur précédente (SON, 1) du deuxième numéro de séquence et le premier index est strictement supérieur à un deuxième index (idx,) mémorisé dans l'équipement client, - calcul et envoi (E13), lorsque l'une des conditions est vraie, d'un résultat d'authentification (RES) et d'un message d'authentification (MAC4), fonction de la valeur précédente du deuxième numéro de séquence, ledit résultat d'authentification étant destiné à être vérifié pour authentifier l'équipement utilisateur. 2. Procédé selon la revendication 1, comprenant, lorsque le premier numéro de séquence (SQN0p,c) est identique au deuxième numéro de séquence (SQN,) : - incrément du deuxième numéro de séquence, et - réinitialisation du deuxième index. 3. Procédé selon la revendication 1, comprenant, lorsque le premier numéro de séquence est identique à la valeur précédente du deuxième numéro de séquence et que le premier index est strictement supérieur à un deuxième index mémorisé dans l'équipement client : - mémorisation dans le deuxième index (idx,) du premier index (idx0p,c). 3057132 25 4. Procédé d'authentification mutuelle entre un équipement utilisateur (UE) et un réseau de communication, ledit réseau comprenant une entité de gestion de la mobilité (MME) et un serveur d'abonnés (HSS), ledit procédé, mis en oeuvre par le serveur d'abonnés comprenant : - réception (E6) d'une requête de données d'authentification, 5 - calcul (E7) et envoi à l'entité de gestion de la mobilité d'une donnée d'authentification (AV) comprenant une résultat attendu d'authentification (XRES) et un jeton d'authentification (AUTN), ledit jeton d'authentification étant fonction d'un index (idx0r,,) et d'un premier message d'authentification (MAC1) fonction d'un premier numéro de séquence (SQN0,,), - réception (E15) d'un deuxième message d'authentification (MAC4), fonction de la 10 valeur précédente (SQN, 1) d'un deuxième numéro de séquence mémorisé dans l'équipement utilisateur, - calcul d'un deuxième message d'authentification (MAC4') au moyen du premier numéro de séquence (SQN0,,) et comparaison du premier et du deuxième message d'authentification, l'authentification mutuelle étant réussie lorsque les deux messages 15 d'authentification sont égaux. 5. Procédé selon la revendication 4, comprenant, lorsque l'authentification est réussie : - incrément du premier numéro de séquence, et - réinitialisation de l'index. 20 6. Procédé d'authentification mutuelle entre un équipement client (UE) et un réseau de télécommunications, ledit réseau comprenant une entité de gestion de la mobilité (MME) et un serveur d'abonnés (HSS), ledit procédé, mis en oeuvre par l'entité de gestion de la mobilité comprenant : 25 - envoi (E6) d'une requête de données d'authentification, - réception (E8) d'une donnée d'authentification (AV) en provenance du serveur d'abonnés, ladite donnée d'authentification comprenant un résultat attendu d'authentification (XRES) fonction d'un premier numéro de séquence (SQN0,,), et un jeton d'authentification (AUTN), ledit jeton d'authentification étant fonction d'un index (idx0r,,) et d'un premier 30 message d'authentification (MAC1) fonction d'un premier numéro de séquence (SQN0,,), - envoi (E8) du jeton d'authentification compris dans la donnée d'authentification à l'équipement utilisateur, - réception, en provenance de l'équipement utilisateur, d'un résultat d'authentification (RES) et d'un message d'authentification (MAC4), ledit message d'authentification étant 3057132 26 fonction d'une valeur précédente d'un deuxième numéro de séquence (SQNc-1) mémorisé par l'équipement utilisateur, - envoi (E15) du message d'authentification au serveur d'authentification lorsque le résultat d'authentification reçu de l'équipement client est égal au résultat attendu 5 d'authentification reçu du serveur. 7. Equipement utilisateur (UE) d'un réseau de télécommunications, ledit réseau comprenant une entité de gestion de la mobilité (MME) et un serveur d'abonnés (HSS), comprenant : 10 - des moyens de réception (206), agencés pour recevoir un challenge d'authentification comprenant un jeton d'authentification (AUTN), le jeton d'authentification étant fonction d'un premier index (idxop,c) et d'un premier message d'authentification (MAC1) calculé par le serveur d'abonnés et fonction d'un premier numéro de séquence (SQN0p,c), - des moyens de vérification (207), agencés pour vérifier qu'une des conditions 15 appartenant à un ensemble de conditions est vraie, ledit ensemble de conditions comprenant : - le premier numéro de séquence est identique à un deuxième numéro de séquence (SQNC) mémorisé dans l'équipement utilisateur, et - le premier numéro de séquence est identique à la valeur précédente (SQNc-1) du deuxième numéro de séquence, et le premier index est strictement supérieur à un 20 deuxième index (idx,) mémorisé dans l'équipement client, - des moyens de calcul et d'envoi (208), agencés pour calculer et envoyer, lorsque l'une des conditions est vraie, un résultat d'authentification (RES) et un message d'authentification (MAC4), fonction de la valeur précédente du deuxième numéro de séquence, ledit résultat d'authentification étant destiné à être vérifié pour authentifier l'équipement utilisateur. 25 8. Programme pour un équipement utilisateur, comprenant des instructions de code de programme destinées à commander l'exécution des étapes du procédé d'authentification mutuelle selon l'une quelconque des revendications 1 à 3 mises en oeuvre par l'équipement utilisateur, lorsque le programme est exécuté sur ledit équipement utilisateur. 30 9. Serveur d'abonnés (HSS) dans un réseau de télécommunications, ledit réseau comprenant un équipement utilisateur (UE) et une entité de gestion de la mobilité (MME), comprenant : - des premiers moyens de réception (306), agencés pour recevoir une requête de données d'authentification, 3057132 27 - des moyens (307) de calcul et d'envoi, agencés pour calculer et envoyer à l'entité de gestion de la mobilité une donnée d'authentification (AV) comprenant une résultat attendu d'authentification (XRES), un jeton d'authentification (AUTN), ledit jeton d'authentification étant fonction d'un premier index (idxOp,c) et d'un premier message d'authentification (MAC1) 5 fonction d'un premier numéro de séquence (SQN0p,c), - des deuxièmes moyens de réception (308), agencés pour recevoir un deuxième message d'authentification (MAC4), en provenance de l'équipement utilisateur et transmis par l'entité de gestion de la mobilité, fonction de la valeur précédente (SQNc-1) d'un deuxième numéro de séquence mémorisé dans l'équipement utilisateur, 10 - des moyens (309) de calcul et de comparaison, agencés pour calculer un deuxième message d'authentification (MAC4') au moyen du premier numéro de séquence (SQN0,e) et pour comparer le premier et le deuxième message d'authentification, l'authentification mutuelle étant réussie lorsque les deux messages d'authentification sont égaux. 15 10. Programme pour un serveur d'abonnés, comprenant des instructions de code de programme destinées à commander l'exécution des étapes du procédé d'authentification mutuelle selon la revendication 4 ou la revendication 5 mises en oeuvre par le serveur d'abonnés, lorsque le programme est exécuté sur ledit serveur. 20 11. Entité de gestion de la mobilité (MME) dans un réseau de télécommunications, ledit réseau comprenant un équipement client (UE) et un serveur d'abonnés (HSS), comprenant : - des premiers moyens d'envoi (405), agencés pour envoyer une requête de données d'authentification, - des premiers moyens de réception (406), agencés pour recevoir une donnée 25 d'authentification (AV) en provenance du serveur d'abonnés, ladite donnée d'authentification comprenant un résultat attendu d'authentification (XRES) fonction d'un premier numéro de séquence (SQN0,c) et un jeton d'authentification (AUTN), ledit jeton d'authentification étant fonction d'un index (iclx0,e) et d'un premier message d'authentification (MAC1) fonction d'un premier numéro de séquence (SQN0,c), 30 - des deuxièmes moyens d'envoi (407), agencés pour envoyer le jeton d'authentification compris dans la donnée d'authentification à l'équipement utilisateur, - des deuxièmes moyens de réception (408), agencés pour recevoir en provenance de l'équipement utilisateur, un résultat d'authentification (RES) et un message d'authentification (MAC4), ledit message d'authentification étant fonction d'une valeur précédente d'un deuxième 35 numéro de séquence (SQNc-1) mémorisé par l'équipement utilisateur, 3057132 28 - des troisièmes moyens d'envoi (409), agencés pour envoyer le message d'authentification au serveur d'authentification lorsque le résultat d'authentification reçu de l'équipement client est égal au résultat attendu d'authentification reçu du serveur. 5 12. Programme pour une entité de gestion de la mobilité, comprenant des instructions de code de programme destinées à commander l'exécution des étapes du procédé d'authentification mutuelle selon la revendication 6 mises en oeuvre par l'entité de gestion de la mobilité, lorsque le programme est exécuté sur ladite entité. 10 13. Système d'authentification dans un réseau de télécommunications, comprenant : - au moins un équipement utilisateur selon la revendication 7, - un serveur d'abonnés selon la revendication 9, et - une entité de gestion de la mobilité selon la revendication 11. 15