Brevet FR3081239A1 — publié le 20191122

SYSTEME ET PROCEDE D'AUTHENTIFICATION UTILISANT UN JETON A USAGE UNIQUE DE DUREE LIMITEE L'invention concerne un système et un procédé permettant d'authentifier un individu lors d'une transaction ou d'un contrôle d'identité, en utilisant notamment un jeton d'usage d'identité unique daté et limité dans le temps. Le système en fonctionnement normal ne mémorise pas d'informations confidentielles propres à un individu. L'invention trouve son utilisation notamment dans les domaines suivants : lors d'une connexion sur un site Web (facebook0, google0, ...), lors d'opérations de paiements en ligne, pour sécuriser des réservations en ligne (hôtels, train, avion), pour accéder à une messagerie électronique, pour des serveurs de transactions bancaires ou pour les banques en ligne. Les systèmes de paiements et de réservations par internet mettent en oeuvre une étape d'identification de l'individu. Ceci pose notamment le problème d'une éventuelle usurpation d'identité numérique. Le paiement en ligne ou e-paiement peut devenir frauduleux si un tiers a dérobé les données confidentielles d'un individu, par exemple son identité et ses coordonnées bancaires. Différentes méthodes sont actuellement envisagées pour sécuriser les transactions, notamment au niveau de l'authentification sur un serveur web et du paiement électronique sur internet. Pour l'authentification sur un serveur web, deux possibilités existent : - Soit un système de mot de passe qui oblige à stocker le hash de la fonction de hachage en central et qui présente l'inconvénient de pouvoir être piraté ; - Soit un système d'authentification basé sur un mécanisme de mot de passe à usage unique OTP (one time password) envoyé sur un équipement mobile, tel qu'un téléphone, une tablette, ou une messagerie électronique. L'OTP est en clair et le message SMS 2 (Short Message Service) contenant cet OTP peut être lu à l'insu du propriétaire du téléphone. Il en est de même pour les messages électroniques (couriels ou emails, le compte e-mail qui peut être piraté car souvent la connexion est réalisée par un simple mot de passe). 5 Le paiement électronique sur internet passe par l'utilisation d'un numéro de carte bancaire ou d'un mot de passe unique envoyé directement sur le téléphone d'un utilisateur ou d'un support équivalent. La première méthode nécessite l'envoi en central des informations de la carte bancaire. La deuxième méthode nécessite la mise en place d'une interface de 10 communication entre le serveur web et les serveurs centraux des différentes banques. Il n'est pas possible pour un utilisateur de paramétrer le compte utilisateur. Différents systèmes sont décrits dans l'art antérieur pour tenter de combattre la fraude, l'usurpation d'identité et toute tentative frauduleuse dans 15 le cas de transactions qui sont réalisées dans l'environnement Internet. La demande de brevet US 2017/0094573 divulgue un mécanisme d'authentification basé sur un code barre ou QRcode. Le QRcode est un élément d'entrée pour authentifier un individu. La demande de brevet W02009/071756 décrit un système dans 20 lequel une transaction est validée en prenant en temps réel « live » des données biométriques, telles que, la voix, l'image et en vérifiant la concordance ou « matching » des données en central. La demande de brevet WO 201 5/1 681 09 divulgue un terminal de paiement qui permet de sécuriser les transactions avec un système de 25 capture et un « matching » biométrique. La demande de brevet WO 2015/135744 décrit un procédé mis en oeuvre par ordinateur pour confirmer une identité numérique d'un utilisateur par rapport à un système informatique de service, avec vérification de l'identité numérique de l'utilisateur au moyen de l'évaluation automatique à la 30 fois des valeurs d'attributscontenus dans la requête de l'utilisateur et du 3 niveau de confiance calculé pour l'utilisateur, et un ou plusieurs attributs de la requête. La demande de brevet W02015/028339 décrit un terminal de reconnaissance faciale et de lecture à reconnaissance optique de 5 caractères OCR. La demande de brevet W02016/083987 concerne une transaction électronique qui utilise le « match » biométrique en central. Malgré tous les avantages apportés par les systèmes et les procédés connus de l'art antérieur, ces derniers présentent des limites dans 10 le niveau de sécurité pouvant être atteint. L'invention a notamment pour objectif de fournir un système et un procédé qui permettent notamment de renforcer la sécurité lors du traitement d'une transaction, telle qu'une vérification d'identité pour le paiement ou une réservation en ligne, ou encore une des applications présentées ci-dessus. 15 L'objet de l'invention repose notamment sur la mise en place d'un mécanisme de jeton d'usage unique, daté et limité dans le temps. L'invention concerne un procédé pour authentifier un utilisateur dans un système comprenant un site web requérant la génération d'un jeton d'usage J, un serveur comprenant un annuaire de compte identité numérique 20 pour des utilisateurs, caractérisé en ce qu'il comporte au moins les étapes suivantes : o Sur requête d'un utilisateur, le site web demande la génération d'un jeton d'usage J ayant une durée de validité limitée dans le temps pour le compte de l'utilisateur, 25 o La demande de génération de jeton d'usage est transmise à un annuaire de compte d'identité numérique qui vérifie l'état du compte identité numérique de l'utilisateur, o Dans le cas où l'état de compte d'identité numérique est valable, un jeton d'usage de durée de validité est généré, un mot de passe à 30 usage unique OTP est chiffré avec la clé publique de l'utilisateur et 4 une demande d'émission de jeton d'usage est transmise vers l'utilisateur, o L'utilisateur décide d'accepter ou de refuser cette demande d'émission de jeton d'usage J, 5 o Lorsque l'utilisateur accepte l'émission d'un jeton d'usage, l'utilisateur saisit un code d'authentification, cette saisie générant une demande de déchiffrement du mot de passe OTP vers une application d'identification d'identité numérique, qui déchiffre le mot de passe OTP et le transmet pour affichage au niveau du dispositif de saisie 10 des informations de l'utilisateur, et simultanément l'application d'identification d'identité numérique vérifie la validité temporelle du jeton généré, o L'utilisateur va saisir l'OTP sur le site web, o Le site internet vérifie l'OTP en utilisant l'OTP généré avec la clé 15 publique de site au niveau du système de génération d'un jeton d'usage, l'OTP ayant été reçu et déchiffré par le site, et simultanément, le site web vérifie la validité temporelle du jeton généré, o Suite au résultat de cette vérification, l'accès de l'utilisateur au site 20 web est accepté, ou l'accès est refusé. Selon un mode de réalisation, on utilise un jeton d'usage J comprenant au moins les paramètres suivants : date de création, heure de création, durée de validité, type d'usage, numéro de jeton, pseudo de l'utilisateur, signature du hash du contenu de jeton. 25 Selon un autre mode, on utilise un jeton d'usage comprenant un OTP chiffré avec une clé publique du site web ou une clé de l'utilisateur, ou encore un jeton comprenant les données bancaires de l'utilisateur chiffrées avec OTP. L'invention concerne aussi un système pour authentifier un 30 utilisateur, le système comprenant un site web, un serveur de jeton d'usage 5 communiquant avec le site web, caractérisé en ce qu'il comporte au moins les éléments suivants : - Un annuaire de compte identité numérique communiquant avec le serveur de jeton d'usage et avec une application utilisateur, 5 - Une application chargée sur un support configurée pour déchiffrer un mot de passe unique OTP et transmettre l'OTP déchiffré vers l'application utilisateur, - Un dispositif configuré pour la saisie des informations d'identité propres à l'utilisateur. 10 Le support et l'application utilisateur communiquent, par exemple, via une liaison sans contact. Le serveur de jeton d'usage peut être configuré pour générer des jetons d'usage comprenant au moins les informations suivantes : date de création, heure de création, durée de validité, type d'usage, numéro de jeton, 15 pseudo de l'utilisateur, OTP chiffré avec une clé de l'utilisateur ou avec une clé du site web, signature du hash du contenu de jeton et/ou données bancaires. Le support est, par exemple, une carte à puce. L'utilisateur est équipé d'un téléphone mobile, d'un ordinateur 20 personnel ou d'une tablette permettant la saisie des données. D'autres caractéristiques et avantages de la présente invention apparaîtront mieux à la lecture de la description d'exemples de réalisation annexée des figures qui représentent : - Figure 1, un exemple d'architecture du système selon l'invention 25 - Figure 2, un diagramme (flowchart) des différentes étapes mises en oeuvre par le procédé selon l'invention, et - Figure 3, un diagramme expliquant le fonctionnement d'un compte informatique « identité numérique ». Afin de mieux illustrer l'objet de l'invention, l'exemple qui suit est 30 donné, à titre illustratif et nullement limitatif, dans le cadre d'une transaction électronique mettant en jeu internet. 6 La figure 1 illustre un exemple d'architecture selon l'invention comprenant un utilisateur 1, un dispositif 2 de saisie d'informations, permettant d'entrer les demandes et coordonnées de l'utilisateur, tel qu'un ordinateur, une tablette ou un téléphone mobile, un réseau de type internet, 5 un site web nécessitant une authentification 3, un dispositif de génération de jeton d'usage 4, un annuaire de compte identité numérique 5 et un dispositif 6 comprenant une application exécutée sur un environnement sécurisé portatif, par exemple une carte à puce, plus connue sous l'expression anglo-saxonne « Applet » CNI-E. Il est aussi possible d'utiliser 10 l'environnement d'exécution sécurisé d'un téléphone, connu sous l'acronyme anglo-saxon « TEE » pour Trusted Execution Environment). Le dispositif 6 communique avec une application utilisateur 7 implémentée sur un ordinateur personnel PC, un téléphone mobile 8, ou une tablette 9, ou tout autre dispositif équivalent. 15 Le site web comporte une application de gestion de compte utilisateur. Il communique avec le dispositif de génération de jeton d'usage au moyen d'une liaison privée par exemple une liaison VPN IF (Virtual Private Network Internet Protocol). Le dispositif de génération de jeton d'usage ou serveur de jeton 20 est, par exemple, un serveur applicatif hébergé sur une infrastructure informatique II communique avec l'application utilisateur « Applet » au moyen d'une liaison téléphonique de troisième génération 3G, ou de quatrième génération 4G ou par liaison internet IF, et avec l'annuaire de compte identité numérique 5 au moyen d'une liaison VPN IF. 25 L'annuaire de compte Identité Numérique 5 est, par exemple, un serveur applicatif hébergeant au moins les informations suivantes : a - Compte utilisateur : i. pseudo, nom d'usage de l'utilisateur, ii. N° de téléphone mobile ou/et e-mail, 30 iii. N° du document d'identité physique, carte d'icbntité, passeport, 7 iv. Liste des sites autorisés à demander un jeton d'usage avec un niveau d'authentification requis par l'application, par exemple le niveau de sécurité requis par l'union européenne connu sous l'acronyme eIDAS, v. Etat du compte informatique « identité numérique » utilisateur 5 qui respecte le diagramme illustré en figure 2, vi. Certificat identité numérique, ID-numérique, certificat utilisateur contenant une clé publique, vii. La journalisation des demandes d'usages, historisation de l'activité des demandes d'usages émises par le système de jeton; 10 b - Information des sites autorisés à demander un jeton d'usage i.Nom du site, ii. Certificat d'infrastructure à clé publique PKI (Public Key Infrastructure). Le support ou document porteur 6 permettant l'identification est, 15 par exemple, un élément sécurisé portatif (téléphone mobile, tablette numérique, etc.) sur lequel est implémentée l'application Applet qui communique avec l'application utilisateur au moyen, par exemple, d'une liaison sans contact. Le document porteur 6 peut être un support physique intégrant un élément de sécurité, tel qu'un circuit électronique d'une carte à 20 puce, relié à une antenne 6a (pour une liaison sans contact) et/ou une pastille contact 6b (pour une liaison avec contact). L'élément de sécurité héberge une application de type Applet 'ID numérique'. L'application héberge les données suivantes : i. N° série ID-numérique, 25 ii. Clé de chiffrement asymétrique, iii. Certificat à clé publique PKI (Public Key Infrastructure) jeton d'usage, iv. Coordonnés bancaires, v. Des données biométriques, par exemple, l'empreinte 30 biométrique de l'utilisateur au format de l'algorithme de 8 quantification WSQ (Wavelet Scalar Quantization), des données optionnelles en fonction des besoins d'usage, la photo, la voix, L'application Applet implémente les fonctionnalités suivantes disponibles pour un utilisateur : 5 i. Fourniture du numéro d'identité (CNI, carte nationale d'identité ou passeport), iii. Déchiffrement du mot de passe à usage unique OTP, iv. Chiffrement compte bancaire avec OTP. L'application Utilisateur 7 est un logiciel téléchargeable par 10 l'utilisateur sur un téléphone et/ou tablette et/ou PC fixe/mobile. L'application implémente notamment les fonctions suivantes : i. possibilité pour l'utilisateur de charger des informations bancaires sur l'applet ID-numérique, ii. Chargement certificat du système de jeton sur l'applet ID- 15 numérique, iii. Demande de régénération paire de clé de chiffrement asymétrique à l'applet ID-numérique. Un exemple de structure de jeton est donné dans le tableau ci- dessous : Usage Authentification E-Paiement Substantiel fort Date de création x x x Heure de création x x x Durée de validité x x x Type Usage x x x Numéro de jeton x x x Pseudo - nom d'emprunt x x N° autorisation x x x OTP (One Time Password) chiffré avec x x clé publique site ou utilisateur Données bancaires chiffrées avec OTP x Signature du hash du contenu du jeton x x x 9 Dans ce tableau, les paramètres surlignés sont nécessaires pour la mise en oeuvre du procédé selon l'invention. La figure 2 représente un organigramme de programmation qui regroupe un exemple de succession d'étapes mises en oeuvre par le procédé 5 selon l'invention : 101 - L'utilisateur 1 saisit une adresse Internet d'un site web 3 par l'intermédiaire d'un ordinateur personnel 2 ou PC, d'une tablette, d'un téléphone mobile (smartphone) ou de tout autre moyen équivalent lui permettant d'exprimer sa demande, 10 102- L'application du PC transmet cette demande d'accès au site web 3, 103 - Le site web émet une demande d'authentification au PC, qui traduit cette demande à l'utilisateur 1 en une demande de saisie des informations permettant son authentification 104, demande qui s'affiche sur l'écran du PC, 105 - L'utilisateur 1 saisit son numéro de compte d'identité numérique par le 15 clavier du PC, par exemple, puis le PC envoie ces informations (compte d'identité numérique) saisies vers le site web 3, 106, 107 - Le site web demande au système de génération de jeton d'usage, un jeton d'usage J pour le compte d'identité saisi, le jeton d'usage étant unique, daté et limité dans le temps, 20 108 - Le système de génération de jeton d'usage va transmettre cette demande à l'annuaire d'identité numérique qui va faire une vérification de l'état du compte informatique de l'individu, 109, 110 - Si l'état du compte n'est pas valable, alors le compte est bloqué et il n'y aura pas de génération de jeton d'usage, cette information sera remontée 25 vers le site web, 111 - L'annuaire d'identité a accepté la demande de jeton et la génération d'un jeton d'usage pour l'applicationrequise par l'utilisateur est autorisée. Le système de génération d'un jeton d'usage génère et chiffre un mot de passe à usage unique ou OTP (One-Time password) avec la clé publique de 30 l'utilisateur, puis le système de génération de jeton d'usage envoie une notification de demande d'émission de jeton d'usage, vers le téléphone 10 mobile 8 de l'utilisateur, 112, la clé publique est stockée en central, au niveau du compte de l'utilisateur, le certificatcontenant la clé publique, Le jeton d'usage contient les paramètres listés dans le tableau présenté ci-dessus, 113 - Le téléphone mobile 8 reçoit la notification de demande d'émission de 5 jeton d'usage, 114 - L'utilisateur 1 lit la notification et prend la décision 115 d'accepter ou de refuser cette notification. Si l'utilisateur refuse cette notification, le système en reste là, 116, 117 - Lorsque l'utilisateur accepte la notification, le téléphone mobile 8 10 détecte automatiquement la présence de l'Applet et demande à l'utilisateur de saisir le code PIN de l'Applet, 118, 119 - L'utilisateur va saisir son code PIN, au niveau du téléphone mobile, La saisie du code PIN génère une demande de déchiffrement de l'OTP, vers l'Applet CNI-E,120, 15 121 - L'Applet 121 va déchiffrer l'OTP et en même temps va vérifier si le jeton est toujours valable, en contrôlant notamment si la date de création, l'heure de création et la durée de validité du jeton à usage unique J sont valables, 122 - L'OTP déchiffré est affiché au niveau du téléphone portable de 20 l'utilisateur, 123 - L'utilisateur va saisir l'OTP sur le site web 3, 124 - Le site internet ou web vérifie l'OTP en utilisant l'OTP généré avec la clé publique de site, 130 au niveau du système de génération d'un jeton d'usage, l'OTP ayant été reçu et déchiffré par le site, en même temps, le site 25 web va vérifier la validité temporelle du jeton, comme il a été indiqué ci- dessus pour l'applet, 125 - L'accès à l'application pour l'utilisateur est accepté, 126- L'accès est refusé. La figure 3 illustre le diagramme d'état d'un compte utilisateur 30 informatique. 11 Le compte utilisateur peut prendre les états suivants : 30 - état initial, 31 - création du compte, 32 - compte activé, 5 33 - compte mis en quarantaine par un administrateur d'un site ou par l'utilisateur lui-même suite à une tentative d'usurpation, par exemple, 34 - destruction du compte. L'utilisateur gère les changements d'état 301 correspondant à la création du compte, l'activation du compte 302 et l'inactivation du compte 10 303. L'utilisateur ou un administrateur gère les changements d'état suivants : le passage d'un état de mise en quarantaine du compte vers un état inactif, 305, ou vers une suppression du compte 306. La mise en quarantaine ou la suppression peuvent résulter de la découverte d'une tentative frauduleuse d'utilisation du compte utilisateur. 15 Le système et le procédé selon l'invention présentent notamment l'avantage de ne pas centraliser d'informations d'état civil, cible d'attaque et d'offrir un niveau de sécurité ELDAS substantiel ou fort, plus élevé que la majorité des dispositifs connus de l'art antérieur. Aucune base citoyenne n'est REVENDICATIONS1 - Procédé pour authentifier un utilisateur dans un système comprenant un site web requérant la génération d'un jeton d'usage J, un serveur comprenant un annuaire de compte identité numérique pour des utilisateurs, caractérisé en ce qu'il comporte au moins les étapes suivantes : o Sur requête d'un utilisateur (1), le site web demande la génération d'un jeton d'usage J ayant une durée de validité limitée dans le temps pour le compte de l'utilisateur, o La demande de génération de jeton d'usage est transmise (108) à un annuaire de compte identité de compte (5) qui vérifie l'état du compte identité numérique de l'utilisateur (109), o Dans le cas où l'état de compte d'identité numérique est valable, (111) un jeton d'usage de durée de validité est généré, un mot de passe à usage unique OTP est chiffré avec la clé publique de l'utilisateur, et une demande d'émission de jeton d'usage est transmise vers l'utilisateur, (112), o L'utilisateur (114, 115) décide d'accepter ou de refuser cette demande d'émission de jeton d'usage J, o Lorsque l'utilisateur accepte l'émission d'un jeton d'usage J, (117), l'utilisateur saisitun code d'authentification, cette saisie générant une demande de déchiffrement (120) du mot de passe OTP vers une application d'identification d'identité numérique (121) qui déchiffre le mot de passe OTP et le transmet pour affichage au niveau du dispositif de saisie des informations de l'utilisateur (122) et simultanément l'application d'identification d'identité numérique vérifie la validité temporelle du jeton généré, o L'utilisateur va saisir l'OTP sur le site web (123), o Le site internet vérifie l'OTP (124) en utilisant l'OTP généré avec la clé publique de site, (130) au niveau du système de génération d'un jeton d'usage J, l'OTP ayant été reçu et déchiffré par le site, et 13 simultanément le site web vérifie la validité temporelle du jeton d'usage généré, o Suite au résultat de cette vérification, l'accès de l'utilisateur au site web est accepté(125) ou l'accès est refusé(126). 2 - Procédé selon la revendication 1 caractérisé en ce que l'on utilise un jeton d'usage J comprenant au moins les paramètres suivants : date de création, heure de création, durée de validité, type d'usage, numéro de jeton, pseudo de l'utilisateur, signature du hash du contenu de jeton. 3 - Procédé selon la revendication 2 caractérisé en ce que l'on utilise un jeton d'usage J comprenant un OTP chiffré avec une clé publique du site web ou une clé de l'utilisateur. 15 4 - Procédé selon l'une des revendications 2 ou 3 caractérisé en ce que l'on utilise un jeton d'usage J comprenant les données bancaires de l'utilisateur chiffrées avec OTP. 5 - Système pour authentifier un utilisateur (1) comprenant un site web (3), 20 un serveur de jeton d'usage (4) communiquant avec le site web, caractérisé en ce qu'il comporte au moins les éléments suivants : - Un annuaire de compte identité numérique (5) communiquant avec le serveur de jeton d'usage (4) et avec une application utilisateur (7), - Une application chargée sur un support (6) configurée pour déchiffrer 25 un mot de passe unique OTP, et transmettre l'OTP déchiffré vers l'application utilisateur (7), - Un dispositif configuré pour la saisie des informations d'identité propres à l'utilisateur (1). 5 10 30 6 - Système selon la revendication 5 caractérisé en ce que le support (6) et l'application utilisateur (7) communiquent via une liaison sans contact. 14 7 - Système selon l'une des revendications 5 ou 6 caractérisé en ce que le serveur de jeton d'usage est configuré pour générer des jetons d'usage comprenant au moins les informations suivantes : date de création, heure de création, durée de validité, type d'usage, numéro de jeton, pseudo de 5 l'utilisateur, OTP chiffré avec une clé de l'utilisateur ou avec une clé du site web, signature du hash du contenu de jeton et/ou données bancaires 8 - Système selon l'une des revendications 5 à 7 caractérisé en ce que le support (6) est une carte à puce. 9 - Système selon l'une des revendications 5 à 8 caractérisé en ce que l'utilisateur (1) est équipé d'un téléphone mobile, d'un ordinateur personnel ou d'une tablette permettant la saisie des données. 10 15