Brevet FR3085507A1 — publié le 20200306

Procédé et système sécurisés de partage retardé de données entre un utilisateur émetteur et plusieurs utilisateurs destinataires, avec création distante d'un conteneur et horodatage sur blockchain L'invention a trait au domaine de l'informatique, et plus précisément du partage de fichiers de données informatiques entre un utilisateur émetteur et plusieurs utilisateurs destinataires. Le terme « utilisateur » est ici employé pour désigner un appareil communiquant (en anglais « user device »), typiquement un smartphone, une tablette, ou plus généralement un ordinateur, par ex. un ordinateur portable ou fixe ou encore une station de travail, capable de se connecter, via un réseau informatique local (LAN), métropolitain (MAN) ou étendu (WAN, typiquement l'Internet), à un serveur distant, le terme « serveur » désignant ici une unité physique ou, dans un cadre de virtualisation, un espace de calcul et/ou de mémoire alloué au sein d'une unité physique et sur lequel tourne un système d'exploitation ou une émulation de système d'exploitation. Néanmoins on comprend qu'est associé à un tel dispositif électronique client un utilisateur réel (c'est-à-dire une personne 20 physique ou morale) qui effectue des opérations à partir de ce dispositif. L'utilisation des réseaux informatiques est aujourd'hui assez répandue, notamment pour le partage de données. Il existe divers types de systèmes permettant de partager des 25 données. Les messageries électroniques de type boîte aux lettres, qui fonctionnent de manière asynchrone, permettent à un utilisateur A (émetteur) d'adresser à un utilisateur B (destinataire) un message contenant des informations qui peuvent être incluses dans le corps du 30 message lui-même, ou sous forme de fichiers joints. Dans une messagerie électronique, le délai d'acheminement du message dépend, pour l'essentiel, de la bande passante (disponibilité) du réseau reliant l'utilisateur émetteur et l'utilisateur destinataire, et de la taille mémoire du message, y compris ses éventuelles pièces jointes. 35 Bien souvent, l'acheminement prend quelques secondes. Le destinataire peut alors ouvrir et lire le message provenant de l'émetteur quand bon lui semble. LAP 8011 FR 2 A l'heure où sont écrites ces lignes, les messageries électroniques sont limitées quant à la taille des messages transmis, le plus souvent à une dizaine de Mégaoctets (Mo). Pour échanger des données de gros volume (c'est-à-dire de taille 5 supérieure à 10 Mo) environ, il est devenu usuel de recourir à des plateformes spécialisées, par ex. DropBox (marque déposée). Dans leur principe, ces plateformes visent à permettre un accès permanent à un espace mémoire privé sur lequel sont mémorisés des fichiers, pour tout utilisateur identifié comme y ayant droit. 10 Le piratage des fichiers implique soit un accès non autorisé à cet espace mémoire, soit l'usurpation de l'identité d'un utilisateur ayant droit d'accès. Ces plateformes sont simples d'utilisation mais rencontrent cependant des limites quant à la sécurisation des données. En 15 particulier, l'usurpation d'identité est très efficace pour accéder aux données, et ce de manière immédiate, et - en général - tant en lecture qu'en écriture. Il persiste par conséquent un besoin de partager des fichiers de données informatiques entre utilisateurs, avec un degré supérieur de sécurité, tout en préservant une certaine simplicité d'utilisation. A cet effet, il est proposé, en premier lieu, un procédé de partage de fichiers de données informatiques entre un utilisateur émetteur et P utilisateurs destinataires (P un entier, P 2), via un système informatique équipé : - D'un serveur de communication, D'au moins un serveur de fichiers, et - D'une base de données de profils contenant en mémoire des profils associés aux utilisateurs, chaque profil comprenant au moins un identifiant et au moins une clé cryptographique publique à laquelle correspond une clé privée, Ce procédé comprenant, au niveau du système, trois phases successives : Une phase d'écriture, qui inclut les opérations consistant à : Recevoir de l'utilisateur émetteur une requête contenant une instruction de création d'un conteneur de données à partager et un identifiant de chaque utilisateur destinataire LAP 8011 FR 3 o Créer le conteneur dans un serveur de fichiers ; o Associer au conteneur un délai prédéterminé d'écriture ; o Tant que le délai d'écriture n'a pas expiré, permettre à l'utilisateur émetteur l'accès en écriture au conteneur ; 5 - Une phase d'archivage, qui inclut les opérations consistant à : o A l'expiration du délai d'écriture, interdire à l'utilisateur émetteur l'accès, au moins en écriture, au conteneur ; o Effectuer une copie du conteneur pour chaque utilisateur destinataire, en associant chaque copie au profil 10 correspondant, dans la base de données, à l'utilisateur destinataire ; o Crypter chaque copie du conteneur à l'aide de la clé publique de l'utilisateur destinataire pour former un conteneur crypté ; o Associer à chaque conteneur crypté un délai prédéterminé 15 d'archivage ; o Stocker le conteneur crypté dans un serveur de fichiers en en interdisant l'accès au moins à l'utilisateur destinataire ; o Répéter périodiquement la séquence de vérification suivante : a) Sélectionner un bloc dans un registre informatique 20 constitué en chaîne de blocs ayant chacun une donnée d'horodatage ; b) Extraire la donnée d'horodatage du bloc sélectionné ; c) Déterminer, à partir de cette donnée d'horodatage, une date courante ; 25 o Tant que le délai d'archivage est antérieur à la date courante, répéter la séquence de vérification en maintenant le stockage du conteneur crypté ; Une phase de partage, qui inclut l'opération consistant, dès lors que le délai d'archivage est égal ou postérieur à la date courante, 30 à permettre à l'utilisateur destinataire de télécharger le conteneur crypté en vue de le décrypter à l'aide de sa clé privée. Diverses caractéristiques supplémentaires peuvent être prévues, seules ou en combinaison. Ainsi, par exemple : - Le délai d'écriture peut être défini par l'utilisateur émetteur, ou 35 automatiquement. LAP 8011 FR 4 Le délai d'archivage peut être défini par l'utilisateur émetteur, ou automatiquement. Le délai d'archivage peut être défini séparément pour chaque utilisateur destinataire. 5 Il peut être prévu la réception, par le serveur de communication, d'une notification de décryptage du conteneur par chaque utilisateur récepteur. Dans ce cas, il est avantageusement prévu la destruction du conteneur sur le serveur de fichiers après réception de la notification de décryptage par l'utilisateur destinataire. 10 Il est proposé, en deuxième lieu, un système informatique qui, pour la mise en oeuvre du procédé tel que présenté ci-dessus, comprend : - Un serveur de communication, - Au moins un serveur de fichiers, et 15 - Une base de données de profils contenant en mémoire des profils associés aux utilisateurs, chaque profil comprenant au moins un identifiant et au moins une clé cryptographique publique à laquelle correspond une clé privée, Ce système comprenant une unité de contrôle comprenant une mémoire 20 inscriptible contenant des instructions pour opérer : - Une phase d'écriture, qui inclut les opérations consistant à : o Recevoir de l'utilisateur émetteur une requête contenant une instruction de création d'un conteneur de données à partager et un identifiant de chaque utilisateur destinataire ; 25 o Créer le conteneur dans un serveur de fichiers ; o Associer au conteneur un délai prédéterminé d'écriture ; o Tant que le délai d'écriture n'a pas expiré, permettre à l'utilisateur émetteur l'accès en écriture au conteneur ; Une phase d'archivage, qui inclut les opérations consistant à : 30 o A l'expiration du délai d'écriture, interdire à l'utilisateur émetteur l'accès, au moins en écriture, au conteneur ; - Effectuer une copie du conteneur pour chaque utilisateur destinataire, en associant chaque copie au profil correspondant, dans la base de données, à l'utilisateur 35 destinataire ; LAP 8011 FR 5 o Crypter chaque copie du conteneur à l'aide de la clé publique de l'utilisateur destinataire pour former un conteneur crypté ; o Associer à chaque conteneur crypté un délai prédéterminé d'archivage ; 5 o Stocker le conteneur crypté dans un serveur de fichiers en en interdisant l'accès au moins à l'utilisateur destinataire ; o Répéter périodiquement la séquence de vérification suivante : a) Sélectionner un bloc dans un registre informatique constitué en chaîne de blocs ayant chacun une donnée 10 d'horodatage ; b) Extraire la donnée d'horodatage du bloc sélectionné ; c) Déterminer, à partir de cette donnée d'horodatage, une date courante ; o Tant que le délai d'archivage est antérieur à la date courante, 15 répéter la séquence de vérification en maintenant le stockage du conteneur crypté ; - Une phase de partage, qui inclut l'opération consistant, à l'expiration du délai, à permettre à l'utilisateur destinataire de télécharger le conteneur crypté en vue de le décrypter à l'aide de 20 sa clé privée. D'autres objets et avantages de l'invention apparaîtront à la lumière de la description d'un mode de réalisation, faite ci-après en référence aux dessins annexés dans lesquels : - La FIG.1 est un schéma synthétique d'un système informatique 25 illustrant la phase d'écriture d'un procédé selon l'invention ; La FIG.2 est schéma similaire à la FIG.1, illustrant la phase d'archivage ; La FIG.3 est un schéma similaire à la FIG.1, illustrant la phase de partage ; 30 - La FIG.4 est un schéma illustrant différentes étapes du procédé de l'invention ; La FIG.5 est un schéma illustrant l'extraction d'une donnée d'horodatage d'une chaîne de blocs. Sur les FIG.1 à FIG.3 est représenté un système 1 informatique, 35 destiné à permettre le partage de fichiers 2 de données informatiques entre un utilisateur A émetteur et P utilisateurs Bk destinataires (P un LAP 8011 FR 6 entier tel que P 2 ; k un entier tel que 1 REVENDICATIONS1. Procédé de partage de fichiers (2) de données informatiques entre un utilisateur (A) émetteur et P utilisateurs (Bk) destinataires (P un entier tel que P 2 ; k un entier tel que 1 2. Procédé selon la revendication 1, dans lequel le délai (T1) d'écriture est défini par l'utilisateur (A) émetteur. 3. Procédé selon la revendication 1, dans lequel le délai (T1) d'écriture est défini automatiquement. 4. Procédé selon l'une des revendications 1 à 3, dans lequel le 30 délai (T2) d'archivage est défini par l'utilisateur (A) émetteur. 5. Procédé selon l'une des revendications 1 à 3, dans lequel le délai (T2) d'archivage est défini automatiquement. 6. Procédé selon l'une des revendications précédentes, dans lequel le délai (T2) d'archivage est défini séparément pour chaque 35 utilisateur (Bk) destinataire. 7. Procédé selon l'une des revendications précédentes, qui comprend la réception, par le serveur (4) de communication, d'une LAP 8011 FR 17 notification de décryptage du conteneur (6) par chaque utilisateur (Bk) destinataire. 8. Procédé selon la revendication 7, qui comprend la destruction du conteneur (6Bk) crypté sur le serveur (5) de fichiers après réception 5 de la notification de décryptage par l'utilisateur (Bk) destinataire. 9. Système (1) informatique qui, pour la mise en oeuvre du procédé selon l'une des revendications précédentes, comprend : Un serveur (4) de communication, - Au moins un serveur (5) de fichiers, et 10 - Une base (7) de données de profils contenant en mémoire des profils (PA, PBk) associés respectivement aux utilisateurs (A, Bk), chaque profil (PA, PBk) comprenant au moins un identifiant (IDA, IDBk) et au moins une clé (ZA, ZBk) cryptographique publique à laquelle correspond une clé (AZ, BkZ) privée, 15 Ce système (1) comprenant en outre une unité (8) de contrôle comprenant une mémoire programmable contenant des instructions pour opérer : Une phase d'écriture, qui inclut les opérations consistant à : - Recevoir de l'utilisateur (A) émetteur une requête contenant 20 une instruction de création d'un conteneur (6) de données à partager et un identifiant (IDBk) de chaque utilisateur (Bk) destinataire ; - Créer le conteneur (6) dans un serveur (5) de fichiers ; o Associer au conteneur (6) un délai (T1) prédéterminé 25 d'écriture ; - Tant que le délai (T1) d'écriture n'a pas expiré, permettre à l'utilisateur (A) émetteur l'accès en écriture au conteneur (6) ; Une phase d'archivage, qui inclut les opérations consistant à : o A l'expiration du délai (T1) d'écriture, interdire à l'utilisateur 30 (A) émetteur l'accès, au moins en écriture, au conteneur (6) ; - Effectuer une copie du conteneur (6) pour chaque utilisateur (Bk) destinataire, en associant chaque copie au profil (IDBk) correspondant, dans la base (7) de données, à l'utilisateur (Bk) destinataire ; LAP 8011 FR 18 - Crypter chaque copie du conteneur (6) à l'aide de la clé (ZBk) publique de l'utilisateur (Bk) destinataire pour former un conteneur (6Bk) crypté ; o Associer à chaque conteneur (6Bk) crypté un délai (T2) 5 prédéterminé d'archivage ; o Stocker le conteneur (6Bk) crypté dans un serveur (5) de fichiers en en interdisant l'accès au moins à l'utilisateur (Bk) destinataire ; - Répéter périodiquement la séquence de vérification suivante : 10 a) Sélectionner un bloc (10) dans un registre informatique constitué en chaîne (9) de blocs ayant chacun une donnée d'horodatage ; b) Extraire la donnée d'horodatage du bloc (10) sélectionné ; 15 c) Déterminer, à partir de cette donnée d'horodatage, une date courante ; - Tant que le délai (T2) d'archivage est antérieur à la date courante, répéter la séquence de vérification en maintenant le stockage du conteneur (6Bk) crypté ; 20 - Une phase de partage, qui inclut l'opération consistant, dès lors que le délai (T2) d'archivage est égal ou postérieur à la date courante à permettre à l'utilisateur (Bk) destinataire de télécharger le conteneur (6Bk) crypté en vue de le décrypter à l'aide de sa clé (BkZ) privée. 25 LAP 8011 FR