Thèse en cours

Détection de vulnérabilités sur les couches 2 de blockchains publiques

FR  |  
EN
Auteur / Autrice : Karolina Gorna
Direction : Rida Khatoun
Type : Projet de thèse
Discipline(s) : Informatique, données, IA
Date : Inscription en doctorat le 01/09/2023
Etablissement(s) : Institut polytechnique de Paris
Ecole(s) doctorale(s) : École doctorale de l'Institut polytechnique de Paris
Partenaire(s) de recherche : Laboratoire : Laboratoire Traitement et communication de l'information (Paris ; 2003-....)
Equipe de recherche : C² - Cybersécurité et Cryptographie

Résumé

FR  |  
EN

Malgré leurs existences depuis plus de dix ans, les réseaux blockchains publiques sont encore très régulièrement attaqués, que ce soit aux niveaux protocolaires ou applicatifs. Leurs couches principales, communément appelées couches 1, sont composées de nœuds validateurs ou mineurs qui communiquent entre eux afin de créer des blocs contenant des transactions de valeurs ou d'informations. Elles sont enregistrées dans une base de données commune stockée à l'intérieur de chaque client logiciel régissant les nœuds du réseau. Ces nœuds sont organisés autour d'un protocole de consensus, dont la nature et l'implémentation varie selon les blockchains. Elles doivent partager néanmoins toutes les caractères décentralisés et incensurables. En contrepartie de l'entretien du réseau, les nœuds reçoivent des jetons générés nativement par le protocole de la blockchain. Ces jetons peuvent ensuite être échangés librement sur le réseau, moyennant une valeur financière basée sur l'offre et la demande. Pour modérer la quantité de transactions et la complexité des opérations, des frais variables sont systématiquement associés aux transactions, en faisant d'une majorité des blockchains, de facto, des machines de Turing quasi-complètes. Dès 2020, des problématiques de congestion des couches 1, notamment Ethereum, apparaissent du fait de leur forte utilisation. Cela se traduit par une explosion des frais de transactions : il y a beaucoup d'utilisateurs et pas assez de nœuds pour répondre à la demande. L'implémentation de couches secondaires, appelées couches 2, est nécessaire afin de déléguer une partie des tâches d'exécution ne pouvant pas être traitées par les nœuds de couche 1. Ainsi, on voit la construction de différents types de couches 2 : les canaux à états, les plasmas et les rollups. Actuellement, les rollups sont majoritairement utilisés pour leur caractère hybride, qui déplace le calcul et le stockage d'état hors de la couche 1 de la blockchain, tout en conservant certaines données par transaction sur cette même couche. Certains rollups reprennent la même architecture de machine virtuelle de leurs clients logiciel que les clients utilisés par les couches 1, en mettant en avant que les mêmes outils de développement et de sécurité peuvent y être utilisés. D'autres, choisissent de modifier profondément leur machine virtuelle pour améliorer la performance d'exécution des opérations. Toutes ces solutions prônent un niveau de sécurité équivalent aux couches 1, mais très peu d'études académiques se penchent sur l'exactitude de cette information. Cette thèse explore donc les possibles méthodes de détection de vulnérabilités sur ces nouveaux types de réseaux, les couches 2 de blockchains publiques.