WO2009115755A2 - Procédé d'authentification, système d'authentification, terminal serveur, terminal client et programmes d'ordinateur correspondants - Google Patents

Procédé d'authentification, système d'authentification, terminal serveur, terminal client et programmes d'ordinateur correspondants Download PDF

Info

Publication number
WO2009115755A2
WO2009115755A2 PCT/FR2009/050385 FR2009050385W WO2009115755A2 WO 2009115755 A2 WO2009115755 A2 WO 2009115755A2 FR 2009050385 W FR2009050385 W FR 2009050385W WO 2009115755 A2 WO2009115755 A2 WO 2009115755A2
Authority
WO
WIPO (PCT)
Prior art keywords
challenge
server
terminal
client terminal
secret
Prior art date
Application number
PCT/FR2009/050385
Other languages
English (en)
Other versions
WO2009115755A3 (fr
Inventor
Mohamad Badra
Ahmed Serhrouchni
Thomas Guillet
Original Assignee
Centre National De La Recherche Scientifique (C.N.R.S)
Université Blaise Pascal
Groupe Des Ecoles Des Telecommunications
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Centre National De La Recherche Scientifique (C.N.R.S), Université Blaise Pascal, Groupe Des Ecoles Des Telecommunications filed Critical Centre National De La Recherche Scientifique (C.N.R.S)
Priority to US12/922,496 priority Critical patent/US20110246770A1/en
Priority to EP09723375A priority patent/EP2255488A2/fr
Publication of WO2009115755A2 publication Critical patent/WO2009115755A2/fr
Publication of WO2009115755A3 publication Critical patent/WO2009115755A3/fr

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3271Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0869Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/162Implementing security features at a particular protocol layer at the data link layer

Definitions

  • the present invention relates to a method of authentication between a client terminal and a server terminal connected to an information transmission network, said terminals sharing a secret and said method comprising:
  • It also relates to an authentication system, a server terminal, a client terminal and corresponding computer programs.
  • the invention relates to the field of security in information transmission networks and in particular authentication between two terminals connected to such a network.
  • Two authentication modes are currently deployed namely one-way authentication and mutual authentication.
  • the one-way authentication mode only one terminal is authenticated.
  • This mode is used in particular in first generation networks generally based on client-server architectures, in which a client requests access to services provided by a server.
  • the security protocols used in these networks are based, in the best case, on a challenge / response process, in which the server sends a challenge to the client and the client applies a cryptographic function on the challenge using a shared secret. (such as a password, as an example).
  • a shared secret such as a password, as an example.
  • the attack of the man in the middle is an attack in which a third party intervenes in a communication between two terminals without these being aware of it. This third party is thus able to read, insert and modify as desired encrypted messages between the two terminals without any of them can suspect that the line between them has been compromised.
  • each terminal authenticates the other terminal and vice versa.
  • the majority of security protocols provide one-way authentication and few of them implement mutual authentication.
  • the SSL protocol Secure Sockets Layer
  • Transport Layer Security supports the two authentication modes mentioned previously, while EAP-MD5 (“Extensible Authentication Protocol-Message") Digest 5 "), Challenge Handshake Authentication Protocol (CHAP), challenge / response mechanisms (used in particular with GSM networks (Global System for Mobile Communications), Wireless Local Area Network (WLAN), Internet applications such as Session Initiation Protocol (SIP), WEB, e-mail, etc.
  • Digest Authentication Digest Authentication
  • HTTP Digest only provide one-way authentication.
  • CHAP-v2 the Internet Engineering Task Force
  • EP1816616 discloses a method for establishing mutual authentication between two terminals using random values and a shared key.
  • New EAP-EHash authentication method
  • the subject of the invention is an authentication method between a client terminal and a server terminal connected to an information transmission network, said terminals sharing a secret and said method comprising:
  • a step of calculation by the client terminal of a first response to the challenge comprising the application of a first function on a first set comprising the secret and the challenge;
  • a step of authentication of the client terminal by the server terminal if the first and the second responses are concordant characterized in that:
  • the step of generating the challenge by the server terminal comprises: a step of generation by the server terminal of at least one random value
  • the method comprises:
  • the method comprises one or more of the following characteristics, taken separately or in any technically possible combination:
  • the step of calculation by the client terminal of a first response to the challenge comprises a step of concatenation by the client terminal of the challenge and the result of the application of the first function on the first set including the secret and the challenge,
  • the first and the second functions are chosen from a group of functions comprising: a key deduction function KDF;
  • the first and second sets further comprise a plurality of known parameters of the client and server terminals
  • the step of generating the challenge by the server terminal comprises a step of concatenation by said server terminal of the random value, the first encrypted value and the plurality of parameters,
  • the step of computing by the client terminal of a first response to the challenge comprises a step of concatenation by the client terminal of the challenge, of the result of the application of the first function on the first set comprising the secret and the challenge and of the plurality of parameters,
  • the information transmission network is an Internet network implementing a RADIUS infrastructure
  • the information exchanged between the client and server terminals is encapsulated in EAP packets
  • the EAP packets are exchanged between the client terminal and the server terminal via an access point
  • the access point is a NAS network management server.
  • the information transmission network is a GSM network.
  • the client terminal is a SIM card and the server terminal comprises a register of the nominal subscribers HLR and an authentication center AuC.
  • the invention also relates to an authentication system comprising a client terminal and a server terminal connected to an information transmission network, said terminals sharing a secret and said system comprising: - means for generating a challenge by the server terminal;
  • calculation means for calculation by the client terminal of a first response to the challenge, said calculation means comprising means for applying a first function to a first set comprising the secret and the challenge;
  • means for calculating by the server terminal a second challenge response comprising means for applying the first function to the first set comprising the secret and the challenge;
  • the means for generating the challenge by the server terminal comprise:
  • means for calculating by the server terminal a first encrypted value comprising means for applying a second function to a second set comprising the secret and the random value;
  • the invention also relates to a server terminal connected to an information transmission network, said terminal server sharing a secret with a client terminal connected to said network, and comprising:
  • means for calculating a second challenge response comprising means for applying a first function to a first set comprising the secret and the challenge;
  • the challenge generation means comprise:
  • means for calculating a first encrypted value comprising means for applying a second function to a second set comprising the secret and the random value;
  • the invention also relates to a client terminal connected to an information transmission network, said client terminal sharing a secret with a server terminal connected to said network and comprising:
  • means for receiving a challenge from the server terminal means for calculating a first response to the challenge, said calculating means comprising means for applying a first function to a first set comprising the secret and the challenge;
  • means for transmitting the first response to the server terminal through the network characterized in that it comprises:
  • means for calculating a second encrypted value comprising means for applying a second function to a second set comprising the secret and the random value;
  • the invention further relates to a computer program comprising code instructions, which when this program is executed on a server terminal, allow the implementation of the steps of the authentication method consisting of:
  • the subject of the invention is a computer program comprising code instructions, which when this program is executed on a client terminal, allow the implementation of the steps of the authentication method consisting of:
  • the invention overcomes the disadvantages of one-way authentication methods widely implemented in modern networks and mutual authentication methods not compatible with the existing implementations in these networks.
  • the solution proposed by the invention makes it possible to ensure enhanced mutual authentication between two terminals completely compatible with the majority of developed security protocols that use challenge / response type processes.
  • FIG. 1 is a block diagram illustrating the structure and operation of a one-way authentication system of the state of the art
  • FIG. 2 is a block diagram illustrating the structure and operation of a mutual authentication system of the state of the art
  • FIG. 3 is a block diagram illustrating the structure and operation of the mutual authentication system according to the invention.
  • FIG. 4 is a block diagram illustrating the structure of an authentication system according to a first embodiment of the invention
  • FIG. 5 is a block diagram illustrating the operation of the authentication method according to the first embodiment of the invention
  • FIG. 6 is a block diagram illustrating the structure and operation of the one-way authentication system of the state of the art in a GSM network
  • FIG. 7 is a block diagram illustrating the structure and operation of the mutual authentication system according to the invention applied to a GSM network
  • FIG. 8 is a block diagram illustrating the compatibility of the authentication method according to the invention with the authentication method of the state of the art in the GSM network.
  • FIG. 1 illustrates a generic case of one-way authentication between a client terminal 2 and a server terminal 4 connected to an information transmission network.
  • the client terminal 2 and the server terminal 4 share a secret 6 identified by an identifier.
  • the secret 6 describes a password or a shared key or a ticket, etc.
  • the client terminal 2 initializes the authentication session of the state of the art by transmitting a connection request 8 to the server terminal 4 through the network.
  • the server terminal 4 responds to the request 8 by transmitting a challenge 10 that it has previously generated randomly to the client terminal 2 through the network.
  • the client terminal 2 applies a function 12 to the challenge 10 and the secret 6.
  • the function 12 is, for example, a mathematical function or a cryptographic algorithm.
  • the client 2 obtains a response 14 following the application of the function 12 on the challenge 10 and the secret 6 that it transmits through the network to the server 4 to show that it knows the secret 6 shared.
  • the server 4 calculates a response 16 to the challenge 10 using the same function 12 applied to the shared secret 6 and the challenge 10.
  • the server 4 compares at 18 the response 14 transmitted by the client 2 and the response 16 that it has calculated.
  • the server 4 authenticates the client 2.
  • the server 4 does not authenticate at 22 the client 2.
  • This one-way authentication mode described with reference to Figure 1 is implemented by several protocols standardized by the IETF committee, including CHAP and EAP-MD5.
  • this method only authenticates the client 2 which makes it vulnerable to a very large number of attacks, namely the plaintext attack, the replay attack, the human attack in the middle, the denial of service attack, the address theft attack and the identity theft attack.
  • the IETF Committee has extended some of the previously mentioned protocols to provide mutual authentication. For example,
  • NETF RFC2759 provides a CHAP extension, called MS-CHAP-v2, to provide mutual authentication.
  • the server 4 authenticates the client 2 with which it shares the secret 6 in a manner similar to that of the method described in FIG. 1 by sending the challenge 10 randomly generated to the client 2.
  • the client 2 applies the function 12 to the challenge 10 and the secret 6 and obtains a response 14.
  • the client 2 randomly generates a second challenge 24 that it concatenates with the answer 14 in a request 26 that it transmits to the server 4.
  • the server 4 excerpt in 27 of the request 26 the answer 14 of the client 2 to the challenge 10 and the second challenge 24.
  • the server 4 authenticates at 20 or does not authenticate at 22, the client 2 in the same way as in the method of FIG. 1, comparing at 18 the response 14 of the client 2 to the response 16 that it itself calculated.
  • the server 4 applies a second function 28 to the second challenge 24 and the secret 6.
  • the second function 28 is for example a mathematical function or a cryptographic algorithm.
  • the server 4 obtains a response 30 following the application of the second function 28 on the second challenge 24 and the secret 6 that it transmits through the network to the client 2 to show that it is well aware of the shared secret.
  • the client 2 calculates a response 32 to the second challenge 24 by using the same second function 28 applied to the shared secret 6 and the second challenge 24.
  • the client 2 compares at 34 the response 30 transmitted by the server 4 and the response 32 that he calculated.
  • the client 2 authenticates the server 4 in 36.
  • the client 2 does not authenticate the server 4 at 38.
  • the method described in FIG. 2 concerning the MS-CHAP-v2 extension does indeed ensure mutual authentication between the client 2 and the server 4. However, this method is not compatible with the one-way authentication method. state of the art described above with reference to Figure 1. Indeed, the MS-CHAP-v2 extension is a protocol in itself that does not ensure interoperability or compatibility with security protocols one way unique implemented in modern networks such as CHAP1 or HTTP Digest. This extension can not therefore be implemented transparently with such protocols.
  • the invention solves this problem by proposing an extension of the one-way authentication method of FIG. 1 allowing mutual authentication of the client and server terminals without adding new fields in these protocols as is the case with MS.
  • CHAP-v2 adds a second challenge / response mechanism.
  • the method according to the invention thus allows mutual authentication between the client terminal 2 and the server terminal 4 connected to an information transmission network.
  • the term terminal has a very broad meaning within the scope of the invention. Indeed, it may designate a computer or a mobile communication terminal such as a mobile phone or a personal assistant or a computer device type smart card or USB or MMC card.
  • the term network also has a very broad meaning in the context of the invention. It may designate a home network based on ADSL modems and wi-fi access points or a public network with base stations or wireless access points or a corporate or administrative network using LAN, PLAN, WLAN or MAN infrastructures.
  • the client 2 and the server 4 share the secret 6.
  • the client 2 requests access to an application or a service provided by the server 4 by transmitting the request 8.
  • the authentication method according to the invention is also based on a challenge / response mechanism.
  • challenge 10 is not a randomly generated value.
  • the invention defines a semantics and a structuring of the challenge 10 thanks to a new construction of the challenge 10.
  • the server 4 generates a random value 40. It then applies a function 42 to the random value 40 to the secret 6 shared with the client 2 as well as to other parameters 44 detailed below to obtain a first numerical value 46.
  • the function 42 is a mathematical function or a cryptographic algorithm that can designate a key deduction function KDF ("Key"
  • MD5 Message Digest
  • MD5 hash function
  • SHA Secure Hash Algorithm
  • MAC Message Authentication Code
  • HMAC Key Hash Algorithm
  • Hashing Message Authentication Code or a symmetric encryption algorithm of the RC4 or DES or 3DES or AES type, etc. or an authentication algorithm A3.
  • Function 42 may also take the form of a combination of two or more of the forms cited.
  • other parameters 44 designates any type of known parameters of terminals 2 and 4.
  • these other parameters 44 may designate sequence numbers, the current date and time of the system, random values , a part of the headers and the content of the messages exchanged between the terminals 2 and 4, the function 40 used, etc.
  • the server 4 applies the function 42 only to the secret 6 and the random value 40.
  • the server 4 concatenates this value with the random value 40 and, according to a method of realization, with the other parameters 44 to form the challenge 10 that it transmits to the client 2.
  • the first case (not shown in FIG. 3) is the case in which the client 2 does not support the extension defined by the present invention.
  • the method continues as the one-way authentication method of FIG. 1, namely that there is only authentication of the client terminal 2 by the server terminal 4 according to the mechanism described with reference to FIG. case, the terminal server 4 is not authenticated by the client terminal 2;
  • the second case (represented in FIG. 3) is the case in which the client 2 supports the extension defined by the present invention.
  • the client 2 extracts from the challenge 10 the random value 40, the other parameters 44 and the first encrypted value 46.
  • the client terminal 2 then applies the function 42 to the shared secret 6, the random value 40 and the other parameters 44 to obtain as a result a second encrypted value 48.
  • the client terminal compares at 50 the first encrypted value 46 transmitted by the server 4 and the second encrypted value 48 that it has calculated itself.
  • the client 2 does not authenticate at 54 the server 4.
  • the client 2 calculates the first response 14 to the challenge 10 generated by the server 4 by applying the function 12, mentioned with reference to FIGS. 1 and 2 of the state of the art, on a set of values defined by the secret 6 , challenge 10 and other parameters 44.
  • the client 2 calculates the first response 14 to the challenge 10 by concatenating at 56 the challenge 10, the result of the application of the function 12 on the set of values raised and the other parameters 44.
  • the client 2 then transmits the first response 14 to the server 4.
  • the server 4 compares the first response 14 with the response 16 calculated on its side by applying the function 12 on the secret 6, the challenge 10 and the other parameters 44.
  • FIGS. embodiment in which the information transmission network is an Internet network implementing a RADIUS infrastructure ("Remote Authentication Dial - In User Service") to provide authentication and manage access to network services.
  • RADIUS infrastructure Remote Authentication Dial - In User Service
  • the data exchanged between the terminals connected to the network are encapsulated in EAP packets.
  • EAP Extensible Authentication Protocol
  • RFC 2246 Transport Layer Security
  • EAP-SIM Subscriber Identity Module
  • EAP entities authenticate to each other using an EAP authentication method.
  • the latter is a layer above the EAP layer and it defines security and key distribution mechanisms.
  • the authentication method conventionally used in this architecture is MD5 Challenge, described by IETF RFC 3748 and also known as EAP-MD5. This method as currently defined does not provide mutual authentication; only the client terminal wishing to connect to the network is authenticated.
  • FIGS. 4 and 5 An implementation method for authenticating a RADIUS authentication server with an EAP client and vice versa is described with reference to FIGS. 4 and 5. This method allows the management of several simultaneous sessions and makes possible the use of the structuring mechanism and semantizing the challenge of the invention in networks supporting a large population of users without a decrease in performance.
  • Network Administration Servers Network Administration Servers
  • the NAS servers are associated, via the network 58, to a single authentication server 72 on which is installed authentication software executed by a computer system with an operating system.
  • FIG. 5 illustrates the exchange of information in the form of EAP packets between, for example, the client 60 and the RADIUS server 72 through the NAS server 66.
  • FIG. 1 An authentication session 74 implementing the method of the invention is illustrated in FIG.
  • the NAS server 66 indicates to the client 60 the occurrence of the new authentication session 74 by producing an "EAP-ldentity.Request" packet.
  • the client 60 inserts its identity 78 in an "EAP-Identity.Response" packet.
  • the NAS server 66 transmits at 80 this packet to the RADIUS server 72 in a RADIUS packet "Access-Request”.
  • the RADIUS server 72 generates, in accordance with the method of the invention described with reference to FIG. 3, a challenge MD5 ("MD5-Challenge Request” or "EAP-MD5 Request”) and sends it to the NAS server at 82. in a RADIUS package "Access-Challenge”.
  • the NAS server 66 Upon receipt, the NAS server 66 sends the client 60 the "MD5 Challenge Request” in 84 in an "EAP" packet.
  • Request cauliflower MD5-Challenge Request
  • the client 60 recovers the type of the EAP authentication method namely "MD5-Challenge”.
  • the client 60 analyzes the challenge MD5 according to the method of the invention for authenticating the RADIUS server 72.
  • the client 60 builds its response in accordance with the method according to the invention, then sends the response ("MD5-Challenge Response” or "EAP-MD5 Response") to the NAS server at 86 66 in a package "EAP. Response
  • the NAS server 66 encapsulates the response sent by the client 60 in a RADIUS "Access Request" packet before sending it to the RADIUS server 72.
  • the RADIUS server 72 checks the response of the client 60 in accordance with the method of the invention. If this check is successful, the RADIUS server 72 encapsulates the indication of the success of the authentication of the client 60 in a RADIUS packet "Access-Accept" and sends the packet to the NAS server 66 at 90. At the reception, the NAS server 66 encapsulates the authentication success indication in an "EAP-Success" packet and sends it to the client 60 at 60.
  • the solution according to the invention makes it possible, in a transparent manner, to perform mutual authentication between a client terminal and a server terminal connected to an Internet network implementing a RADIUS architecture.
  • the terminal client is a SIM card 100 and the server terminal includes a register of the home location register (HLR) subscribers and an AuC authentication center, the whole of which is designated by HLR / AuC server 102.
  • HLR home location register
  • AuC AuC authentication center
  • Figure 6 illustrates the one-way authentication method currently implemented in GSM networks.
  • the SIM card 100 and the HLR / AuC server 102 share a key Ki 106. During the authentication phase, the SIM card 100 sends its identifier
  • IMSI International Mobile Subscriber Identity
  • the HLR / AuC server 102 generates a 128-bit random number named RAND and sends it at 108 to the SIM card 100.
  • the SIM card 100 responds at 110 with a value named SRES generated by applying the algorithm A3 on the random number RAND and the shared key Ki 106.
  • the HLR / AuC server 102 performs the same calculation and compares at 111 the SRES value to the value of the result of its calculation. If the two values match, the HLR / AuC server 102 authenticates the SIM card 100 to 112, otherwise it does not authenticate it at 114.
  • FIGS. 7 and 8 illustrate the implementation of the method of the invention for extending the one-way authentication method in a GSM network described with reference to FIG.
  • the HLR / AuC server 102 builds the RAND number according to the following steps:
  • the RAND number remains a random number of 128 bits.
  • the random value 116 is a number of 54 bits.
  • FIG. 7 The case in which the SIM card implements the extension according to the invention is illustrated in FIG. 7.
  • the SIM card 100 On receipt of the RAND number, the SIM card 100 extracted in
  • the SIM card 100 applies the algorithm A3 on the identifier IMSI, the private key PK 118 and the number RAND to obtain an encrypted value 130 which it sends at 110 in the response SRES to the server HLR / AuC 102.
  • the HLR / AuC server 102 performs the same calculation and compares the two results to authenticate the SIM card 100 as described in FIG.
  • the SIM card 100 ignores the operations 122 to 130 and does not perform authentication of the HLR / AuC server 102.
  • the invention makes it possible to have a solution of mutual authentication between the SIM card 100 and the HLR / AuC server 102 compatible and interoperable with the one-way authentication method currently implemented in GSM networks.
  • one way to ensure this interoperability of the invention with the authentication protocols of the state of the art is to provide that the server 4 adds a characteristic to the challenge 10 indicating that it is a structured challenge in the manner provided in the invention.
  • client 2 implements the extension, it extracts the challenge value from which it previously removed the challenge type characteristic and applies the steps of the method of the invention described with reference to FIG. 3 (or FIG. in the case of the GSM network).
  • the client 2 If the client 2 does not implement the extension, it performs the steps of the authentication method of the state of the art (FIGS. 1, 6 and 8) by applying the function 12 (or the algorithm A3) to the entire challenge including the characteristic of the type of the challenge.
  • a method according to the invention can therefore be implemented in any compatible authentication system of a server or client terminal in the form of corresponding computer programs comprising code instructions which, when these programs are executed. , allow the implementation of the steps of the method.

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 œuvre 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 œuvre 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 ; - 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 - 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 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 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 œuvre 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 œuvre 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 œuvre 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 œuvre dans les réseaux modernes et des procédés d'authentification mutuelle non compatibles avec les mises en œuvre 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 œuvre 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 Comité IETF a étendu certains des protocoles précédemment cités pour assurer une authentification mutuelle. A titre d'exemple,
NETF 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 œuvre dans les réseaux modernes tel CHAP1 ou HTTP Digest. Cette extension ne peut par conséquent pas être mise en œuvre 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 œuvre 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. II 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
Dérivation 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 Hash 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 œuvre 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 œuvre 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 EAP- MD5. 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 œuvre 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 œuvre 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-ldentity.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 œuvre une architecture RADIUS.
Dans la suite de la description, une mise en œuvre 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 œuvre 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 œuvre 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 œuvre 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 œuvre 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 œuvre 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 œuvre 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 œuvre 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 œuvre 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 œuvre des étapes du procédé.
Bien entendu, d'autres modes de réalisation peuvent encore être envisagés.

Claims

REVENDICATIONS
1.- 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 œuvre 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 concordantes, 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 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 - 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) 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 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) 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 : - 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.
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 œuvre 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 œuvre 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).
PCT/FR2009/050385 2008-03-14 2009-03-10 Procédé d'authentification, système d'authentification, terminal serveur, terminal client et programmes d'ordinateur correspondants WO2009115755A2 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US12/922,496 US20110246770A1 (en) 2008-03-14 2009-03-10 Authentication method, authentication system, server terminal, client terminal and computer programs therefor
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

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0851674 2008-03-14
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
WO2009115755A2 true WO2009115755A2 (fr) 2009-09-24
WO2009115755A3 WO2009115755A3 (fr) 2009-11-12

Family

ID=39627739

Family Applications (1)

Application Number Title Priority Date Filing Date
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

Country Status (4)

Country Link
US (1) US20110246770A1 (fr)
EP (1) EP2255488A2 (fr)
FR (1) FR2928798B1 (fr)
WO (1) WO2009115755A2 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101908113A (zh) * 2010-07-30 2010-12-08 深圳市江波龙电子有限公司 一种认证方法及认证系统

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2694500C (fr) * 2010-02-24 2015-07-07 Diversinet Corp. Procede et systeme de communication securisee
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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
US7171460B2 (en) * 2001-08-07 2007-01-30 Tatara Systems, Inc. Method and apparatus for integrating billing and authentication functions in local area and wide area wireless data networks
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

Patent Citations (2)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
Title
MENEZES, VANSTONE, OORSCHOT: "Handbook of Applied Cryptography" 1997, CRC PRESS LLC , USA , XP002489686 page 397 - page 404 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101908113A (zh) * 2010-07-30 2010-12-08 深圳市江波龙电子有限公司 一种认证方法及认证系统
CN101908113B (zh) * 2010-07-30 2012-09-26 深圳市江波龙电子有限公司 一种认证方法及认证系统

Also Published As

Publication number Publication date
FR2928798B1 (fr) 2011-09-09
FR2928798A1 (fr) 2009-09-18
US20110246770A1 (en) 2011-10-06
WO2009115755A3 (fr) 2009-11-12
EP2255488A2 (fr) 2010-12-01

Similar Documents

Publication Publication Date Title
WO2009115755A2 (fr) Procédé d'authentification, système 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
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
WO2007115982A2 (fr) Procede de protection d'identite, dispositifs, et produit programme d'ordinateur correspondants
FR2916592A1 (fr) Procede de securisation d'echange d'information,dispositif, et produit programme d'ordinateur correspondant
FR3044499A1 (fr) Methode d'etablissement d'une communication securisee de bout en bout entre le terminal d'un utilisateur et un objet connecte
EP2186252B1 (fr) Procede de distribution de cles cryptographiques dans un reseau de communication
WO2014154482A1 (fr) Procede et dispositif d'etablissement de cles de session
CN104735037B (zh) 一种网络认证方法、装置及系统
EP2294850B1 (fr) Procede pour securiser des echanges entre un noeud demandeur et un noeud destinataire
FR3065605A1 (fr) Systeme et procede de communications
EP2868130B1 (fr) Mise en place d'une association de securite lors de l'attachement d'un terminal a un reseau d'acces
Saverimoutou et al. Which secure transport protocol for a reliable HTTP/2-based web service: TLS or QUIC?
CN116017429A (zh) 5g网络加密组网方法、系统、装置及存储介质
FR3111038A1 (fr) Traitements cryptographiques pour chiffrer ou déchiffrer des données
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
Badra Le transport et la sécurisation des échanges sur les réseaux sans fil
WO2022238644A1 (fr) Procede de defense contre une tentative de deconnexion entre deux entites, systeme associe
FR3031211A1 (fr) Infrastructure d'authentification de telephones ip d'un systeme toip proprietaire par un systeme eap-tls ouvert
EP1858224A1 (fr) Méthode de mise en place des réseaux privés virtuels et contrôle d'accès distant
FR2838586A1 (fr) Procede pour securiser une liaison entre un terminal de donnees et un reseau local informatique, et terminal de donnees pour la mise en oeuvre de ce procede
Hajjeh Sécurité des échanges. Conception et validation d'un nouveau protocole pour la sécurisation des échanges.
FR3116978A1 (fr) Contrôle d’accès à un réseau de communication local, et passerelle d’accès mettant en œuvre un tel contrôle
CN116015878A (zh) 一种流量检测方法、装置、存储介质及设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09723375

Country of ref document: EP

Kind code of ref document: A2

WWE Wipo information: entry into national phase

Ref document number: 2009723375

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 12922496

Country of ref document: US