Brevet FR3116918A1 — publié le 20220603

Procédé, dispositif et système de génération de mots de passe. L'invention concerne un procédé et un dispositif pour la génération d’un mot de passe (K1) pour l’accès à un service. Le procédé comporte les étapes suivantes sur un dispositif de génération de mots de passe connecté à un terminal d’un utilisateur : - obtention (E1), d’une première donnée (K0) représentative d'au moins un symbole; - en fonction de la première donnée obtenue, obtention (E2) d’au moins une seconde donnée comportant au moins deux symboles pour un symbole de la première donnée ; - génération d’une troisième donnée, dite mot de passe (K2), à partir de ladite au moins une seconde donnée ; - transmission dudit mot de passe vers le terminal (B). fig. 1 Procédé, dispositif et système de génération de mots de passe. Domaine de l'invention L'invention se rapporte au domaine de la sécurité des communications. L'invention s'applique à tout terminal manipulant des mots de passe sécurisés pour protéger l’accès à une ressource matérielle ou logicielle. Art Antérieur De manière connue, un mot de passe est un authentifiant permettant à un utilisateur d’accéder à un certain nombre de ressources matérielles et/ou logicielles d’un ordinateur, d’un serveur, d’un ensemble d’ordinateurs reliés en réseau, etc. Plusieurs stratégies peuvent être utilisées pour générer des mots de passe présentant un certain niveau de robustesse, et offrant donc un niveau de sécurité plus ou moins élevé. La plupart de ces stratégies sont inadaptées pour un utilisateur humain, car il est difficile de générer un mot de passe qu’il soit aisé de mémoriser et présente néanmoins un certain niveau de sécurité, en d’autres termes garantit la robustesse du mot de passe utilisé, c’est-à-dire le rend peu vulnérable aux attaques de pirates (attaquants) visant à se l’approprier. En effet, la robustesse d’un mot de passe dépend de sa longueur (le nombre de mots, ou symboles, d’un dictionnaire donné) et du nombre total de mots du dictionnaire utilisé. La sécurité augmente avec le nombre de symboles constitutifs du mot de passe et la richesse du dictionnaire choisi. Or, il n’est pas facile pour un utilisateur humain de mémoriser une longue suite de symboles, qu’il s’agisse de lettres, de chiffres, de caractères spéciaux, etc. De surcroît, les attaques étant de plus en plus évoluées au cours du temps, les mots de passe doivent être de plus en plus longs pour leur résister. L’utilisateur rechigne bien souvent à utiliser de tels mots de passe, longs et complexes, difficiles à mémoriser, manipuler et éventuellement partager s’il s’agit du mot de passe d’accès à un service partagé, comme par exemple un service Web, un accès bancaire, etc. Dans bien des cas, il se contente d’utiliser un mot de passe très simple et très facile à mémoriser (« 1234 », « Garry », etc.). Mais aussi à attaquer. Il existe aujourd’hui des solutions pour sécuriser un tel mot de passe. Notamment, il existe des systèmes d’authentification cryptographiques, pour lesquels la simple connexion d’une carte à puce permet d’authentifier le terminal de l’utilisateur. Cependant en cas de perte de la carte, n’importe qui peut s’authentifier à la place de l’utilisateur. Pour résoudre ce problème, ce type de carte peut être associé à un code de sécurité. Cependant ce code est unique, et ne permet donc pas de s’authentifier auprès de différentes applications/ et ou services requérant des mots de passe différents. Il existe aussi des systèmes de coffres-forts de mots de passe, comme par exemple le dispositif d'authentification YubiKey©, fabriqué et commercialisé par la société Yubico, permettant aux utilisateurs de s'authentifier de façon sécurisée à leurs comptes en émettant un mot de passe à usage unique ou en stockant des mots de passe statiques pour les sites ne supportant pas les mots de passe à usage unique. Un tel dispositif nécessite cependant l’installation d’un composant logiciel ou matériel sur le PC (de type plug-in), ainsi que sur le serveur distant hébergeant le service. De surcroît les données sont stockées en local sur le PC. Il existe donc un besoin pour offrir à l’utilisateur la possibilité d’utiliser des mots de passe très simples tout en lui assurant une sécurité élevée sur des sites diversifiés, indépendamment du terminal qu’il utilise. L'invention vient améliorer l'état de la technique. Elle propose à cet effet un procédé de génération d’un mot de passe pour l’accès à un service, le dit procédé comportant les étapes suivantes sur un dispositif de génération de mots de passe connecté à un terminal d’un utilisateur : - obtention d’une première donnée représentative d'au moins un symbole ; - en fonction de la première donnée obtenue, obtention d’au moins une seconde donnée comportant au moins deux symboles pour un symbole de la première donnée ; - génération d’une troisième donnée, dite mot de passe, à partir de ladite au moins une seconde donnée ; - transmission dudit mot de passe vers le terminal. Par « symbole » on entend n’importe quel symbole appartenant à un dictionnaire, par exemple un caractère. Par dictionnaire, on entend ici une source quelconque de symboles (alphabet, syllabes, mots, lettres, chiffres, suites de chiffres et de lettres, caractères spéciaux, etc.). Par exemple, on utilise pour source de la première donnée un dictionnaire constitué des 9 chiffres de 0 à 9 et pour source de la seconde donnée un dictionnaire constitué de toutes les lettres et combinaisons de lettres de l’alphabet latin. Le mot de passe est constitué dans ce cas de mots (suite de lettres) tirés par exemple aléatoirement de ce dictionnaire. Naturellement, de nombreuses variantes peuvent être envisagées sans sortir du cadre de l’invention : utilisation de chiffres, caractères spéciaux, etc. Avantageusement selon l’invention, lorsque l'utilisateur entre au moins un symbole, par exemple un caractère correspondant à un chiffre entre 0 et 9, dans une interface homme-machine du dispositif, une autre chaîne de symboles, par exemple de caractères alphanumériques (comme 7b2a385c ), est générée par le dispositif et concaténée au mot de passe. Cette chaîne de symboles étant plus longue et plus complexe que le simple caractère entré, le mot de passe qui en résulte est plus robuste. En effet, il n’est pas facile pour un utilisateur humain de mémoriser une longue suite de symboles, qu’il s’agisse de combinaisons de lettres, de chiffres, etc. Il est en revanche très simple pour lui de mémoriser la première donnée (par exemple 1234) en tant que suite de digits à saisir sur le clavier du dispositif, ou à prononcer à une interface vocale, etc. Pour chaque digit rentré par l’utilisateur et obtenu par le programme de génération, une chaîne de caractères plus longue est générée et éventuellement concaténée à la chaîne existante. On aboutit ainsi à un mot de passe long et complexe à partir d’un code simple comme une suite de digits. On notera que le mot de passe peut indifféremment être généré à la volée, c’est-à-dire que chaque symbole saisi sur le dispositif entraîne la génération d’une partie du mot de passe, ou être généré après que tous les symboles de la première donnée ont été saisis sur le terminal. Selon un mode de mise en œuvre particulier de l'invention, dans le procédé tel que décrit ci-dessus, l’étape de transmission est précédée d’une étape de vérification de la première donnée obtenue. Avantageusement selon ce mode, la première donnée, constituée d’un ou plusieurs symboles saisis sur une interface du dispositif, est vérifiée avant d’être transmise au terminal. La vérification peut porter sur différents éléments : nombre de premiers symboles rentrés, par exemple si le procédé attend un code de type PIN constitué de 4 chiffres, on pourra exclure de la validation certaines premières données (par exemple « 587 » est trop court, un code « 0000 » ou « 1234 » peut être interdit car trop facile à deviner, etc.) Selon un mode de mise en œuvre particulier de l'invention, dans le procédé tel que décrit ci-dessus, l’étape de transmission est précédée d’une étape de vérification du mot de passe généré. Avantageusement selon ce mode, le mot de passe final est vérifié avant d’être transmis au terminal. La vérification peut porter sur différents éléments : nombre de symboles générés, longueur du mot de passe généré, complexité du mot de passe généré, etc. On peut envisager notamment une méthode standard de vérification, comme la présence de majuscule et/ou minuscule, chiffre, caractère spécial, etc. dans le mot de passe, ou le respect d’une longueur minimale. Selon un autre exemple, le niveau de sécurité du mot de passe, ou seuil minimal d’entropie à respecter, peut être vérifié à chaque fois qu’une nouvelle obtention d’un symbole/caractère ajoute une chaîne supplémentaire au mot de passe. Une entropie se définit le plus généralement, dans le domaine de l’information et de la communication, comme une fonction mathématique qui correspond à la quantité d'information contenue ou délivrée dans un message (le mot de passe dans notre cas) par une source d'information, dans ce contexte un dictionnaire de caractères. Du point de vue d'un récepteur, plus la source émet des symboles différents avec une égale probabilité, et plus l'entropie est élevée. On peut ainsi signifier à l’utilisateur, dès que le niveau d’entropie, et donc de robustesse, du mot de passe, est jugée suffisante, qu’il peut arrêter de saisir des caractères sur le clavier du dispositif. Selon un mode de mise en œuvre particulier de l'invention, dans le procédé tel que décrit ci-dessus, une étape de déverrouillage précède l’obtention du premier symbole de la première donnée. Avantageusement selon ce mode, une sécurité supplémentaire est associée à la génération du mot de passe. L’étape de déverrouillage permet en effet de s’assurer que l’utilisateur du dispositif de génération est bien celui attendu (p. ex. son propriétaire). Elle peut être effectuée à la suite de l’obtention d’une donnée biométrique de l’utilisateur (empreinte digitale, empreinte de l’œil, mouvement prédéfini, séquence vocale, etc.) Selon un mode de mise en œuvre particulier de l'invention, le procédé tel que décrit ci-dessus comporte en outre une étape d’initialisation du dispositif, comportant une sous-étape d’enregistrement d’une suite d’au moins deux symboles de la seconde donnée en association avec au moins un symbole de la première donnée. Avantageusement selon ce mode, le dispositif est configuré à l’avance pour générer automatiquement des mots de passe. Par exemple, si le dispositif dispose d’un clavier de touches numérotées de 0 à 9, on peut associer à chacun de ces chiffres une suite de symboles alphanumériques, enregistrés dans la mémoire du dispositif. Par la suite, quand l’utilisateur presse une touche du dispositif, la suite de symboles correspondante est extraite de la mémoire et automatiquement concaténée au mot de passe en cours de préparation. Corrélativement, l’invention propose aussi un dispositif de génération d’un mot de passe, comprenant au moins un module de transmission, une mémoire et un processeur configurés pour: - obtenir, une première donnée représentative d'au moins un symbole ; - en fonction de la donnée obtenue, obtenir une seconde donnée comportant au moins deux symboles pour un symbole de la première donnée ; - générer une troisième donnée, dite mot de passe, à partir de ladite au moins une seconde donnée ; - transmettre ledit mot de passe via le module de transmission. L'invention concerne également un tel dispositif comportant en outre une interface homme-machine pour l’obtention de ladite au moins une première donnée. L'invention concerne également un tel dispositif dans lequel l’interface homme-machine est un clavier. L'invention concerne également un tel dispositif dans lequel le module de transmission est une interface de type série. L'invention concerne également un tel dispositif dans lequel le module de transmission est une interface de type radio. L’invention concerne aussi un système comprenant : - un dispositif de génération d’un mot de passe tel que défini précédemment, - un terminal connecté au dispositif de génération de mots de passe via son module de transmission, configurés de manière à transmettre le mot de passe généré par le dispositif vers le terminal lorsque le mot de passe est valide. L'invention concerne également un programme d'ordinateur comportant des instructions pour la mise en œuvre du procédé ci-dessus selon l'un quelconque des modes particuliers de réalisation décrits précédemment, lorsque ledit programme est exécuté par un processeur. Le procédé peut être mis en œuvre de diverses manières, notamment sous forme câblée ou sous forme logicielle. Ce programme peut utiliser n'importe quel langage de programmation, et être sous la forme de code source, code objet, ou de code intermédiaire entre code source et code objet, tel que dans une forme partiellement compilée, ou dans n'importe quelle autre forme souhaitable. L'invention vise aussi un support d'enregistrement ou support d'informations lisible par un ordinateur, et comportant des instructions d'un programme d'ordinateur tel que mentionné ci-dessus. Les supports d'enregistrement mentionnés ci-devant peuvent être n'importe quelle entité ou dispositif capable de stocker le programme. Par exemple, le support peut comporter un moyen de stockage, tel qu'une ROM, par exemple un CD-ROM ou une ROM de circuit microélectronique, ou encore un moyen d'enregistrement magnétique, par exemple un disque dur. D'autre part, les supports d'enregistrement peuvent correspondre à un support transmissible tel qu'un signal électrique ou optique, qui peut être acheminé via un câble électrique ou optique, par radio ou par d'autres moyens. Les programmes selon l'invention peuvent être en particulier téléchargés sur un réseau de type Internet. Alternativement, les supports d'enregistrement peuvent correspondre à un circuit intégré dans lequel le programme est incorporé, le circuit étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé en question. Ce dispositif et ce programme d'ordinateur présentent des caractéristiques et avantages analogues à ceux décrits précédemment en relation avec le procédé de génération d’un mot de passe. Liste des figures D’autres caractéristiques et avantages de l’invention apparaîtront plus clairement à la lecture de la description suivante de modes de réalisation particuliers, donnés à titre de simples exemples illustratifs et non limitatifs, et des dessins annexés, parmi lesquels : La illustre un exemple d'environnement de mise en œuvre de l'invention selon un mode particulier de réalisation ; La illustre une architecture d’un dispositif de génération de mots de passe selon un mode de réalisation de l’invention ; La illustre des étapes du procédé de génération de mots de passe selon un mode de réalisation de l’invention. Description d'un mode de réalisation de l'invention Principe général de l'invention Le principe général de l’invention consiste à connecter sur un terminal (ordinateur/tablette/smartphone/passerelle) d’accès à un service (service Web, service de paiement, etc.) un dispositif très simple reconnu comme un périphérique d’accès, par exemple de type clavier. Ce dispositif très simple comporte un nombre limité de touches (par ex. de 0 à 9). L'utilisateur peut associer à chaque touche un nombre aléatoire de symboles ou caractères. Chaque pression sur une touche génère une série de chiffres et/ou de lettres et/ou symboles d’un alphabet quelconque à transmettre au terminal auquel il est connecté. Il est ainsi possible de générer un mot de passe très difficile à pirater avec un nombre minimum de chiffres ou lettre à mémoriser par l'utilisateur. Modes particuliers de réalisation de l'invention. La représente le contexte d’un mode de réalisation de l’invention selon lequel un utilisateur (A) doit entrer un mot de passe pour authentification à un site distant S via un terminal B, par exemple un site de paiement, ou un hotspot, etc. Selon cet exemple, le mot de passe est destiné à une application s’exécutant sur un serveur WEB auquel est connecté le terminal B par un réseau Internet. Naturellement d’autres scénarios sont envisageables : le réseau peut être de toute nature (radiomobile, internet, cellulaire, etc.) ; le service visé peut être localisé sur le terminal lui-même, par exemple s’il s’agit d’un serveur, d’un terminal de paiement, d’une passerelle domestique, etc. L’utilisateur dispose d’un dispositif (C) connecté au terminal par un lien de communication (L). La connexion peut être de type quelconque, filaire ou non filaire. Selon un mode de réalisation, elle est de type USB (Universal Serial Bus) pour une connexion série avec le terminal B, qui dispose d’une interface de même type que le dispositif (USB). Le dispositif C est, selon cet exemple, un dispositif très simple reconnu comme un clavier USB, qui permet de saisir des données numériques de type chiffres, de les convertir, par association de chaque chiffre à une suite de symboles plus longue, en un mot de passe complexe et de les transmettre vers le terminal B. Par exemple, l’utilisateur saisit sur ce dispositif, à l’aide de son clavier, un code de type « code PIN » c’est-à-dire une suite ordonnée de 4 chiffres. À chaque fois qu’il saisit un chiffre, une suite de symboles est obtenue depuis la mémoire du dispositif, et cette suite est concaténée au mot de passe en cours de génération. Le mot de passe est finalisé après saisie du quatrième chiffre. Optionnellement le code et/ou le mot de passe peut s’afficher pour vérification sur un écran du terminal s’il en dispose et la saisie est validée par des touches de validation du dispositif, déclenchant une transmission vers le terminal B selon le protocole série USB. Dans un tel contexte, le dispositif peut être dépourvu d’alimentation interne. L’interface USB transporte en effet, classiquement, une alimentation jusqu’au microcontrôleur du dispositif C. Le microcontrôleur étant correctement alimenté, la communication devient possible entre le dispositif C et le terminal B. Avantageusement, un tel dispositif très simple procure l’avantage supplémentaire d’être très peu vulnérable aux attaques et aux piratages. Le dispositif C est selon un autre exemple, non représenté, un smartphone hébergeant une application de génération de mots de passe. Sur l’écran du smartphone, l’utilisateur peut saisir des données, par exemple numériques, qui sont transformées en mot de passe par un module logiciel (par exemple une applet) ou matériel (par exemple une clé USB) avant de les transmettre vers le terminal B. Par exemple, l’utilisateur saisit sur le smartphone, à l’aide d’un clavier émulé, un code de type « code PIN ». Optionnellement le code et/ou le mot de passe peut s’afficher pour vérification sur l’écran du terminal ou du smartphone, et la saisie est validée par des touches de validation du smartphone, déclenchant une transmission vers le terminal B selon un protocole radio (par exemple Bluetooth). Naturellement, dans les deux cas, de nombreuses variantes sont envisageables sans sortir du contexte de l’invention : d’autres interfaces et protocoles de communication filaires ou sans fils à la portée de l’homme du métier pourront remplacer les protocoles USB ou Bluetooth mentionnés pour la communication avec le terminal : par exemple une interface série de type RS232, ou un autre type d’interface série, ou encore une interface parallèle, ou encore une interface radio de type Wi-Fi, ou lumineuse de type Li-Fi, etc. Néanmoins, un autre type de connexion n’étant pas forcément apte à fournir au microcontrôleur du dispositif l’alimentation qui lui est nécessaire, il faudra prévoir en plus un moyen d’alimentation, par exemple un générateur de courant, au niveau du dispositif. d’autres interfaces homme-machine peuvent être utilisées : interface vocale (l’utilisateur prononce une suite de chiffres ou de lettres), interface de détection d’un mouvement (l’utilisateur dessine à l’écran un pattern correspondant à une suite de symboles de la première donnée), etc. La illustre une architecture du dispositif C selon un mode de réalisation. Selon ce mode de réalisation, le dispositif C possède l'architecture classique d'un clavier , et comprend notamment une mémoire MEM, une unité de traitement UT, équipée par exemple d'un processeur PROC, et pilotée par le programme d'ordinateur PGR stocké en mémoire MEM. A l'initialisation, les instructions de code du programme d'ordinateur PGR sont par exemple chargées dans une mémoire avant d'être exécutées par le processeur PROC. Le processeur PROC de l'unité de traitement UT met notamment en œuvre les étapes du procédé de génération de mot de passe selon l'un quelconque de modes particuliers de réalisation décrits en relation avec les figures 1 et 3, selon les instructions du programme d'ordinateur PGR : initialisation du dispositif, notamment dans le but de sa reconnaissance comme clavier de type USB selon un mode de réalisation de l’invention, génération des mots de passe à partir d’un code simple, vérification du code ou des mots de passe, vérification de l’utilisateur, etc. Selon d’autres modes ou variantes, et sans sortir du cadre de l’invention, le dispositif comporte en outre: un module d’entrée-sortie (COM) pour les communications avec le terminal B (liaison série USB, ou module NFC, ou Wi-Fi, etc.) ; un module d’alimentation (il peut s’agir d’une alimentation sur le dispositif, ou d’une alimentation reçue via une liaison type USB par exemple) ; une base de données (BD) mémorisant notamment les séquences de symboles (de la deuxième donnée) associées aux entrées de l’utilisateur (entrée des symboles de la première donnée) ; par exemple, une séquence de préférence aléatoire de symboles alphanumériques est associée à chaque digit de 1 à 9 ; selon les modes de réalisation décrits, la base de donnés se trouve dans la mémoire MEM du dispositif ou d’un dispositif associé. un module CONV de conversion pour convertir les entrées de l’utilisateur (première donnée) en un mot de passe (troisième donnée) à transmettre au terminal, résultant de la concaténation des secondes données ; un module IHM pour la communication avec l’utilisateur (par exemple un module de pilotage du clavier, apte à récupérer les entrées de l’utilisateur sur les touches du clavier, ou un microphone apte à récupérer des données audio, etc.) optionnellement, un module SEC pour protéger l’accès au dispositif (reconnaissance d’empreinte, faciale, vocale, etc. de l’utilisateur) ; optionnellement un module GENE (non représenté) de génération de clés (K1) qui peut associer, lors de l’initialisation du dispositif, à un symbole au moins une chaîne de symboles, plus longue, et de préférence aléatoire. Ce module peut être utilisé au premier usage du dispositif (initialisation) ou au cours d’une réinitialisation du dispositif (reset entraînant une perte des mots de passe existants). Optionnellement, ce module peut associer des chaînes différentes au même symbole selon l’ordre, la récurrence, etc. des symboles. Il peut par exemple utiliser un générateur d’aléas (de type GUID ou UUID, etc.) optionnellement un module IMP (non représenté) d’import/export des données vers un nouveau dispositif, dans le cas où l’utilisateur changerait de dispositif et souhaiterait récupérer les associations enregistrées. Selon un autre mode de réalisation, non représenté, le dispositif est partiellement inclus dans un terminal de type smartphone, qui possède déjà un clavier et peut supporter l’algorithme de conversion. Dans ce cas le dispositif peut être une simple clé à connecter sur le smartphone, comportant le module BD pour associer des chaînes de symboles à un caractère/symbole. Selon un autre mode de réalisation, non représenté, le dispositif est totalement inclus dans un terminal de type smartphone équipé d’un programme spécifique (de préférence sécurisé, comme par exemple une applet s’exécutant dans la carte SIM associée au smartphone), apte à gérer tous les modules cités auparavant, notamment le clavier (IHM) via une émulation sur l’écran du smartphone, l’algorithme de conversion (CONV) et les tables de conversion (BD) en mémoire, et la communication (COM) avec le terminal, par exemple en utilisant le module Bluetooth du smartphone. Avantageusement dans ce cas, le smartphone est équipé des moyens matériels et logiciels qui lui permettent d’être reconnu comme un clavier (un module d’émulation de clavier). La illustre des étapes du procédé de génération du mot de passe selon un mode de réalisation de l’invention. Lors d’une étape E0 , l’utilisateur procède à un certain nombre d’initialisations sur son dispositif : il déverrouille optionnellement le dispositif (via une empreinte, un code, etc.), puis configure l’interface homme machine, selon ce mode de réalisation les touches du clavier ; selon un exemple, il peut entrer lui-même les combinaisons associées aux touches, soit directement sur le clavier du dispositif (par exemple la touche 1 sera associée à la chaîne 273293857) soit sur une interface du terminal utilisateur qui est connecté au dispositif, ce qui permet de disposer d’un dictionnaire de symboles plus étendu (par exemple la touche 1 sera associée à la chaîne 32414c279f52, etc.) Selon un autre exemple, le module GENE de génération utilise un générateur de données aléatoires, ou aléas, à associer à chacune des touches (par exemple 1 b7b2a385c ; 2e79av ; 39099 ; 4 32414c279f52, etc.) Dans tous les cas, les associations entre les touches (génératrices des premières données) et les séquences (ou secondes données) sont mémorisées par le dispositif. De préférence, lors de cette étape, le dispositif est connecté à un terminal qui lui propose une interface de configuration. Lors d’une étape E1 ultérieure, lorsque l’utilisateur souhaite accéder à un service (local ou distant) protégé par un mot de passe, il connecte son dispositif au terminal d’accès B, par exemple via une liaison USB. Lors de la connexion, un dialogue s’établit entre le terminal et le dispositif, selon une procédure classique de reconnaissance USB à l’issue de laquelle le dispositif est reconnu comme un clavier USB. Un tel dialogue, au cours duquel le dispositif se décrit comme un HID (Human Interface Device) de type clavier, est bien connu de l’homme du métier. L’utilisateur déverrouille optionnellement le dispositif, l’accès aux touches étant protégé par une lecture d'empreinte digitale afin de s'assurer que quelqu'un qui trouverait le dispositif ne puisse pas voir les codes générés par la clé (ce qui tendrait à diminuer la protection), ou mot de passe. Selon une variante, le branchement du dispositif au terminal produit l'apparition d'un clavier virtuel à l'écran du terminal, ce qui permet d'augmenter le nombre de possibilités et d'avoir accès à un code (première donnée) alphanumérique (par exemple un code simplifié en liaison avec l’utilisateur ou le service requis, comme par exemple 'garry' ou « BOX »). Selon une autre variante, les touches du dispositif peuvent être remplacées par un autre mécanisme d’interfaçage avec l’utilisateur, par exemple un micro couplé à un module de reconnaissance vocale et/ou d’identification du locuteur. Lors d’une étape E10 , le terminal B demande un mot de passe, par exemple celui requis pour l’accès au site distant S représenté sur la . Lors d’une étape E2 , l’utilisateur entre au moins un symbole du code de connexion au service, c’est-à-dire une première donnée (9, ou B, etc.) ou la totalité des premières données attendues (9-4-7-1 ou B.O.X ou Y.A.H.O.O, etc.) Ce code est noté K0. Lors d’une étape E3 , une seconde donnée est générée par le dispositif pour le ou les symboles qui viennent d’être entrés, à partir de la mémorisation qui a été effectuée à l’étape E0. Cette seconde donnée peut correspondre à tout ou partie du mot de passe (noté K2) selon que le code de connexion a été rentré entièrement ou non. En effet : selon un premier mode, la seconde donnée, K1, est générée à chaque fois que l’utilisateur entre un symbole (en pressant une touche) et la seconde donnée est concaténée dans un buffer de constitution du mot de passe ; dans ce cas les étapes E2 et E3 sont effectuées autant de fois qu’il est nécessaire à l‘obtention du code constitué des premières données (K0) et donc à la génération du mot de passe complet. Ceci est illustré par la flèche remontante en pointillé sur la figure ; selon une variante, la seconde donnée est générée à chaque fois que l’utilisateur entre un symbole (touche) et la seconde donnée est transmise au fil de l’eau au terminal ; dans ce cas il n’est pas nécessaire d’utiliser un buffer intermédiaire de concaténation et les étapes E2 à E4 sont effectuées autant de fois qu’il est nécessaire à l‘obtention du code (et donc du mot de passe) complet. Ceci est illustré par la flèche remontante en pointillé sur la figure ; selon une autre variante, la seconde donnée est générée seulement lorsque l’utilisateur a saisi entièrement son code, ou ensemble de premières données. Dans ce cas le mot de passe complet est généré en une seule fois à l’étape E3, il n’est pas nécessaire d’utiliser un buffer intermédiaire de concaténation. Lors d’une étape E4, le mot de passe est transmis au terminal. On notera que, selon l’option choisie précédemment, il peut être transmis au fil de l’eau au fur et à mesure de la génération des deuxièmes données, ou à la fin lorsque le mot de passe est entièrement constitué. Lors d’une étape E11 , le terminal reçoit le mot de passe K2 et le vérifie. Si le mot de passe n’est pas valide, le procédé peut revenir à l’étape E10/E2. Sinon l’utilisateur accède au service à l’étape E12 . Le dispositif peut être déconnecté du terminal. Il va de soi que le mode de réalisation qui a été décrit ci-dessus a été donné à titre purement indicatif et nullement limitatif, et que de nombreuses modifications peuvent être facilement apportées par l’homme de l’art sans pour autant sortir du cadre de l’invention. Procédé de génération d’un mot de passe (K1) pour l’accès à un service, le dit procédé comportant les étapes suivantes sur un dispositif de génération de mots de passe connecté à un terminal d’un utilisateur : - obtention (E2) d’une première donnée (K0) représentative d'au moins un symbole ; - en fonction de la première donnée obtenue, obtention (E3) d’au moins une seconde donnée (K1) comportant au moins deux symboles pour un symbole de la première donnée ; - génération d’une troisième donnée, dite mot de passe (K2), à partir de ladite au moins une seconde donnée ; - transmission (E4) dudit mot de passe vers le terminal (B). Procédé selon la revendication 1, dans lequel l’étape de transmission est précédée d’une étape de vérification de la première donnée obtenue. Procédé selon la revendication 1, dans lequel l’étape de transmission est précédée d’une étape de vérification du mot de passe généré. Procédé selon la revendication 1, dans lequel une étape de déverrouillage précède l’obtention du premier symbole de la première donnée. Procédé selon la revendication 1, comportant en outre une étape d’initialisation du dispositif, comportant une sous-étape d’enregistrement d’une suite d’au moins deux symboles de la seconde donnée en association avec au moins un symbole de la première donnée. Dispositif (C) de génération d’un mot de passe (K2), comprenant au moins un module de transmission (COM), une mémoire (MEM) et un processeur (PROC) configurés pour: - obtenir (E2, IHM), une première donnée (K0) représentative d'au moins un symbole ; - en fonction de la donnée obtenue, obtenir (E3, CONV) une seconde donnée (K1) comportant au moins deux symboles pour un symbole de la première donnée ; - générer (E4) une troisième donnée, dite mot de passe (K2), à partir de ladite au moins une seconde donnée ; - transmettre ledit mot de passe via le module de transmission. Dispositif de génération d’un mot de passe selon la revendication 6, comportant en outre une interface homme-machine pour l’obtention de ladite au moins une première donnée. Dispositif de génération d’un mot de passe selon la revendication précédente, dans lequel l’interface homme-machine est un clavier. Dispositif de génération d’un mot de passe selon l’une des revendications 6 à 8, dans lequel le module de transmission est une interface de type série (USB). Dispositif de génération d’un mot de passe selon l’une des revendications précédentes, dans lequel le module de transmission est une interface radio (BT, NFC, Wi-Fi). Système comprenant : - un dispositif de génération d’un mot de passe selon l’une des revendications précédentes, - un terminal connecté au dispositif de génération de mots de passe via son module de transmission, configurés de manière à transmettre le mot de passe généré par le dispositif vers le terminal lorsque le mot de passe est valide. Programme d’ordinateur apte à être mis en œuvre sur un dispositif tel que défini dans la revendication 6, le programme comprenant des instructions de code qui, lorsque le programme est exécuté par un processeur, réalise les étapes du procédé défini selon l’une des revendications 1 à 5.