Brevet FR3044500A1 — publié le 20170602

PROCEDE ET SYSTEME D'ACCES, PAR UN SERVEUR, A DES DONNEES CONFIDENTIELLES DISPONIBLES AUPRES D'UN FOURNISSEUR DE SERVICE. L'invention concerne l'é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 des systèmes débarqués (aussi appelé cloud en anglais) et, en particulier, l'échange de données confidentielles. la On connait, par le document US 2013/0190967, un procédé et un système permettant une supervision d'un véhicule à distance. Le système comprend un dispositif communicant avec un serveur, d'une part, et avec le véhicule, d'autre part. Des données issues de capteurs peuvent être transmises du véhicule vers le serveur par l'intermédiaire du dispositif mobile. 15 Cependant, rien n'est prévu pour assurer la sécurité et l'intégrité des données. L'invention a donc pour but de remédier aux inconvénients précités en fournissant un procédé d'accès, par un serveur, à des données confidentielles disponibles auprès d'un fournisseur de service, par l'intermédiaire, le terminal n'étant pas forcément pourvu d'un dispositif de 20 sécurité. Elle propose plus précisément à cet effet un procédé d'accès, par un serveur (101), à des données confidentielles disponibles auprès d'un fournisseur de service (104), par l'intermédiaire d'un terminal (103), ledit fournisseur de service (104) comportant une mémoire sécurisée dans laquelle est stockée 25 une clé de chiffrement privée ledit procédé comportant des étapes de : - Emission (201), par le serveur (101), à destination du terminal (103), d'une demande de données confidentielles disponibles auprès du fournisseur de service (104), - Réception (202) d'une demande d'autorisation d'accès au fournisseur de 30 service (104), provenant du terminal (103), - En réponse à la demande, l'émission (203) d'autorisations permettant au terminal (103) de se connecter au fournisseur de service (104), 3044500 2 - Réception (204) d'une demande de requête, provenant du terminal (103), - En réponse à la demande, l'émission (205) d'une requête portant sur les données confidentielles, - Réception (206) des informations confidentielles demandées, signées par 5 le fournisseur de service (104), avec sa clé de chiffrement privée. L'invention permet à un serveur de récupérer, de façon sécurisée, des données disponibles auprès d'un fournisseur de service. L'invention trouve son application dans le cas où le fournisseur de service ne dispose de moyen de communication direct avec le serveur. L'échange de données se fait alors par l'intermédiaire d'un terminal dont le niveau de sécurité n'est pas garantie. L'invention permet de garantir la confidentialité des échanges par le chiffrement des messages et l'intégrité des données. Les données envoyées au serveur sont signées par le fournisseur de service. L'invention permet de garantir l'intégrité de l'information échangée entre le serveur et le fournisseur de service indépendamment de la fiabilité de la chaine de communication (en particulier le terminal). Avantageusement, le procédé d'accès à des données confidentielles selon l'invention comprend en outre le chiffrement de la requête, avant son émission, à l'aide de la clé publique associée à la clé chiffrement privée du fournisseur de service. Avantageusement, le procédé d'accès à des données confidentielles selon l'invention comprend en outre, les informations confidentielles reçues étant chiffrées, une étape de déchiffrement des informations confidentielles reçues. Avantageusement, le procédé d'accès à des données confidentielles selon l'invention comprend en outre, une étape de génération d'une clé de chiffrement, la requête émise comporte ladite clé de chiffrement, destinée à chiffrer les informations confidentielles, l'étape de déchiffrement utilisant la clé de chiffrement générée. Avantageusement, la clé de chiffrement générée est à usage unique. Avantageusement, les autorisations sont émises sous la forme d'un 3044500 3 jeton, ledit jeton étant généré par le serveur et chiffré avec la clé de chiffrement public associée à la clé de chiffrement privée du fournisseur de service. Avantageusement, le procédé d'accès à des données confidentielles 5 selon l'invention comprend en outre, une étape de vérification de la signature accompagnant les données confidentielles reçues. L'invention concerne aussi un calculateur apte à accéder à des données confidentielles disponibles auprès d'un fournisseur de service, par l'intermédiaire d'un terminal, ledit fournisseur de service comportant une 10 mémoire sécurisée dans laquelle est stockée une clé de chiffrement privée, caractérisé en ce qu'il comporte : - Des moyens d'émission, à destination du terminal, d'une demande de données confidentielles disponibles auprès du fournisseur de service, - Des moyens de réception d'une demande d'autorisation d'accès au 15 fournisseur de service, provenant du terminal, - Des moyens d'émission d'autorisations permettant au terminal de se connecter au fournisseur de service, - Des moyens de réception d'une demande de requête, provenant du terminal, 20 - Des moyens d'émission d'une requête portant sur les données confidentielles, - Des moyens de réception des informations confidentielles demandées, signées par fournisseur de service, avec sa clé de chiffrement privée. L'invention concerne aussi un système d'accès à des données 25 confidentielles d'un véhicule, ledit système comportant un serveur, un terminal et un fournisseur de service embarqué à bord du véhicule, caractérisé en ce que le serveur est un calculateur selon la revendication précédente, le fournisseur de service comportant une mémoire sécurisée dans laquelle est stockée une clé de chiffrement privée. 30 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: 3044500 4 - 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 l'invention. Les dessins annexés pourront non seulement servir à compléter 5 l'invention, mais aussi contribuer à sa définition, le cas échéant. En référence à la figure 1, le système d'échange de données selon l'invention comporte au moins un terminal 103, un fournisseur de service 104 et serveur 101. L'invention permet de transmettre de façon sécurisée des données confidentielles depuis le fournisseur de service 104 vers le serveur 10 101 par l'intermédiaire du terminal 103. Pour ce faire, le serveur 101 (agissant comme une autorité d'authentification) délivre les authentifications et des autorisations au terminal 103. La transmission de ces authentifications et de ces autorisations est assurée au moyen de jetons d'autorisation aussi appelés token ou encore 15 « 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 103 peut être un ordinateur portable, une tablette tactile ou tout autre objet 20 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 (ou SP pour « Service Provider » en anglais) est une ressource informatique. Le SP 104 contrôle l'accès à des 25 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é (par exemple le serveur 101). L'accès au service est donc restreint. Les utilisateurs doivent être identifiés avant de 30 pouvoir accéder à une donnée ou lancer l'exécution d'une commande. Les jetons, utilisés pour transmettre les autorisations, sont chiffrés (ou crypté) selon un mécanisme de cryptographie asymétrique (aussi appelé 3044 500 5 cryptographie à clé publique). Dans 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é 5 publique du destinataire. Ce dernier sera en mesure de déchiffrer le message à l'aide de sa clé privée (qu'il est seul à connaître). Les jetons sont, en outre, signés par une autorité de confiance (par exemple le serveur 101) pour garantir qu'ils sont bien conformes et qu'ils proviennent bien d'une source autorisée. 10 Les jetons intègrent les autorisations qui permettent de donner les 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). Selon une caractéristique de l'invention, le SP 104 comporte un espace de stockage sécurisé apte à stocker une clé privée utilisée pour 15 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. Dans ce qui suit, on considère à titre d'exemple non limitatif que le SP 20 104 est un boitier électronique d'un véhicule automobile 105. 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.). Mais l'invention n'est pas limitée à cet exemple. En effet, le SP peut 25 être un système d'information de gestion 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 clé privée. 30 Le serveur 101 (ou IdP pour Identity Provider) s'occupe notamment d'authentifier l'utilisateur ainsi que de récupérer des informations additionnelles associées à son identité. Le serveur comporte aussi des 3044500 6 moyens pour récupérer des informations confidentielles auprès d'un ou plusieurs fournisseurs de ressources 104. Le serveur 101 comporte des moyens pour signer, de façon électronique, des jetons d'autorisation. La signature électronique permet de 5 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 permettant de lire le jeton signé. Le serveur 101 comporte des moyens pour chiffrer le jeton. Le jeton est chiffré à l'aide d'une clé publique associée au SP 104 auquel est destiné 10 le jeton. De la sorte, le jeton chiffré est uniquement lisible par le SP auquel il est destiné. Le serveur 101 comporte en outre : - Des moyens d'émission, à destination du terminal 103, d'une demande de 15 données confidentielles disponibles auprès du fournisseur de service 104, - Des moyens de réception d'une demande d'autorisation d'accès au fournisseur de service 104, provenant du terminal 103, - Des moyens d'émission d'autorisations permettant au terminal 103 de se connecter au fournisseur de service 104, 20 - Des moyens de réception d'une demande de requête, provenant du terminal 103, - Des moyens d'émission d'une requête portant sur les données confidentielles, - Des moyens de réception des informations confidentielles demandées, 25 signées par le fournisseur de service 104, avec sa clé de chiffrement privée. Ces moyens sont réalisés de façon matérielle, logicielle ou selon une combinaison des deux. Le système peut aussi comporter une infrastructure à clés publiques 30 (ou PKI pour Public Key Infrastructure en anglais), non représentée. Une PKI est une ressource informatique permettant de générer, de distribuer et de publier des certificats aux différents composants nécessaires (fournisseur de 3044500 7 service 104, serveur 101). Le serveur 101 et les différents SP 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 5 information d'identification (par exemple : un nom, généralement stocké dans un champ de données dit CN pour « Common Name ») et au moins une clé privée pour signer. La figure 2 montre un diagramme illustrant les différentes étapes du procédé selon l'invention. 10 Une étape consiste en la préparation et la mise en attente 20 d'une demande de données confidentielles. De façon avantageuse, cette demande indique l'identifiant de véhicule. De façon avantageuse, le procédé comporte la réception 200 d'une demande, émise par le terminal nomade 103, pour déterminer si le serveur 15 101 dispose de requêtes confidentielles à traiter. De façon avantageuse, la demande comporte au moins un identifiant de véhicule (par exemple, un VIN pour Vehicle Identification Number), et/ou du calculateur télématique 104, de sorte que le serveur 101 est en mesure de répondre si des requêtes spécifiques au véhicule (ou au sont disponibles calculateur télématique 104). 20 Le ou les identifiants envoyés correspondent à des véhicules avec lesquels le terminal 103 s'est connecté au moins une fois. De façon préférentielle, cette étape est exécutée à l'initialisation d'une application logicielle mettant en oeuvre le procédé sur le terminal nomade et/ou de façon périodique si l'application tourne en tache en fond sur terminal 25 nomade 103. Le procédé comporte tout d'abord l'émission 201, par le serveur 101, à destination du terminal 103, d'une demande de données confidentielles disponibles auprès d'un fournisseur de service 104. Lorsque le terminal 103 reçoit la demande du serveur 101, celui-ci 30 103 essaie de se connecter 201a au fournisseur de service 104. Le fournisseur de service 104, en réponse, réclame une autorisation 201b pour la connexion. Le terminal transmet alors la demande d'autorisation au serveur 3044 500 8 101. Ensuite, le serveur reçoit 202 la demande d'autorisation d'accès au fournisseur de service 104, provenant du terminal 103. La réponse du terminal 103 est immédiate si celui-ci est en mesure 5 de se connecter au fournisseur de ressource 104, ce qui le cas par exemple si l'utilisateur est dans son véhicule. Cependant dans le cas où le terminal 103 n'est pas en mesure de se connecter avec le fournisseur de service 104, alors le terminal stocke la demande du serveur. La demande du serveur 101 est traitée quand le la terminal 103 est en mesure de se connecter au fournisseur de service 104, par exemple lorsque le terminal 103 est à une portée suffisante du fournisseur de service 104 pour établir une connexion par Bluetooth. La connexion du téléphone 103 au boitier électronique 104 du véhicule est une connexion par exemple sans fil (par exemple wifi, bluetooth 15 ou 3G). L'étape suivante est l'émission 203 des autorisations nécessaires au terminal 103 pour avoir accès aux données confidentielles. Comme expliqué précédemment ces autorisations sont transportées par des jetons. Lorsque le terminal 103 reçoit les autorisations nécessaires, il se 20 connecte 203a au boitier 104. Le boitier 104 vérifie les autorisations, ouvre une connexion et envoie 203b au terminal 103 un acquittement d'ouverture de connexion. Le terminal 103 est alors prêt à transmettre les données confidentielles. Le terminal 103 ayant reçu une demande de remontée de 25 données confidentielles émet une demande de création de requête vers le serveur 101 en rapport de l'identifiant du boitier 104. Le serveur 101 réceptionne 204 la demande de requête, provenant du terminal 103. Le serveur 101 génère une clé à usage unique et un identifiant de requête associé et les conserves jusqu'au retour de la requête. 30 Le serveur 101 crée la requête pour le fournisseur de service 104. La requête comporte notamment un identifiant de requête et la clé de chiffrement de la réponse. La requête est, de façon avantageuse, chiffrée avec la clé publique fournisseur de service 104 et signé par le serveur 101. La requête est 3044500 9 transmise 205 au terminal 103. Une fois reçue par le terminal 103, la requête est relayée 205a au fournisseur de service 104. La signature de la requête est validée par le boitier 104 puis la 5 requête est déchiffrée avec la clé privée du boitier. La réponse est construite avec les données demandées ainsi qu'avec l'identifiant de la requête puis chiffrées avec la clé symétrique trouvée dans la requête. La réponse est envoyée 205b au terminal 103. Le terminal 103 envoie 206 la réponse au serveur 101. 10 De façon avantageuse, le terminal 103 demande aussi s'il y a une autre requête confidentielle à traiter. Le serveur 101 déchiffre la réponse avec la clé symétrique à usage unique associée à la requête. Le serveur 101 vérifie aussi la signature du boitier 104. 15 De façon avantageuse, le serveur 101 répond avec une autre requête de donnée confidentielle si celle-ci est demandée. REVENDICATIONS1. Procédé d'accès, par un serveur (101), à des données confidentielles disponibles auprès d'un fournisseur de service (104), par l'intermédiaire d'un terminal (103), ledit fournisseur de service (104) comportant une mémoire sécurisée dans laquelle est stockée une clé de chiffrement privée ledit procédé comportant des étapes de : - Emission (201), par le serveur (101), à destination du terminal (103), d'une demande de données confidentielles disponibles auprès du fournisseur de service (104), - Réception (202) d'une demande d'autorisation d'accès au fournisseur de service (104), provenant du terminal (103), - En réponse à la demande, l'émission (203) d'autorisations permettant au terminal (103) de se connecter au fournisseur de service (104), - Réception (204) d'une demande de requête, provenant du terminal (103), - En réponse à la demande, l'émission (205) d'une requête portant sur les données confidentielles, - Réception (206) des informations confidentielles demandées, signées par le fournisseur de service (104), avec sa clé de chiffrement privée. 2. Procédé d'accès à des données confidentielles selon la revendication 1, caractérisé en ce qu'il comprend en outre le chiffrement de la requête, avant son émission (205), à l'aide de la clé publique associée à la clé chiffrement privée du fournisseur de service (104). 3. Procédé d'accès à des données confidentielles selon l'une des revendications 1 ou 2, caractérisé en ce que, les informations confidentielles reçues (206) étant chiffrées, il comporte en outre une étape de déchiffrement des informations confidentielles reçues. 3044 500 11 4. Procédé d'accès à des données confidentielles selon la revendication 3, caractérisé en ce qu'il comporte en outre une étape de génération d'une clé de chiffrement, la requête émise comporte ladite clé de chiffrement, destinée à chiffrer les informations confidentielles, l'étape de déchiffrement utilisant la 5 clé de chiffrement générée. 5. Procédé d'accès à des données confidentielles selon la revendication 4, caractérisé en ce que la clé de chiffrement générée est à usage unique. l a 6. Procédé d'accès à des données confidentielles selon l'une des revendications précédentes, caractérisé en ce que les autorisations sont émises (203) sous la forme d'un jeton, ledit jeton étant généré par le serveur (101) et chiffré avec la clé de chiffrement public associée à la clé de chiffrement privée du fournisseur de service (104). 15 7. Procédé d'accès à des données confidentielles selon l'une des revendications précédentes, caractérisé en ce qu'il comporte en outre une étape de vérification de la signature accompagnant les données confidentielles reçues. 20 8. Calculateur (101) apte à accéder à des données confidentielles disponibles auprès d'un fournisseur de service (104), par l'intermédiaire d'un terminal (103), ledit fournisseur de service (104) comportant une mémoire sécurisée dans laquelle est stockée une clé de chiffrement privée, caractérisé en ce qu'il 25 comporte : - Des moyens d'émission, à destination du terminal (103), d'une demande de données confidentielles disponibles auprès du fournisseur de service (104), - Des moyens de réception d'une demande d'autorisation d'accès au 30 fournisseur de service (104), provenant du terminal (103), - Des moyens d'émission d'autorisations permettant au terminal (103) de se 3044500 12 connecter au fournisseur de service (104), - Des moyens de réception d'une demande de requête, provenant du terminal (103), - Des moyens d'émission d'une requête portant sur les données 5 confidentielles, - Des moyens de réception des informations confidentielles demandées, signées par fournisseur de service (104), avec sa clé de chiffrement privée. 9. Système d'accès à des données confidentielles d'un véhicule (105), ledit 10 système comportant un serveur (101), un terminal (103) et un fournisseur de service (104) embarqué à bord du véhicule (105), caractérisé en ce que le serveur (101) est un calculateur selon la revendication précédente, le fournisseur de service (104) comportant une mémoire sécurisée dans laquelle est stockée une clé de chiffrement privée. 15