Dans sa forme la plus simple, un oracle est géré par une entité unique chargée de collecter les données et de les soumettre sur la blockchain. Ce modèle, appelé oracle centralisé, consiste par exemple à ce qu’un protocole obtienne des données de prix directement auprès d’un serveur spécifique, lequel transmet ensuite régulièrement des mises à jour sur la blockchain.
Le principal avantage de cette structure réside dans l’efficacité et la gestion des coûts. Comme la source de données et la logique de mise à jour sont réunies dans un seul système, le développement et la maintenance sont moins complexes, ce qui permet des mises à jour de données à fréquence élevée. Ainsi, les oracles centralisés restent largement utilisés dans certains projets DeFi à un stade précoce ou dans des cas d’usage à faible risque.
Cependant, cette architecture présente des risques évidents. Si l’opérateur de l’oracle rencontre un problème ou si la source de données est attaquée, tout le système peut en être affecté. Les oracles centralisés sont généralement exposés aux risques suivants :
Par conséquent, dans les protocoles DeFi impliquant des montants importants, s’appuyer exclusivement sur une seule source de données est généralement considéré comme une conception à haut risque.
Pour atténuer les risques liés à la centralisation, de plus en plus de projets adoptent des réseaux d’oracles décentralisés. Dans cette architecture, les données ne proviennent plus d’un seul nœud mais de plusieurs nœuds indépendants participant à la collecte et à la publication des données.
Ces nœuds sont généralement exploités par des parties distinctes, chacune obtenant des informations à partir de ses propres sources de données et soumettant les résultats au système d’oracles. Ce modèle réduit la dépendance à un opérateur ou à une source unique, renforçant ainsi la sécurité globale du système.
En pratique, un réseau d’oracles décentralisé comprend généralement les rôles suivants :
Les nœuds collaborent conformément aux règles du protocole. Par exemple, le système peut exiger qu’un nombre minimum de nœuds soumettent des données avant de mettre à jour les prix sur la blockchain. Ce type de conception permet de limiter l’impact d’un comportement malveillant d’un nœud individuel sur l’ensemble du système.
Il convient toutefois de noter que les réseaux décentralisés génèrent aussi de nouveaux défis, tels que les coûts de coordination entre nœuds, la latence des données et la complexité accrue du réseau. Trouver le bon équilibre entre décentralisation et efficacité est un enjeu crucial dans la conception des systèmes d’oracles.
Dans les réseaux d’oracles décentralisés, une question centrale se pose : lorsque différents nœuds soumettent des données incohérentes, comment le système détermine-t-il le résultat final ?
Pour répondre à cette problématique, la plupart des systèmes d’oracles intègrent des mécanismes d’agrégation de données. Concrètement, les soumissions de plusieurs nœuds sont traitées statistiquement pour obtenir une valeur finale plus fiable. Les méthodes courantes consistent à calculer des moyennes ou des médianes.
Dans les systèmes opérationnels, le processus d’agrégation des données repose généralement sur plusieurs principes fondamentaux :
Ce modèle de validation multi-nœuds réduit fortement la probabilité de manipulation des données. Par exemple, si un nœud soumet un prix anormal, ses données sont souvent filtrées ou leur influence atténuée lors de l’agrégation.
Par ailleurs, certains systèmes d’oracles avancés combinent aussi des mécanismes de staking et des incitations économiques. Les nœuds doivent déposer un certain montant de tokens en garantie ; s’ils soumettent des données incorrectes, ils peuvent être sanctionnés. Ce dispositif utilise des incitations économiques pour encadrer le comportement des nœuds et renforcer la crédibilité du système.