ACTUALITÉ SCIENTIFIQUE
ET INNOVATION DE L'ÉTS
Quantifier la décentralisation de réseaux de chaîne de blocs - Par : Yahya Shahsavari, Kaiwen Zhang, Chamseddine Talhi,

Quantifier la décentralisation de réseaux de chaîne de blocs


Yahya Shahsavari
Yahya Shahsavari Profil de l'auteur(e)
Yahya Shahsavari a obtenu une maîtrise en technologies de l’information et des communications de l’Université des sciences et technologies de l’Iran. Il poursuit actuellement ses études de doctorat à l’ÉTS, au laboratoire FUSÉE.
Laboratoires de recherche : FUSÉE 

Kaiwen Zhang
Kaiwen Zhang est professeur au Département de génie logiciel et des TI de l’ÉTS.

Chamseddine Talhi
Chamseddine Talhi Profil de l'auteur(e)
Chamseddine Talhi est professeur au Département de génie logiciel et d’informatique de l’ÉTS. Ses intérêts de recherche comprennent la gestion et la sécurité des services de télécommunications nuagiques et les réseaux mobiles nuagiques.

Réseau décentralisé de chaîne de blocs

Achetée sur Istockphoto.com. Droits d’auteur.

RÉSUMÉ:

Cet article présente notre méthodologie pour quantifier le degré de décentralisation de réseaux de chaîne de blocs par le biais de deux modèles de graphes bien connus, Erdös-Rény et Barabási-Albert. En outre, nous étudions l’effet de paramètres du réseau, comme le nombre de connexions par nœud et l’algorithme de sélection des pairs, sur le degré de décentralisation. Mots clés chaîne de blocs (Blockchain), décentralisation, modèle Erdös-Rény, modèle Barabási-Albert, regroupement (clustering).

Qu’est-ce que la décentralisation?

Dans les réseaux informatiques, la décentralisation est le passage de l’architecture client-serveur classique à un réseau pair-à-pair (P2P) dans lequel tous les nœuds ont le même rôle. Dans les réseaux de chaîne de blocs, la décentralisation se passe généralement à la couche application, par l’exécution et le stockage de transactions sans tiers de confiance, ou à la couche consensus, par le protocole de tolérance aux fautes Byzantines. Cependant, un aspect souvent négligé est la décentralisation du réseau public de chaîne de blocs lui-même, qui est sensible à la stratégie de sélection des pairs et au protocole du réseau.

Alors que l’objectif principal des systèmes de chaîne de blocs est de supprimer le recours à un tiers de confiance (TTP), un réseau blockchain mal décentralisé peut être sujet aux points de défaillance unique (partitions du réseau) ou aux attaques par déni de service (DoS). Une mauvaise décentralisation peut aussi causer des problèmes de gouvernance, où une minorité de nœuds centraux peuvent imposer une certaine version du protocole en limitant la communication entre les nœuds qui soutiennent une version différente. Par conséquent, il est vital d’établir une méthodologie pour quantifier la décentralisation des réseaux afin d’analyser ces propositions en profondeur et de s’assurer qu’elles n’ont pas d’effets secondaires involontaires sur la décentralisation du réseau.

Réseaux de chaîne de blocs

Les réseaux de chaîne de blocs fonctionnent généralement dans un réseau P2P superposé non structuré, où les nœuds participants sont libres de rejoindre le réseau en se connectant à tout nœud existant du réseau.

Après la configuration initiale, chaque nœud maintient en permanence un certain nombre de connexions avec des nœuds voisins, une stratégie de sélection des pairs qui peut varier en fonction de l’exécution de la chaîne de blocs. Différents paramètres entrent en jeu dans la sélection des voisins, comme la bande passante P2P, le délai, le nombre de sauts vers le pair ciblé ou la distance géographique. La stratégie de sélection des pairs affectera fortement la topologie du réseau et, par conséquent, sa décentralisation, comme nous allons le démontrer dans cet article.

Le réseau Bitcoin

Bitcoin est un système de chaîne de blocs sans permission qui fonctionne sur un réseau P2P non structuré. Le protocole du réseau permet aux nœuds participants de rejoindre ou de quitter le réseau à tout moment. Lorsqu’il rejoint le réseau pour la première fois, un nœud nouvellement arrivé n’a aucune connaissance de l’adresse IP des autres nœuds du réseau. Afin de permettre aux nouveaux nœuds de découvrir le réseau pendant la phase d’amorçage, les nœuds volontaires du réseau traitent un certain nombre de fonctions du DNS (Domain Name System), comme le déploiement personnalisé du logiciel BIND (Berkeley Internet Name Daemon), par exemple.

Après avoir exploré le réseau et trouvé d’autres nœuds, les nouveaux nœuds sont maintenant en mesure de soutenir des connexions multiples avec les nœuds voisins afin de maintenir et de mettre à jour le grand livre. De même, le Bitcoin utilise un protocole de communication qui se base sur l’inventaire.

Bitcoin : un réseau décentralisé de chaîne de blocs

 

Réseaux de relais

Les réseaux de relais sont un ensemble de nœuds (ou passerelles) déployés dans un réseau de chaîne de blocs comportant un grand nombre de connexions entre les nœuds (par exemple, les mineurs dans les blockchains PoW) et fournissant des liens à haut débit qui permettent de propager le bloc ou la transaction le plus rapidement possible, augmentant ainsi l’efficacité de la propagation de l’information. À l’heure actuelle, les réseaux de relais sont exploités comme solution évolutive pour les réseaux de chaîne de blocs comme le Bitcoin.

Modèle d’Erdös-Rény

Erdös-Rény (ER) est un modèle permettant de générer des graphes aléatoires. Selon ce modèle, dans un réseau de  participants, deux nœuds arbitraires sont connectés l’un à l’autre avec la même probabilité   de manière à ce que le degré moyen des nœuds soit égal à . Ce modèle peut servir à modéliser les réseaux de chaîne de blocs sans pôles ni réseau de relais.

Modèle de Barabási–Albert

Le modèle de Barabási-Albert (BA) est un modèle de graphe aléatoire dont les deux caractéristiques principales sont l’attachement préférentiel (ou « l’enrichissement des riches ») et la distribution de degrés selon une loi de puissance (ou réseau invariant d’échelle). En effet, il est plus probable que les nœuds qui viennent d’adhérer choisissent des pairs ayant plus de connexions, augmentant ainsi leur nombre de connexions déjà élevé.

Modèle et analyse du système

Dans cet article, nous effectuons d’abord une analyse de la décentralisation des chaînes de blocs sans permission à l’aide d’un coefficient de regroupement (clustering). Nous proposons ensuite le plus court chemin moyen comme indicateur de la vitesse du réseau. Ces deux mesures représentent le compromis entre la décentralisation et la performance, respectivement.

Le coefficient de regroupement est une mesure qui capte la tendance des nœuds d’un graphe à former un groupe. Pour un graphe simple, le coefficient de regroupement est compris entre zéro et un et est défini comme le coefficient de regroupement local (LCC) et le coefficient de regroupement global (GCC).

Nous souhaitons également comprendre l’effet de la taille du réseau de relais sur le degré général de décentralisation du réseau. Pour atteindre cet objectif, nous avons réalisé une série d’expériences où nous avons maintenu constante la taille globale du réseau (à N=10000), tout en faisant varier le pourcentage de nœuds participant au réseau de relais. Les résultats sont illustrés à la figure 1. Comme on peut le constater, pour une taille de réseau constante, lorsque la taille du réseau de relais atteint 50 %, le réseau tend à être totalement décentralisé.

En conséquence, pour une taille constante de réseau blockchain, un pourcentage plus élevé de nœuds agissant en tant que nœud relais donne un réseau plus décentralisé et plus équitable.

Décentralisation de réseau de chaîne de blocs Coefficient de regroupement Taille du réseau de relais (%)

Figure 1 Effet des réseaux de relais sur la décentralisation

Conclusion

Dans cet article, nous avons présenté une méthodologie analytique pour quantifier le degré de décentralisation dans les réseaux de chaîne de blocs, basée sur la stratégie de sélection des pairs. Les résultats obtenus ont révélé que le degré de décentralisation du réseau dépend fortement de la topologie et de l’architecture du réseau. Nous avons prouvé que l’utilisation de pôles et de réseaux de relais réduit de façon importante le degré de décentralisation du réseau.

Complément d’information

Pour plus d’information sur cette recherche, consulter l’article de conférence suivant :

Shahsavari, Y.; Zhang, K.; Talhi, C. 2022. “Toward Quantifying Decentralization of Blockchain Networks With Relay Nodes,” Frontiers in Blockchain

Yahya Shahsavari

Profil de l'auteur(e)

Yahya Shahsavari a obtenu une maîtrise en technologies de l’information et des communications de l’Université des sciences et technologies de l’Iran. Il poursuit actuellement ses études de doctorat à l’ÉTS, au laboratoire FUSÉE.

Programme : Génie des technologies de l'information 

Laboratoires de recherche : FUSÉE 

Profil de l'auteur(e)

Kaiwen Zhang

Profil de l'auteur(e)

Kaiwen Zhang est professeur au Département de génie logiciel et des TI de l’ÉTS.

Programme : Génie des technologies de l'information  Génie logiciel 

Laboratoires de recherche : FUSÉE- Fast Unified Scalable Event processing Event messaging 

Profil de l'auteur(e)

Chamseddine Talhi

Profil de l'auteur(e)

Chamseddine Talhi est professeur au Département de génie logiciel et d’informatique de l’ÉTS. Ses intérêts de recherche comprennent la gestion et la sécurité des services de télécommunications nuagiques et les réseaux mobiles nuagiques.

Programme : Génie logiciel  Génie des technologies de l'information 

Laboratoires de recherche : LASI – Laboratoire en architecture de systèmes informatiques 

Profil de l'auteur(e)


Laboratoires de recherche :

FUSÉE 

Domaines d'expertise :

Technologie de chaîne de blocs 

Recevez les dernières actualités scientifiques de l'ÉTS