Analyse, valorisation et protection des réseaux pair-à-pair de blockchains publiques
Abstract
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.
Community
0 commentsNo discussion yet
Be the first to share a question or observation.