-
Crypto-monnaies
-
Plateformes d'échange
-
Médias
Toutes les langues
Crypto-monnaies
Plateformes d'échange
Médias
L'objectif d'Harmony est de créer une blockchain basée sur des fragments avec une évolutivité et une sécurité totales. Elle a étudié de nombreuses solutions de blockchain sur le marché et a proposé son propre plan de mise en œuvre d'ingénierie. C'est là que Harmony mérite l'attention de tous.
C'est un objectif très élevé. Tout d'abord, il a une évolutivité complète. Le sharding d'Harmony inclut non seulement la confirmation des transactions, la communication réseau, mais aussi le sharding de l'état de la blockchain. Deuxièmement, nous devons assurer la sécurité de la fragmentation. Le sharding d'Harmony est basé sur le processus DRG (Distributed Random Generation), ce qui le rend imprévisible, équitable, vérifiable et évolutif. De plus, Harmony adopte le mécanisme PoS au lieu du mécanisme PoW pour sélectionner les validateurs, et il a sa propre optimisation pour le mécanisme de consensus PBFT. Le PoS a un certain seuil, non seulement pour garantir que les petits acteurs peuvent participer au réseau et gagner des revenus, mais aussi pour empêcher les attaquants malveillants de prendre le contrôle d'un seul fragment. Harmony implémente la diffusion d'informations au sein d'une partition et sur un réseau de partitions à l'aide de l'algorithme de dispersion adaptative des informations. Harmony utilise également le routage Kademlia pour réaliser des transactions entre fragments qui évoluent de manière logarithmique à mesure que le nombre de fragments augmente. Avec le partitionnement, la cohérence des transactions inter-fragments doit également être maintenue.Harmony prend également en charge les transactions inter-fragments, prend en charge la communication directe entre les partitions et assure la cohérence des transactions inter-fragments via un mécanisme de verrouillage atomique.
Dans l'ensemble, Harmony essaie de fournir une blockchain évolutive, sécurisée et décentralisée en optimisant la couche de protocole et la couche réseau, qui peuvent prendre en charge des scénarios d'application décentralisée plus courants, y compris les jeux, les échanges décentralisés, l'IoT, etc. C'est une vision ambitieuse.
À l'heure actuelle, de nombreux nouveaux projets de blockchain tentent d'augmenter la vitesse de traitement des transactions (débit), mais de nouvelles solutions comme dPoS dans EOS et TRON, Rootchain dans Quarkchain, etc. doivent sacrifier certains éléments clés, par exemple, la décentralisation et la sécurité peuvent améliorer considérablement les performances.
Bien qu'un tel système fonctionne très rapidement, il ne peut être considéré que comme un système semi-centralisé, qui perd le concept de base de la blockchain - la décentralisation.
En tant que solution pour l'expansion de la blockchain, le sharding peut améliorer considérablement les performances du réseau sans compromettre la sécurité et la décentralisation.
Harmony résout le problème de l'expansion de la blockchain en introduisant le sharding d'état dans la blockchain. Étant donné que chaque nœud n'a besoin que d'exécuter et de stocker une partie des données de la blockchain pour terminer la transaction, la charge de travail du traitement des transactions est partagée par Cela améliore considérablement le évolutivité du bloc lui-même.
La mise à l'échelle est l'un des problèmes dont on parle le plus dans l'industrie de la blockchain à l'heure actuelle. Celui qui résoudra ce problème en premier deviendra le leader de l'industrie. Bien sûr, le postulat ici est qu'en partant du principe de la prise en compte des deux attributs de la sécurité et de la décentralisation, si une percée est réalisée en sacrifiant ces deux attributs clés, ce n'est qu'une percée de bas niveau, ou on se dirige vers une voie de développement différente.
En partant du principe de la prise en compte de la sécurité et de la décentralisation, le sharding est l'une des voies les plus importantes pour l'expansion de la blockchain. C'est l'objectif de l'exploration d'Harmony. Bien qu'il existe d'autres projets de blockchain de partage, y compris Ethereum 2.0, il existe également des projets inter-chaînes. Si Harmony peut explorer le partage, il peut être plus solide que d'autres projets. Ensuite, il a une chance d'obtenir une longueur d'avance sur la concurrence.
Bien sûr, l'équipe Harmony a choisi une route difficile, qui demande beaucoup d'efforts et qui a des concurrents très forts. Selon l'introduction de l'équipe Harmony à Blue Fox Notes, le projet a réalisé un financement de 18 millions de dollars américains et les investisseurs disposent de fonds de la Silicon Valley, d'Australie, de Hong Kong et de Singapour, et il a pris un bon départ.
D'après le livre blanc d'Harmony, on peut voir que l'équipe a une réflexion technique claire et a profondément réfléchi aux problèmes à résoudre lors de la mise en œuvre de projets de sharding. L'équipe est principalement composée de personnel de R&D, principalement de l'arrière-plan de Microsoft, Google et Apple.
Mécanisme de consensus FBFT évolutif
Harmony n'adopte pas le PoW, mais le mécanisme PoS, les utilisateurs obtiennent les droits et les récompenses de la production de blocs en jalonnant des jetons. Dans le même temps, Harmony utilise le mécanisme FBPT dans le processus de production et de vérification des blocs. Avant d'expliquer ce qu'est FBFT, nous savons que PBFT est une tolérance aux pannes byzantine pratique. Étant donné que PBFT dispose d'un mécanisme dont les vérificateurs ont besoin pour diffuser leurs votes à d'autres vérificateurs, cela augmente considérablement la complexité de la communication de PBFT, ce qui rend difficile l'extension de la blockchain si le système comporte des centaines ou des milliers de nœuds.
Pour le problème que PBFT est difficile à développer, FBFT a été optimisé, et FBFT peut réaliser une expansion linéaire en termes de complexité de communication. Concrètement, comment y parvenir ? Dans le mécanisme FBFT, il a également les rôles de leader et de vérificateur, et n'oblige pas tous les vérificateurs à diffuser leurs votes.Le leader exécute un processus de signature multi-signatures pour collecter les votes des vérificateurs.La taille de cette multi-signature est O(1 ), puis diffuser le vote. Cela signifie que chaque validateur n'a besoin de recevoir qu'une seule multisignature, ce qui réduit la complexité de la communication de O(n^2) à O(n).
Le mécanisme de signature Schnorr peut réaliser une agrégation multi-signatures de taille constante et former un arbre de multidiffusion entre les vérificateurs pour faciliter la livraison des messages, mais la multi-signature Schnorr nécessite des tours d'engagement secrets, ce qui entraînera le problème de deux allers-retours pour un seul multi-signature , FBFT utilise le schéma multi-signature BLS (Boneh-Lynn-Shacham) pour optimiser ce problème, et un seul aller-retour est nécessaire pour y parvenir. Par conséquent, FBFT est 50 % plus rapide que BFT en utilisant le mécanisme de signature Schonorr. Enfin, Harmony utilise également le code fontaine RaptorQ pour accélérer le processus de diffusion en bloc.
Une chose à noter est que tous les vérificateurs de consensus Harmony sont sélectionnés sur la base du mécanisme PoS. Les validateurs avec plus d'actions avec droit de vote ont plus de votes que tout le monde, plutôt que de signer un vote à la fois. Cela signifie également que ce que le leader attend, ce n'est pas la signature des vérificateurs 2f+1, mais les actions avec droit de vote des vérificateurs 2f+1.
Algorithme aléatoire intégrant VRF et VDF
Pour la blockchain, il doit être étendu rapidement. Par exemple, le FBFT mentionné ci-dessus peut obtenir une confirmation de transaction plus rapide, mais la sécurité est toujours la plus importante importante de. Dans le processus de validation des blocs, le maintien du caractère aléatoire est une priorité absolue pour la sécurité.
Un bon algorithme aléatoire doit être à la fois imprévisible, vérifiable, non discriminatoire et évolutif. Certains protocoles peuvent être imprévisibles, non discriminatoires et vérifiables, mais l'évolutivité est faible, comme le protocole RandHound. Ils ont leurs propres avantages et inconvénients.
Harmony propose un algorithme de génération aléatoire qui combine les technologies VRF et VDF. VRF est une fonction aléatoire vérifiable et VDF est une fonction de retard vérifiable. Algorand utilise une classification cryptographique basée sur VRF (Verifiable Random Function) pour sélectionner un groupe de vérification de consensus ; Ethereum 2.0 propose VDF (Verifiable Delay Function) pour retarder la révélation du nombre aléatoire réel et empêcher l'attaque du dernier révélateur.
En raison de VDF, le leader ne peut pas connaître le nombre aléatoire final réel tant que pRnd n'est pas soumis à la blockchain. Puisque le VDF est utilisé pour calculer Rnd, pRnd a déjà été commis dans le bloc précédent, donc le leader ne peut pas le manipuler. Si le leader ne soumet pas pRnd pour arrêter le protocole, FBFT dispose d'un mécanisme de temporisation pour changer de leader et redémarrer le protocole. De plus, la complexité du protocole DRG adopté par Harmony est O(n), ce qui est au moins un ordre de grandeur plus rapide que certains projets.
Sharding basé sur PoS
PoW et PoS doivent empêcher les attaques Sybil. La chaîne PoW utilise la puissance de calcul pour prouver son identité, et obtient ainsi le droit de produire des blocs. Harmony adopte le mécanisme PoS, et PoS utilise le gage de jeton d'équité du validateur pour le prouver. Pour devenir un validateur d'Harmony, vous devez d'abord miser certains jetons. Plus il y a de jetons jalonnés, plus vous pouvez obtenir d'actions avec droit de vote de validateur. Chaque action avec droit de vote correspond à une voix pour le consensus BFT.
Les jalonneurs obtiennent des actions avec droit de vote proportionnelles aux jetons qu'ils jalonnent. Les actions avec droit de vote sont attribuées au hasard à des fragments. Les parties prenantes qui deviennent des validateurs de partition obtiennent les droits de vote correspondants dans la partition.
Dans le processus de consensus et de partage d'Harmony, il existe un concept de cycles (Epoques). Les périodes sont des intervalles de temps prédéterminés pendant lesquels la structure de partition est fixe et chaque partition exécute en continu un consensus avec le même ensemble de validateurs.
Au début de chaque cycle, un nombre aléatoire sera généré par le protocole DRG, et la structure de fragmentation sera déterminée en fonction du nombre aléatoire. Les validateurs doivent jalonner leurs jetons dans la période précédente s'ils souhaitent valider des transactions pendant une certaine période. La date limite de mise en gage est avant que la préimage de nombre aléatoire pRnd ne soit soumise à la blockchain.
Au début de chaque nouveau cycle de validation, les actions avec droit de vote du nouveau validateur sont attribuées au hasard aux shards. Les nouveaux validateurs rejoignent un fragment et leurs actions avec droit de vote sont distribuées. Le consensus d'éclat nécessite des signatures en bloc avec au moins 2f + 1 actions avec droit de vote.
Afin d'assurer la sécurité d'un seul shard, Harmony adopte un PoS à seuil adaptatif, qui ajuste le prix des actions avec droit de vote par le biais d'algorithmes de manière adaptative, et attribue des actions avec droit de vote individuelles aux shards au lieu d'une seule vérification By.
Afin d'empêcher les attaques de jetons en gage à grande échelle, Harmony ne fragmente pas les vérificateurs, mais les fragmente par les actions avec droit de vote pour empêcher un grand nombre de vérificateurs détenteurs de pièces d'occuper un seul fragment. Un seul validateur peut être attribué à plusieurs fragments s'il a des actions avec droit de vote attribuées à différents fragments. Le leader d'un fragment est déterminé à être le validateur avec la première part de vote dans un certain groupe.
En même temps, les parts avec droit de vote sont si petites que les attaquants malveillants ne peuvent pas rassembler le pouvoir dans un seul fragment. Après calcul, Harmony estime qu'une fois plus de 600 actions avec droit de vote, la haute sécurité du sharding peut être garantie.
Compte tenu des avantages économiques, les validateurs avec plus de jetons jalonnés ont plus de chances d'être élus en tant que leaders. En cas de comportement malveillant, les validateurs qui ont jalonné des jetons craignent que leurs intérêts ne soient diminués, assurant ainsi la sécurité du réseau.
En plus des mécanismes ci-dessus, Harmony adopte également un schéma de partitionnement remanié pour améliorer sa sécurité. Car si les shards restent structurés, les attaquants malveillants ont toujours la possibilité de mener leurs attaques. Tels que la mise en œuvre d'une attaque de cycle statique, d'une attaque d'adaptation lente ou d'une attaque d'adaptation complète, etc. Harmony utilise un mécanisme de repartitionnement basé sur les règles de Cuckoo pour résoudre ces problèmes. A la fin d'un cycle de validation au cours duquel les validateurs qui retirent leur mise sont expulsés du réseau, ceux qui conservent leur mise restent.
Synchronisation d'état rapide
Le premier bloc d'une époque contient un lien de hachage vers le premier bloc de l'époque précédente. Cela permet de synchroniser rapidement l'état des nouveaux nœuds, où ils peuvent s'appuyer sur des blocs gris pour vérifier rapidement l'état actuel.
Si vous avez besoin de télécharger l'intégralité de l'historique de la blockchain pour vérifier les transactions des fragments, le temps est trop long. Si vous avez synchronisé l'historique de la blockchain Ethereum, vous saurez que cela peut prendre plusieurs jours. Harmony n'a qu'à télécharger l'état actuel dans une fenêtre de temps de cycle.
Dans Harmony, les nouveaux validateurs rejoignant une partition téléchargent d'abord l'état actuel des tentatives pour cette partition. Les nouveaux nœuds téléchargent les en-têtes de bloc historiques et vérifient les en-têtes de bloc en vérifiant leurs signatures. L'état du fragment est valide tant qu'il existe des traces cryptographiques depuis l'état actuel jusqu'au bloc de genèse, telles que des pointeurs de hachage et des signatures.
Dans le même temps, afin de réduire le coût et le temps de calcul de la vérification de la signature, le premier bloc de chaque cycle d'Harmony contient un pointeur de hachage supplémentaire pointant vers le premier bloc du cycle précédent. De cette façon, un nouveau nœud peut ignorer d'autres blocs dans un cycle lors du suivi de son pointeur de hachage vers le bloc de genèse, accélérant ainsi la vérification de l'état actuel de la blockchain. Enfin, pour optimiser davantage le processus de synchronisation d'état, Harmony maintiendra l'état de la blockchain lui-même aussi petit que possible.
Liens connexes :
https://www.qukuaiwang.com.cn/szhb/3285.html###