Comment explorer les capacités des blockchains Hyperledger Fabric et Sawtooth

EG 558 : Plongée au cœur des blockchains Hyperledger Fabric et Sawtooth
Le monde de la technologie blockchain évolue rapidement, avec l'émergence de diverses plateformes et frameworks pour répondre aux besoins variés des organisations. Dans cette plongée approfondie dans les blockchains Hyperledger Fabric et Sawtooth, nous explorerons les concepts fondamentaux, les architectures et les fonctionnalités de ces deux plateformes blockchain de premier plan. De la création d'Hyperledger en tant que plateforme blockchain d'entreprise mondiale à la conception modulaire et aux capacités de contrats intelligents sécurisés de Hyperledger Sawtooth, ce guide Cryptopolitan offre des informations précieuses sur le monde de la technologie blockchain.
Introduction à Hyperledger
Hyperledger, une plateforme blockchain d'entreprise mondiale, a été établie par The Linux Foundation en décembre 2015. Initialement composé de 30 participants, il s'est élargi pour englober plus de 120 membres. Hyperledger vise à créer et à maintenir des réseaux et plateformes blockchain open-source pour diverses organisations, fournissant l'infrastructure et les protocoles nécessaires au développement d'outils et de réseaux blockchain. Cette collaboration favorise les initiatives commerciales blockchain en offrant un ensemble de principes, de règles et de méthodes via l'Hyperledger Greenhouse, qui comprend des frameworks et des outils soutenant la technologie blockchain.
Avec une gamme diversifiée de grandes organisations dans la finance, la banque, l'IoT, la gestion de la chaîne d'approvisionnement, la fabrication et la production, ainsi que la technologie, Hyperledger se vante d'une base de membres notable. Des entreprises telles que Bosch, Daimler, IBM, Samsung, Microsoft, Hitachi, American Express, JP Morgan et Visa sont activement impliquées dans la façonnement de l'avenir de la technologie blockchain. De plus, plusieurs entreprises basées sur la blockchain comme Blockforce et ConsenSys contribuent au projet Hyperledger.
Au sein de l'écosystème Hyperledger, divers sous-projets fonctionnent pour améliorer l'efficacité et la qualité des systèmes et services sur un réseau d'ordinateurs. Ces sous-projets incluent Hyperledger Fabric, Hyperledger Indy, Hyperledger Caliper, Hyperledger Burrow, Sawtooth, Composer et Cello. Comprendre les nuances et les différences entre ces projets peut être difficile, en particulier pour les nouveaux venus dans l'espace des cryptomonnaies.
Hyperledger Fabric : Renforcer les applications modulaires et les solutions blockchain sécurisées
Hyperledger Fabric, une initiative open-source de la corporation Hyperledger, sert de fondation robuste pour construire des applications modulaires et stimuler l'innovation dans le domaine de la technologie blockchain. Positionné comme une plateforme blockchain, il permet aux entreprises privées de construire des produits et applications basés sur la blockchain en tirant parti de composants plug-and-play. Au sein de la plateforme Hyperledger, les registres, normes, protocoles et contrats intelligents fonctionnent en harmonie pour permettre des solutions blockchain efficaces et sécurisées.
L'un des principaux avantages d'Hyperledger Fabric réside dans sa capacité à faciliter la ségrégation des données et à accélérer les transactions. En tant que plateforme privée, elle fonctionne sur le principe des droits d'accès, garantissant que seuls les utilisateurs autorisés peuvent se connecter au réseau. En restreignant l'accès au personnel interne, les entreprises peuvent renforcer leur infrastructure contre les entités non autorisées et établir un système réseau exclusif.
Hyperledger Fabric a été spécifiquement conçu pour surmonter les limitations courantes associées aux solutions blockchain traditionnelles, telles que les échanges privés et les contrats confidentiels. Il offre une plateforme flexible et sécurisée pour fournir des services blockchain de qualité industrielle. Le framework intègre des règles robustes pour stocker les informations sur les utilisateurs du réseau et leurs privilèges d'accès, garantissant un contrôle granulaire des points de données. De plus, Hyperledger Fabric prend en charge l'appartenance autorisée, ce qui en fait un choix idéal pour des secteurs comme la finance, la santé et d'autres, où la confidentialité et la conformité réglementaire sont des considérations critiques.
Architecture d'Hyperledger Fabric
Couche de consensus
La couche de consensus assure l'accord sur l'ordre des transactions et valide l'exactitude de la base de données des transactions au sein d'un bloc. Elle communique avec les clients et les pairs du réseau via la couche de communication. En adhérant aux politiques d'approbation et de consensus, elle confirme l'exactitude des transactions dans un bloc proposé. Elle collabore également avec la couche de contrats intelligents pour valider l'exactitude de la base de données de transactions ordonnées, contribuant à la synchronisation des données et à la cohérence des transactions à travers le réseau.
Couche des contrats intelligents
La couche de contrats intelligents valide la validité des transactions en fonction des politiques et des contrats, garantissant que seules les transactions valides sont incluses dans les blocs. Elle comprend deux types : les contrats intelligents installés pour la logique commerciale pré-lancement et les contrats intelligents sur chaîne pour les règles commerciales mises en œuvre par des transactions engagées. Dans Hyperledger Fabric, les contrats intelligents, appelés chaincode, sont développés à l'aide de langages tels que Go, JavaScript (Node.js) et potentiellement Java. Le chaincode s'exécute de manière sécurisée dans un conteneur Docker séparé du processus de pair de validation.
Couche de communication
La couche de communication permet le transfert de messages pair-à-pair entre les nœuds dans un registre partagé. Elle facilite la communication entre la couche de consensus, les clients et les pairs du réseau. Les transactions sont exécutées de manière atomique et séquentielle, traitant le système comme un seul nœud. Une communication réussie garantit que tous les nœuds non défaillants reçoivent les transactions soumises. La couche de sécurité de transport (TLS) assure une communication sécurisée dans Hyperledger Fabric, prenant en charge l'authentification unilatérale et bilatérale.
Abstraction du magasin de données
L'abstraction du magasin de données permet aux modules d'utiliser différents magasins de données. Dans Hyperledger Fabric, les données privées sont stockées dans une base de données dédiée sur les nœuds pairs autorisés, accessibles via le chaincode. Un hachage des données secrètes est enregistré dans les registres de tous les pairs de canal. Hyperledger Fabric prend en charge LevelDB et CouchDB comme bases de données d'état. LevelDB stocke les données du chaincode sous forme de paires clé-valeur, intégrées dans l'activité des pairs. CouchDB, une base de données externe optionnelle, permet des requêtes JSON riches lorsque les données du chaincode sont représentées au format JSON. Un déploiement réussi installe le chaincode « sur » la blockchain.
Abstraction cryptographique
L'abstraction cryptographique permet l'utilisation de différentes techniques ou modules cryptographiques sans affecter les autres composants. La version 2.0 d'Hyperledger Fabric introduit Fabtoken, permettant la création de cryptomonnaies natives. Hyperledger Besu, basé sur Ethereum, est une implémentation publique open-source d'Ethereum compatible avec les plateformes sans permission et le réseau Ethereum. Hyperledger Besu prend en charge le minage CPU et GPU, avec Ethminer utilisé pour les tests de minage GPU. Il est important de noter qu'Hyperledger Fabric ne prend pas en charge les cryptomonnaies comme Bitcoin, mais se concentre sur la fourniture d'infrastructures et de normes pour des applications et systèmes blockchain industriels.
Service d'identité
Le service d'établissement une racine de confiance, gère l'inscription et l'enregistrement des identités, et facilite les changements dans une instance de blockchain. Il gère l'authentification, la permission, et est utilisé par la couche de contrats intelligents pour authentifier et autoriser les entités lors du traitement des transactions. Hyperledger Fabric fournit un service d'identité personnel pour gérer les identifiants utilisateurs et authentifier les participants au réseau, permettant des réseaux autorisés. Les listes de contrôle d'accès ajoutent des couches de permission en autorisant des actions réseau spécifiques. Les Autorités de Certification (CA), comme Hyperledger Fabric CA, gèrent les certificats.
Service de politique
Le service de politique gère les politiques système telles que les endossements, le consensus et la gestion de groupe. Il collabore avec d'autres modules pour appliquer efficacement ces politiques. Dans Hyperledger Fabric, les politiques régissent le processus d'approbation ou de rejet des changements de réseau, des routes et des contrats intelligents. Elles sont établies lors de la configuration initiale du canal et peuvent être modifiées à mesure que le canal évolue. Les politiques distinguent Hyperledger Fabric en garantissant que les transactions sont générées et confirmées par des nœuds réseau approuvés.
API
Le module API permet l'interaction entre les clients et les applications avec les blockchains. Il se compose de trois types d'API dans Hyperledger. L'API admin gère les opérations telles que l'installation en cours d'exécution, le rafraîchissement et le ping. L'API commune accède aux informations sur le Business Network connecté et facilite la création d'actifs, de participants, de transactions et d'événements. L'API runtime permet aux fonctions de transaction d'interroger, d'émettre des événements, de récupérer des registres, d'accéder aux informations des participants et de sérialiser des objets JavaScript. Elle prend également en charge les appels HTTP REST.
Interopérabilité
L'interopérabilité permet la communication et l'interaction entre des instances de blockchain distinctes. Elle repose sur des normes de données et de transactions complètes pour débloquer le plein potentiel de la technologie blockchain. Des industries comme la sécurité alimentaire ont tiré parti des normes de données pour une meilleure visibilité des produits. Cependant, atteindre l'interopérabilité et l'intégration reste un défi majeur dans le secteur de la blockchain, nécessitant des efforts continus pour établir une communication et une collaboration fluides entre divers réseaux blockchain.
Fonctionnalités d'Hyperledger Fabric
Hyperledger Fabric offre une gamme de fonctionnalités de base, notamment :
- Architecture modulaire et autorisée hautement flexible.
- Mécanisme de consensus plug-and-play.
- Modèle de contrat intelligent ouvert pour une mise en œuvre flexible.
- Faible latence pour la finalité/confirmation des transactions.
- Prise en charge d'EVM et Solidity.
- Données interrogeables avec requêtes basées sur les clés et JSON.
- Prise en charge des contrats intelligents multi-langages (Go, Java, JavaScript).
- Confidentialité des données flexible via des canaux et des collections de données privées.
- Modèle d'endossement flexible pour le consensus entre organisations.
- Opérations transparentes, y compris les mises à niveau progressives et le support de versions asymétriques.
Qu'est-ce qu'Hyperledger Sawtooth ?
Hyperledger Sawtooth est une plateforme blockchain d'entreprise qui facilite la création et l'exploitation de réseaux de registres distribués et d'applications. Il privilégie les contrats intelligents sécurisés pour les cas d'utilisation d'entreprise et suit un modèle de blockchain-as-a-service (BaaS).
Hyperledger Sawtooth se distingue par sa conception modulaire, permettant aux organisations et aux consortiums d'établir des politiques adaptées à leurs domaines spécifiques. Les applications peuvent sélectionner des algorithmes transactionnels, de permissionnement et de consensus qui correspondent à leurs exigences commerciales uniques, améliorant la flexibilité par rapport aux systèmes blockchain traditionnels où les fonctionnalités de base et d'application résident sur la même plateforme, ce qui peut avoir un impact sur la sécurité et les performances.
En tant que plateforme blockchain-as-a-service open-source pour les entreprises, Hyperledger Sawtooth permet l'exécution de contrats intelligents personnalisés sans nécessiter une connaissance approfondie de la conception du système de base. Il prend en charge divers algorithmes de consensus, y compris PBFT et PoET, et offre une conception conviviale optimisée pour l'utilisation en entreprise. De plus, Sawtooth garantit un permissionnement séparé, assurant la confidentialité en éliminant les services centralisés qui pourraient exposer des informations sensibles.
Fonctionnant en tant que plateforme modulaire, Hyperledger Sawtooth permet le développement, le déploiement et l'exploitation de registres distribués. Il intègre l'algorithme de consensus innovant « Proof of Elapsed Time » (PoET), utilisant des environnements d'exécution de confiance (TEEs) pour un consensus équitable et efficace. Avec ses algorithmes de consensus enfichables et son support pour les réseaux autorisés et sans permission, Sawtooth fournit un registre distribué qui enregistre les transactions et l'exécution de contrats intelligents sur les nœuds du réseau. Les transactions sont traitées en parallèle pour améliorer les performances.
Pour rationaliser le déploiement et l'exécution des contrats intelligents, Sawtooth propose le moteur de contrats intelligents Sawtooth Lake. La plateforme fournit une API RESTful pour une interaction transparente avec le registre et la soumission de transactions. Hyperledger Sawtooth offre une évolutivité, capable de supporter des réseaux avec des milliers de nœuds et de traiter des millions de transactions par seconde.
Hyperledger Sawtooth est une plateforme flexible et puissante pour construire et déployer des registres distribués. Il répond à diverses applications telles que la gestion de la chaîne d'approvisionnement, le suivi des actifs numériques et les systèmes de vote. En séparant le système de registre de base des environnements spécifiques aux applications, Sawtooth simplifie le développement d'applications tout en maintenant la sécurité du système. Cette approche permet aux développeurs de définir des règles commerciales spécifiques à leurs applications, permettant un hébergement, une gestion et une utilisation faciles dans leur langage de programmation préféré, même en dehors du réseau blockchain de base.
Architecture de Hyperledger Sawtooth
Examinons en détail les composants architecturaux et les fonctions de Hyperledger Sawtooth :
Schéma d'architecture d'Hyperledger Sawtooth (source sawtooth.hyperledger.org/docs/1.2/architecture/)
Clients
Hyperledger Sawtooth suit un modèle client/serveur asynchrone. Les clients envoient des requêtes au serveur, qui répond par zéro ou plusieurs réponses. Les clients peuvent envoyer plusieurs requêtes sans attendre de réponses, et les serveurs peuvent envoyer plusieurs réponses sans attendre de nouvelles requêtes.
API REST
Hyperledger Sawtooth fournit une API REST pragmatique qui permet aux clients d'interagir avec un validateur en utilisant les standards JSON/HTTP courants. L'API REST fonctionne en tant que processus distinct pour la soumission de transactions et la lecture de blocs, avec une interface neutre en langage. Elle est largement documentée à l'aide de la spécification OpenAPI, garantissant clarté et accessibilité pour les machines comme pour les humains. L'API REST prend en charge les codes de statut HTTP courants pour améliorer la qualité, tels que 404 pour « Non trouvé » et 503 pour « Service indisponible ». Elle utilise une enveloppe JSON pour renvoyer des métadonnées aux clients et offre une gestion des erreurs avec des propriétés de code, de titre et de message. Les paramètres de requête sont pris en charge pour spécifier la formation de la requête, et les points de terminaison offrent des références aux ressources du registre Sawtooth, y compris les blocs, les transactions et les métadonnées.
Processeurs de transactions
Les processeurs de transactions valident et gèrent la logique métier des transactions, décidant de les inclure ou non dans l'état. Ils appliquent les modifications des transactions et les ajoutent au bloc suivant. Les nœuds validateurs assurent la validité des signatures de transactions. Une logique supplémentaire peut être ajoutée aux processeurs de transactions pour répondre à des exigences spécifiques. Les gestionnaires de transactions, ajoutés pour traiter les transactions, incluent des fonctions apply et utilitaires. La classe processeur, fournie par le Kit de développement logiciel (SDK), offre des fonctionnalités polyvalentes, tandis que la classe gestionnaire contient la logique métier spécifique à l'application. La classe de processeur de transactions se connecte au validateur et à la classe gestionnaire.
Moteur de consensus
L'API de consensus a été redessinée et déplacée vers un processus distinct appelé « moteur de consensus ». Elle fournit une interface pour les algorithmes de consensus indépendants du langage, élargissant ainsi les options de consensus pour Sawtooth. Le moteur de consensus fonctionne en tant que processus distinct, aux côtés de l'API REST et des processeurs de transactions. Il comprend trois processeurs : BlockPublisher pour la création de blocs candidats, BlockVerifier pour la vérification de la conformité aux règles de consensus, et ForkResolver pour la sélection du prochain bloc qui deviendra la tête de la chaîne.
Validateur
Dans Hyperledger Sawtooth, les nœuds autorisés valident les blocs et les lots de manière similaire. La validation des blocs comprend la vérification des autorisations de transaction sur la chaîne et l'application des règles de validation des blocs sur la chaîne. Les lots sont envoyés au planificateur de transactions. La couche réseau facilite la communication entre les validateurs, l'API REST, les processeurs de transactions et les clients. Elle gère la découverte des pairs, la gestion des transactions, la gestion des blocs et prend en charge les moteurs de consensus. Sawtooth prend en charge à la fois la planification sérielle et parallèle des transactions et gère efficacement les transactions modifiant les mêmes adresses d'état. Le processus du validateur se compose du contrôleur de chaîne, responsable du maintien du dernier bloc de la chaîne actuelle et de la détermination des mises à jour de la tête de chaîne, et du gestionnaire et éditeur de blocs, responsable de la création de nouveaux blocs candidats et de l'ajout de transactions valides à ceux-ci.
Fonctionnalités d'Hyperledger Sawtooth
Voici certaines des fonctionnalités uniques d'Hyperledger Sawtooth :
- Séparation entre le niveau application et le système de base
- Réseaux privés avec les fonctionnalités de permissionnement de sawtooth
- Exécution parallèle des transactions grâce au planificateur parallèle avancé
- Prise en charge de la création et de la diffusion d'événements
- Compatibilité des contrats intelligents Ethereum EVM avec Seth
- Consensus dynamique
- Familles de transactions d'exemple
Conclusion
Alors que l'adoption de la technologie blockchain continue de croître, des plateformes comme Hyperledger Fabric et Hyperledger Sawtooth jouent un rôle crucial en permettant aux organisations de construire des solutions blockchain sécurisées et évolutives. L'approche collaborative d'Hyperledger et son vaste réseau de membres contribuent au développement et à la normalisation des outils et réseaux blockchain. Grâce à leurs architectures modulaires, leurs mécanismes de consensus robustes et leur prise en charge des contrats intelligents, Hyperledger Fabric et Hyperledger Sawtooth offrent une base solide pour les organisations souhaitant tirer parti des avantages de la technologie blockchain. À mesure que le paysage blockchain évolue, Hyperledger reste à l'avant-garde, stimulant l'innovation et transformant les industries à travers le monde.
FAQ
Qu'est-ce qu'Hyperledger et quel est son objectif ?
Hyperledger est une plateforme blockchain d'entreprise mondiale qui fournit des infrastructures et des protocoles pour le développement d'outils et de réseaux blockchain, avec pour but de créer et de maintenir des réseaux blockchain open source destinés aux organisations.
Quelle est la différence entre Hyperledger Fabric et Hyperledger Sawtooth ?
Hyperledger Fabric est une plateforme modulaire conçue pour les entreprises privées, offrant une mise en œuvre flexible des contrats intelligents et une confidentialité des données. Hyperledger Sawtooth est une plateforme d'entreprise modulaire qui sépare la couche application du système noyau, en mettant l'accent sur la sécurité des contrats intelligents.
Comment Hyperledger Fabric garantit-il la confidentialité des données ?
Hyperledger Fabric prend en charge les membres autorisés, imposant les droits d'accès et fournissant un contrôle granulaire sur les points de données, ce qui le rend adapté à des secteurs tels que la finance et la santé.
Quel est le rôle de l'API REST dans Hyperledger Sawtooth ?
L'API REST dans Hyperledger Sawtooth fonctionne comme un processus distinct permettant aux clients d'interagir avec un validateur, facilitant la soumission de transactions et la lecture des blocs grâce à une interface conviviale.
Comment fonctionne le moteur de consensus dans Hyperledger Sawtooth ?
Le moteur de consensus dans Hyperledger Sawtooth fonctionne de manière indépendante et prend en charge des algorithmes de consensus indépendants du langage. Il comprend des processeurs tels que BlockPublisher, BlockVerifier et ForkResolver, permettant un mécanisme de consensus flexible et personnalisable.
Avis de non-responsabilité. Les informations fournies ne constituent pas des conseils en matière d'investissement. Cryptopolitan.com décline toute responsabilité pour les investissements réalisés sur la base des informations fournies sur cette page. Nous recommandons vivement une recherche indépendante et/ou une consultation avec un professionnel qualifié avant de prendre toute décision d'investissement.

Damilola Lawrence
Damilola Lawrence couvre les actualités des marchés cryptographiques et de la technologie depuis plus de 5 ans. Il a précédemment partagé des analyses et des perspectives sur la crypto pour TheShibMagazine, CryptoMode, Qweens Magazine et The Recording Academy avant de se tourner vers le Web3. Chez Cryptopolitan, il est spécialiste des prévisions de prix en crypto. Après avoir obtenu son licence, il a entamé un master en cybersécurité informatique à l'Université Maria Curie-Skłodowska.
















