Brevet FR3022664A1 — publié le 20151225

PROCEDE ET SYSTEME D'AUTHENTIFICATION L'invention concerne l'authentification et la gestion des droits dans le cadre d'échanges de données entre différents systèmes informatiques tel qu'un boitier électronique dans un véhicule, des équipements mobiles (Smartphones, tablettes, ordinateur portable...) et de systèmes débarqués (aussi appelé cloud en anglais). On connait, par le document W02011031272, un procédé pour une authentification et une connexion sécurisées. Le procédé utilise un module de la plateforme sécurisée pour l'authentification et l'accès à des données. Selon ce procédé, un utilisateur enregistre une identité avec un fournisseur d'identité. Lorsque l'utilisateur se connecte à un fournisseur de services au moyen de cette identité, le fournisseur d'identité demande à l'utilisateur de fournir des justificatifs appropriés. Ces justificatifs comprennent un ticket 15 généré sur la plateforme sécurisée. Ceci permet à l'utilisateur de se connecter au fournisseur d'identité sans avoir besoin d'un mot de passe. L'inconvénient d'un tel procédé est que l'utilisateur doit avoir accès à une plateforme sécurisée (autrement dit, un matériel spécifique) pour enregistrer une identité. Avec un tel procédé, un utilisateur ne peut pas 20 s'identifier avec un téléphone mobile. L'invention a donc pour but de remédier aux inconvénients précités en fournissant un procédé d'authentification d'une application exécutée sur un terminal connecté, le terminal n'étant pas forcément pourvu d'un dispositif de sécurité. 25 Elle propose plus précisément à cet effet un procédé d'authentification d'une application, exécutée sur un terminal, auprès d'un fournisseur de service, comportant des étapes de : - Réception d'une demande d'accès à des données, par le fournisseur de service, 30 - En réponse à la demande, l'émission, par le fournisseur de service, d'une demande d'un jeton valide, 3022664 2 - Réception, par fournisseur de service, d'un jeton chiffré, - Vérification de la validité du jeton, au cours de laquelle le jeton est déchiffré avec une clé privée, ladite clé privée étant stockée par le fournisseur de service, 5 - Ouverture, par le fournisseur de service d'un accès aux données, si le jeton est valide. L'invention permet de recevoir des authentifications et des autorisations provenant d'un terminal ne comportant pas d'équipements de sécurité spécifiques. La transmission de ces authentifications et de ces autorisations est assurée au moyen de jetons d'autorisation qui sont chiffrés et lisible uniquement par le fournisseur de service. Avantageusement, le procédé d'authentification selon l'invention comporte, en outre, des étapes de : - Redirection, de l'application, vers un fournisseur d'identité, - Envoi, par l'application, d'une demande d'un jeton, à destination du fournisseur d'identité, - Création, par le fournisseur d'identité, d'un jeton dédié au fournisseur de service, ledit jeton étant signé et chiffré, - Transmission du jeton à l'application, l'application transmettant le jeton au fournisseur de service. Selon une caractéristique de l'invention, l'étape de vérification du jeton comporte, en outre, la vérification de la signature du jeton, le jeton étant valide s'il est signé par le fournisseur d'identité. De préférence, le jeton comporte : un identifiant d'un 'utilisateur de l'application, un identifiant unique du fournisseur de service, des autorisations, et un identifiant de l'application. Avantageusement, le procédé d'authentification selon l'invention comporte en outre une étape d'authentification de l'utilisateur auprès du fournisseur d'identité. 3022664 3 L'invention concerne aussi un équipement électronique comportant une mémoire stockant des données caractérisé en ce qu'il comporte : - des moyens de réception d'une demande d'accès aux données, - des moyens d'émission, d'une demande d'un jeton valide, 5 - des moyens de réception d'un jeton chiffré, - des moyens de vérification du jeton comportant des moyens de déchiffrement du jeton avec une clé privée, ladite clé privée étant stockée dans un mémoire sécurisée dudit équipement électronique, - des moyens d'ouverture d'un accès aux données. 10 L'invention concerne aussi un véhicule comportant un équipement électronique selon l'invention. L'invention concerne aussi un système d'authentification comportant un équipement électronique selon l'invention et/ou un véhicule selon l'invention. 15 D'autres caractéristiques et avantages de l'invention apparaîtront à l'examen de la description détaillée ci-après, et des dessins annexés, sur lesquels: - la figure 1 illustre une vue schématique du système selon l'invention ; - la figure 2 illustre un diagramme représentant des étapes du procédé selon 20 l'invention, - la figure 3 illustre un diagramme représentant des étapes supplémentaires du procédé selon l'invention. Les dessins annexés pourront non seulement servir à compléter l'invention, mais aussi contribuer à sa définition, le cas échéant. 25 En référence à la figure 1, le système d'authentification selon l'invention comporte au moins un terminal 103, un fournisseur de service 104 et une autorité d'authentification 101. L'invention permet de transmettre des authentifications et des autorisations entre des éléments embarqués dans le véhicule et des éléments débarqués. La transmission de ces authentifications et de ces autorisations est assurée au moyen de jetons d'autorisation aussi 3022664 4 appelés token ou encore « identity credentials » en anglais. Dans ce qui suit, on considère à titre d'exemple non limitatif que le terminal 103 est un téléphone mobile intelligent (aussi appelé smartphone en anglais). Mais l'invention n'est pas limitée à cet exemple. En effet, le terminal 5 103 peut être un ordinateur portable, une tablette tactile ou tout autre objet connecté (i.e. susceptible d'échanger des données via une connexion sans fils). Cet équipement mobile (ou objet connecté) appartient, par exemple, au conducteur d'un véhicule ou à l'un des passagers du véhicule. Le fournisseur de service 104, 104' (ou SP pour « Service Provider » la en anglais) est une ressource informatique. Le SP 104 contrôle l'accès à des données ou à des commandes permettant de réaliser une activité. Le SP 104 protège l'accès aux données et aux applications. Il refuse tout accès sans authentification préalable. De façon avantageuse, il redirige l'utilisateur non authentifié vers un fournisseur d'identité. L'accès au service est donc restreint. 15 Les utilisateurs doivent être identifiés avant de pouvoir accéder à une donnée ou lancer l'exécution d'une commande. Selon une caractéristique de l'invention, les jetons, utilisés pour transmettre les autorisations, sont chiffrés (ou crypté) selon un mécanisme de cryptographie asymétrique (aussi appelé cryptographie à clé publique). Dans 20 un tel système, on utilise une paire de clés : une clé publique pour le chiffrement et une clé privée pour le déchiffrement. Lorsqu'une ressource envoie un jeton à une autre ressource informatique, il lui suffit de chiffrer le jeton à envoyer au moyen de la clé publique du destinataire. Ce dernier sera en mesure de déchiffrer le message à l'aide de sa clé privée (qu'il est seul à 25 connaître). Les jetons sont, en outre, signés par une autorité de confiance (l'Idp 101) pour garantir qu'ils sont bien conformes et qu'ils proviennent bien d'une source autorisée. Les jetons intègrent les autorisations qui permettent de donner les 30 accès à des fonctions ou des données sur les services hébergés sur les infrastructures, chez des partenaires ou sur les boitiers connectés (les SP). Les autorisations sont vérifiées par les SP soit en faisant une 3022664 5 interrogation vers un annuaire de référence soit vers un manifeste permettant de faire des autorisations pouvant être communes dans le jeton mais n'apportant pas les mêmes services sur les différents systèmes. Selon une caractéristique de l'invention, le SP 104 comporte un 5 espace de stockage sécurisé apte à stocker une clé privée utilisée pour déchiffrer les jetons d'autorisation. L'espace de stockage sécurisé est par exemple une puce TPM (pour Trusted Platform Module), qui est un composant cryptographique matériel permettant de stocker des secrets (tels que des clefs de chiffrement) de manière sécurisée. la Dans ce qui suit, on considère à titre d'exemple non limitatif que le SP 104 est un boitier électronique d'un véhicule automobile. Le boitier électronique est un organe embarqué du véhicule qui est la frontière des données véhicule vers l'extérieur au travers de différents moyens : câble, protocoles sans fils (wifi, bluetooth,3G, etc.). 15 Mais l'invention n'est pas limitée à cet exemple. En effet, le SP peut être un système d'information de gestion 104' ou le système qui pilote une machine à commande numérique ou plus généralement n'importe quel objet connecté (i.e. susceptible d'échanger des données via une connexion sans fil) et comprenant un espace de stockage sécurisé susceptible de stocker une 20 clé privée. Le fournisseur d'identité 101 (ou IdP pour Identity Provider) s'occupe d'authentifier l'utilisateur ainsi que de récupérer des informations additionnelles associées à son identité. Selon une caractéristique de l'invention, l'Idp 101 comporte des 25 moyens pour signer, de façon électronique, des jetons d'autorisation. La signature électronique permet de garantir l'intégrité d'un jeton et d'en authentifier l'auteur. Le système de signature électronique utilise une paire de clés. Une clé privée utilisée pour signer un jeton et une clé publique pour permettant de lire le jeton signé. 30 Selon une caractéristique de l'invention, l'Idp 101comporte des moyens pour chiffrer le jeton. Le jeton est chiffré à l'aide d'une clé publique associée au SP 104 auquel est destiné le jeton. De la sorte, le jeton chiffré est uniquement lisible par le SP auquel il 3022664 6 est destiné. Le fournisseur d'identité permet aux utilisateurs 102 de s'authentifier et de recevoir des jetons sur leur PC ou Smartphone 103 leur permettant d'être reconnu et de porter des autorisations sur des infrastructures 5 débarquées mais aussi de les utiliser sur les boitiers connectés pour accéder à des fonctions spécifiques. Le système comporte aussi une infrastructure à clés publiques 110 (ou PKI pour Public Key Infrastructure en anglais) Une PKI est un ressource informatique permettant de générer, de distribuer et de publier des certificats 10 aux différents composants nécessaires (SP, IdP...). L'IdP 101 et les différents SP 104, 104' dispose chacun d'un certificat qui leur est propre. On rappelle qu'un certificat (ou certificat électronique) est un ensemble de données contenant au moins une clé publique, au moins une information d'identification (par exemple : un nom, généralement stocké dans 15 un champ de données dit CN pour « Common Name ») et au moins une clé privée pour signer. Le système comporte aussi une base de données de clients 111 permettant d'identifier un client, de l'authentifier et d'attribuer les services qui sont attribués sur un SP 104. 20 Le système comporte aussi une base de données de véhicules 112 permettant d'identifier les SP et de faire la jonction de l'identification du SP et de son certificat (le véhicule avec son VIN pour Vehicule Identifiant Number un identifiant unique associé au véhicule, son UIN Unique Identifiant Number - un identifiant unique associé au boitier et le lien vers le certificat associé). 25 Le système comporte aussi une base de données de services 113 répertoriant des services disponibles sur les SP et pouvant être attribués aux clients (catalogue des services). La figure 2 montre un diagramme illustrant les différentes étapes du procédé selon l'invention. 30 Le procédé comporte tout d'abord la connexion 201 du téléphone 103 au boitier électronique 104 d'un véhicule. La connexion est une connexion sans fil (par exemple wifi, bluetooth ou 3G). 3022664 7 L'étape suivante est le démarrage 202, sur instruction de l'utilisateur d'une application, l'application étant exécutée sur le téléphone 103. On suppose que l'application nécessite l'utilisation de données ou de commandes fournies par le boitier électronique 104. Dans cet exemple, on considère que 5 l'application permet d'ouvrir à distance le véhicule à l'aide du téléphone 103. L'application émet, via le téléphone 103, une requête d'accès à des données (et/ou des commandes) à destination du boitier électronique 104. Dans l'exemple, l'application doit notamment être autorisée à actionner les commandes d'ouvertures et de fermetures du véhicule. la En réponse à cette requête d'accès, le boitier électronique 104 demande à l'application un jeton d'autorisation valide. Si l'application dispose d'un jeton valide alors elle le transmet au boitier électronique 104 sinon le boitier électronique 104 redirige 205 l'application vers l'Idp 101. 15 L'application demande 206 alors un jeton d'autorisation à l'Idp 101. Cette demande précise à quel SP est destiné le jeton ainsi que les autorisations nécessaires pour l'exécution de l'application. L'étape suivante est l'authentification 207 de l'utilisateur auprès de l'Idp 101. Cette authentification peut se faire selon différent moyen selon l'art 20 connu, par exemple, avec un identifiant et un mot de passe. Une fois l'utilisateur authentifié et, en réponse à la demande de jeton, l'Idp 101 crée et émet 208 un jeton à destination de l'application. Le jeton est signé avec la clé privé de l'Idp 101. Avantageusement, le jeton est crypté à l'aide de la clé publique du boitier électronique 104, de sorte que seul le boitier 25 électronique 104 est capable de décrypter le jeton. Le jeton comporte aussi une description des autorisations accordées par l'Idp 101. De façon avantageuse, le jeton est dans un format OAuth dont une description est disponible, à la date de dépôt de la demande de brevet, sur le 30 site internet « http://oauth.net/ ». En réponse à la réception du jeton, l'application transmet 209 le jeton au boitier électronique 104. 3022664 8 A la réception du jeton, le boitier électronique 104 effectue une vérification du jeton et si la vérification est positive (autrement dit si le jeton est valide) alors le boitier électronique 104 ouvre un accès aux données conformément aux autorisations indiquées dans le jeton. 5 La vérification comporte la vérification de la signature du jeton. Le boitier électronique 104 utilise la clé publique de l'Idp 101 pour cette vérification. Lors de la vérification de la signature par le SP, le champ CN ou « common name » contenu dans le certificat sert aussi à vérifier la provenance du jeton. Le CN doit correspondre au nom de l'autorité de 10 signature habilité. Le nom de l'autorité de signature habilité est stocké dans une mémoire du SP 104, avantageusement, la mémoire sécurisée du SP 104. La vérification comporte aussi le déchiffrement du jeton. Le jeton est déchiffré avec la clé privée du boitier électronique 104. 15 Le boitier électronique 104 extrait du jeton, l'identifiant de l'utilisateur, l'identifiant du boitier électronique 104 appelé UIN (pour Unique Identifiant Number), l'identifiant de l'application ainsi que les autorisations accordées. Le SP 104 vérifie aussi que les autorisations décrites dans le jeton correspondent aux autorisations demandées par l'application dans la requête 20 d'accès. Dans la négative, l'accès aux données est refusée. Comme expliqué précédemment, les autorisations sont avantageusement regroupées par ensemble, le jeton indiquant alors les ensembles d'autorisations accordés par l'Idp 101. Pour faire la correspondance entre ces ensembles et les autorisations, le boitier 25 électronique 104 utilise une table de correspondance appelée manifeste. En résumé, un jeton est généré pour faire des authentifications. Il est chiffré avec la clé publique du certificat du SP 104 et signé avec la clé privé du certificat de l'Idp 101. Le jeton est une sorte de conteneur garantissant l'authenticité de son 30 émetteur. Ce conteneur n'ouvrable que par le véhicule auquel il est destiné. De façon avantageuse, l'invention permet aussi de transmettre des authentifications et des autorisations depuis un boitier électronique embarqué 3022 664 9 dans un véhicule vers des fournisseurs de service débarqués. La transmission de ces authentifications et ces autorisations sont aussi assurées au moyen de jetons d'autorisation. Ces jetons d'autorisations sont distribués par un deuxième Idp 101' dédié à l'identification des véhicules. 5 En référence à la figure 3, le procédé d'authentification comporte en outre une étape d'établissement 301 d'une connexion réseau sécurisée entre le boitier électronique 104 et le deuxième Idp 101'. Le boitier électronique 104 s'authentifie auprès du deuxième Idp 101'. L'authentification est réalisée avec un certificat stocké dans la mémoire sécurisée du boitier électronique 104. la Le boitier électronique 104 demande 302 un jeton d'autorisation au deuxième Idp 101'. Cette demande précise à quel SP est destinée le jeton ainsi que les autorisations nécessaires. Une fois le boitier électronique 104 authentifié et en réponse à la demande de jeton, le deuxième Idp 101' crée et émet 303 un jeton à 15 destination du boitier électronique 104. Comme précédemment, le jeton est signé avec la clé privé du deuxième Idp 101'. Avantageusement, le jeton est crypté à l'aide de la clé publique du SP 400, de sorte que seul le SP 400 est capable de décrypter le jeton. En réponse à la réception du jeton, le boitier électronique 104 20 transmet 304 le jeton au SP 400. A la réception du jeton, le SP 400 effectue une vérification du jeton et si la vérification est positive (autrement dit si le jeton est valide) alors le SP 400 ouvre un accès aux données conformément aux autorisations indiquées dans le jeton. 25 Ces jetons permettent au boitier électronique 104 de consommer des services sur des infrastructures débarqués de partenaires ou internes (par exemple des services de navigation ou de cartographie). Ces jetons permettent aussi d'authentifier un boitier électronique d'un véhicule auprès d'un boitier électronique d'un autre véhicule de sorte à 30 échanger des données de façon sécurisée. REVENDICATIONS1. Procédé d'authentification d'une application exécutée sur un terminal (103), auprès d'un fournisseur de service (104), comportant des étapes de : Réception d'une demande (203) d'accès à des données, par le fournisseur de service (104), En réponse à la demande, l'émission, par le fournisseur de service (104), 10 d'une demande (204) d'un jeton valide, Réception (209), par fournisseur de service (104), d'un jeton chiffré, Vérification de la validité du jeton, au cours de laquelle le jeton est déchiffré avec une clé privée, ladite clé privée étant stockée par le fournisseur de service (104), 15 Ouverture (210), par le fournisseur de service (104), d'un accès aux données, si le jeton est valide. 2. Procédé d'authentification selon la revendication 1, comportant, en outre, des étapes de : 20 Redirection (205), de l'application (103), vers un fournisseur d'identité (101), Envoi, par l'application, d'une demande (206) d'un jeton, à destination du fournisseur d'identité (101), Création (220), par le fournisseur d'identité (101), d'un jeton dédié au 25 fournisseur de service (104), ledit jeton étant signé et chiffré, Transmission (208) du jeton à l'application, l'application transmettant le jeton au fournisseur de service (104). 3. Procédé d'authentification selon la revendication 2, caractérisé en ce que 30 l'étape de vérification du jeton comporte, en outre, la vérification de la signature du jeton, le jeton étant valide s'il est signé par le fournisseur 3022664 11 d'identité (101). 4. Procédé d'authentification selon l'une des revendications précédentes, caractérisé en ce que le jeton comporte : un identifiant d'un 'utilisateur (102) de l'application, un identifiant unique du fournisseur de service (104), des autorisations, et un identifiant de l'application. 5. Procédé d'authentification selon l'une des revendications précédentes, caractérisé en ce qu'il comporte en outre une étape d'authentification (201) de l'utilisateur auprès du fournisseur d'identité (101). 6. Equipement électronique (104) comportant une mémoire stockant des données caractérisé en ce qu'il comporte : - des moyens de réception d'une demande (203) d'accès aux données, des moyens d'émission, d'une demande (204) d'un jeton valide, - des moyens de réception d'un jeton chiffré, des moyens de vérification du jeton comportant des moyens de déchiffrement du jeton avec une clé privée, ladite clé privée étant stockée dans un mémoire sécurisée dudit équipement électronique (104), des moyens d'ouverture d'un accès aux données. 7. Véhicule comportant un équipement électronique selon la revendication précédente. 8. Système d'authentification comportant un équipement électronique selon la revendication 6.