La décentralisation: un gros problème pour la blockchain

Bonjour, Habr! Je vous présente la traduction de l'article "Décentralisation: le gros problème de la blockchain".

image

La décentralisation est l'un des mots clés de la technologie de la blockchain: des entreprises et des sites Web sont apparus qui incluent ce mot dans leur nom.

La décentralisation a été présentée comme la caractéristique fintech la plus avancée. L'abréviation DLT (Decentralized Ledger Technology) est devenue synonyme de blockchain dans l'environnement Fintech autorisé.

Peu de gens réalisent que la décentralisation est un problème en soi, et la technologie de la blockchain s'est arrêtée pendant de nombreuses années.

Je m'explique:

Dans les années 1960, les systèmes informatiques étaient centralisés ou configurés comme une topologie de réseau en étoile. Ce n'est qu'au début des années 1970 que la nécessité de connecter des ordinateurs de plusieurs fabricants est devenue urgente.

À cette époque, les nœuds de plusieurs réseaux de communication existants étaient organisés de manière hiérarchique, mais dès le début, les protocoles mis en œuvre dans les nœuds ARPA, RPCNET, PISA et d'autres réseaux innovants précédant Internet ont été développés avec l'idée générale que le nœud ou l'autorité centrale devrait contrôler, gérer, être le centre ou posséder le réseau.

En d'autres termes, nous savions qu'un réseau en étoile à plusieurs niveaux centralisé, avec ses goulots d'étranglement inhérents, ne serait pas en mesure de satisfaire même les besoins de milliers d'utilisateurs dans les années 1970. Nous avons également suggéré qu'en réduisant le nombre de goulots d'étranglement résultant de la décentralisation, le problème serait réduit, mais pas résolu. Nous savions qu'une solution devait utiliser un modèle peer-to-peer distribué.

Étant donné que de nombreuses organisations seront impliquées dans la fourniture de nœuds, de canaux et de matériel et logiciels non fiables, nous avons supposé que le réseau n'était pas fiable. Nous ne savions pas comment un ensemble de données cohérent ou même une seule transaction peut être pris en charge dans plusieurs bases de données via un réseau non fiable, lorsqu'un nœud peut générer un message, ou dans la terminologie fintech, une transaction financière. Le problème a été encore exacerbé par la présence de joueurs malveillants.

Pourquoi la technologie blockchain décourage la décentralisation


image

D'une manière générale, nous reconnaissons qu'un réseau est décentralisé lorsque la gestion du réseau est partagée par un sous-ensemble de nœuds de réseau.

Un réseau est distribué lorsque tous les nœuds partagent les mêmes responsabilités et exécutent le même logiciel de nœud.

Les réseaux décentralisés (autorisés et basés sur des leaders) étaient souvent des extensions de réseaux centralisés découlant des exigences des applications, par exemple, dans l'industrie des technologies financières.

Le logiciel de réseau blockchain (logiciel système de base) ne doit pas être développé conformément aux exigences de l'application, car il va changer. Nous n'avons pas conçu les prédécesseurs réseau d'Internet et d'Internet lui-même, en nous basant uniquement sur les exigences des applications des années 1970. Nous ne pouvions pas prédire quelles industries se développeraient en fonction de la capacité d'échanger des informations à l'échelle mondiale.

De même, le réseau principal de blockchain devrait être aussi général, flexible et évolutif que possible. Les autorisations, les exigences client-serveur et les exigences de réseau privé peuvent alors être considérées comme des cas particuliers d'un réseau distribué, par exemple, en utilisant le concept de réseaux de blockchain privés virtuels.

image

Les réseaux distribués sont plus susceptibles d'être indépendants de toute structure physique particulière. Les nœuds peuvent se connecter dynamiquement les uns aux autres et des procédures de connexion aléatoire peuvent être utilisées. Les solutions consensuelles mises en œuvre dans les réseaux distribués peuvent également être invalides, gérées par la majorité et récursives.

La distribution, et non la décentralisation, aurait dû être l'objectif principal de la conception de crypto-monnaie.

Pourquoi nous avons échoué


L'absence d'examen des accords de consensus distribués est en partie due à la formulation en 1982 du problème des généraux byzantins, qui modélise la façon dont l'intégrité de l'information peut être maintenue dans un environnement peu fiable. Le problème des généraux byzantins est étudié par les chercheurs depuis plus de trente ans.

image

L'analogie de plusieurs divisions de l'armée alliée détenant la ville assiégée suggérait que personne sur le terrain ne pouvait faire confiance pour délivrer un message et que certains des généraux eux-mêmes ne pouvaient pas faire confiance pour émettre un commandement.

Cependant, le libellé de l'analogie avec l'armée impliquait la présence d'au moins deux classes de troupes: les généraux et les soldats.

Ensuite, certaines personnes ont limité leur réflexion à un cas plus spécifique lorsque les généraux ont donné des ordres qui devaient être transférés à d'autres généraux et protégés des interférences des intrus ou des traîtres.

Au final, cette approche a conduit à une définition limitée du problème du consensus.

image

Des modèles de consensus basés sur des leaders tels que Paxos et Raft ont été enseignés dans les universités et utilisés comme modèles par les développeurs de réseaux de blockchain.

En conséquence, les solutions pratiques au problème des généraux byzantins se sont concentrées sur diverses méthodes de sélection d'un nœud leader qui enverrait un bloc d'informations vérifiées à tous les autres nœuds au lieu d'essayer de parvenir à un consensus sur le contenu du bloc.

Cible manquante


Un consensus sur le nœud qui devrait être le leader actuel ne résout pas le problème de la confiance. Il faut faire confiance au leader actuel. Il doit effectuer le travail de vérification et d'assemblage des blocs de manière équitable.

Ainsi, sur la base des protocoles de consensus actuels, le leader doit accorder une certaine autorité: preuve de travail, preuve d'enjeu, preuve de capacité ou preuve d'autre chose.

Cette «preuve» ne garantit rien de plus que l'intérêt personnel que les sites leaders (ou les sites cherchant à devenir des sites leaders) peuvent avoir dans le réseau: plus ils gagnent d'intérêt, moins ils seront prêts à détruire leur forme de revenu.

Ces «preuves» garantissent que les leaders potentiels ont l'autorité, mais ne garantissent pas que les informations collectées dans le bloc sont correctes ou qu'elles ont été vérifiées par la plupart des nœuds.

Nous avons vu plus de 60 solutions proposées basées sur des modèles de leadership pour diverses implémentations de blockchain. Ils souffrent d'une erreur commune: un nœud décide ce que chaque autre nœud va stocker dans la blockchain. Le résultat est presque le contraire de ce qui est requis.

Résumé des lacunes basées sur les protocoles Leader


Les protocoles basés sur les leaders présentent les inconvénients suivants:

  • Ils ne rĂ©solvent pas le problème de la confiance. Le nĹ“ud leader peut entrer des donnĂ©es erronĂ©es, intentionnellement ou non, dans le bloc d'informations.
  • Les rĂ©compenses associĂ©es au travail de vĂ©rification et d'assemblage des blocs incitent les nĹ“uds Ă  concourir pour les rĂ©compenses et Ă  accĂ©der Ă  des postes de direction. Cette incitation a tendance Ă  crĂ©er une classe spĂ©ciale de nĹ“uds. Le rĂ©seau devient un rĂ©seau dĂ©centralisĂ©. Par exemple, Bitcoin a commencĂ© comme un rĂ©seau de partenaires, oĂą chaque nĹ“ud pouvait vĂ©rifier les transactions et se battre pour une rĂ©compense. Aujourd'hui, c'est un rĂ©seau de deux classes (mineurs et utilisateurs), qui est gĂ©rĂ© par les propriĂ©taires de grandes piscines.
  • Lorsqu'un assemblage de blocs est transfĂ©rĂ© vers un nĹ“ud, l'une des exigences de base de la thĂ©orie du consensus devient invalide: l'accord n'est pas basĂ© sur le consensus majoritaire sur les informations qui seront stockĂ©es dans la blockchain. Le seul accord atteint est la mĂ©thode de sĂ©lection du nĹ“ud leader.
  • Un goulot d'Ă©tranglement, ou point de dĂ©faillance unique, est introduit: un nĹ“ud doit diffuser un bloc Ă  chaque autre nĹ“ud.
  • L'efficacitĂ© n'est pas la meilleure: les gros blocs de donnĂ©es sont plus sujets aux erreurs de transmission et Ă  la retransmission de paquets de taille maximale.
  • La redondance est de près de 100%: chaque transaction incluse dans le bloc a dĂ©jĂ  Ă©tĂ© reçue par chaque nĹ“ud sĂ©parĂ©ment lorsque la transaction a Ă©tĂ© initialement terminĂ©e.

Meilleure analogie


En réfléchissant à l'analogie avec le problème de parvenir à une solution commune dans un environnement non organisé et peu fiable, nous pourrions utiliser l'analogie de l'armée sans grade, mais ce ne serait pas très intuitif.

Une meilleure analogie serait la tâche de déterminer le cours de clôture quotidien de la bourse. Par cette analogie, de nombreux acheteurs et vendeurs déterminent le cours de clôture quotidien des actions en utilisant le processus stochastique, sans décideur spécifique pour personne d'autre.

Il n'y a pas de «bonne» réponse au cours de bourse, mais seulement un cours de clôture quotidien convenu.

image

De même, dans un bloc, plusieurs variables, telles que l'ordre des transactions, peuvent déterminer la composition finale du bloc. Il n'y a pas de composition «correcte» de blocs, une seule avec laquelle les nœuds sont cohérents.

Les protocoles de consensus basés sur une analogie plus distribuée pourraient éviter la tendance à la centralisation et le besoin de nœuds intermédiaires typiques des protocoles basés sur les leaders.

Exemples d'intermédiaires de réseau:

  • Les mineurs, fabricants ou superviseurs qui participent volontairement ou sont impliquĂ©s dans la fourniture de services de rĂ©seau,
  • Noeuds spĂ©ciaux de systèmes fĂ©dĂ©rĂ©s intĂ©ressĂ©s par la rĂ©ussite du rĂ©seau,
  • NĹ“uds sĂ©lectionnĂ©s avec certains critères de gestion de rĂ©seau,
  • Noeuds appartenant Ă  des entreprises ou institutions de confiance
  • Acteurs spĂ©ciaux, tels que les Ă©changes de devises centralisĂ©s qui possèdent des portefeuilles d'utilisateurs.

Quel est le problème avec les intermédiaires?


Tout d'abord, c'est une question de coût: si les intermédiaires font un travail utile, par exemple pour vérifier les transactions, ils doivent être récompensés.

C'est aussi une question de confiance: les clients utilisant un réseau avec des intermédiaires doivent faire confiance:

  • Que l'intermĂ©diaire ne donne pas la prĂ©fĂ©rence Ă  des utilisateurs ou transactions spĂ©cifiques,
  • Que l'intermĂ©diaire n'a pas Ă©tĂ© ou ne sera pas capturĂ© par l'attaquant,
  • Que le système intermĂ©diaire ne s'arrĂŞte pas, ne subit pas d'attaque DoS, de dĂ©faillance du système ou toute autre raison qui affectera ou retardera les transactions des clients,
  • Le logiciel système et les donnĂ©es intermĂ©diaires sont fiables, de sorte que l'intĂ©gritĂ© et la sĂ©curitĂ© des donnĂ©es sont garanties.
  • Qu'ils sont vraiment connectĂ©s Ă  un système de confiance, et non Ă  un copieur (par exemple, avec un autre système qui prĂ©tend ĂŞtre un intermĂ©diaire de confiance), et
  • Qu'aucun autre Ă©vĂ©nement imprĂ©visible ne se produira. RĂ©cemment, par exemple, le propriĂ©taire du bureau de change canadien Quadriga est dĂ©cĂ©dĂ© ou a disparu. En consĂ©quence, des millions de dollars de fonds clients manquent.

Enfin, c'est une question de disponibilité des données. Si le réseau possède une classe de nœuds privilégiée ou limitée qui contrôle la blockchain, la plupart des nœuds n'ont pas un accès instantané à la réplique de la blockchain actuelle. Cela peut interférer avec le développement d'applications en temps réel, telles que les applications de trading automatisées.

Est-il trop tard pour changer le modèle de consensus dans la blockchain?


La plupart des experts vous diront que la fonction principale des protocoles négociés est de maintenir la sécurité du réseau. Cette vue mélange deux problèmes. La sécurité est nécessaire, mais il s'agit d'une exigence complètement différente qui peut être résolue par d'autres moyens.

Cependant, de nombreux développeurs pensent que le consensus signifie choisir un leader et que le consensus est nécessaire pour maintenir la sécurité.

Avec le recul, si nous réfléchissions à une analogie mieux distribuée, l'étude pourrait aller dans une direction différente, offrant des approches stochastiques, et pourrait nous conduire à un développement plus précoce de solutions mieux distribuées sans intermédiaires.

Maintenant, c'est un problème d'éducation, pas un problème technique. La plupart des chercheurs, consultants et experts en réseaux cryptographiques possèdent tous les détails de PoW, PoS, DPoS et des dizaines d'alternatives basées sur le même modèle basé sur le leader.

Ces quelques solutions qui ne sont pas basées sur des leaders ne sont pas des solutions de blockchain: ce sont des solutions où chaque transaction est traitée séparément.

D'autre part, la plupart des gens et 95% des entreprises, selon une enquête récente, comprennent le potentiel de la technologie blockchain.

Il est urgent de passer d'un modèle décentralisé à un modèle distribué pour libérer le véritable potentiel de la blockchain, résoudre les problèmes d'évolutivité et exécuter la blockchain sur n'importe quel appareil utilisateur sans intermédiaires.

Source: https://habr.com/ru/post/fr447108/


All Articles