Brevet FR3090152A1 — publié le 20200619

Description Titre de l'invention : Réinitialisation d'un secret applicatif au moyen du terminal Domaine technique [0001] La présente invention concerne le domaine de l'authentification d'un utilisateur sur un terminal. Elle concerne plus particulièrement la réinitialisation des facteurs né- cessaires à l'authentification d'un utilisateur sur une application exécutée par un terminal. Technique antérieure [0002] Les applications pour terminaux demandent en général aux utilisateurs de définir des secrets applicatifs pour en contrôler l'accès. Ces secrets sont typiquement des mots de passe et sont parfois perdus et doivent être réinitialisés. [0003] Afin de permettre la réinitialisation d'un secret applicatif et d'assurer la cohérence de la sécmité du service de bout en bout, les applications doivent alors utiliser d'autres preuves d'identité que le secret « oublié » pour accepter la réinitialisation. [0004] Les techniques les plus couramment utilisées aujourd'hui consistent, au moment de la création et de l'enregistrement d'un compte utilisateur, en la définition de facteurs de preuve additionnels, consistant souvent en des facteurs de possession externe, comme : une adresse email, un numéro de téléphone, des questions secrètes, un "dongle" physique externe, une clé de récupération (complexe pour plus d'entropie). [0005] Ces solutions ne sont toutefois pas satisfaisantes. En effet, un certain nombre de li- mitations existent, liées à la facilité d'usage (par exemple stocker de façon sécurisée et avoir toujours à disposition une clé de récupération complexe) ou à la sécmité (par exemple une adresse email est souvent synchronisée sur le terminal sur lequel la réinitialisation est tentée). Exposé de l'invention [0006] Un but de l'invention est de pallier les inconvénients pré-cités. [0007] Selon un premier aspect, l'invention concerne un procédé de réinitialisation d'un secret applicatif d'une application exécutée par un terminal, ledit terminal comprenant une infrastructure de sécurité configurée pour gérer de manière sécurisée des données d'authentification d'un utilisateur par le terminal, l'application étant connectée à un serveur d'application, le secret applicatif permettant à l'utilisateur de s'authentifier sur l'application, ledit procédé comprenant après que l'utilisateur a requis une réinitialisation du secret applicatif depuis l'application, les étapes suivantes mises en oeuvre par l'infrastructure de sécurité : [0008] - réception d'une requête d'un traitement cryptographique d'un élément de véri- 2 fication au moyen d'un élément de réinitialisation du secret applicatif préalablement stocké dans l'infrastructure de sécurité ; [0009] - authentification de l'utilisateur à partir d'au moins une donnée entrée par l'utilisateur et une donnée d'authentification stockée dans l'infrastructure de sécurité ; et si l'utilisateur est authentifié par l'infrastructure de sécurité : [0010] - traitement cryptographique de l'élément dc vérification du secret applicatif de manière à obtenir un élément de validation de la réinitialisation ; [0011] - envoi vers l'application de l'élément de validation de la réinitialisation pour que le serveur d'application valide l'élément de validation de la réinitialisation et, le cas échéant, exécute un processus de réinitialisation du secret applicatif. [0012] La réinitialisation d'un secret applicatif d'une application utilise un élément de réini- tialisation stocké dans le terminal dans son environnement sécurisé. En outre, l'accès à cet élément de réinitialisation peut être configure pour nécessiter l'authentification de l'utilisateur sur le terminal exécutant l'application. Ainsi, l'utilisateur utilise l'authentification sur son terminal pour réinitialiser le secret applicatif. Il n'y a donc pas besoin pour l'utilisateur de renseigner un élément de réinitialisation propre à l'application puisque on s'appuie sur des secrets associés au terminal déjà définis par l'utilisateur et contrôlant l'accès à son environnement sécurisé. [0013] Selon un premier mode de réalisation l'élément de vérification est généré par le serveur d'application et fourni à l'avance au terminal, en anticipation d'une demande de réinitialisation du secret applicatif. Ainsi, l'élément de vérification est un élément de vérification crypté et stocké dans le serveur d'application et l'élément de réinitialisation est une clé de cryptage stockée dans l'infrastructure de sécurité, l'étape de traitement consistant, selon ce premier mode de réalisation, à décrypter, au moyen de la clé de cryptage, l'élément de vérification crypté. [0014] Selon un deuxième mode de réalisation, l'élément de vérification est généré par le serveur d'application suite à une demande de réinitialisation du secret applicatif sans être fourni à l'avance au terminal. Ainsi, l'élément de réinitialisation est un premier élément de cryptage stocké dans l'infrastructure de sécurité, un deuxième élément de cryptage étant stocké dans le serveur d'application, l'étape de traitement consistant à signer par le premier élément de cryptage l'élément de vérification, l'élément de vérification ainsi signé étant transmis au serveur d'application afin que ce dernier en vérifie la validité au moyen du deuxième élément de cryptage [0015] Selon ce deuxième mode de réalisation le premier élément de cryptage et le deuxième élément de cryptage sont des éléments de cryptage symétrique du type clés publiques. En variante, le premier élément de cryptage et le deuxième élément de cryptage sont des éléments de cryptage asymétriques, le premier élément de cryptage étant de préférence une clé privée et le deuxième élément de cryptage étant une clé 3 publique. Le choix de clés symétriques ou asymétriques dépend du niveau de sécurité, des clés asymétriques étant plus robustes que des clés symétriques. [0016] Toujours selon le premier aspect, en complément, et pour augmenter le niveau de sécurité au cours de l'authentification de l'utilisateur il est prévu une authentification au moyen d'un élément externe au terminal. De manière avantageuse, un élément externe est du type "donglc" ou carte SIM ou eSIM ou profil cSIM ou numéro de téléphone. [0017] Selon un deuxième aspect, l'invention concerne un procédé de génération d'un élément de réinitialisation d'un secret applicatif d'une application exécutée par un terminal, ledit terminal comprenant une infrastructure de sécurité configurée pour gérer et stocker de manière sécurisée des données d'authentification de l'utilisateur par le terminal, l'application étant connectée à un serveur d'application, le procédé comprenant à la première exécution de l'application, l'utilisateur étant authentifié sur l'application, les étapes suivantes mises en oeuvre par l'infrastructure de sécurité : [0018] - réception d'une demande de génération d'un élément de cryptage ; [0019] - génération de l'élément de cryptage, ledit élément de cryptage comprenant au moins une première partie ; [0020] - stockage de la première partie dans l'infrastructure de sécurité, ladite première partie constituant l'élément de réinitialisation. [0021] La génération d'un élément de réinitialisation est automatique est n'est fondée que sur l'authentification de l'utilisateur. Il n'y a pas besoin pour ce dernier de prévoir un élément autre qu'un élément lui permettant de s'authentifier sur le terminal. [0022] Selon un premier mode de réalisation, l'élément de cryptage comprend une unique première partie et est une clé de cryptage, ledit procédé comprenant une étape de transmission à l'application d'un élément de vérification, l'élément généré étant une clé de cryptage, le procédé comprenant le cryptage de l'élément de vérification, la transmission à l'application de l'élément de vérification ainsi crypté qui est destiné à être stocké. [0023] Selon ce premier mode de réalisation, un élément de vérification est défini à l'avance et stocké pour être utilisé dans le cas d'une réinitialisation du secret applicatif. [0024] Avantageusement, selon ce premier mode de réalisation, préalablement à la gé- nération de l'élément de cryptage le procédé comprend une étape d'authentification de l'utilisateur à partir d'au moins une donnée entrée par l'utilisateur et une donnée d'authentification stockée dans l'infrastructure de sécurité. Une telle authentification permet de sécuriser l'accès du terminal à l'infrastructure de sécurité du terminal. [0025] Selon un deuxième mode de réalisation, l'élément de cryptage est un couple d'éléments de cryptage comprenant une première partie et une deuxième partie, le procédé comprenant la transmission à l'application de la deuxième partie qui est destinée à être transmise au serveur d'application. [0026] De manière complémentaire, le couple d'éléments de cryptage est soit à base d'éléments publics ou privés, là encore en fonction du niveau de sécurité exigé. [0027] Ainsi, selon une première variante, les éléments du couple d'éléments dc cryptage sont des éléments de cryptage asymétriques, le premier élément de cryptage étant une clé publique et le deuxième élément de cryptage étant une clé privée, l'élément dc cryptage privé étant stocké dans l'infrastructure de sécurité, l'élément dc cryptage public étant transmis au serveur d'application. [0028] Selon une deuxième variante, les éléments du couple d'éléments de cryptage sont des éléments de cryptagcs symétriques, un des deux éléments étant stocké dans le module de sécurité, l'autre étant transmis au serveur d'application. [0029] Selon l'une ou l'autre des deux variantes, l'élément de réinitialisation est un élément de cryptage stocké dans l'infrastructure de sécurité, et rien n'est stocké dans l'application. [0030] Selon un troisième aspect, l'invention concerne un procédé de gestion d'un accès à une application exécuté par un terminal comprenant une infrastructure de sécurité configure° pour gérer et stocker de manière sécurisée des données d'authentification de l'utilisateur par le terminal, l'application étant connectée à un serveur d'application et étant accessible au moyen d'un secret applicatif susceptible d'être réinitialisé au moyen d'un procédé selon le premier aspect de l'invention, mettant en oeuvre un élément de réinitialisation obtenu au moyen d'un procédé selon le deuxième aspect de l'invention. [0031] Selon un quatrième aspect, l'invention concerne une infrastructure de sécurité d'un terminal configurée pour mettre en oeuvre un procédé selon le premier aspect ou le deuxième aspect. [0032] Selon un cinquième aspect, l'invention concerne un produit programme d'ordinateur comprenant des instructions de code de programme pour l'exécution des étapes d'un procédé selon le premier aspect de l'invention, ou un procédé selon le deuxième aspect de l'invention, lorsque ce procédé est exécuté par un processeur. Brève description des dessins [0033] D'autres caractéristiques, buts et avantages de l'invention ressortiront de la des- cription qui suit, qui est purement illustrative et non limitative, et qui doit être lue en regard des dessins annexés sur lesquels : [0034] [fig.]] [0035] La figure 1 illustre de façon schématique une architecture mise en oeuvre dans l'invention ; [0036] [fig.2] 100371 La figure 2 est un organigramme d'étapes d'un procédé de génération d'un élément de réinitialisation selon un premier mode de réalisation de l'invention. [0038] [fig.3] [0039] La figure 3 illustre est un organigramme d'étapes d'un procédé de réinitialisation d'un secret applicatif selon un premier mode de réalisation de l'invention. [0040] [fig.4] [0041] La figure 4 est un organigramme d'étapes d'un procédé de génération d'un élément de réinitialisation selon un deuxième mode de réalisation dc l'invention. [0042] [fig.5] [0043] La figure 5 illustre est un organigramme d'étapes d'un procédé de réinitialisation d'un secret applicatif selon un deuxième mode de réalisation de l'invention. Description des modes de réalisation [0044] En référence à la figure I, un terminal I te qu'un smartphone (téléphone intelligent en français) ou une tablette comprend un système d'exploitation 2 exécuté par un processeur 3 et une ou plusieurs applications 4 exécutées par le système d'exploitation 2. Le terminal I comprend également une interface utilisateur 7 permettant à un utilisateur dc coopérer avec le terminal I notamment pour s'authentifier. Cette interface 7 est par exemple l'écran tactile du terminal ou bien un capteur d'empreinte digitale ou encore une caméra pour mettre en oeuvre une reconnaissance faciale. Le terminal I comprend en outre une infrastructure de sécurité 5 pour la gestion (stockage notamment) dc différentes données d'authentification d'un utilisateur sur le terminal I. L'interface 7 peut être connectée directement à l'infrastructure de sécurité 5 et pas au système d'exploitation ou alors au système d'exploitation et à l'infrastructure dc sécurité 5 ou alors seulement au système d'exploitation. L'infrastructure de sécurité 5 peut être exécutée dc façon logicielle par le processeur 3 ou sur une partie du processeur 3 isolée virtuellement de manière matérielle (voir les architectures TEE) ou bien sur partie matérielle isolée et dédiée. De telles données d'authentifications sont par exemple : un code PIN, une empreinte digitale, de l'iris ou faciale (le terminal comprenant des capteurs biométriques), une signature manuscrite sur un écran tactile (que ce soit un trajet effectué avec le doigt ou un styler sur un canevas), ou une vraie signature faite avec le doigt ou un stylet dans un cadre, la reconnaissance de la voix, de la respiration, des battements du coeur, etc., ou des informations liées au comportement du client (habitudes applicatives, géographiques ou autre; façon de mouvoir ses doigts sur l'écran ou de bouger son corps, etc.), ou un dispositif, dit "dongle", à associer au terminal 1 au moyen d'une connectique dédiée, par exemple un port USB. Ces données, bien que sécurisées sont en général « réduites » c'est-à-dire transformées avant leur stockage, à la fois pour faciliter le processus de reconnaissance lors de 6 l'authentification et pour limiter la valeur de réutilisation pour un pirate qui réussirait à avoir accès aux données stockées. C'est le système d'exploitation du terminal 1 qui contrôle les accès aux différents éléments du terminal 1 mais l'élément 5 peut gérer sa propre sécurité et ses propres contrôles d'accès. Le but est qu'il reste ainsi inviolé même si le système d'exploitation 2 venait à être piraté. [0045] L'application 4 est connectée à un serveur d'application 6 distant ou intégré à l'application 4 elle-même. L'application 4 et le serveur d'application 6 constituent un ensemble applicatif. Dans le cas où le serveur d'application 6 est à distance, l'application 4 communique avec le serveur via une connexion Internet par exemple. [0046] Pour accéder à l'application 4 l'utilisateur 10 dispose d'un secret applicatif tel qu'un mot de passe. Cc mot de passe est associé à l'identité de l'utilisateur 10 et est créé à la première connexion de l'utilisateur 10 sur l'application 4. [0047] En même temps que l'utilisateur 10 crée pour la première fois son mot de passe un élément de réinitialisation est généré (voir la génération d'un élément de réinitialisation selon un premier ou un deuxième mode de réalisation décrite ci-après). Cet élément de réinitialisation permet à l'utilisateur 10, lorsqu'il requiert une réinitialisation de son accès à l'application, de le récupérer. En particulier, lorsque l'utilisateur a « perdu » son mot de passe une telle réinitialisation du secret applicatif est initiée (voir la réinitialisation d'un secret applicatif selon un premier ou un deuxième mode de réalisation décrite ci-après). En pratique cela se traduit par une requête en réinitialisation du mot de passe effectuée depuis l'application par l'intermédiaire du terminal 1 de l'utilisateur 10. [0048] Cet élément de réinitialisation est créé à la première exécution de l'application par le terminal 1 dès que l'utilisateur 10 est identifié correctement sur cette dernière. De manière avantageuse et non limitative, l'invention est basée sur la mise oeuvre d'un élément de réinitialisation stocké par le terminal dans l'infrastructure de sécurité 5 pour la réinitialisation du secret applicatif. L'élément de réinitialisation peut être généré et mis en oeuvre de plusieurs manières comme détaillé ci-après. [0049] Premier mode de réalisation [0050] Génération de l'élément de réinitialisation [0051] Un procédé de génération 100 d'un élément de réinitialisation selon un premier mode de réalisation est illustré sur la figure 2. [0052] Dans ce premier mode, un élément de vérification est généré par le serveur d'application 6 et fourni à l'avance à un terminal 1, en anticipation d'une demande de réinitialisation du secret applicatif. [0053] La génération de l'élément de réinitialisation a lieu à la première exécution de l'application sur le terminal 1 lorsque l'utilisateur s'est correctement identifié sur l'application au moyen du secret applicatif (étape 101). 7 [0054] Dès que l'utilisateur s'est correctement identifié sur l'application, le serveur d'application 6 génère (étape 102) un élément de vérification qui est un élément à crypter. Une copie de cet élément à crypter est stockée (étape 103) dans le serveur d'application 6 et sera utilisée au cours de la réinitialisation du secret applicatif (comme on le verra par la suite). Une fois l'élément de vérification généré et stocké, le serveur d'application 6 l'envoie (étape 104) à l'application. L'application 4 demande alors à l'infrastructure de sécurité 5 de le crypter (étape 105). [0055] Cette double requête a pour conséquence que l'infrastructure de sécurité 5 va devoir générer, sur demande de l'application 4, une clé de cryptage dont l'utilisation requiert l'authentification préalable de l'utilisateur sur son terminal. Une clé de cryptage est par exemple une clé AES (Advanced Encryption Standard, ou norme dc chiffrement avancé) générée dans l'infrastructure de sécurité Set ne le quitte jamais. Elle servira à chiffrer le secret de réinitialisation puis à le déchiffrer. [0056] Comme l'infrastructure de sécurité 5 est sollicitée pour effectuer des traitements, elle demande à l'utilisateur 10, par exemple par le biais de l'interface 7, de s'authentifier (étape 106). Cette authentification peut prendre plusieurs formes : entrée d'un code PIN, entrée d'une empreinte biométrique ou faciale, etc. L' infrastructure de sécurité 5 va alors traiter l'élément d'authentification utilisé par l'utilisateur 10. Par exemple, si l'utilisateur s'authentifie en entrant son code PIN, le code entré par l'utilisateur 10 va alors être comparé au code PIN stocké dans l'infrastructure de sécurité 5. [0057] L'utilisateur 10 correctement authentifié, l'infrastructure de sécurité 5 génère la clé de cryptage (étape 107) et crypte (étape 108) l'élément à crypter qui a été généré par le serveur d'application 6. Ensuite, la clé de cryptage générée est stockée (étape 109) dans l'infrastructure de sécurité 5 du terminal 1 et l'élément crypté est envoyé à l'application (étape 110). L'application 4 ou le serveur 6 stocke alors l'élément crypté (étape Ill ou étape 111'). [0058] L'élément de réinitialisation est ici une clé de cryptage qui est stockée de manière sécurisée par le terminal 1 dans l'infrastructure de sécurité 5 [0059] Réinitialisation du secret applicatif [0060] Un procédé de réinitialisation 200 d'un secret applicatif d'une application selon le premier mode de réalisation mettant en oeuvre l'élément de réinitialisation généré selon le premier mode de réinitialisation 100 est illustré sur la figure 3. [0061] L'utilisateur 10, qui peut être authentifié sur l'application (201) ou ne pas l'être, requiert au moyen de l'application 4 une réinitialisation du secret applicatif (étape 202). Ce peut également être l'application 4, ou le serveur d'application 6, qui est à l'initiative de la réinitialisation du secret applicatif, par exemple sur détection d'une activité anormale sur le compte de l'utilisateur. [0062] L'application 4 requiert dans ce cas que l'infrastructure de sécurité 5 décrypte un 8 élément de vérification crypte, stocké dans l'application 4 (étape 203) ou le serveur 6 (étape 203'). En d'autres termes, l'application 4 requiert de la part de l'infrastructure de sécurité 5 un traitement cryptographique de l'élément de vérification au moyen de l'élément de réinitialisation généré selon le premier mode de réalisation 100. Comme déjà indiqué, étant donné la configuration de la clé, dès lors que l'infrastructure de sécurité 5 est sollicitée, le terminal 1 va demander à l'utilisateur de s'authentifier. [0063] Ainsi, cette requête déclenche une authentification de l'utilisateur sur le terminal (étape 204). Comme précédemment, cette authentification peut prendre plusieurs formes : entrée d'un code PIN, entrée d'une empreinte biométrique ou faciale, etc. [0064] Une fois l'utilisateur 10 correctement authentifié, l'infrastructure de sécurité 5 récupère depuis l'application 4 (étape 205) ou le serveur 6 (étape 205') l'élément de vérification crypte. [0065] Ensuite, à l'aide de la clé de cryptagc générée à la génération de l'élément de réinitia- lisation, l'infrastructure de sécurité 5 procède au décryptage de l'élément de vérification (étape 206) et envoie l'élément de vérification ainsi décrypté, qui est un élément de validation de la réinitialisation, à l'application 4 (étape 207) qui l'envoie au serveur d'application 6 (étape 208). [0066] Le serveur d'application 6 va alors comparer l'élément de vérification décrypté (c'est-à-dire l'élément de validation de la réinitialisation) à la copie de l'élément de vérification stocké au cours de la génération de l'élément de réinitialisation (étape 209). [0067] S'il s'avère que l'élément de vérification décrypté correspond bien à sa copie stockée sur le serveur 6 alors le serveur 6 exécute un processus de réinitialisation du secret applicatif de l'application (étape 210). [0068] Un tel processus de réinitialisation consiste en général à demander à l'utilisateur de redéfinir en partant de zéro le facteur en cours de réinitialisation. Par exemple, pour un code PIN, on demandera à l'utilisateur d'en redéfinir un en prenant en compte les contraintes de sécurité définies par le service. Cela peut se faire au sein de l'application ou bien on peut fournir un lien web à l'utilisateur qui remettrait à jour son secret sur l'interface web du service. Pour un facteur de possession externe (comme une clé matérielle par exemple), on demandera à l'utilisateur d'associer une nouvelle clé à son terminal (par exemple expédiée par courrier à l'utilisateur). [0069] A l'issue de ce processus de réinitialisation, l'utilisateur 10 est en mesure de réini- tialiser le secret applicatif de l'application. [0070] Deuxième mode de réalisation [0071] Génération de l'élément de réinitialisation [0072] Un procédé de génération 300 d'un élément de réinitialisation selon un deuxième mode de réalisation est illustré sur la figure 4. [0073] Comme dans le premier mode de réalisation, la génération de l'élément de réinitia- 9 lisation a lieu à la première exécution de l'application 4 sur le terminal 1 lorsque l'utilisateur 10 est correctement authentifié sur l'application 4 au moyen du secret applicatif (étape 301). Cette authentification peut prendre plusieurs formes : entrée d'un code PIN, entrée d'une empreinte biométrique ou faciale. L'authentification est identique quel que soit le mode de réalisation implémenté. [0074] Dès que l'utilisateur s'est correctement identifié sur l'application, l'application 4 demande à l'infrastructure de sécurité 5 (étape 302) de générer un couple d'éléments de cryptage. [0075] De préférence, un tel couple est un couple d'éléments de cryptage asymétrique : un premier élément étant un élément de cryptage public, un deuxième élément étant un élément de cryptage privé. [0076] En variante, le couple est un couple d'éléments de cryptage symétrique : les deux éléments de cryptagcs sont les mêmes et doivent être protégés aussi bien l'un que l'autre (notion d'élément de cryptage « secret ») En variante, l'élément de cryptage symétrique est généré dans l'élément 6 et provisionné dans l'élément 5 de façon sécurisée (par exemple par une méthode dite « OTA » (Over The Air) c'est-à-dire de provisioning à distance. [0077] Un élément de cryptage peut être une clé de cryptage secrète, publique ou privée selon les cas et éventuellement associée à d'autres éléments nécessaires à la bonne sécurité du protocole (comme le connais l'homme du métier), comme par exemple un compteur pour éviter les rejeux. Comme le sait l'homme du métier, ces différents éléments peuvent éventuellement être signés pour garantir leur provenance. [0078] L'infrastructure de sécurité 5 génère alors le couple d'éléments de cryptage (étape 303) et transmet à l'application 4 un des deux éléments (étape 304), qui le transmet au serveur d'application 6 (étape 305). L'autre élément reste stocké dans l'infrastructure de sécurité 5 du terminal 1 (étape 306). [0079] De manière préférée, dans le cas d'éléments de cryptage asymétrique, c'est l'élément de cryptage public, de préférence une clé de cryptage publique, qui est transmise au serveur 6 d'application. En conséquence, c'est l'élément de cryptage privé, de préférence une clé de cryptage privée, qui est stocké dans L'infrastructure de sécurité 5 du terminal 1. [0080] De manière préférée, dans le cas d'éléments de cryptage symétrique, la clé secrète n'est transmise au serveur 6 d'application que si la confidentialité du transfert de bout en bout peut être assurée. Alternativement, c'est le serveur 6 qui génère la clé et la transfère à l'infrastructure de sécurité 5 du terminal 1. [0081] Comme on l'aura compris, dans ce mode de réalisation, l'élément de réinitialisation est un élément de cryptage de type clé de cryptage et de préférence une clé de cryptage privée. [0082] Réinitialisation du secret applicatif [0083] Un procédé 400 de réinitialisation d'un secret applicatif d'une application selon un deuxième mode dc réalisation mettant en oeuvre l'élément dc réinitialisation généré selon le deuxième mode dc réinitialisation 300 est illustré sur la figure 5. [0084] Dans cc deuxième mode, un élément dc vérification est généré par le serveur d'application 6 suite à une demande de réinitialisation du secret applicatif, sans être fourni à l'avance au terminal 10. [0085] Comme dans le premier mode de réalisation, l'utilisateur 10 qui peut être authentifié sur l'application 4 (étape 401) ou ne pas l'être, requiert au moyen de l'application une réinitialisation du secret applicatif (étape 402). Ce peut également être l'application 4, ou le serveur d'application 6, qui est à l'initiative de la réinitialisation du secret applicatif, par exemple sur détection d'une activité anormale sur le compte de l'utilisateur. [0086] L'application 4 demande au serveur d'application 6 qu'il génère un élément de véri- fication (étape 403). Le serveur 6 d'application envoie alors l'élément de vérification à r application 4 (étape 404). Le serveur stocke ensuite une copie de l'élément de vérification (étape 405). De manière alternative, le serveur d'application 6 peut garder l'original et envoyer une copie. [0087] L'application 4 demande alors à l'infrastructure de sécurité 5 dc signer l'élément de vérification (étape 406) au moyen de l'élément de cryptage stocké dans l'infrastructure de sécurité 5. En d'autres termes, l'application 4 requiert de la part dc r infrastructure de sécurité 5 un traitement cryptographique de l'élément de vérification au moyen de l'élément de réinitialisation généré selon le deuxième mode de réalisation 300. [0088] Comme déjà indiqué, l'infrastructure de sécurité 5 étant sollicitée, cette requête déclenche une authentification de l'utilisateur 10 sur le terminal 1 (étape 407). Comme précédemment, cette authentification peut prendre plusieurs formes : entrée d'un code PIN, entrée d'une empreinte biométrique ou faciale, etc. [0089] Une fois l'utilisateur 10 correctement authentifié, l'infrastructure de sécurité 5 accède à l'élément de cryptage (étape 408) et signe l'élément de vérification au moyen de cet élément de cryptage (étape 409). [0090] L'infrastructure de sécurité 5 envoie alors à l'application 4 l'élément de vérification signé (étape 410) qui l'envoie au serveur 6 d'application (étape 411). [0091] Le serveur d'application 6 va alors vérifier la validité du traitement cryptographique opéré sur l'élément de vérification (étape 412) au moyen de l'élément de cryptage qu'il a stocké lors de l'étape 405 pour obtenir un élément de validation de la réinitialisation. L'élément de validation de la réinitialisation est ici une information sur la validité du traitement cryptographique [0092] Si la vérification est couronnée de succès et que l'élément de vérification est bien identique à la copie stockée dans le serveur d'application 6 alors ce dernier exécute un 11 processus de réinitialisation du secret applicatif de l'application (étape 413). [0093] Un tel processus de réinitialisation consiste en général à demander à l'utilisateur de redéfinir en partant de zéro le facteur en cours de réinitialisation. Par exemple, pour un code PIN, on demandera à l'utilisateur d'en redéfinir un en prenant en compte les contraintes de sécurité définies par le service. Cela peut se faire au sein de l'application ou bien on peut fournir un lien web à l'utilisateur qui remettrait à jour son secret sur l'interface web du service. Pour un facteur de possession externe (comme une clé matérielle par exemple), on demandera à l'utilisateur d'associer une nouvelle clé à son terminal (par exemple expédiée par courrier à l'utilisateur). [0094] A l'issue de cc processus de réinitialisation, r utilisateur est en mesure de réinitialiser le secret applicatif de l'application. [0095] Complément à l'un ou l'autre des procédés ci-dessus décrit [0096] En plus de l'authentification de l'utilisateur à partir d'une donnée stockée dans le terminal, l'application ou l'infrastructure de sécurité peut authentifier (étapes 101', 201', 301', 401', 106', 204', 407') l'utilisateur au moyen d'un élément externe au terminal. [0097] Un tel élément externe est par exemple un "dongle". Un autre exemple est la véri- fication de la présence de la bonne carte SIM ou du bon numéro de mobile. [0098] En d'autres termes si on prend l'exemple que l'authentification de l'utilisateur s'effectue au moyen d'un code PIN entré par l'utilisateur, le terminal peut aussi vérifier l'insertion d'un "dongle". L'authentification est dans ce cas multi-facteurs et conserve avantageusement les autres facteurs que celui en cours de récupération pendant la phase de réinitialisation décrite précédemment. 12 [Revendication 1] [Revendication 2] [Revendication 3]