Sous le nom d'Hyperledger Composer, un outil de collaboration pour créer des réseaux métiers autour de la blockchain vient d’entrer en incubation au sein du comité de pilotage technique de la fondation Linux. Il doit contribuer à accélérer le développement de contrats, couramment appelés smart contracts, pouvant être exécutés de façon automatisée à travers un « grand livre » distribué, à partir de conditions pré-définies. Si les développements réalisés jusqu’à présent sur Composer ont été faits au-dessus du projet Hyperledger Fabric de la fondation Linux, cette dernière précise que l’outil a été conçu pour pouvoir être porté et exécutée sur d’autres technologies distribuées telles qu’Hyperledger Iroha ou Sawtooth.
Tous les réseaux blockchain partagent un certain nombre d’éléments (actifs, participants, identités, transactions, registres), mais avec les technologies existantes, il peut être difficile de transcrire un cas d’usage en code. L’objectif du nouveau projet consiste donc à accélérer le développement de réseaux métiers construits sur la blockchain, de la même façon que le développement de logiciels a pu être accéléré par la mise à disposition d’outils de modélisation, explique la fondation dans un billet. Composer se présente sous la forme d'un langage basé sur JavaScript complété d’API Rest permettant à des développeurs, ainsi qu’à des non-développeurs, de modéliser un réseau métier. Le langage est simple, pointe la fondation. Il utilise des mots-clés métiers (actifs, participants…) qui le rendent compréhensible à ceux qui ne sont pas développeurs et il supporte également la modélisation des relations et des règles de validation des données.
Un projet suivi notamment par une équipe d'IBM
JavaScript a été choisi pour le projet parce qu’il évolue rapidement, qu’il est utilisé par des millions de développeurs à travers le monde et qu’il permet d’exécuter le code dans n’importe quel environnement supportant JavaScript. Sur Composer, le contrôle des accès déclaratifs passe par des listes qui permettent de décrire quelles sont les ressources auxquelles les participants peuvent accéder. Ce contrôle d’accès est renforcé par le runtime. S’y ajoutent des API client et administrateur, de même qu’une interface de commande à travers laquelle développeurs et opérateurs pourront déployer et interagir avec les réseaux métiers à partir d’applications Node.js ou de scripts d’automatisation. Le projet comporte aussi un environnement web pour apprendre le langage, modéliser des réseaux et les tester à travers un navigateur, en mode déconnecté en simulant un réseau, ou en mode connecté à travers un réseau.
Du côté des API, un connecteur LoopBack servira à exposer un réseau sous la forme d’une API Rest qui pourra être consommé par des applications clientes. Du côté des outils de mise en évidence de la syntaxe, Hyperledger Composer supporte deux éditeurs open source très utilisés, Atom et VS Code et il est prévu de lui inclure par la suite des capacités de test et de débogage. Enfin, la génération d’application passe par le framework Yoman. Pour démarrer, les développeurs d’applications client peuvent rapidement générer une ébauche Angular 2 ou une interface en ligne de commande qui leur permettra de se focaliser sur l’expérience utilisateur plutôt que sur les interactions au sein du réseau métier, indique encore la Fondation Linux dans sa présentation du projet. Ce dernier sera notamment suivi par Simon Stone, Daniel Selman et Kathryn Harrison d’IBM, ainsi que par Cong Tang et d’autres personnes de la start-up Oxchains, est-il précisé.
Rallier d'autres frameworks DLT autour de Composer
Initialement dénommé Fabric Composer, le projet a été simplement renommé Composer pour encourager les autres frameworks DLT (distributed ledger technology) à le supporter. Cela dit, avertit la fondation, il est possible que le terme Fabric Composer figure encore quelques temps dans la documentation et le code source. Parmi les concurrents du projet Hyperledger de la fondation Linux, on trouve Iroha et Sawtooth pour lequel Intel a proposé l’an dernier sa version, Sawtooth Lake, une plateforme modulaire pour bâtir, déployer et exécuter des grands livres distribués et qu’il a soumis au projet blockchain Hyperledger. Il existe aussi Burrow, un système de contrat automatisé qui fait partie de la spécification Ethereum Virtual Machine, de la plateforme d'applications blockchain Ethereum.
Selon Brian Behlendorf, directeur exécutif d’Hyperledger, le projet Composer apportera aux développeurs une façon d’élaborer des smart contracts pour différents secteurs d’activité en partageant les composants d’Iroha, de Sawtooth, de Burrow et de Fabric. Cela pourra permettre, par exemple, d’automatiser des contrats entre des compagnies d’assurance et leurs bénéficiaires, contrats susceptibles d'activer potentiellement un nombre important de processus métiers.
IBM et Maersk travaillent sur le suivi de conteneurs
Un autre exemple de smart contract pourrait s’appliquer au transport de containers à travers le monde par rail ou par mer. Selon Brian Behlendorf, le coût de l’actuel système papier utilisé pour suivre ces expéditions de marchandises peut parfois atteindre la moitié du coût total du transport. « Si vous pouvez automatiser une partie des processus de documentation, vous pouvez réduire nombre de ces coûts (…) », pointe-t-il. Par exemple, IBM et l'armateur Maersk, le plus important opérateur de transport de conteneurs dans le monde, ont récemment annoncé qu’ils travaillaient ensemble sur une solution blockchain qui aidera à tracer les documents papiers associés aux dizaines de millions de conteneurs transportés. En numérisant de bout en bout cette chaîne logistique, ils comptent améliorer la transparence et le partage hautement sécurisé d’informations entre les partenaires commerciaux.
Les smart contracts pourront aussi servir à automatiser le suivi de données de santé pour qu’il soit possible, à chaque étape du parcours santé, de confirmer l’accord du patient lorsque des informations sensibles sont susceptibles d’être partagées entre différents intervenants. Il y a différentes mises en œuvre des smart contracts avec chacun des 4 frameworks existants, rappelle Brian Behlendorf qui estime que Composer apporte le potentiel pour les associer.