Il y a la blockchain Bitcoin bien entendu, et son célèbre rival Ethereum. Si ces deux plateformes sont les plus connues, d’autres concurrents ont émergé ces derniers mois, proposant des alternatives sérieuses pour la conception des « smart contracts » : Waves, NEO, EOS our encore Stellar.
La technologie blockchain souffle cette année ses 10 premières bougies. De nombreux acteurs ont suivi le mouvement initié par Bitcoin et Ethereum offrant une multitude de solutions pour quiconque souhaite développer un projet ou une idée sur une base blockchain.
« A smart contract is a set of promises, specified in digital form, including protocols within which the parties perform on these promises » – Nick Szabo, 1996
Il est important de rappeler que le concept de « smart contracts » a été introduit par la blockchain Ethereum. Le « smart contract » est un contrat écrit en langage informatique, contrairement au contrat plus traditionnel rédigé dans un langage juridique. Autre singularité : les termes d’un « smart contract » sont respectés sur l’ensemble des nœuds de la blockchain, le rendant ainsi entièrement autonome.
Aperçu des plateformes de « smart contracts »
Il existe actuellement plus d’une vingtaine de plateformes de « smart contract ».
Parmi elles, certaines se distinguent plus que d’autres de par leurs aspects fonctionnels, techniques ou pratiques. Nous avons fait le choix – arbitraire ! – d’en présenter trois d’entre elles.
Ethereum : Le choix de la stabilité !
Ethereum est naturellement la plus célèbre des plateformes, puisque c’est elle qui a inventé le principe de « smart contracts ». Le jeune prodige Vitalik Buterin en est à l’origine. Depuis son lancement à l’été 2015, elle a rencontré un succès incontestable grâce notamment aux Ether, l’unité de compte associée à la Blockchain.
La vaste majorité des ICOs (Initial Coin Offering) utilisent d’ailleurs les tokens Ethereum. C’est aussi un autre avantage : il existe plusieurs variantes des tokens dont le célèbre ERC20 mais aussi de nombreuses autres possibilités intéressantes. Nous pensons par exemple à l’ERC721 dit « Non-Fungible Token » (token non fongible), illustrés avec les fameux CryptoKitties.
Stellar : Miser sur la rapidité
Stellar est une plateforme intéressante pour les projets qui ont besoin d’une haute rapidité de transactions. Par extension, elle est intéressante pour ceux qui ont des petits volumes d’échanges.
Concrètement, le temps moyen de confirmation d’une transaction est de 5 secondes, contre plusieurs minutes sur d’autres plateformes. De plus, le prix est infiniment plus bas et correspond à 0,00001 XLM (la « monnaie » de Stellar).
Enfin, outre le fait que les « smart contracts » peuvent être codés en langages connus (JavaScript, PHP, Python, etc.), la plateforme Stellar présente d’autres avantages (qu’elle partage avec d’autres plateformes) :
- Multi signature : plusieurs signatures obligatoires pour déverrouiller un « smart contract »;
- Batching : plusieurs opérations dans une transaction;
- Sequence : chaque transaction dispose d’un nombre séquencé;
- Time bounds : limitation d’une transaction dans le temps
Hyperledger Fabric
Projet à l’origine porté par la Linux Foundation, IBM l’a repris à son compte en 2016 sous le nom Hyperledger Fabric (HLF). Cette plateforme est clairement orientée pour répondre aux besoins des entreprises. Développée en langage Go, elle supporte ce langage qui assure un temps de compilation très rapide.
Sur HLF, on ne conçoit pas des « smart contracts » mais des « chaincodes » dont les trois fonctions clés permettent de créer et retrouver des asset, mais aussi retrouver l’historique des changements. Enfin, une dernière fonction supprimer (DelState) qui permet de supprimer une clé et sa valeur associée, sans pour autant altérer les blocs de la blockchain.