WO2016156737A1 - Procede d'obtention d'une liste d'au moins une donnee sensible - Google Patents
Procede d'obtention d'une liste d'au moins une donnee sensible Download PDFInfo
- Publication number
- WO2016156737A1 WO2016156737A1 PCT/FR2016/050713 FR2016050713W WO2016156737A1 WO 2016156737 A1 WO2016156737 A1 WO 2016156737A1 FR 2016050713 W FR2016050713 W FR 2016050713W WO 2016156737 A1 WO2016156737 A1 WO 2016156737A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- terminal
- list
- key
- user
- sensitive data
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/34—User authentication involving the use of external additional devices, e.g. dongles or smart cards
- G06F21/35—User authentication involving the use of external additional devices, e.g. dongles or smart cards communicating wirelessly
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/41—User authentication where a single sign-on provides access to a plurality of computers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2143—Clearing memory, e.g. to prevent the data from being stolen
Definitions
- the present invention relates to a method of obtaining a list of at least one sensitive data, sensitive data being intended to be used to access a service. It finds a particularly interesting application in securing access to remote services.
- the user has to memorize only one password, that which allows access to the list of his passwords. It is known, however, that a password has certain constraints: it is necessary that the password is long enough to be safe but it should not that its capture and storage are prohibitive for the user. The user can choose a simple password but it is detrimental to the security of the system.
- One of the aims of the invention is to remedy the shortcomings / disadvantages of the state of the art and / or to make improvements thereto.
- the invention proposes a method of obtaining a list of at least one sensitive data, sensitive data of the list being intended to be used to access a service from at least a first terminal a user, said user having a second terminal equipped with a security module, the method comprising the following steps, implemented by the first terminal:
- the method allows a user to recover from the first terminal sensitive data from a list of sensitive data stored securely on a remote storage server, the sensitive data being intended to be used by the user to access a service from its terminal.
- Access to the sensitive data is conditioned by positive authentication of the user by means of a security module of a mobile terminal of the user.
- user authentication is a two-factor authentication.
- Access to the service is therefore with a higher level of security than access conditioned by the simple provision of a password.
- a password usually used for the management of sensitive data lists is replaced by a simple PIN code, easy to memorize, without the security of the system is degraded.
- PIN entry is related to authentication implemented by means of the user's mobile terminal.
- a PIN code is usually short and usually consists of four digits; it is therefore easier to memorize than a password, which, to be sure, generally comprises different types of characters, such as letters, numbers, punctuation characters and generally comprises at least eight characters.
- the management of sensitive data and their use in the context of access to a service is therefore more user-friendly than known solutions.
- the security of this list is a priori better than if it were stored on the user's terminal.
- the authorization management server generates and sends to the storage server and to the first terminal a temporary identifier, said temporary identifier being used by the storage server to authorize sending to the first terminal of the data list. sensitive numbers.
- the temporary identifier is advantageously used in order to establish a link between data relating to the same user and which circulate on two distinct communication channels. This temporary identifier thus makes it possible to deliver the list of sensitive data to the terminal of the user who has made the request by offering the storage server a confirmation that the user has been previously authenticated by the authorization management server.
- the method comprises a configuration phase the following steps:
- the encryption key of the password list generated and used by the first terminal to generate the encrypted sensitive data list is not stored on the user's terminal in a sustainable manner: it is erased from the first terminal after a initialization phase. This limits the risks of obtaining this key by a malicious person on a terminal of the user, and thus access to the list of sensitive data of the user.
- the method further comprises the steps of:
- This second embodiment makes it possible to mitigate attacks in which an attacker who has access to the authorization management server and to the storage server would recover the data necessary to obtain the secret encryption key used to encrypt the data list. sensitive and stored on the authorization management server and the storage server. With the master password stored on the authorization management server and used to derive the encryption key, and the list of encrypted passwords stored on the storage server, it would easily access the password list of the user. An intermediate key is used to encrypt the secret encryption key of the list. Without access to the encryption key encrypted by means of this intermediate key and stored encrypted on the user's terminal, the attacker can not decrypt the list of sensitive data of the user.
- the user being equipped with a third terminal, it comprises the following steps implemented by the first and the third terminal:
- the method thus makes it possible to record other terminals of the user, that is to say terminals that are distinct from the first terminal that has proceeded to the initial configuration of the system so that the user also accesses the list of words. encrypted password stored on the storage server from its other terminals.
- the registration of other terminals is done easily by means of exchanges with the network.
- the decryption value is a secret key for protecting a private key, intended to encrypt a private key of a private key / public key pair, the method further comprising the following steps:
- the secret encryption key is encrypted for a terminal, by means of a public key generated for this terminal and the associated private key is protected by means of a secret protection key which is transmitted and stored in the device. network.
- the encryption of the secret key by means of the public key is stored on the terminal.
- the private key, the secret encryption key and the secret key for protecting the private key are erased from the terminal at the end of initialization.
- the user being equipped with a third terminal, it comprises the following steps implemented by the first and third terminals:
- the invention also relates to a method of providing a list of at least one sensitive data item, a sensitive data item of the list being intended to be used to access a service from at least a first terminal of a user. , said user having a second terminal equipped with a security module, the method comprising the following steps, implemented by a system comprising an authorization management server and a storage server:
- the invention also relates to a user terminal, arranged to obtain a list of at least one sensitive data, sensitive data of the list being intended to be used to access a service, said terminal comprising:
- means for sending arranged to send to a authorization management server a request to obtain the list of encrypted sensitive data, said list being encrypted by means of a secret encryption key and stored on a storage server,
- first reception means arranged to receive from the authorization management server a message comprising a decryption value of the list, said message being received only after successful authentication of the user by means of a security module of a second terminal,
- second reception means arranged to receive from the storage server the list of encrypted passwords
- decryption means arranged to decrypt said list by means of the secret key, said secret key being computable by means of the decryption value.
- the invention also relates to a computer program on a data carrier and loadable in the memory of a computer, the program comprising code instructions for performing the steps of the method of obtaining a list of less sensitive data as described above, when the program is run on said computer.
- the invention also relates to a data carrier in which the program is recorded as described above.
- the invention also relates to a system comprising an authorization management server and a storage server, said system being arranged to provide a first terminal with a list of at least one sensitive data, sensitive data of the list. being intended to be used to access a service from at least the first terminal,
- first receiving means arranged to receive from the first terminal a request for obtaining the list of encrypted sensitive data, said list being encrypted by means of a secret encryption key
- first sending means arranged to send a request for authentication of the user to an authentication server
- second reception means arranged to receive an authenticity result from the authentication server
- second sending means arranged to send to the first terminal, when the authentication result is positive, a message comprising a decryption value of the list and the list of sensitive data encrypted by means of the encryption key, said encryption key being computable by means of the decryption value.
- FIG. 1 shows the steps of a method of obtaining a list of at least one sensitive data, according to a first embodiment
- FIG. 2 presents the steps of a method of initial configuration of a system for obtaining a list of at least one sensitive data item, according to a first exemplary embodiment
- FIG. 3 presents the steps of a method of initial configuration of a system for obtaining a list of at least one sensitive data item, according to a second exemplary embodiment
- FIG. 4 presents the steps of a method of obtaining a list of at least one sensitive data item, according to the second embodiment
- FIG. 5 shows the steps of a method for registering a new terminal for implementing the method of obtaining a list of at least one sensitive data item, according to the second embodiment
- FIG. 6 presents the steps of a method of initial configuration of a system for obtaining a list of at least one sensitive data, according to a third exemplary embodiment
- FIG. 7 presents the steps of a method of obtaining a list of at least one sensitive data item, according to the third embodiment
- FIG. 8 presents the steps of a method for registering a new terminal for implementing the method of obtaining a list of at least one sensitive data item, according to the third embodiment
- FIG. 9 is a schematic representation of a user terminal, arranged to implement the steps of the method of obtaining a list of at least one sensitive data, according to an exemplary embodiment
- FIG. 10 is a schematic representation of a system comprising an authorization management server and a storage server, able to deliver a list of at least one sensitive data item, according to an exemplary embodiment.
- a user (not shown) is equipped with at least one service access terminal and a mobile terminal 20.
- the access terminal 10 is for example a PC type equipment ("Personal"). Computer ") for use in accessing services.
- the access terminal 10 implements an initial configuration method for initializing initial data of a system for obtaining a list of sensitive data. As such, it is also qualified master terminal.
- the access terminal 10 is arranged to access an authorization management server 50 through a network, for example the Internet network.
- the mobile terminal 20 is for example a smart terminal (we speak of "smartphone” in English) which includes a security element 201, for example a card “USIM” (of the English “Universal Subscriber Identification Module”).
- the security element 201 constitutes a secure environment in which applications and data are stored securely.
- the mobile terminal 20 is used by the user to access a service.
- the mobile terminal 20 is in this case the access terminal.
- the mobile terminal 20 is arranged to authenticate the user of the mobile terminal 20 with an authentication server 60 of the network by means of the security element 201.
- the authorization management server 50 is arranged to control, following a request to obtain the list received from the access terminal 10, a request for authentication of the user with the authentication server 60 and to assign to the user, in the event of authentication success, a temporary identifier tmpID, specific to a current session and the user, which he associates in this example with a password master master _pwd specific to the user.
- the master password master _pwd and the temporary identifier tmpID associated with the user are intended to be used by the user to obtain from a storage server 70 a list of sensitive data encrypted, denoted AES (K2, Ist _pwd) and for the decryption of this list.
- the architecture of the storage server 70 is, for example, in accordance with a cloud computing architecture (usually referred to as “cloud computing" architecture).
- the sensitive data are passwords intended to access services.
- the invention is of course not limited to passwords and also applies to other sensitive data, such as bank account numbers, etc.
- an AES encrypted list (K2, Ist _pwd) of at least one password associated with the storage server 70 has been installed on the storage server 70. user. Each of the passwords in the list is intended to be used by the user to access a given service.
- the AES encrypted password list (K2, Ist _pwd) was obtained by applying a symmetric encryption algorithm to the list of passwords and a secret encryption key K2.
- the symmetric encryption algorithm is for example the "AES" (Advanced Encryption Standard) algorithm. The invention is of course not limited to this algorithm.
- the secret encryption key K2 has, for example, been obtained by applying a key derivation algorithm to the master master password _pwd and to an initial value known, called seed, generated randomly.
- the key derivation algorithm is for example the "PBKDF2" algorithm (of the English "Password Based Key Derivation Function, version 2"). It is assumed that during the initial configuration phase, the seed knows has been installed on the storage server 70 and the master master password _pwd, used to generate the secret encryption key K2, on the authorization management server 50.
- the user In an initial step E10 of obtaining request to the list, the user, more precisely the access terminal 10 of the user, sends to the authorization management server 50 an initial request REQ_INIT for obtaining a list .
- the initial request REQ_INIT includes a user ID of the user.
- the userlD identifier is for example the user's e-mail address, a telephone number of the form "MSISDN" (of the "Mobile Station ISDN Number”), etc.
- the authorization management server 50 sends to the authentication server 60 during an authentication request step El i, an authentication request REQ_AUTH which comprises the authentication request server 60.
- the authentication server 60 triggers in a next step E100 a user authentication by sending to the mobile terminal 20, more precisely to the security module 201 of the terminal 20, a secure short message (usually referred to as "SMS" for " Short Message Service (in English).
- SMS Secure Short message
- the reception of this message causes the appearance on the screen of the terminal 20 of a request message for the entry of a personal identification code of the user (or "PIN" code, for "Personal Identification Number”).
- PIN Personal Identification Code
- the security module 201 checks the entered PIN code. If the code is equal to a code stored in the security module 201 then authentication has succeeded. In a step El 02 of sending an authentication result, the security module 201 sends to the authentication server 60, via the mobile terminal 20, a signed message comprising an authentication result RES_AUTH indicating whether authentication of the user has succeeded. The authentication result RES_AUTH is retransmitted by the authentication server 60 to the authorization management server 50 in a step El 03 of transmission of the authentication result. At this point, the authorization management server 50 has the assurance that a User authentication has occurred, and the result of this authentication is the RES_AUTH value it has received.
- the authorization management server 50 delegates to the authentication server 60 authentication of the user.
- the authentication method described by means of the steps E100 to E103 is an example of authentication of the user by the authentication server 60. It is deemed safe. Of course, any other authentication method that allows the authorization management server 50 to verify that the user is the one he claims to be can be used.
- the authorization management server 50 checks the authentication result RES_AUTH.
- the authentication result RES_AUTH is negative (branch "nok” in FIG. 1)
- the process stops; this case corresponds to a failure of authentication of the user.
- the authorization management server 50 generates and sends to the storage server 70 in a step E13 generation and sending, a temporary identifier tmpID.
- the temporary identifier tmpID is specific to the user and the current session.
- the temporary identifier tmpID is comparable to a temporary secret, usable for a current session.
- the authorization management server 50 also sends to the access terminal 10 of the user a generation message DATA_GEN comprising the temporary identifier tmpID and the master password master _pwd.
- a next step E14 for sending the transaction identifier the access terminal 10 sends to the storage server 70 a message MSG_ID comprising the temporary identifier tmpID that it received during the previous step E14.
- the storage server 70 sends to the access terminal 10 a GEN_LST password list generation message including the germ knows, the list of encrypted password AES (K2 , Ist _pwd), the user ID of userlD and the temporary identifier tmpID.
- the access terminal 10 decrypts the list of encrypted password AES (K2, Ist _pwd) he received in step E15.
- the terminal 10 generates the secret decryption key K2 by means of the master master password _pwd that it has received from the authorization management server 50 during the step E13 and the seed knows that it has received of the storage server 70 during the step E15. It then decrypts the AES encrypted password list (K2, Ist _pwd) by applying the symmetric encryption algorithm to the encrypted received list and the encryption key. decryption K2 he calculated.
- the list of passwords Ist _pwd is accessible on the access terminal 10. The access terminal 10 can then use one of the passwords to access a given service.
- the method of obtaining a list of at least one sensitive data integrates into a global method of access to at least one service conditioned by the provision of a password.
- the request to access one of these services triggers the execution of the process for obtaining the list of passwords, then the selection, among the passwords of the list, of the password necessary to access the service. this service and finally, the sending to the service of the password.
- the method of obtaining the list of passwords can be used transparently when accessing services by the user. The user thus accesses his password stored remotely by entering a PIN code only.
- a PIN code is usually short and usually consists of four digits; it is therefore easier to memorize than a password, which, to be sure, generally comprises different types of characters, such as letters, numbers, punctuation characters and generally comprises at least eight characters.
- the authentication of the user for his access to the service is a two-factor authentication because of the authentication performed by means of his mobile terminal 20. Access to the service is therefore done with a higher level of security. higher than conditioned access by simply providing a password.
- the user accesses the list of his passwords from the access terminal 10, which is the terminal used during the configuration phase.
- the user can obtain the list of his passwords from other terminals belonging to him, since these are adapted to implement the steps of the process of obtaining a list of at least a sensitive data as described above.
- the temporary identifier tmpID makes it possible to associate the exchanges between the access terminal 10 and the storage server 70 with the exchanges between the terminal 10 and the authorization management server 50. Indeed, these exchanges are a priori distinct, since on two different communication channels, and the temporary identifier tmpID allows to link them to send the list of encrypted passwords to the correct terminal, that is to say to the terminal that made the request.
- the initial configuration method makes it possible to configure the various equipment that constitute a system for obtaining the list of at least one sensitive data.
- initial step E20 for generating parameters and sending the user executes an application for managing his list of encrypted passwords on one of his terminals, called the master terminal.
- the master terminal is the access terminal 10.
- the user has entered a list Ist _pwd, stored on its terminal 10, comprising at least one password for access to at least one service, and that each of the passwords has been registered with a server (not shown in Figure 2) that issues the associated service.
- the application prompts the user to enter the master password _pwd.
- the application encrypts the password list using the master password _pwd entered by the user. To this end, the application randomly generates the seed knows, then derives the secret encryption key K2.
- the secret key K2 is generated by applying a key derivation algorithm to the master master password _pwd and the seed knows.
- the list of passwords Ist _pwd is then encrypted by applying the symmetric encryption algorithm to the list of passwords and the secret key K2.
- the list of encrypted password AES (K2, Ist _pwd) is available on the terminal 10 of the user.
- the terminal 10 sends the authorization management server 50 a registration message MSG_ENREG comprising the user ID userlD and the master master password _pwd.
- the identifier is for example a user's e-mail address or a telephone number in the form MSISDN.
- the authorization management server 50 triggers a user authentication procedure. More specifically, the server 50 delegates authentication to the authentication server 60. It uses for example the same method as that described above.
- the authorization management server 50 sends the authentication server 60 an authentication request REQ_AUTH comprising the user identifier userlD of the user, and the steps E100 to E103 described. previously are executed in order to authenticate the user by means of his mobile terminal 20.
- the authorization management server 50 checks whether authentication of the user has been successful. In a first case where authentication has failed, corresponding to the case where the authentication result RES_AUTH received from the authentication server 60 is negative ("nok" case in FIG. 2), the process stops. In a second case where authentication succeeded, corresponding to the case where the result of authentication RES_AUTH is positive (branch "ok" in FIG. 2), in a step E23 of storage, generation and sending, the authorization management server 50 stores the identifier of the user userlD in association with the word of master pass master _pwd. It also generates the temporary identifier tmpID and transmits it on the one hand to the storage server 70 and on the other hand to the terminal 10.
- a subsequent sending step E24 the terminal 10 sends to the storage server 70 the temporary identifier tmpID, the user ID of the user, the seed knows and the list AES (K2, Ist _pwd) of passwords encrypted using the secret encryption key K2.
- the terminal 10 erases the secret encryption key K2, the master master password _pwd, and the seed knows that it has used for this initial configuration.
- the AES encrypted password list (K2, Ist _pwd) is stored on the storage server 70; it is no longer available on the terminal 10 used to generate it.
- the master password _pwd master is stored in clear on the server 50 authorization management.
- An attacker who manages to access the authorization management server 50 and the storage server 70 could therefore recover the master master password _pwd, the encrypted password list AES (K2, Ist _pwd) and could decrypt this list so to obtain all the user's passwords.
- an intermediate secret key is stored on the authorization management server 50 instead of the master master password _pwd.
- the intermediate secret key K1 is intended to be used to encrypt the encryption key K2.
- the encrypted encryption key K2, denoted AES (K1, K2) is then stored on the access terminal 10.
- an attacker who accesses the storage server 70 and the authorization management server 50 only can not decrypt the AES encrypted password list (K2, Ist _pwd) unless also obtaining the encrypted encryption secret key AES (K1, K2) by means of K1 which is stored on the user terminal.
- the intermediate secret key K1 and the seed knows.
- the intermediate secret key K1 and the seed know are generated randomly. It is also derived from the master password master_pwd entered by the user and the seed knows the secret key K2 encryption and it is calculated an encryption of the encryption key K2.
- the encryption of the secret encryption key K2, denoted AES (K1, K2) is obtained by applying the symmetric encryption algorithm to the secret encryption key K2 and the intermediate secret key K1.
- the terminal 10 then sends the authorization management server 50 a registration message MSG_ENREG comprising the intermediate secret key K1 and the user ID of the user user.
- the authorization management server 50 triggers an authentication of the user, in accordance with the method described above in relation to the steps E100 to E1 03.
- the Authorization management server 50 checks the authentication result RES_AUTH received from the authentication server 60. If authentication succeeded (branch "ok" in FIG. 3), the authorization management server 50 saves in a following step E33 of the authentication server 60. recording, generating and sending the intermediate secret key K1 in association with the userlD user identifier.
- the authorization management server 50 also generates a temporary user-specific and password-list tmpID and sends it to the storage server 70 and the terminal 10.
- a sending step E34 the terminal 10 sends to the storage server 70 the temporary identifier tmpID, the user identifier of the userlD, the list of encrypted password AES (K2, Ist _pwd) and the seed knows .
- a subsequent step E35 of erasure the terminal 10 erases the secret key K2, the seed knows, the intermediate secret key K1 and the list of encrypted password AES (K2, Ist _pwd).
- the terminal 10 is only aware of the encryption AES (K1, K2) of the encryption key K2 by means of the intermediate secret key K1.
- a method of obtaining a list of at least one sensitive data will now be described in relation with FIG. 4. It is assumed that a configuration in accordance with that which has been obtained following the execution of the configuration method described in connection with FIG. 3 has been implemented.
- the user In an initial step E40 requesting to obtain the list, the user, more precisely the access terminal 10 of the user, sends the authorization management server 50 an initial REQ_INIT request for a list request.
- the initial request REQ_INIT includes the user ID of the user.
- the authorization management server 50 triggers a user authentication procedure. For example, it uses the same method as described above.
- the server 50 for managing the authorizations sends the authentication server 60 an authentication request REQ_AUTH, and the steps El 00 to El 03 described above are executed in order to authenticate the user by means of his mobile terminal 20.
- the authorization management server 50 checks the authentication result RES_AUTH received from the authentication server 60. If authentication succeeds ("ok" branch in FIG. 4), the authorization management server 50 generates and sends to the storage server 70 in a generation and sending step E43, the temporary identifier tmpID. The authorization management server 50 also sends to the access terminal 10 of the user a generation message DATA_GEN comprising the temporary identifier tmpID and the intermediate secret key K1.
- a next step E44 of sending the transaction identifier the access terminal 10 sends to the storage server 70 a message comprising the temporary identifier tmpID that it received during the previous step E43.
- the storage server 70 sends the access terminal 10 a generation message of the password list GEN_LST including the seed knows, the list of encrypted password AES (K2 , Ist _pwd), the user ID of userlD and the temporary identifier tmpID.
- the access terminal 10 decrypts the list of AES passwords (K2, Ist _pwd) that it has received encrypted in step E45.
- the terminal decrypts the encryption key K2 by means of the intermediate secret key K1 that it has received from the authorization management server 50 during the step E43 and the encrypted AES (K1, K2) that it memorized. It then proceeds to decrypt the AES list (K2, Ist _pwd) that it received encrypted during the step E45 by means of the encryption key K2 thus obtained.
- the access terminal 10 can then use one of the passwords to access a given service.
- the intermediate secret key K1 is initially generated on the access terminal 10
- the secret encryption key K2 is stored encrypted by means of the intermediate secret K1 on the access terminal 10 and the terminal 10 is used. to access the list of encrypted passwords.
- the user has several terminals and must be able to access the AES encrypted password list (K2, Ist _pwd) from any of its terminals, after the list of encrypted passwords. has been generated and stored on the storage server 70. In this case, it is possible to record, during a recording phase, a new terminal of the user, of so that it obtains the list of encrypted passwords, in the same way as the access terminal 10.
- the user is equipped with the access terminal 10, or master terminal, through which he proceeded to register his list of encrypted password AES (K2, Ist _pwd) on the storage server 70, in accordance with the steps the configuration method described in connection with Figure 3. It is assumed that the user also has a second terminal 11, arranged to access a service and obtain for this access the list of encrypted password.
- the authorization management server 50 proceeds to authentication of the user, in accordance with the method described above. It sends a REQ_AUTH authentication request to the authentication server 60 in a step E51 for sending an authentication request, and the user authentication steps E100 to E103 described above are executed. to authenticate the user by means of his mobile terminal 20.
- the authorization management server 50 checks in a test step E52 whether authentication has succeeded. In a case where authentication failed, corresponding to the case where the authentication result RES_AUTH received from the authentication server 60 is negative (branch "nok" in FIG. 5), the process stops. In a case where authentication has succeeded, corresponding to the case where the authentication result RES_AUTH received from the authentication server 60 is positive (branch "ok" in FIG. 5), the authorization management server 50 sends to the terminal 10, in a sending step E53, a message comprising the DevicelDll identifier of the second terminal 11.
- the terminal 10 sends the authorization management server 50 a message comprising the identifier DevicelDll of the second terminal and the encryption of the encryption key K2 by means of the intermediate secret key K1, noted AES (K1, K2).
- the authorization management server 50 retransmits the received message to the second terminal 11.
- the encryption of the encryption key K2, AES (K1, K2) only passes through the server 50 of management of authorizations. In this embodiment, it is considered that the authorization management server 50 does not store this transient data.
- the second terminal 11 has the encryption key K2 encrypted by means of the intermediate secret key K1. It is now adapted to access the list of encrypted passwords, according to the method of obtaining the list described in connection with Figure 4.
- the user can access the AES encrypted password list (K2, Ist _pwd) from any of its terminals, adapted for implementing the method of obtaining the encrypted password list. .
- the exchanges between the different entities in this case the access terminal 10, the authorization management server 50, the storage server 70 are also secure, whether in the phase obtaining the list of passwords, in the initial configuration phase or in the registration phase of a new terminal.
- TLS Transport Layer Security
- This variant is advantageous in the case where an attacker who took control of the authorization management server 50 and the storage server 70 would also memorize the encryption AES (K1, K2) of the encryption key which passes through the server 50 of authorization management when registering a new terminal. Indeed, in this case the attacker would have all the elements necessary for the decryption of the password list of the user. With the solution described here, the attacker would also need the private key of a Kpriv terminal stored on the terminal i, to decrypt RSA (Kpubi, AES (K1, K2)). It should therefore also have access to the terminal i to obtain the list of passwords Ist _pwd of the user.
- sending the encrypted secret encryption key K2 by means of the intermediate key K1, AES (K1, K2) is done directly from the access terminal 10 to the second terminal 11, without passing through the authorization management server 50.
- the intermediate key K1 is associated with the access terminal 10, and it is this key that is used for all terminals that will then register.
- an intermediate secret key is associated with each of the user's terminals.
- an intermediate secret key Kl 1 is associated with the second terminal 11.
- the authorization management server 50 sends the authorization management server 50 its intermediate secret key Kl 1 in the registration message MSG_ENREG.
- the authorization management server 50 transmits to the access terminal 10 its intermediate secret key K1 and the intermediate secret key K1 of the second terminal during the sending step E53.
- the access terminal 10 can thus decrypt the secret encryption key K2 by means of its own intermediate secret key K1 and then calculate the encryption AES (K11, K2) of the key K2 by means of the intermediate secret key K1 of the second terminal.
- This encryption is then transmitted by the authorization management server 50 to the second terminal 11.
- the second terminal 11 requires obtaining the list of passwords, it is then the intermediate key Kl 1 of the second terminal 11 that the Authorization management server 50 sends in step E43 of generation and sending.
- a public key cryptography mechanism is combined with a secret key cryptography mechanism to protect a private key from a private key / key pair.
- the terminal 10 In an initial step E60 for generating parameters, the terminal 10, called the master terminal, generates the known seed, the encryption key K2 and the encrypted password list AES (K2, Ist _pwd).
- the terminal 10 also generates, or imports from a key generation entity (not shown in FIG. 6), a pair of asymmetric keys private key / public key, denoted Kpriv 10 / Kpub 10 , specific to the terminal 10.
- the terminal 10 also generates a secret key KlOp for protecting a private key and encrypts its private key Kpriv 10 by means of this key. In other words, it calculates AES (K10p, Kpriv 10 ).
- the access terminal 10 encrypts the secret encryption key K2 to its attention by means of its public key. It therefore calculates RSA (Kpub 10 , K2). It should be noted that the decryption of the encryption key K2 on the access terminal 10 can only be done with the private key Kpriv 10 specific to the terminal 10.
- the access terminal 10 sends to the authorization management server 50 a registration message MSG_ENREG comprising the userlD user identifier, an identifier of the terminal 10, DevicelD10, and the secret key KlOp protection of a private key.
- the authorization management server 50 performs authentication of the user, in accordance with the method described above. It sends a REQ_AUTH authentication request to the authentication server 60 in a step E61 for sending an authentication request, and the user authentication steps El 00 to El 03 described above are executed in order to authenticate the user by means of his mobile terminal 20.
- the authorization management server 50 checks in a test step E62 whether authentication has succeeded. In a case where authentication failed, (branch "nok” in Figure 6), the process stops. In a case where authentication has succeeded, corresponding to the case where the authentication result RES_AUTH received from the authentication server 60 is positive (branch "ok" in FIG. 5), the authorization management server 50, in a step E63 generation and sending, generates the temporary identifier tmpID and sends the terminal 10 a message including the DevicelDlO identifier of the terminal 10, the user ID userlD and the temporary identifier tmpID. It also sends to the storage server 70 the temporary identifier tmpID.
- the terminal 10 sends to the storage server 70 a message including the temporary identifier tmpID, the user ID of the user, the seed knows, and the list of encrypted password AES. (K2, Ist _pwd).
- the terminal 10 erases the encryption key K2, the key KlOp for protecting a private key and the private key Kprivw-
- the private key Kprivm of the terminal 10 is stored encrypted on the terminal 10 by means of the secret key KlOp for protecting a private key and the secret key KlOp for protecting the private key is stored in the network.
- the access terminal 10 sends the authorization management server 50 an initial request REQ_INIT request to obtain the list.
- the initial request REQ_INIT comprises the user ID userlD and an identifier DevicelDIO terminal 10.
- the authorization management server 50 triggers a user authentication procedure. For example, it uses the same method as described above.
- the authorization management server 50 sends to the authentication server 60, during an authentication request step E71, an authentication request REQ_AUTH which comprises the user ID of the user user.
- the steps E100 to E103 described above are executed in order to authenticate the user by means of his mobile terminal 20.
- the authorization management server 50 checks the authentication result RES_AUTH received from the authentication server 60. If authentication has succeeded (branch "ok" in FIG. 7), in a generation step E73 and sending, the authorization management server 50 generates and sends to the storage server 70 a temporary identifier tmpID. The authorization management server 50 also sends the access terminal 10 a generation message DATA_GEN comprising the temporary identifier tmpID and the secret key KlOp for protecting a private key.
- a next step E74 sending information the access terminal 10 sends the storage server 70 a message including the temporary identifier tmpID he received in the previous step.
- the storage server 70 sends to the access terminal 10 a GEN_LST generation message which includes the germ knows, the user ID userlD, the temporary identifier tmpID and the list of encrypted AES passwords (K2, Ist _pwd).
- the access terminal 10 decrypts the encrypted password list AES (K2, Ist _pwd). More precisely, the access terminal 10 obtains its private key Kprivio by decrypting by means of the secret key KloP protection its stored private key encrypted in the form AES (K10p, Kprivio). He deciphers then by means of its private key Kprivm the encryption key K2 of the password list stored and previously encrypted by means of its public key Kpubw- It then obtains its list of passwords by decrypting the encrypted list AES (K2, Ist _pwd) received in step E74 using the encryption key K2 that it has just calculated.
- the third example of a method for obtaining a list of at least one sensitive data item has been described with the access terminal 10 which implements the initial configuration phase, described with reference to FIG. 6, and which later requires the list of passwords. It is possible to register other terminals so that the user requires his list of passwords from his other terminals.
- the registration phase of a new access terminal according to the third exemplary embodiment will now be described in relation with FIG. 8.
- the user In an initial registration request step E80, the user, more precisely the second terminal 11, generates or imports an asymmetric Kpub / Kpriv key pair and generates a secret key K lp protecting a private key, intended to encrypt the Kpriv private key.
- the secret protection key Kl lp is for example generated randomly. It is assumed that the second terminal 11 has a DevicelDll identifier of its own. Furthermore, the second terminal 11 encrypts its private key Kpriv n by means of the secret key Kl lp protection and stores this value. Note the value obtained AES (Kllp, Kpriv). The private key Kpriv n is then erased from the second terminal 11.
- the second terminal 11 stores only the AES encryption (Kllp, Kprivu) of the private key Kprivn by means of the secret protection key Kl lp.
- the second terminal 11 sends to the authorization management server 50 a registration message MSG_ENREG that includes the identifier of the user userlD, the public key Kpubu of the second terminal 11, the secret protection key Kl lp and the identifier DevicelDll of the second terminal 11.
- the secret protection key Kl lp is then erased from the second terminal 11.
- the authorization management server 50 triggers a user authentication procedure. For example, it uses the same method as described above.
- the authorization management server 50 sends to the authentication server 60, during an authentication request step E81, an authentication request REQ_AUTH which comprises the user ID of the user user.
- the steps E100 to E103 described above are executed in order to authenticate the user by means of his mobile terminal.
- the authorization management server 50 checks the authentication result RES_AUTH received from the authentication server 60. If authentication has succeeded (branch "ok" in FIG. authorizations, in a step E83 for storing and sending, stores the identifier of the second terminal 11 DevicelDll in association with the secret protection key Kl lp that it has received previously.
- the authorization management server 50 also sends to the master terminal 10 a DATA_GEN generation message including the identifier DevicelDl 1 of the second terminal 11, the public key Kpubu of the second terminal and the key K10p of protection of the private key Kprivio of the terminal d access 10.
- the master terminal 10 decrypts its private key Kprivio that it has stored encrypted, by means of the key KlOp protection of the private key that it received during the step E83.
- the access terminal 10 erases the key KlOp protection.
- the access terminal 10 has recovered its private key Kpriv 10 which it memorized encrypted.
- the access terminal 10 then proceeds to decrypt the encryption key K2 by means of its private key Kpriv 10 .
- the access terminal 10 stores the encrypted encryption key K2 by means of its public key in the form RSA (Kpub 10 , K2). He then erases his private key Kpriv 10 .
- the access terminal 10 then encrypts the encryption key K2 for the second terminal 11, by means of the public key Kpubu of the second terminal. In other words, it calculates RSA (Kpub, K2). It then erases the secret encryption key K2.
- the access terminal 10 sends to the authorization management server 50 a message comprising the identifier of the second terminal 11 DevicelDll and the encryption key K2 encrypted by means of the public key Kpubu of the second terminal, that is RSA (Kpubu, K2).
- the authorization management server 50 sends the thus calculated value RSA (Kpubu, K2) to the second terminal 11.
- the second terminal 11 stores its private key Kprivn encrypted with the key Kl lp private key protection: AES (Kllp, Kprivn), and encryption key K2 encrypted by means of its public key Kpubu ' ⁇ RSA (Kpubu, K2).
- the second terminal 11 can then access the list of encrypted password AES (K2, Ist _pwd) by implementing the steps of the method of obtaining the list of passwords described in relation to FIG. 7.
- the sending of the encrypted secret encryption key K2 by means of the public key Kpubu of the second terminal RSA is done directly from the terminal. access to the second terminal 11, without going through the authorization management server 50.
- the method for obtaining the list of sensitive data is not incompatible with a "conventional" access to the list of passwords Ist _pwd by the user.
- classic is meant the user entering on his terminal the master master password _pwd in order to decrypt the list of passwords locally. This mode is interesting during a network access problem.
- An access terminal 10 according to an exemplary embodiment of the invention, will now be described in relation with FIG. 9.
- the access terminal 10 is a user terminal, arranged to allow a user to obtain a list of at least one sensitive data, said sensitive data item being intended to be used to access a remote service.
- the sensitive data is for example a password, a bank account number, etc.
- the access terminal 10 is arranged to implement an initial configuration and create the list of sensitive data.
- the access terminal 10 comprises:
- processing unit 101 or "CPU” for "Central Processing Unit"
- a volatile memory 102 or "RAM” (for "Random Access Memory”) and a ROM 103 of the “ROM” type (of “Read Only Memory”) and a storage memory 104 flash memory type or "EEPROM” (for "Electrically-Erasable Programmable Read Only Memory).
- RAM Random Access Memory
- ROM 103 of the "ROM” type (of "Read Only Memory”)
- storage memory 104 flash memory type or "EEPROM” (for "Electrically-Erasable Programmable Read Only Memory).
- the volatile memory 102 is arranged to execute code instructions, store variables, and so on.
- the storage memory 104 is arranged to store data.
- the storage memory 104 stores an application for obtaining the list of sensitive data which comprises code instructions for implementing the steps of the method of obtaining the list of at least one sensitive data item as described above;
- the mobile terminal 10 also comprises:
- sending means 105 arranged to send to the authorization management server 50 a request to obtain the list of sensitive data encrypted AES (K2, Ist _pwd).
- the list of sensitive data is encrypted by means of a secret encryption key K2 and stored on the storage server 70.
- the means 105 are arranged to implement the steps E10, E40 and E70 of the process for obtaining a list of at least one sensitive data, as described above;
- first reception means 106 arranged to receive from the authorization management server a message comprising a decryption value of the list, said message being received only after a successful authentication of the user by means of a security module of a second terminal.
- the decryption value is the secret key master master _pwd.
- the secret encryption key K2 of the sensitive data list is encrypted by means of the intermediate secret key K1
- the decryption value is the intermediate secret key K1.
- the value of decryption is the secret key of KlOp protection.
- the receiving means 106 are arranged to implement the steps E13, E43 and E73 of the method for obtaining a list of at least one sensitive data, as described above;
- the second receiving means 107 arranged to receive from the storage server the list of encrypted sensitive data.
- the second reception means 107 are arranged to implement the steps E15, E45 and E75 of the method of obtaining a list of at least one sensitive data as described above. ;
- decryption means 108 arranged to decrypt the list of sensitive data by means of the secret key, said secret key being computable by means of the decryption value.
- the decryption means 108 are arranged to implement the steps E16, E46 and E76 of the method for obtaining a list of at least one sensitive data item as described above.
- the access terminal 10 also comprises means for generating and sending parameters (not shown in FIG. 9) arranged to generate the data necessary to obtain the list of sensitive data encrypted and to send some of these data to the authorization management server 50 and the storage server 70, and erasing means, arranged to delete from the access terminal 10 parameters used to generate the data necessary to obtain the list of sensitive data, such as secret keys.
- the access terminal 10 comprises transmission means (not shown in FIG. 9), arranged to transmit to the authorization management server 50 the secret encryption key K2 protected.
- the secret key thus protected is intended to be transmitted by the authorization management server 50 to a new access terminal, so that it can obtain the list of at least one sensitive data.
- the sending means 105, the receiving means 106 and the receiving means 107 and deciphering means 108 are preferably software modules comprising software instructions for executing the steps of the previously identified problem identification method. described.
- the invention therefore also relates to:
- the software modules can be stored in, or transmitted by, a data carrier.
- a data carrier This may be a hardware storage medium, for example a CD-ROM, a magnetic diskette or a hard disk, or a transmission medium such as a signal or a telecommunications network.
- the system 90 comprises a server 50 of authorization management and a storage server 70.
- the system 90 comprises:
- processing unit 91-1 specific to the authorization management server 60 and a processing unit 91-2 specific to the storage server 70,
- a set of memories including a volatile memory 92-1, specific to the authorization management server 60 and a volatile memory 92-2 specific to the storage server 70, a memory 93-1 specific to the authorization management server 60 and a read-only memory 93-2 specific to the storage server 70, a storage memory 94-1 of the flash memory or EEPROM type specific to the authorization management server 60 and a storage memory 94-2 Specific to the storage server 70.
- the volatile memories 92-1, 92-2 are arranged to execute code instructions, store variables, and so on.
- the storage memories 94-1, 94-2 are arranged to store data.
- the storage memories 94-1, 94-2 are arranged for storing software modules that comprise code instructions for implementing the steps of the method for obtaining the list of sensitive data as described above and which are executed respectively by the authorization management server 50 and the storage server 70.
- the system 90 further comprises:
- first receiving means 95 arranged to receive from the first terminal a request for obtaining the encrypted sensitive data list (AES (K2, Ist_pwd)), said list being encrypted by means of a secret key of encryption (K2),
- the first 96 sending means arranged to send a request for authentication of the user to an authentication server (70),
- second reception means 97 arranged to receive an authentication result from the authentication server
- second sending means arranged to send to the first terminal, when the authentication result is positive, a message comprising a decryption value (master _pwd, K1, KlOp) of the list and the list of sensitive data encrypted; by means of the encryption key (K2), said encryption key being computable by means of the decryption value.
- the first receiving means 95, the first sending means 96, the second receiving means 97 and the second sending means 98 are preferably software modules comprising software instructions for executing the steps of the method of obtaining the data. a list of at least one sensitive data previously described.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Storage Device Security (AREA)
Abstract
L'invention concerne un procédé d'obtention d'une liste d'au moins une donnée sensible, une donnée sensible de la liste étant destinée à être utilisée pour accéder à un service à partir d'au moins un premier terminal (10) d'un utilisateur, ledit utilisateur possédant un deuxième terminal (20) équipé d'un module de sécurité, le procédé comprenant les étapes suivantes, mises en œuvre par le premier terminal : - envoi (E10, E40, E70) à un serveur (50) de gestion des autorisations d'une requête d'obtention de la liste de données sensibles chiffrée (AES(K2, lst_pwd)), ladite liste étant chiffrée au moyen d'une clé secrète de chiffrement (K2) et stockée sur un serveur de stockage (70), - réception (E13, E43, E73) en provenance du serveur de gestion des autorisations d'un message comprenant une valeur de déchiffrement (master_pwd, K1, K10p) de la liste, ledit message n'étant reçu qu'après une authentification réussie de l'utilisateur au moyen du module de sécurité du deuxième terminal, - réception (E15, E45, E75), en provenance du serveur de stockage de la liste de mots de passe chiffrée, et - déchiffrement (E16, E46, E76) de ladite liste au moyen de la clé secrète, ladite clé secrète étant calculable au moyen de la valeur de déchiffrement.
Description
Procédé d'obtention d'une liste d'au moins une donnée sensible
La présente invention concerne un procédé d'obtention d'une liste d'au moins une donnée sensible, une donnée sensible étant destinée à être utilisée pour accéder à un service. Elle trouve une application particulièrement intéressante dans la sécurisation de l'accès à des services distants.
Il est habituel pour un utilisateur, lors de l'accès à un service soumis à autorisation, de fournir une donnée sensible tel un mot de passe, connu d'une part de l'utilisateur et d'autre part du service. La multiplication des services soumis à contrôle d'accès nécessite pour l'utilisateur de mémoriser un nombre de plus en plus important de mots de passe. Des logiciels ont ainsi été proposés afin d'aider l'utilisateur dans la gestion sécurisée de ses mots de passe. De tels logiciels sont appelés gestionnaires de mots de passe (ou « password manager » en anglais). Par exemple, un tel logiciel permet de mémoriser sur un dispositif de l'utilisateur une liste chiffrée comprenant l'ensemble de ses mots de passe, d'extraire de la liste, sur commande de l'utilisateur, un mot de passe propre à un service et de le transmettre lors de l'accès à ce service de manière transparente pour l'utilisateur. Pour accéder à un mot de passe de la liste, l'utilisateur doit saisir un mot de passe associé à la liste. Ainsi, pour accéder et utiliser un des mots de passe de la liste, l'utilisateur n'a à mémoriser qu'un seul mot de passe, celui qui permet d'accéder à la liste de ses mots de passe. Il est connu cependant qu'un mot de passe présente certaines contraintes : il est nécessaire que le mot de passe soit suffisamment long pour être sûr mais il ne faut pas que sa saisie et sa mémorisation soient rédhibitoires pour l'utilisateur. L'utilisateur peut faire le choix d'un mot de passe simple mais cela nuit à la sécurité du système. Un des buts de l'invention est de remédier à des insuffisances/inconvénients de l'état de la technique et/ou d'y apporter des améliorations.
A cette fin, l'invention propose un procédé d'obtention d'une liste d'au moins une donnée sensible, une donnée sensible de la liste étant destinée à être utilisée pour accéder à un service à partir d'au moins un premier terminal d'un utilisateur, ledit utilisateur possédant un deuxième terminal équipé d'un module de sécurité, le procédé comprenant les étapes suivantes, mises en œuvre par le premier terminal :
- envoi à un serveur de gestion des autorisations d'une requête d'obtention de la liste de données sensibles chiffrée, ladite liste étant chiffrée au moyen d'une clé secrète de chiffrement et stockée sur un serveur de stockage,
- réception en provenance du serveur de gestion des autorisations d'un message comprenant une valeur de déchiffrement de la liste, ledit message n'étant reçu qu'après une authentification réussie de l'utilisateur au moyen du module de sécurité du deuxième terminal,
- réception, en provenance du serveur de stockage de la liste de mots de passe chiffrée, et
- déchiffrement de ladite liste au moyen de la clé secrète, ladite clé secrète étant calculable au moyen de la valeur de déchiffrement.
Le procédé permet à un utilisateur de récupérer au moyen du premier terminal une donnée sensible d'une liste de données sensibles stockée de manière sécurisée sur un serveur de stockage distant, la donnée sensible étant destinée à être utilisée par l'utilisateur pour accéder à un service depuis son terminal. L'accès à la donnée sensible est conditionné par une authentification positive de l'utilisateur au moyen d'un module de sécurité d'un terminal mobile de l'utilisateur. Ainsi, pour son accès au service, authentification de l'utilisateur est une authentification à deux facteurs. L'accès au service se fait donc avec un niveau de sécurité plus élevé qu'un accès conditionné par la simple fourniture d'un mot de passe. Par ailleurs, grâce au procédé décrit ici, un mot de passe habituellement utilisé pour la gestion de listes de données sensibles est remplacé par un simple code PIN, facile à mémoriser, sans que la sécurité du système ne soit dégradée. La saisie du code PIN est liée à authentification mise en œuvre au moyen du terminal mobile de l'utilisateur. Un code PIN est en général court et composé habituellement de quatre chiffres ; il est donc plus facile à mémoriser qu'un mot de passe, qui pour être sûr comprend en général différents types de caractères, tels que des lettres, des chiffres, des caractères de ponctuation et comprend en général au moins huit caractères. La gestion des données sensibles et leur utilisation dans le cadre de l'accès à un service est donc plus convivial que des solutions connues. Par ailleurs, la liste de données sensibles étant stockée dans le réseau, la sécurité de cette liste est a priori meilleure que si elle était stockée sur le terminal de l'utilisateur.
Selon un exemple de réalisation, le serveur de gestion des autorisations génère et envoie au serveur de stockage et au premier terminal un identifiant temporaire, ledit identifiant temporaire étant utilisé par le serveur de stockage pour autoriser l'envoi au premier terminal de la liste de données sensibles chiffrées.
L'identifiant temporaire est avantageusement utilisé afin d'établir un lien entre des données relatives à un même utilisateur et qui circulent sur deux canaux de communication distincts. Cet identifiant temporaire permet ainsi de délivrer la liste de données sensibles au terminal de l'utilisateur qui en a fait la demande en offrant au serveur de stockage une
confirmation que l'utilisateur a été préalablement authentifié par le serveur de gestion des autorisations.
Dans un exemple de réalisation, le procédé comprend une phase de configuration les étapes suivantes :
- génération de la clé de chiffrement,
- génération et chiffrement au moyen de la clé de chiffrement de la liste de données sensibles,
- envoi au serveur de gestion des autorisations de la liste de données sensibles chiffrée si une authentification de l'utilisateur au moyen du module de sécurité du deuxième terminal est positive,
- effacement sur le premier terminal de la clé de chiffrement et de la liste de données sensibles.
La clé de chiffrement de la liste de mots de passe générée et utilisée par le premier terminal pour générer la liste de données sensibles chiffrée n'est pas stockée sur le terminal de l'utilisateur de manière durable : elle est effacée du premier terminal après une phase d'initialisation. Cela limite les risques d'obtention de cette clé par une personne malintentionnée sur un terminal de l'utilisateur, et donc d'accès à la liste de données sensibles de l'utilisateur.
Avantageusement, dans un deuxième exemple de réalisation, le procédé comprend en outre les étapes de :
- chiffrement de la clé de chiffrement au moyen d'une clé secrète intermédiaire, et envoi de la clé secrète intermédiaire au serveur de gestion des autorisations, et
- effacement sur le premier terminal de la clé secrète intermédiaire si authentification de l'utilisateur au moyen du module de sécurité du deuxième terminal est positive.
Ce deuxième mode de réalisation permet de pallier des attaques au cours desquelles un attaquant qui aurait accès au serveur de gestion des autorisations et au serveur de stockage récupérerait les données nécessaires à l'obtention de la clé secrète de chiffrement utilisée pour chiffrer la liste de données sensibles et stockées sur le serveur de gestion des autorisations et le serveur de stockage. Avec le mot de passe maître stocké sur le serveur de gestion des autorisations et utilisé pour dériver la clé de chiffrement, et la liste de mots de passe chiffrée stockée sur le serveur de stockage, il accéderait sans difficulté à la liste de mots de passe de l'utilisateur. Une clé intermédiaire est utilisée pour chiffrer la clé secrète de chiffrement de la liste. A défaut d'un accès à la clé de chiffrement chiffrée au moyen de cette clé intermédiaire et stockée chiffrée sur le terminal de l'utilisateur, l'attaquant ne peut déchiffrer la liste des données sensibles de l'utilisateur.
Selon un exemple de réalisation de ce deuxième mode, l'utilisateur étant équipé d'un troisième terminal, il comprend les étapes suivantes mises en œuvre par le premier et le troisième terminal :
- envoi au serveur de gestion des autorisations, en provenance du troisième terminal, d'une demande d'enregistrement comprenant un identifiant du troisième terminal,
- réception par le premier terminal, suite à une authentification réussie de l'utilisateur au moyen du module de sécurité du deuxième terminal, d'un message comprenant l'identifiant du troisième terminal,
- envoi par le premier terminal au serveur de gestion des autorisations du chiffré de la clé de chiffrement au moyen du secret intermédiaire,
- réception par le troisième terminal en provenance du serveur de gestion des autorisations du chiffré de la clé de chiffrement au moyen du secret intermédiaire.
Le procédé permet ainsi d'enregistrer d'autres terminaux de l'utilisateur, c'est-à-dire des terminaux distincts du premier terminal qui a procédé à la configuration initiale du système afin que l'utilisateur accède également à la liste de mots de passe chiffrée stockée sur le serveur de stockage à partir de ses autres terminaux. L'enregistrement d'autres terminaux se fait de manière aisée au moyen d'échanges avec le réseau.
Avantageusement, dans un troisième exemple de réalisation, la valeur de déchiffrement est une clé secrète de protection d'une clé privée, destinée à chiffrer une clé privée d'un couple clé privée/clé publique, le procédé comprenant en outre les étapes suivantes :
- chiffrement de la clé secrète de chiffrement au moyen de la clé publique,
- chiffrement de la clé privée au moyen de la clé secrète de protection,
- envoi de la clé secrète de protection au serveur de gestion des autorisations
- effacement sur le premier terminal de la clé secrète de protection, de la clé privée (Kpriv10).
Cet exemple de réalisation permet de pallier des attaques au cours desquelles un attaquant accéderait non seulement aux données stockées sur le serveur de gestion des autorisations et sur le serveur de stockage, mais également aux données qui transiteraient par le serveur de gestion des autorisations. Dans ce troisième exemple, la clé secrète de chiffrement est chiffrée pour un terminal, au moyen d'une clé publique générée pour ce terminal et la clé privée associée est protégée au moyen d'une clé secrète de protection qui est transmise puis stockée dans le réseau. Le chiffré de la clé secrète au moyen de la clé publique est stocké sur le terminal. La clé privée, la clé secrète de chiffrement et la clé secrète de protection de la clé privée sont effacées du terminal en fin d'initialisation. Ainsi, une fois encore la sécurité est répartie entre le terminal et le réseau.
Avantageusement, l'utilisateur étant équipé d'un troisième terminal, il comprend les étapes suivantes mises en œuvre par le premier et le troisième terminal :
- obtention par le troisième terminal d'un deuxième couple clé privée/clé publique et d'une deuxième clé de protection,
- envoi au serveur de gestion des autorisations, en provenance du troisième terminal, d'un message d'enregistrement comprenant la deuxième clé publique et la deuxième clé de protection,
- réception par le premier terminal, suite à une authentification réussie de l'utilisateur au moyen du module de sécurité du deuxième terminal, d'un message comprenant la clé de protection du premier terminal et la clé publique du troisième terminal (Kpub ), ladite clé de protection étant destinée à être utilisée par le premier terminal pour déchiffrer la clé secrète de chiffrement,
- envoi par le premier terminal au serveur de gestion des autorisations d'un chiffré de la clé de chiffrement au moyen de la clé publique du troisième terminal,
- réception par le troisième terminal en provenance du serveur de gestion des autorisations de la clé secrète de chiffrement chiffrée au moyen de la clé publique du troisième terminal.
Il est possible pour le deuxième exemple de réalisation, d'enregistrer de nouveaux terminaux qui ne possèdent pas a priori la clé secrète de chiffrement chiffrée.
L'invention concerne aussi un procédé de fourniture d'une liste d' au moins une donnée sensible, une donnée sensible de la liste étant destiné à être utilisée pour accéder à un service à partir d' au moins un premier terminal d'un utilisateur, ledit utilisateur possédant un deuxième terminal équipé d'un module de sécurité, le procédé comprenant les étapes suivantes, mises en œuvre par un système comprenant un serveur de gestion d'autorisations et un serveur de stockage :
- réception par le serveur de gestion des autorisations en provenance du premier terminal, d'une requête d'obtention de la liste de données sensibles chiffrée, ladite liste étant chiffrée au moyen d'une clé secrète de chiffrement,
- envoi d'une requête d' authentification de l'utilisateur à un serveur d' authentification, - réception du serveur d' authentification d'un résultat d' authentification,
- si le résultat d' authentification est positif, envoi du serveur de gestion des autorisations au premier terminal d'un message comprenant une valeur de déchiffrement de la liste, et envoi au premier terminal de la liste de données sensibles chiffrée au moyen de la clé de chiffrement, ladite clé de chiffrement étant calculable au moyen de la valeur de déchiffrement.
L'invention porte également sur un terminal utilisateur, agencé pour obtenir une liste d'au moins une donnée sensible, une donnée sensible de la liste étant destiné à être utilisée pour accéder à un service, ledit terminal comprenant :
- des moyens d'envoi, agencés pour envoyer à un serveur (50) de gestion des autorisations une requête d'obtention de la liste de données sensibles chiffrée, ladite liste étant chiffrée au moyen d'une clé secrète de chiffrement et stockée sur un serveur de stockage,
- des premiers moyens de réception, agencés pour recevoir en provenance du serveur de gestion des autorisations un message comprenant une valeur de déchiffrement de la liste, ledit message n'étant reçu qu'après une authentification réussie de l'utilisateur au moyen d'un module de sécurité d'un deuxième terminal,
- des deuxièmes moyens de réception, agencés pour recevoir en provenance du serveur de stockage la liste de mots de passe chiffrée, et
- des moyens de déchiffrement, agencés pour déchiffrer ladite liste au moyen de la clé secrète, ladite clé secrète étant calculable au moyen de la valeur de déchiffrement.
L'invention concerne aussi un programme d'ordinateur sur un support de données et chargeable dans la mémoire d'un ordinateur, le programme comprenant des instructions de code pour l'exécution des étapes du procédé d'obtention d'une liste d'au moins une donnée sensible tel que décrit précédemment, lorsque le programme est exécuté sur ledit ordinateur.
L'invention concerne également un support de données dans lequel est enregistré le programme tel que décrit ci-dessus.
Enfin, l'invention porte également sur un système comprenant un serveur de gestion d'autorisations et un serveur de stockage, ledit système étant agencé pour fournir à un premier terminal une liste d'au moins une donnée sensible, une donnée sensible de la liste étant destinée à être utilisée pour accéder à un service à partir d' au moins le premier terminal,
le système comprenant :
- des premiers moyens de réception, agencés pour recevoir en provenance du premier terminal une requête d'obtention de la liste de données sensibles chiffrée, ladite liste étant chiffrée au moyen d'une clé secrète de chiffrement,
- des premiers moyens d'envoi, agencés pour envoyer une requête d' authentification de l'utilisateur à un serveur d' authentification,
- des deuxièmes moyens de réception, agencés pour recevoir en provenance du serveur d' authentification un résultat d' authentification,
- des deuxièmes moyens d'envoi, agencés pour envoyer au premier terminal, lorsque le résultat d' authentification est positif, un message comprenant une valeur de déchiffrement de la
liste et la liste de données sensibles chiffrée au moyen de la clé de chiffrement, ladite clé de chiffrement étant calculable au moyen de la valeur de déchiffrement.
D'autres caractéristiques et avantages de la présente invention seront mieux compris de la description et des dessins annexés parmi lesquels :
- la figure 1 présente les étapes d'un procédé d'obtention d'une liste d'au moins une donnée sensible, selon un premier exemple de réalisation ;
- la figure 2 présente les étapes d'un procédé de configuration initiale d'un système d'obtention d'une liste d'au moins une donnée sensible, selon un premier exemple de réalisation ;
- la figure 3 présente les étapes d'un procédé de configuration initiale d'un système d'obtention d'une liste d'au moins une donnée sensible, selon un deuxième exemple de réalisation ;
- la figure 4 présente les étapes d'un procédé d'obtention d'une liste d'au moins une donnée sensible, conforme au deuxième exemple de réalisation ;
- la figure 5 présente les étapes d'un procédé d'enregistrement d'un nouveau terminal pour la mise en œuvre du procédé d'obtention d'une liste d'au moins une donnée sensible, selon le deuxième exemple de réalisation ;
- la figure 6 présente les étapes d'un procédé de configuration initiale d'un système d'obtention d'une liste d'au moins une donnée sensible, selon un troisième exemple de réalisation ;
- la figure 7 présente les étapes d'un procédé d'obtention d'une liste d'au moins une donnée sensible, conforme au troisième exemple de réalisation ;
- la figure 8 présente les étapes d'un procédé d'enregistrement d'un nouveau terminal pour la mise en œuvre du procédé d'obtention d'une liste d'au moins une donnée sensible, selon le troisième exemple de réalisation ;
- la figure 9 est une représentation schématique d'un terminal d'utilisateur, agencé pour mettre en œuvre les étapes du procédé d'obtention d'une liste d'au moins une donnée sensible, selon un exemple de réalisation ;
- la figure 10 est une représentation schématique d'un système comprenant un serveur de gestion des autorisations et un serveur de stockage, apte à délivrer une liste d'au moins une donnée sensible, selon un exemple de réalisation.
Les étapes d'un procédé d'obtention d'une liste d'au moins une donnée sensible, selon un premier exemple de réalisation, vont maintenant être décrites en relation avec la figure 1.
Un utilisateur (non représenté) est équipé d' au moins un terminal d'accès 10 à un service et d'un terminal mobile 20. Le terminal d' accès 10 est par exemple un équipement de type PC (de l'anglais « Personal Computer ») destiné à être utilisé pour accéder à des services. Dans cet exemple, le terminal d' accès 10 met en œuvre un procédé de configuration initiale destiné à initialiser des données initiales d'un système d'obtention d'une liste de données sensibles. A ce titre il est qualifié également de terminal maître. Le terminal d' accès 10 est agencé pour accéder à un serveur 50 de gestion d' autorisations à travers un réseau, par exemple le réseau Internet. Le terminal mobile 20 est par exemple un terminal intelligent (on parle de « smartphone » en anglais) qui comprend un élément de sécurité 201, par exemple une carte « USIM » (de l'anglais « Universal Subscriber Identification Module »). L'élément de sécurité 201 constitue un environnement sécurisé dans lequel des applications et des données sont stockées de manière sécurisée. Dans un exemple de réalisation, le terminal mobile 20 est utilisé par l'utilisateur pour accéder à un service. Le terminal mobile 20 est donc dans ce cas le terminal d'accès. Le terminal mobile 20 est agencé pour authentifier l'utilisateur du terminal mobile 20 auprès d'un serveur d'authentification 60 du réseau au moyen de l'élément de sécurité 201.
Le serveur 50 de gestion d'autorisations est agencé pour commander, suite à une requête d'obtention de la liste reçue du terminal d'accès 10, une demande d'authentification de l'utilisateur auprès du serveur d'authentification 60 et pour attribuer à l'utilisateur, en cas de succès de authentification, un identifiant temporaire tmpID, propre à une session courante et à l'utilisateur, qu'il associe dans cet exemple à un mot de passe maître master _pwd propre à l'utilisateur. Le mot de passe maître master _pwd et l'identifiant temporaire tmpID associés à l'utilisateur sont destinés à être utilisés par l'utilisateur pour l'obtention auprès d'un serveur de stockage 70 d'une liste des données sensibles chiffrée, notée AES(K2, Ist _pwd) et pour le déchiffrement de cette liste. L' architecture du serveur de stockage 70 est par exemple conforme à une architecture d'informatique dans le nuage (on parle habituellement d' architecture en « cloud Computing » en anglais). Dans l'exemple de réalisation décrit ici les données sensibles sont des mots de passe destinés à accéder à des services. L'invention n'est bien sûr pas limitée à des mots de passe et s'applique également à d'autres données sensibles, telles que des numéros de compte bancaire, etc.
On suppose que dans une phase initiale de configuration, décrite en relation avec la figure 2, il a été installé sur le serveur de stockage 70 une liste chiffrée AES(K2, Ist _pwd) d' au moins un mot de passe associée à l'utilisateur. Chacun des mots de passe de la liste est destiné à être utilisé par l'utilisateur pour accéder à un service donné. La liste de mots de passe chiffrée AES(K2, Ist _pwd) a été obtenue en appliquant un algorithme de chiffrement symétrique à la liste
de mots de passe et à une clé secrète de chiffrement K2. L'algorithme de chiffrement symétrique est par exemple l'algorithme « AES » (de l'anglais « Advanced Encryption Standard »). L'invention n'est bien sûr pas limitée à cet algorithme. La clé secrète de chiffrement K2 a par exemple été obtenue en appliquant un algorithme de dérivation de clés au mot de passe maître master _pwd et à une valeur initiale sait, appelée germe, générée aléatoirement. L'algorithme de dérivation de clés est par exemple l'algorithme « PBKDF2 » (de l'anglais « Password Based Key Dérivation Function, version 2 »). On suppose que durant la phase initiale de configuration, le germe sait a été installé sur le serveur de stockage 70 et le mot de passe maître master _pwd, utilisé pour générer la clé secrète de chiffrement K2, sur le serveur 50 de gestion des autorisations.
Dans une étape initiale E10 de demande d'obtention à la liste, l'utilisateur, plus précisément le terminal d'accès 10 de l'utilisateur, envoie au serveur 50 de gestion des autorisations une requête initiale REQ_INIT de demande d'obtention de liste. La requête initiale REQ_INIT comprend un identifiant userlD de l'utilisateur. L'identifiant userlD est par exemple l'adresse e-mail de l'utilisateur, un numéro de téléphone de la forme « MSISDN » (de l'anglais « Mobile Station ISDN Number »), etc.
Dans une phase suivante d'authentification de l'utilisateur, le serveur 50 de gestion des autorisations envoie au serveur d'authentification 60 au cours d'une étape El i de demande d'authentification, une requête d'authentification REQ_AUTH qui comprend l'identifiant userlD de l'utilisateur. Le serveur d'authentification 60 déclenche dans une étape suivante E100 une authentification de l'utilisateur en envoyant au terminal mobile 20, plus précisément au module de sécurité 201 du terminal 20, un message court sécurisé (on parle habituellement de « SMS » pour « Short Message Service » en anglais). La réception de ce message provoque l'apparition sur l'écran du terminal 20 d'un message de demande de saisie d'un code d'identification personnel de l'utilisateur (ou code « PIN », pour « Personal Identification Number »). Dans une étape suivante E101 de saisie du code PIN, l'utilisateur saisit son code personnel d'identification. Le module de sécurité 201 vérifie le code PIN saisi. Si le code est égal à un code enregistré dans le module de sécurité 201 alors authentification a réussi. Dans une étape El 02 d'envoi d'un résultat d'authentification, le module de sécurité 201 envoie au serveur d'authentification 60, via le terminal mobile 20, un message signé comprenant un résultat d'authentification RES_AUTH indiquant si authentification de l'utilisateur a réussi. Le résultat d'authentification RES_AUTH est retransmis par le serveur d'authentification 60 au serveur 50 de gestion des autorisations dans une étape El 03 de transmission du résultat d'authentification. A ce stade, le serveur 50 de gestion des autorisations a l'assurance qu'une
authentification de l'utilisateur a eu lieu, et que le résultat de cette d' authentification correspond à la valeur RES_AUTH qu'il a reçue.
Ainsi, le serveur 50 de gestion des autorisations délègue au serveur d' authentification 60 authentification de l'utilisateur. La méthode d' authentification décrite au moyen des étapes E100 à E103 est un exemple d' authentification de l'utilisateur par le serveur d' authentification 60. Elle est réputée sûre. Bien sûr, toute autre méthode d' authentification qui permet au serveur 50 de gestion d'autorisations de vérifier que l'utilisateur est bien celui qu'il prétend être peut être utilisée.
Dans une étape suivante E12 de test, le serveur 50 de gestion des autorisations vérifie le résultat d' authentification RES_AUTH. Dans un premier cas où le résultat d' authentification RES_AUTH est négatif (branche « nok » sur la figure 1), le procédé s'arrête ; ce cas correspond à un échec de authentification de l'utilisateur. Dans un second cas où le résultat d' authentification RES_AUTH est positif (branche « ok » sur la figure 1), correspondant au cas où authentification a réussi, le serveur 50 de gestion des autorisations génère et envoie au serveur de stockage 70 dans une étape E13 de génération et d'envois, un identifiant temporaire tmpID. L'identifiant temporaire tmpID est propre à l'utilisateur et à la session courante. L'identifiant temporaire tmpID est comparable à un secret temporaire, utilisable pour une session courante. C'est une valeur générée aléatoirement ou incrémentée à chaque requête d'accès à un service. Le serveur 50 de gestion des autorisations envoie également au terminal d'accès 10 de l'utilisateur un message de génération DATA_GEN comprenant l'identifiant temporaire tmpID ainsi que le mot de passe maître master _pwd.
Dans une étape suivante E14 d'envoi de l'identifiant de transaction, le terminal d'accès 10 envoie au serveur de stockage 70 un message MSG_ID comprenant l'identifiant temporaire tmpID qu'il a reçu au cours de l'étape précédente E14.
Dans une étape suivante E15 d'envoi de matériel, le serveur de stockage 70 envoie au terminal d'accès 10 un message de génération de la liste de mots de passe GEN_LST comprenant le germe sait, la liste des mots de passe chiffrée AES(K2, Ist _pwd), l'identifiant de l'utilisateur userlD et l'identifiant temporaire tmpID.
Dans une étape suivante El 6 de déchiffrement, le terminal d'accès 10 procède au déchiffrement de la liste de mots de passe chiffrée AES(K2, Ist _pwd) qu'il a reçue au cours de l'étape E15. Pour cela, le terminal 10 génère la clé secrète de déchiffrement K2 au moyen du mot de passe maître master _pwd qu'il a reçu du serveur 50 de gestion des autorisations au cours de l'étape E13 et du germe sait qu'il a reçu du serveur de stockage 70 au cours de l'étape E15. Il procède ensuite au déchiffrement de la liste de mots de passe chiffrée AES(K2, Ist _pwd) en appliquant l'algorithme de chiffrement symétrique à la liste reçue chiffrée et à la clé de
déchiffrement K2 qu'il a calculée. Au terme de cette étape, la liste de mots de passe Ist _pwd est accessible sur le terminal d' accès 10. Le terminal d'accès 10 peut alors utiliser un des mots de passe pour accéder à un service donné.
Le procédé d'obtention d'une liste d' au moins une donnée sensible, ici un mot de passe, s'intègre dans un procédé global d'accès à au moins un service conditionné par la fourniture d'un mot de passe. La demande d'accès à un de ces services déclenche l'exécution du procédé d'obtention de la liste de mots de passe, puis la sélection, parmi les mots de passe de la liste, du mot de passe nécessaire à l'accès à ce service et enfin, l'envoi au service du mot de passe. Ainsi, le procédé d'obtention de la liste de mots de passe peut être utilisé de manière transparente lors de l' accès à des services par l'utilisateur. L'utilisateur accède donc à ses mots de passe stockés à distance grâce à la saisie d'un code PIN uniquement. Un code PIN est en général court et composé habituellement de quatre chiffres ; il est donc plus facile à mémoriser qu'un mot de passe, qui pour être sûr comprend en général différents types de caractères, tels que des lettres, des chiffres, des caractères de ponctuation et comprend en général au moins huit caractères. Par ailleurs, l'authentification de l'utilisateur pour son accès au service est une authentification à deux facteurs du fait de l'authentification réalisée au moyen de son terminal mobile 20. L'accès au service se fait donc avec un niveau de sécurité plus élevé qu'un accès conditionné par la simple fourniture d'un mot de passe. Dans l'exemple décrit ici, l'utilisateur accède à la liste de ses mots de passe depuis le terminal d'accès 10, qui est le terminal utilisé lors de la phase de configuration. Cependant, l'utilisateur peut obtenir la liste de ses mots de passe depuis d' autres terminaux qui lui appartiennent, dès lors que ceux-ci sont adaptés pour mettre en œuvre les étapes du procédé d'obtention d'une liste d'au moins une donnée sensible tel que décrit précédemment.
L'identifiant temporaire tmpID permet d'associer les échanges entre le terminal d' accès 10 et le serveur de stockage 70 aux échanges entre le terminal 10 et le serveur 50 de gestion des autorisations. En effet, ces échanges sont a priori distincts, puisque sur deux canaux de communication différents, et l'identifiant temporaire tmpID permet de les relier afin d'envoyer la liste de mots de passe chiffrée au bon terminal, c'est-à-dire au terminal qui en a fait la demande.
A noter que les échanges entre les différentes entités, en l'espèce le terminal d'accès 10, le serveur 50 de gestion des autorisations, le serveur de stockage 70 sont sécurisés. Par exemple le protocole « TLS » (de l'anglais « Transport Layer Security ») est utilisé. Il garantit la confidentialité et l'intégrité des données échangées et l' authentification mutuelle des entités impliquées.
Les étapes d'un procédé de configuration initiale, pour le premier exemple de réalisation vont maintenant être décrites en relation avec la figure 2. Le procédé de configuration initiale permet de configurer les différents équipements qui constituent un système d'obtention de la liste d' au moins une donnée sensible.
Dans étape initiale E20 de génération de paramètres et d'envoi, l'utilisateur exécute une application de gestion de sa liste de mots de passe chiffrée sur un de ses terminaux, appelé terminal maître. On suppose que le terminal maître est le terminal d'accès 10. On suppose par ailleurs que l'utilisateur a saisi une liste Ist _pwd, stockée sur son terminal 10, comprenant au moins un mot de passe pour l'accès à au moins un service, et que chacun des mots de passe a été enregistré auprès d'un serveur (non représenté sur la figure 2) qui délivre le service associé. L'application demande à l'utilisateur de saisir le mot de passe maître master _pwd. L'application procède au chiffrement de la liste de mots de passe au moyen du mot de passe maître master _pwd saisi par l'utilisateur. A cette fin, l'application génère aléatoirement le germe sait, puis dérive la clé secrète de chiffrement K2. La clé secrète K2 est générée en appliquant un algorithme de dérivation de clés au mot de passe maître master _pwd et au germe sait. La liste de mots de passe Ist _pwd est ensuite chiffrée en appliquant l'algorithme de chiffrement symétrique à la liste de mots de passe et à la clé secrète K2. La liste de mots de passe chiffrée AES(K2, Ist _pwd) est disponible sur le terminal 10 de l'utilisateur. En fin d'étape E20, le terminal 10 envoie au serveur 50 de gestion des autorisations un message d'enregistrement MSG_ENREG comprenant l'identifiant de l'utilisateur userlD et le mot de passe maître master _pwd. L'identifiant est par exemple une adresse e-mail de l'utilisateur ou un numéro de téléphone sous la forme MSISDN.
Dans une étape suivante E21 d' authentification, le serveur 50 de gestion des autorisations déclenche une procédure d' authentification de l'utilisateur. Plus précisément, le serveur 50 délègue authentification au serveur d' authentification 60. Il utilise par exemple la même méthode que celle décrite précédemment. Ainsi, dans l'étape E21 de demande d' authentification, le serveur 50 de gestion des autorisations envoie au serveur d' authentification 60 une requête d' authentification REQ_AUTH comprenant l'identifiant userlD de l'utilisateur, et les étapes E100 à E103 décrites précédemment sont exécutées afin d'authentifier l'utilisateur au moyen de son terminal mobile 20.
Dans une étape E22 de test, le serveur 50 de gestion des autorisations vérifie si authentification de l'utilisateur a réussi. Dans un premier cas où authentification a échoué, correspondant au cas où le résultat d' authentification RES_AUTH reçu du serveur 60 d' authentification est négatif (cas « nok » sur le figure 2), le procédé s'arrête. Dans un deuxième cas où authentification a réussi, correspondant au cas où le résultat d' authentification
RES_AUTH est positif (branche « ok » sur la figure 2), dans une étape E23 de mémorisation, de génération et d'envoi, le serveur 50 de gestion des autorisations mémorise l'identifiant de l'utilisateur userlD en association avec le mot de passe maître master _pwd. Il génère également l'identifiant temporaire tmpID et le transmet d'une part au serveur de stockage 70 et d'autre part au terminal 10.
Dans une étape suivante E24 d'envoi, le terminal 10 envoie au serveur de stockage 70 l'identifiant temporaire tmpID, l'identifiant de l'utilisateur userlD, le germe sait et la liste AES(K2, Ist _pwd) de mots de passe chiffrée au moyen de la clé secrète de chiffrement K2.
Dans une étape finale E25 d'effacement, le terminal 10 efface la clé secrète de chiffrement K2, le mot de passe maître master _pwd, ainsi que le germe sait qu'il a utilisés pour cette configuration initiale.
A ce stade, la liste de mots de passe chiffrée AES(K2, Ist _pwd) est enregistrée sur le serveur de stockage 70 ; elle n'est plus disponible sur le terminal 10 utilisé pour la générer.
On remarque que dans l'exemple de réalisation décrit ici, le mot de passe maître master _pwd est stocké en clair sur le serveur 50 de gestion des autorisations. Un attaquant qui parviendrait à accéder au serveur 50 de gestion des autorisations et au serveur de stockage 70 pourrait donc récupérer le mot de passe maître master _pwd, la liste de mots de passe chiffrée AES(K2, Ist _pwd) et pourrait déchiffrer cette liste afin d'obtenir tous les mots de passe de l'utilisateur.
Afin de pallier ce type d'attaque, dans un deuxième exemple de réalisation, une clé secrète intermédiaire, notée Kl est stockée sur le serveur 50 de gestion des autorisations au lieu du mot de passe maître master _pwd. La clé secrète intermédiaire Kl est destinée à être utilisée pour chiffrer la clé de chiffrement K2. La clé de chiffrement K2 chiffrée, notée AES(K1, K2) est alors mémorisée sur le terminal d'accès 10. Ainsi, un attaquant qui accéderait au serveur de stockage 70 et au serveur 50 de gestion des autorisations uniquement, ne pourrait pas déchiffrer la liste de mots de passe chiffrée AES(K2, Ist _pwd) à moins d'obtenir également la clé secrète de chiffrement chiffrée AES(K1, K2) au moyen de Kl qui est mémorisée sur le terminal utilisateur.
La phase de configuration initiale relative au deuxième exemple de réalisation est maintenant décrite en relation avec la figure 3.
Dans une étape initiale E30 de génération de paramètres, il est calculé sur le terminal 10 de l'utilisateur, ou terminal maître, la clé secrète intermédiaire Kl et le germe sait. Par exemple, la clé secrète intermédiaire Kl et le germe sait sont générés aléatoirement. Il est par ailleurs dérivé du mot de passe maître master _pwd saisi par l'utilisateur et du germe sait la clé secrète
de chiffrement K2 et il est calculé un chiffré de la clé de chiffrement K2. Le chiffré de la clé secrète de chiffrement K2, noté AES(K1, K2) est obtenu en appliquant l'algorithme de chiffrement symétrique à la clé secrète de chiffrement K2 et à la clé secrète intermédiaire Kl. Le terminal 10 envoie ensuite au serveur 50 de gestion des autorisations un message d'enregistrement MSG_ENREG comprenant la clé secrète intermédiaire Kl et l'identifiant de l'utilisateur userlD.
Dans une étape suivante E31 de demande d'authentification, le serveur 50 de gestion des autorisations déclenche une authentification de l'utilisateur, conformément à la méthode décrite précédemment en relation avec les étapes E100 à El 03. Dans une étape E32 de test, le serveur 50 de gestion des autorisations vérifie le résultat d' authentification RES_AUTH reçu du serveur d'authentification 60. Si authentification a réussi (branche « ok » sur la figure 3), le serveur 50 de gestion des autorisations enregistre dans une étape suivante E33 d'enregistrement, de génération et d'envois la clé secrète intermédiaire Kl en association avec l'identifiant de l'utilisateur userlD. Le serveur 50 de gestion des autorisations génère également un identifiant temporaire tmpID propre à l'utilisateur et à la liste de mots de passe et l'envoie au serveur de stockage 70 et au terminal 10.
Dans une étape E34 d'envoi, le terminal 10 envoie au serveur de stockage 70 l'identifiant temporaire tmpID, l'identifiant de l'utilisateur userlD, la liste de mots de passe chiffrée AES(K2, Ist _pwd) et le germe sait.
Dans une étape suivante E35 d'effacement, le terminal 10 efface la clé secrète K2, le germe sait, la clé secrète intermédiaire Kl et la liste de mots de passe chiffrée AES(K2, Ist _pwd). A ce stade le terminal 10 a uniquement connaissance du chiffré AES(K1, K2) de la clé de chiffrement K2 au moyen de la clé secrète intermédiaire Kl. Un procédé d'obtention d'une liste d'au moins une donnée sensible, conforme au deuxième exemple de réalisation, va maintenant être décrit en relation avec la figure 4. On suppose qu'une configuration conforme à celle qui a été obtenue suite à l'exécution du procédé de configuration décrit en relation avec la figure 3 a été mise en place.
Dans une étape initiale E40 de demande d'obtention de la liste, l'utilisateur, plus précisément le terminal d'accès 10 de l'utilisateur, envoie au serveur 50 de gestion des autorisations une requête initiale REQ_INIT de demande de liste. La requête initiale REQ_INIT comprend l'identifiant userlD de l'utilisateur.
Dans une étape suivante E41 d'authentification, le serveur 50 de gestion des autorisations déclenche une procédure d'authentification de l'utilisateur. Il utilise par exemple la même méthode que celle décrite précédemment. Ainsi, le serveur 50 de gestion des
autorisations envoie au serveur d' authentification 60 une requête d'authentification REQ_AUTH, et les étapes El 00 à El 03 décrites précédemment sont exécutées afin d' authentifier l'utilisateur au moyen de son terminal mobile 20.
Dans une étape E42 de test, le serveur 50 de gestion des autorisations vérifie le résultat d'authentification RES_AUTH reçu du serveur d'authentification 60. Si authentification réussit (branche « ok » sur la figure 4), le serveur 50 de gestion des autorisations génère et envoie au serveur de stockage 70 dans une étape E43 de génération et d'envois, l'identifiant temporaire tmpID. Le serveur 50 de gestion des autorisations envoie également au terminal d' accès 10 de l'utilisateur un message de génération DATA_GEN comprenant l'identifiant temporaire tmpID et la clé secrète intermédiaire Kl .
Dans une étape suivante E44 d'envoi de l'identifiant de transaction, le terminal d' accès 10 envoie au serveur de stockage 70 un message comprenant l'identifiant temporaire tmpID qu'il a reçu au cours de l'étape précédente E43.
Dans une étape suivante E45 d'envoi de matériel, le serveur de stockage 70 envoie au terminal d'accès 10 un message de génération de la liste de mots de passe GEN_LST comprenant le germe sait, la liste des mots de passe chiffrée AES(K2, Ist _pwd), l'identifiant de l'utilisateur userlD et l'identifiant temporaire tmpID.
Dans une étape suivante E46 de déchiffrement, le terminal d'accès 10 procède au déchiffrement de la liste de mots de passe AES(K2, Ist _pwd) qu'il a reçue chiffrée au cours de l'étape E45. Pour cela, le terminal déchiffre la clé de chiffrement K2 au moyen de la clé secrète intermédiaire Kl qu'il a reçue du serveur 50 de gestion des autorisations au cours de l'étape E43 et du chiffré AES(K1, K2) qu'il a mémorisé. Il procède ensuite au déchiffrement de la liste AES(K2, Ist _pwd) qu'il a reçue chiffrée au cours de l'étape E45 au moyen de la clé de chiffrement K2 ainsi obtenue.
Le terminal d'accès 10 peut alors utiliser un des mots de passe pour accéder à un service donné.
Dans cet exemple de réalisation, la clé secrète intermédiaire Kl est générée initialement sur le terminal d'accès 10, la clé secrète de chiffrement K2 est stockée chiffrée au moyen du secret intermédiaire Kl sur le terminal d'accès 10 et le terminal 10 est utilisé pour accéder à la liste de mots de passe chiffrée. Dans un autre exemple de réalisation, l'utilisateur possède plusieurs terminaux et doit pouvoir accéder à la liste de mots de passe chiffrée AES(K2, Ist _pwd) depuis n'importe lequel de ses terminaux, après que la liste de mots de passe chiffrée ait été générée et enregistrée sur le serveur de stockage 70. Dans ce cas, il est possible d'enregistrer, durant une phase d'enregistrement, un nouveau terminal de l'utilisateur, de
manière à ce que celui-ci obtienne la liste de mots de passe chiffrée, au même titre que le terminal d'accès 10.
Un procédé d'enregistrement d'un nouveau terminal, conforme au deuxième exemple de réalisation va maintenant être décrit en relation avec la figure 5.
L'utilisateur est équipé du terminal d'accès 10, ou terminal maître, grâce auquel il a procédé à l'enregistrement de sa liste de mots de passe chiffrée AES(K2, Ist _pwd) sur le serveur de stockage 70, conformément aux étapes du procédé de configuration décrit en relation avec la figure 3. On suppose que l'utilisateur possède également un deuxième terminal 11, agencé pour accéder à un service et obtenir, pour cet accès la liste de mots de passe chiffrée.
Dans une étape initiale E50 de demande d'enregistrement, l'utilisateur, plus précisément le deuxième terminal 11 envoie au serveur 50 de gestion des autorisations un message d'enregistrement MSG_ENREG comprenant l'identifiant de l'utilisateur userlD et un identifiant DevicelDll du terminal 11. Cet identifiant est par exemple un numéro de série du deuxième terminal 11. Dans une phase suivante d' authentification, le serveur 50 de gestion des autorisations procède à authentification de l'utilisateur, conformément à la méthode décrite précédemment. Il envoie pour ce faire une requête d' authentification REQ_AUTH au serveur d' authentification 60 dans une étape E51 d'envoi d'une requête d' authentification, et les étapes E100 à E103 d' authentification de l'utilisateur décrites précédemment décrites sont exécutées afin d'authentifier l'utilisateur au moyen de son terminal mobile 20.
Le serveur 50 de gestion des autorisations vérifie dans une étape E52 de test si authentification a réussi. Dans un cas où authentification a échoué, correspondant au cas où le résultat d' authentification RES_AUTH reçu du serveur d' authentification 60 est négatif (branche « nok » sur la figure 5), le procédé s'arrête. Dans un cas où authentification a réussi, correspondant au cas où le résultat d' authentification RES_AUTH reçu du serveur d' authentification 60 est positif (branche « ok » sur la figure 5), le serveur 50 de gestion des autorisations envoie au terminal 10, dans une étape E53 d'envoi, un message comprenant l'identifiant DevicelDll du deuxième terminal 11.
Dans une étape suivante E54 d'envoi de matériel, le terminal 10 envoie au serveur 50 de gestion des autorisations un message comprenant l'identifiant DevicelDll du deuxième terminal et le chiffré de la clé de chiffrement K2 au moyen de la clé secrète intermédiaire Kl, noté AES(K1, K2).
Dans une étape suivante E55 de retransmission, le serveur 50 de gestion des autorisations 50 retransmet le message reçu au deuxième terminal 11. A noter que le chiffré de la clé de chiffrement K2, AES(K1, K2), ne fait que transiter par le serveur 50 de gestion des
autorisations. On considère dans cet exemple de réalisation que le serveur 50 de gestion des autorisations ne mémorise pas cette donnée transitoire.
A ce stade, le deuxième terminal 11 possède la clé de chiffrement K2 chiffrée au moyen de la clé secrète intermédiaire Kl . Il est maintenant adapté pour accéder à la liste de mots de passe chiffrée, conformément au procédé d'obtention de la liste décrit en relation avec la figure 4.
Ainsi, l'utilisateur peut accéder à la liste de mots de passe chiffrée AES(K2, Ist _pwd) depuis n'importe lequel de ses terminaux, adaptés pour la mise en œuvre du procédé d'obtention de la liste de mots de passe chiffrée.
A noter que dans ce deuxième exemple de réalisation les échanges entre les différentes entités, en l'espèce le terminal d' accès 10, le serveur 50 de gestion des autorisations, le serveur de stockage 70 sont également sécurisés, que ce soit dans la phase d'obtention de la liste de mots de passe, dans la phase de configuration initiale ou dans la phase d'enregistrement d'un nouveau terminal. Par exemple le protocole « TLS » (de l'anglais « Transport Layer Security ») est utilisé afin de garantir la confidentialité et l'intégrité des données échangées et l' authentification mutuelle des entités impliquées.
Dans une variante de réalisation de ce deuxième exemple de réalisation, et afin de protéger la valeur AES(K1, K2) du chiffré de la clé de chiffrement K2 au moyen de la clé secrète intermédiaire Kl qui transite sur le serveur 50 de gestion des autorisations lors de l'enregistrement d'un nouveau terminal, il est prévu de chiffrer cette valeur AES(K1, K2) à l' attention de chacun des terminaux de l'utilisateur susceptibles d'obtenir la liste des mots de passe chiffrée. Ce chiffrement utilise une cryptographie à clé publique. Ainsi, il est généré pour chaque terminal i de l'utilisateur un couple clé privée/clé publique KpriVi/Kpubi. Le terminal 10, lors de la phase de configuration initiale décrite en relation avec la figure 3 calcule pour chaque terminal i le chiffré de AES(K1, K2) au moyen de la clé publique Kpubi de chaque terminal et transmet cette valeur en même temps que la clé secrète intermédiaire Kl au serveur 50 de gestion des autorisations. Ce chiffré est noté RSA( Kpubi, AES(K1, K2)). Ensuite, sur demande d'enregistrement d'un terminal i, préalablement à une demande d'obtention de la liste, le serveur 50 envoie le chiffré RSA( Kpubi, AES(K1, K2)) propre à ce terminal. Le terminal i déchiffre le chiffré au moyen de sa clé privée Kprivi afin d'obtenir AES(K1, K2). Cette variante est avantageuse dans le cas où un attaquant qui aurait pris le contrôle du serveur 50 de gestion des autorisations et du serveur 70 de stockage mémoriserait également le chiffré AES(K1, K2) de la clé de chiffrement qui transite par le serveur 50 de gestion des autorisations lors de l'enregistrement d'un nouveau terminal. En effet, dans ce cas l' attaquant disposerait de tous les éléments nécessaires au déchiffrement de la liste de mots de passe de l'utilisateur. Avec la
solution décrite ici, l'attaquant aurait besoin également de la clé privée d'un terminal Kpriv stockée sur le terminal i, pour déchiffrer RSA(Kpubi, AES(K1, K2)). Il faudrait donc qu'il ait accès également au terminal i pour obtenir la liste de mots de passe Ist _pwd de l'utilisateur.
Selon ce deuxième exemple, dans une variante de réalisation du procédé d'enregistrement d'un nouveau terminal, l'envoi de la clé secrète de chiffrement K2 chiffrée au moyen de la clé intermédiaire Kl , AES(K1, K2) se fait directement du terminal d' accès 10 au deuxième terminal 11 , sans passer par le serveur 50 de gestion des autorisations.
Dans le deuxième exemple de réalisation décrit ici, la clé intermédiaire Kl est associée au terminal d' accès 10, et c'est cette clé qui est utilisée pour tous les terminaux qui vont ensuite s'enregistrer. Dans un autre exemple de réalisation, une clé secrète intermédiaire est associée à chacun des terminaux de l'utilisateur. Par exemple une clé secrète intermédiaire Kl l est associée au deuxième terminal 11. Lors de l'enregistrement du deuxième terminal 11 , celui-ci transmet au serveur 50 de gestion des autorisations sa clé secrète intermédiaire Kl l dans le message d'enregistrement MSG_ENREG. Le serveur 50 de gestion des autorisations transmet alors au terminal d' accès 10 sa clé secrète intermédiaire Kl et la clé secrète intermédiaire Kl l du deuxième terminal au cours de l'étape E53 d'envoi. Le terminal d' accès 10 peut ainsi déchiffrer la clé secrète de chiffrement K2 au moyen de sa propre clé secrète intermédiaire Kl et calculer ensuite le chiffré AES(K11, K2) de la clé K2 au moyen de la clé secrète intermédiaire Kl l du deuxième terminal. Ce chiffré est ensuite transmis par le serveur 50 de gestion des autorisations au deuxième terminal 11. Lorsque le deuxième terminal 11 requiert l'obtention de la liste de mots de passe, c'est alors la clé intermédiaire Kl l du deuxième terminal 11 que le serveur 50 de gestion des autorisations envoie dans l'étape E43 de génération et d'envoi. Dans un troisième exemple de réalisation, décrit en relation avec les figures 6, 7 et 8, un mécanisme de cryptographie à clé publique est combiné à un mécanisme de cryptographie à clé secrète afin de protéger une clé privée d'un couple clé privée/clé publique, propre à un terminal et destinée à être utilisée pour déchiffrer la clé de chiffrement K2 stockée chiffrée dans le réseau au moyen de la clé publique associée. Ainsi, des paires de clés asymétriques sont utilisées et la clé privée asymétrique d'une paire, stockée sur le terminal de l'utilisateur, est protégée avec une clé qui est stockée dans le réseau.
Les étapes d'un procédé de configuration initiale au moyen du terminal d'accès 10, conforme au troisième exemple de réalisation, vont maintenant être décrites en relation avec le figure 6.
Dans une étape initiale E60 de génération de paramètres, le terminal 10, dit terminal maître, génère le germe sait, la clé de chiffrement K2 et la liste de mots de passe chiffrée AES(K2, Ist _pwd).
Le terminal 10 génère également, ou importe d'une entité de génération de clés (non représentée sur la figure 6), un couple de clés asymétriques clé privée/clé publique, noté Kpriv10/Kpub10, propre au terminal 10. Le terminal 10 génère par ailleurs une clé secrète KlOp de protection d'une clé privée et chiffre sa clé privée Kpriv10 au moyen de cette clé. En d'autres termes il calcule AES(K10p, Kpriv10). Par ailleurs, le terminal d'accès 10 chiffre la clé secrète de chiffrement K2 à son attention au moyen de sa clé publique. Il calcule donc RSA(Kpub10, K2). A noter que le déchiffrement de la clé de chiffrement K2 sur le terminal d'accès 10 ne peut se faire qu'avec la clé privée Kpriv10 propre au terminal 10.
En fin d'étape E60, le terminal d'accès 10 envoie au serveur 50 de gestion des autorisations un message d'enregistrement MSG_ENREG comprenant l'identifiant de l'utilisateur userlD, un identifiant du terminal 10, DevicelDlO, et la clé secrète KlOp de protection d'une clé privée.
Dans une phase suivante d' authentification, le serveur 50 de gestion des autorisations procède à authentification de l'utilisateur, conformément à la méthode décrite précédemment. Il envoie pour ce faire une requête d' authentification REQ_AUTH au serveur d' authentification 60 dans une étape E61 d'envoi d'une requête d' authentification, et les étapes El 00 à El 03 d' authentification de l'utilisateur décrites précédemment sont exécutées afin d'authentifier l'utilisateur au moyen de son terminal mobile 20.
Le serveur 50 de gestion des autorisations vérifie dans une étape E62 de test si authentification a réussi. Dans un cas où authentification a échoué, (branche « nok » sur la figure 6), le procédé s'arrête. Dans un cas où authentification a réussi, correspondant au cas où le résultat d' authentification RES_AUTH reçu du serveur d' authentification 60 est positif (branche « ok » sur la figure 5), le serveur 50 de gestion des autorisations, dans une étape E63 de génération et d'envois, génère l'identifiant temporaire tmpID et envoie au terminal 10 un message comprenant l'identifiant DevicelDlO du terminal 10, l'identifiant de l'utilisateur userlD et l'identifiant temporaire tmpID. Il envoie également au serveur de stockage 70 l'identifiant temporaire tmpID.
Dans une étape suivante E64 d'envoi de matériel, le terminal 10 envoie au serveur de stockage 70 un message comprenant l'identifiant temporaire tmpID, l'identifiant de l'utilisateur userlD, le germe sait et la liste de mots de passe chiffrée AES(K2, Ist _pwd).
Dans une étape suivante E65 d'effacement, le terminal 10 efface la clé de chiffrement K2, la clé KlOp de protection d'une clé privée et la clé privée Kprivw-
Ainsi, au terme de la phase de configuration, la clé privée Kprivm du terminal 10 est stockée chiffrée sur le terminal 10 au moyen de la clé secrète KlOp de protection d'une clé privée et la clé secrète KlOp de protection de la clé privée est stockée dans le réseau. Les étapes d'un procédé d'obtention de la liste de mots de passe chiffrée conforme au troisième exemple de réalisation, vont maintenant être décrites en relation avec la figure 7.
Dans une étape initiale E70 de demande d'obtention de la liste, le terminal d'accès 10 envoie au serveur 50 de gestion des autorisations une requête initiale REQ_INIT de demande d'obtention de la liste. La requête initiale REQ_INIT comprend l'identifiant de l'utilisateur userlD et un identifiant du terminal 10 DevicelDIO.
Dans une phase suivante d'authentification de l'utilisateur, le serveur 50 de gestion des autorisations déclenche une procédure d'authentification de l'utilisateur. Il utilise par exemple la même méthode que celle décrite précédemment. Ainsi, le serveur 50 de gestion des autorisations envoie au serveur d'authentification 60, au cours d'une étape E71 de demande d'authentification, une requête d'authentification REQ_AUTH qui comprend l'identifiant de l'utilisateur userlD. Les étapes E100 à E103 décrites précédemment sont exécutées afin d'authentifier l'utilisateur au moyen de son terminal mobile 20.
Dans une étape E72 de test, le serveur 50 de gestion des autorisations vérifie le résultat d'authentification RES_AUTH reçu du serveur d'authentification 60. Si authentification a réussi (branche « ok » sur la figure 7), dans une étape E73 de génération et d'envois, le serveur 50 de gestion des autorisations génère et envoie au serveur de stockage 70 un identifiant temporaire tmpID. Le serveur 50 de gestion des autorisations envoie également au terminal d'accès 10 un message de génération DATA_GEN comprenant l'identifiant temporaire tmpID et la clé secrète KlOp de protection d'une clé privée.
Dans une étape suivante E74 d'envoi d'informations, le terminal d'accès 10 envoie au serveur de stockage 70 un message comprenant l'identifiant temporaire tmpID qu'il a reçu au cours de l'étape précédente.
Dans une étape suivante E75 d'envoi de matériel, le serveur de stockage 70 envoie au terminal d'accès 10 un message de génération de la liste GEN_LST qui comprend le germe sait, l'identifiant de l'utilisateur userlD, l'identifiant temporaire tmpID et la liste de mots de passe chiffrée AES(K2, Ist _pwd).
Dans une étape suivante E76 de déchiffrement, le terminal d'accès 10 procède au déchiffrement de la liste de mots de passe chiffrée AES(K2, Ist _pwd). Plus précisément, le terminal d'accès 10 obtient sa clé privée Kprivio en déchiffrant au moyen de la clé secrète KlOp de protection sa clé privée stockée chiffrée sous la forme AES(K10p, Kprivio). Il déchiffre
ensuite au moyen de sa clé privée Kprivm la clé de chiffrement K2 de la liste de mots de passe stockée et précédemment chiffrée au moyen de sa clé publique Kpubw- Il obtient ensuite sa liste de mots de passe en déchiffrant la liste chiffrée AES(K2, Ist _pwd) reçue au cours de l'étape E74 au moyen de la clé de chiffrement K2 qu'il vient de calculer.
Avec ce troisième exemple de réalisation du procédé d'obtention de la liste de mots de passe, la sécurité est accrue puisqu'un attaquant qui se rendrait maître des entités 60 et 70 du réseau et aurait accès à toutes les donnée stockées sur ces entités ou qui transitent par ces entités serait incapable d'obtenir la liste de mots de passe Ist _pwd de l'utilisateur. En effet, rien ne lui permet d'obtenir la clé privée Kpriv10 du terminal 10, nécessaire pour déchiffrer la clé de chiffrement K2 de la liste de mots de passe qui est stockée chiffrée sur le terminal 10 au moyen de la clé publique Kpub10 du terminal 10.
Le troisième exemple d'un procédé d'obtention d'une liste d'au moins une donnée sensible a été décrit avec le terminal d'accès 10 qui met en œuvre la phase de configuration initiale, décrite en relation avec la figure 6, et qui requiert ultérieurement la liste de mots de passe. Il est possible d'enregistrer d'autres terminaux afin que l'utilisateur requière sa liste de mots de passe à partir de ses autres terminaux. La phase d'enregistrement d'un nouveau terminal d'accès, conformément au troisième exemple de réalisation va maintenant être décrite en relation avec la figure 8.
On suppose que l'utilisateur, équipé du terminal d'accès 10 a procédé à l'enregistrement de sa liste de mots de passe chiffrée AES(K2, Ist _pwd), conformément aux étapes du procédé de configuration initiale décrit en relation avec la figure 6. L'utilisateur est équipé d'un deuxième terminal 11, agencé pour accéder à un service et obtenir, pour cet accès et sur demande, la liste de mots de passe chiffrée.
Dans une étape initiale E80 de demande d'enregistrement, l'utilisateur, plus précisément le deuxième terminal 11 , génère ou importe une bi-clé asymétrique Kpub /Kpriv et génère une clé secrète Kl lp de protection d'une clé privée, destinée à chiffrer la clé privée Kpriv . La clé secrète de protection Kl lp est par exemple générée aléatoirement. On suppose que le deuxième terminal 11 possède un identifiant DevicelDll qui lui est propre. Par ailleurs, le deuxième terminal 11 chiffre sa clé privée Kprivn au moyen de la clé secrète Kl lp de protection et mémorise cette valeur. On note la valeur obtenue AES(Kllp, Kpriv ). La clé privée Kprivn est alors effacée du deuxième terminal 11. Ainsi, le deuxième terminal 11 ne mémorise que le chiffré AES(Kllp, Kprivu) de la clé privée Kprivn au moyen de la clé secrète de protection Kl lp. En fin d'étape initiale E80, le deuxième terminal 11 envoie au serveur de gestion des autorisations 50 un message d'enregistrement MSG_ENREG qui comprend l'identifiant de
l'utilisateur userlD, la clé publique Kpubu du deuxième terminal 11, la clé secrète de protection Kl lp et l'identifiant DevicelDll du deuxième terminal 11. La clé secrète de protection Kl lp est alors effacée du deuxième terminal 11.
Dans une phase suivante d' authentification de l'utilisateur, le serveur 50 de gestion des autorisations déclenche une procédure d' authentification de l'utilisateur. Il utilise par exemple la même méthode que celle décrite précédemment. Ainsi, le serveur 50 de gestion des autorisations envoie au serveur d' authentification 60, au cours d'une étape E81 de demande d' authentification, une requête d' authentification REQ_AUTH qui comprend l'identifiant de l'utilisateur userlD. Les étapes E100 à E103 décrites précédemment sont exécutées afin d'authentifier l'utilisateur au moyen de son terminal mobile.
Dans une étape E82 de test, le serveur 50 de gestion des autorisations vérifie le résultat d' authentification RES_AUTH reçu du serveur d' authentification 60. Si authentification a réussi (branche « ok » sur la figure 7), le serveur 50 de gestion des autorisations, dans une étape E83 de mémorisation et d'envoi, mémorise l'identifiant du deuxième terminal 11 DevicelDll en association avec la clé secrète de protection Kl lp qu'il a reçue précédemment. Le serveur 50 de gestion des autorisations envoie également au terminal maître 10 un message de génération DATA_GEN comprenant l'identifiant DevicelDl l du deuxième terminal 11, la clé publique Kpubu du deuxième terminal et la clé KlOp de protection de la clé privée Kprivio du terminal d'accès 10.
Dans une étape suivante E84 de déchiffrement et d'envoi, le terminal maître 10 déchiffre sa clé privée Kprivio qu'il a mémorisée chiffrée, au moyen de la clé KlOp de protection de la clé privée qu'il a reçue au cours de l'étape E83. Le terminal d'accès 10 efface la clé KlOp de protection. A ce stade, le terminal d'accès 10 a recouvré sa clé privée Kpriv10 qu'il mémorisait chiffrée. Le terminal d'accès 10 procède ensuite au déchiffrement de la clé de chiffrement K2 au moyen de sa clé privée Kpriv10. On rappelle que le terminal d'accès 10 stocke la clé de chiffrement K2 chiffrée au moyen de sa clé publique sous la forme RSA(Kpub10, K2). Il efface ensuit sa clé privée Kpriv10. Le terminal d'accès 10 chiffre ensuite la clé de chiffrement K2 pour le deuxième terminal 11 , au moyen de la clé publique Kpubu du deuxième terminal. En d'autres termes, il calcule RSA(Kpub , K2). Il efface ensuite la clé secrète de chiffrement K2. En fin d'étape E84, le terminal d'accès 10 envoie au serveur 50 de gestion des autorisations un message comprenant l'identifiant du deuxième terminal 11 DevicelDll et la clé de chiffrement K2 chiffrée au moyen de la clé publique Kpubu du deuxième terminal, c'est-à-dire RSA(Kpubu, K2).
Dans une étape suivante E85 d'envoi de matériel, le serveur 50 de gestion des autorisations envoie la valeur ainsi calculée RSA( Kpubu, K2) au deuxième terminal 11. A ce
stade le deuxième terminal 11 mémorise sa clé privée Kprivn chiffrée avec la clé Kl lp de protection de la clé privée : AES(Kllp, Kprivn), et la clé de chiffrement K2 chiffrée au moyen de sa clé publique Kpubu '■ RSA(Kpubu, K2).
Le deuxième terminal 11 peut alors accéder à la liste de mots de passe chiffrée AES(K2, Ist _pwd) en mettant en œuvre les étapes du procédé d'obtention de la liste de mots de passe décrites en relation avec la figure 7.
Dans une variante de réalisation du procédé d'enregistrement d'un nouveau terminal, l'envoi de la clé secrète de chiffrement K2 chiffrée au moyen de la clé publique Kpubu du deuxième terminal RSA(Kpubn, K2) se fait directement du terminal d'accès 10 au deuxième terminal 11, sans passer par le serveur 50 de gestion des autorisations.
Le procédé d'obtention de la liste de données sensibles, décrit ici selon trois exemples de réalisation, n'est pas incompatible avec un accès « classique » à la liste de mots de passe Ist _pwd par l'utilisateur. On entend par « classique », la saisie par l'utilisateur sur son terminal du mot de passe maître master _pwd afin de déchiffrer en local la liste de mots de passe. Ce mode est intéressant lors d'un problème d'accès au réseau.
Un terminal d'accès 10, selon un exemple de réalisation de l'invention, va maintenant être décrit en relation avec la figure 9.
Le terminal d'accès 10 est un terminal d'utilisateur, agencé pour permettre à un utilisateur d'obtenir une liste d'au moins une donnée sensible, ladite donnée sensible étant destinée à être utilisée pour accéder à un service distant. La donnée sensible est par exemple un mot de passe, un numéro de compte bancaire, etc. Dans un exemple de réalisation, le terminal d'accès 10 est agencé pour mettre en œuvre une configuration initiale et créer la liste de données sensibles.
Le terminal d'accès 10 comprend :
- une unité de traitement 101, ou « CPU » pour « Central Processing Unit »,
- un ensemble de mémoires, dont une mémoire volatile 102, ou « RAM » (pour « Random Access Memory ») et une mémoire morte 103 de type « ROM » (de l'anglais « Read Only Memory ») et une mémoire de stockage 104 de type mémoire flash ou « EEPROM » (pour « Electrically-Erasable Programmable Read Only Memory). La mémoire volatile 102 est agencée pour exécuter des instructions de code, stocker des variables, etc. La mémoire de stockage 104 est agencée pour mémoriser des données. En particulier, la mémoire de stockage 104 mémorise une application d'obtention de la liste de données sensibles qui comprend des
instructions de code pour mettre en œuvre les étapes du procédé d'obtention de la liste d'au moins une donnée sensible tel que décrit précédemment ;
Le terminal mobile 10 comprend également :
- des moyens 105 d'envoi, agencés pour envoyer au serveur 50 de gestion des autorisations une requête d'obtention de la liste de données sensibles chiffrée AES(K2, Ist _pwd).
La liste de données sensibles est chiffrée au moyen d'une clé secrète de chiffrement K2 et stockée sur le serveur de stockage 70. Les moyens 105 sont agencés pour mettre en œuvre les étapes E10, E40 et E70 du procédé d'obtention d'une liste d'au moins une donnée sensible, tel que décrit précédemment ;
- des premiers moyens 106 de réception, agencés pour recevoir en provenance du serveur de gestion des autorisations un message comprenant une valeur de déchiffrement de la liste, ledit message n'étant reçu qu'après une authentification réussie de l'utilisateur au moyen d'un module de sécurité d'un deuxième terminal. Selon le premier exemple de réalisation, la valeur de déchiffrement est la clé secrète maître master _pwd. Selon le deuxième exemple de réalisation, dans lequel la clé secrète de chiffrement K2 de la liste de données sensible est chiffrée au moyen de la clé secrète intermédiaire Kl, la valeur de déchiffrement est la clé secrète intermédiaire Kl. Selon le troisième exemple de réalisation, dans lequel la clé secrète de chiffrement K2 est chiffrée par une clé publique associée au terminal Kpubio, la clé privée associée Kprivio étant elle-même chiffrée au moyen d'une clé secrète de protection KlOp, la valeur de déchiffrement est la clé secrète de protection KlOp. Les moyens de réception 106 sont agencés pour mettre en œuvre les étapes E13, E43 et E73 du procédé d'obtention d'une liste d' au moins une donnée sensible, tel que décrit précédemment ;
- des deuxièmes moyens 107 de réception, agencés pour recevoir en provenance du serveur de stockage la liste de données sensibles chiffrée. Les deuxièmes moyens de réception 107 sont agencés pour mettre en œuvre les étapes E15, E45 et E75 du procédé d'obtention d'une liste d' au moins une donnée sensible tel que décrit précédemment. ;
- des moyens 108 de déchiffrement, agencés pour déchiffrer la liste de données sensibles au moyen de la clé secrète, ladite clé secrète étant calculable au moyen de la valeur de déchiffrement. Les moyens 108 de déchiffrement sont agencés pour mettre en œuvre les étapes E16, E46 et E76 du procédé d'obtention d'une liste d'au moins une donnée sensible tel que décrit précédemment.
Dans un exemple de réalisation, le terminal d'accès 10 comprend également des moyens de génération et d'envoi de paramètres (non représentés sur la figure 9) agencés pour générer les données nécessaires à l'obtention de la liste de données sensibles chiffrée et pour envoyer certaines de ces données au serveur 50 de gestion des autorisations et au serveur de stockage 70,
et des moyens d'effacement, agencés pour supprimer du terminal d'accès 10 des paramètres utilisés pour générer les données nécessaires à l'obtention de la liste de données sensibles, tels que des clés secrètes.
Dans un exemple de réalisation, le terminal d'accès 10 comprend des moyens de transmission (non représentés sur la figure 9), agencés pour transmettre au serveur 50 de gestion des autorisations la clé secrète de chiffrement K2 protégée. La clé secrète ainsi protégée est destinée à être transmise par le serveur 50 de gestion des autorisations à un nouveau terminal d'accès, de manière à ce que celui-ci puisse obtenir la liste d'au moins une donnée sensible.
Les moyens d'envoi 105, les moyens de réception 106 et les moyens 107 de réception et 108 de déchiffrement sont de préférence des modules logiciels comprenant des instructions logicielles pour faire exécuter les étapes du procédé d'aide à l'identification d'incidents précédemment décrit.
L'invention concerne donc aussi :
- un programme d'ordinateur comportant des instructions pour la mise en œuvre du procédé d'obtention d'une liste d'au moins une donnée sensible tel que décrit précédemment lorsque ce programme est exécuté par un processeur du terminal d'accès 10,
- un support d'enregistrement lisible sur lequel est enregistré le programme d'ordinateur décrit ci-dessus.
Les modules logiciels peuvent être stockés dans, ou transmis par un support de données. Celui-ci peut être un support matériel de stockage, par exemple un CD-ROM, une disquette magnétique ou un disque dur, ou bien un support de transmission tel qu'un signal ou un réseau de télécommunication.
Un système 90 agencé pour fournir sur requête d'un terminal d'accès une liste d'au moins une donnée sensible, selon un exemple de réalisation, va maintenant être décrit en relation avec la figure 10. Le système 90 comprend un serveur 50 de gestion des autorisations et un serveur de stockage 70.
Le système 90 comprend :
- une unité de traitement 91-1 propre au serveur 60 de gestion des autorisations et une unité de traitement 91-2 propre au serveur de stockage 70,
- un ensemble de mémoires, dont une mémoire volatile 92-1, propre au serveur 60 de gestion des autorisations et une mémoire volatile 92-2 propre au serveur de stockage 70, une mémoire morte 93-1 propre au serveur 60 de gestion des autorisations et une mémoire morte 93- 2 propre au serveur de stockage 70, une mémoire de stockage 94-1 de type mémoire flash ou EEPROM propre au serveur 60 de gestion des autorisations et une mémoire de stockage 94-2
propre au serveur de stockage 70. Les mémoires volatiles 92-1 , 92-2 sont agencées pour exécuter des instructions de code, stocker des variables, etc. Les mémoires de stockage 94-1 , 94-2 sont agencées pour mémoriser des données. En particulier, les mémoires de stockage 94-1 , 94-2 sont agencées pour mémorises des modules logiciels qui comprennent des instructions de code pour mettre en œuvre les étapes du procédé d'obtention de la liste de données sensibles tel que décrit précédemment et qui sont exécutées respectivement par le serveur 50 de gestion des autorisations et le serveur de stockage 70.
Le système 90 comprend en outre :
- des premiers moyens 95 de réception, agencés pour recevoir en provenance du premier terminal une requête d'obtention de la liste de données sensibles chiffrée (AES(K2, Ist _pwd)), ladite liste étant chiffrée au moyen d'une clé secrète de chiffrement (K2),
- des premiers 96 moyens d'envoi, agencés pour envoyer une requête d' authentification de l'utilisateur à un serveur d' authentification (70),
- des deuxièmes moyens 97 de réception, agencés pour recevoir en provenance du serveur d' authentification un résultat d' authentification,
- des deuxièmes moyens 98 d'envoi, agencés pour envoyer au premier terminal, lorsque le résultat d' authentification est positif, un message comprenant une valeur de déchiffrement (master _pwd, Kl , KlOp) de la liste et la liste de données sensibles chiffrée au moyen de la clé de chiffrement (K2), ladite clé de chiffrement étant calculable au moyen de la valeur de déchiffrement.
Les premiers moyens de réception 95, les premiers moyens d'envoi 96, les deuxièmes moyens de réception 97 et les deuxièmes moyens d'envoi 98 sont de préférence des modules logiciels comprenant des instructions logicielles pour faire exécuter les étapes du procédé d'obtention d'une liste d'au moins une donnée sensible précédemment décrit.
Claims
REVENDICATIONS 1. Procédé d'obtention d'une liste d' au moins une donnée sensible, une donnée sensible de la liste étant destinée à être utilisée pour accéder à un service à partir d'au moins un premier terminal (10) d'un utilisateur, ledit utilisateur possédant un deuxième terminal (20) équipé d'un module de sécurité, le procédé comprenant les étapes suivantes, mises en œuvre par le premier terminal :
- envoi (E10, E40, E70) à un serveur (50) de gestion des autorisations d'une requête d'obtention de la liste de données sensibles chiffrée (AES(K2, Ist _pwd)), ladite liste étant chiffrée au moyen d'une clé secrète de chiffrement (K2) et stockée sur un serveur de stockage (70),
- réception (El 3, E43, E73) en provenance du serveur de gestion des autorisations d'un message comprenant une valeur de déchiffrement (master _pwd, Kl , KlOp) de la liste, ledit message n'étant reçu qu'après une authentification réussie de l'utilisateur au moyen du module de sécurité du deuxième terminal,
- réception (E15, E45, E75), en provenance du serveur de stockage de la liste de données sensibles chiffrée, et
- déchiffrement (E16, E46, E76) de ladite liste au moyen de la clé secrète, ladite clé secrète étant calculable au moyen de la valeur de déchiffrement.
2. Procédé d'obtention d'une liste d'au moins une donnée sensible selon la revendication 1 , dans lequel le serveur (50) de gestion des autorisations génère et envoie au serveur de stockage et au premier terminal un identifiant temporaire (tmpID), ledit identifiant temporaire étant utilisé par le serveur de stockage pour autoriser l'envoi au premier terminal de la liste de données sensibles chiffrées.
3. Procédé d'obtention d'une liste d'au moins une donnée sensible selon l'une des revendications précédentes, comprenant dans une phase de configuration les étapes suivantes :
- génération de la clé de chiffrement (K2),
- génération et chiffrement au moyen de la clé de chiffrement (K2) de la liste (Ist _pwd) de données sensibles,
- envoi au serveur de gestion des autorisations de la liste de données sensibles chiffrée si une authentification de l'utilisateur au moyen du module de sécurité du deuxième terminal est positive,
- effacement sur le premier terminal de la clé de chiffrement (K2) et de la liste de données sensibles (Ist _pwd).
4. Procédé d'obtention d'une liste d'au moins une donnée sensible selon la revendication 3, comprenant en outre les étapes de :
- chiffrement de la clé de chiffrement (K2) au moyen d'une clé secrète intermédiaire (Kl), et envoi de la clé secrète intermédiaire au serveur de gestion des autorisations, et
- effacement sur le premier terminal de la clé secrète intermédiaire si l'authentification de l'utilisateur au moyen du module de sécurité du deuxième terminal est positive.
5. Procédé d'obtention d'une liste d'au moins une donnée sensible selon la revendication 4, dans lequel l'utilisateur étant équipé d'un troisième terminal (11), il comprend les étapes suivantes mises en œuvre par le premier et le troisième terminal :
- envoi (E50) au serveur de gestion des autorisations, en provenance du troisième terminal, d'une demande d'enregistrement comprenant un identifiant du troisième terminal,
- réception (E53) par le premier terminal, suite à une authentification réussie de l'utilisateur au moyen du module de sécurité du deuxième terminal, d'un message comprenant l'identifiant du troisième terminal,
- envoi (E54) par le premier terminal au serveur de gestion des autorisations du chiffré (AES(K1, K2 ) de la clé de chiffrement (K2) au moyen du secret intermédiaire (Kl),
- réception (E55) par le troisième terminal en provenance du serveur de gestion des autorisations du chiffré de la clé de chiffrement au moyen du secret intermédiaire.
6. Procédé d'obtention d'une liste d'au moins une donnée sensible selon la revendication 3, dans lequel la valeur de déchiffrement est une clé secrète de protection (KlOp) d'une clé privée, destinée à chiffrer une clé privée d'un couple clé privée/clé publique (Kprivjo/Kpubjo), le procédé comprenant en outre les étapes suivantes :
- chiffrement de la clé secrète de chiffrement (K2) au moyen de la clé publique (Kpubjo),
- chiffrement de la clé privée (Kpriv10) au moyen de la clé secrète de protection (KlOp),
- envoi de la clé secrète de protection au serveur de gestion des autorisations
- effacement sur le premier terminal (10) de la clé secrète de protection (KlOp), de la clé privée (Kprivio).
7. Procédé d'obtention d'une liste d'au moins une donnée sensible selon la revendication 6, dans lequel l'utilisateur étant équipé d'un troisième terminal (11), il comprend les étapes suivantes mises en œuvre par le premier et le troisième terminal :
- obtention par le troisième terminal d'un deuxième couple clé privée/clé publique (Kpriv nl Kpubn) et d'une deuxième clé de protection (Kl lp),
- envoi (E80) au serveur de gestion des autorisations, en provenance du troisième terminal, d'un message d'enregistrement comprenant la deuxième clé publique {Kpubn) et la deuxième clé de protection (Kl lp),
- réception (E83) par le premier terminal, suite à une authentification réussie de l'utilisateur au moyen du module de sécurité du deuxième terminal, d'un message comprenant la clé de protection (KlOp) du premier terminal et la clé publique du troisième terminal {Kpubn), ladite clé de protection étant destinée à être utilisée par le premier terminal pour déchiffrer la clé secrète de chiffrement,
- envoi (E84) par le premier terminal au serveur de gestion des autorisations d'un chiffré {RSA( Kpubn, K2)) de la clé de chiffrement (K2) au moyen de la clé publique {Kpubn) du troisième terminal,
- réception (E55) par le troisième terminal en provenance du serveur de gestion des autorisations de la clé secrète de chiffrement chiffrée au moyen de la clé publique du troisième terminal {RSA( Kpubn, K2)).
8. Procédé de fourniture d'une liste d'au moins une donnée sensible, une donnée sensible de la liste étant destiné à être utilisée pour accéder à un service à partir d'au moins un premier terminal (10) d'un utilisateur, ledit utilisateur possédant un deuxième terminal (20) équipé d'un module de sécurité, le procédé comprenant les étapes suivantes, mises en œuvre par un système comprenant un serveur (60) de gestion d'autorisations et un serveur de stockage (70) :
- réception (E10, E40, E70) par le serveur (50) de gestion des autorisations en provenance du premier terminal, d'une requête d'obtention de la liste de données sensibles chiffrée {AES(K2, Ist _pwd)), ladite liste étant chiffrée au moyen d'une clé secrète de chiffrement (K2),
- envoi (El i, E41, E71) d'une requête d' authentification de l'utilisateur à un serveur d' authentification (70),
- réception (El 03) du serveur d' authentification d'un résultat d' authentification,
- si le résultat d' authentification est positif, envoi (El 3, E43, E73) du serveur de gestion des autorisations au premier terminal d'un message comprenant une valeur de déchiffrement
(master _pwd, Kl , KlOp) de la liste, et envoi (E15, E45, E75) au premier terminal de la liste de données sensibles chiffrée au moyen de la clé de chiffrement (K2), ladite clé de chiffrement étant calculable au moyen de la valeur de déchiffrement.
9. Terminal utilisateur (10, 11), agencé pour obtenir une liste d' au moins une donnée sensible, une donnée sensible de la liste étant destiné à être utilisée pour accéder à un service, ledit terminal comprenant :
- des moyens (105) d'envoi, agencés pour envoyer à un serveur (50) de gestion des autorisations une requête d'obtention de la liste de données sensibles chiffrée (AES(K2, Ist _pwd)), ladite liste étant chiffrée au moyen d'une clé secrète de chiffrement (K2) et stockée sur un serveur de stockage (70),
- des premiers moyens (106) de réception, agencés pour recevoir en provenance du serveur de gestion des autorisations un message comprenant une valeur de déchiffrement (master _pwd, Kl , KlOp) de la liste, ledit message n'étant reçu qu' après une authentification réussie de l'utilisateur au moyen d'un module de sécurité d'un deuxième terminal,
- des deuxièmes moyens (107) de réception, agencés pour recevoir en provenance du serveur de stockage la liste de données sensibles chiffrée, et
- des moyens (108) de déchiffrement, agencés pour déchiffrer ladite liste au moyen de la clé secrète, ladite clé secrète étant calculable au moyen de la valeur de déchiffrement.
10. Programme d'ordinateur sur un support de données et chargeable dans la mémoire d'un ordinateur, le programme comprenant des instructions de code pour l'exécution des étapes du procédé d'obtention d'une liste d'au moins une donnée sensible selon l'une des revendications 1 à 7, lorsque le programme est exécuté sur ledit ordinateur.
11. Support de données dans lequel est enregistré le programme selon la revendication
10.
12. Système (90) comprenant un serveur de gestion d'autorisations (50) et un serveur de stockage (70), ledit système étant agencé pour fournir à un premier terminal (10) une liste d' au moins une donnée sensible, une donnée sensible de la liste étant destinée à être utilisée pour accéder à un service à partir d'au moins le premier terminal (10),
le système comprenant :
- des premiers moyens de réception, agencés pour recevoir en provenance du premier terminal une requête d'obtention de la liste de données sensibles chiffrée (AES(K2, Ist _pwd)), ladite liste étant chiffrée au moyen d'une clé secrète de chiffrement (K2),
- des premiers moyens d'envoi, agencés pour envoyer une requête d'authentification de l'utilisateur à un serveur d'authentification (70),
- des deuxièmes moyens de réception, agencés pour recevoir en provenance du serveur d'authentification un résultat d' authentification,
- des deuxièmes moyens d'envoi, agencés pour envoyer au premier terminal, lorsque le résultat d'authentification est positif, un message comprenant une valeur de déchiffrement (master _pwd, Kl , KlOp) de la liste et la liste de données sensibles chiffrée au moyen de la clé de chiffrement (K2), ladite clé de chiffrement étant calculable au moyen de la valeur de déchiffrement.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1552758A FR3034551A1 (fr) | 2015-03-31 | 2015-03-31 | Procede d'obtention d'une liste d'au moins une donnee sensible |
FR1552758 | 2015-03-31 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2016156737A1 true WO2016156737A1 (fr) | 2016-10-06 |
Family
ID=54065968
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/FR2016/050713 WO2016156737A1 (fr) | 2015-03-31 | 2016-03-30 | Procede d'obtention d'une liste d'au moins une donnee sensible |
Country Status (2)
Country | Link |
---|---|
FR (1) | FR3034551A1 (fr) |
WO (1) | WO2016156737A1 (fr) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100293607A1 (en) * | 2009-05-14 | 2010-11-18 | Microsoft Corporation | Linking web identity and access to devices |
US20140013109A1 (en) * | 2012-07-09 | 2014-01-09 | Verizon Patent And Licensing Inc. | Secure delivery of trust credentials |
US20140331060A1 (en) * | 2013-05-03 | 2014-11-06 | Citrix Systems, Inc. | User and Device Authentication in Enterprise Systems |
-
2015
- 2015-03-31 FR FR1552758A patent/FR3034551A1/fr active Pending
-
2016
- 2016-03-30 WO PCT/FR2016/050713 patent/WO2016156737A1/fr active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100293607A1 (en) * | 2009-05-14 | 2010-11-18 | Microsoft Corporation | Linking web identity and access to devices |
US20140013109A1 (en) * | 2012-07-09 | 2014-01-09 | Verizon Patent And Licensing Inc. | Secure delivery of trust credentials |
US20140331060A1 (en) * | 2013-05-03 | 2014-11-06 | Citrix Systems, Inc. | User and Device Authentication in Enterprise Systems |
Also Published As
Publication number | Publication date |
---|---|
FR3034551A1 (fr) | 2016-10-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10567370B2 (en) | Certificate authority | |
EP2673732B1 (fr) | Procede de transaction securisee a partir d'un terminal non securise | |
US11057210B1 (en) | Distribution and recovery of a user secret | |
US20170142082A1 (en) | System and method for secure deposit and recovery of secret data | |
US20160337124A1 (en) | Secure backup and recovery system for private sensitive data | |
CN103490881A (zh) | 认证服务系统、用户认证方法、认证信息处理方法及系统 | |
ES2665887T3 (es) | Sistema de datos seguro | |
WO2017055716A1 (fr) | Procede et dispositif d'authentification ameliores | |
US20220014354A1 (en) | Systems, methods and devices for provision of a secret | |
WO2019115943A1 (fr) | Technique de protection d'une clé cryptographique au moyen d'un mot de passe utilisateur | |
EP2568406B1 (fr) | Procédé de mise en oeuvre, a partir d'un terminal, de données cryptographiques d'un utilisateur stockées dans une base de données | |
EP3965361B1 (fr) | Echange de données entre un client et un dispositif distant, par exemple un module sécurisé | |
EP1514377A1 (fr) | Procede et dispositif d'interface pour echanger de maniere protegee des donnees de contenu en ligne | |
WO2006035159A1 (fr) | Systeme et procede cryptographique a cle publique et serveur de certification, memoires adaptees pour ce systeme | |
WO2019228853A1 (fr) | Methode d'etablissement de cles pour le controle d'acces a un service ou une ressource | |
WO2016156737A1 (fr) | Procede d'obtention d'une liste d'au moins une donnee sensible | |
WO2021074527A1 (fr) | Procede de gestion d'une base de donnees de cles publiques, procede d'authentification de cles publiques, et dispositifs serveur et client mettant en oeuvre ces procedes | |
WO2017005644A1 (fr) | Procédé et système de contrôle d'accès à un service via un média mobile sans intermediaire de confiance | |
AU2022200415A1 (en) | User verification systems and methods | |
FR3007929A1 (fr) | Procede d'authentification d'un utilisateur d'un terminal mobile | |
WO2006027430A1 (fr) | Procede d’authentification entre entites communiquant entre elles au travers d’un reseau de telecommunications | |
FR3049087A1 (fr) | Procede permettant a des dispositifs par l'intermediaire de connaissances et de capacites croisees, de realiser des transactions a travers un reseau informatique decentralise | |
FR3041841A1 (fr) | Procede et dispositif pour acceder a une ressource a l’aide d’un jeton chiffre | |
WO2007138229A2 (fr) | Procede d'acces securise a une ressource cryptee |
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: 16717185 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 16717185 Country of ref document: EP Kind code of ref document: A1 |