RICM5 2018 2019 - UGAChain - Hyperledger Architecture

= Vue d'ensemble de Hyperledger =

Hyperledger est une plateforme open source de développement de blockchain. Ce projet a été initié en décembre 2015 par la fondation Linux. Le développement s'y fait essentiellement en langage Go. Elle regroupe différents frameworks permettant de développer des contrats intelligents ou des applications décentralisées dans la blockchain, à destination des entreprises.

Références : https://fr.wikipedia.org/wiki/Hyperledger

Hyperledger est un projet "umbrella". Tous les projets Hyperledger sont conçus suivant une approche modulaire et extensible. Ils fournissent interopérabilité, des solutions sécurisés, une approche token-agnostique (qui fonctionne peu importe le token utilisé), sans cryptomonnaie native, avec une facilité d'utilisation.

Hyperledger introduit les business composants suivants :
 * Consensus Layer : responsable de générer un accord sur la validité d'un ensemble des transactions qui constituent un block.


 * Smart Contract Layer : responsable de traiter les requêtes et de déterminer si les transactions sont valides en exécutant une logique business.


 * Communication Layer : responsable du transport de message (peer-to-peer) entre les nœuds participants à une ledger instance partagée.


 * Data Store Abstraction : permet à différents magasins de données d'être utilisés par d'autres modules.


 * Crypto Abstraction : permet de changer les algorithmes de cryptographie et les modules sans affecter les autres modules.


 * Identity Services : permet l'établissement d'une root of trust durant l'installation d'une instance Blockchain, l'inscription et l'enregistrement d'entités ou d'entités système durant une opération réseau, et la gestion de changements comme : drops, adds, et revocations. Ce composant fournit aussi les services d'authentification et d'autorisation.


 * Policy Services : responsable de gérer les différentes politiques spécifiées dans un système telles que la politique d'approbation, la politique de consensus, ou la politique de gestion de groupe. Ce composant interface et dépend d'autres modules pour appliquer les différentes politiques.


 * APIs : permet aux clients et applications d'interagir avec les blockchains.


 * Interoperation : supporte l’interfonctionnement des différentes instances de blockchain.

Références : https://www.hyperledger.org/wp-content/uploads/2018/04/Hyperledger_Arch_WG_Paper_2_SmartContracts.pdf