La vision future de la blockchain est la décentralisation, la sécurité et l'évolutivité. Mais généralement, la blockchain ne peut réaliser que deux de ces trois exigences, et satisfaire à ces trois exigences est ce qu'on appelle le problème du triangle impossible de la blockchain. Depuis des années, les gens explorent comment résoudre ce dilemme, comment améliorer le débit et la vitesse des transactions de la blockchain tout en garantissant la décentralisation et la sécurité, c'est-à-dire résoudre le problème de l'évolutivité, qui est l'un des sujets de discussion les plus chauds dans le processus de développement actuel de la blockchain.
Définissons d'abord de manière générale la décentralisation, la sécurité et l'évolutivité de la blockchain :
Décentralisé : Tout le monde peut devenir un nœud participant à la production et à la vérification du système blockchain. Plus il y a de nœuds, plus le degré de décentralisation est élevé, garantissant ainsi que le réseau n'est pas contrôlé par un petit groupe de grands participants centralisés.
Sécurité : Plus le coût pour obtenir le contrôle d'un système blockchain est élevé, plus la sécurité est élevée, alors la chaîne peut résister à un plus grand pourcentage d'attaques de participants.
Scalabilité : capacité de la blockchain à traiter un grand nombre de transactions.
La première grande bifurcation dure du réseau Bitcoin est née d'un problème d'extensibilité. Avec l'augmentation du nombre d'utilisateurs et du volume des transactions Bitcoin, le réseau Bitcoin, avec une limite de 1 Mo par bloc, a commencé à faire face à des problèmes de congestion ; à partir de 2015, la communauté Bitcoin a connu des divergences sur la question de l'extensibilité, d'un côté se trouvaient les partisans de l'augmentation de la taille des blocs, représentés par Bitcoin ABC, et de l'autre côté, les partisans des blocs plus petits, représentés par Bitcoin Core, qui estimaient qu'il fallait utiliser la solution Segwit pour optimiser la structure de la chaîne principale. Le 1er août 2017, Bitcoin ABC a lancé son propre système client développé jusqu'à 8 Mo, ce qui a conduit à la première grande bifurcation dure de l'histoire de Bitcoin, donnant également naissance à une nouvelle cryptomonnaie, le BCH.
De même, le réseau Ethereum a également choisi de sacrifier une partie de sa profondeur pour garantir la sécurité et la décentralisation du réseau ; bien que le réseau Ethereum ne limite pas le volume des transactions comme le fait le réseau Bitcoin en restreignant la taille des blocs, il a en quelque sorte transformé cela en fixant un plafond sur les frais de carburant pouvant être acceptés par un seul bloc, mais l'objectif reste d'atteindre un consensus sans confiance et d'assurer une large distribution des nœuds.
Depuis l'émergence de CryptoKitties en 2017, de l'été DeFi, puis des applications on-chain telles que GameFi et NFT, la demande du marché pour le débit n'a cessé d'augmenter. Cependant, même Ethereum, qui est Turing-complet, ne peut traiter que 15 à 45 transactions par seconde, ce qui entraîne une augmentation des coûts de transaction, un allongement des délais de règlement, et la plupart des Dapps ont du mal à supporter les coûts d'exploitation. L'ensemble du réseau devient lent et coûteux pour les utilisateurs, et le problème de l'évolutivité de la blockchain doit être résolu d'urgence. L'idéal en matière de solutions d'évolutivité est d'améliorer la vitesse des transactions et le débit du réseau blockchain autant que possible, sans sacrifier la décentralisation et la sécurité.
2. Catégories des solutions d'extensibilité
Nous classons les solutions d'extension en deux grandes catégories : l'extension on-chain et l'extension off-chain, en nous basant sur le critère "s'il y a un changement de couche de la chaîne principale".
2.1 Scalabilité on-chain
Concepts clés : une solution visant à atteindre un effet d'extension en modifiant une couche de protocole de la chaîne principale, la principale solution actuelle étant le sharding.
Il existe plusieurs solutions pour l'extensibilité en chaîne, cet article ne les développera pas, voici un bref aperçu de deux solutions :
La première solution consiste à élargir l'espace de bloc, c'est-à-dire à augmenter le nombre de transactions emballées dans chaque bloc, mais cela augmentera les exigences pour les dispositifs de nœuds haute performance, augmentera la barrière à l'entrée des nœuds et réduira le degré de "décentralisation".
La solution deux est le sharding, qui divise le grand livre de la blockchain en plusieurs parties. Au lieu que chaque nœud participe à l'intégralité de la comptabilité, différents shards, c'est-à-dire différents nœuds, sont responsables de différentes comptabilités, permettant un calcul en parallèle qui peut traiter plusieurs transactions simultanément ; cela peut réduire la pression de calcul sur les nœuds et le seuil d'entrée, améliorer la vitesse de traitement des transactions et le degré de décentralisation ; mais cela signifie que la puissance de calcul du réseau est répartie, ce qui peut diminuer la "sécurité" de l'ensemble du réseau.
Modifier le code d'un protocole principal peut avoir des conséquences négatives imprévisibles, car la moindre faille de sécurité sous-jacente peut gravement menacer la sécurité de l'ensemble du réseau, qui pourrait être contraint de forker ou d'interrompre des mises à jour de réparation. Par exemple, l'incident de vulnérabilité d'inflation de Zcash en 2018 : le code de Zcash est modifié à partir du code de la version 0.11.2 de Bitcoin. En 2018, un ingénieur a découvert une faille critique dans le code sous-jacent, à savoir que les jetons pouvaient être émis en quantité illimitée, et l'équipe a ensuite passé 8 mois à corriger secrètement le problème, qui n'a été rendu public qu'après la correction de la vulnérabilité.
2.2 off-chain expansion
Concept clé : solution d'extension qui ne modifie pas le protocole de la couche principale existante.
Les solutions d'extension off-chain peuvent être subdivisées en Layer2 et d'autres solutions :
Couche 2 : Canaux d'État, Plasma, Rollups
Autres solutions : Sidechains, Validium
3. off-chain l'extension de la solution
3.1 Canaux d'état
3.1.1 Résumé
Les canaux d'état stipulent que les utilisateurs n'ont besoin d'interagir avec la chaîne principale que lors de l'ouverture, de la fermeture ou de la résolution d'un litige, et que les interactions entre utilisateurs se déroulent hors chaîne, afin de réduire le temps et le coût des transactions pour les utilisateurs, tout en permettant un nombre illimité de transactions.
Les canaux d'état sont un protocole P2P simple, adapté aux "applications basées sur des tours", par exemple, un jeu d'échecs à deux. Chaque canal est géré par un contrat intelligent multi-signature exécuté sur la chaîne principale, qui contrôle les actifs déposés dans le canal, vérifie les mises à jour d'état et arbitrage les différends entre les participants. Après le déploiement du contrat sur le réseau blockchain, les participants déposent des fonds et les verrouillent. Une fois que les deux parties ont signé et confirmé, le canal est officiellement ouvert. Le canal permet des transactions off-chain gratuites entre les participants, sans limites de nombre. Les participants envoient alternativement des mises à jour d'état à l'autre, en attendant la confirmation de signature de l'autre partie. Une fois que l'autre partie a confirmé par signature, cette mise à jour d'état est considérée comme complétée. Normalement, les mises à jour d'état convenues par les deux parties ne sont pas téléchargées sur la chaîne principale; seules les confirmations de la chaîne principale sont nécessaires en cas de différend ou de fermeture du canal. Lorsqu'il est nécessaire de fermer le canal, tout participant peut faire une demande de transaction sur la chaîne principale. Si la demande de retrait obtient l'approbation de signature unanime, elle est exécutée immédiatement sur la chaîne, c'est-à-dire que le contrat intelligent distribue les fonds verrouillés restants en fonction du solde de chaque participant à l'état final du canal; si d'autres participants n'ont pas approuvé par signature, tous doivent attendre la fin de la "période de contestation" pour recevoir les fonds restants.
En résumé, le schéma des canaux d'état peut considérablement réduire la charge de calcul du réseau principal, améliorer la vitesse des transactions et diminuer le coût des transactions.
3.1.2 Chronologie
2015/02, Joseph Poon et Thaddeus Dryja ont publié un projet de livre blanc sur le réseau Lightning.
En novembre 2015, Jeff Coleman a d'abord résumé de manière systématique le concept de State Channel, en proposant que le Payment Channel de Bitcoin est un sous-cas du concept de State Channel.
2016/01, Joseph Poon et Thaddeus Dryja ont officiellement publié le livre blanc « The Bitcoin Lightning Network: Scalable Off-Chain Instant Payments » proposant une solution d'extension pour le réseau Lightning de Bitcoin, le Payment Channel.
En novembre 2017, la première spécification de conception concernant les State Channels basée sur le cadre Payment Channel, Sprites, a été proposée.
2018/06, Counterfactual a proposé un design très détaillé des Generalized State Channels, c'est le premier design entièrement lié aux State Channels.
2018/10, l'article Generalised State Channel Networks a proposé les concepts de State Channel Networks et de Virtual Channels.
2019/02, le concept de canaux d'état a été étendu aux N-Party Channels, Nitro est le premier protocole basé sur cette idée.
2019/10, Pisa a élargi le concept de Watchtowers pour résoudre le problème de la nécessité d'une connexion continue pour tous les participants.
2020/03, Hydra a proposé des Fast Isomorphic Channels.
3.1.3 Principes techniques
Le principe fondamental des canaux d'état est :
Les participants verrouillent des actifs dans le contrat intelligent de la chaîne principale et ouvrent un canal d'état.
Les participants effectuent des mises à jour d'état off-chain, chaque interaction nécessitant une confirmation par signature des deux parties.
En cas de besoin de fermer le canal ou en cas de litige, soumettez l'état final au contrat principal pour vérification et répartition des actifs.
En cas de litige, des preuves peuvent être soumises pour contester pendant la période de contestation.
Les avantages des canaux d'état sont qu'ils permettent des transactions rapides et à faible coût off-chain, tandis que les inconvénients sont que les participants doivent rester en ligne en permanence et qu'il existe un problème de blocage de la liquidité.
3.1.4 Avantages et inconvénients
Avantages :
Haute capacité de traitement et faible latence
Coût de transaction faible
Protéger la vie privée
Inconvénients:
Les participants doivent rester en ligne en continu.
Verrouillage des fonds
Non applicable aux applications multi-parties
Il est nécessaire de déposer des fonds à l'avance
3.1.5 Application
Principales applications incluent :
Réseau Lightning Bitcoin
Utilisé pour les paiements en petites quantités de Bitcoin
Première version du mainnet publiée en mars 2018
Actuellement, il y a environ 80 000 canaux de paiement, 5000 BTC de fonds verrouillés
Réseau Lightning Ethereum
Utilisé pour le paiement des tokens ERC20 d'Ethereum
Fondé en 2017, le mainnet a été lancé en mai 2020.
actuellement peu utilisé
Celer Network
Augmentation du réseau de canaux d'état généraux avec une couche d'incitation
Fondée en 2018, mise en ligne sur le mainnet en 2019
Prend en charge divers scénarios d'application tels que les jeux, les paiements, etc.
3.1.6 Comparaison d'applications
Le réseau Lightning de Bitcoin, le réseau Lightning d'Ethereum et le Celer Network présentent quelques différences en termes de mise en œuvre technique, de cas d'application et d'état de développement. Le réseau Lightning est relativement mature, le réseau Lightning est moins utilisé, et le Celer Network a élargi ses cas d'application en ajoutant une couche d'incitation.
3.2 Sidechains
3.2.1 Résumé
Les sidechains sont une forme de blockchain créée pour accélérer les transactions sur la chaîne principale. Elles peuvent utiliser des contrats plus complexes, ou améliorer le mécanisme de consensus, ou ajuster les paramètres de bloc pour que la sidechain remplisse des fonctions spécifiques. Les résultats des transactions sur la sidechain sont finalement enregistrés du côté des validateurs lorsqu'ils sont renvoyés à la chaîne principale. Ce modèle de blockchain n'est pas une nouvelle forme de blockchain, mais plutôt une infrastructure qui s'attache à la chaîne principale pour l'aider à résoudre des problèmes.
3.2.2 Chronologie
Janvier 2012, le concept de sidechain de Bitcoin a été proposé dans les salons de discussion.
En octobre 2014, le papier sur les sidechains de Bitcoin a été publié pour la première fois.
2017/04, le réseau POA a lancé le testnet d'une sidechain basée sur le consensus Proof of Authentication d'Ethereum.
2017/10, lancement de Matic Network
2017/12, lancement du réseau principal de POA Network
2018/01, lancement du testnet Skales
2018/10, lancement du testnet xDai Chain
2020/06, lancement du réseau principal Skale
2020/06, le réseau principal de la chaîne PoS Matic de la sidechain Ethereum est lancé.
2021/02, la marque Matic Network a été renommée Polygon Network
2021/02, le réseau principal de la chaîne latérale Ronin du jeu Axie Infinity a commencé à fonctionner.
2021/12, xDai Chain a fusionné avec Gnosis Dao pour devenir Gnosis Chain
2022/03, le réseau POA a été fusionné avec Gnosis Chain
3.2.3 Principes techniques
Le principe fondamental des chaînes latérales est :
La chaîne principale verrouille les actifs, et la chaîne latérale génère les actifs correspondants.
La chaîne latérale fonctionne de manière indépendante, avec son propre mécanisme de consensus.
Les chaînes latérales soumettent régulièrement les changements d'état à la chaîne principale.
Cette page peut inclure du contenu de tiers fourni à des fins d'information uniquement. Gate ne garantit ni l'exactitude ni la validité de ces contenus, n’endosse pas les opinions exprimées, et ne fournit aucun conseil financier ou professionnel à travers ces informations. Voir la section Avertissement pour plus de détails.
10 J'aime
Récompense
10
3
Partager
Commentaire
0/400
LightningLady
· 07-24 20:33
Débutant, ne prenez pas de levier élevé pour investir~ Les babes, regardez plus d'articles techniques.
Voir l'originalRépondre0
MentalWealthHarvester
· 07-24 20:25
Triangle impossible fiable
Voir l'originalRépondre0
GateUser-5854de8b
· 07-24 20:25
Blockchain est encore en train de parler de ces choses futiles.
Comparaison approfondie des technologies d'extension off-chain : State Channels, Sidechains et leurs applications
Analyse approfondie de l'extension off-chain
Auteur : Cobo Ventures
1. La nécessité de l'évolutivité
La vision future de la blockchain est la décentralisation, la sécurité et l'évolutivité. Mais généralement, la blockchain ne peut réaliser que deux de ces trois exigences, et satisfaire à ces trois exigences est ce qu'on appelle le problème du triangle impossible de la blockchain. Depuis des années, les gens explorent comment résoudre ce dilemme, comment améliorer le débit et la vitesse des transactions de la blockchain tout en garantissant la décentralisation et la sécurité, c'est-à-dire résoudre le problème de l'évolutivité, qui est l'un des sujets de discussion les plus chauds dans le processus de développement actuel de la blockchain.
Définissons d'abord de manière générale la décentralisation, la sécurité et l'évolutivité de la blockchain :
Décentralisé : Tout le monde peut devenir un nœud participant à la production et à la vérification du système blockchain. Plus il y a de nœuds, plus le degré de décentralisation est élevé, garantissant ainsi que le réseau n'est pas contrôlé par un petit groupe de grands participants centralisés.
Sécurité : Plus le coût pour obtenir le contrôle d'un système blockchain est élevé, plus la sécurité est élevée, alors la chaîne peut résister à un plus grand pourcentage d'attaques de participants.
Scalabilité : capacité de la blockchain à traiter un grand nombre de transactions.
La première grande bifurcation dure du réseau Bitcoin est née d'un problème d'extensibilité. Avec l'augmentation du nombre d'utilisateurs et du volume des transactions Bitcoin, le réseau Bitcoin, avec une limite de 1 Mo par bloc, a commencé à faire face à des problèmes de congestion ; à partir de 2015, la communauté Bitcoin a connu des divergences sur la question de l'extensibilité, d'un côté se trouvaient les partisans de l'augmentation de la taille des blocs, représentés par Bitcoin ABC, et de l'autre côté, les partisans des blocs plus petits, représentés par Bitcoin Core, qui estimaient qu'il fallait utiliser la solution Segwit pour optimiser la structure de la chaîne principale. Le 1er août 2017, Bitcoin ABC a lancé son propre système client développé jusqu'à 8 Mo, ce qui a conduit à la première grande bifurcation dure de l'histoire de Bitcoin, donnant également naissance à une nouvelle cryptomonnaie, le BCH.
De même, le réseau Ethereum a également choisi de sacrifier une partie de sa profondeur pour garantir la sécurité et la décentralisation du réseau ; bien que le réseau Ethereum ne limite pas le volume des transactions comme le fait le réseau Bitcoin en restreignant la taille des blocs, il a en quelque sorte transformé cela en fixant un plafond sur les frais de carburant pouvant être acceptés par un seul bloc, mais l'objectif reste d'atteindre un consensus sans confiance et d'assurer une large distribution des nœuds.
Depuis l'émergence de CryptoKitties en 2017, de l'été DeFi, puis des applications on-chain telles que GameFi et NFT, la demande du marché pour le débit n'a cessé d'augmenter. Cependant, même Ethereum, qui est Turing-complet, ne peut traiter que 15 à 45 transactions par seconde, ce qui entraîne une augmentation des coûts de transaction, un allongement des délais de règlement, et la plupart des Dapps ont du mal à supporter les coûts d'exploitation. L'ensemble du réseau devient lent et coûteux pour les utilisateurs, et le problème de l'évolutivité de la blockchain doit être résolu d'urgence. L'idéal en matière de solutions d'évolutivité est d'améliorer la vitesse des transactions et le débit du réseau blockchain autant que possible, sans sacrifier la décentralisation et la sécurité.
2. Catégories des solutions d'extensibilité
Nous classons les solutions d'extension en deux grandes catégories : l'extension on-chain et l'extension off-chain, en nous basant sur le critère "s'il y a un changement de couche de la chaîne principale".
2.1 Scalabilité on-chain
Concepts clés : une solution visant à atteindre un effet d'extension en modifiant une couche de protocole de la chaîne principale, la principale solution actuelle étant le sharding.
Il existe plusieurs solutions pour l'extensibilité en chaîne, cet article ne les développera pas, voici un bref aperçu de deux solutions :
La première solution consiste à élargir l'espace de bloc, c'est-à-dire à augmenter le nombre de transactions emballées dans chaque bloc, mais cela augmentera les exigences pour les dispositifs de nœuds haute performance, augmentera la barrière à l'entrée des nœuds et réduira le degré de "décentralisation".
La solution deux est le sharding, qui divise le grand livre de la blockchain en plusieurs parties. Au lieu que chaque nœud participe à l'intégralité de la comptabilité, différents shards, c'est-à-dire différents nœuds, sont responsables de différentes comptabilités, permettant un calcul en parallèle qui peut traiter plusieurs transactions simultanément ; cela peut réduire la pression de calcul sur les nœuds et le seuil d'entrée, améliorer la vitesse de traitement des transactions et le degré de décentralisation ; mais cela signifie que la puissance de calcul du réseau est répartie, ce qui peut diminuer la "sécurité" de l'ensemble du réseau.
Modifier le code d'un protocole principal peut avoir des conséquences négatives imprévisibles, car la moindre faille de sécurité sous-jacente peut gravement menacer la sécurité de l'ensemble du réseau, qui pourrait être contraint de forker ou d'interrompre des mises à jour de réparation. Par exemple, l'incident de vulnérabilité d'inflation de Zcash en 2018 : le code de Zcash est modifié à partir du code de la version 0.11.2 de Bitcoin. En 2018, un ingénieur a découvert une faille critique dans le code sous-jacent, à savoir que les jetons pouvaient être émis en quantité illimitée, et l'équipe a ensuite passé 8 mois à corriger secrètement le problème, qui n'a été rendu public qu'après la correction de la vulnérabilité.
2.2 off-chain expansion
Concept clé : solution d'extension qui ne modifie pas le protocole de la couche principale existante.
Les solutions d'extension off-chain peuvent être subdivisées en Layer2 et d'autres solutions :
3. off-chain l'extension de la solution
3.1 Canaux d'état
3.1.1 Résumé
Les canaux d'état stipulent que les utilisateurs n'ont besoin d'interagir avec la chaîne principale que lors de l'ouverture, de la fermeture ou de la résolution d'un litige, et que les interactions entre utilisateurs se déroulent hors chaîne, afin de réduire le temps et le coût des transactions pour les utilisateurs, tout en permettant un nombre illimité de transactions.
Les canaux d'état sont un protocole P2P simple, adapté aux "applications basées sur des tours", par exemple, un jeu d'échecs à deux. Chaque canal est géré par un contrat intelligent multi-signature exécuté sur la chaîne principale, qui contrôle les actifs déposés dans le canal, vérifie les mises à jour d'état et arbitrage les différends entre les participants. Après le déploiement du contrat sur le réseau blockchain, les participants déposent des fonds et les verrouillent. Une fois que les deux parties ont signé et confirmé, le canal est officiellement ouvert. Le canal permet des transactions off-chain gratuites entre les participants, sans limites de nombre. Les participants envoient alternativement des mises à jour d'état à l'autre, en attendant la confirmation de signature de l'autre partie. Une fois que l'autre partie a confirmé par signature, cette mise à jour d'état est considérée comme complétée. Normalement, les mises à jour d'état convenues par les deux parties ne sont pas téléchargées sur la chaîne principale; seules les confirmations de la chaîne principale sont nécessaires en cas de différend ou de fermeture du canal. Lorsqu'il est nécessaire de fermer le canal, tout participant peut faire une demande de transaction sur la chaîne principale. Si la demande de retrait obtient l'approbation de signature unanime, elle est exécutée immédiatement sur la chaîne, c'est-à-dire que le contrat intelligent distribue les fonds verrouillés restants en fonction du solde de chaque participant à l'état final du canal; si d'autres participants n'ont pas approuvé par signature, tous doivent attendre la fin de la "période de contestation" pour recevoir les fonds restants.
En résumé, le schéma des canaux d'état peut considérablement réduire la charge de calcul du réseau principal, améliorer la vitesse des transactions et diminuer le coût des transactions.
3.1.2 Chronologie
3.1.3 Principes techniques
Le principe fondamental des canaux d'état est :
Les participants verrouillent des actifs dans le contrat intelligent de la chaîne principale et ouvrent un canal d'état.
Les participants effectuent des mises à jour d'état off-chain, chaque interaction nécessitant une confirmation par signature des deux parties.
En cas de besoin de fermer le canal ou en cas de litige, soumettez l'état final au contrat principal pour vérification et répartition des actifs.
En cas de litige, des preuves peuvent être soumises pour contester pendant la période de contestation.
Les avantages des canaux d'état sont qu'ils permettent des transactions rapides et à faible coût off-chain, tandis que les inconvénients sont que les participants doivent rester en ligne en permanence et qu'il existe un problème de blocage de la liquidité.
3.1.4 Avantages et inconvénients
Avantages :
Inconvénients:
3.1.5 Application
Principales applications incluent :
3.1.6 Comparaison d'applications
Le réseau Lightning de Bitcoin, le réseau Lightning d'Ethereum et le Celer Network présentent quelques différences en termes de mise en œuvre technique, de cas d'application et d'état de développement. Le réseau Lightning est relativement mature, le réseau Lightning est moins utilisé, et le Celer Network a élargi ses cas d'application en ajoutant une couche d'incitation.
3.2 Sidechains
3.2.1 Résumé
Les sidechains sont une forme de blockchain créée pour accélérer les transactions sur la chaîne principale. Elles peuvent utiliser des contrats plus complexes, ou améliorer le mécanisme de consensus, ou ajuster les paramètres de bloc pour que la sidechain remplisse des fonctions spécifiques. Les résultats des transactions sur la sidechain sont finalement enregistrés du côté des validateurs lorsqu'ils sont renvoyés à la chaîne principale. Ce modèle de blockchain n'est pas une nouvelle forme de blockchain, mais plutôt une infrastructure qui s'attache à la chaîne principale pour l'aider à résoudre des problèmes.
3.2.2 Chronologie
3.2.3 Principes techniques
Le principe fondamental des chaînes latérales est :
La chaîne principale verrouille les actifs, et la chaîne latérale génère les actifs correspondants.
La chaîne latérale fonctionne de manière indépendante, avec son propre mécanisme de consensus.
Les chaînes latérales soumettent régulièrement les changements d'état à la chaîne principale.
4