FR3034551A1 - 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 PDF

Info

Publication number
FR3034551A1
FR3034551A1 FR1552758A FR1552758A FR3034551A1 FR 3034551 A1 FR3034551 A1 FR 3034551A1 FR 1552758 A FR1552758 A FR 1552758A FR 1552758 A FR1552758 A FR 1552758A FR 3034551 A1 FR3034551 A1 FR 3034551A1
Authority
FR
France
Prior art keywords
terminal
list
key
sensitive data
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
FR1552758A
Other languages
English (en)
Inventor
Loic Ferreira
Matthieu Verdier
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orange SA
Original Assignee
Orange SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Orange SA filed Critical Orange SA
Priority to FR1552758A priority Critical patent/FR3034551A1/fr
Priority to PCT/FR2016/050713 priority patent/WO2016156737A1/fr
Publication of FR3034551A1 publication Critical patent/FR3034551A1/fr
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • G06F21/35User authentication involving the use of external additional devices, e.g. dongles or smart cards communicating wirelessly
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/41User authentication where a single sign-on provides access to a plurality of computers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing 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/2143Clearing memory, e.g. to prevent the data from being stolen

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

1 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 oeuvre 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, 3034551 2 - 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, 5 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 10 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, l'authentification de l'utilisateur est une authentification à deux facteurs. L'accès au service se fait donc avec un niveau de sécurité plus 15 é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 à l'authentification mise en oeuvre au moyen du terminal mobile de l'utilisateur. Un code PIN est en général court et composé 20 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 25 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 30 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 3034551 3 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 : 5 - 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 10 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 15 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 : 20 - 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 l'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 25 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 30 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.
3034551 4 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 oeuvre par le premier et le troisième terminal - - envoi au serveur de gestion des autorisations, en provenance du troisième terminal, 5 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 10 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 15 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 20 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 25 (Kprivio). 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 30 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.
3034551 5 Avantageusement, l'utilisateur étant équipé d'un troisième terminal, il comprend les étapes suivantes mises en oeuvre 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, 5 - 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 10 protection du premier terminal et la clé publique du troisième terminal (Kpub ii), 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, 15 - 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.
20 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 oeuvre par un système comprenant un serveur de gestion d'autorisations et un serveur de 25 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, 30 - 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.
3034551 6 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 5 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 10 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.
15 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 20 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, 25 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 30 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 3034551 7 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 5 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 10 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 15 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 oeuvre 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 20 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 25 pour la mise en oeuvre 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 oeuvre les étapes du procédé d'obtention d'une liste d'au moins une donnée sensible, selon un exemple de réalisation ; 30 - 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 35 un premier exemple de réalisation, vont maintenant être décrites en relation avec la figure 1.
3034551 8 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 oeuvre un procédé de configuration initiale 5 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 10 « 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 15 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 20 succès de l'authentification, un identifiant temporaire tinpID, 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 tinpID 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, lst_pwd) et pour le 25 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 30 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, lst_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 35 AES(K2, lst_pwd) a été obtenue en appliquant un algorithme de chiffrement symétrique à la liste 3034551 9 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 5 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 Derivation 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 10 50 de gestion des autorisations. Dans une étape initiale El0 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 userID de l'utilisateur. L'identifiant userID est par exemple 15 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 1 de demande d'authentification, une requête d'authentification REQ_AUTH qui comprend l'identifiant 20 userID 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 25 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 l'authentification a réussi. Dans une étape E102 d'envoi d'un résultat d'authentification, le module de sécurité 201 envoie au 30 serveur d'authentification 60, via le terminal mobile 20, un message signé comprenant un résultat d'authentification RES_AUTH indiquant si l'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 E103 de transmission du résultat d'authentification. A ce stade, le serveur 50 de gestion des autorisations a l'assurance qu'une 3034551 10 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 l'authentification de l'utilisateur. La méthode d'authentification décrite au moyen des étapes 5 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 10 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 l'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ù l'authentification a réussi, le serveur 50 de gestion des autorisations génère et envoie au 1 5 serveur de stockage 70 dans une étape El3 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 20 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.
25 Dans une étape suivante El5 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, lst_pwd), l'identifiant de l'utilisateur userID et l'identifiant temporaire tmpID. Dans une étape suivante E16 de déchiffrement, le terminal d'accès 10 procède au 30 déchiffrement de la liste de mots de passe chiffrée AES(K2, lst_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, lst_pwd) en 35 appliquant l'algorithme de chiffrement symétrique à la liste reçue chiffrée et à la clé de 3034551 11 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, 5 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 10 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 15 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 20 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 oeuvre 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 tinpID permet d'associer les échanges entre le terminal d'accès 25 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 tinpID 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 30 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.
35 3034551 12 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.
5 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é 10 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 15 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, lst_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 20 MSG_ENREG comprenant l'identifiant de l'utilisateur userID 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 25 serveur 50 délègue l'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 userID de l'utilisateur, et les étapes E100 à E103 décrites précédemment sont exécutées afin 30 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 l'authentification de l'utilisateur a réussi. Dans un premier cas où l'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 35 cas où l'authentification a réussi, correspondant au cas où le résultat d'authentification 3034551 13 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 userID 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 5 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 userID, le germe sait et la liste AES(K2, lst_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 10 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, lst_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 15 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, lst_pwd) et pourrait déchiffrer cette liste afin d'obtenir tous les mots de passe de l'utilisateur.
20 Afin de pallier ce type d'attaque, dans un deuxième exemple de réalisation, une clé secrète intermédiaire, notée K1 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 K1 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 25 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, lst_pwd) à moins d'obtenir également la clé secrète de chiffrement chiffrée AES(K1, K2) au moyen de K1 qui est mémorisée sur le terminal utilisateur.
30 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 maitre, la clé secrète intermédiaire K1 et le germe sait. Par exemple, la clé secrète intermédiaire K1 et le germe sait sont générés aléatoirement. Il est par ailleurs 35 dérivé du mot de passe maître master_pwd saisi par l'utilisateur et du germe sait la clé secrète 3034551 14 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 5 d'enregistrement MSG_ENREG comprenant la clé secrète intermédiaire K1 et l'identifiant de l'utilisateur userID. 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 à E103. Dans une étape E32 de test, le serveur 10 50 de gestion des autorisations vérifie le résultat d'authentification RES_AUTH reçu du serveur d'authentification 60. Si l'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 K1 en association avec l'identifiant de l'utilisateur userID. Le serveur 50 de gestion des autorisations génère également un identifiant 15 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 userID, la liste de mots de passe chiffrée AES(K2, lst_pwd) et le germe sait.
20 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 K1 et la liste de mots de passe chiffrée AES(K2, lst_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.
25 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 30 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 userID 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 35 la même méthode que celle décrite précédemment. Ainsi, le serveur 50 de gestion des 3034551 15 autorisations envoie au serveur d'authentification 60 une requête d'authentification REQ_AUTH, 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 E42 de test, le serveur 50 de gestion des autorisations vérifie le résultat 5 d'authentification RES_AUTH reçu du serveur d'authentification 60. Si l'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 10 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 15 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, lst_pwd), l'identifiant de l'utilisateur userID 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, lst_pwd) qu'il a reçue chiffrée au cours de 20 l'étape E45. Pour cela, le terminal déchiffre la clé de chiffrement K2 au moyen de la clé secrète intermédiaire K1 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, lst_pwd) qu'il a reçue chiffrée au cours de l'étape E45 au moyen de la clé de chiffrement K2 ainsi obtenue.
25 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 K1 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 K1 sur le terminal d'accès 10 et le terminal 10 est utilisé pour accéder à la 30 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, lst_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 3034551 16 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 5 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, lst_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 10 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 userID et un identifiant DeviceID11 du terminal 11. Cet identifiant est par exemple un numéro de série du deuxième 15 terminal 11. Dans une phase suivante d'authentification, le serveur 50 de gestion des autorisations procède à l'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 20 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 l'authentification a réussi. Dans un cas où l'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ù l'authentification a réussi, 25 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 DeviceID11 du deuxième terminal 11. Dans une étape suivante E54 d'envoi de matériel, le terminal 10 envoie au serveur 50 de 30 gestion des autorisations un message comprenant l'identifiant DeviceID11 du deuxième terminal et le chiffré de la clé de chiffrement K2 au moyen de la clé secrète intermédiaire Ki, 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 35 la clé de chiffrement K2, AES(K1, K2), ne fait que transiter par le serveur 50 de gestion des 3034551 17 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 Ki. Il est maintenant adapté pour accéder à la liste de mots de 5 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, lst_pwd) depuis n'importe lequel de ses terminaux, adaptés pour la mise en oeuvre du procédé d'obtention de la liste de mots de passe chiffrée.
10 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 ») 15 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 K1 qui transite sur le serveur 50 de gestion des autorisations lors de 20 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 25 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 K1 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 30 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 35 éléments nécessaires au déchiffrement de la liste de mots de passe de l'utilisateur. Avec la 3034551 18 solution décrite ici, l'attaquant aurait besoin également de la clé privée d'un terminal Kprivi, 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é 5 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 Ki, 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 K1 est associée 10 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 K1 1 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 K1 1 dans le 15 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 K1 et la clé secrète intermédiaire Kll 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 K1 et calculer ensuite le chiffré AES(K11, K2) de la clé K2 au moyen de la clé secrète intermédiaire 20 K1 1 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 Kll 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.
25 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 30 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.
3034551 19 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, lst_pwd). Le terminal 10 génère également, ou importe d'une entité de génération de clés (non 5 représentée sur la figure 6), un couple de clés asymétriques clé privée/clé publique, noté Kpriv 101Kpub Io, 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 Kprivio au moyen de cette clé. En d'autres termes il calcule AES(K10p, Kprivio). 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(Kpub Io, K2). A 10 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 Kpriv Io 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 userID, un identifiant du terminal 10, DeviceID10, et la clé secrète KlOp de 15 protection d'une clé privée. Dans une phase suivante d'authentification, le serveur 50 de gestion des autorisations procède à l'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 E100 à E103 20 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 l'authentification a réussi. Dans un cas où l'authentification a échoué, (branche « nok » sur la figure 6), le procédé s'arrête. Dans un cas où l'authentification a réussi, correspondant au cas où 25 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 tinpID et envoie au terminal 10 un message comprenant l'identifiant DeviceID10 du terminal 10, l'identifiant de l'utilisateur userID et l'identifiant temporaire tmpID. Il envoie également au serveur de stockage 70 30 l'identifiant temporaire unpID. 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 userID, le germe sait et la liste de mots de passe chiffrée AES(K2, lst_pwd). Dans une étape suivante E65 d'effacement, le terminal 10 efface la clé de chiffrement 35 K2, la clé KlOp de protection d'une clé privée et la clé privée Kprivio.
3034551 20 Ainsi, au terme de la phase de configuration, la clé privée Kpriv Io 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.
5 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 10 userID et un identifiant du terminal 10 DeviceID10. 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 15 d'authentification, une requête d'authentification REQ_AUTH qui comprend l'identifiant de l'utilisateur userID. 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 l'authentification a 20 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.
25 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, 30 l'identifiant de l'utilisateur userID, l'identifiant temporaire tmpID et la liste de mots de passe chiffrée AES(K2, lst_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, lst_pwd). Plus précisément, le terminal d'accès 10 obtient sa clé privée Kpriv Io en déchiffrant au moyen de la clé secrète Ki Op 35 de protection sa clé privée stockée chiffrée sous la forme AES(K10p, Kpriv Io). Il déchiffre 3034551 21 ensuite au moyen de sa clé privée Kprivio 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 Kpubio. Il obtient ensuite sa liste de mots de passe en déchiffrant la liste chiffrée AES(K2, lst_pwd) reçue au cours de l'étape E74 au moyen de la clé de chiffrement K2 qu'il vient de calculer.
5 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 Kprivio du terminal 10, nécessaire pour déchiffrer la clé de 10 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 Kpubio 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 oeuvre la phase de configuration 15 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.
20 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, lst_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.
25 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 KpubillKpriv il et génère une clé secrète Kllp de protection d'une clé privée, destinée à chiffrer la clé privée Kprivii. La clé secrète de protection Kllp est par exemple générée aléatoirement. On suppose que le deuxième terminal 11 possède un identifiant DeviceID11 qui lui est propre. Par ailleurs, le deuxième 30 terminal 11 chiffre sa clé privée Kprivii au moyen de la clé secrète K1 lp de protection et mémorise cette valeur. On note la valeur obtenue AES(K11p, Kprivii). La clé privée Kpriv il est alors effacée du deuxième terminal 11. Ainsi, le deuxième terminal 11 ne mémorise que le chiffré AES(K11p, Kprivii) de la clé privée Kprivii au moyen de la clé secrète de protection Kllp. En fin d'étape initiale E80, le deuxième terminal 11 envoie au serveur de gestion des 35 autorisations 50 un message d'enregistrement MSG_ENREG qui comprend l'identifiant de 3034551 22 l'utilisateur userID, la clé publique Kpubil du deuxième terminal 11, la clé secrète de protection Kllp et l'identifiant DeviceID11 du deuxième terminal 11. La clé secrète de protection Kllp est alors effacée du deuxième terminal 11. Dans une phase suivante d'authentification de l'utilisateur, le serveur 50 de gestion des 5 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 userID. Les étapes E100 à E103 décrites précédemment sont exécutées afin 10 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 l'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 DeviceID11 15 en association avec la clé secrète de protection K1 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 DeviceID11 du deuxième terminal 11, la clé publique Kpubil du deuxième terminal et la clé KlOp de protection de la clé privée Kprivio du terminal d'accès 10.
20 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 Kprivio qu'il mémorisait chiffrée. Le terminal d'accès 10 procède ensuite au déchiffrement de la clé de 25 chiffrement K2 au moyen de sa clé privée Kprivio. 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(Kpubio, K2). Il efface ensuit sa clé privée Kprivio. 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 Kpubil du deuxième terminal. En d'autres termes, il calcule RSA(Kpubii, K2). Il efface ensuite la clé secrète de chiffrement K2.
30 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 DeviceID11 et la clé de chiffrement K2 chiffrée au moyen de la clé publique Kpubil du deuxième terminal, c'est-à-dire RSA(Kpubii, K2). Dans une étape suivante E85 d'envoi de matériel, le serveur 50 de gestion des 35 autorisations envoie la valeur ainsi calculée RSA(Kpubii, K2) au deuxième terminal 11. A ce 3034551 23 stade le deuxième terminal 11 mémorise sa clé privée Kpriv il chiffrée avec la clé K1 lp de protection de la clé privée : AES(K11p, Kprivii), et la clé de chiffrement K2 chiffrée au moyen de sa clé publique Kpubil : RSA(Kpubii, K2). Le deuxième terminal 11 peut alors accéder à la liste de mots de passe chiffrée AES(K2, 5 ist_pwd) en mettant en oeuvre 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 Kpubil du deuxième terminal RSA(Kpubii, K2) se fait directement du terminal d'accès 10 au deuxième 10 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 15 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.
20 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 oeuvre une configuration initiale et créer la liste de données 25 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 30 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 3034551 24 instructions de code pour mettre en oeuvre 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 5 autorisations une requête d'obtention de la liste de données sensibles chiffrée AES(K2, lst_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 oeuvre 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 ; 10 - 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 1 5 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 Ki, la valeur de déchiffrement est la clé secrète intermédiaire Ki. 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 Kpub Io, la clé privée associée Kpriv Io étant elle-même chiffrée au moyen d'une clé secrète de protection K 10p, la 20 valeur de déchiffrement est la clé secrète de protection KlOp. Les moyens de réception 106 sont agencés pour mettre en oeuvre 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 25 107 sont agencés pour mettre en oeuvre 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 oeuvre les étapes 30 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 35 certaines de ces données au serveur 50 de gestion des autorisations et au serveur de stockage 70, 3034551 25 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 5 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 10 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 oeuvre du 15 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.
20 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 25 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 30 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 932 propre au serveur de stockage 70, une mémoire de stockage 94-1 de type mémoire flash ou 35 EEPROM propre au serveur 60 de gestion des autorisations et une mémoire de stockage 94-2 3034551 26 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 5 code pour mettre en oeuvre 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 10 terminal 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), - 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 15 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, Ki, K 10p) 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 20 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. 25

Claims (12)

  1. REVENDICATIONS1. 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 oeuvre 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, Ki, Kl0p) 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. 20
  2. 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 25 la liste de données sensibles chiffrées.
  3. 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), 30 - génération et chiffrement au moyen de la clé de chiffrement (K2) de la liste (lst_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, 3034551 28 - effacement sur le premier terminal de la clé de chiffrement (K2) et de la liste de données sensibles (lst_pwd).
  4. 4. Procédé d'obtention d'une liste d'au moins une donnée sensible selon la 5 revendication 3, comprenant en outre les étapes de : - chiffrement de la clé de chiffrement (K2) au moyen d'une clé secrète intermédiaire (K1), 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. 10
  5. 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 oeuvre par le premier et le troisième terminal : - envoi (E50) au serveur de gestion des autorisations, en provenance du troisième 15 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 (K1), - 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. 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 (K10p) d'une clé privée, destinée à chiffrer une clé privée d'un couple clé privée/clé publique (KpriviolKpubio), le procédé comprenant en outre les étapes suivantes : - chiffrement de la clé secrète de chiffrement (K2) au moyen de la clé publique (KPubio), - chiffrement de la clé privée (Kprivio) au moyen de la clé secrète de protection (K10p), - 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 (K10p), de la clé privée (Kprivio). 3034551 29
  7. 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 oeuvre par le premier et le troisième terminal : - obtention par le troisième terminal d'un deuxième couple clé privée/clé publique 5 (KpriviilKpubil) et d'une deuxième clé de protection (K1 1p), - 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 (Kpubli) et la deuxième clé de protection (K1 1p), - réception (E83) par le premier terminal, suite à une authentification réussie de 10 l'utilisateur au moyen du module de sécurité du deuxième terminal, d'un message comprenant la clé de protection (K10p) du premier terminal et la clé publique du troisième terminal (Kpubii), 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 15 chiffré (RSA(Kpubii, K2)) de la clé de chiffrement (K2) au moyen de la clé publique (Kpubii) 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(Kpubii, K2)). 20
  8. 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 oeuvre par 25 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, lst_pwd)), ladite liste étant chiffrée au moyen d'une clé secrète de chiffrement 30 (K2), - envoi (El 1, E41, E71) d'une requête d'authentification de l'utilisateur à un serveur d'authentification (70), - réception (E103) du serveur d'authentification d'un résultat d'authentification, - si le résultat d'authentification est positif, envoi (E13, E43, E73) du serveur de gestion des autorisations au premier terminal d'un message comprenant une valeur de déchiffrement 3034551 30 (master_pwd, Ki, Ki Op) de la liste, et envoi (El 5, 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. 5
  9. 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, 10 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), - 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, Ki, Ki Op) de la liste, ledit message n'étant reçu qu'après une authentification 15 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. 20
  10. 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. 25
  11. 11. Support de données dans lequel est enregistré le programme selon la revendication 10.
  12. 12. Système (90) comprenant un serveur de gestion d'autorisations (50) et un serveur de 30 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 : 3034551 31 - 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, lst_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 10 (master_pwd, Ki, Kl0p) 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. 15
FR1552758A 2015-03-31 2015-03-31 Procede d'obtention d'une liste d'au moins une donnee sensible Pending FR3034551A1 (fr)

Priority Applications (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
PCT/FR2016/050713 WO2016156737A1 (fr) 2015-03-31 2016-03-30 Procede d'obtention d'une liste d'au moins une donnee sensible

Applications Claiming Priority (1)

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

Publications (1)

Publication Number Publication Date
FR3034551A1 true FR3034551A1 (fr) 2016-10-07

Family

ID=54065968

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1552758A Pending FR3034551A1 (fr) 2015-03-31 2015-03-31 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)

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

Patent Citations (3)

* Cited by examiner, † Cited by third party
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
WO2016156737A1 (fr) 2016-10-06

Similar Documents

Publication Publication Date Title
EP2673732B1 (fr) Procede de transaction securisee a partir d'un terminal non securise
US10567370B2 (en) Certificate authority
US20170142082A1 (en) System and method for secure deposit and recovery of secret data
US20160337124A1 (en) Secure backup and recovery system for private sensitive data
US20120331078A1 (en) Methods and systems for encouraging secure communications
CN105103488A (zh) 借助相关联的数据的策略施行
US11831753B2 (en) Secure distributed key management system
WO2017055716A1 (fr) Procede et dispositif d'authentification ameliores
WO2019115943A1 (fr) Technique de protection d'une clé cryptographique au moyen d'un mot de passe utilisateur
US20220014354A1 (en) Systems, methods and devices for provision of a secret
US20160080336A1 (en) Key Usage Detection
EP3965361B1 (fr) Echange de données entre un client et un dispositif distant, par exemple un module sécurisé
EP1949590A1 (fr) Procede de depot securise de donnees numeriques, procede associe de recuperation de donnees numeriques, dispositifs associes pour la mise en uvre des procedes, et systeme comprenant les dits dispositifs
EP1514377A1 (fr) Procede et dispositif d'interface pour echanger de maniere protegee des donnees de contenu en ligne
WO2019228853A1 (fr) Methode d'etablissement de cles pour le controle d'acces a un service ou une ressource
EP4024239A1 (fr) Procede et systeme de stockage et de partage de donnees
FR3034551A1 (fr) Procede d'obtention d'une liste d'au moins une donnee sensible
EP2911365B1 (fr) Procédé et système de sécurisation de transactions offertes par une pluralité de services entre un appareil mobile d'un utilisateur et un point d'acceptation
US20220393867A1 (en) Techniques for user account and data recovery
FR3070516A1 (fr) Procede d'authentification d'un utilisateur aupres d'un serveur d'authentification
AU2022200415A1 (en) User verification systems and methods
FR3038414A1 (fr) Procede et systeme de controle d'acces a un service via un media mobile.
CN117201023A (zh) 一种数据加密传输方法、装置、设备及存储介质
CN116346497A (zh) 一种端对端加密的支持审核的机制
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

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20161007