Spécification des fonctionnalités pour des communications de groupes sécurisés

Télécharger le fichier pdf d’un mémoire de fin d’études

Eléments d’un système de communication de groupes

Dans une application de groupes où la communication entre ses membres prend un rôle important, nous pouvons observer qu’il existe communément deux types d’information à échanger [LIV 2.5] : 1). L’information concernant l’application et 2). L’information concernant le bon déroulement de cette communication. Puisque les messages à échanger par l’application, dits « messages de données », doivent être sécurisés, nous avons besoin des éléments, dits « éléments secrets », qui serviront de base pour sécuriser cette information. Et puisque ces éléments risquent d’être changés, afin de maintenir leur sécurité tout au long d’une session active, nous aurons aussi besoin de messages, dits « messages de contrôle » qui serviront principalement à l’actualisation des éléments secrets.
En effet, dans la communication de groupes, nous devons à la fois assurer les tâches de communication intrinsèque de l’application, et effectuer le contrôle du protocole de communication.
Si nous considérons qu’il existe un seul canal de communication dans le groupe (ce qui peut se passer dans le pire des cas) nous aurons donc intérêt à optimiser l’utilisation du médium pour le transport des messages de données. Pour cela, plusieurs travaux de recherche [BAN 02], [WAN 05] portent leurs efforts sur la diminution du trafic de contrôle nécessaire au fonctionnement du protocole de communication, de façon à ne pas affecter les temps de réponse attendus par l’application. Cette première exigence, qui intervient très fortement dans la définition d’un système des groupes, correspond aux contraintes temporelles ou bien de performance établies lors de l’étape d’analyse de ce système.
Souvent, dans un ensemble de groupes, les supports réseaux dont les nœuds disposent deviennent aussi un facteur important. La disponibilité et la robustes des ressources réseaux sont deux paramètres qui permettent de restreindre plus ou moins les processus de contrôle impliqués dans la communication.
La composition des groupes liés par cette communication, ainsi que l’évolution de cette composition, est un paramètre déterminant pour les choix des mécanismes de protection de l’information échangée et des techniques d’actualisation des éléments secrets dont les mécanismes de protection ont besoin. Le choix des techniques pour la gestion des groupes se verra aussi affecté par cette composition et cette dynamique des membres.
En ce qui concerne l’application, le terme sécurité est pris en compte comme une personnalisation des communications de groupes. Protéger contre tout type d’attaque la communication d’un groupe de membres n’est pas forcément synonyme d’efficacité. Offrir un système plus rapide et plus performant que les autres n’est pas, non plus la meilleure solution si aucune sécurité n’est garantie. Il est évident que la sécurité dans la communication joue aujourd’hui un rôle autour duquel les autres paramètres doivent souvent s’ajuster. Nous devons aussi prendre en compte que le niveau de sécurité peut varier selon l’application concernée.
Nous pouvons ainsi voir que plusieurs éléments participent à la détermination d’un système de communication de groupes sécurisés. Quelques axes de référence ont été déterminés et publiés lors des travaux faits dans ce domaine. Vous les trouverez dans la section suivante.

Des solutions pour la communication des groupes

C’est en 1976 que l’équipe composée par Diffie, Hellman et Merkle [DIF 76], [MER 78], [HEL 02] établit la technique de chiffrement de donnés « Diffie-Hellman » (DH), qui révolutionnera le concept des anciens systèmes pour la protection des données. Cette technique est maintenant la base de plusieurs systèmes, notamment dans le domaine de la communication de groupes.
L’idée de cette technique est de faire contribuer totalement ou partiellement chacun des membres dans une session active pour la génération des éléments de base qui seront ensuite utilisés par les techniques de chiffrement nécessaires à la communication.
A l’origine « Diffie-Hellman » établit un secret utilisé pour chiffrer et déchiffrer l’information échangée entre deux membres. En reprenant cet algorithme, [ING 82] l’adapte à des groupes, puis l’utilise dans des conférences multiutilisateurs (Conference Key Distribution System CKDS). D’autres extensions pour des groupes sont présentées dans [STE 90], [BUR 94], [STE 96], [STE 97], [STE 00], [ASO 00].
Avec l’apparition de grands réseaux et en ayant à l’esprit l’idée de minimiser le temps de traitement de la gestion du groupe, dans [MIT 97], [MOL 00] et [DU 99] les auteurs se basent sur la structure hiérarchique du groupe pour proposer un algorithme qui délègue le calcul de la clé aux nœuds composant le réseau.
En étudiant la même problématique de gestion des éléments secrets, nous trouvons des travaux qui utilisent des arbres pour la génération de clés : [WAL 98], [CAR 98], [NOU 98], [WON 98], [SHE 03], [CAN 99a], [DON 99a], [DON 99b], [DON 00], [KIM 00], [KIM 04a] et [ZOU 04]. Dans [BAN 02], l’utilisation de clusters représente aussi une bonne solution pour diminuer la charge de gestion de ces éléments secrets.
Les certificats sont aussi des éléments très utilisés dans le domaine de la communication de groupes. Dans [LIV 2.2], [LIV 2.3] et [LIV 2.4], les auteurs font une étude très complète qui concerne les certificats appliqués à la communication des groupes.
En suivant une autre direction, plus focalisés sur les services de gestion des groupes, les auteurs [BIR 90], [WHE 94], [DOL 96], et [MOS 95] cherchent à garantir la fiabilité des systèmes distribués en considérant principalement la tolérance aux fautes, l’ordonnancement des messages, la synchronisation dans la communication, etc. Des services pour la gestion des utilisateurs comme le join ou le leave sont ici inclus.
[REI 95], [KIH 98], [REN 96], [BIR 97] traitent, eux de leur côté, deux sujets innovants et importants, le premier traitant la sécurité dans la communication et le deuxième référant l’utilisation d’un système complet.
Pour finir, nous avons identifié un ensemble de travaux dont l’intérêt a été de répondre aux besoins des nouvelles technologies et des nouvelles techniques de développement des systèmes logiciels. Ainsi dans [HIL 97], [HIL 00], [GON Modélisation et vérification de protocoles pour des communications sécurisées de groupes 96], [McD 00], [IRR 03] et [AMI 05], les auteurs proposent des architectures liées à des plates-formes middleware, mises à la disposition des applications sous la forme d’entités micro protocolaires pour la communication des groupes avec des interfaces faciles d’utilisation. La possibilité que les applications puissent fabriquer leurs propres services, l’évolution dans la proposition d’architectures globales, et l’utilisation de nouvelles techniques dans le domaine de la sécurisation de la communication font partie des avancées apportées au domaine de la communication des groupes sécurisés. De façon plus précise, leurs travaux traitent la problématique du bon compromis entre le niveau de sécurité choisi (authentification, confidentialité et intégrité de la communication, protection contre le rejeu et la collusion, etc.) et la performance du système de communication.
L’ensemble de problématiques traitées dans la communication des groupes est tellement vaste qu’il a été impossible d’identifier un groupe ou un travail qui traite, dans son ensemble et au même niveau, l’ensemble des axes auxquels nous nous sommes intéressés.

Contributions apportées dans ce mémoire

La proposition d’une architecture pour un système de communication de groupes sécurisés, sa modélisation et sa vérification représentent une tâche hautement complexe. Notre intérêt a été d’instancier dans un cas réel une architecture proposée dans le cadre de ce mémoire et de montrer l’intérêt de l’application d’une méthodologie incrémentale de conception dans le cas d’architectures aussi complexes. L’objet final a été de montrer, avec la vérification de ce système, que le protocole de communication choisi satisfait les exigences établies à l’origine de sa définition.
Le travail présenté dans cette thèse intègre dans son architecture un ensemble représentatif des problématiques qui se présentent dans la communication de groupes sécurisés.
Nous présentons ci-dessous l’ensemble des apports de ce mémoire.
• Analyser des systèmes de communication de groupes en utilisant le profil UML 2.0 pour la définition des fonctionnalités intrinsèques de tels systèmes
Nous avons choisi de suivre une méthodologie [MOT 05], [MOT 06], [FON 06] qui nous aide à l’identification des fonctionnalités d’un protocole de communication de groupes mais aussi à l’implantation du modèle. Ainsi, en se basant sur certains diagrammes de la notation Unified Modeling Language (UML) 2.0, nous analysons et documentons les composants d’un protocole de communication de groupes. Les résultats de cette analyse peuvent servir à l’établissement de standards pour l’analyse et la définition de tels systèmes.
• Proposer une architecture de modélisation et de vérification de protocoles pour la communication sécurisée de groupes
Nous proposons l’architecture générique appelée SGCva (Secure Group
Communication verification architecture) [MOT 06] [MOT 07], qui peut être utilisée dans différents contextes pour des protocoles de communication de groupes. Sa définition s’appuie sur les fonctionnalités précédemment identifiées dans ce type de communications. Le modèle de référence OSI (Open System Interconnection) [TAN 96] que nous considérons comme un cadre conceptuel adéquat pour concevoir les services et les protocoles de communications des systèmes distribués, a été la référence pour la structuration de notre architecture en couches. Les niveaux de déploiement de notre architecture s’inscrivent dan les couches hautes du modèle OSI, c.à.d. dans les couches Application, Session et Transport du modèle OSI.
Globalement, nous proposons d’implémenter dans notre architecture les services concernés par : 1). Le transport sécurisé de l’information échangée entre les membres d’une session. 2). La gestion de la communication des groupes sécurisés. 3). La gestion du groupe. 4). L’application finale.
• Définir des primitives et des services pour des communications sécurisées de groupes
L’identification des primitives de communication entre les couches d’une entité réseau implique un travail d’abstraction complexe. L’objet est de réussir à énumérer de façon exhaustive toutes les possibilités de dialogues entre les services des couches dans l’architecture. Nous avons identifié, tout d’abord, toutes les interactions existantes entre des couches. Puis, nous avons défini l’ensemble des échanges qui se déroulent entre les couches pour arriver, à la fin, à l’identification des primitives pour chaque couche. Un travail équivalent a été fait pour l’identification des « Unités de Données de Protocole » (PDUs), unités de données échangées entre entités équivalentes au sein d’une même couche réseau.
• Instancier notre architecture à travers une méthodologie incrémentale dans un projet industriel Le projet RNRT SAFECAST, dédié à l’étude, à la conception et à la validation de fonctionnalités de mécanismes garants de communications sécurisées à l’intérieur de groupes dynamiques [EAD 04], [SAFECAST], représente un cas réel et complexe de l’application d’un protocole sécurisé dans des communications de groupes. A travers l’application d’une méthodologie incrémentale [MOT 05], [MOT 06] de modélisation et de vérification, nous avons instancié notre architecture dans une modélisation du protocole Safecast [LIV 2.5] sous un environnement TURTLE [TURTLE]. Des résultats concernant la satisfaction ou la non satisfaction des exigences temporelles ont été fournis aux partenaires du projet.
Notre contribution aux biens livrables de projet se trouve dans [LIV 2.5], [LIV 3. 4], [LIV 4.1], [LIV 4.2], [LIV 4.3] et [LIV 4.4].
• Définir une nouvelle technique d’analyse de protocoles de groupes sécurisés Une contribution originale dans un tel domaine a été le fait de proposer une solution dont les qualités (fonctionnelles et de performances) auront été démontrées par des techniques de validation formelle. Le grand problème qui s’est posé, et qui à notre connaissance n’avait jamais été abordé, a porté sur la nécessité de traiter en même temps des problématiques qui, du point de vue de la modélisation et de la vérification formelle, avaient été adressées séparément dans la littérature, à savoir :
(1) la sécurité dans la communication ;
(2) la gestion de groupes dynamiques ;
(3) les contraintes temporelles.
Par rapport à ces trois problèmes de base, nous ajoutons plusieurs spécificités parmi lesquelles :
(4) des groupes régis selon une organisation hiérarchique de ses membres ;
(5) la combinaison étroite entre les exigences de sécurité et les exigences temporelles.

Principaux éléments pour la sécurisation des communications

Dans la littérature, les travaux qui s’occupent de communications de groupes induisent souvent des besoins en sécurité. En effet, chaque fois qu’un membre communique dans un groupe, il peut s’avérer nécessaire de garder confidentielle l’information échangée au sein de ce groupe. L’authentification et l’intégrité des messages sont aussi des propriétés qu’un système de communication pour des groupes doit garantir aux applications qui l’utilisent. En effet, assurer qu’un message dans le réseau vient bien d’un utilisateur autorisé (authentification) est, en général, une propriété importante à garantir [ZOU 07]. De la même façon, garantir que chaque message dans le réseau n’a pas été modifié malicieusement est essentiel (intégrité).
Le niveau de sécurité à garantir pendant le déroulement d’une session peut varier fortement d’une application à l’autre, mais aussi peut varier pendant le déroulement d’une même application. Par exemple, dans certains contextes, la tâche d’authentifier la source du message peut être la tâche la plus importante. Pour d’autres, la confidentialité des messages est la priorité.
Aujourd’hui, la cryptographie répond bien aux besoins des utilisateurs en matière de sécurité. Elle représente une bonne solution pour la protection des données [GOL 01], [KER 06]. En partant de cette base, des techniques diversifiées sont disponibles pour aboutir à une sécurité plus ou moins complète selon les besoins de l’application qui l’utilise [BAG 06], [ÖNE 07].
D’autres sujets connexes sont en liaison avec la communication des groupes sécurisés (CGS) : le réseau de déploiement physique, la taille des groupes et le comportement dans la composition des groupes participants. Ces paramètres personnalisent les systèmes de communication de groupes.

Cryptographie à clé publique

La cryptographie asymétrique, dite aussi à clé publique, a été présentée pour la première fois à la National Computer Conference en 1976, puis publié quelques mois plus tard dans New Directions in Cryptography par Whitfield Diffie, Martin Hellman and Ralph Merkle [DIF 76]. C’est en 1978 que le premier exemple a été publié avec le système RSA, par Ronald Rivest, Adi Shamir et Leonard Adleman [RIV 78]. L’abréviation RSA est tirée des trois noms de ses auteurs. Le principe sommaire de la cryptographie à clé publique est de créer un couple de clé publique et privée. Chaque clé a une relation logique avec la clé duale. La clé privée est gardée confidentielle par l’entité qui a généré le couple de clés. La clé publique est envoyée à l’extérieur et est accessible à tout le monde. La solidité de ce principe vient du fait qu’il est actuellement « impossible », du moins en temps de calcul raisonnable, de déduire la clé privée à partir de la connaissance de la clé publique et de messages codés au travers de ce couple de clés [ELL 03].
Cette découverte a modifié la cryptographie car jusqu’alors, pour envoyer un message chiffré, les deux correspondants devaient se mettre d’accord pour échanger au préalable une information secrète : la clé de sécurisation. La difficulté de cette tâche affaiblissait les algorithmes précédents. La cryptographie asymétrique est incontournable pour garantir des propriétés de non répudiation. Elle reste utilisée par des algorithmes pour générer des signatures. Une empreinte de taille fixe est obtenue [LIV 1.4] par l’application d’une fonction de hachage à sens unique (avec faible probabilité de collision) au message à envoyer. Cette empreinte est ensuite chiffrée par un algorithme asymétrique en utilisant la clé privée de l’émetteur. Le résultat obtenu correspond à la signature. Elle est ajoutée au message à envoyer. Seule la personne possédant la clé privée pourra signer le message. Ceci permettra de garantir la non répudiation de la source.
En utilisant la clé publique de la personne qui présume avoir envoyé le message, le récepteur déchiffre la signature, calcule l’empreinte du message avec une fonction de hachage. Il effectue ainsi, la vérification de l’intégrité du message reçu ainsi que de sa provenance. L’émetteur ne peut pas nier qu’il a bien émis ce message.
La cryptographie à clé publique a permis de résoudre des nombreux problèmes pratiques mais elle reste moins utilisée que la cryptographie à clé secrète pour faire communiquer des groupes. La mise en place d’infrastructures à clé publique (PKI) ne s’applique pas bien au cas d’un ensemble d’utilisateurs qui souhaitent faire une même communication dans un groupe de N membres. Utiliser une paire de clés (la clé publique et la clé privée) pour chaque couple de membres qui échangent de l’information introduit une complexité combinatoire exponentielle en 2n dans le nombre de clés, ce qui est difficile à gérer pour des groupes de grande taille. L’utilisation de cette technique devient coûteuse dans les communications de groupes car elle oblige à effectuer N transmissions point-à-point en lieu d’une seule émission multipoint et broadcast.
Au final, les algorithmes de cryptographie asymétrique ne supportent pas le passage à l’échelle [ZOU 05] pour des émissions multipoint et broadcast. Les algorithmes basés sur la cryptographie symétrique supportent ce passage à l’échelle. Ils offrent de bien meilleures performances et ne requièrent pas l’utilisation d’une infrastructure spécifique.

Cryptographie à clé secrète

La cryptographie à clé secrète, dite aussi chiffrement symétrique, fonctionne selon le principe suivant : pour effectuer une communication de groupe de manière sécurisée, l’information échangée doit être protégée en utilisant une clé symétrique qui intervient dans le chiffrement et le déchiffrement des messages. Cette technique représente une solution dès lors qu’une clé commune (la clé secrète) à tous les utilisateurs d’un groupe en communication, est générée et partagée pour chiffrer et déchiffrer l’information échangée entre eux.
L’algorithme le plus utilisé pour procéder à cette génération et ce partage de clé secrète est l’algorithme de Diffie Hellman [DIF 76], [MER 78]. Son principe de fonctionnement est le suivant : deux membres m1 et m2 voulant communiquer des informations secrètes, génèrent chacun de leur côté, une pair d’éléments (a1 et b1 pour m1, a2 et b2 pour m2). Les deux membres échangent entre eux les éléments b1 et b2 qui fonctionnement comme des clés publiques. m1 garde secret l’élément a1, m2 garde secret l’élément a2 qui fonctionnement comme des clés privées. Les deux membres peuvent ensuite générer une clé commune cm issue de la combinaison de b1 et b2. a1 et a2 restent privées pour chaque membre.
Dans le cas de communications de groupes, la clé secrète commune cm sert à chiffrer et à déchiffrer les messages échangés.
L’algorithme initial de Diffie Hellman s’est avéré sensible aux attaques de type « Man-in-the-middle », dans lesquelles un intrus se place entre les deux membres concernés. Cet intrus se fait passer pour l’autre membre auprès de chacun des membres. En entrelaçant ses comportements de façon astucieuse auprès des deux membres et en ajoutant des informations dans la partie non chiffrée du message, l’intrus se rend maître des communications entre les membres initiaux qu’il peut alors déchiffrer. Pour pallier ce problème, cet algorithme a été rectifié par Gavin Lowe [LOW 96], en introduisant l’identité des membres participants aux contributions pour la génération de la clé. Ce nouvel algorithme est détaillé dans [HEL 02].
L’algorithme de Diffie Hellman a été étendu pour s’appliquer à N membres. Cette extension est référencée dans la section 2.2.2.2
Le tableau 2.1 montre de façon chronologique et synthétique les travaux qui ont abouti aux protocoles actuels utilisés dans le domaine de la communication de groupes sécurisées. Ces travaux sont détaillés dans cette sous-section. Les différentes problématiques qui apparaissent au fur et à mesure que les applications des groupes évoluent, traités au travers d’améliorations des algorithmes de sécurité, sont les suivantes. Certaines cherchent à diminuer la charge en temps de calcul ou en nombre de messages échangés que l’algorithme proposé nécessite. Le calcul de la clé de session peut être plus ou moins compliqué en fonction des différents paramètres intervenants pendant ce processus de calcul. La façon d’envoyer les contributions des membres impliqués dans le processus peut aussi varier. Ces derniers peuvent, par exemple, diffuser les informations selon une logique broadcast ou bien en établissant un anneau logique circulaire de distribution séquentielle.

Gestion centralisée de la clé de session

Les méthodes centralisées répondent bien aux besoins des applications avec un grand nombre de membres.
Dans [FIA 94], Fiat et Naor proposent le traitement de la communication de groupes en utilisant une entité centrale pour la gestion de la clé. Cette entité doit donner la clé à tout membre qui rejoint le groupe. Elle se charge aussi d’actualiser cette clé, si besoin est. Leur étude montre que le système proposé résiste bien aux attaquants passifs. L’intérêt de mettre cette entité centrale est de diminuer la charge de gestion de la clé chez les membres du groupe. Le principal inconvénient de cette technique est bien entendu l’installation de cette entité centrale à laquelle on doit faire confiance pour la gestion de la clé du groupe.

Gestion contributive de la clé de session

La génération de la clé sécrète à travers un algorithme contributif apporte un degré de sécurité bien supérieur. L’algorithme Diffie-Hellman, grâce à son principe de fonctionnement sur des contributions et sur l’accord final d’une clé partagé entre deux membres participants, à été étendu pour son utilisation dans des sessions multiutilisateurs sous le nom de « n-party Diffie-Hellman key exchange ». Au cours du temps, de nombreuses modifications ont été faites au protocole de base ; des extensions sont présentées en [STE 96], [ASO 00].
Cette clé est générée avec l’intervention des membres appartenant au groupe. Elle reste seulement accessible par ces membres pour chiffrer et déchiffrer les messages échangés. C’est la raison de l’importance de cette gestion de la clé de session de façon contributive, sujet cœur dans la Communication de Groupes Sécurisée.
Dans la gestion des clés, deux problématiques doivent être traitées. La première correspond à la génération de la clé de session et la deuxième à la distribution de cette clé. Ayant une étroite relation entre eux, les deux problèmes sont, en général, traités dans une même proposition d’algorithme de groupes. Dans certains protocoles de génération de clés, la distribution de la clé de session est faite pendant sa génération. Dans d’autres, la clé est générée en premier, sa distribution s’effectue après.
Ingemarsson et al. [ING 82] est l’un des premiers auteurs qui a contribué aux travaux de recherche dans la communication des groupes. Dans leur article, ils font référence à la technique « Diffie-Hellman-Merkle key exchange » comme un système intelligent mais qui sert juste à deux utilisateurs. Dans [ING 82], les auteurs font une généralisation de ce système à un groupe pour la génération d’une clé pour le cas d’une conférence (Conference Key Distribution System. CKDS). Dans CKDS un ensemble de stations peut s’accorder sur une clé secrète pour crypter et décrypter leurs informations échangées. Les membres participants sont connectés selon un anneau logique pour composer la nouvelle clé avec la contribution de chacun des membres. A son tour, le membre i reçoit la clé envoyée par le membre i-1.Il fait sa contribution dans la clé reçue, puis il envoie cette clé au membre i+1. Le tour commence avec l’utilisateur 0. Il finit avec l’utilisateur M-1, M étant égal au nombre de stations qui sont membres de la conférence.
Ingemarsson et al. montrent que leur système est sûr vis-à-vis d’un attaquant appelé « Multitap », qui, à l’écoute des messages pendant plusieurs cycles d’établissement de la clé, ne peut pas deviner la clé de session à un moment donné. Leur système offre la possibilité de choisir le niveau de résistance au « Multitap ». Ils montrent aussi, de la même façon que [DIF 76], que leur système sert, à travers l’utilisation des signatures, à authentifier la source des messages.
Des travaux postérieurs à Ingemarsson continuent à proposer des améliorations à « Diffie-Hellman-Merkle key exchange ». En suivant la philosophie de faire contribuer les membres participants et de distribuer la tâche de génération de la clé de communication dans les membres du groupe, nous trouvons notamment les travaux de Steer et al. [STE 90], Burmester et Desmedt [BUR 94] ainsi que Steiner et al. [STE 96], [STE 97], [STE 00], détaillées par la suite. Leurs études cherchent aussi à rendre les systèmes de communication efficaces pour des applications de groupes.
Steer et al [STE 90] proposent des avancées dans le domaine des téléconférences. Ils proposent une technique pour protéger les participations de chaque membre ainsi que les clés utilisées pendant cette communication. Jusqu’alors, les téléconférences faisant intervenir un ensemble de membres, étaient proposées pour des environnements ouverts. Steer et al utilisent un point de passage de données qu’ils ont appelé « bridge », lequel est connecté à tous les utilisateurs en communication. Ce point coordonne les participations des membres, l’information qui passe est protégée. La contribution de ce travail a été de distribuer les tâches de génération de la clé du groupe ainsi que le chiffrement et le déchiffrement des participations des membres. Ils offrent, avec cette distribution, la possibilité de choisir entre différents algorithmes de chiffrement.
Burmester et Desmedt critiquent les protocoles [ING 82], [FIS 92], [BLU 93] et [KOY 87] car soit ils ne sont pas efficaces au niveau des calculs effectués, soit ils ne sont pas sécurisés. Burmester et Desmedt [BUR 94] présentent une extension de l’algorithme Diffie-Hellman dans un protocole d’échange de clé de groupe appelé BD. Ils traitent la problématique de passage à l’échelle en proposant un protocole qui prend juste deux tours pour effectuer le calcul de la clé, le nombre des opérations de calcul des exponentielles est constant. Au niveau sécurité, Burmester et Desmedt testent la robustesse de leur protocole contre des adversaires passifs. Leur algorithme supporte aussi la confidentialité post-résiliation.
Steiner, Tsudik et Waidner se basent sur le protocole Diffie-Hellman. Ils publient deux nouveaux algorithmes [STE 96] dans un système appelé Cliques [STE 97] pour considérer la dynamique des groupes. Dans [STE 96], Steiner et al. présentent une extension du protocole Diffie-Hellman (deux personnes) à n utilisateurs en incluant la démonstration sur la sécurité de cette généralisation. Dans leur système, ils proposent des améliorations importantes aux travaux publiés autour de Diffie-Hellman. De ce fait, ils proposent des algorithmes qui n’ont besoin ni d’ordre ni de synchronisation des messages pour l’échange de la clé du groupe. Des sujets comme la diminution des étapes de calcul pour les fonctions de calcul exponentielles et du nombre de messages nécessaires, sont aussi traités. Une bonne synthèse et analyse de la problématique et des solutions des algorithmes contributifs et distributifs est abordée. Dans [STE 97], les études sont étendues à la problématique de la dynamique des groupes avec le système Cliques. Par conséquent, la garantie des propriétés est faite en relation avec cette composition dynamique. Déjà ils spécifient la confidentialité, l’intégrité, l’authentification de la source, la non répudiation de la source et le contrôle d’accès comme des sujets d’intérêt pour les nouvelles applications. Cliques divise les opérations de gestion de la clé en deux : celles pour la génération initiale de la clé, et celles pour l’actualisation vis-à-vis des mouvements des membres dans le groupe. Puisque la génération initiale se fait avant toute communication de groupe, le choix de l’algorithme initial générateur de la clé du groupe est moins restreint. On peut donc utiliser, un algorithme contributif et distribué qui consomme plus de tours de calcul que dans l’actualisation en ligne. Pour l’actualisation en ligne, en utilisant un contrôleur central, Cliques diminue la charge de calcul de la clé du groupe. Ce contrôleur offre des services de gestion de clés qui fonctionnent selon le même principe contributif que ceux du protocole Diffie-Hellman, en réponse aux changements de membres dans un groupe. Des opérations de fusion et de séparation sont aussi prises en compte par le système Cliques.
Dans [STE 00], Steiner et al. proposent l’application du protocole Cliques pour des groupes de pairs qui répondent bien aux besoins sécuritaires vis-à-vis de la composition changeante du groupe. Cliques n’est pas applicable à des grands groupes à cause de sa technique de génération contributive de la clé de groupe : les algorithmes proposés sont de complexité exponentielle par rapport à la taille du groupe. L’algorithme OFT, par exemple, basé sur des fonctions à sens unique appliquées à des arbres, requiert un nombre logarithmique d’opérations de calcul. OFT proposé dans [SHE 03] a bien fonctionné pour des groupes de plus de 10 000 000 participants.
Le Tableau 2.2 synthétise les caractéristiques des travaux énoncés dans cette sous-section, travaux tous basés sur Diffie-Hellman. Les critères énumérés détaillent l’efficacité du calcul et de la distribution de la clé de session dans les systèmes proposés.

Le rapport de stage ou le pfe est un document d’analyse, de synthèse et d’évaluation de votre apprentissage, c’est pour cela chatpfe.com propose le téléchargement des modèles complet de projet de fin d’étude, rapport de stage, mémoire, pfe, thèse, pour connaître la méthodologie à avoir et savoir comment construire les parties d’un projet de fin d’étude.

Table des matières

1 Introduction
1.1. Des systèmes de communication de groupes sécurisés
1.2. Eléments d’un système de communication de groupes
1.3. Des solutions pour la communication des groupes
1.4. Contributions apportées dans ce mémoire
1.5. Organisation du mémoire
2 Etat de l’art
2.1. Introduction
2.2. Principaux éléments pour la sécurisation des communications
2.2.1. Cryptographie à clé publique
2.2.2. Cryptographie à clé secrète
2.2.3. Certificats
2.2.4. Autres mécanismes pour des systèmes particuliers/spécifiques
2.3. Architectures pour la communication des groupes
2.3.1. Premières architectures pour la communication de groupes
2.3.2. Architectures pour la communication des groupes sécurisées
2.3.3. Synthèse
2.4. Conclusion
3 Spécification des fonctionnalités pour des communications de groupes sécurisés
3.1. Introduction
3.2. Outils d’analyse et de modélisation
3.2.1. Unified Modeling Language 2.0
3.2.2. Diagrammes de Contexte (Context Diagram)
3.3. Structure des groupes
3.3.1. Dimensions dans un groupe
3.3.2. Notion de rôle des utilisateurs dans un groupe
3.4. Fonctionnalités pour la gestion des groupes
3.4.1. Composition interne des groupes
3.4.2. Gestion de la connectivité entre des groupes
3.5. Fonctionnalités pour la gestion de la communication des groupes
3.5.1. Confidentialité de communication à l’intérieur de chaque groupe, utilisation de clés de session par groupe
3.5.2. Confidentialité des communications à l’intérieur de chaque classe
3.5.3. Gestion de la clé de session
3.6. Fonctionnalités pour la transmission sécurisée
3.6.1. Transmission de messages
3.6.2. Protection des échanges
3.7. Récapitulatif des fonctionnalités
3.8. Conclusion
4 Architecture pour des communications de groupes sécurisés
4.1. Introduction
4.2. Architecture proposée
4.3. Couche Transport sécurisée
4.3.1. Primitives de service de la couche transport sécurisée
4.3.2. Sous-couche Médium
4.3.3. Sous-couche Operations élémentaires de sécurisation des échanges (Security Opérations SO)
4.4. Couche Session
4.4.1. Sous-couche de Gestion de la Communication des Groupes (Group Communication Key Management GCKM)
4.4.2. Sous-couche de gestion des groupes (Group Membership Management GMM)
4.5. Conclusion
5 Spécification, modélisation et vérification du protocole
5.1. Introduction
5.2. Projet SAFECAST
5.2.1. Description du projet SAFECAST
5.2.2. Technologie sous-jacente : TETRA et TETRAPOL
5.2.3. Description de l’application SAFECAST
5.3. Approche d’analyse des protocoles de communication de groupes
5.3.1. Méthodologie de modélisation des protocoles de communication
5.3.2. Outil TURTLE
5.3.3. Vérification d’un protocole de communication
5.3.4. Vérification temporelle
5.4. Modélisation et résultats de vérification du protocole SAFECAST
5.4.1. Modélisation du protocole
5.4.2. Présentation des résultats
5.5. Conclusion
6 Conclusion et perspectives
6.1. Bilan des contributions
6.2. Perspectives
6.2.1. De l’utilisation d’outils de vérification séparés pour une convergence des conceptions
6.2.2. Approche d’utilisation conjointe d’outils de simulation et de vérification
6.2.3. Application de notre méthode de vérification dans des systèmes autres que Safecast
6.2.4. Analyse du passage à échelle sous l’optique d’une méthode de vérification formelle
6.2.5. Perspectives liées au projet SAFECAST
7 Références

Télécharger le rapport complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *