Thèse soutenue

Réplication sécurisée dans les infrastructures pair-à-pair de collaboration

FR  |  
EN
Auteur / Autrice : Victorien Elvinger
Direction : François CharoyGérald Oster
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance le 14/06/2021
Etablissement(s) : Université de Lorraine
Ecole(s) doctorale(s) : École doctorale IAEM Lorraine - Informatique, Automatique, Électronique - Électrotechnique, Mathématiques de Lorraine
Partenaire(s) de recherche : Laboratoire : Laboratoire lorrain de recherche en informatique et ses applications
Jury : Président / Présidente : Steve Kremer
Examinateurs / Examinatrices : François Charoy, Emmanuelle Anceaume, Pascal Molli, Esther Pacitti-Valduriez
Rapporteurs / Rapporteuses : Emmanuelle Anceaume, Pascal Molli

Résumé

FR  |  
EN

Une application de collaboration permet à plusieurs individus de coéditer un contenu. Les infrastructures pair-à-pair de collaboration visent à la conception d'applications hautement disponibles, aux latences faibles, qui tolèrent les partitions réseaux, et qui passent à l'échelle. Chaque pair (individu) modifie sa propre copie du contenu. La modification concurrente des copies conduit à leur divergence. Les protocoles de réplication sont responsables de la convergence des copies. Ces protocoles supposent l'absence de pairs malintentionnés qui compromettent la convergence des copies. Pouvons-nous protéger la convergence des copies et préserver les propriétés des infrastructures pair-à-pair ? Nous proposons deux protocoles qui protègent la convergence des copies. Le premier protocole maintient un journal répliqué et infalsifiable qui enregistre les modifications du contenu. Les pairs conservent l'intégralité du journal pour déjouer les attaques des pairs malintentionnés et pour le transmettre à ceux qui rejoignent la collaboration. Le second protocole permet aux pairs de tronquer leur journal. La troncature du journal repose sur le concept de Stabilité. Une modification devient stable lorsque toute modification intégrée dans le journal dépend d'elle. Pour rejoindre la collaboration, un pair récupère une copie et un journal tronqué. Il vérifie l'authenticité de la copie à partir du journal tronqué. Un type de données répliquées (CRDT) encapsule un protocole de réplication. Les CRDTs séquences supposent généralement un ordre d'intégration causal des modifications du contenu. Le retard d'une modification propage des ralentissements dans l'ensemble du système. La connexion d'un pair peut engendrer l'intégration de nombreuses modifications. Pouvons-nous éliminer ces ralentissements et ces intégrations coûteuses ? Nous formalisons une famille de CRDTs séquences et nous proposons une approche qui permet leur synchronisation par différences d'états. Les différences d'états peuvent être intégrées dans un ordre arbitraire et résumer plusieurs modifications. Nous proposons un CRDT séquence qui tire avantage de notre approche.