Serveur de gestion de données confidentielles anonymes
La présente invention concerne un serveur de gestion de données confidentielles anonymes.
Dans des serveurs de gestion de répertoire de données personnelles mis en œuvre dans des réseaux avec infrastructure de type Internet, tels qu'un serveur de courrier électronique dans lequel sont stockées des adresses mails, les usagers doivent fournir au serveur des informations qui les caractérisent. Un tel serveur de gestion peut être attaqué par une entité malveillante qui accède dans la base de données du serveur à toutes les informations personnelles des usagers pour les utiliser frauduleusement.
Dans le cas des réseaux décentralisés de type ad-hoc, les terminaux d'usager gardent localement en mémoire leurs données personnelles et les échangent directement avec d'autres terminaux en communication point à point . Un premier terminal souhaitant communiquer avec un deuxième terminal du réseau doit d'abord effectuer une recherche relative à une information caractérisant le deuxième terminal afin d'obtenir un identificateur de contact du deuxième terminal tel qu'un numéro de téléphone ou une adresse internet. Lors de cette recherche, le premier terminal doit s'adresser à de nombreux terminaux du réseau avant d'obtenir un premier contact avec le deuxième terminal, ce qui conduit à un temps de recherche long et une occupation importante du réseau .
Une solution aux inconvénients cités précédemment est préconisée dans la demande de brevet américain US 2004/0139025 déposée le 10 novembre 2003 concernant un procédé de protection d'informations personnelles. Ce procédé garantit le contrôle et la confidentialité des informations personnelles d'individus, empêche une utilisation non autorisée de celles-ci et en permet une utilisation limitée par des droits d'accès. Les données propres aux individus sont collectées et maintenues dans une base sécurisée de données confidentielles. Les droits d'accès aux données confidentielles d'un individu sont inclus dans des notifications transmises depuis l'entité gérant la base de données vers d'autres parties impliquées dans des transactions de données confidentielles de l'individu. Ainsi chaque partie impliquée dans une transaction connaît l'identité de 1 ' individu et peut ensuite communiquer directement avec celui-ci.
L'invention a pour objectif une recherche de contact d'un usager basée sur ses informations personnelles privées sans pour autant les divulguer. Ainsi une entité ayant effectuée une telle recherche est mise en relation avec l'usager sans connaître les données personnelles de l'usager.
Pour atteindre cet objectif, un procédé de gestion de données confidentielles d'usagers d'objets communicants enregistrées dans un moyen serveur, les objets communicants et le moyen serveur communiquant à travers un réseau de télécommunications, est caractérisé en ce qu'il comprend les étapes suivantes :
enregistrement de données confidentielles codées et d'une référence d'un usager transmises depuis un premier objet communicant dans le moyen serveur, et recherche d'une référence d'un usager parmi des données confidentielles codées enregistrées associées à d'autres références d'usagers dans le moyen serveur en fonction d'au moins une donnée de recherche codée transmise depuis un deuxième objet communicant, et transmission d'au moins une référence d'usager associée à une donnée confidentielle codée correspondant à la donnée de recherche codée par le moyen serveur au deuxième objet communicant.
Plus particulièrement, l'enregistrement de données confidentielles codées peut comporter une saisie des données confidentielles de l'usager depuis le premier objet communicant, un codage desdites données confidentielles et une transmission des données confidentielles codées et de la référence de l'usager vers le moyen serveur afin d'enregistrer les données confidentielles codées en association à la référence de l'usager dans le moyen serveur parmi des données confidentielles codées associées à des références d'autres d'usagers. La recherche de référence peut comporter une saisie d'au moins une donnée de recherche depuis le deuxième objet communicant, un codage de la donnée de recherche en la donnée de recherche codée, une transmission de la donnée de recherche codée au moyen serveur afin que celui-ci compare la donnée de recherche codée transmise à toutes les données confidentielles codées enregistrées dans le moyen serveur, et transmette au deuxième objet communicant au moins la référence associée à la donnée confidentielle codée correspondant à la donnée de recherche codée.
Selon 1 ' invention, le moyen serveur ne contient pas de données personnelles d'usager mais des données confidentielles codées indéchiffrables par une entité mal intentionnée tentant d'accéder aux données dans le moyen serveur. Ainsi le procédé de l'invention a pour avantage d'obtenir une référence d'un usager du réseau à partir de données de recherche caractérisant l'usager afin par exemple d'entrer en relation avec celui-ci, sans que ce dernier divulgue ses données personnelles confidentielles.
Selon une caractéristique, le procédé comprend une mise à jour d'au moins une première donnée confidentielle de l'usager en une donnée confidentielle modifiée depuis le premier objet communicant, un codage de ladite donnée confidentielle modifiée et une transmission de la première donnée confidentielle codée, de la donnée confidentielle modifiée codée et de la référence de l'usager vers le moyen serveur, une suppression d'une donnée confidentielle codée associée à la référence de l'usager dans le moyen serveur et identique à la première donnée confidentielle codée transmise, et un enregistrement de la donnée confidentielle modifiée codée en association à la référence de l'usager dans le moyen serveur.
Selon une autre caractéristique de 1 ' invention, lors de l'enregistrement, chaque donnée confidentielle est associée à une catégorie qui la caractérise et est enregistrée codée dans le moyen serveur en association à ladite catégorie et à la référence, et lors de la recherche, la référence et la catégorie associées dans le moyen serveur à une donnée confidentielle codée correspondant à la donnée
de recherche codée sont transmises au deuxième objet communicant .
Selon encore une autre caractéristique de l'invention, lors de l'enregistrement, la donnée confidentielle saisie par l'usager dans le premier objet communicant est déclinée en au moins une déclinaison confidentielle qui est également codée, transmise au moyen serveur et enregistrée dans le moyen serveur en association à la référence de l'usager du premier objet communicant; et lors de la recherche, la donnée de recherche dans le deuxième objet communicant est déclinée en au moins une déclinaison de recherche qui est codée, transmise au moyen serveur et comparée aux données confidentielles codées et aux déclinaisons confidentielles codées associées enregistrées dans le moyen serveur.
L'invention a aussi pour objet un moyen serveur pour gérer des données confidentielles d'usagers d'objets communicants à travers un réseau de télécommunications. Le moyen serveur est caractérisé en ce qu'il comprend : un moyen pour enregistrer des données confidentielles codées et une référence d'un usager transmises depuis un premier objet communicant, un moyen pour rechercher une référence d'un usager parmi des données confidentielles codées enregistrées associées à d'autres références d'usagers en fonction d'au moins une donnée de recherche codée transmise depuis un deuxième objet communicant, et un moyen pour transmettre au moins une référence d'usager associée à une donnée confidentielle codée correspondant à la donnée de recherche codée au deuxième objet communicant.
L'invention concerne aussi un objet communicant, communiquant à travers un réseau de télécommunications avec un moyen serveur pour gérer des données confidentielles d'usagers. L'objet communicant est caractérisé en ce qu'il comprend lors d'un enregistrement de données confidentielles de l'usager de l'objet communicant : un moyen pour saisir lesdites données confidentielles ; un moyen pour coder lesdites données confidentielles; et un moyen pour transmettre les données confidentielles codées et une référence de l'usager vers le moyen serveur afin d'enregistrer les données confidentielles codées en association à la référence de l'usager dans le moyen serveur parmi des données confidentielles codées associées à des références uniques d'autres usagers.
L'invention concerne également un objet communicant, communiquant à travers un réseau de télécommunications avec un moyen serveur pour gérer des données confidentielles d'usagers. L'objet communicant est caractérisé en ce qu'il comprend lors d'une recherche d'une référence d'un usager d'un autre objet communicant : un moyen pour saisir au moins une donnée de recherche ; un moyen pour coder la donnée de recherche en une donnée de recherche codée ; et un moyen pour transmettre la donnée de recherche codée au moyen serveur afin que celui-ci compare la donnée de recherche codée transmise à toutes les données confidentielles codées enregistrées dans le
moyen serveur, et transmette à l'objet communicant au moins une référence d'usager associée à une donnée confidentielle codée correspondant à la donnée de recherche codée . Plus généralement un objet communiquant selon 1 ' invention peut comprendre à la fois les moyens énoncés dans les deux paragraphes précédents.
Enfin, l'invention se rapporte à un programme d'ordinateur apte à être mis en œuvre dans un moyen serveur communiquant avec des objets communicants à travers un réseau de télécommunications pour gérer des données confidentielles d'usagers des objets communicants. Le programme comprend des instructions qui, lorsque le programme est exécuté dans ledit moyen serveur, réalisent les étapes selon le procédé de l'invention.
D'autres caractéristiques et avantages de la présente invention apparaîtront plus clairement à la lecture de la description suivante de plusieurs réalisations de l'invention données à titre d'exemples non limitatifs, en référence aux dessins annexés correspondants dans lesquels : - la figure 1 est un bloc-diagramme schématique d'un système de gestion de données confidentielles anonymes mettant en œuvre un procédé de gestion de données confidentielles anonymes selon l'invention ; la figure 2 est un bloc-diagramme plus détaillé du système de la figure 1 ;
- la figure 3 est un algorithme représentatif d'une première étape principale du procédé pour enregistrer des données confidentielles d'usager selon 1 ' invention ; et
- la figure 4 est un algorithme représentatif d'une deuxième étape principale du procédé selon 1 ' invention pour rechercher une référence relative à des données confidentielles anonymes d'un usager.
La figure 1 représente un système de gestion de données confidentielles anonymes comprenant un serveur de gestion de données confidentielles anonymes ADS et des objets communicants tels qu'un terminal radio mobile TA, un ordinateur personnel TB ou tout autre dispositif de communication personnelle, à travers un réseau de télécommunications RR-RPQ.
Le réseau de télécommunications comprend un réseau de radiocommunications cellulaire RR du type GSM avec gestion de la mobilité et accès par voie radio GPRS, ou du type à accès multiple à répartition par codes CDMA (Coded Division Multiple Access) de la troisième génération (3GPP) du type UMTS (Universal Mobile Télécommunications System) ou UTRAN (UMTS
Terrestrial Radio Access Network) , ou de la troisième génération (3GPP2) du type CDMA 2000, adossé à un réseau à commutation par paquets RPQ de type internet . Le réseau RT peut également être un réseau local du type WiFi (Wireless Fidelity) , WiMax
(Worlwide Interoperability for Microwave Access) ou
Wibro (Wireless Broadband) , ou encore un réseau de proximité du type infrarouge, Bluetooth ou NFC (Near
Field Communication) .
Le serveur de gestion de données confidentielles anonymes ADS est relié ou comprend une base de données BD qui contient des données confidentielles codées DCl à DCN respectivement associées à des références uniques RUl à RUN. Des données
confidentielles DCA, DCB, avec l ≤ A ≤ N, l ≤ B ≤ N, sont par exemple des données personnelles d'un usager d'un objet communicant TA, TB, et correspondent par exemple au nom de l'usager, à son prénom, sa date de naissance, son adresse personnelle, son ou ses numéros de téléphone, sa profession, son adresse professionnelle. La référence unique RUA, RUB de l'usager peut être son numéro de téléphone. Il est toutefois préférable que cette référence unique reste anonyme et caractérise l'usager et/ou son terminal sans pour autant permettre d' identifier directement l'usager et permettre une communication directe avec lui.
Un usager qui souhaite communiquer avec un autre usager sans nécessairement divulguer ses données personnelles utilise le serveur de gestion de 1 ' invention.
Le serveur de gestion met en œuvre un procédé de gestion de données confidentielles anonymes comportant deux étapes principales respectivement représentées aux figures 3 et 4. Ces étapes principales sont un enregistrement de données confidentielles anonymes codées d'un usager associées à une référence unique de l'usager dans la base de données BD, et une recherche d'une référence unique d'un usager en fonction d'une donnée de recherche codée parmi des données confidentielles anonymes codées d'usagers enregistrées dans la base de données BD.
Lors d'un enregistrement de données confidentielles d'un usager d'un premier objet communicant, par exemple le terminal radio mobile TA, le terminal TA transmet les données confidentielles sous forme codées DCA et une référence unique RUA
caractérisant l'usager du terminal au serveur ADS via les réseaux de radiocommunications RR et de paquets RPQ. Le serveur ADS enregistre les données DCA en association à la référence RUA dans la base de données BD.
Lors d'une recherche de données confidentielles par un usager d'un deuxième objet communicant par exemple l'ordinateur personnel TB, l'ordinateur TB transmet au serveur ADS via le réseau de paquets RPQ une requête RQ contenant des données de recherche codées DRC. En réponse, le serveur lui transmet une ou des références d'usager RUn relatives à des données confidentielles DCn enregistrées dans la base de données BD et correspondant aux données de recherche DRC, avec 1 < n ≤ N.
Lorsque l'objet communicant est un terminal mobile TA, l'échange de données entre le terminal TA et le serveur ADS s'effectue entre le réseau de radiocommunications RR et le réseau de paquets RPQ par l'intermédiaire par exemple d'une passerelle de communication non représentée sur la figure 1. La passerelle de communication peut comporter une passerelle d'accès pour communiquer avec le serveur ADS à travers le réseau de paquets RPQ à haut débit. Une autre passerelle d'accès de la passerelle de communication communique avec au moins un commutateur du réseau de radiocommunications RR, à travers bien souvent un réseau d'accès tel qu'un réseau de paquets de type X.25 ou un réseau RNIS (Réseau Numérique à Intégration de Service) ou ATM (Asynchronous Transfer Mode) .
La passerelle de communication échange avec le terminal radio mobile TA à travers le réseau RR des messages qui encapsulent des paquets IP (Internet
Protocol) transmis vers et par le serveur ADS à travers le réseau RPQ.
Dans la figure 2, on a représenté le serveur de gestion de données confidentielles anonymes ADS et l'objet communicant TA sous forme de blocs fonctionnels dont la plupart assurent des fonctions ayant un lien avec l'invention et peuvent correspondre à des modules logiciels et/ou matériels. Afin de ne pas surcharger la figure 2, l'objet communicant TB n'est pas représenté.
Le serveur de gestion de données confidentielles anonymes ADS comprend un gestionnaire de données GD qui gère diverses opérations dans la base de données BD, et une interface de communication IC pour transmettre et recevoir des paquets IP à travers le réseau de paquets RPQ.
Les opérations gérées par le gestionnaire GD sont notamment l'enregistrement de données confidentielles codées d'un usager transmises par l'objet communicant de l'usager en association à une référence unique de l'usager, la recherche de données confidentielles codées dans la base BD comparativement à des données de recherche transmises par un autre objet communicant, et l'établissement d'une réponse RP contenant une ou des références relatives aux données confidentielles codées dans la base de données correspondant aux données de recherche.
L'objet communicant TA illustré à la figure 2 est un terminal radio mobile associé par ou sans contact à une carte à puce CA.
Le terminal radio mobile TA comprend une interface radio IRT, un processeur PT, une interface homme-machine IHM, des mémoires MT et un lecteur de carte LT. Les différents éléments du terminal sont reliés entre eux par un bus bidirectionnel BT.
L'interface IHM contrôle l'interaction entre le terminal TA et l'usager du terminal, et comporte un clavier associé à un afficheur et/ou un écran tactile et le cas échéant un dispositif de reconnaissance vocale.
La carte à puce CA est une carte à puce MMC (Multi-Media Card) , ou SD (Secure Digital) ou USB (Universal Sériai Bus) ou UICC (Universal Integrated Circuit (s) Card) . La carte à puce UICC est par exemple une carte munie d'une application SIM (Subscriber Identity Module) lorsque le terminal accueillant la carte est un mobile relié à un réseau du type GSM/GPRS (Global System for Mobile communications / General Packet Radio Service) , ou d'une application USIM (Universal Subscriber Identity
Module) , RUIM (Removable User Identity Module) , ISIM
(IP Subscriber Identity Module) ou EAP-SIM
(Extensible Authentication Protocol) , lorsque le terminal accueillant la carte est un mobile fonctionnant en accès multiple à répartition par codes CDMA de la troisième génération (3GPP) du type UMTS ou UTRAN, ou de la troisième génération (3GPP2) du type CDMA 2000.
La carte à puce CA comprend principalement un processeur PC, ou plusieurs processeurs, et trois blocs mémoires Ml à M3. La carte échange des commandes, ou requêtes, et des réponses avec le terminal TA à travers un port d'entrée/sortie PES et
le lecteur LT avec ou sans contact. Les différents éléments de la carte sont reliés entre eux par un bus bidirectionnel BC.
La mémoire Ml est du type ROM ou Flash et inclut le système d'exploitation de la carte.
La mémoire M2 est une mémoire non volatile par exemple EEPROM ou Flash pour notamment mémoriser des clés, des numéros d'identité et d'autres paramètres du profil de l'usager possédant la carte, comme des données personnelles, un code PIN et autres données de sécurité. La mémoire M2 comprend également la référence unique RUA de l'usager et un algorithme de codage AC. L'algorithme de codage AC a pour particularité d'effectuer un codage à sens unique sur une donnée ne permettant pas, ensuite, de retrouver la donnée par application d'un algorithme inverse. L'algorithme de codage est par exemple un algorithme de chiffrement asymétrique ou un générateur d'une représentation graphique représentant la donnée une fois codée.
La mémoire M3 est une mémoire RAM ou SRAM servant plus particulièrement au traitement de données .
La carte à puce CA comprend, en outre relativement à l'invention, une application d'enregistrement AE, une application de recherche AR et un module logiciel appelé agent (applet) de codage AgC, répartis dans les mémoires Ml et M2.
Les applications AE et AR sont relatives aux deux étapes principales distinctes du procédé de l'invention et sont activées depuis l'interface homme-machine IHM sous la commande de l'usager du terminal .
L'application d'enregistrement AE affiche sur l'interface IHM des champs pour saisir et valider des
données confidentielles par l'usager du terminal lorsque celui-ci souhaite enregistrer des données personnelles dans le serveur ADS.
L'application de recherche AR affiche sur l'interface IHM des champs pour saisir et valider des données de recherche par l'usager lorsque celui-ci souhaite obtenir une référence unique d'un autre usager d'un terminal du réseau de télécommunications qui a déjà enregistré ses données personnelles auprès du serveur ADS. L'application de recherche affiche également la ou les références uniques obtenues depuis le serveur ADS ou un résultat déduit de ces références .
Selon une variante, les deux applications AE et AR sont une même et unique application.
L'agent de codage AgC a pour principales fonctions de mémoriser dans la mémoire M2 et de coder les données saisies et validées sur l'interface homme-machine IHM afin de les transmettre sous forme codée au serveur ADS.
Le rôle de 1 ' agent de codage AgC et des deux applications est décrit plus en détail en référence aux figures 3 et 4.
Selon une variante, les mémoires MT du terminal TA comprennent les deux applications AE et AR et optionnellement l'agent de codage AgC.
Selon une autre variante, l'objet communicant d'un usager, tel que le terminal TA associé à la carte à puce CA, comprend uniquement l'une des deux applications AE et AR pour soit enregistrer des données personnelles, soit effectuer une recherche afin d'obtenir une ou des références d'autres usagers .
L'invention n'est pas limitée à un terminal radio mobile associé à une carte à puce. La carte à
puce peut être également une carte incluse dans un ordinateur portable par exemple relié à un terminal mobile ou directement connecté au réseau internet, une carte de paiement, une carte de porte-monnaie électronique, une carte de santé, un passeport électronique, ou toute autre carte additionnelle liée à un terminal mobile.
Selon d'autres variantes, l'invention s'applique à d'autres objets électroniques communicants portables, tels que des ordinateurs personnels ou des assistants numériques personnels communicants PDA.
En référence à la figure 3 et relativement aux objets communicants TA et TB des figures 1 et 2, l'étape principale d'enregistrement de données confidentielles du procédé de gestion de données confidentielles anonymes comprend des étapes El a E7. A l'étape El, l'usager du terminal radio mobile TA active l'application d'enregistrement AE au moyen de l'interface IHM. Celle-ci affiche des champs de saisie de données personnelles tels qu'un champ nom, un champ prénom, un champ date, un champ adresse, un champ numéro de téléphone et un champ profession.
L'usager saisit des données personnelles DA à l'étape E2. Optionnellement , l'usager sélectionne parmi les données personnelles saisies celles DPA qu'il souhaite enregistrer de manière anonyme et confidentielle dans le serveur ADS afin de permettre une recherche ultérieure de sa référence par un autre usager.
A la validation de l'enregistrement, après sélection d'un icône de validation par exemple sur l'interface IHM, à l'étape E3 , l'application d'enregistrement AE transfère les données saisies à l'agent de codage AgC. Celui-ci mémorise toutes les
données personnelles DA transférées dans la mémoire M2 de la carte, à l'étape E4. Puis à l'étape E5, l'agent AgC applique l'algorithme de codage à sens unique AC aux données sélectionnées DPA afin de les coder en des données personnelles codées DCA.
A l'étape E6, l'agent AgC établit un message d'enregistrement MR comprenant les données personnelles codées DCA et la référence RUA de l'usager lues dans la mémoire M2. Le message MR est transmis par 1 ' interface radio IRT du terminal TA au serveur ADS .
A la réception du message MR par l'interface de communication IC dans le serveur ADS, à l'étape E7, le gestionnaire de données GD du serveur ADS enregistre les données confidentielles codées DCA en association à la référence RUA dans la base de données BD.
Selon une variante, le message MR comprend également pour chaque donnée personnelle codée transmise la catégorie, ou un identificateur de la catégorie, du champ de saisie associé transmis en clair, tel que "nom", "prénom", "date", "adresse", "numéro de téléphone" ou "profession". Ainsi dans la base de données, chaque donnée personnelle codée est enregistrée en association à sa catégorie ou à l'identificateur de la catégorie, et l'ensemble des données DCA et de leurs catégories est enregistré en association à la référence unique RUA de l'usager.
Après l'enregistrement de données confidentielles codées de l'usager dans le serveur ADS, l'usager peut modifier certaines de ces données confidentielles et ainsi les mettre à jour dans le moyen serveur .
Pour mettre à jour des données confidentielles de l'usager, l'application d'enregistrement AE affiche optionnellement toutes les données confidentielles mémorisées dans la mémoire M2 au moyen de l'interface IHM du terminal. L'usager modifie une ou plusieurs données confidentielles dont certaines ont été sélectionnées préalablement ou sont nouvellement sélectionnées par l'usager pour être enregistrées de manière anonyme dans la base de données BD du serveur ADS. A la validation de la mise à jour, après sélection d'un icône de validation par exemple sur l'interface IHM, l'application AE transfert les données modifiées à l'agent de codage. Celui-ci les met à jour dans la mémoire M2 par écrasement des données initiales correspondantes, et code les données modifiées sélectionnées. Puis l'agent de codage transmet un message contenant les données confidentielles modifiées codées, les données confidentielles initiales codées et la référence de l'usager au serveur ADS.
A la réception du message, le gestionnaire de données GD du serveur ADS supprime dans la base de données BD les données confidentielles codées qui sont associées à la référence de l'usager extraite du message et qui sont identiques aux données confidentielles initiales codées également extraites du message. Le gestionnaire GD enregistre, dans la base de données BD, les données confidentielles modifiées codées extraites du message transmis, en association à la référence de l'usager.
En se référant maintenant à la figure 4 et relativement aux objets communicants TA et TB des figures 1 et 2, l'étape principale de recherche de données confidentielles du procédé de gestion de
données confidentielles anonymes comprend des étapes Rl à R8.
A l'étape Rl, l'usager de l'ordinateur personnel TB souhaitant obtenir la référence RUA de l'usager du terminal TA active l'application de recherche AR au moyen de l'interface IHM. Celle-ci affiche des champs de recherche de données confidentielles tels qu'un champ nom, un champ prénom, un champ date, un champ adresse, un champ numéro de téléphone et un champ profession.
A l'étape R2 , l'usager de l'ordinateur TB saisit dans le ou les champs de recherche au moins une donnée de recherche DR ou bien souvent des données de recherche DR caractérisant l'usager du terminal TA avec lequel l'usager de l'ordinateur TB souhaite être mis en relation, par exemple.
A la validation de la recherche, après la sélection d'un icône de validation par exemple sur l'interface IHM, à l'étape R3 , l'application de recherche AR transfère la ou les données de recherche DR saisie à l'agent de codage AgC de l'ordinateur TB. A l'étape R4 , l'agent applique l'algorithme de codage à sens unique AC, identique à celui utilisé par 1 ' agent de codage du terminal TA, à la donnée de recherche DR afin de la coder en une donnée de recherche codée DRC. Les données DR sont ainsi codées de manière similaire aux données personnelles enregistrées sous forme codées dans la base de données BD. A l'étape R5 , l'agent AgC de l'ordinateur TB établit une requête RQ comprenant les données de recherche codée DRC. La requête RQ est transmise au serveur ADS par une interface de communication de l'ordinateur TB au serveur ADS.
A la réception de la requête RQ par 1 ' interface de communication IC dans le serveur ADS, à l'étape R6 , le gestionnaire de données GD du serveur ADS compare les données confidentielles codées DCn associées à chaque référence RUn aux données de recherche codées transmises DRC extraites de la requête RQ. Si une ou plusieurs données confidentielles sont identiques respectivement à une ou plusieurs données de recherche codées DRC, alors la référence associée aux données confidentielles codées est copiée dans une réponse RP établie par le gestionnaire GD.
Le gestionnaire GD effectue la même opération pour chaque référence enregistrée dans la base de données BD, les données de recherche codées DRC extraites de la requête RQ pouvant être identiques à certaines données confidentielles codées associées à deux ou plus références différentes RUl à RUN.
Dès que toutes les données confidentielles associées à toutes les références dans la base de données ont été comparées, la réponse RP incluant une ou plusieurs références RUn associées à des données confidentielles identiques aux données de recherche codées DRC est transmise à l'ordinateur TB. A l'étape R7 , la réponse RP est traitée par 1 ' agent de codage AgC de 1 ' ordinateur TB qui commande à l'application de recherche AR d'afficher les références transmises RUn au moyen de 1 ' interface homme-machine IHM, à l'étape R8.
En variante, la requête RQ comprend également pour chaque donnée de recherche codée transmise la catégorie, ou un identificateur de la catégorie, du champ de recherche associé, transmis en clair, tel que "nom", "prénom", "date", "adresse", "numéro de
téléphone" ou "profession". Ainsi le gestionnaire de données GD du serveur ADS compare les données confidentielles codées DCn associées à chaque référence RUn et les catégories associées à ces données respectivement aux données de recherche codées DRC et aux catégories associées transmises extraites de la requête RQ. Ceci permet d'établir une réponse contenant les références correspondant aux données confidentielles codées qui sont identiques aux données de recherche codées et dont les catégories associées sont identiques aux catégories associées auxdites données de recherche codées.
Selon une deuxième variante, le gestionnaire de données GD inclut dans la réponse RP une ou plusieurs références RUn en association aux données de recherche codées identiques aux données confidentielles codées associées auxdites références dans la base de données BD. A la réception de la réponse RP dans l'ordinateur TB, l'application de recherche AR de l'ordinateur TB affiche au moyen de 1 ' interface homme-machine IHM les références transmises RUn conjointement aux données de recherche correspondantes saisies par l'usager à l'étape Rl et relatives aux données de recherche codées extraites de la réponse RP.
Selon une troisième variante, pour chaque donnée confidentielle codée correspondant à une donnée de recherche codée, la catégorie associée à la donnée confidentielle est incluse dans la réponse RP en association à la référence relative à ladite donnée confidentielle. La réponse RP comprend donc une ou plusieurs références associées à des catégories de
données confidentielles codées correspondant aux données de recherche codées .
Les catégories transmises sont affichées sur l'interface IHM conjointement aux références auxquelles elles sont associées.
Selon un exemple d'utilisation relatif à la variante précédente, l'usager de l'ordinateur TB souhaite être mis en relation avec l'usager du terminal TA. L'usager de l'ordinateur TB active l'application de recherche AR au moyen de l'interface IHM, et saisit dans le champ de recherche "nom", le nom de l'usager du terminal TA en tant que donnée de recherche. L'agent AgC de l'ordinateur TB code la donnée de recherche et la transmet dans une requête RQ au serveur ADS .
A la réception de la requête, le serveur ADS effectue une recherche dans la base de données BD comme décrite à l'étape R6 , et obtient deux données confidentielles identiques correspondant à la donnée de recherche transmise. Les catégories et les références associées aux deux données confidentielles obtenues sont respectivement différentes. La première donnée confidentielle associée à une première référence correspond à un prénom tandis que la deuxième donnée confidentielle associée à une deuxième référence correspond à un nom. Le serveur ADS transmet une réponse RP incluant les deux références et les deux catégories respectivement associées, a l'ordinateur TB.
A l'étape R8 , chaque catégorie est affichée sur l'interface IHM conjointement à la référence à laquelle elle est associée, indiquant par exemple qu'une première référence est relative à un prénom et que la deuxième référence est relative à un nom.
A la lecture des catégories transmises et affichées, l'usager sélectionne la deuxième référence relative à la catégorie "nom" et caractérisant davantage l'usager du terminal TA afin, par exemple, de communiquer avec ce dernier à l'aide de la référence sélectionnée.
Afin d'éviter des collisions relatives au codage séparé de deux données personnelles distinctes en une même donnée codée, l'algorithme de codage à sens unique AC peut comprendre deux fonctions de codage différentes. A chaque donnée personnelle saisie à coder est appliquée chacune des deux fonctions afin d'obtenir à partir d'une même donnée personnelle deux données codées distinctes concaténées en un couple enregistré en association à la même catégorie dans la base de données BD. Lors de la recherche d'une référence d'un usager, la donnée de recherche saisie est également codée afin d'obtenir deux données de recherche distinctes concaténées à comparer à tous les couples de données confidentielles codées concaténées enregistrés dans la base de données.
Selon une autre variante, lors de l'enregistrement, chaque donnée personnelle saisie au moyen de l'interface IHM et transmise à l'agent de codage dans le terminal TA est déclinée par l'agent en une ou plus généralement plusieurs déclinaisons qui peuvent être des parties de la donnée personnelle saisie et/ou des données sensiblement similaires à la donnée personnelle saisie ou à des parties de celle- ci, par exemple distinctes par leur orthographe et/ou prononciation. Ces données personnelles et leurs déclinaisons sont codées par l'agent de codage et
transmises avec leurs références associées au serveur ADS qui les enregistre.
Lors de la recherche d'une référence, chaque donnée de recherche saisie au moyen de 1 ' interface IHM et transmise à l'agent de codage est déclinée par l'agent en une ou plus généralement plusieurs déclinaisons de la donnée de recherche saisie. Ces données de recherche et leurs déclinaisons sont codées par l'agent de codage et transmises au serveur ADS qui les compare aux données confidentielles codées et leurs déclinaisons codées enregistrées dans la base de données BD.
Les références des données confidentielles codées et/ou de leurs déclinaisons codées correspondant aux données de recherche codées et/ou à leurs déclinaisons codées sont transmises au terminal requérant une recherche, et sont affichées par ordre de similarité des déclinaisons de la donnée de recherche saisie avec la donnée de recherche.
L'invention décrite ici concerne un procédé de gestion de données confidentielles. Selon une implémentation, les étapes du procédé de 1 ' invention sont déterminées par les instructions d'un programme d'ordinateur incorporé dans un moyen serveur ADS communiquant avec des objets communicants TA, TB à travers un réseau de télécommunications RR-RPQ pour gérer des données confidentielles d'usagers des objets communicants. Le programme comporte des instructions de programme qui, lorsque ledit programme est exécuté dans un processeur du moyen serveur, réalisent les étapes du procédé selon l'invention. Le programme peut être également exécuté en partie dans les objets communicants TA, TB.
En conséquence, l'invention s'applique également à un programme d'ordinateur, notamment un programme d'ordinateur enregistré sur ou dans un support d'informations lisible par un ordinateur et tout dispositif de traitements de données, adapté à mettre en œuvre l'invention. Ce programme peut utiliser n'importe quel langage de programmation, et être sous la forme de code source, code objet, ou de code intermédiaire entre code source et code objet tel que dans une forme partiellement compilée, ou dans n'importe quelle autre forme souhaitable pour implémenter le procédé selon l'invention.