Brevet FR3094109A1 — publié le 20200925

Description Titre de l'invention : Procédé et système de traitement de données numériques provenant d'équipements connectés en garantissant la sécurité des données et la protection de la vie privée. Domaine de l'invention 100011 La présente invention concerne le domaine du traitement en grande masse des données personnelles provenant d'équipements connectés. L'invention concerne un procédé et système informatique capable de collecter et traiter des données relatives aux habitudes des individus, tout en garantissant la confidentialité des données personnelles de chaque individu. État de la technique [0002] La connaissance et la compréhension des activités humaines, notamment de la mobilité humaine sont indispensables dans de nombreux domaines à savoir la gestion du trafic routier, la ville intelligente, la construction et l'aménagement urbain, la santé publique, la gestion des points de vente, le géomarketing, etc. La révolution numérique a permis aux acteurs économiques de collecter assez facilement un volume massif de données personnelles, dans le but de produire des analyses statistiques sur l'ensemble de la population. En effet, les équipements connectés de nouvelle génération, tels que les téléphones, les ordinateurs portables, les tablettes ou les montres intelligentes, sont dotés de fortes capacités de détection, de stockage et de traitement. Ceux-ci permettent de collecter un large spectre de données personnelles. La plupart des systèmes de collecte et d'analyse de données personnelles actuels suivent l'approche dite de « détection opportuniste », dans laquelle les participants (les détenteurs des équipements connectés) ne sont pas forcément conscients de la collecte (voir l'article « Urban Sensing Systems : Opportunistic or Participatory », Nicholas D. Lane et. al., ACM HotMobile 2008). Néanmoins, cela pose un sérieux problème concernant la sécurité des données et la vie privée des participants. [0003] En effet, aujourd'hui, la collecte et le traitement des données personnelles, telles que les données de géolocalisation sont réalisées par des systèmes de type « cloud computing » (tels que les systèmes décrits dans les brevets EP3352432A1, FR3032286A1). Dans cc type de systèmes, les données brutes collectées (souvent une date, une position et une statistique à mesurer par exemple la vitesse), via les capteurs d'un équipement connecté, sont envoyées à un centre de données distant (le cloud) pour être ensuite traitées et agrégées afin de produire des statistiques. Toute la partie de calcul, par exemple l'apprentissage automatique dans le cas des systèmes intelligents, est réalisée au niveau du « cloud ». Même si le but est de calculer des statistiques 2 agrégées sur un ensemble d'équipements connectés, les serveurs peuvent très bien lier une donnée avec un équipement connecté et reconstruire tous ses déplacements. Connaitrc les déplacements d'une personne permet dc détecter ses points d'intérêt (lieux de résidence, de travail), ses habitudes, voire même sa religion, ses préférences politiques (voir l'article « The Long Road to Cornputational Location Privacy : A Survey », Vincent Primault et. al., IEEE Communications Surveys & Tutorials, 2018) et sa santé (« Using Autoencoders to Automatically Extract Mobility Features for Predicting Dcpressive States », Abhinav Mchrotra and Mirco Musolcsi, Proc. ACM Interact. Mob. Wearable Ubiquitous Technol. 2,3, Article 127, 2018). En conséquence, la vie privée de la personne est exposée. Ce problème a initialement été adressé par les techniques dites de pscudo-anonymisation, où le but consiste à supprimer tout lien entre l'identité d'une personne et ses données (l'identifiant de l'équipement connecté dans l'exemple précédent). L'anonymisation des données de géolocalisation est en soi un problème très difficile. Des études par la suite ont montré que ces techniques de pscudo-anonymisation ne suffisent pas (« Anonymization of Location Data Does Not Work : A Large-Scale Measurement Study », Hui Zang et Jean Bolot, ACM MobiCom 2011). Par exemple, dans une base de données de géolocalisation, quatre points spatio-temporels suffisent pour identifier une personne (« Unique in the Crowd : The privacy bounds of human mobility », Yves-Alexandre de Montjoye et. al., Scientific Reports, 2013). Il y a donc une nécessité de concevoir un système de traitement de données numériques provenant d'équipements connectés qui protège, par design, la vie privée des participants. [0004] Garantir la sécurité des données et la protection de la vie privée des participants dans un tel système, surtout dans le contexte d'un service basé sur la géolocalisation, est un défi technique très complexe car cela concerne toutes les composantes du système dont le mode de collecte, la base de données, la communication et l'authentification. En effet, le système doit assurer : [0005] la protection des données contre une attaque de ré-identification au niveau de la base de données (voir l'article « Robust De-anonymization of Large Datasets », Arvind Narayanan et Vitaly Shmatikov, CoRR, 2007), l'anonymat des équipements connectés dans la communication (voir l'article Tor : The Second-Generation Onion Router », Syverson et. al., 13ème USENDC Security Symposium, 2004), l'anonymat et le chiffrement des échanges entre les parties (voir « A fully homomorphie encryption scheme», Craig Gentry, thèse de doctorat, université de Stanford, 2009), l'authentification et la certitude des informations transmises entre les parties (voir « Authenticating Location-based Services without Compromising 3 Location Privacy », Haibo Hu et. al., ACM SIGMOD 2012). [0006] [0007] Des techniques existantes résolvent partiellement ce problème et à notre connaissance, aucune d'entre elles ne proposent une solution complète et satisfaisante couvrant tous les points mentionnés précédemment. Dans les prochains paragraphes, nous aborderons les différents aspects du problème et les solutions existantes. [0008] Concernant le mode de collecte, alors que dans une approche centrée sur le cloud, les données brutes issues des équipements connectés sont envoyées directement dans le cloud, cc qui pose un risque de ré-identification du participant, il existe une solution qui consiste à construire un modèle d'apprentissage partagé entre les équipements connectés. Dans cette configuration, le procédé d'apprentissage est toujours exécuté au niveau du serveur, chaque équipement connecté télécharge le modèle actuel, le met à jour avec ses données brutes et renvoie le modèle mis à jour au serveur. Cette solution, décrite dans les brevets W02018057302A1 et W02017066509A1, est utilisée par exemple pour l'apprentissage automatique des mots tapés par des participants sur un terminal mobile afin de faire des prédictions et corrections. Dans le contexte d'un service basé sur la localisation, cette solution ne garantit pas la vie privée d'un participant, car le serveur peut toujours identifier une personne dans un endroit si elle est la seule personne qui émet la mise à jour. [0009] Parmi les techniques de protection des données personnelles, en particulier des données de géolocalisation, celles qui sont basées sur la notion de k-anonymisation (voir le rapport technique « Protecting privacy when disclosing information : kanonymity and its enforcement through generalization and suppression », Pierangela Samarati, Latanya Sweeney, Technical Report, Harvard Data Privacy Lab, 1998, ou le brevet W02002084531A2), sont les plus répandues. Cette notion garantie que, dans le cas d'une attaque d'une base de données, l'attaquant ne peut distinguer un participant particulier parmi autres participants. Dans le contexte des données de géoloca- lisation, ceci se traduit par la dissimulation de la position exacte d'un participant dans une zone où il y a LI1Jr autres participants. Les brevets CN104080081A, US8856939B2, US9736685B2. US20180091942A1, décrits ci-dessous, exploitent cette technique. Nous verrons par la suite pourquoi le k-anonymisation ne suffit pas pour garantir entièrement la sécurité et la vie privée. [0010] Selon l'approche de k-anonymisation. le brevet CN104080081A présente une méthode d'anonymisation du mouvement spatial d'un périphérique mobile permettant d'assurer la vie privée de son utilisateur. Elle s'applique dans le cadre des services basés sur la localisation et permet à un utilisateur sollicitant cc type de service, par exemple une recherche de restaurants à proximité, d'éviter de divulguer sa position exacte et de préserver ainsi sa vie privée en se basant sur le principe du kanonymisation. Cette technique consiste à noyer la position d'un équipement connecté dans une large zone. Initialement, l'espace géographique ou la zone considérée est subdivisé en plusieurs cellules. Ensuite, le mobile sollicitant un service qui nécessite sa position interagit avec un serveur qui lui fournit un historique comportant le nombre de mobile contenu dans chaque cellule. Une fois l'historique reçu du serveur, au moyen y d'un algorithme récursif, le mobile détermine une sous-zone contenant au moins =,. mobiles dans le but de satisfaire la condition du k-anonymisation. Cette sous zone est ainsi utilisée pour solliciter le service nécessitant la position du téléphone. De cette manière, l'anonymisation de la position du téléphone est toujours garantie. Toutefois, cette architecture deviendrait vulnérable si le serveur parvenait à être corrompu. Dans ce cas, le serveur enverrait des historiques erronées au mobile de sorte que le mobile renvoi une zone qui ne garantirait pas le k-anonymisation et ainsi compromettre sa vie privée. [0011] Contrairement à la technique proposée précédemment, les auteurs du brevet US8856939B2 font l'hypothèse de la sureté d'un serveur d'anonymisation qui permet en fonction de la position exacte du mobile et d'un critère E&j qui exprime le niveau de k-anonymisation souhaité par le mobile de calculer une zone englobant la position du mobile et contenant au moins mobiles. Une fois cette zone calculée, elle est envoyée au service nécessitant la localisation pour traiter la demande du mobile et ainsi garantir sa vie privée. Le principal problème de cette technique intervient lorsque l'hypothèse de la sûreté du serveur d'anonymisation est levée, car si le serveur subit une attaque interne ou externe, les positions exactes des mobiles pourront être divulguées. Le brevet US9585011B2 présente une méthode pour l'anonymisation des données de géolocalisation d'un mobile. Les auteurs proposent plusieurs solutions qui consistent à ajouter un serveur de confiance pour assurer l'anonymisation des données. Concernant la première solution, lorsqu'une application requiert la position d'un mobile, ce dernier envoie d'abord sa position à un serveur d'anonymisation de confiance pour définir le niveau d'anonymisation en garantissant le k-anonymisation. Après avoir définit le niveau d'anonymisation, le serveur renvoie la localisation anonymisée au mobile puis ce dernier la transmet à l'application qui a sollicité sa position. Vu que cette solution présente une faille de sécurité en divulguant la position du mobile au serveur dit de confiance, une seconde solution a été proposée. Cette solution consiste à faire tout le traitement d'anonymisation au sein du mobile, puis à vérifier le niveau d'anonymisation par le serveur d'anonymisation de confiance. Une fois le niveau d'anonymisation validé par le serveur d'anonymisation, le mobile peut dès lors divulguer sa position anonymisée. Le problème de cette solution intervient dans le cas où le serveur de confiance est corrompu et donc susceptible de fournir des informations erronées au mobile pour qu'il divulgue sa position sans respecter le kanonymisation. [0012] Le brevet US20180091942A1 présente une autre méthode de k-anonymisation et de protection de données spatiales pour les applications mobiles nécessitant ce type de données vis-à-vis de leurs utilisateurs pour effectuer un ensemble de services. Dans l'architecture présentée, le serveur de l'application requiert la position spatiale d'un participant. Mais pour des raisons d'anonymat et de vie privée, le participant ne renvoie pas directement sa position précise au serveur. Une entité tierce d'anonymisation qui peut être soit un serveur ou un équipement connecté se charge de définir une cellule géographique comportant au moins un certain nombre de participants et englobant la position exacte dudit participant. La cellule géographique ainsi que les adresses de chaque participant s'y trouvant sont envoyées audit participant. Ledit participant sélectionne un participant et lui transfert via son adresse la requête de sa position provenant du serveur de l'application. Le participant sélectionné à son tour envoie directement sa position au serveur de l'application. De cette manière, ledit participant effectuant une demande de service via l'application n'enverra jamais sa position exacte au serveur de l'application et pourra protéger sa vie privée. Par contre, la vie privée d'un participant est compromise si l'entité tierce d'anonymisation parvient à être corrompu car celle-ci a accès à la position exacte, ainsi que les adresses, de tous les participants. [0013] 11 existe également des techniques de protection de la vie privée basées sur le principe de confidentialité différentielle. Ce principe protège les données d'un individu dans une base de données statistique. Un algorithme est dit de confidentialité différentielle si la modification ou l'exclusion des données d'un participant donné, a un impact négligeable sur l'agrégation des données de toute la base (« Differential privacy », Cynthia Dwork, ICALP 2006 ou le brevet US7653615B2). Dans ce cas, il s'agit donc de l'indiscemabilité d'une donnée. Souvent, les techniques basées sur la confidentialité différentielle consistent à ajouter un bruit aléatoire et contrôlé aux données avant de faire l'agrégation. Le défi de ces techniques est d'assurer un bon compromis entre l'utilité et le niveau de confidentialité de la donnée. [0014] Dans le contexte des services basés sur la géolocalisation, en particulier des services fournissant une information sur les points d'intérêt à proximité de la position actuelle d'une personne, une technique basée sur la confidentialité différentielle pour protéger la localisation de la personne consiste à envoyer au serveur une requête couvrant une 6 zone de recherche plus large. Les résultats retournés par le serveur peuvent être ensuite filtrés au niveau du terminal mobile pour raffiner la recherche. Ainsi, la personne a quand même des résultats précis, sans compromettre sa position exacte (voir l'article « Geo-Indistinguishability : Differential Privacy for Location-Bascd Systems », Miguel Andrés et. al., Proceedings of the 2013 ACM SIGSAC conference on Computer & Communications Security). Cette technique n'est pas adaptée pour la collecte des données de trajectoires car la corrélation temporelle des données, même bruitées, permet quand même de reconstruire les habitudes de déplacement d'un participant. [0015] Le brevet US20130145473A1 présente une autre méthode d'anonymisation basée sur la confidentialité différentielle d'une base de données déjà établie contenant des informations spatiales. Cette technique permet de répartir les données spatiales dans des grilles puis pour chaque grille, un bruit est calculé puis appliqué à l'ensemble des positions spatiales qui s'y trouvent afin de les anonymiser. Le problème de cette technique concerne l'exploitabilité des données anonymisées car leur précision est impactée par le processus d'anonymisation. Dans le cas d'un système de collecte de données statistiques, anonymiser les données via cette technique pourrait biaiser fortement les statistiques issues de ces données. [0016] De tout ce qui a été mentionné précédemment, nous pouvons déduire que les dif- férentes techniques basées sur la confidentialité différentielle ne sont pas adaptées pour la collecte statistique des données de déplacement. [0017] Une autre solution pour garantir l'anonymat des participants dans un système de collecte est d'utiliser un serveur dit serveur d'anonymisation jouant le rôle de médiateur entre les participants et le serveur de collecte. Ledit serveur d'anonymisation est dit de confiance pour masquer l'identité du participant à chaque échange de ce dernier avec le serveur de collecte. Cette technique souffre du même problème de ré-identification que les techniques de pseudo-anonymisation face aux données de haute dimension, telles que les données de géolocalisation. Ceci dû à la forte unicité de ce type de donnée. [0018] Selon ladite approche, le brevet W02013182639A1 décrit un procédé pour collecter des profils des utilisateurs mobiles d'une manière anonymisée, dans le but de diffuser des messages ciblés, par exemple une publicité personnalisée. La technique repose sur un serveur d'anonymisation interposé entre l'équipement connecté et le serveur de collecte. Ledit serveur d'anonyinisation est la seule entité qui connaît l'identité du participant. Il se charge de chiffrer l'identité de l'équipement connecté à chaque échange entre ce dernier et le serveur de collecte. Ce schéma permet audit serveur de collecte de connaître le profil du participant sans pouvoir connaître l'identité de ce dernier. Néanmoins, cette technique ne suffit pas pour anonymiser des données de haute dimension ou des données de géolocalisation car l'unicité de ce type de donnée permet 7 de retrouver assez facilement l'identité d'un participant. [0019] Le brevet US20150079932A1 propose une méthode pour anonymiscr l'historique de localisation d'un mobile en se basant sur la détection des points stationnaires, la solution consiste à stocker les localisations dans un premier temps dans une base de données temporaire (en quarantaine) pendant une semaine par exemple avant de les exporter sur la base de données long terme. Après avoir récolté des localisations sur un mobile donné sur la base de données de quarantaine, une procédure de détection de tous les points stationnaires (maison, travail, etc.) sensibles en matière de vie privée est effectuée. Une fois ces points stationnaires détectés, un processus de nettoyage permettant de les remplacer par une seule position est effectué. Les données traitées sont enfin exportées vers la base de données long terme. La vulnérabilité de cette technique se caractérise par l'accès à la base de données de quarantaine par une personne malhonnête qui parviendrait à avoir accès aux données personnelles des utilisateurs. [0020] Le brevet W02014110647A1 présente une technique qui consiste à appliquer une modification, par exemple, une troncature ou un arrondissement, à la géolocalisation d'un utilisateur en prenant en compte l'indication de son degré de confidentialité. Le degré de confidentialité est défini en fonction soit d'une mesure de distance, d'une mesure d'angle ou d'une valeur sélectionnée par l'utilisateur. Cette technique ne peut garantir l'anonymisation de la collecte statistique des données de déplacement car la corrélation temporelle entre les données de géolocalisation consécutives peut révéler l'identité d'un participant, comme mentionné précédemment. D'ailleurs, la technique ne permet pas d'obtenir un bon compromis entre l'utilité de la donnée et le niveau de protection de la vie privée. [0021] Dans le cas des services basés sur la localisation, le brevet W02012087296A1 présente une technique qui consiste à associer la position réelle de l'utilisateur à un ensemble de fausses positions générées à partir de celle-ci. Toutes les positions y compris celle de l'utilisateur sont envoyées au serveur pour exécuter le service demandé. Une fois le service traité, les réponses associées à chaque position sont renvoyées à l'utilisateur qui à partir de sa position réelle identifie la réponse adéquate. Cette technique permet certes de garantir la confidentialité de la position d'un utilisateur vis-à-vis du serveur mais n'est pas adaptée dans le cadre d'une collecte statistique. En effet, utiliser cette technique reviendrait à envoyer au serveur de collecte des fausses données qui biaiseront les statistiques. [0022] Malgré de nombreuses solutions proposées pour protéger la confidentialité des données, la plupart des solutions souffrent du même problème technique. En effet, elles partent du principe que les serveurs d'anonymisation ou de calculs sont des entités de confiance sans répondre vraiment à la question sur l'authentification et la 8 certitude des calculs réalisés. Il est nécessaire de se protéger contre toute attaque qui pourrait provenir des serveurs malintentionnés. [0023] Une solution serait dc vérifier la certitude de toutes les informations issues dc ces serveurs. Plusieurs travaux (voir l'article « Authenticating qucry results in edge computing », HweeHwa Pang et Kian-Lee Tan, ICDE 2014, ou l'article « Aggregate and vcrifiability encrypted signatures from bilinear maps », Dan Bonch et. al., EUROCRYPT 2003) se sont intéressés à ce type dc problème et ont proposé des méthodes d'authentification des services basés sur la localisation. Ces méthodes se focalisent sur l'utilisation des signatures électroniques basées sur la cryptographie asymétrique où l'idée est dc signer toutes les informations qui sont transmises au serveur par les équipements connectés. De cette manière, le serveur ne contient que des informations certifiées ou signées par les équipements connectés. Alors, lorsqu'une requête est effectuée par un équipement connecté au serveur, le serveur lui retourne en plus du résultat de la requête toutes les preuves permettant dc prouver l'authenticité dudit résultat. [0024] Dans l'article « Authenticating Location-based Services without Compromising Location Privacy », Haihe Hu et. al., ACM SIGMOD 2012, les auteurs stipulent que les techniques citées précédemment sont insuffisantes car elles permettent certes de vérifier l'exactitude des informations mais pas leur complétude car le serveur peut délibérément omettre des informations sans le notifier. De plus, les auteurs indiquent que ces techniques supposent que l'équipement connecté est de confiance car les informations qui lui sont retournées pour l'authentification des résultats sont signées mais non chiffrées Dans ce cas de figure, un équipement connecté a donc la possibilité d'accéder aux données personnelles d'autres équipements connectés et cela pourrait compromettre la vie privée de ceux-ci. Ils présentent alors une technique permettant aux équipements connectés de vérifier à la fois la complétude et l'exactitude des résultats retournés par le serveur. Les données personnelles sont d'abord signées par une entité de confiance, puis chiffrées par le serveur via une technique de chiffrement homomorphe. En recevant les données chiffrées et signées qui servent de preuve, l'équipement connecté peut vérifier la complétude et l'exactitude du résultat, sans avoir accès aux données personnelles des autres équipements connectés. On retrouve la même technique, des mêmes auteurs, décrite dans le brevet US9043927B2. [0025] Malgré tout, les techniques citées précédemment permettent seulement de résoudre le problème de l'authentification des infonnations provenant du serveur. Elles ne permettent pas de garantir la confidentialité des données personnelles dans le cas d'un serveur compromis ou malintentionné car ce dernier a bien accès aux données personnelles, en clair, des équipements connectés. [0026] Toujours selon l'hypothèse des serveurs compromis ou malintentionné, des 9 techniques de cryptographie dite techniques de chiffrement homomorphe ont été proposées (voir « A fully homomorphie cncryption schemc », Craig Gentry, thèse de doctorat, université de Stanford, 2009 ou article « Public-Key Cryptosystcms Based on Composite Dcgrec Residuosity Classes », Pascal Paillicr, ACM EUROCRYPT 1999). Elles sont plus utilisées dans les systèmes de type cloud computing et permettent d'assurer la confidentialité des données qui sont envoyées au serveur à des fins de calculs. En effet, la particularité de ces techniques se base sur la capacité du serveur distant à pourvoir réaliser des opérations mathématiques, dont le type est spécifique à chaque technique, sur des données chiffrées. De cette manière, le serveur n'a aucune connaissance sur les données qu'il manipule. Néanmoins, cette technique nécessite d'être complémentée par d'autres techniques, afin de résoudre les problèmes mentionnés. [0027] Le problème de l'anonymat d'une communication peut être résolu en utilisant des réseaux de communication anonymes. En effet, ces réseaux décentralisés permettent d'anonymiser l'origine (l'adresse IP) d'un paquet en le chiffrant plusieurs fois à travers des routeurs d'un chemin aléatoire (voir l'article « Tor : The Second-Generation Onion Router », Syverson et. al., 13ème USENIX Security Symposium, 2004). Cette technique peut être utilisée par exemple pour anonymiser les échanges entre les équipements connectés et les serveurs. [0028] Parmi les solutions qui tentent de résoudre plusieurs problèmes mentionnés ci- dessus, on trouve PrivStats (voir l'article « Privacy and Accountability for Locationbased Aggregate Statistics », Raluca Ada Popa et. al., ACM CCS 2011). Les auteurs proposent un système de collecte et d'agrégation des données de géolocalisation en se basant sur un modèle de menace dit « zero trust », qui consiste à ne faire confiance à aucune des parties du système, y compris le serveur de collecte et les équipements connectés. En utilisant ladite technique de chiffrement homomorphe, le serveur de collecte agrège les données chiffrées envoyées via un réseau anonyme par les équipements connectés. Le serveur doit ensuite faire appel à certaines entités désignées possédant la clé de déchiffrement, qui peuvent être des équipements connectés, pour récupérer le résultat de l'agrégation qu'il a effectué. Ce schéma repose sur une phase de « boostrap » permettant de désigner ces derniers et de partager entre eux les clés de chiffrement homomorphe. Chaque équipement connecté (client) joignant le système reçoit la clé de chiffrement via une entité désignée. Les équipements connectés désignés ont également la capacité d'auditer le serveur de collecte, afin de vérifier la certitude des agrégations effectuées par ce dernier. [0029] Néanmoins, cette solution n'empêche pas l'envoi de données dont l'unicité per- mettrait d'identifier une personne durant un déplacement (voir l'article « Unique in the Crowd : The privacy bounds of human mobility », Yves-Alexandre de Montjoye et. al., Scientific Reports, 2013). En effet, les données sont transmises sans garantie de kanonymisation ou de confidentialité différentielle. [0030] Par ailleurs, cette solution n'explique pas comment distribuer les clés de chiffrement homomorphc aux équipements connectés sans risquer de les exposer à une partie malveillante. [0031] Problème technique de l'art antérieur [0032] Dans le cadre d'un traitement de données numériques provenant des équipements connectés, en particulier d'une collecte statistique des données relatives au déplacement des personnes, les solutions de l'art antérieur ne permettent pas de garantir à la fois l'anonymisation des déplacements afin de préserver la vie privée des participants, et la précision du résultat des traitements statistiques. En effet : [0033] - Les contraintes d'anonymat impliquent le retrait d'informations signifiantes des données natives avant leur transmission à un serveur d'agrégation. Les données brutes sont transmises sous une forme plus ou moins dégradées pour respecter les contraintes d'anonymisation, puis agrégées par le serveur, avec bien sûr des informations moins riches ne permettant pas de tirer pleinement profit des données captées par les équipements connectés. La vulnérabilité face aux attaques du serveur de collecte offre à l'attaquant, et plus simplement aux gestionnaires légitimes du serveur ou des données, la possibilité d'identifier un participant du fait de l'unicité et de la corrélation temporelle forte de ce type de données. [0034] Solution apportée par l'invention [0035] La présente invention concerne, selon son acceptation la plus générale, un procédé et système de traitement des données numérique, en particulier un procédé et système de collecte et de traitement des données statistiques anonymisées liées aux déplacements des personnes et garantissant, par design, la protection de la vie privée. L'invention vise à apporter une solution technique pour, à la fois, obtenir une meilleure précision possible des statistiques, et respecter la vie privée des participants. On entend par « meilleure précision possible » d'une information, une diminution de la précision suffisante pour que pour toutes les infoimations dégradées (c'est-à-dire avec la précision diminuée) disponibles, au moins "T personnes correspondent à la même in- Fi\ formation. [0036] Par exemple, les coordonnées spatiales de plusieurs personnes se déplaçant dans une même zone sera déterminée avec un nombre de décimales, et donc une précision telle que pour chaque valeur, plusieurs personnes correspondent à la même valeur. La « meilleure précision » dépend donc du nombre de personnes présentes : si le nombre de personnes est réduit. la « meilleure précision » de la valeur généralisée sera étendue à 11 une large zone spatiale ou temporelle, par exemple de l'ordre d'une agglomération urbaine ou d'une journée entière, alors que si la population est plus nombreuse, par exemple plusieurs milliers de personnes, la « meilleure précision » de la valeur généralisée sera plus étroite : de l'ordre d'une rue à une heure. [0037] Contrairement aux solutions de « cloud computing » mentionnées précédemment, dans la solution apportée par la présente invention, l'intelligence est déportée vers la périphérie du réseau, c'est-à-dire que tous les processus d'apprentissage automatique des habitudes de déplacement de personnes sont exécutés sur les équipements connectés. Cela permet à la fois, de réduire la charge de calcul au niveau des serveurs, niais surtout d'éviter que les serveurs aient accès aux données personnelles des individus. [0038] La solution consiste en une combinaison de moyens techniques (équipements connectés portées par les participants et serveurs informatiques et de traitement informatique des données) pour satisfaire les conditions suivantes : [0039] (i) Dans le système, le participant ne fait confiance ni au serveur qui collecte des statistiques, ni aux autres participants. Il ne veut divulguer aucune information liée à son identité et à sa vie privée. Le participant ne fait confiance au serveur que pour agréger des mesures sur l'ensemble des participants et calculer les statistiques. (ii) Inversement, le serveur ne fait pas confiance aux participants, pour éviter qu'ils biaisent ses statistiques. (iii) Toutes les données sensibles liées à l'identité ou à la vie privée d'une personne ne sortent jamais de l'équipement connecté. (iv) Toutes les données transmises aux serveurs sont anonymisées. (v) La seule chose que le serveur puisse apprendre des participants est une agrégation des mesures provenant de l'ensemble des participants. (vi) L'équipement connecté a le contrôle sur ce qu'il souhaite divulguer. Le système est responsable de l'obtention d'une meilleure précision possible des statistiques, en fonction de ce que les participants divulguent. [0040] La FIG.1 illustre la solution apportée par la présente invention. Le système qui décide de collecter une statistique (par exemple, la vitesse moyenne des personnes sur tous les axes routiers en France), active le module de collecte de ladite statistique au niveau des équipements connectés (101) et leur envoie des informations concernant cette collecte. Toutes les communications entre le serveur de collecte (109) et le participant s'effectuent via un réseau anonyme (108). Avantageusement, cela évite que le serveur (109) identifie la source de chaque message qu'il reçoit afin de traquer un équipement connecté (101), en utilisant par exemple les techniques de suivi d'adresse IP. En conséquence, ceci satisfait partiellement les conditions (i), (iii), (iv) et (v). 12 [0041] Le module de collecte fait appel aux capteurs embarqués pour la collecte des données brutes (100). Une donnée brute (100) correspond à une géolocalisation horodatée associée à une mesure (dans l'exemple précédent, la vitesse). Ces données sont ensuite stockées par un moyen de stockage disponible sur l'équipement connecté (101). Un module d'intelligence artificielle (102) récupère ces données pour entrainer un modèle d'apprentissage automatique. Ce dernier permet de reconnaitre des schémas de déplacement et d'en déduire des habitudes de déplacement du participant. Le module intelligent (102) se charge également de calculer les mesures pour chaque déplacement, propres au participant, par exemple, la vitesse moyenne sur le trajet maison-travail. Ces mesures sont stockées via le moyen de stockage sur l'équipement connecté (101). En fonction des habitudes détectées, le module intelligent (102) définit lui-même le niveau de confidentialité pour chaque mesure. Plus une habitude est répétée, par exemple son lieu d'habitation, son lieu de travail ou son trajet maison-travail, plus le niveau de confidentialité devrait être élevé. Avantageusement, cette technique permet de satisfaire les conditions (iii) et (vi). [0042] Pour envoyer les mesures anonymisécs au serveur de collecte (109), l'équipement connecté (101) et le serveur (109) suivent un procédé d'anonymisation (illustré par la FI0.4) sécurisé et garantissant la protection de la vie privée. D'abord, toutes les mesures sont chiffrées, de préférence, par un système de chiffrement homornorphe que seuls les équipements connectés (101) sont capables de déchiffrer. Le serveur (109) est capable de faire des opérations mathématiques (110) sur ces mesures chiffrées mais ne peut en aucun cas connaître leurs valeurs exactes. Avantageusement, cette technique permet de garantir que le serveur (109) peut effectuer des agrégations statistiques (111) sur des mesures sans connaitre leurs valeurs (condition (y)). [0043] Un chiffrement homomorphe est un chiffrement qui possède certaines caracté- ristiques algébriques qui le font commuter avec une opération mathématique, c'est-à-dire que le déchiffrement du résultat de cette opération sur des données chiffrées donne le même résultat que cette opération sur les données non chiffrées ; cette propriété permet de confier des calculs à un agent externe, sans que les données ni les résultats ne soient accessibles à cet agent. [0044] Avantageusement, la solution apportée par la présente invention protège la vie privée des participants par un mécanisme de généralisation (illustré par FIG.7). L'anonymat d'un participant par rapport à une mesure donnée est garanti par le principe de k-anonymat (illustré par FIG.8). En effet, le procédé d'anonymisation garantit que pour chaque mesure envoyée, il existe au moins 1j. autres participants qui ont envoyé la même mesure. Chaque mesure envoyée est généralisée, par exemple : une vitesse de 27 km/h est généralisée par une plage de valeurs allant de 20 à 30 km/h. En particulier, 13 les données de géolocalisation sont généralisées par un système de zones hiérarchiques (illustré par FI0.7) dont le plus bas niveau correspond à une petite zone (par exemple une rue) et le plus haut niveau correspond à une zone très large (par exemple un pays). Chaque équipement connecté (101) envoie d'abord sa mesure avec le plus haut niveau de généralisation. Il n'accepte de descendre à un niveau inférieur que si le serveur lui prouve qu'il existe déjà ' autres équipements connectés avec une mesure similaire. [ [0045] Pour prévenir le cas d'un serveur malintentionné qui pourrait tromper les équipements connectés (101) en leur envoyant des fausses informations, un équipement connecté (101) doit pouvoir vérifier et authentifier les informations que le serveur (109) lui envoie. Pour cela, un mécanisme d'authentification basé sur la cryptographie asymétrique et une entité tierce (105) est mis en place pour assurer que chaque mesure envoyée est authentifiable. Plus précisément, chaque équipement connecté (101) possède, en plus des clés de chiffrement homomorphe, des clés publiques et privées (104), générées et distribuées par l'entité tierce (105). L'équipement connecté (101) certifie l'origine de chaque mesure en la signant (106) par sa clé privée. Le serveur de collecte (109) doit prouver à un équipement connecté (101) l'exactitude du résultat de l'agrégation effectuée sur des mesures en lui envoyant, en plus dudit résultat de l'agrégation (111), ,-- différentes mesures chiffrées signées (107) par d'autres équipements connectés. Avantageusement, cette dernière technique permet de garantir entièrement les conditions (i), (iii), (iv), (v). 100461 L'invention concerne selon son acceptation la plus générale un procédé de traitement de données numériques provenant d'équipements connectés, comportant les étapes suivantes : [0047] - des étapes d'acquisition. par chaque équipement connecté (101). d'informations locales, sans transmission à un équipement tiers connecté et l'enregistrement dans une mémoire locale desdites informations. l'exécution sur l'équipement connecté (101). d'un programme informatique d'intelligence artificielle (102), pour procéder d'une part à un traitement desdites informations enregistrées par le calculateur de l'équipement connecté (101) seulement d'apprentissage des habitudes du détenteur de l'équipement connecté et d'autre part à une production des mesures pour chaque caractéristique liée aux habitudes dudit détenteur, un traitement, par le calculateur de l'équipement connecté (101) seulement. pour la généralisation desdites mesures, le chiffrement, préférentiellement homomorphe, des mesures généralisées, et un procédé de négociation entre ledit équipement connecté (101) et ledit serveur de collecte (109) pour une 14 transmission chiffrée de mesures traitées à l'exclusion desdites mesures locales non traitées, les communications entre le serveur de collecte (109) et les équipements connectés (101) s'effectuant via un réseau anonyme (108), et un procédé d'agrégation des informations numériques généralisées chiffrés provenant de différents équipements connectés. [0048] Avantageusement ledit programme d'intelligence artificielle (102) consiste en un programme d'apprentissage non supervisé qui partitionne lesdites informations enregistrées. [0049] Selon une variante, l'algorithme d'apprentissage non supervisé est un auto-encodeur caractérisé en ce que : [0050] les données en entrée sont réparties sur des fenêtres de temps, pour chaque fenêtre de temps, un vecteur est produit pour chaque dimension de donnée, les vecteurs produits sont concaténés pour former un vecteur d'entrée audit auto-encodeur, les vecteurs d'entrée sont de taille fixe ou variable, l'encodeur produit pour chaque vecteur d'entrée une représentation compacte qui correspond à une habitude dudit détenteur dudit équipement connecté. [0051] Selon une variante particulière, le programme informatique d'intelligence artificielle (102) comprend un algorithme d'apprentissage non supervisé qui est en mode en ligne ou hors ligne. [0052] Selon une autre variante, ledit auto-encodeur est augmenté par une mémoire et un procédé de gestion de mémoire caractérisés en ce que, pour chaque nouvelle représentation compacte, ledit procédé identifie les différentes représentations compactes enregistrées dans la mémoire qui lui sont similaires. Si aucune n'est identifiée, ledit procédé enregistre la nouvelle représentation compacte. Dans le cas contraire, il les fusionne avec la nouvelle représentation compacte, et enregistre le résultat dans la mémoire. [0053] Selon une autre variante, ledit programme informatique d'intelligence artificielle (102) comprend une pluralité de modules qui, à partir desdites informations enregistrées, détectent des caractéristiques liées aux habitudes dudit détenteur dudit équipement connecté. [0054] Selon une autre variante, lesdits modules comprennent au moins : [0055] un module de recalage cartographique multimodal et, un module de détection de points d'intérêt et, un module de prédiction du futur déplacement. [0056] Selon une autre variante, ledit programme informatique d'intelligence artificielle (102) comprend, pour chaque module, un algorithme d'apprentissage supervisé qui approxime une fonction de prédiction desdites caractéristiques liées aux habitudes dudit détenteur dudit équipement connecté à partir desdites informations enregistrées. [0057] Selon une autre variante, lesdits modules peuvent être désactivés une fois lesdits al- gorithmes d'apprentissage supervisé entrainés. [0058] Selon une autre variante, le procédé de négociation est caractérisé en ce que le niveau de confidentialité d'une mesure correspond à un entier qui représente le seuil minimum du nombre d'équipements connectés traitant ladite mesure. [0059] Selon une autre variante, le niveau de confidentialité est défini soit par le procédé, soit par le détenteur dudit équipement connecté et un niveau de confidentialité est défini pour chaque mesure. [0060] Selon une autre variante, le procédé de généralisation de mesures est caractérisé en ce que : [0061] toutes les mesures appartiennent à un espace structuré en l'espace niveaux hiérarchiques Hitt, , est d'abord partitionne en- L sous-espaces let t contiguës, où n "lu pour chaque niveau:h. E [2 he un sous-espace est subdivisé en sous-espaces is-1 contiguës, la généralisation d'une mesure à un niveau consiste à remplacer la mesure par le sous-espace de niveau 74-4 qui contient la mesure. [0062] Selon une autre variante, le procédé de négociation est caractérisé en ce que : [0063] une entité tierce de confiance (105) certifie un équipement connecté (101) et ledit serveur de collecte (109) en générant respectivement une paire de clés (104) publique et privée SK et Ows 5ks1 16 Fr) serveur de collecte (109), ainsi que la clé .-- K aux "se 'te équipements connectés (101), une paire de clés publique et privée V pg ç \ est -1/4' S. nei partagée entre tous les équipements connectés (101), l'équipement connecté (101) utilise la clé Fiji? ' - pour chiffrer une a an mesure et sa cléÇK S'K e ..'e pour la signer et envoie la mesure chiffrée et signée au serveur de collecte (109), le serveur de collecte (109) vérifie, via l'entité tierce (105), que la mesure provient d'un équipement connecté (101) certifié, l'équipement connecté (101) vérifie, via l'entité tierce (105), que les messages qu'il reçoit proviennent d'une entité certifiée. [0064] Selon une autre variante, les échanges entre les équipements connectés (101) et le serveur de collecte (109), ou entre les équipements connectés (101), s'effectuent via un réseau anonyme (108). [0065] Selon une autre variante, les procédés de généralisation, de négociation et d'agrégation sont caractérisés en ce que ladite négociation comporte les étapes suivantes : [0066] - l'équipement connecté (101) envoie au serveur de collecte (109) la mesure généralisée, chiffrée et signée (107) [0067] [Math.1] Signe,(Chif fre(Gen f (M))) [0068] - le serveur de collecte (109) authentifie la mesure reçue et ainsi obtient la mesure chiffrée sans la signature [0069] [Math.2] Chiffre(GenH(M)) [0070] et sauvegarde la paire [0071] [Math.2] Chiffre(Genia)) [0072] [Math.11 Signe,(Chiffre(GenH(M))) 17 [0073] grâce à un moyen de stockage, [0074] un procédé de calcul, exécuté sur le serveur de collecte (109), effectue l'agrégation (110) sur ladite mesure chiffrée [0075] [Math.3] Agg (Chi f fre(GenH(M))) [0076] et sauvegarde le résultat de ladite agrégation, [0077] à la demande de l'équipement connecté (101), le serveur de collecte (109) lui renvoie ledit résultat de ladite agrégation qu'il signe pour obtenir [0078] [Math.30] Signe, (Agg (chiffre (GenH(11,1)))) [0079] - l'équipement connecté (101) authentifie et déchiffre le cas échéant, le résultat de l'agrégation de ladite mesure généralisée chiffrée et obtient [0080] [Math.3] Agg (Chi/ fre(GenH(M))) [0081] - Dans le cas d'un comptage, si le résultat est inférieur à ,. l'équipement connecté (101) recommence une nouvelle négociation avec le même niveau de généralisation. Si le résultat est supérieur ou égale à ji.:;.., l'équipement (p. connecté (101) demande au serveur de lui envoyer au moins 7 i': différentes e '.. mesures chiffrées signées pour ledit résultat, - le serveur de collecte (109), effectue une recherche dans sa base de données, afin de trouver différentes mesures chiffrées signées et les renvoie à l'équipement connecté (101), - l'équipement connecté (101), une fois avoir reçu les . différentes mesures chiffrées signées, les authentifie. Si le niveau de généralisation est au plus bas, l'équipement connecté (101) envoie sa mesure en clair. Si non, l'équipement connecté (101) recommence une nouvelle négociation avec un niveau de généralisation en dessous. [0082] Selon une autre variante, les procédés de généralisation, de négociation et 18 d'agrégation sont caractérisés en ce que ladite négociation comporte des étapes suivantes : [0083] - l'équipement connecté (101) envoie au serveur de collecte (109), pour chaque mesure M, ses généralisations sur plusieurs niveaux chiffrées et signées [0084] [Math.4] Signee(Chif fre(Gent,(M))) [0085] où [0086] [Math.5] h E [1, H] [0087] - le serveur de collecte (109) authentifie les mesures généralisées chiffrées et signées [0088] [Math.4] Signer(Chif fre(Genh(M))) [0089] reçues pour obtenir les mesures généralisées chiffrées [0090] [Math.6] [Math.6] Chi f fre(Genh(M)) [0091] et sauvegarde la paire [0092] [Math.6] Chi f fre(Genh(M)) [0093] , [Math 4] [0094] Signee(Chif fre(Genh(M))) [0095] grâce à un moyen de stockage, [0096] un procédé de calcul (110), exécuté sur le serveur de collecte (109), effectue des agrégations des mesures généralisées chiffrées reçues des différents équipements connectés 100971 IMath.71 Agg (Chif fre(Geni,(M))) [0098] et sauvegarde les résultats desdites agrégations, [0099] à la demande dc l'équipement connecté (101), le serveur de collecte (109) lui 19 renvoie les résultats des agrégations [0100] [Math.7] Ag g (Chi f fre(Genh(M))) [0101] qu'il signe pour obtenir [0102] [Math.8] Signe, (Agg (Chi f fre(Geni,(M)))) [0103] l'équipement connecté (101) authentifie et décrypte les résultat de l'agrégation [0104] [Math.7] Ag g (Chi f fre(Genh(M))) [0105] - Dans le cas d'un comptage, l'équipement connecté (101) évalue les résultats correspondant à chaque niveau de généralisation puis sélectionne la mesure généralisée la plus précise avec un résultat supérieur à Enfin, l'équipement connecté (101) demande au serveur de collecte (109) de lui envoyer au moins r différentes mesures chiffrées signées pour ledit résultat, - le serveur de collecte (109), effectue une recherche dans sa base de données, afin de trouver différentes mesures généralisées chiffrées signées 101061 1Math.41 Signer(Chiffre(Genh(M))) [0107] et les renvoie à l'équipement connecté (101), [0108] - l'équipement connecté (101). une fois avoir reçu les TIjdifférentes mesures généralisées chiffrées signées, les authentifie et envoie sa mesure généralisée en clair au dit serveur de collecte (109). [0109] Selon une autre variante, les clés'p ee ÇK ' t PK S ) sont générées par :' -nt .$ - - - TU 3` un système de chiffrement homomorphe ou par un système de chiffrement asymétrique. [0110] Selon une autre variante, les cléspK- si ,. tr, , et , s Km) est la même entité qui autorise l'application mobile 'PK-----Vir TriK à fonctionner sur un système d'exploitation particulier en s'assurant de l'origine (l'identité de l'auteur) de l'application (par exemple les « magasins d'applications mobiles » proposés par les constructeurs d'objets mobiles). Ces entités ayant la capacité technique à s'assurer que seules les applications mobiles signées par un auteur identifié puissent accéder à ces clés, sans pour autant donner accès aux clés à l'auteur des applications. [0138] Dans un mode de réalisation particulier, les clés Viti' re----q?' r,- - tea. sont générées à partir d'un système de chiffrement homomorphe. Ce chiffrement possède des caractéristiques algébriques suivantes : le résultat déchiffré d'une opération mathématique sur des messages chiffrés est égal au résultat de la même opération effectuée sur des messages non chiffrés. Par exemple, un chiffrement ho-momorphe est dit additif si 101391 IMath.91 Chiffre(n1) [0140] et [0141] [Math.101 Chiffre (m2) [0142] sont respectivement deux messages chiffrés de- [0143] [Maih.111 Chif fre(mi)± Chif fre(m2)= Chiffre + m2) [0144] Avantageusement, ce chiffrement permet au serveur de collecte (109) d'effectuer des agrégations statistiques (110) directement sur des mesures chiffrées, sans avoir accès au contenu de ces mesures. Ainsi, le serveur ne peut qu'apprendre une statistique calculée sur l'ensemble des participants et de cette manière, la vie privée des participants est protégée. [0145] Le processus de démarrage du système est illustré par FIG.2. [0146] 2 Collecte, normalisation et vectorisation des données [0147] Après la récupération des clés nécessaires au chiffrement des messages, l'application mobile procède à la collecte (300) des données de géolocalisation brutes (100). Pour cela, elle communique avec les différents modules contrôlant les capteurs de l'équipement connecté (101) afin de démarrer la collecte (300). [0148] Le type de capteurs à solliciter dépend du type de la collecte (300). Ce dernier peut et 24 être préalablement enregistré dans un fichier de configuration stocké sur l'équipement connecté (101), ou transmis par le serveur de collecte (109) au démarrage de l'application mobile. [0149] Dans divers modes de réalisation particulier, lesdites données de géolocalisation (100) sont collectées via différentes techniques par exemple, le GPS ou la triangulation de réseau (Wifi ou GSM-RG/46), la navigation inertielle, ou le géo-repérage. Chaque technique a un impact différent sur la précision des données et la consommation d'énergie. Par exemple, le GPS offre une très bonne précision mais nécessite une forte consommation d'énergie. Contrairement au GPS, la triangulation de réseau consomme peu d'énergie mais offre une précision inférieure. [0150] Dans un mode de réalisation particulier, une combinaison de ces différentes techniques permet d'obtenir un bon compromis entre la précision et la consommation d'énergie. Par exemple, en espaçant les appels GPS tous les 500 ou 1000 mètres par la technique de géo-repérage (qui consiste à définir une zone circulaire dont l'entrée ou la sortie est détectée via la triangulation de réseau), on obtient une trace de déplacement bien exploitable, tout en préservant la batterie de l'équipement connecté (101). [0151] Les données de géolocalisation collectées (100) sont ensuite enregistrées dans l'ordre d'arrivé sur un moyen de stockage interne, par exemple une base de données, de l'équipements connecté (101). Elles sont supprimées après leur exploitation. [0152] Selon certains modes de réalisation, une collecte statistique (300) correspond à une séquence d'observations sur les trajets d'un participant. En effet, la séquence de données horodatées collectées représente une séquence d'observations associées aux déplacements d'un participant pendant le temps de la collecte. Dans certains modes de [if réalisation, cette séquence, qu'on nomme Ti; (500), consiste au moins en éléments w.1 suivants [0153] [Math.121 X = ((tont, latt, obst)} [0154] correspondent respectivement à la longitude, la latitude, ainsi qu'une observation (par exemple, la vitesse instantanée, le lieu d'habitation ou l'humeur) de la position d'un participant recueillis à l'instant -de la collecte. Divers modes de réalisation sont illustrés par FIG.3. Dans un mode de réalisation particulier (l'architecture illustrée par PICS), ces données brutes sont d'abord traitées par une intelligence artificielle (102) en vue d'apprendre les habitudes de déplacement. Afin de faciliter cet apprentissage, les données collectées peuvent être réparties sur des fenêtres temporelles glissantes, par exemple d'une durée d'une heure, telles que [0155] [Math.13] X = début collecte - Xvp --- , Xyjn collecte) [0156] y représente une fenêtre temporelle qui débute à et se termine _ W ,- , =--., 1 - être réalisée avec un indexage sur base des Chaque fenêtre a ou est la durée d'une fenêtre. Cette répartition peut [0157] [Math.14] = ((ion', ut1, obs,i), , (lonwN, lat,' [0158] où [0159] [Math.15] (lon'i, lat,i, obs,i) [0160] est la i-ième observation de cette fenêtre. Notons que deux fenêtres consécutives peuvent se chevaucher. [0161] Toujours dans ce mode de réalisation particulier, pour un meilleur apprentissage, il est nécessaire que lesdites données soient normalisées et vectorisées (600). En effet, la normalisation ou standardisation de données (feature scaling en anglais) permet d'ajuster une série de données afin de standardiser l'intervalle des valeurs de ses différentes dimensions. Cette phase est indispensable pour les algorithmes d'apprentissage automatique car elle permet une contribution équitable entre les différentes dimensions des données à l'apprentissage. Cela a pour but d'éviter par exemple qu'une dimension, dont l'intervalle des valeurs qui est très étendu, ait une plus forte influence sur l'apprentissage que les autres dimensions. [0162] La donnée (500) étant composée de plusieurs dimensions à savoir les di- mensions spatiales ont e , la date et l'observation[ sa normalisation combine différentes techniques de normalisation. [0163] Selon un mode de réalisation particulier, les opérations de répartition, de norma- lisation, de vectorisation et de stockage sont effectuées au fur et à mesure de l'arrivé des données. [0164] Dans un mode de réalisation particulier, les fenêtres d'une heure sont utilisées afin 26 d'apprendre les habitudes de déplacement d'un participant selon l'heure et le jour de la semaine. Chaque fenêtre temporelle iTT est normalisée et transformée en un vecteur dont le format est le suivant [0165] [Math.16] Norm(lonwi, Norm(lonwN, lat'N) Norm(obswi) Norm(obs'N) Norm(jour) Norm(heure) [0166] La normalisation de chaque dimension d'un élément de est réalisée de la manière suivante : [0167] - Dans divers modes de réalisation, les positions sont encodées et vectorisées par différents systèmes. Par exemple. - une position peut-être encodé en 12 bits par le système geohash (http://en.wikipedia.org/wiki/Geohash). Ce système est basé sur une fonction de hachage qui subdivise la surface terrestre selon une grille hiérarchique. Avantageusement, ce système permet de transformer facilement la donnée de deux dimensions en un seul vecteur de bits. Par ailleurs, l'utilisation de 12 bits pour l'encodage permet d'obtenir une erreur sub-métrique. un autre système est basé sur des grilles ou cellules. Initialement, l'espace géographique est partitionné en un ensemble de cellules :43 où chaque cellule est représentée par un identifiant -..-kk--,-. Une i position spatiale est encodée par l'identifiant de la cellule dans laquelle elle se trouve. En conséquence, une séquence de positions spatiales [0168] [Math.17] (lonw2, lat'2), , (lon,N, 27 [0169] est encodée par une séquence de cellules r w, - wir C Ws%. [0170] - La normalisation des jours de la semaine et l'heure est effectuée par une technique dite d'encodage one-hot qui consiste à représenter des états en utilisant pour chacun d'entre eux une valeur dont la représentation binaire ne contient qu'un seul chiffre 1. - Les jours ont 7 valeurs possibles dont 7 états allant du Lundi à dimanche. Les jours peuvent donc être encodés par un vecteur de bits de taille 7 suivant [0171] [Math.18] Nornt(jour) = [171,1, b',', bm' bieatbwn, bsain, bdimi [0172] Ainsi. [0173] [Math.19] Normaundo -= [1000000] Nortn(mard) = [01000001 N orm(dimanche) = [0000001]. [0174] Les heures ont 24 valeurs possibles dont 24 états allant de Oh à 23h. Les heures peuvent donc être encodés comme un vecteur de bits de taille 24 [0175] [Math.20] N orm(hettre) = [b3, b b231 101761 Ainsi, 101771 1Math.211 Norm(Oh) = [100000000000000000000000], N orm(1h) = [0100000000000 00000000000], N orm(?3h) = [000000000000000000000001]. 101781 L'observation est normalisée via la technique dite de standardisation, qui consiste à soustraire la moyenne et diviser par l'écart type. Cette technique permet de ramener la moyenne des données à 0 et leur écart type à 1. Avantageusement, la moyenne et l'écart type peuvent être estimés d'une manière incrémentale au fur et à mesure de l'arrivée des données. Plus spécifiquement, [0179] 28 [Math.22] obswi - mean(obs,,) Norm(obs'') std(obs') 101801 Une autre technique dite min-max consiste à calculer la norme de façon suivante 101811 IMath.231 Nor - (obssw) mar(obs') - min (obs,) [0182] avec l'avantage que les valeurs sont représentées sur une échelle de 0 à I. [0183] Selon un mode de réalisation particulier, pour que tous les vecteurs aient la même taille, ce qui facilite l'apprentissage, la technique zero-padding peut être appliquée. Cette dernière consiste à ajouter les éléments 0 à un vecteur jusqu'à ce qu'on obtienne une taille maximum prédéfinie. [0184] 3 Apprentissage automatique des habitudes [0185] Le but de cette étape est de détecter directement sur l'équipement connecté (101), à partir des données représentées sous forme de vecteurs normalisées (607) dans l'étape précédente, des comportements de déplacement similaires du participant. Un comportement correspond soit à un point d'intérêt, si le vecteur représente une stationnarité, soit à un trajet, si le vecteur représente un déplacement. Pour cela, un algorithme de partitionnement est utilisé pour répartir l'ensemble des vecteurs (607) dans différents groupes où les vecteurs appartenant à un même groupe partagent des caractéristiques communes, par exemple une stationnarité à la station de Métro de Chatelet-les-Halles entre 9h et 10h tous les lundis, ou un déplacement entre Boulevard Haussmann et l'Opéra de Paris, entre 19h et 20h tous les soirs de la semaine. Dans un mode de réalisation particulier, ce processus est implémenté par un algorithme dit « en ligne » ou incrémentai, dans lequel le partitionnement est effectué au fur et à mesure de l'arrivée des vecteurs (607). Dans un autre mode de réalisation, un algorithme « hors ligne » prend en entrée un ensemble de vecteurs. [0186] Le partitionnement des données de géolocalisation, qui sont par nature éparses, irré- gulières et bruitées reposera, dans le mode de réalisation considéré, sur une architecture de réseaux de neurones particulière dite auto-encodeur. Cette architecture apprend une fonction identité permettant de reproduire un vecteur d'entrée (607), en faisant d'abord une compression pour trouver une représentation de haut niveau (608) de ce dernier, puis la décompressant pour retrouver le vecteur d'entrée. Avantageusement, les vecteurs correspondant à un comportement particulier ont des représentations compactes (608) très similaires. L'auto-encodeur peut également, de obswi - min (obsw) 29 manière avantageuse, partitionner des données non linéaires et bruitées. [0187] Un auto-encodeur est composé d'une couche de neurones d'entrée, une couche de neurones de sortie et au moins une couche de neurones cachée. Les poids du réseau de neurones sont initialisés avec des valeurs aléatoires. L'apprentissage s'effectue d'une manière itérative dans laquelle chaque passage vers l'avant d'un vecteur d'entrée dans le réseau active différents neurones via des fonctions d'activation. L'écart (l'erreur quadratique) entre vecteur d'entrée et de sortie est ensuite calculée et retro-propagé vers l'arrière. Via un algorithme du gradient, les poids sont mis à jour afin de minimiser cette erreur (606). Avantageusement, ce mode d'apprentissage itératif est particulièrement adapté pour un fonctionnement en mode en ligne dans lequel les vecteurs arrivent au fur et à mesure de la collecte. [0188] Les couches d'un auto-encodeur sont organisées en trois composantes principales suivantes : [0189] un encodeur (601) qui correspond à une pile de couches dont le nombre de neurones diminue progressivement, permettant de « compresser » le vecteur d'entrée (607) pour obtenir sa représentation de haut niveau (608), une couche latente (également appelée la représentation latente ou compacte) qui contient la représentation de haut niveau (608) du vecteur d'entrée (607), un décodeur (603) qui correspond à une pile de couches dont le nombre de neurones augmente progressivement permettant de « décompresser » la représentation compacte (608). [0190] Le nombre et la topologie des couches, le nombre de neurones dans une couche par- ticulière, la fonction de coût ainsi que la méthode du gradient font partie des paramètres dudit auto-encodeur. Dans un mode de réalisation particulier, l'architecture dudit auto-encodeur est caractérisée par : [0191] - une couche d'entrée composée de 128 neurones activés par une fonction Unité de Rectification Linéaire (ReLU), une couche cachée composée de 64 neurones activés par une fonction ReLU, une deuxième couche cachée composée de 2 neurones activés par une fonction linéaire (le goulet d'étranglement du réseau), une troisième couche cachée composée de 64 neurones activés par une fonction ReLU, une couche de sortie composée de 128 neurones activés par une fonction ReLU. la fonction de coût à minimiser, qui correspond à l'erreur quadratique produit par les vecteurs d'entrée et de sortie, l'algorithme du gradient utilisé pour minimiser la fonction de coût, qui correspond à l'algorithme Adaptive Moment Estimation (ADAM). [0192] Notons que dans cette architecture, la représentation compacte est codée en seulement 2 dimensions. [0193] Dans un mode de réalisation particulier, lesdits paramètres sont écrits initialement dans un fichier stocké dans un moyen de stockage de l'équipement connecté (101). Au premier démarrage de l'équipement connecté (101), un procédé d'apprentissage qu'on nomme NON SUPERVISÉ (302), implémenté sous forme d'un programme informatique, lit ledit fichier et procède à la création dudit auto-encodeur. Dans un mode de réalisation particulier, par soucis de consommation d'énergie, l'apprentissage est effectué par intermittence lorsque l'équipement connecté (101) est branché sur secteur. Après chaque itération d'apprentissage, l'état actuel dudit auto-encodeur (le poids de ses neurones) est sauvegardé dans le moyen de stockage de l'équipement connecté (101). Le branchement sur secteur réveille ledit procédé d'apprentissage NON SUPERVISÉ (302), qui à son tour charge l'état actuel dudit auto-encodeur. Ledit procédé effectue ensuite une requête pour récupérer tous les nouveaux vecteurs dans la base de données de l'équipement connecté (101). Une fois tous lesdits vecteurs sont passés par l'auto-encodeur, le procédé sauvegarde à nouveau son état. [0194] Dans un mode de réalisation particulier, afin d'accélérer l'apprentissage, ledit auto- encodeur est augmenté par une mémoire (605). Cette dernière permet de fusionner (602) une nouvelle observation avec les observations similaires du passé et ainsi rend l'apprentissage plus précis et plus rapide. La mémoire (605) est implémentée sous forme d'une liste desdites représentations compactes (608) stockées dans le moyen de stockage de l'équipement connecté (101). Dans ce mode de réalisation, ledit procédé d'apprentissage NON_SUPERVISÉ (302), avant chaque décodage d'une représentation compacte (608), procède à une lecture de ladite liste et récupère les représentations compactes (608) qui lui sont similaires. La similarité entre deux représentations compactes (608) est définie comme une distance euclidienne entre deux vecteurs, à savoir [0195] [Math.24] similarité = 71 - v2I2 101961 Si aucune représentation compacte similaire n'est trouvée, ledit procédé d'apprentissage enregistre la nouvelle représentation compacte (608) dans la liste. Dans le cas contraire, il procède à une fusion (602) qui correspond à une combinaison linéaire des vecteurs, à savoir 101971 IMath.251 31 [0198] est le nombre de représentations à fusionner. Le procédé enregistre ensuite la fusion dans la liste. [0199] Le procédé d'apprentissage NON_SUPERVISÉ (302) est illustré par FIG.6. [0200] 4 Mesures [0201] Un deuxième procédé, nommé MESURE (301), est exécuté en parallèle avec le procédé NON_SUPERVISÉ (302) sur l'équipement connecté (101). Ces deux procédés sont indépendants. [0202] Le procédé MESURE (301) est composé de différents modules de mesure (503) cor- respondant aux différentes fonctionnalités du système. Dans divers modes de réalisation particulier, ces modules incluent par exemple : [0203] un module de recalage cartographique qui projette les données de géoloca- lisation sur une carte géographique numérique, un module de détection des points d'intérêt du participant, un module de prédiction des déplacements futurs du participant. [0204] Ces différents modules (503) utilisent toutes les données de géolocalisation brutes (100), mais fonctionnent d'une manière indépendante. Ils ont leurs propres espaces de mémoire dans le moyen de stockage interne de l'équipement connecté (101) pour stocker leurs propres paramètres et données. [0205] Dans divers modes de réalisation, cette indépendance permet avantageusement d'activer et de désactiver les différents modules selon les besoins du système. Par exemple, dans le cas où les mesures à collecter sont le nombre de personnes à un endroit donnée à un instant donnée, ainsi que leur provenance (les lieux d'habitation et de travail), les modules à activer sont le recalage cartographique et la détection des points d'intérêt. [0206] Les modules sont implémentés et désactivés par défaut. Au premier lancement. de l'application mobile, le procédé MESURE (301) charge un fichier de configuration qui contient la liste des modules à utiliser afin de pouvoir les activer. [0207] Dans un mode de réalisation particulier, par souci de consommation d'énergie, le procédé MESURE (301) reste inactif la plupart du temps et ne fait appel aux modules que par l'intermittence, quand l'équipement connecté (101) est branché sur secteur. Quand l'équipement connecté (101) est débranché du secteur, le procédé MESURE (301) enregistre les états des différents modules (503) dans leurs espaces de mémoire et arrête les modules (503). Quand un module est réveillé, le procédé MESURE (301) charge son dernier état et le module continue son travail en cours. [0208] Dans divers modes de réalisation, le module de recalage cartographique est sollicité. [0209] Ledit module de recalage cartographique prend en entrée une suite de données de 31 géolocalisation et les projette sur une carte géographique numérique. Dans divers modes de réalisation, cette carte contient le réseau routier et ferroviaire. Plus spécifiquement, elle correspond à un graphe dans lequel les noeuds correspondent aux intersections et les arêtes correspondent aux segments de route. [0210] Ladite carte est préalablement générée sous forme d'un fichier binaire et fournie à la demande par le serveur de collecte (109). Sur l'équipement connecté (101), ledit fichier est stocké dans l'espace de stockage dédiée au module de recalagc cartographique. [0211] Dans divers modes de réalisation, ledit fichier contient une liste desdits noeuds et desdits arêtes, ainsi que leurs relations. [0212] Dans un mode de réalisation particulier, par soucis d'optimisation de l'espace de stockage de l'équipement connecté (101), de la charge de communication ainsi que de la consommation d'énergie, ladite carte est divisée au niveau dudit serveur de collecte (109) en zones de petite taille. Ledit module de recalagc cartographique, en fonction des données de géolocalisation qu'il reçoit en entrée, sélectionne les zones dont il a besoin et effectue une demande auprès dudit serveur de collecte (109) pour ces zones. La demande et le transfert des fichiers contenant ces zones peut s'effectuer quand l'équipement connecté (101) est branché sur secteur, et/ou connecté à un réseau particulier (3G, 4G, 5G et/ou Wi-Fi). [0213] Dans divers modes de réalisation, le problème de recalagc cartographique est modélisé par un modèle de Markov caché dans lequel chaque donnée de géolocalisation a plusieurs candidats qui correspondent aux segments de route. En connaissance des probabilités des candidats ainsi que des probabilités de transition entre les candidats consécutifs, un algorithme de Viterbi peut être appliqué pour retrouver la séquence de candidat la plus probable pour chaque séquence de données de géolocalisation. [0214] Dans divers modes de réalisation, chaque module (503) activé sauvegarde le résultat de son traitement dans une base de données sur l'équipement connecté (101). Ledit procédé MESURE (301) est chargé de récupérer les différents résultats disponibles, de les combiner en fonction du type de collecte, d'en produire des mesures (504) destinées au serveur de collecte (109), et de les enregistrer par le moyen de stockage de l'équipement connecté (101). [0215] Dans divers modes de réalisation, un troisième procédé, nommé SUPERVISÉ (304), permet d'optimiser en termes de consommation d'énergie la production des mesures (504) en connectant chaque dit module (503) à un module d'apprentissage supervisé (505). Les modules d'apprentissage supervisé (505) prennent en entrée les résultats (504) des modules de mesure et les données de géolocalisation brutes (500, 100) correspondantes. Selon un mode d'apprentissage en ligne ou hors ligne, un module 33 d'apprentissage supervisé (505) arrive à approxi mer une fonction de prédiction desdites mesures (504) en fonction desdites données de géolocalisation brutes (500, 100). Avantageusement, lorsque l'apprentissage arrive à terme et caractérisé par une fonction de prédiction plus précise, les modules de mesure (503) peuvent être désactivés sans que cela n'impacte le fonctionnement du système. Cela a pour effet de minimiser la consommation d'énergie engendrée par lesdits modules de mesure (503). [0216] Dans un mode de réalisation particulier, ces modules d'apprentissage supervisé (505) sont implémentés par des algorithmes d'apprentissage en séquence (sequence to sequence en anglais). Plus spécifiquement, ces algorithmes, très utilisés en traitement du langage naturel à des fins de reconnaissance de parole ou de traduction automatique, consistent en une architecture de réseaux de neurones comportant deux parties : [0217] L'encodeur est implémenté par un réseau de neurones récurrent de type LSTM (Long Short-Term Memory). Il prend en entrée la séquence des données de géolocalisations brutes (500, 100) préalablement normalisées selon les techniques décrites précédemment pour en produire une représentation compacte de ces dites données sous forme de vecteur. Le décodeur est implémenté par un réseau de neurones récurrent de type LSTM. Le but du décodeur est de pouvoir produire en sa sortie des mesures en fonction des représentations compactes des données de géolocalisation brutes (500, 100) obtenu à la sortie de l'encodeur. Il prend donc en entrée la représentation compacte d'une séquence de données de géolocalisation brutes (500, 100) puis la mesure produite à partir desdites données. [0218] L'architecture d'un module d'apprentissage supervisé (505) est illustrée par FIG.9. [0219] 5 Généralisation des mesures [0220] Afin de garantir une protection totale des données personnelles d'un participant, les différentes mesures (504) produites doivent être anonymisées avant leur envoi au serveur de collecte (109). [0221] Selon un mode de réalisation particulier, l'anonymisation de ces mesures (504) est basée sur une technique dite de généralisation permettant aux équipements connectés (101) de préserver leur anonymat. Un procédé, nommé GÉNÉRALISATION, pour chaque mesure produite précédemment par le procédé MESURE (301) ou le procédé SUPERVISÉ (304), procède à sa généralisation, puis à l'enregistrement de la mesure généralisée via le moyen de stockage. Ladite généralisation est réalisée comme suit : [0222] Généralisation : [0223] La généralisation est un procédé qui vise à réduire la précision d'une mesure en modifiant son échelle ou son ordre de grandeur respectif Elle s'applique aussi-bien sur des mesures définies sur une dimension que sur des mesures définies sur plusieurs di- 34 mens ions. [0224] Considérons une mesure est le nombre de dimension. la Fr iff e généralisation de "7. ' est définie par - dimensions tel queIF. ' - 102251 IMath.261 Gen(P) = S [0226] Mil 4 est un espace de appartient à [0227] Par exemple : [0228] - une généralisation d'une vitesse de 40 km/h consiste en l'intervalle 20-60 km/ h. - une généralisation d'une présence à 9h32 à la Mairie de Paris consiste en la présence dans le Premier arrondissement de Paris entre 9h et 10h. [0229] Selon divers modes de réalisation dans lesquels la genéralisation concerne une donnée de géolocalisation, la forme géométrique de peut-être par exemple circulaire, rectangulaire, hexagonale ou des régions administratives comme Paris, 11ede-France, France. Une adresse précise à 1 rue d'Uzes peut être généralisée par le 2ème arrondissement de Paris ou Paris ou Ile-de-France ou France. [0230] Selon divers modes de réalisations dans laquelle la généralisation concerne un moment particulier, la période 1 Lk-; peut-être une minute, une hem-e ou une période . définie par convention comme le weekend ou le matin. [0231] Selon divers modes de réalisations dans laquelle la généralisation concerne un descriptif de personne, une donnée comme l'âgeiis;- d'un participant peut être une tranche d'âge. [0232] Généralisation tnultiniveau : [0233] Selon un mode de réalisation particulier, une mesure peut être généralisée sur dif- férentes échelles de manière à obtenir des mesures généralisees plus ou moins précises. Soit l'espace structurée en Ti niveaux hiérarchiques, est d'abord partitionné en kl sous-espaces t contiguës où " e Pour chaque un sous-espace É>. est subdivisé en t h h.1 II sous-espaces contiguës. La généralisation multiniveau d'un point 3 au niveau r est définie par [0234] [Math.27] Genh(P) = SA 102351 où est le sous-espace du niveau . qui contient [0236] Dans l'exemple précédent, si on considère t, comme la France, son partitionnement sur quatre niveaux consiste en des régions, des départements, des communes et des arrondissements. La position à 1 rue d'Uzès est généralisée au niveau 4 par France, au niveau 3 par Ilc-de-France, au niveau 2 par Paris et au niveau 1 par le 2ème arrondissement. [0237] Toujours selon ce mode de réalisation particulier, cc partitionncment hiérarchique est calculé préalablement par l'application mobile au démarrage de la collecte, puis stocké dans une base de données. Afin d'effectuer une généralisation de donnée, le procédé GÉNÉRALISATION prend comme entrée le paramètre et applique une recherche dans ladite base de données pour trouver le sous-espace au niveau- 7 qui contient la -I mesure. Le procédé GÉNÉRALISATION remplace ladite mesure par ce sous-espace. Il sauvegarde, le cas échéant, cette généralisation par le moyen de stockage. 102381 Un exemple de généralisation multiniveau est illustré par FIG.7. 102391 Généralisation suivant le concept du k-anonymat : 102401 Selon un mode de réalisation particulier, ladite généralisation multiniveau est couplée avec une technique d'anonymisation. La généralisation à elle seule ne peut garantir une anonymisation complète des mesures produites. En effet, si l'on suppose que l'équipement connecté (101) envoie toujours des mesures généralisées uniques au serveur de collecte (109), par exemple un participant résidant dans un village avec très peu d'habitant qui envoie ses comptages de passage. A partir de la base de données du serveur de collecte (109), lesdites mesures pourront servir à isoler le participant dudit équipement connecté (101) afin de l'identifier. Par conséquent, les données personnelles du participant sont compromises [0241] Pour résoudre cc problème, un procédé nommé ANONYMISATION protège les données personnelles du participant en exploitant le concept du k-anonymat. Ledit procédé garantit que dans la base de données des mesures reçues par le serveur de 36 collecte (109), il existe au moins participants qui soumettent la même mesure. De cette manière, une mesure généralisée ne peut être isolée afin d'identifier l'équipement connecté (101), et donc le participant, qui l'a envoyé au serveur de collecte (109). [0242] Considérons les mesures généralisées Pen, p hkp), reçues des différents participants par le serveur de collecte (109). L'anonymat d'un participant à 1, _ cette collecte par rapport à . p est garanti si et seulement s'il existe un niveau ih tel que [0243] [Math.28] IGenh(P) k 102441 Le niveau de confidentialité dudit système de collecte est donc défini en fonction de VI 0. [0245] Selon divers modes de réalisation, le niveau de confidentialité - d'un participant F peut être défini en fonction des mesures, par exemple, ses données sensibles telles que les lieux d'habitation et de travail peuvent être protégées avec un plus grand D'autre part, le niveau de confidentialité d'un participant peut être défini par lui-même. Il peut être également estimé d'une manière automatique et dynamique par le procédé ANONYMISATION, décrit ci-dessous, à partir des habitudes de déplacement du participant détectés par le procédé NON SUPERVISÉ (302). [0246] Un exemple du k-anonymat est illustré par FIG.8. [0247] 6 Mécanisme d'anonymisation des mesures [0248] Dans un mode de réalisation particulier, ledit procédé ANONYMISATION (illustré par 110.4) consiste à envoyer une mesure audit serveur de collecte (109) tout en garantissant la sécurité et l'anonymat des données échangées. Dans ce procédé, il est supposé que chaque équipement connecté (101): possède deux paires de clés E( publiques et privées p ( Km)et que le serveur dispose d'une paire de clés publique privée générées au démarrage du système. [0249] Selon un mode de réalisation particulier, initialement, en fonction des habitudes de 37 déplacement détectées par l'intelligence artificielle (102) (par exemple, maison, travail, lieu de passage fréquent, etc.), une valeur 4j est définie par chaque équipement connecté (101) pour chaque mesure. Par exemple, la valeur de définie pour publier une mesure caractérisant une zone d'habitation d'un participant sera plus élevée que celle définie pour publier une mesure caractérisant un lieu de passage. La valeur donnée à TTi a une influence sur le niveau de confidentialité d'une mesure. Ainsi, si est élevé (resp. bas), le niveau de confidentialité est beaucoup plus haut (resp. bas). [0250] Le procédé ANONYMISATION assure en effet à travers une phase de négociation qu'une mesure généralisée transmise au serveur par un équipement connecté (101) garantit l'anonymat du dit équipement connecté (101) selon ledit concept du k-anonymat. [0251] Selon divers modes de réalisation, la phase de négociation du procédé ANONY- MISATION peut s'effectuer suivant plusieurs manières dont : [0252] - une négociation partant du niveau de généralisation le plus bas de la mesure à envoyer, [0253] - une négociation partant du niveau de généralisation le plus haut de la mesure à envoyer, [0254] - une négociation simultanée de plusieurs niveaux. [0255] Considérons le mode de réalisation dans lequel la négociation s'effectue à partir du niveau de généralisation le plus haut de la mesure. [0256] Soit ''Aem une mesure à envoyer au serveur de collecte (109) par un équipement Pl -- I connecté (101) 7 ; [0257] Initialement, l'équipement connecté (101) réalise une généralisation au niveau 7 ftt it't f en (m), de sa mesure via le procédé GENERALISATION. La mesure généralisée est ensuite chiffrée au moyen de la clé de chiffrement homomorphe !Km rKen. pour obtenir [0258] [Math.2] Chif fre(Genfri(M)) 102591 38 pour obtenir - [0260] [Math.1] Signee(Chif fre(Gens(M))) [0261] Ce dernier est ensuite envoyé au serveur de collecte (109) via un réseau anonyme (108). [0262] A la réception de la mesure, le serveur de collecte (109) vérifie son authenticité au moyen de la clé de chiffrement asymétrique PK,,,,j3Ke via l'entité tierce de confiance (105). Une fois l'authentification terminée, le serveur de collecte (109) obtient [0263] [Math.2] Chi f fre(Geny(M)) [0264] puis enregistre la paire [0265] [Math.2,[Math 1] Chi f fre(Genn(M)) Signee(Chiffre(GenH(M))), [0266] en utilisant un moyen de stockage, par exemple, une base de données. [0267] Supposons qu'après ladite réception, le serveur a reçu des mesures [0268] [Math.2] Chi f fre(Genll(M)) 102691 provenant des équipements connectés (101) Fi- [j Selon Nj- Selon divers modes de réalisation, le serveur de collecte (109) effectue une agrégation (110), par exemple, une somme, à savoir [0270] [Math.29] Agg (Chif fre(Genn(M))) :hi f fre(Genu(M)) [0271] Ledit serveur de collecte (109) enregistre le résultat de ladite agrégation via un moyen de stockage. [0272] Après ledit envoi, l'équipement connecté (101) sollicite auprès du serveur de collecte (109) le résultat de ladite agrégation. Le serveur signe alors le résultat de l'agrégation au moyen de sa clé de chiffrement asymétrique içg.,( v , à savoir [ "e-S« ".Ç. 102731 39 [Math .30] Signes (Ag g (Chi f fre(GenH(M)))) [0274] Lorsque l'équipement connecté (101) reçoit ledit résultat, il vérifie d'abord son au- thenticité au moyen de la clé de chiffrement asymétrique K via l'entité tierce de confiance (105). Ainsi, l'équipement connecté (101) obtient 102751 1Math.31 Agg (Chi f fre(Genn(M))) [0276] Dans un mode de réalisation particulier où l'agrégation est un comptage, l'équipement connecté (101) vérifie si ladite agrégation est supérieur ou égal à prédéfini. Si [0277] [Math.31] Agg (Chi" fre(GenR(M))) 1 h h: e.+4,(M) ; Lnn S ig ne erhi f f re (Genh(M))) ; 5*nlel :: .!J hE3, s r en ouLenJ r Aog (ihi: if ire(ih en,(111)1.) ni:: h ne; Je ,s