FR2928798A1 - Procede d'authentification, systeme d'authentification, terminal serveur, terminal client et programmes d'ordinateur correspondants - Google Patents
Procede d'authentification, systeme d'authentification, terminal serveur, terminal client et programmes d'ordinateur correspondants Download PDFInfo
- Publication number
- FR2928798A1 FR2928798A1 FR0851674A FR0851674A FR2928798A1 FR 2928798 A1 FR2928798 A1 FR 2928798A1 FR 0851674 A FR0851674 A FR 0851674A FR 0851674 A FR0851674 A FR 0851674A FR 2928798 A1 FR2928798 A1 FR 2928798A1
- Authority
- FR
- France
- Prior art keywords
- challenge
- server
- terminal
- client terminal
- secret
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3271—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0869—Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/06—Authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/80—Wireless
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/16—Implementing security features at a particular protocol layer
- H04L63/162—Implementing security features at a particular protocol layer at the data link layer
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mobile Radio Communication Systems (AREA)
- Computer And Data Communications (AREA)
Abstract
Ce procédé d'authentification entre un client (2) et un serveur (4) se partageant un secret (6) comprend les étapes de :- génération par le serveur (4) d'une valeur aléatoire (40) ;- calcul par le serveur (4 ) d'une première valeur chiffrée (46);- concaténation par le serveur (4 ) de la valeur aléatoire (40) et de la première valeur chiffrée (46) pour former un défi (10) ;- extraction par le client (2) de la valeur aléatoire (40) et de la première valeur chiffrée (46) à partir du défi (10) ;- calcul par le client (2) d'une deuxième valeur chiffrée (48);- comparaison par le client (2) des première (46) et deuxième (48) valeurs chiffrées ; et- authentification du serveur (4) par le client (2) si la première (46) et la deuxième (48) valeurs chiffrées sont concordantes.
Description
Procédé d'authentification, système d'authentification, terminal serveur, terminal client et programmes d'ordinateur correspondants La présente invention concerne un procédé d'authentification entre un terminal client et un terminal serveur raccordés à un réseau de transmission d'informations, lesdits terminaux se partageant un secret et ledit procédé comprenant : - une étape de génération d'un défi par le terminal serveur ; - une étape de transmission du défi du terminal serveur vers le terminal client à travers le réseau ; - une étape de calcul par le terminal client d'une première réponse au défi, ledit calcul comprenant l'application d'une première fonction sur un premier ensemble comprenant le secret et le défi ; - une étape de transmission de la première réponse du terminal client vers le terminal serveur à travers le réseau ; - une étape de calcul par le terminal serveur d'une deuxième réponse au défi par l'application de la première fonction sur le premier ensemble comprenant le secret et le défi ; - une étape de comparaison par le terminal serveur des première et deuxième réponses ; et - une étape d'authentification du terminal client par le terminal serveur si la première et la deuxième réponses sont concordantes, Elle concerne également un système d'authentification, un terminal serveur, un terminal client et des programmes d'ordinateur correspondants. Plus particulièrement, l'invention se rapporte au domaine de la sécurité dans les réseaux de transmission d'informations et notamment l'authentification entre deux terminaux raccordés à un tel réseau. Plusieurs protocoles de sécurité ont été récemment développés pour permettre d'établir une authentification entre des terminaux communicants, de chiffrer et protéger les données échangées entre ces terminaux et de contrôler l'accès aux ressources et aux services du réseau. Deux modes d'authentification sont actuellement déployés à savoir l'authentification à sens unique et l'authentification mutuelle.
Dans le mode de l'authentification à sens unique, un seul terminal est authentifié. Ce mode est utilisé notamment dans les réseaux de première génération généralement basés sur des architectures client-serveur, dans lesquelles un client demande un accès à des services fournis par un serveur. Les protocoles de sécurité utilisés dans ces réseaux sont basés, dans le meilleur des cas, sur un processus de type défi/réponse, dans lequel le serveur envoie un défi au client et ce dernier applique une fonction cryptographique sur le défi en utilisant un secret partagé (tel qu'un mot de passe, à titre d'exemple). Ainsi, c'est seulement le client qui est authentifié. Ceci a pour conséquence de le rendre exposé à plusieurs attaques actives et passives, notamment l'attaque dite de l'homme au milieu ( Man in the Middle ). L'attaque de l'homme au milieu est une attaque dans laquelle un tiers s'interpose dans une communication entre deux terminaux sans que ces derniers n'en aient conscience. Ce tiers est ainsi capable de lire, insérer et modifier comme il le souhaite des messages chiffrés entre les deux terminaux sans qu'aucun de ces derniers ne puisse se douter que la ligne entre eux a été compromise. Dans le mode de l'authentification mutuelle, chaque terminal authentifie l'autre terminal et inversement.
La majorité des protocoles de sécurité proposent une authentification à sens unique et peu de ceux-ci mettent en oeuvre une authentification mutuelle. A titre d'exemple non limitatif, le protocole SSL ( Secure Sockets Layer ou Sécurité de la Couche de Transport ) supporte les deux modes d'authentification cités auparavant, tandis qu'EAP-MD5 ( Extensible Authentication Protocol-Message Digest 5 ), CHAP ( Challenge Handshake Authentication Protocol ), les mécanismes de défi/réponse (utilisés notamment avec les réseaux GSM ( Global System for Mobile communications ), les réseaux WLAN ( Wireless Local Area Network ), les applications Internet telles SIP ( Session Initiation Protocol ), WEB, courrier électronique, etc, l'authentification par Digest ( Digest Authentication ) et HTTP Digest n'offrent qu'une authentification à sens unique. La difficulté pour améliorer l'authentification des terminaux dans ces réseaux et applications est que ces derniers sont très largement déployés et mis en oeuvre de sorte que des modifications de leurs fonctionnalités introduisent des problèmes d'interopérabilité. Par conséquent, toute amélioration proposée doit permettre une interopérabilité et une compatibilité avec les mises en oeuvre existantes.
Récemment il a été proposé plusieurs procédés d'authentification mutuelle permettant de remédier aux problèmes de l'authentification à sens unique, notamment l'attaque de l'homme au milieu. A titre d'exemple, le Groupe de Travail d'Ingénierie de l'Internet IETF ( Internet Engineering Task Force ) RCF ( Request for Comments ) 2759, a proposé une extension du protocole CHAP, appelée CHAP-v2 pour assurer une authentification mutuelle. Par ailleurs, le document EP1816616 décrit un procédé pour établir une authentification mutuelle entre deux terminaux en utilisant des valeurs aléatoires et une clé partagée.
De plus, dans Nouvelle méthode d'authentification EAP-EHash , Colloque CFIP 2006 du 30 octobre 2006, Cheikhrouhou et al. proposent un nouveau procédé d'authentification mutuelle. Cependant, aucun de ces procédés ne permet une interopérabilité et une compatibilité avec les mises en oeuvre largement déployées notamment dans les réseaux de téléphonie mobile et Internet. Le but de l'invention est de résoudre ces problèmes. A cet effet, l'invention a pour objet un procédé d'authentification entre un terminal client et un terminal serveur raccordés à un réseau de transmission d'informations, lesdits terminaux se partageant un secret et ledit procédé comprenant : - une étape de génération d'un défi par le terminal serveur ; - une étape de transmission du défi du terminal serveur vers le terminal client à travers le réseau ; - une étape de calcul par le terminal client d'une première réponse au défi, ledit calcul comprenant l'application d'une première fonction sur un premier ensemble comprenant le secret et le défi ; - une étape de transmission de la première réponse du terminal client vers le terminal serveur à travers le réseau ; - une étape de calcul par le terminal serveur d'une deuxième réponse au défi par l'application de la première fonction sur le premier ensemble comprenant le secret et le défi ; - une étape de comparaison par le terminal serveur des première et deuxième réponses ; et - une étape d'authentification du terminal client par le terminal serveur si la première et la deuxième réponses sont concordantes, caractérisé en ce que : - l'étape de génération du défi par le terminal serveur comprend : - une étape de génération par le terminal serveur d'au moins une valeur aléatoire ; - une étape de calcul par le terminal serveur d'une première valeur chiffrée par l'application d'une deuxième fonction sur un deuxième ensemble comprenant le secret et la valeur aléatoire ; et - une étape de concaténation par le terminal serveur de la valeur aléatoire et de la première valeur chiffrée pour former le défi ; et en ce que le procédé comprend : - une étape d'extraction par le terminal client de la valeur aléatoire et de la première valeur chiffrée à partir du défi ; 20 - une étape de calcul par le terminal client d'une deuxième valeur chiffrée par l'application de la deuxième fonction sur le deuxième ensemble comprenant le secret et la valeur aléatoire ; - une étape de comparaison par le terminal client des première et deuxième valeurs chiffrées ; et 25 - une étape d'authentification du terminal serveur par le terminal client si la première et la deuxième valeurs chiffrées sont concordantes. Suivant des modes particuliers de réalisation, le procédé comprend une ou plusieurs des caractéristiques suivantes , prise(s) isolément ou suivant toutes les 30 combinaisons techniquement possibles : - l'étape de calcul par le terminal client d'une première réponse au défi comprend une étape de concaténation par le terminal client du défi et du résultat de 15 l'application de la première fonction sur le premier ensemble comprenant le secret et le défi, - la première et la deuxième fonctions sont choisies dans un groupe de fonctions comprenant : - une fonction de déduction de clé KDF ; - une fonction pseudo-aléatoire PRF ; - une fonction de hachage MD5 ; - une fonction de hachage SHA ; - une procédure de code d'authentification MAC ; - une procédure de code d'authentification HMAC ; - un algorithme de chiffrement symétrique de type RC4 ou DES ou 3DES ou AES ; et - un algorithme d'authentification A3. - le premier et le deuxième ensembles comprennent en outre une pluralité de paramètres connus des terminaux client et serveur, - l'étape de génération du défi par le terminal serveur comprend une étape de concaténation par ledit terminal serveur de la valeur aléatoire, de la première valeur chiffrée et de la pluralité de paramètres, - l'étape de calcul par le terminal client d'une première réponse au défi comprend une étape de concaténation par le terminal client du défi, du résultat de l'application de la première fonction sur le premier ensemble comprenant le secret et le défi et de la pluralité de paramètres, - le réseau de transmission d'informations est un réseau Internet mettant en oeuvre une infrastructure RADIUS, - les informations échangées entre les terminaux client et serveur sont encapsulées dans des paquets EAP, - les paquets EAP sont échangés entre le terminal client et le terminal serveur par l'intermédiaire d'un point d'accès, - le point d'accès est un serveur d'administration de réseau NAS. - le réseau de transmission d'informations est un réseau GSM. - le terminal client est une carte SIM et le terminal serveur comprend un registre des abonnés nominaux HLR et un centre d'authentification AuC.
L'invention a également pour objet un système d'authentification comprenant un terminal client et un terminal serveur raccordés à un réseau de transmission d'informations, lesdits terminaux se partageant un secret et ledit système comprenant : - des moyens de génération d'un défi par le terminal serveur ; - des moyens de transmission du défi du terminal serveur vers le terminal client à travers le réseau ; - des moyens de calcul par le terminal client d'une première réponse au défi, lesdits moyens de calcul comprenant des moyens d'application d'une première fonction sur un premier ensemble comprenant le secret et le défi ; - des moyens de transmission de la première réponse du terminal client vers le terminal serveur à travers le réseau ; - des moyens de calcul par le terminal serveur d'une deuxième réponse au défi comprenant des moyens d'application de la première fonction sur le premier ensemble comprenant le secret et le défi ; - des moyens de comparaison par le terminal serveur des première et deuxième réponses ; et - des moyens d'authentification du terminal client par le terminal serveur si la première et la deuxième réponses sont concordantes, caractérisé en ce que : - les moyens de génération du défi par le terminal serveur comprennent: - des moyens de génération par le terminal serveur d'au moins une valeur aléatoire ; - des moyens de calcul par le terminal serveur d'une première valeur chiffrée comprenant des moyens d'application d'une deuxième fonction sur un deuxième ensemble comprenant le secret et la valeur aléatoire ; et - des moyens de concaténation par le terminal serveur de la valeur aléatoire et de la première valeur chiffrée pour former le défi ; et en ce que le système comprend : - des moyens d'extraction par le terminal client de la valeur aléatoire et de la première valeur chiffrée à partir du défi ; - des moyens de calcul par le terminal client d'une deuxième valeur chiffrée comprenant des moyens d'application de la deuxième fonction sur le deuxième ensemble comprenant le secret et la valeur aléatoire ; - des moyens de comparaison par le terminal client des première et deuxième valeurs chiffrées ; et - des moyens d'authentification du terminal serveur par le terminal client si la première et la deuxième valeurs chiffrées sont concordantes.
L'invention a encore pour objet un terminal serveur raccordé à un réseau de transmission d'informations, ledit terminal serveur partageant un secret avec un terminal client raccordé au dit réseau, et comprenant : -des moyens de génération d'un défi ; - des moyens de transmission du défi vers le terminal client à travers le réseau ; - des moyens de réception d'une première réponse au défi depuis le terminal client ; - des moyens de calcul d'une deuxième réponse au défi comprenant des moyens d'application d'une première fonction sur un premier ensemble comprenant le secret et le défi ; - des moyens de comparaison des première et deuxième réponses ; et - des moyens d'authentification du terminal client si la première et la deuxième réponses sont concordantes, caractérisé en ce que : - les moyens de génération du défi comprennent: - des moyens de génération d'au moins une valeur aléatoire ; des moyens de calcul d'une première valeur chiffrée comprenant des moyens d'application d'une deuxième fonction sur un deuxième ensemble comprenant le secret et la valeur aléatoire ; et - des moyens de concaténation de la valeur aléatoire et de la première valeur chiffrée pour former le défi.
L'invention a également pour objet un terminal client raccordé à un réseau de transmission d'informations, ledit terminal client partageant un secret avec un terminal serveur raccordé audit réseau et comprenant : - des moyens de réception d'un défi depuis le terminal serveur ; - des moyens de calcul d'une première réponse au défi, lesdits moyens de calcul comprenant des moyens d'application d'une première fonction sur un premier ensemble comprenant le secret et le défi ; - des moyens de transmission de la première réponse vers le terminal serveur à travers le réseau, caractérisé en ce qu'il comprend : - des moyens d'extraction d'une valeur aléatoire et d'une première valeur chiffrée à partir du défi ; - des moyens de calcul d'une deuxième valeur chiffrée comprenant des moyens d'application d'une deuxième fonction sur un deuxième ensemble comprenant le secret et la valeur aléatoire ; - des moyens de comparaison des première et deuxième valeurs chiffrées ; et - des moyens d'authentification du terminal serveur si la première et la deuxième valeurs chiffrées sont concordantes.
L'invention a encore pour objet un programme d'ordinateur comprenant des instructions de code, qui lorsque ce programme est exécuté sur un terminal serveur, permettent la mise en oeuvre des étapes du procédé d'authentification consistant à : - générer au moins une valeur aléatoire ; - calculer une première valeur chiffrée en appliquant une deuxième fonction sur un deuxième ensemble comprenant un secret partagé avec un terminal client et la valeur aléatoire ; - concaténer la valeur aléatoire et la première valeur chiffrée pour former un défi ; - transmettre le défi vers le terminal client ; - recevoir une première réponse au défi depuis le terminal client ; - calculer une deuxième réponse au défi par l'application d'une première fonction sur un premier ensemble comprenant un secret partagé avec le terminal client et le défi ; - comparer les première et deuxième réponses ; - authentifier le terminal client si la première et la deuxième réponses sont concordantes. Enfin l'invention a pour objet un programme d'ordinateur comprenant des instructions de code, qui lorsque ce programme est exécuté sur un terminal client, permettent la mise en oeuvre des étapes du procédé d'authentification consistant à: -recevoir un défi depuis un terminal serveur ; - extraire une valeur aléatoire et une première valeur chiffrée à partir du défi ; - calculer une deuxième valeur chiffrée en appliquant une deuxième fonction sur un deuxième ensemble comprenant un secret partagé avec le terminal serveur et la valeur aléatoire ; - comparer la première et deuxième valeurs chiffrées ; - authentifier le terminal serveur si la première et la deuxième valeurs chiffrées sont concordantes; - calculer une première réponse au défi en appliquant une première fonction sur un premier ensemble comprenant le secret et le défi ;et - transmettre la première réponse vers le terminal serveur. Ainsi l'invention permet de pallier les inconvénients des procédés d'authentification à sens unique largement mis en oeuvre dans les réseaux modernes et des procédés d'authentification mutuelle non compatibles avec les mises en oeuvre existantes dans ces réseaux. La solution proposée par l'invention permet d'assurer une authentification mutuelle renforcée entre deux terminaux complètement compatible avec la majorité des protocoles de sécurité développés qui utilisent des processus de type défi/réponse. On va maintenant décrire des modes de réalisation de l'invention de façon plus précise mais non limitative en regard des dessins annexés, sur lesquels : - la figure 1 est un schéma synoptique illustrant la structure et le fonctionnement d'un système d'authentification à sens unique de l'état de la technique ; - la figure 2 est un schéma synoptique illustrant la structure et le fonctionnement d'un système d'authentification mutuelle de l'état de la technique ; - la figure 3 est un schéma synoptique illustrant la structure et le fonctionnement du système d'authentification mutuelle selon l'invention ; - la figure 4 est un schéma synoptique illustrant la structure d'un système d'authentification selon un premier mode de réalisation de l'invention ; - la figure 5 est un schéma synoptique illustrant le fonctionnement du procédé d'authentification selon le premier mode de réalisation de l'invention ; - la figure 6 est un schéma synoptique illustrant la structure et le fonctionnement du système d'authentification à sens unique de l'état de la technique dans un réseau GSM ; - la figure 7 est un schéma synoptique illustrant la structure et le fonctionnement du système d'authentification mutuelle selon l'invention appliqué à un réseau GSM ; et - la figure 8 est un schéma synoptique illustrant la compatibilité du procédé d'authentification selon l'invention avec le procédé d'authentification de l'état de la technique dans le réseau GSM. La figure 1 illustre un cas générique d'authentification à sens unique entre un terminal client 2 et un terminal serveur 4 raccordés à un réseau de transmission d'informations. Il convient de noter que dans la suite de la description, les termes client et terminal client ainsi que les termes serveur et terminal serveur ont la même signification. Le terminal client 2 et le terminal serveur 4 se partagent un secret 6 identifié par un identificateur. A titre d'exemple, le secret 6 décrit un mot de passe ou une clé partagée ou encore un ticket, etc. Le terminal client 2 initialise la session d'authentification de l'état de la technique en transmettant une requête 8 de connexion vers le terminal serveur 4 à travers le réseau.
Le terminal serveur 4 répond à la requête 8 en transmettant un défi 10 qu'il a préalablement généré de manière aléatoire vers le terminal client 2 à travers le réseau. Le terminal client 2 applique une fonction 12 sur le défi 10 et le secret 6. La fonction 12 est à titre d'exemple une fonction mathématique ou un algorithme cryptographique. Le client 2 obtient une réponse 14 suite à l'application de la fonction 12 sur le défi 10 et le secret 6 qu'il transmet à travers le réseau au serveur 4 pour montrer qu'il connaît bien le secret 6 partagé.
De son côté, le serveur 4 calcule une réponse 16 au défi 10 en utilisant la même fonction 12 appliquée au secret partagé 6 et au défi 10. Le serveur 4 compare en 18 la réponse 14 transmise par le client 2 et la réponse 16 qu'il a calculée. Si les réponses 14 et 16 sont concordantes, le serveur 4 authentifie en 20 le client 2. Si les réponses 14 et 16 sont non concordantes, le serveur 4 n'authentifie pas en 22 le client 2. Ce mode d'authentification à sens unique décrit en référence à la figure 1 est mis en oeuvre par plusieurs protocoles normalisés par le comité IETF, notamment CHAP et EAP-MD5. Malheureusement, ce procédé ne permet d'authentifier que le client 2 ce qui le rend vulnérable à un très grand nombre d'attaques, à savoir l'attaque de texte clair ( plaintext attack ), l'attaque de rejeu, l'attaque de l'homme au milieu, l'attaque de déni de service, l'attaque d'usurpation d'adresse et l'attaque d'usurpation d'identité. Afin de remédier à ce problème de vulnérabilité du procédé d'authentification à sens unique, le Comite IETF a étendu certains des protocoles précédemment cités pour assurer une authentification mutuelle. A titre d'exemple, l'IETF RFC2759 propose une extension du protocole CHAP, nommée MS-CHAP- v2, pour assurer une authentification mutuelle. Cette extension est décrite en référence à la figure 2. Selon le procédé d'authentification mutuelle de l'état de la technique MS-CHAP-v2, le serveur 4 authentifie le client 2 avec lequel il partage le secret 6 de manière similaire à celle du procédé décrit dans la figure 1 en envoyant le défi 10 généré de manière aléatoire au client 2. Le client 2 applique la fonction 12 au défi 10 et au secret 6 et obtient une réponse 14. De plus, selon le procédé décrit dans la figure 2, le client 2 génère de manière aléatoire un deuxième défi 24 qu'il concatène en 25 avec la réponse 14, dans une requête 26 qu'il transmet vers le serveur 4. Le serveur 4 extrait en 27 de la requête 26 la réponse 14 du client 2 au défi 10 et le deuxième défi 24. Le serveur 4 authentifie en 20 ou n'authentifie pas en 22, le client 2 de la même manière que dans le procédé de la figure 1 en comparant en 18 la réponse 14 du client 2 à la réponse 16 qu'il a lui-même calculée. Ensuite, le serveur 4 applique une deuxième fonction 28 au deuxième défi 24 et au secret 6. La deuxième fonction 28 est à titre d'exemple une fonction mathématique ou un algorithme cryptographique. Le serveur 4 obtient une réponse 30 suite à l'application de la deuxième fonction 28 sur le deuxième défi 24 et le secret 6 qu'il transmet à travers le réseau au client 2 pour montrer qu'il connaît bien le secret partagé. De son côté, le client 2 calcule une réponse 32 au deuxième défi 24 en utilisant la même deuxième fonction 28 appliquée au secret partagé 6 et au deuxième défi 24.
Le client 2 compare en 34 la réponse 30 transmise par le serveur 4 et la réponse 32 qu'il a calculée. Si les réponses 30 et 32 sont concordantes, le client 2 authentifie le serveur 4 en 36. Si les réponses 30 et 32 sont non concordantes, le client 2 n'authentifie pas le serveur 4 en 38. Le procédé décrit dans la figure 2 concernant l'extension MS-CHAP-v2 assure bien une authentification mutuelle entre le client 2 et le serveur 4. Cependant, ce procédé n'est pas compatible avec le procédé d'authentification à sens unique de l'état de la technique décrit ci-dessus en référence à la figure 1.
En effet, l'extension MS-CHAP-v2 est un protocole en soi qui n'assure pas d'interopérabilité ni de compatibilité avec les protocoles de sécurité à sens unique mis en oeuvre dans les réseaux modernes tel CHAP1 ou HTTP Digest. Cette extension ne peut par conséquent pas être mise en oeuvre de manière transparente avec de tels protocoles. Cette compatibilité et ce manque d'interopérabilité sont essentiellement dus au fait que le client 2 doit avoir la capacité de générer un défi 24 différent de celui généré par le serveur 4 et de le transmettre au serveur 4 pour pouvoir authentifier ce dernier ce qui signifie l'introduction d'un deuxième mécanisme de défi-réponse. Ainsi le procédé de la figure 2 est difficile à mettre en oeuvre sur les terminaux clients existants puisqu'ils n'ont pas cette capacité. L'invention permet de résoudre ce problème en proposant une extension du procédé d'authentification à sens unique de la figure 1 permettant une authentification mutuelle des terminaux client et serveur sans ajouter de nouveaux champs dans ces protocoles comme c'est le cas avec MS-CHAP-v2 qui ajoute un deuxième mécanisme de défi/réponse. La structure et le fonctionnement d'un système d'authentification mutuelle selon l'invention sont décrits dans la suite de la description en référence aux figures 3 à 8. Le procédé selon l'invention permet ainsi une authentification mutuelle entre le terminal client 2 et le terminal serveur 4 raccordés à un réseau de transmissions d'informations.
Il convient de noter que le terme terminal a un sens très large dans le cadre de l'invention. En effet, il peut désigner un ordinateur ou un terminal de communication mobile tel qu'un téléphone portable ou un assistant personnel ou encore un appareil informatique de type carte à puce ou porte USB ou carte MMC. Le terme réseau a également un sens très large dans le cadre de l'invention. Il peut désigner un réseau domestique basé sur des modems ADSL et des points d'accès wi-fi ou un réseau public muni de stations de base ou de points d'accès sans fil ou encore un réseau d'entreprise ou d'administration utilisant des infrastructures de type LAN, PLAN, WLAN ou MAN. Comme dans le procédé d'authentification à sens unique de l'état de la technique décrit en référence à la figure 1, le client 2 et le serveur 4 partagent le secret 6. Le client 2 demande l'accès à une application ou à un service fourni par le serveur 4 en transmettant la requête 8.
Par ailleurs, le procédé d'authentification selon l'invention est également basé sur un mécanisme de défi/réponse. Cependant, contrairement aux procédés de l'état de la technique décrits en référence aux figures 1 et 2, le défi 10 n'est pas une valeur générée de manière aléatoire.
L'invention définit en effet une sémantique et une structuration du défi 10 grâce à une nouvelle construction du défi 10. Selon cette construction, ainsi que l'illustre la figure 3, le serveur 4 génère une valeur aléatoire 40. Il applique ensuite une fonction 42 à la valeur aléatoire 40 au secret 6 partagé avec le client 2 ainsi qu'à d'autres paramètres 44 détaillés ci-dessous pour obtenir une première valeur chiffrée 46. La fonction 42 est une fonction mathématique ou un algorithme cryptographique pouvant désigner une fonction de déduction du clé KDF ( Key Derivation Function ) ou une fonction pseudo-aléatoire PRF ( Pseudo-Random Function ) ou une fonction de hachage MD5 ( Message Digest ) ou une fonction de hachage SHA ( Secure Nash Algorithm ) ou une procédure de code d'authentification MAC ( Message Authentication Code ) ou HMAC ( Key-Hashing Message Authentication Code ) ou un algorithme de chiffrement symétrique de type RC4 ou DES ou 3DES ou AES, etc ou encore un algorithme d'authentification A3. La fonction 42 peut également prendre la forme d'une combinaison de deux ou plusieurs parmi les formes citées. Le terme autres paramètres 44 désigne un type quelconque de paramètres connus des terminaux 2 et 4. A titre d'exemples, ces autres paramètres 44 peuvent désigner des numéros de séquence, la date et l'heure courante du système, des valeurs aléatoires, une partie des entêtes et du contenu des messages échangés entre les terminaux 2 et 4, la fonction 40 utilisée, etc. Ces autres paramètres 44 sont optionnels. En effet, selon un mode de réalisation de l'invention, le serveur 4 applique la fonction 42 uniquement sur le secret 6 et la valeur aléatoire 40. Néanmoins, il est préférable d'incorporer les autres paramètres 44 dans le calcul de la première valeur chiffrée 46 car leur utilisation permet de renforcer l'intégrité des messages échangés entre le client 2 et le serveur 4. Une fois qu'il a obtenu la première valeur chiffrée 46, le serveur 4 concatène cette valeur avec la valeur aléatoire 40 et, selon un mode de réalisation, avec les autres paramètres 44 pour former le défi 10 qu'il transmet au client 2. A la réception du défi 10, deux cas se présentent : - le premier cas (non représenté sur la figure 3) est le cas selon lequel le client 2 ne supporte pas l'extension définie par la présente invention. Dans ce cas le procédé continue comme le procédé d'authentification à sens unique de la figure 1 à savoir qu'il y a uniquement authentification du terminal client 2 par le terminal serveur 4 selon le mécanisme décrit en référence à la figure 1. Dans ce cas, le terminal serveur 4 n'est pas authentifié par le terminal client 2 ; - le deuxième cas (représenté sur la figure 3) est le cas selon lequel le client 2 supporte l'extension définie par la présente invention. Dans ce cas, le client 2 extrait à partir du défi 10 la valeur aléatoire 40, les autres paramètres 44 et la première valeur chiffrée 46. Le terminal client 2 applique ensuite la fonction 42 sur le secret partagé 6, la valeur aléatoire 40 et les autres paramètres 44 pour obtenir en résultat une deuxième valeur chiffrée 48. Le terminal client compare en 50 la première valeur chiffrée 46 transmise par le serveur 4 et la deuxième valeur chiffrée 48 qu'il a calculée lui-même. Si les deux valeurs chiffrées 46 et 48 sont concordantes, ceci prouve que le serveur 4 connaît bien le secret 6. Par conséquent, le client 2 authentifie en 52 le serveur 4. Si les deux valeurs chiffrées 46 et 48 sont non concordantes, le client 2 n'authentifie pas en 54 le serveur 4. Ensuite, le client 2 calcule la première réponse 14 au défi 10 généré par le serveur 4 en appliquant la fonction 12, citée en référence aux figures 1 et 2 de l'état de la technique, sur un ensemble de valeurs définies par le secret 6 , le défi 10 et les autres paramètres 44. Selon un mode de réalisation de l'invention (partie en traits discontinus de la figure 3), le client 2 calcule la première réponse 14 au défi 10 en concaténant en 56 le défi 10, le résultat de l'application de la fonction 12 sur l'ensemble de valeurs suscité et les autres paramètres 44. Le client 2 transmet ensuite la première réponse 14 au serveur 4.
Le serveur 4 compare alors la première réponse 14 à la réponse 16 calculée de son côté en appliquant la fonction 12 sur le secret 6, le défi 10 et les autres paramètres 44. Enfin, de la même manière que dans les procédés de l'état de la technique des figures 1 et 2, si les réponses 14 et 16 sont concordantes, le client 2 est authentifié en 20 sinon le client 2 n'est pas authentifié en 22. Le procédé d'authentification mutuelle selon l'invention ayant été décrit en référence à la figure 3, la suite de la description concerne deux modes de réalisation mettant en oeuvre ce procédé en référence aux figures 4 à 8.
Les figures 4 et 5 illustrent un mode de réalisation dans lequel le réseau de transmission d'informations est un réseau Internet mettant en oeuvre une infrastructure RADIUS ( Remote Authentication Dial ù In User Service ) pour assurer l'authentification et gérer l'accès aux services du réseau. Selon ce mode de réalisation, les données échangées entre les terminaux raccordés au réseau sont encapsulés dans des paquets EAP. Il convient à ce propos de noter que le comité IETF a ratifié le protocole EAP ( Extensible Authentication Protocol ) pour permettre le transport de multiples scenarii d'authentification dont certains sont définis par les spécifications EAP-TLS ( Transport Layer Security , RFC 2246) et EAP-SIM ( Subscriber Identity Module , RFC 4186). Les entités EAP s'authentifient entre elles en utilisant une méthode d'authentification EAP. Cette dernière est une couche au-dessus de la couche EAP et elle définit des mécanismes de sécurité et de distribution de clés. La méthode d'authentification utilisée classiquement dans cette architecture est MD5-Challenge, décrite par la norme IETF RFC 3748 et connue aussi comme EAPMD5. Cette méthode telle qu'elle est actuellement définie n'offre pas une authentification mutuelle ; uniquement le terminal client souhaitant se connecter au réseau est authentifié. Un procédé de mise en oeuvre pour authentifier un serveur d'authentification RADIUS auprès d'un client EAP et vice et versa est décrit en référence aux figures 4 et 5. Ce procédé autorise la gestion de plusieurs sessions simultanées et rend possible l'utilisation du mécanisme de structuration et de sémantisation du défi de l'invention dans des réseaux supportant une grande population d'utilisateurs sans diminution des performances. Dans l'infrastructure RADIUS d'un réseau Internet 58 illustrée sur la figure 4, une pluralité de clients 60, 62 et 64 sont contrôlés par des serveurs d'administration de réseau NAS ( Network Administration Server ) 66, 68 et 70 respectivement situés, à titre d'exemple, dans des points d'accès de ce réseau 58. Les serveurs NAS sont associés, par l'intermédiaire du réseau 58, à un unique serveur d'authentification 72 sur lequel est installé un logiciel d'authentification exécuté par un système informatique muni d'un système d'exploitation. Actuellement, de nombreux logiciels libres tels que OPEN RADIUS ou FREE RADIUS offrent des services d'authentification RADIUS. L'intégration des programmes d'ordinateurs selon l'invention dans ces logiciels permettra de réaliser l'authentification mutuelle entre le serveur 72 et chacun des clients 60, 62 ou 64. La figure 5 illustre l'échange d'informations sous forme de paquets EAP entre, à titre d'exemple, le client 60 et le serveur RADIUS 72 à travers le serveur NAS 66. Ainsi, une session d'authentification 74 mettant en oeuvre le procédé de l'invention est illustrée sur la figure 5. En 76, le serveur NAS 66 indique au client 60 l'occurrence de la nouvelle session d'authentification 74 en produisant un paquet EAP-Identity.Request . Le client 60 insère en 78 son identité dans un paquet EAP-Identity. Response . Le serveur NAS 66 transmet en 80 ce paquet au serveur RADIUS 72 dans un paquet RADIUS Access-Request . Le serveur RADIUS 72 génère conformément au procédé de l'invention décrit en référence à la figure 3, un défi 10 de type MD5 ( MD5-Challenge Request ou EAP-MD5 Request ) et l'envoie en 82 au serveur NAS dans un paquet RADIUS Access-Challenge . A la réception, le serveur NAS 66 renvoie en 84 au client 60 le MD5- Challenge Request dans un paquet EAP.Request . Le client 60 récupère le type de la méthode d'authentification EAP à savoir MD5-Challenge . Ensuite, le client 60 analyse le défi 10 MD5 conformément au procédé de l'invention pour authentifier le serveur RADIUS 72. Le client 60 construit sa réponse conformément au procédé selon l'invention, puis envoie en 86 la réponse ( MD5-Challenge Response ou EAP-MD5 Response ) au serveur NAS 66 dans un paquet EAP.Response . Le serveur NAS 66 encapsule la réponse émise par le client 60 dans un paquet RADIUS Access- Request avant de l'envoyer en 88 au serveur RADIUS 72. Le serveur RADIUS 72 vérifie la réponse du client 60 conformément au procédé de l'invention. En cas de succès de cette vérification, le serveur RADIUS 72 encapsule l'indication du succès de l'authentification du client 60 dans un paquet RADIUS Access-Accept et envoie en 90 le paquet au serveur NAS 66. A la réception, le serveur NAS 66 encapsule l'indication de succès de l'authentification dans un paquet EAP-Success et l'envoie en 92 au client 60. Ainsi, la solution selon l'invention permet, de manière transparente, la réalisation d'une authentification mutuelle entre un terminal client et un terminal serveur raccordés à un réseau Internet mettant en oeuvre une architecture RADIUS. Dans la suite de la description, une mise en oeuvre d'un mode de réalisation de l'invention dans un réseau GSM est décrite en référence aux figures 6 à 8.
Selon le mode de réalisation décrit dans les figures 6 à 8, le terminal client est une carte SIM 100 et le terminal serveur comprend un registre des abonnés nominaux HLR ( Home Location Register ) et un Centre d'Authentification AuC dont l'ensemble est désigné par serveur HLR/AuC 102. Les échanges entre la carte SIM 100 et le serveur HLR/AuC 102 sont effectués à travers une station de base 104. La figure 6 illustre le procédé d'authentification à sens unique mis en oeuvre actuellement dans les réseaux GSM. Ce procédé est similaire à celui décrit dans la figure 1. La carte SIM 100 et le serveur HLR/AuC 102 se partagent une clé Ki 106.
Durant la phase d'authentification, la carte SIM 100 envoie son identifiant IMSI ( International Mobile Subscriber Identity ) au serveur HLR/AuC 102 via la station de base 104. Le serveur HLR/AuC 102 génère un nombre aléatoire sur 128 bits nommé RAND et l'envoie en 108 à la carte SIM 100.
La carte SIM 100 répond en 110 avec une valeur nommée SRES générée en appliquant l'algorithme A3 sur le nombre aléatoire RAND et la clé partagée Ki 106. Le serveur HLR/AuC 102 effectue le même calcul et compare en 111 la valeur SRES à la valeur du résultat de son calcul. Si les deux valeurs concordent, le serveur HLR/AuC 102 authentifie en 112 la carte SIM 100, sinon il ne l'authentifie pas en 114. Les figures 7 et 8 illustrent la mise en oeuvre du procédé de l'invention pour étendre le procédé d'authentification à sens unique dans un réseau GSM décrit en référence à la figure 6. Selon le mode de réalisation des figures 7 et 8, le serveur HLR/AuC 102 construit le nombre RAND selon les étapes suivantes : -génération d'une valeur aléatoire 116 ; - application de l'algorithme A3 à l'ensemble constitué par l'identifiant IMSI de la carte SIM 100, une clé privée PK 118 fonction de la clé partagée Ki 106 et la valeur aléatoire 116 ; et - formation du RAND par concaténation en 120 de la valeur aléatoire 116 et du résultat de l'application de l'algorithme A3. Afin d'assurer une compatibilité et une interopérabilité avec le procédé de la figure 6, il est nécessaire que le nombre RAND reste un nombre aléatoire de 128 bits. Ainsi, selon un mode de réalisation, la valeur aléatoire 116 est un nombre de 54 bits. Le cas selon lequel la carte SIM met en oeuvre l'extension selon l'invention est illustré sur la figure 7.
Dans ce cas, à la réception du nombre RAND, la carte SIM 100 extrait en 122 de ce nombre la valeur aléatoire 116 et le résultat de l'application de l'algorithme A3 calculé par le serveur HLR/AuC 102 qu'elle compare en 124 au résultat du calcul qu'elle a effectué elle-même en appliquant l'algorithme A3 à la clé privée PK 118, à l'identifiant IMSI, et à la valeur aléatoire 116. Si les deux résultats concordent, le serveur HLR/AuC 102 est authentifié en 126, sinon il n'est pas authentifié en 128.
Par ailleurs, la carte SIM 100 applique l'algorithme A3 sur l'identifiant IMSI, la clé privée PK 118 et le nombre RAND pour obtenir une valeur chiffrée 130 qu'elle envoie en 110 dans la réponse SRES au serveur HLR/AuC 102. Le serveur HLR/AuC 102 effectue le même calcul et compare les deux résultats pour authentifier la carte SIM 100 comme décrit dans la figure 6. Le cas selon lequel la carte SIM 100 ne met pas en oeuvre l'extension selon l'invention est décrit en référence à la figure 8. Dans ce cas, la carte SIM 100 ignore les opérations 122 à 130 et n'effectue pas d'authentification du serveur HLR/AuC 102.
Ainsi, l'invention permet d'avoir une solution d'authentification mutuelle entre la carte SIM 100 et le serveur HLR/AuC 102 compatible et interopérable avec le procédé d'authentification à sens unique mis en oeuvre actuellement dans les réseaux GSM. Selon un mode de réalisation de l'invention, une manière d'assurer cette interopérabilité de l'invention avec les protocoles d'authentification de l'état de la technique est de prévoir que le serveur 4 ajoute une caractéristique au défi 10 indiquant qu'il est un défi structuré de la manière prévue dans l'invention. Si le client 2 met en oeuvre l'extension, il extrait la valeur du défi de laquelle il a auparavant enlevé la caractéristique du type de défi et applique les étapes du procédé de l'invention décrites en référence à la figure 3 (ou figure 7 dans le cas du réseau GSM). Si le client 2 ne met pas en oeuvre l'extension, il effectue les étapes du procédé d'authentification de l'état de la technique (figures 1, 6 et 8) en appliquant la fonction 12 (ou l'algorithme A3) au défi en entier y compris la caractéristique du type du défi. Un procédé selon l'invention peut donc être mis en oeuvre dans n'importe quel système d'authentification compatible d'un terminal serveur ou client sous la forme de programmes d'ordinateur correspondants comportant des instructions de code qui, lorsque ces programmes sont exécutés, permettent la mise en oeuvre des étapes du procédé. Bien entendu, d'autres modes de réalisation peuvent encore être envisagés.
Claims (17)
- REVENDICATIONS1.- Procédé d'authentification entre un terminal client (2;60;100) et un terminal serveur (4 ;72 ;102) raccordés à un réseau (58) de transmission d'informations, lesdits terminaux se partageant un secret (6;106;118) et ledit procédé comprenant : - une étape de génération d'un défi (10) par le terminal serveur (4 ;72 ;102) ; - une étape de transmission du défi (10) du terminal serveur (4 ;72 ;102) vers le terminal client (2;60;100) à travers le réseau (58) ; - une étape de calcul par le terminal client (2;60;100) d'une première réponse (14) au défi (10), ledit calcul comprenant l'application d'une première fonction (12) sur un premier ensemble comprenant le secret (6;106;118) et le défi (10) ; - une étape de transmission de la première réponse (14) du terminal client (2;60;100) vers le terminal serveur (4 ;72 ;102) à travers le réseau (58) ; - une étape de calcul par le terminal serveur (4 ;72 ;102) d'une deuxième réponse (16) au défi (10) par l'application de la première fonction (12) sur le premier ensemble comprenant le secret (6;106;118) et le défi (10) ; - une étape de comparaison par le terminal serveur (4 ;72 ;102) des première (14) et deuxième (16) réponses ; et - une étape d'authentification du terminal client (2;60;100) par le terminal serveur (4 ;72 ;102) si la première (14) et la deuxième (16) réponses sont concordantes, caractérisé en ce que : - l'étape de génération du défi (10) par le terminal serveur (4 ;72 ;102) comprend - une étape de génération par le terminal serveur (4 ;72 ;102) d'au moins une valeur aléatoire (40;116) ; - une étape de calcul par le terminal serveur (4 ;72 ;102) d'une première valeur chiffrée (46;120) par l'application d'une deuxième fonction (42) sur un deuxième ensemble comprenant le secret (6;106;118) et la valeur aléatoire (40;116) ; et- une étape de concaténation par le terminal serveur (4 ;72 ;102) de la valeur aléatoire (40;116) et de la première valeur chiffrée (46;120) pour former le défi (10) ; et en ce que le procédé comprend: - une étape d'extraction par le terminal client (2;60;100) de la valeur aléatoire (40;116) et de la première valeur chiffrée (46;120) à partir du défi (10) ; - une étape de calcul par le terminal client (2;60;100) d'une deuxième valeur chiffrée (48) par l'application de la deuxième fonction (42) sur le deuxième ensemble comprenant le secret (6;106;118) et la valeur aléatoire (40;116) ; - une étape de comparaison par le terminal client (2;60;100) des première (46 ;120) et deuxième (48) valeurs chiffrées ; et - une étape d'authentification du terminal serveur (4 ;72 ;102) par le terminal client (2;60;100) si la première (46 ;120) et la deuxième (48) valeurs chiffrées sont concordantes.
- 2.- Procédé d'authentification selon la revendication 1, caractérisé en ce que l'étape de calcul par le terminal client (2;60;100) d'une première réponse (14) au défi (10) comprend une étape de concaténation par le terminal client (2;60;100) du défi (10) et du résultat de l'application de la première fonction (12) sur le premier ensemble comprenant le secret (6;106;118) et le défi (10).
- 3.- Procédé d'authentification selon la revendication 1 ou 2, caractérisé en ce que la première(12) et la deuxième (42) fonctions sont choisies dans un groupe de fonctions comprenant : - une fonction de déduction de clé KDF ; - une fonction pseudo-aléatoire PRF ; - une fonction de hachage MD5 ; -une fonction de hachage SHA ; - une procédure de code d'authentification MAC ; - une procédure de code d'authentification HMAC ; - un algorithme de chiffrement symétrique de type RC4 ou DES ou 3DES ou AES ; et - un algorithme d'authentification A3.
- 4.- Procédé d'authentification selon l'une quelconque des revendications 1 à 3, caractérisé en ce que le premier et le deuxième ensembles comprennent en outre une pluralité de paramètres (44) connus des terminaux client et serveur.
- 5.- Procédé d'authentification selon la revendication 4, caractérisé en ce que l'étape de génération du défi (10) par le terminal serveur (4 ;72 ;102) comprend une étape de concaténation par ledit terminal serveur (4 ;72 ;102) de la valeur aléatoire (40;116), de la première valeur chiffrée (46;120) et de la pluralité de paramètres (44).
- 6.- Procédé d'authentification selon la revendication 4 ou 5, caractérisé en ce que l'étape de calcul par le terminal client (2;60;100) d'une première réponse (14) au défi (10) comprend une étape de concaténation par le terminal client (2;60;100) du défi (10), du résultat de l'application de la première fonction (12) sur le premier ensemble comprenant le secret (6;106;118) et le défi (10) et de la pluralité de paramètres (44).
- 7.- Procédé d'authentification selon l'une quelconque des revendications 1 à 6, caractérisé en ce que le réseau de transmission d'informations est un réseau Internet (58) mettant en oeuvre une infrastructure RADIUS.
- 8.- Procédé d'authentification selon la revendication 7, caractérisé en ce que les informations échangées entre les terminaux client (60) et serveur (72) sont encapsulées dans des paquets EAP.
- 9.- Procédé d'authentification selon la revendication 8, caractérisé en ce que les paquets EAP sont échangés entre le terminal client (60) et le terminal serveur (72) par l'intermédiaire d'un point d'accès.
- 10- Procédé d'authentification selon la revendication 9, caractérisé en ce que le point d'accès est un serveur d'administration de réseau NAS (66).
- 11.- Procédé d'authentification selon l'une quelconque des revendications 1 à 6, caractérisé en ce que le réseau de transmission d'informations est un réseau GSM.
- 12.- Procédé d'authentification selon la revendication 11, caractérisé en ce que le terminal client (100) est une carte SIM et en ce que le terminal serveur (102) comprend un registre des abonnés nominaux HLR et un centre d'authentification AuC.
- 13.- Système d'authentification comprenant un terminal client (2;60;100) et un terminal serveur (4 ;72 ;102) raccordés à un réseau (58) de transmission d'informations, lesdits terminaux se partageant un secret (6;106;118) et ledit système comprenant : - des moyens de génération d'un défi (10) par le terminal serveur (4 ;72 ;102) ; - des moyens de transmission du défi (10) du terminal serveur (4 ;72 ;102) vers le terminal client (2;60;100) à travers le réseau (58) ; - des moyens de calcul par le terminal client (2;60;100) d'une première réponse (14) au défi (10), lesdits moyens de calcul comprenant des moyens d'application d'une première fonction (12) sur un premier ensemble comprenant le secret (6;106;118) et le défi (10) ; - des moyens de transmission de la première réponse (14) du terminal client (2;60;100) vers le terminal serveur (4 ; 72 ;102) à travers le réseau (58) ; - des moyens de calcul par le terminal serveur (4 ;72 ;102) d'une deuxième réponse (16) au défi (10) comprenant des moyens d'application de la première fonction (12) sur le premier ensemble comprenant le secret (6;106;118) et le défi (10) ; - des moyens de comparaison par le terminal serveur (4 ;72 ;102) des première (14) et deuxième (16) réponses ; et - des moyens d'authentification du terminal client (2;60;100) par le terminal serveur (4 ;72 ;102) si la première (14) et la deuxième (16) réponses sont concordante , des moyens de calcul par le terminal serveur (4 ;72 ;102) d'une première valeur chiffrée (46;120) comprenant des moyens d'application d'une deuxième fonction (42) sur un deuxième ensemble comprenant le secret (6;106;118) et la valeur aléatoire (40;116) ; et caractérisé en ce que : - les moyens de génération du défi (10) par le terminal serveur (4 ;72 ;102) comprennent: des moyens de génération par le terminal serveur (4 ;72 ;102) d'au moins une valeur aléatoire (40;116) ;- des moyens de concaténation par le terminal serveur (4 ;72 ;102) de la valeur aléatoire (40;116) et de la première valeur chiffrée (46;120) pour former le défi (10) ; et en ce que le système comprend : - des moyens d'extraction par le terminal client (2;60;100) de la valeur aléatoire (40;116) et de la première valeur chiffrée (46;120) à partir du défi (10) ; - des moyens de calcul par le terminal client (2;60;100) d'une deuxième valeur chiffrée (48) comprenant des moyens d'application de la deuxième fonction (42) sur le deuxième ensemble comprenant le secret (6;106;118) et la valeur aléatoire (40;116) ; - des moyens de comparaison par le terminal client (2;60;100) des première (46 ;120) et deuxième (48) valeurs chiffrées ; et - des moyens d'authentification du terminal serveur (4 ;72 ;102) par le terminal client (2;60;100) si la première (46 ;120) et la deuxième (48) valeurs chiffrées sont concordantes.
- 14.- Terminal serveur (4 ;72 ;102) raccordé à un réseau (58) de transmission d'informations, ledit terminal serveur (4 ;72 ;102) partageant un secret (6;106;118) 20 avec un terminal client (2;60;100) raccordé au dit réseau (58), et comprenant : - des moyens de génération d'un défi (10); - des moyens de transmission du défi (10) vers le terminal client (2;60;100) à travers le réseau (58) ; - des moyens de réception d'une première réponse (14) au défi (10) depuis 25 le terminal client (2;60;100); - des moyens de calcul d'une deuxième réponse (16) au défi (10) comprenant des moyens d'application d'une première fonction (12) sur un premier ensemble comprenant le secret (6;106;118) et le défi (10) ; -des moyens de comparaison des première (14) et deuxième (16) 30 réponses ; et - des moyens d'authentification du terminal client (2;60;100) si la première (14) et la deuxième (16) réponses sont concordantes, caractérisé en ce que : 10 15- les moyens de génération du défi (10) comprennent: - des moyens de génération d'au moins une valeur aléatoire (40;116) ; - des moyens de calcul d'une première valeur chiffrée (46;120) comprenant des moyens d'application d'une deuxième fonction (42) sur un deuxième ensemble comprenant le secret (6;106;118) et la valeur aléatoire (40;116) ; et - des moyens de concaténation de la valeur aléatoire (40;116) et de la première valeur chiffrée (46;120) pour former le défi (10).
- 15.- Terminal client (2;60;100) raccordé à un réseau (58) de transmission d'informations, ledit terminal client (2;60;100) partageant un secret (6;106;118) avec un terminal serveur (4 ;72 ;102) raccordé audit réseau (58) et comprenant : - des moyens de réception d'un défi (10) depuis le terminal serveur (4 ;72 ;102); - des moyens de calcul d'une première réponse (14) au défi (10), lesdits moyens de calcul comprenant des moyens d'application d'une première fonction (12) sur un premier ensemble comprenant le secret (6;106;118) et le défi (10) ; - des moyens de transmission de la première réponse (14) vers le terminal serveur (4 ;72 ;102) à travers le réseau (58), caractérisé en ce qu'il comprend : des moyens d'extraction d'une valeur aléatoire (40;116) et d'une première valeur chiffrée (46;120) à partir du défi (10) ; - des moyens de calcul d'une deuxième valeur chiffrée (48) comprenant des moyens d'application d'une deuxième fonction (42) sur un deuxième ensemble comprenant le secret (6;106;118) et la valeur aléatoire (40;116) ; - des moyens de comparaison des première (46 ;120) et deuxième (48) valeurs chiffrées ; et - des moyens d'authentification du terminal serveur (4 ;72 ;102) si la première (46 ;120) et la deuxième (48) valeurs chiffrées sont concordantes. 30
- 16.- Programme d'ordinateur comprenant des instructions de code, qui lorsque ce programme est exécuté sur un terminal serveur (4 ;72 ;102), permettent la mise en oeuvre des étapes du procédé d'authentification consistant à : - générer au moins une valeur aléatoire (40;116) ; -calculer une première valeur chiffrée (46;120) en appliquant une deuxième fonction (42) sur un deuxième ensemble comprenant un secret (6;106;118) partagé avec un terminal client (2;60;100) et la valeur aléatoire (40;116) ; - concaténer la valeur aléatoire (40;116) et la première valeur chiffrée (46;120) pour former un défi (10) ; - transmettre le défi (10) vers le terminal client (2;60;100) ; - recevoir une première réponse (14) au défi (10) depuis le terminal client (2;60;100); - calculer une deuxième réponse (16) au défi (10) par l'application d'une première fonction (12) sur un premier ensemble comprenant un secret (6;106;118) partagé avec le terminal client (2;60;100) et le défi (10) ; - comparer les première (14) et deuxième (16) réponses ; - authentifier le terminal client (2;60;100) si la première (14) et la deuxième (16) réponses sont concordantes.
- 17. - Programme d'ordinateur comprenant des instructions de code, qui lorsque ce programme est exécuté sur un terminal client (2;60;100), permettent la mise en oeuvre des étapes du procédé d'authentification consistant à : - recevoir un défi (10) depuis un terminal serveur (4 ;72 ;102); - extraire une valeur aléatoire (40;116) et une première valeur chiffrée (46;120) à partir du défi (10) ; - calculer une deuxième valeur chiffrée (48) en appliquant une deuxième fonction (42) sur un deuxième ensemble comprenant un secret (6;106;118) partagé avec le terminal serveur (4 ;72 ;102) et la valeur aléatoire (40;116) ; - comparer la première (46 ;120) et deuxième (48) valeurs chiffrées ; - authentifier le terminal serveur (4 ;72 ;102) si la première (46 ;120) et la deuxième (48) valeurs chiffrées sont concordantes; - calculer une première réponse au défi (10) en appliquant une première fonction (12) sur un premier ensemble comprenant le secret (6;106;118) et le défi (10) ;et - transmettre la première réponse vers le terminal serveur (4 ;72 ;102).
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0851674A FR2928798B1 (fr) | 2008-03-14 | 2008-03-14 | Procede d'authentification, systeme d'authentification, terminal serveur, terminal client et programmes d'ordinateur correspondants |
EP09723375A EP2255488A2 (fr) | 2008-03-14 | 2009-03-10 | Procédé d'authentification, système d'authentification, terminal serveur, terminal client et programmes d'ordinateur correspondants |
US12/922,496 US20110246770A1 (en) | 2008-03-14 | 2009-03-10 | Authentication method, authentication system, server terminal, client terminal and computer programs therefor |
PCT/FR2009/050385 WO2009115755A2 (fr) | 2008-03-14 | 2009-03-10 | Procédé d'authentification, système d'authentification, terminal serveur, terminal client et programmes d'ordinateur correspondants |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0851674A FR2928798B1 (fr) | 2008-03-14 | 2008-03-14 | Procede d'authentification, systeme d'authentification, terminal serveur, terminal client et programmes d'ordinateur correspondants |
Publications (2)
Publication Number | Publication Date |
---|---|
FR2928798A1 true FR2928798A1 (fr) | 2009-09-18 |
FR2928798B1 FR2928798B1 (fr) | 2011-09-09 |
Family
ID=39627739
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR0851674A Expired - Fee Related FR2928798B1 (fr) | 2008-03-14 | 2008-03-14 | Procede d'authentification, systeme d'authentification, terminal serveur, terminal client et programmes d'ordinateur correspondants |
Country Status (4)
Country | Link |
---|---|
US (1) | US20110246770A1 (fr) |
EP (1) | EP2255488A2 (fr) |
FR (1) | FR2928798B1 (fr) |
WO (1) | WO2009115755A2 (fr) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2694500C (fr) * | 2010-02-24 | 2015-07-07 | Diversinet Corp. | Procede et systeme de communication securisee |
CN101908113B (zh) * | 2010-07-30 | 2012-09-26 | 深圳市江波龙电子有限公司 | 一种认证方法及认证系统 |
NO335081B1 (no) * | 2012-08-02 | 2014-09-08 | Cypod Tech As | Fremgangsmåte, system og anordning for smart tilgangskontroll for e-handelbetaling |
SE538279C2 (sv) | 2014-09-23 | 2016-04-19 | Kelisec Ab | Förfarande och system för att fastställa förekomst av |
SE539602C2 (en) | 2014-10-09 | 2017-10-17 | Kelisec Ab | Generating a symmetric encryption key |
SE539271C2 (en) * | 2014-10-09 | 2017-06-07 | Kelisec Ab | Mutual authentication |
SE542460C2 (en) | 2014-10-09 | 2020-05-12 | Kelisec Ab | Improved security through authenticaton tokens |
SE540133C2 (en) | 2014-10-09 | 2018-04-10 | Kelisec Ab | Improved system for establishing a secure communication channel |
SE538304C2 (sv) | 2014-10-09 | 2016-05-03 | Kelisec Ab | Improved installation of a terminal in a secure system |
CN106375988B (zh) * | 2015-07-23 | 2020-02-18 | 中国移动通信集团公司 | 获取手机号码的方法、装置、验证平台及终端设备 |
US10897363B2 (en) * | 2015-11-17 | 2021-01-19 | Cryptography Research, Inc. | Authenticating a secondary device based on encrypted tables |
CN112134881B (zh) * | 2020-09-22 | 2023-03-21 | 宏图智能物流股份有限公司 | 一种基于序列号的网络请求防篡改方法 |
CN112583584B (zh) * | 2020-11-30 | 2022-03-25 | 郑州信大捷安信息技术股份有限公司 | 一种基于随机数的服务监控系统及方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050010778A1 (en) * | 1998-07-10 | 2005-01-13 | Walmsley Simon Robert | Method for validating an authentication chip |
US20050132192A1 (en) * | 2003-12-11 | 2005-06-16 | International Business Machines Corporation | Efficient method for providing secure remote access |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6304969B1 (en) * | 1999-03-16 | 2001-10-16 | Webiv Networks, Inc. | Verification of server authorization to provide network resources |
US7131006B1 (en) * | 1999-11-15 | 2006-10-31 | Verizon Laboratories Inc. | Cryptographic techniques for a communications network |
US7010689B1 (en) * | 2000-08-21 | 2006-03-07 | International Business Machines Corporation | Secure data storage and retrieval in a client-server environment |
CA2456446C (fr) * | 2001-08-07 | 2010-03-30 | Tatara Systems, Inc. | Procede et appareil d'integration de fonctions de facturation et d'authentification dans des reseaux locaux et longue portee de transmission de donnees sans fil |
US7529933B2 (en) * | 2002-05-30 | 2009-05-05 | Microsoft Corporation | TLS tunneling |
US7069438B2 (en) * | 2002-08-19 | 2006-06-27 | Sowl Associates, Inc. | Establishing authenticated network connections |
US7581100B2 (en) * | 2003-09-02 | 2009-08-25 | Authernative, Inc. | Key generation method for communication session encryption and authentication system |
US9197746B2 (en) * | 2008-02-05 | 2015-11-24 | Avaya Inc. | System, method and apparatus for authenticating calls |
-
2008
- 2008-03-14 FR FR0851674A patent/FR2928798B1/fr not_active Expired - Fee Related
-
2009
- 2009-03-10 US US12/922,496 patent/US20110246770A1/en not_active Abandoned
- 2009-03-10 EP EP09723375A patent/EP2255488A2/fr not_active Withdrawn
- 2009-03-10 WO PCT/FR2009/050385 patent/WO2009115755A2/fr active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050010778A1 (en) * | 1998-07-10 | 2005-01-13 | Walmsley Simon Robert | Method for validating an authentication chip |
US20050132192A1 (en) * | 2003-12-11 | 2005-06-16 | International Business Machines Corporation | Efficient method for providing secure remote access |
Non-Patent Citations (1)
Title |
---|
MENEZES, VANSTONE, OORSCHOT: "Handbook of Applied Cryptography", 1997, CRC PRESS LLC, USA, XP002489686 * |
Also Published As
Publication number | Publication date |
---|---|
WO2009115755A2 (fr) | 2009-09-24 |
WO2009115755A3 (fr) | 2009-11-12 |
EP2255488A2 (fr) | 2010-12-01 |
US20110246770A1 (en) | 2011-10-06 |
FR2928798B1 (fr) | 2011-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
FR2928798A1 (fr) | Procede d'authentification, systeme d'authentification, terminal serveur, terminal client et programmes d'ordinateur correspondants | |
EP1022922B1 (fr) | Procédé d'authentification, avec établissement d'un canal sécurise, entre un abonné et un fournisseur de services accessible via un opérateur de télécommunications | |
WO2007115982A2 (fr) | Procede de protection d'identite, dispositifs, et produit programme d'ordinateur correspondants | |
EP2484084B1 (fr) | Procédé et dispositifs de communications securisées contre les attaques par innondation et denis de service (dos) dans un réseau de télécommunications | |
WO2008145558A2 (fr) | Procede de securisation d'echange d'information, dispositif, et produit programme d'ordinateur correspondant | |
EP1157575B1 (fr) | Authentification dans un reseau de radiotelephonie | |
FR3044499A1 (fr) | Methode d'etablissement d'une communication securisee de bout en bout entre le terminal d'un utilisateur et un objet connecte | |
CN104735037B (zh) | 一种网络认证方法、装置及系统 | |
EP2294850B1 (fr) | Procede pour securiser des echanges entre un noeud demandeur et un noeud destinataire | |
EP2186252B1 (fr) | Procede de distribution de cles cryptographiques dans un reseau de communication | |
FR3004041A1 (fr) | Procede et dispositif d'etablissement de cles de session | |
FR3065605A1 (fr) | Systeme et procede de communications | |
FR3072238A1 (fr) | Dispositif et procede de transmission de donnees | |
EP2868130B1 (fr) | Mise en place d'une association de securite lors de l'attachement d'un terminal a un reseau d'acces | |
CN116017429A (zh) | 5g网络加密组网方法、系统、装置及存储介质 | |
WO2014154634A1 (fr) | Procede d'authentification mutuelle entre un element de securite d'un terminal de telecommunications et un element d'un reseau de telecommunications de type gsm | |
FR3111038A1 (fr) | Traitements cryptographiques pour chiffrer ou déchiffrer des données | |
EP1353476B1 (fr) | Procédé pour sécuriser une liaison entre un terminal de données et un réseau local informatique, et terminal de données pour la mise en oeuvre de ce procédé | |
FR2901084A1 (fr) | Une methode de protection de l'identite avec tls (transport layer security) ou avec une de ses versions | |
WO2012052434A1 (fr) | Procede d'optimisation du transfert de flux de donnees securises via un reseau autonomique | |
EP3041192A1 (fr) | Infrastructure d'authentification de téléphones ip d'un système toip propriétaire par un système eap-tls ouvert | |
Badra | Le transport et la sécurisation des échanges sur les réseaux sans fil | |
FR2901083A1 (fr) | Une methode de mise en place des reseaux prives virtuels et de control d'acces distant | |
Villain | New generation of network access controller: an SDN approach | |
FR2934101A1 (fr) | Procede, systeme, serveur et terminal d'authentification hybride |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AU | Other action affecting the ownership or exploitation of an industrial property right | ||
TQ | Partial transmission of property | ||
ST | Notification of lapse |
Effective date: 20121130 |