Brevet FR3090154A1 — publié le 20200619

Description Titre de l'invention : SÉCURISATION DES DONNÉES AU REPOS EN UTILISANT LA TRANSPORTABILITÉ DES DONNÉES CHIFFRÉES AGNOSTIQUES DE SERVICE DE FOURNISSEUR DE RÉSEAU DE SERVEURS INFORMATIQUE Domaine technique de l'invention [0001] La présente invention concerne le domaine de la sécurité des données et plus particu- lièrement la sécurisation des données au repos dans un système d'exécution de données. Arrière-plan technique [0002] Dans le domaine du traitement des données, les données au repos désignent les données inactives stockées physiquement sous toute forme numérique, y compris dans une base de données, un entrepôt dc données, un document, y compris une feuille de calcul ou des archives numériques ou toute autre mémoire persistante, y compris celles trouvées à l'intérieur d'un appareil mobile. Les données au repos peuvent être comparées aux données utilisées et aux données en transit, définissant ainsi trois états compris de données numériques. Tout comme les données en transit et les données utilisées, les données au repos doivent également être protégées d'une consultation par des entités non autorisées. À cette fin, le chiffrement des données est couramment utilisé pour protéger les données au repos. Les techniques générales de chiffrement utilisées pour les données au repos comprennent des méthodes de chiffrement fortes telles que le standard de chiffrement avancé (AES) ou le Rivest-Shamir-Adlernan (RSA) et garantissent que les données chiffrées restent chiffrées lorsque les contrôles d'accès comme les noms d'utilisateur et les mots de passe échouent. Généralement, la cryptographie est implémentée sur la base de données hébergeant les données et sur le stockage physique où les bases de données sont stockées avec des dés de chiffrement des données mises à jour régulièrement tout en étant stockées séparément des données. [0003] Le chiffrement général des données au repos n'est pas sans difficultés. A cet égard, le chiffrement des données au repos offre peu de protection contre les intrusions dans lesquelles un acteur malveillant obtient un accès privilégié à distance à un serveur en fonctionnement sur lequel la phrase de passe a déjà été saisie. De plus, si les applications qui accèdent aux fichiers ou aux bases de données chiffrées ne sont pas elles-mêmes sécurisées, un acteur malveillant pénétrant l'une des applications peut alors avoir accès aux données, qu'elles soient chiffrées ou non. De plus, lorsque le chiffrement complet du disque est autorisé sur un serveur physique, une intervention 2 humaine est nécessaire pour saisir manuellement une phrase de passe clans une console au moment du démarrage. Pour le chiffrement au niveau de la base de données, la phrase de passe doit être entrée au moment du démarrage de la base de données Ainsi, la sécurité des données au repos exige plus qu'un simple chiffrement sur place. Résumé de l'invention [0004] Les modes de réalisation de la présente invention comblent les lacunes de l'état de l'art concernant la sécurisation des données au repos et fournissent un procédé, un système et un produit de programme informatique pour la persistance des données au repos sous forme chiffrée, nouveaux et non-évidents. La sécurisation des données au repos conformément à un mode de réalisation implique une configuration initiale d'une clé de chiffrement dc dé chiffrée pour une instance spécifique d'un programme informatique hébergé dans le réseau dc serveurs informatique, suivie d'un chiffrement des données venant au repos et ensuite un déchiffrement des données chiffrées lors du rappel des données. Ainsi, dans un mode de réalisation, au cours d'une configuration initiale, une clé maîtresse client (CM K) pour une instance correspondante d'un programme informatique s'exécutant à distance sur un réseau de communication informatique, est reçue dans une mémoire d'un ordinateur à partir du réseau de communication informatique par un procédé de chiffrement. En réponse, le procédé de chiffrement transmet la CMK sur le réseau dc communication informatique à un service dc gestion de clé (KMS) distinct du procédé de chiffrement, comme partie d'une demande pour une clé de chiffrement de clé (KEK). En retour, le procédé de chiffrement reçoit du KMS à la fois la KEK demandée et une forme chiffrée de la KEK (EKEK). Enfin, le procédé de chiffrement stocke la EKEK dans une base de données pour l'instance du programme informatique. [0005] Par la suite, le procédé de chiffrement reçoit dc l'instance du programme in- formatique, des données non chiffrées à stocker dans une base dc données pour l'instance du programme informatique. En réponse à la réception des données, le procédé de chiffrement génère une clé de données (DK) à l'aide d'une clé générée aléatoirement, chiffre la DK avec la KEK, chiffre les données reçues avec la DK, crée une enveloppe de données chiffrée avec la DK chiffrée et les données chiffrées, et retourne à l'instance du programme informatique, seulement l'enveloppe de données chiffrée sans retourner la DK. De même, sur réception de l'instance du programme informatique dans le procédé de chiffrement, d'une demande de déchiffrement concernant l'enveloppe de données chiffrées, le procédé de chiffrement divise l'enveloppe de données chiffrée dans la DK chiffrées et les données chiffrées, récupère la KEK de la base de données pour l'instance du programme informatique, déchiffre la DK chiffrée avec la KEK récupérée pour produire la DK, déchiffre les données 3 chiffrées avec la DK pour produire les données non chiffrées et retourne à l'instance du programme informatique, les données non chiffrées [0006] En option, la base de données peut être transportable en nature. À cette fin, le procédé de chiffrement peut générer une sauvegarde transportable de la base de données par une réception à partir d'un demandeur d'une sauvegarde transportable, d'une forme chiffrée d'une clé maîtresse de base de données (DBMK). Le procédé de chiffrement peut alors demander au KMS de déchiffrer la forme chiffrée de la DBMK afin de recevoir en retour, la DBMK. Par la suite, le procédé de chiffrement chiffre ultérieurement la KEK avec la DBMK (par opposition à la CMK), stocke la KEK chiffrée DBMK dans la base de données, et retourne au demandeur une indication de succès, de sorte que le demandeur peut ensuite créer une sauvegarde de la base de données comprenant la KEK chiffrée DBMK. De même, la sauvegarde transportable peut être restaurée par une réception à partir d'une forme restaurée de la base de données de la KEK chiffrée DBMK, un déchiffrement de la KEK chiffrée DBMK avec la DBMK pour produire la KEK, une transmission sur le réseau de communication informatique à la KMS de la CMK comme partie d'une demande pour une KEK et une réception en réponse, à la fois de la KEK et de la forme chiffrée de CMK de la KEK. Enfin, le procédé de chiffrement stocke la KEK chiffrée CMK dans la base de données, et supprime le DBMK de la mémoire. [0007] D'autres aspects de l'invention seront exposés en partie dans la description qui suit et en partie seront évidents dans la description, ou pourront être appris par la pratique de l'invention. Les aspects de l'invention seront réalisés et atteints au moyen des éléments et combinaisons particulièrement indiqués dans les revendications en annexe. Il est entendu que la description générale qui précède et la description détaillée qui suit sont toutes deux exemplaires et explicatives et ne sont pas restrictives à l'égard de l'invention, telle que revendiquée. Brève description des figures [0008] Les dessins qui accompagnent, qui sont incorporés dans la présente description et en font partie intégrante, illustrent des modes de réalisations de l'invention et servent, avec la description, à expliquer les principes de l'invention. Les modes de réalisations illustrées ici sont actuellement préférées, étant entendu, toutefois, que l'invention ne se limite pas aux configurations précises et aux instruments montrés, dans lesquels : [0009] [fig.1] La figure 1 illustre un procédé de sécurisation des données au repos sur un serveur hébergé dans un réseau de serveurs informatique ; [0010] [fig.2] La Figure 2 est une illustration schématique d'un système de traitement de données configuré pour sécuriser les données au repos sur un serveur hébergé dans un réseau de serveurs informatique ; 100111 Ifig.3A1 La figure 3A est un organigramme illustrant un procédé de génération d'une KEK chiffrée pour une nouvelle instance d'un programme informatique ; [0012] [fig.313] La figure 3B est un organigramme illustrant un procédé de chiffrement des données à l'aide de la KEK de la figure 3A ; [0013] [fig.3C] La figure 3C est un organigramme illustrant un procédé de déchiffrement des données à l'aide de la KEK de la figure 3A ; [0014] [fig.4A] La Figure 4A est un organigramme illustrant un procédé de génération d'une sauvegarde transportable avec la KEK de la Figure 3A ; [0015] [fig.413] La figure 4B est un organigramme illustrant un procédé de restauration de la sauvegarde transportable avec la KEK de la figure 3A ; et, [0016] [fig.5] La figure 5 est un organigramme illustrant un procédé de validation d'une KEK enveloppée. Description détaillée de l'invention [0017] Les modes de réalisations de l'invention permettent de sécuriser des données au repos sur un serveur hébergé dans un réseau de serveurs informatique. Conformément à un mode de réalisation de l'invention, pour chaque instance hébergé dans le réseau de serveurs informatique d'un programme informatique, une KEK est créée par un KMS utilisant une clé maîtresse client unique correspondant à l'instance ; mais, seule une forme chiffrée de la KEK est persistée dans une base de données pour l'instance correspondante alors que la KEK non chiffrée est retenue en mémoire uniquement pour le procédé de chiffrement. Par la suite, en réponse à une demande de persistance de données par une instance correspondante du programme informatique, une DK est générée aléatoirement et chiffrée avec la KEK dans une mémoire pour l'instance correspondante. Les données elles-mêmes sont également chiffrées avec la DK et une enveloppe avec la DK chiffrée et les données chiffrées retournées au demandeur. Inversement, lors du déchiffrement, une enveloppe de données est reçue avec des données chiffrées et une DK chiffrée. La KEK en mémoire pour l'instance correspondante est ensuite utilisée pour déchiffrer la DK qui est ensuite utilisée pour déchiffrer les données en vue de leur retour dans l'instance du programme informatique. [0018] En illustration supplémentaire, la figure 1 illustre un procédé de sécurisation de données au repos sur un serveur hébergé dans un réseau de serveurs informatique. Comme le montre la Figure 1, différentes instances 130 d'un programme informatique s'exécutent dans un environnement de réseau de serveurs informatique hébergé 110. Chacune des instances 130 interagit avec une ou plusieurs bases de données correspondantes 180 (une seule base de données montrée pour faciliter l'illustration). Un procédé de chiffrement 100 gère la persistance des données d'une instance correspondante parmi les instances 130 vers la base de données 180 et la récupération des données de la base de données 180. A cet effet, lors de l'instanciation de l'instance correspondante parmi les instances 130, une CMK 120 pour l'instance correspondante parmi les instances 130 est reçue. Le procédé de chiffrement 100 communique ensuite avec un KMS 140 pour générer une KEK 160 qui est ensuite chiffrée avec la CMK 120 pour produire une KEK chiffrée CMK 170. Le procédé de chiffrement 100 stocke ensuite la KEK chiffrée CMK 170 dans la base de données 180, tout en maintenant la KEK 160 en mémoire. Cependant, comme il faut le reconnaître, à tout moment par la suite, la KEK 160 peut être récupérée avec la base de données 180 fournissant la KEK chiffrée CMK 170 et la CMK 120 afin de déchiffrer la KEK chiffrée CMK 170 dans la KEK 160. [0019] En tout état de cause, une fois que la KEK chiffrée CMK 170 est stockée dans la base de données 180, une demande de persistance des données peut être reçue dans le procédé de chiffrement 100 par rapport à la base de données 180. Dans ce cas, comme les données sont fournies par l'instance correspondante parmi les instances 130 pour la persistance dans la base de données 180, le procédé de chiffrement 100 chiffre les données avec une DK 150 générée aléatoirement fournie par le KMS 140. De plus, le procédé de chiffrement 100 chiffre la DK 150 générée aléatoirement avec la KEK 160 pour produire une DK 165 chiffrée. Enfin, le procédé de chiffrement 100 enveloppe à la fois la DK 165 chiffrée et les données chiffrées 155 dans une enveloppe 190 et retourne l'enveloppe 190 à la base de données 180 pour stockage dans celle-ci. Inversement, lorsqu'une demande de récupération de données est reçue dans le procédé de chiffrement 100, une enveloppe 190 associée à la demande est reçue et à la fois la DK chiffrée KEK 165 et les données chiffrées de DK 155 sont récupérées de l'enveloppe 190. La KEK 160 accessible par le procédé de chiffrement 100 déchiffre ensuite la KEK chiffrée de DK 165 de manière à produire la DK 150 qui peut ensuite être utilisée pour déchiffrer les données chiffrées de DK 155. Enfin, les données déchiffrées peuvent être fournies au demandeur. [0020] Le procédé décrit à la figure 1 peut être mis en oeuvre dans un système de traitement des données. La figure 2 montre schématiquement un système de traitement de données configuré pour sécuriser les données au repos sur un serveur hébergé dans un réseau de serveurs informatique. Le système comprend une platefonne informatique hôte 220 qui comprend un ou plusieurs ordinateurs, chacun avec mémoire et au moins un processeur. La platetbrme informatique hôte 220 prend en charge l'exécution de plusieurs instances différentes 240A, 240B d'un programme informatique 240, chacune des instances 240A, 240B accédant aux données dans une base de données correspondante 260A, 260B depuis un réseau de communication informatique 210. La plateforme informatique hôte 220 prend également en charge le fonctionnement d'un procédé de chiffrement 300. 6 [0021] A cet égard, le procédé de chiffrement 300 comprend des instructions de programme informatique qui, lorsqu'elles sont exécutées par un ou plusieurs processeurs de la plateforme informatique hôte, peuvent être utilisées pour exécuter le chiffrement des données au repos dans les bases de données 260A, 260B, et également le déchiffrement des données au repos dans les bases de données 260A, 260B. Plus précisément, au cours de la persistance de données dans l'une des bases de données 260A, 260B pour le compte d'une instance correspondante parmi les instances 240A, 240B, les instructions du programme chiffrent les données avec une clé de déchiffrement générée aléatoirement par le service de gestion des clé 230 et fournie au procédé de chiffrement 300 à partir du réseau de communication informatique 210. Les instructions du programme chiffrent en outre la clé de déchiffrement avec une KEK située dans une table KEK 250 et correspondant à l'instance correspondante parmi les instances 240A, 240B. Enfin, les données chiffrées 280 et la DK chiffrée KEK 290 sont emballées dans une enveloppe 270 et stockées dans l'une des bases de données 260A, 260B. [0022] Inversement, les instructions du programme au cours de la récupération des données au repos dans l'une des bases de données 260A, 260B pour le compte d'une instance correspondante parmi les instances 240A, 240B, reçoit une enveloppe 270 de celle des bases de données 260A, 260B et des extraits de celle-ci, à la fois les données chiffrées DK 280 et la DK chiffrées de KEK. Par la suite, la KEK pour l'instance correspondante parmi les instances 240A, 240B est déterminée à partir de la table KEK 250 et utilisée pour déchiffrer la DK 290 chiffrée. En utilisant la DK déchiffrée, les instructions du programme déchiffrent ensuite les données chiffrées DK 280 de manière à produire des données non chiffrées. Enfin, les instructions de programme retournent les données non chiffrées à l'instance correspondante parmi les instances 240A, 240B. [0023] Pour illustrer encore davantage le fonctionnement du procédé de chiffrement 300, la figure 3A est un organigramme illustrant un procédé de génération d'une KEK chiffrée pour une nouvelle instance de programme informatique. A partir du bloc 305, une CMK est reçue pour une nouvelle instance d'un programme informatique hébergé dans un hôte en réseau de serveurs informatique, ce qui est unique par rapport à toutes les autres instances du même programme informatique exécutant dans l'hôte en réseau de serveurs informatique. Dans le bloc 310, une base de données correspondante est vérifiée pour une KEK chiffrée associée à la nouvelle instance. Dans le bloc 315, si une KEK chiffrée est trouvée pour la nouvelle instance, le procédé se termine dans le bloc 320. Sinon, dans le bloc 325, une nouvelle KEK est demandée à la KMS et dans le bloc 330, la KMS retourne à la fois la KEK demandée et la KEK chiffrée avec la CMK fournie à la KMS pour le compte de la nouvelle instance. Ensuite, dans le bloc 335. la KEK est conservée en mémoire du procédé de chiffrement, tandis qu'une forme 7 chiffrée de la KEK est persistée dans la base de données correspondante. [0024] En se référant maintenant à la figure 3B, un organigramme est fourni et illustre un procédé de chiffrement des données à l'aide de la KEK de la figure 3A. A partir du bloc 345, une demande de stockage est reçue et dans le bloc 350, une KEK est récupérée pour l'instance du programme informatique associé à la demande. Dans le bloc 355, une DK est générée aléatoirement par le KMS et dans le bloc 360, la DK est chiffrée avec la KEK tandis que dans le bloc 365, la DK est utilisée pour chiffrer les données de la demande. Ensuite, dans le bloc 370, une enveloppe est créée pour inclure à la fois les données DK chiffrées de KEK et les données chiffrées de DK. De plus, l'enveloppe peut comprendre un code d'authentification de message de hachage (HMAC) et un identificateur d'une KEK associée. Enfin, dans le bloc 375, l'enveloppe est retournée à la base de données pour y être stockée, de sorte que pendant que les données sont au repos dans la base de données, les données et la clé nécessaire à leur déchiffrement restent chiffrées et donc sécurisées. [0025] En se référant maintenant à la figure 3C, un organigramme est fourni et illustre un procédé de déchiffrement des données à l'aide de la KEK de la figure 3A. En commençant par le bloc 380, une demande de récupération est reçue pour une enveloppe stockée dans une base de données correspondante. Dans le bloc 385, une KEK est déterminée pour une instance du programme informatique correspondant à la base de données, par exemple en référence à l'identifiant KEK inclus comme partie de l'enveloppe. Optionnellement, l'enveloppe peut alors être validée. Par la suite, dans le bloc 390, l'enveloppe est divisée en deux parties : la DK chiffrée KEK et les données chiffrées. Dans le bloc 395, la DK est déchiffrée à l'aide de la KEK, tandis que dans le bloc 400, les données sont ensuite déchiffrées à l'aide de la DK déchiffrée Enfin, dans le bloc 405, les données déchiffrées sont retournées à l'instance du programme informatique correspondant à la base de données. [0026] Notamment, chacune des bases de données correspondant à l'une des instances du programme informatique s'exécutant dans l'hôte en réseau de serveurs informatique peut être chiffrée pour le transport et restaurée ultérieurement. Dans une illustration encore plus détaillée, la figure 4A est un organigramme illustrant un procédé de génération d'une sauvegarde transportable à l'aide de la KEK de la figure 3A. A partir du bloc 410, une demande de sauvegarde de base de données peut être reçue en liaison avec une clé maîtresse de base de données chiffrée pour une base de données associée à une instance correspondante parmi les instances du programme informatique s'exécutant dans l'hôte en réseau de serveurs informatique. Dans le bloc 415, une CMK pour l'instance correspondante parmi les instances est déterminée et dans le bloc 420, la clé maîtresse de base de données chiffrée est déchiffrée avec la CMK. Par la suite, dans le bloc 425, la KEK de l'instance correspondante du programme informatique est 8 chiffrée avec la clé maîtresse de base de données maintenant déchiffrée. Enfin, dans le bloc 430, la KEK chiffrée de clé maîtresse de base de données est stockée dans la base de données. [0027] En se référant maintenant à la Figure 4B, un procédé de restauration de la sauvegarde transportée de la base de données est illustré. A partir du bloc 435, une demande de restauration de base de données est reçue en liaison avec une base de données correspondant à l'une des instances du programme informatique hébergé dans l'hôte en réseau de serveurs informatique. La demande peut inclure une DBMK ou une référence réseau à un emplacement à partir duquel la DBMK peut être récupérée. Dans le bloc 440, une clé KEK chiffrée DBMK est récupérée de la base de données et déchiffrée avec la clé DBMK fournie en association avec la demande. Ensuite, dans le bloc 445, la KEK chiffrée DBMK est déchiffrée avec la DBMK pour produire la KEK. Dans le bloc 450, la KEK est à son tour chiffrée avec une CMK pour l'instance correspondante parmi les instances du programme informatique. Enfin, dans le bloc 455, la KEK chiffrée CMK est stockée dans la base de données. [0028] Comme nous l'avons mentionné, l'intégrité de l'enveloppe peut être assurée par l'utilisation d'une valeur HMAC disposée dans l'enveloppe. La figure 5 est un organigramme illustrant un procédé de validation d'une KEK enveloppée. A partir du bloc 510, une KEK est récupérée pour une instance du programme informatique pendant le procédé de chiffrement et dans le bloc 520, la KEK est chiffrée avec la CMK de l'instance. Ensuite, dans le bloc 530, un premier HMAC est créé avec la KEK et la CMK et dans le bloc 540, la KEK chiffrée CMK et le HMAC sont stockés dans l'enveloppe. Dans le bloc 550, après un laps de temps au cours d'un procédé de déchiffrement, l'enveloppe est reçue dans le bloc 560 et dans le bloc 570, la KEK chiffi-ée est déchiffrée en utilisant la CMK de l'instance. Dans le bloc 580, un nouveau HMAC est généré avec la KEK nouvellement déchiffrée et la CMK. Dans le bloc de décision 590, si les deux HMAC sont équivalents, l'enveloppe est considérée comme valable dans le bloc 600A. Dans le cas contraire, l'enveloppe est considérée comme non valable dans le bloc 600B. [0029] La présente invention peut être incorporée dans un système, un procédé, un produit de programme informatique ou toutes combinaisons de ceux-ci. Le produit de programme informatique peut comprendre un support de stockage lisible par ordinateur ou un support sur lequel se trouvent des instructions de programme lisibles par ordinateur pour amener un processeur à exécuter des aspects de la présente invention. Le support de stockage lisible pat- ordinateur peut être un dispositif tangible qui peut conserver et stocker des instructions à utiliser par un dispositif d'exécution d'instructions. Le support de stockage lisible pat- ordinateur peut être, par exemple, un dispositif de stockage électronique, un dispositif de stockage magnétique, un dispositif 9 de stockage optique, un dispositif de stockage électromagnétique, un dispositif de stockage semi-conducteur ou toutes combinaisons appropriées de ce qui précède, sans toutefois s'y limiter. [0030] Les instructions de programme lisibles par ordinateur décrites ici peuvent être télé- chargées à partir d'un support de stockage lisible par ordinateur ou sur un ordinateur externe ou un périphérique de stockage externe via un réseau, sur des dispositifs de calcul/traitement respectifs. Les instructions de programme lisibles par ordinateur peuvent être exécutées entièrement sur l'ordinateur de l'utilisateur, en partie sur l'ordinateur de l'utilisateur, en tant que progiciel autonome, en partie sur l'ordinateur de l'utilisateur et en partie sur un ordinateur distant ou entièrement sur l'ordinateur ou le serveur distant. Certains aspects de la présente invention sont décrits ici à l'aide d'illustrations d'organigrammes et/ou de schémas fonctionnels de procédé, d'appareils (systèmes) et de produits de programmes informatiques en fonction de modes de réalisations de l'invention. Il est entendu que chaque bloc des illustrations de l'organigramme et/ou des schémas fonctionnels, ainsi que les combinaisons de blocs dans les illustrations d'organigrammes et/ou les schémas fonctionnels, peuvent être réalisés au moyen d'instructions de programme lisibles par ordinateur. [0031] Ces instructions de programme lisibles par ordinateur peuvent être fournies à un processeur d'un ordinateur à usage général, d'un ordinateur à usage spécifique ou d'un autre appareil de traitement de données programmable pour produire une machine, de sorte que les instructions, qui sont exécutées par l'intermédiaire du processeur de l'ordinateur ou d'un autre appareil de traitement de données programmable, créent des moyens pour exécuter les fonctions/actions spécifiées dans le ou les blocs de l'organigramme et/ou des schémas fonctionnels. Ces instructions de programme lisibles par ordinateur peuvent également être stockées dans un support de stockage lisible pal- ordinateur qui peut diriger un ordinateur, un appareil de traitement de données programmable et/ou d'autres dispositifs pour fonctionner d'une manière particulière, de sorte que le support de stockage lisible par ordinateur dans lequel sont stockées des instructions comprend un article de fabrication comprenant des instructions qui exécutent des aspects des fonctions/actions spécifiées dans le ou les blocs de l'organigramme et/ou des schémas fonctionnels. [0032] Les instructions de programme lisibles par ordinateur peuvent également être chargées sur un ordinateur, un autre appareil de traitement de données programmable ou un autre dispositif pour provoquer l'exécution d'une série d'étapes opérationnelles sur l'ordinateur, un autre appareil programmable ou un autre dispositif pour produire un procédé exécuté par ordinateur, de sorte que les instructions qui s'exécutent sur l'ordinateur, un autre appareil programmable ou un autre dispositif mettent en oeuvre les fonctions/actions spécifiées dans le ou les blocs de l'organigramme et/ou des schémas fonctionnels. [0033] L'organigramme et les schémas fonctionnels présentés dans les figures illustrent l'architecture, la fonctionnalité et le fonctionnement d'implémentations possibles de systèmes, de procédés et de produits de programmes informatiques selon divers modes de réalisations de la présente invention. À cet égard, chaque bloc de l'organigramme ou des schémas fonctionnels peut représenter un module, un segment ou une partie d'instructions, qui comprend une ou plusieurs instructions exécutables pour mettre en oeuvre la ou les fonctions logiques spécifiées. Dans certaines implémentations alternatives, les fonctions notées dans le bloc peuvent se produire en dehors de l'ordre indiqué dans les figures. Par exemple, deux blocs montrés successivement peuvent, en fait, être exécutés sensiblement simultanément, ou les blocs peuvent parfois être exécutés dans l'ordre inverse, en fonction de la fonctionnalité impliquée. Il convient également de noter que chaque bloc des illustrations d'organigrammes et/ou des schémas fonctionnels, et les combinaisons de blocs dans les illustrations d'organigrammes et/ou des schémas fonctionnels, peuvent être mis en oeuvre par des systèmes matériels spéciaux qui exécutent les fonctions ou les actes spécifiés ou exécutent des combinaisons de matériel spécial et d'instructions informatiques. [0034] Enfin, la terminologie utilisée dans le présent document ne vise qu'à décrire des modes de réalisations particulières et ne vise pas à limiter l'invention. Dans le présent document, les formes singulières "un", "le" et "la" s'entendent également du pluriel, à moins que le contexte n'indique clairement le contraire. Il sera en outre entendu que les termes "comprend" et/ou "y compris", lorsqu'ils sont utilisés dans la présente spécification, précisent la présence de caractéristiques, d'entiers, d'étapes, d'opérations, d'éléments et/ou de composants indiqués, mais n'excluent pas la présence ou l'ajout d'une ou plusieurs autres caractéristiques, entiers, étapes, opérations, éléments, composants et/ou groupes de ceux-ci. [0035] Les structures, matériaux, actes et équivalents correspondants de tous les moyens ou éléments de l'étape et de la fonction dans les revendications ci-dessous sont destinés à inclure toute structure, tout matériau ou tout acte pour effectuer la fonction en combinaison avec d'autres éléments revendiqués comme revendiqué spécifiquement. La description de la présente invention a été présentée à des fins d'illustration et de description, mais ne se veut pas exhaustive ou limitée à l'invention sous la forme divulguée. De nombreuses modifications et variations seront apparentes aux hommes du métier sans s'écarter de la portée et de l'esprit de l'invention. Le mode de réalisation a été choisi et décrit afin d'expliquer au mieux les principes de l'invention et son application pratique, et de permettre à d'autres hommes du métier de comprendre l'invention pour diverses modes de réalisations avec diverses modifications adaptées à l'usage particulier envisagé. 11 [0036] Après avoir ainsi décrit l'invention de la présente demande en détail et par référence à ses réalisations, il apparaîtra que des modifications et des variations sont possibles sans s'écarter de la portée de l'invention définie dans les revendications ci-jointes comme suit : 12 [Revendication I]