Ethereum et finance décentralisée : le problème des oracles
La finance décentralisée promet depuis plusieurs années une décentralisation totale des services bancaires grâce à l’utilisation de blockchains et principalement de smart contracts. Malheureusement, peu de projets peuvent se vanter d’être entièrement décentralisés. La plupart des smart contracts utilisés dans la DeFi requièrent l’emploi d’un service tiers, à travers les oracles.
Les oracles
Les oracles sont des programmes informatiques qui permettent aux smart contracts de récupérer des valeurs externes à la blockchain. En effet, il est impossible pour une blockchain – WEB 3.0 – de se connecter au reste du web – WEB 2.0 – afin d’y récupérer des données.
Par exemple, un oracle sera utilisé dans le cadre d’une application de pari sportif décentralisée, pour récupérer le résultat d’un match et permettre au smart contract de distribuer les récompenses aux vainqueurs.
Le problème des oracles
Comme nous l’avons vu au cours des derniers mois, le système d’oracle, bien que censé être une source fiable, a été la cause de larges pertes sur le réseau Ethereum.
Que ce soit à travers le jeudi noir de MakerDAO, le bug de Chainlink ou les hacks de bZx, tous ces événements ont eu lieu à cause d’un mauvais fonctionnement du côté des oracles.
Comme la blockchain n’a pas de possibilité de vérifier les données fournies par un oracle, les conséquences peuvent être désastreuses. Pour reprendre notre exemple de paris sportifs, si l’oracle communique le mauvais vainqueur d’un match, le smart contract enverra les fonds aux mauvaises adresses. Une action irréversible du fait de la nature des blockchains.
Ce problème des oracles pourrait bien s’empirer, suite à la publication de nouvelles directives par le Conseil de stabilité concernant les stablecoins. Dans ce cas, les oracles pourraient devenir une cible de choix pour les régulateurs, du fait de leur nature centralisée.
Quelles solutions ?
Si le problème réside du côté des oracles centralisés, leur décentralisation pourrait faire partie des solutions.
« S’il y a un interrupteur d’arrêt, il y a probablement une entité réglementée quelque part. Aujourd’hui encore, la vraie DeFi est un rêve. Décentraliser la fonction d’oracle, si possible, pour éliminer cet interrupteur, contribuera grandement à la réalisation du rêve de DeFi » a déclaré Bill Barhydt, CEO de Abra, au crypto-média LongHash.
De nombreux projets travaillent actuellement à la résolution de ce problème. Chainlink, Augur, iExec, pour ne citer qu’eux, se concentrent tous trois sur la création d’oracles décentralisés.
Mais comme nous l’avons vu lors du bug de l’oracle qui a causé l’inversion du cours de l’or et l’argent sur Chainlink, ces solutions ne sont pas parfaites.
1/ We're in the process of helping @bzxHQ solve this pricing data manipulation issue for the long-term by using our decentralized oracle network's price reference data; https://t.co/ylbngGisYO providing both a decentralized oracle mechanism and multiple quality data aggregators. https://t.co/O8WrGrcGlU
— Sergey Nazarov (@SergeyNazarov) February 18, 2020
Une autre solution réside dans l’utilisation d’oracles centralisés, mais contrôlés par des entités suffisamment imposantes pour faire autorité. C’est le cas de Coinbase, qui a annoncé le lancement de son oracle pour sécuriser un peu plus la finance décentralisée. Mais un tel choix réduit évidemment la décentralisation.
Le problème des oracles est largement sous-estimé par l’ensemble de la communauté. Malgré les bourdes à répétition, aucune solution durable n’a pour le moment été trouvée. Espérons que les projets comme Chainlink ou Augur sauront nous apporter une solution décentralisée.
Image : Wit Olszewski/Shutterstock.com