Blockchain et Hashgraph, qu’attendre de ces techniques de sécurisation des flux distribuées sur le cloud en matière de Supply Chain ? Nous pensons que ces outils encore cantonnés au suivi des transactions de Supply Chains linéaires vont évoluer pour garantir à terme des Supply Chains complexes.
L’intérêt des Blockchains est de suivre les étapes de certaines Supply Chains linéaires entre le fournisseur lointain et le consommateur, dans lesquelles on transforme une matière première (lait, viande, légumes) ou pour lesquelles le produit se déplace sans changer physiquement (distribution). Mais selon nous, pour des Supply Chains complexes – ou Supply Networks – (produit fini élaboré à partir de multiples composants dont on voudrait tracer l’origine), ces outils ne sont, pour l’instant, pas très adaptés.
Des transactions infalsifiables grâce aux mineurs …
Mais d’abord, de quoi s’agit-il ? Les blockchains sont de grands livres de compte répartis sur tout le réseau et strictement identiques à un instant donné (Distributed Ledgers). Ce sont des outils qui garantissent un enregistrement de transactions « non simultanées », « dans l’ordre », « de manière infalsifiable ». Prenons un exemple …
Albert transfère 100 unités monétaires de son compte à celui de Caroline à 11h00 le 25 Septembre. Il faut d’abord vérifier que cette transaction est possible, qu’Albert a bien 100 unités sur son compte et que cette transaction s’est produite avant qu’une autre ne l’empêche (par exemple, qu’il ait transféré ces 100 unités à un autre). Cette information est envoyée sur Internet à tous ceux qui sont inscrits sur le réseau (la plate-forme). En particulier, cette information arrive chez des ouvriers du réseau (les mineurs). Ils seront payés pour confirmer la transaction. Comme les autres, ils reçoivent la demande de transaction et disposent de toutes les transactions précédentes enchaînées les unes aux autres, dans l’ordre où elles ont été reçues et validées (la blockchain). Ils vont vérifier qu’Albert, qui a fourni son code (hash code) de la transaction précédente l’accréditant, a bien l’argent sur son compte. Ils vont créditer Caroline en débitant Albert (la transaction). Avant cela, il va falloir qu’ils résolvent un petit problème sur leur ordinateur. Cette dernière opération est nécessaire pour qu’ils n’envoient pas tous les informations en même temps. Le plus rapide gagne, constitue un bloc avec quelques transactions vérifiées, les code, et va accrocher le bloc à la chaîne historique lorsqu’elle aura été vérifiée par les autres mineurs. La blockchain est ainsi actualisée et transmise au réseau. Chaque bloc comporte le code du bloc précédent et fournit un code pour le bloc suivant. Ces informations empêcheront de falsifier la transaction a posteriori et permettront de visualiser l’historique des informations enregistrées.
… et au registre distribué
La remontée dans l’historique de la transaction fait l’intérêt de la blockchain pour la Supply Chain L’utilisateur peut remonter la chaîne jusqu’à l’origine du flux. À condition qu’il n’y ait qu’une seule origine pour ce flux. Si le produit analysé était fait de composants provenant de plusieurs origines, le système ne fonctionnerait pas. On ne peut pas, à notre connaissance, remonter plusieurs pistes à la fois avec ce système.
Il existe plusieurs versions de blockchains. L’important est que ce grand livre de compte est distribué partout dans le monde avec des blocs qui ont un numéro d’ordre. Ce qui le rend infalsifiable en pratique. Théoriquement, il faut qu’au moins 2/3 des mineurs aient approuvé la transaction. Ce pourcentage provient d’un théorème mathématique obtenu dans la résolution du très intéressant problème dit des généraux byzantins. Aucun général ne fait confiance à aucun autre général dans ce problème mais statistiquement il est presque totalement impossible que 1/3 des généraux félons se mettent d’accord avant l’attaque pour la faire échouer. Pour la blockchain, cela voudrait dire qu’au moins 1/3 des mineurs se mettent d’accord entre eux pour détourner les 100 unités d’Albert et les réorienter frauduleusement.
Un système sûr mais lent
Nous venons de décrire le mode de fonctionnement du bitcoin, la première blockchain « publique » active. Elle a quelques inconvénients. Elle est lente (3 transactions par seconde) alors que l’on s’achemine vers des besoins de milliers, voire des millions de transactions par seconde. Si vous achetez des bitcoins à un vendeur sur une place de marché sur Internet, ces bitcoins à votre nom de code sont insérés un par un dans un bloc avec leur origine. D’origine à origine, on arrive à remonter jusqu’à la source si on le souhaite, ce qui en fait un système sûr.
Ethereum est un autre système, inventé par Vitaly Buterin et bâti sur un principe proche de celui du bitcoin, avec un système de validation différent, nettement plus efficace en nombre de transactions par seconde, mais encore très limité. En plus, on peut insérer dans le système des « smart contracts » infalsifiables. Ces contrats sont des algorithmes qui se déclenchent sous certaines conditions, par exemple le règlement automatique des salaires en fin de mois. Ces salaires seront payés en « ethers ». Il existe beaucoup d’autres systèmes de ce genre mais Bitcoin et Ethereum ont la plus importante capitalisation de ces systèmes publics bâtis sur des livres de compte partagés entre de nombreux acteurs anonymes.
Des blockchains privées avec par un nombre réduit de garants
Il existe aussi des blockchains privées avec un nombre plus limité de personnes de confiance. Certaines ont été spécifiquement conçues pour la Supply Chain. IBM par exemple a bâti avec d’autres « Hyperledger ». Ce système est privé parce qu’à la différence des systèmes publics, il est garanti par un acteur central : IBM. Microsoft construit aussi le sien. Des Hongrois et des Vietnamiens ont inventé la blockchain et le réseau Te-Food qui garantit l’origine et le suivi d’œufs, de poulets et de porcs. Ce réseau a des points d’entrée dans de nombreux pays en développement qui veulent faire garantir l’origine de produits finis en traçant leurs matières premières. Par exemple, pour connaître l’histoire du produit frais qu’on vous a livré, vous scannez son QR code et faites apparaître les différentes informations enregistrées sur ce produit avant qu’il ne vous parvienne. Une fois ces informations enregistrées, elles deviennent inviolables parce que cryptées et consensuellement vérifiées. Toute tentative de modification à un endroit ou un autre se répercutera le long de la chaîne en signalant la tentative d’intrusion à tous les acteurs.
Le début des blockchains privées pour garantir des filières
Évidemment, il faut aussi garantir que les informations entrées dans le système sont correctes. Par exemple, pour le produit frais en question, vous voulez être sûr de la date à laquelle il a été transformé. Cette date apparaît dans le système avec le nom des organismes de confiance qui certifient que l’opération a bien eu lieu à cette date. Ces certifications peuvent aussi être faites par des machines qu’il aura fallu certifier à leur tour. Compliqué.
Il s’agit donc bien d’outils inviolables et de processus de validation de l’information. En fait des sociétés développent des Supply-Blockchains privées pour garantir des filières particulières : Te-Food, Bext360 pour le café ou Hyperledger Sawtooth d’IBM pour le poisson, par exemple. Ainsi Bext360 a développé des machines pour visionner et analyser le café en ligne à raison de 50 kg par minute, puis le certifier sur la blockchain. Évidemment il reste à certifier la machine.
Toutes ces blockchains et les processus afférents réduisent le coût des intermédiaires. Ils garantissent aussi la sécurité et la qualité. Ils en sont encore aux premiers balbutiements, aux premières expérimentations. Une association d’utilisateurs, dont IBM fait partie, a constitué une Blockchain pour la Supply Chain des plus abouties. IBM l’a testée avec Walmart sous le nom de Hyperledger à travers deux POC (Proof Of Concept) : une application pour garantir l’origine de mangues, l’autre pour retracer le parcours du porc jusqu’au rayon dans les magasins chinois de Walmart.
Hashgraph des milliers de fois plus rapide et plus sûr que la Blockchain
Mais émerge déjà une autre technologie plus aboutie, le Hashgraph, développée par Leemon Baird. Les transactions sont validées en quelques fractions de secondes et le système peut supporter des millions de transactions par seconde. Elle fonctionne sur un mode « asymétrique byzantin » qui garantit la sécurité du réseau, contrairement à la Blockchain, qui fonctionne en mode « byzantin symétrique » et pour lequel un risque de malveillance subsiste. Cette nouvelle technologie propage les transactions sur le même mode exponentiel que la rumeur, chaque ordinateur du réseau recevant puis propageant l’information au hasard vers d’autres ordinateurs, qui en la recevant la répercutent de la même manière. Ceci évite la malveillance. Une fois la transaction disséminée dans le réseau, chacun reçoit l’histoire de sa propagation, ce qui permet de bien dater les transactions et de vérifier dans quel ordre elles ont lieu. Il n’y a plus besoin de blocs qu’on accroche les uns aux autres. Mais le système peut suivre une chaîne de transactions. Il est aussi possible de programmer des algorithmes pour déclencher des transactions et d’attacher des fichiers à des transactions. Il réalise a minima ce que fait la Blockchain, mais des milliers de fois plus vite et avec plus de sécurité. Cette technologie est également prometteuse pour les Supply Networks, puisqu’elle devrait, avec un peu d’astuce, pouvoir repérer l’origine de tous les composants d’un produit.
Blockchains, hashgraphs, on n’en est qu’aux balbutiements de ces techniques prometteuses distribuées sur le cloud pour sécuriser nos flux.