Analyse, valorisation et protection des réseaux pair-à-pair de blockchains publiques - Université de Lorraine
Thèse Année : 2022

Analysis, valuation and protection of public blockchains' peer-to-peer networks

Analyse, valorisation et protection des réseaux pair-à-pair de blockchains publiques

Résumé

Blockchains rely on P2P networks that are essential to their proper functioning, as they ensure the dissemination of transactions and blocks to all parties.While Bitcoin and Ethereum - the two main public blockchains - are now worth trillions of dollars, attracting new users every day, few studies focus on the network aspects, although the literature shows that many problems can reduce the reliability of public P2P networks.In this thesis, we first focused on the monitoring of the P2P networks of the Bitcoin and Ethereum blockchains.We implemented a crawler for each network able to discover all connected peers and analyzed data from several months of measurement campaigns.Different criteria that can affect the reliability of the network were studied, such as the number of peers, their geographical distribution, their distribution over the IP network, the churn, the proportion of clients with known vulnerabilities, the existence of daily connection patterns or the ability to infer topology. It appears that both networks show good properties on all these points.Starting from the observation that, on the one hand, the Ethereum P2P network based on a distributed hash table (DHT) is largely untapped, as no data is stored in the DHT, and on the other hand, thestorage of the blockchain data is only growing (which will eventually be problematic),we studied in a second time the data storage of the main client of Ethereum(Geth) and its way of synchronizing the state of the blockchain between the peers. We have designeda new distributed storage architecture for Ethereum taking advantage of the DHT, backward compatible with the current clients and able to reduce the disk space, used for long-term storage, by 95% (58% of the total storage) without impacting the guarantees or the performances of the Ethereum blockchain.However, storing data on the DHT makes it more prone to attacks, especially Sybil attacks.We therefore analyzed Ethereum peers for patterns that could reflect Sybil attacks and showed the existence of thousands of suspicious nodes grouping many identifiers for a single IP address (up to 10000/IP).We finally designed and implemented a protection architecture against Sybil attacks. It is based on a crawler detecting suspicious nodes in real time, a smart contract structuring the information and distributing it to all peers, and finally a fully-distributed revocation system, each peer noticing itself the attack and removing its connections.The deployment on an Ethereum test network has shown the effectiveness of the proposed architecture.
Les blockchains reposent sur des réseaux P2P essentiels à leur bon fonctionnement puisqu'ils assurent la dissémination des transactions et des blocs à l'ensemble des parties. Alors que Bitcoin et Ethereum - les deux principales blockchains publiques - capitalisent aujourd'hui des milliers de milliards de dollars, attirant chaque jour de nouveaux utilisateurs, peu d'études s'intéressent aux aspects réseau bien que la littérature montre que de nombreux problèmes peuvent réduire la fiabilité des réseaux P2P publics. Dans cette thèse, nous nous sommes intéressés dans un premier temps à la supervision des réseaux P2P des blockchains Bitcoin et Ethereum. Nous avons implanté un crawler pour chaque réseau capable de découvrir tous les pairs connectés et avons analysé les données issues de campagnes de mesure de plusieurs mois. Différents critères pouvant affecter la fiabilité du réseau ont été étudiés, tels que le nombre de pairs, leur distribution du point de vue géographique ou du réseau IP, leur taux d'attrition, la proportion de clients aux vulnérabilités connues, l'existence de motifs journaliers de connexion ou encore la capacité d'inférer la topologie. Il apparaît que les deux réseaux montrent de bonnes propriétés sur tous ces points. Partant du constat que, d'une part, le réseau P2P d'Ethereum basé sur une table de hachage distribuée (DHT) est largement inexploité, car aucune donnée n'est stockée dans la DHT, et que, d'autre part, le stockage des données de la blockchain ne fait que croître (ce qui posera des problèmes à terme), nous avons étudié dans un second temps le stockage des données du principal client d'Ethereum (Geth) et sa manière de synchroniser l'état de la blockchain entre les pairs. Nous avons conçu une nouvelle architecture distribuée de stockage pour Ethereum tirant parti de la DHT, rétrocompatible avec les clients actuels et pouvant réduire l'espace disque, utilisé pour le stockage long terme, de 95% (58% du stockage total) sans impact sur les garanties ou les performances de la blockchain Ethereum. Le stockage des données sur la DHT la rend cependant plus intéressante à attaquer, en particulier par des attaques Sybil localisées. Nous avons donc analysé les pairs d'Ethereum à la recherche de motifs pouvant traduire des attaques Sybil et montré l'existence de milliers de nœuds suspects regroupant un grand nombre d'identifiants pour une même adresse IP (jusqu'à 10000/IP). Nous avons finalement conçu et implanté une architecture de protection contre les attaques Sybils. Celle-ci se base sur un crawler détectant les nœuds suspects en temps réel, un smart contract structurant l'information et la distribuant à tous les pairs, et enfin une révocation complètement distribuée, chaque pair constatant lui-même l'attaque et coupant ses connexions aux nœuds Sybils. La mise en œuvre sur un réseau de test Ethereum a montré l'efficacité de l'architecture proposée.
Fichier principal
Vignette du fichier
DDOC_T_2022_0213_EISENBARTH.pdf (2.29 Mo) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)

Dates et versions

tel-04056712 , version 1 (03-04-2023)

Identifiants

  • HAL Id : tel-04056712 , version 1

Citer

Jean-Philippe Eisenbarth. Analyse, valorisation et protection des réseaux pair-à-pair de blockchains publiques. Informatique [cs]. Université de Lorraine, 2022. Français. ⟨NNT : 2022LORR0213⟩. ⟨tel-04056712⟩
130 Consultations
169 Téléchargements

Partager

More