Il n’est pas rare d’entendre le mot » oracle » dans l’écosystème des crypto-monnaies, surtout depuis l’avènement de la DeFi (finance décentralisée) et des applications connexes. Mais comment un oracle est-il utilisé dans un système décentralisé tel que la blockchain ? Quel est l’objectif de son utilisation ? Découvrez dans cet article à quel point un oracle crypto peut être utile.
Qu’est-ce qu’un oracle crypto ?
Au sein de la technologie blockchain, un oracle crypto est une source d’information qui permet d’intégrer des variables du monde réel dans les contrats intelligents. En effet, la blockchain n’est pas capable de collecter des données qui proviennent de l’extérieur (monde extérieur). En effet, le contenu externe devra se faire télécharger sur le bloc par une autre personne.
Les smartcontrats sont des accords qui ne s’exécutent que si certaines conditions prédéfinies sont remplies. Cela permet à des événements tels que des transferts de valeur de se produire sur la blockchain. L’oracle crypto est chargé de fournir des données externes pour activer ou désactiver le fonctionnement des dApps (applications décentralisées) par l’exécution de contrats intelligents.
Quel est le but de l’oracle crypto ?
Les oracles permettent d’ajouter des données externes au réseau de la blockchain. Ces données comprennent les températures, les résultats sportifs, les retards de vols ; et d’autres services tiers qui permettent de fournir de grandes quantités de données.
Les oracles font office d’autorité et de vérité. Grâce aux informations que fournit l’oracle crypto, on peut déterminer si les contrats intelligents sont déclenchables ou non. Il ne faut pas oublier que la blockchain n’a pas accès aux données que l’on stocke en dehors de son réseau.
Quels sont les différents types d’oracle crypto ?
Les oracles de blockchain peuvent être classés en fonction de plusieurs caractéristiques. Il s’agit de :
- La source : les données proviennent-elles de dispositifs logiciels ou matériels ;
- La direction de l’information : elle peut être entrante ou sortante ;
- Et de la confiance : centralisée ou décentralisée.
Un même oracle peut appartenir à plusieurs de ces catégories. Par exemple, un oracle qui fournit des informations à partir du site Web d’une entreprise est un oracle logiciel entrant centralisé.
Les oracles logiciels
Un oracle crypto logiciel interagit avec les sources d’information en ligne et les réinjecte dans la blockchain. Ces informations peuvent provenir essentiellement de n’importe quelle source de données sur le Web, y compris des bases de données en ligne, des serveurs et des sites Web.
Le fait que l’oracle logiciel soit connecté à l’Internet lui permet d’alimenter en informations les smartcontrats. Cela lui permet aussi de transmettre ces informations en temps réel. C’est pour cela qu’il est l’un des types d’oracle crypto les plus courants de la blockchain.
Les informations fournies par les oracles logiciels comprennent les taux de change, les prix des actifs numériques et les informations sur les vols en temps réel.
Les oracles matériels
Certains contrats intelligents nécessitent une interface avec le monde réel. Les oracles matériels sont conçus pour prendre des informations du monde physique. Ils les mettent ensuite à la disposition des contrats intelligents. Ces informations peuvent être transmises par des capteurs électroniques, des lecteurs de codes à barres et d’autres dispositifs de lecture d’informations.
Enfin, les oracles matériels traduisent essentiellement les événements du monde réel en valeurs que les contrats intelligents peuvent comprendre.
Les oracles d’entrée et de sortie
Les oracles d’entrée transmettent des informations de l’extérieur vers le contrat intelligent, tandis que les oracles de sortie envoient des informations du contrat intelligent vers l’extérieur.
Comme exemple, un oracle d’entrée va indiquer au contrat intelligent la température mesurée par un certain capteur. En revanche, un oracle de sortie pourrait être une serrure intelligente. Lorsque de l’argent est déposé à une adresse, le smartcontract envoie cette information au mécanisme qui déverrouille le smart lock via l’oracle de sortie.
Les oracles centralisés et décentralisés
Les oracles centralisés sont contrôlés par une seule entité et constituent la seule source d’information sur les contrats intelligents. Il existe des risques liés à l’utilisation d’une source d’information unique, où la validité du contrat dépend entièrement de l’entité qui contrôle l’oracle crypto. En outre, les interférences malveillantes de mauvais acteurs peuvent affecter directement les contrats intelligents. Le principal problème des oracles centralisés est l’existence d’un point de défaillance unique, ce qui rend les contrats plus vulnérables et moins résistants aux attaques.
Les oracles décentralisés, comme les blockchains publiques, visent à éviter le risque de contrepartie. En ne s’appuyant pas sur une source unique, la fiabilité des informations fournies au contrat intelligent peut être améliorée. Les contrats intelligents interrogent plusieurs oracles pour déterminer la validité et l’exactitude des données. Pour cette raison, les oracles décentralisés sont également appelés oracles de consensus.
Certains projets de blockchain fournissent des services d’oracle crypto distribué à d’autres blockchains. Les oracles décentralisés sont également utiles dans les marchés de prédiction, où la validité d’un résultat peut être vérifiée par consensus social.
Bien que les oracles distribués visent à rendre la confiance inutile, il est important de noter que, tout comme les réseaux blockchain ne nécessitent pas de confiance entre les participants, les oracles distribués n’éliminent pas complètement le besoin de confiance, mais le répartissent entre de nombreux participants.
Les oracles spécifiques aux contrats
Les oracles spécifiques à un contrat sont conçus pour être utilisés dans un seul contrat intelligent. Cela signifie que si l’on veut déployer plusieurs contrats intelligents, il faut développer un nombre correspondant d’oracles spécifiques aux contrats.
Ce type d’oracle est considéré comme très long et coûteux à maintenir. Pour les entreprises qui souhaitent extraire des données de différentes sources, cette approche peut s’avérer peu pratique. Les oracles spécifiques aux contrats, en revanche, peuvent être conçus de toutes pièces pour répondre à des cas d’utilisation spécifiques, ce qui donne aux développeurs la souplesse nécessaire pour les adapter à leurs besoins particuliers.
Les oracles humains
L’oracle peut également être une personne ayant une expertise dans un domaine particulier. Il peut rechercher et vérifier des informations provenant de diverses sources et convertir ces informations en contrats intelligents. Comme les oracles humains peuvent être identifiés par cryptographie, la probabilité qu’un fraudeur falsifie son identité et fournisse des données frauduleuses est relativement faible.
Comment les informations sont-elles communiquées à l’oracle ?
Il existe deux méthodes principales pour transmettre les informations à un oracle crypto. L’une d’elle est entièrement informatisée et l’autre passe par une personne.
La première méthode est le cas d’école, où les données informatiques sont transmises directement au contrat intelligent. Il peut s’agir de prédire le prix d’une crypto-monnaie sur le marché. L’oracle crypto de la blockchain recevrait des informations de 15 sites de commerce en ligne. Les utilisateurs disposent ainsi d’informations fiables sur lesquelles ils peuvent parier sur la réalisation d’événements futurs.
Un autre exemple est une police d’assurance contre les dommages causés par les tempêtes. L’oracle de la blockchain reçoit les données publiques des sites météorologiques nationaux. De plus, il permet à d’autres smartcontracts d’exécuter des paiements en cas d’événement météorologique dommageable.
La deuxième approche est plus proche de l’idée originale d’un oracle et du concept d’autorité inhérent à un oracle crypto. Logiquement, il devrait s’agir d’une autorité connue et digne de confiance, comme un notaire. Prenons l’exemple d’un contrat de vente. Le notaire envoie le contrat à l’oracle de la blockchain, qui effectue automatiquement le paiement à une date prédéterminée.
Les informations fournies par l’oracle crypto sont-elles fiables ?
Plus le projet d’exploitation de l’oracle est actif, plus les acteurs fournissent des informations et plus celles-ci deviennent fiables. Cependant, il y a toujours un risque que les données obtenues ne soient pas factuelles si vous souhaitez obtenir des informations qui sortent de l’ordinaire.
Pour résoudre ce problème et faire en sorte que les informations soient aussi réalistes que possible, certains oracles crypto ont mis au point un système de classement de la fiabilité des messagers. S’ils fournissent régulièrement de bonnes informations, ils acquièrent une réputation et sont plus susceptibles d’être choisis comme fournisseurs de données. Il aura également plus de poids dans le résultat moyen final.
En revanche, si l’oracle fournissait de mauvaises informations, il pourrait être pénalisé, moins récompensé, se voir accorder moins de poids, voire être totalement exclu du chaînage. Ce faisant, il garantit que les joueurs honnêtes sont mieux récompensés et que les mauvaises personnes sont exclues du système.
Si l’information recherchée n’est pas fournie par de nombreux oracles, elle peut être moins fiable. Cependant, comme les chaînistes ont tendance à demander ces nouvelles informations à des oracles déjà réputés, ils peuvent presque toujours obtenir des données exactes, même si presque personne d’autre n’a demandé ces informations.
Les caractéristiques d’un oracle crypto
Un oracle crypto présente plusieurs caractéristiques. On peut citer entre autres : la confidentialité, la connectivité et la monétisation.
L’oracle ne peut pas savoir si un contrat intelligent a été lancé et si ses informations ont été incorporées dans la blockchain. Par conséquent, un protocole est utilisé pour mélanger les informations fournies par l’oracle avant de les inclure dans la chaîne. Ainsi, l’identité de l’utilisateur est gardée secrète et n’est pas fouillée.
Par ailleurs, l’oracle crypto permet aux contrats intelligents d’être connectés hors chaîne à des fournisseurs de données, à des API Web, à l’IdO, à des systèmes de paiement, à des backends d’entreprise et à d’autres blockchains.
Les oracles tirent des informations de services centralisés de confiance. Ils doivent donc vérifier que les données envoyées par ce service sont correctes. Et ce problème n’a pas été éradiqué, même si une solution est mise en œuvre pour atténuer ce fait.
Enfin, l’oracle crypto n’est pas monétisé de manière raisonnable. Il est donc nécessaire d’offrir une certaine incitation ou récompense aux opérateurs pour l’adoption massive de ce type d’outil.
Fiabilité et sécurité
Pour faire confiance à un oracle crypto, vous ne devez pas choisir une seule source de données. Si cette source est erronée, imaginez que la source de données est erronée. Alors, la blockchain serait également basée sur des données erronées.
Il est préférable de sélectionner plusieurs oracles et de faire en sorte que ces sources se recoupent les unes les autres. Les informations rapportées par le nombre maximum d’oracles sont sélectionnées et ajoutées à la blockchain. Vous devez ensuite choisir les oracles à prendre en compte lors de la création du contrat intelligent.
Par exemple, si vous demandez à un oracle d’intégrer les résultats d’un match de football dans la blockchain, vous devrez obtenir les informations de 30 sites Web fiables dans le secteur de l’actualité sportive. Il est également important de s’assurer que ces données sont sécurisées et fiables. C’est très important, car si une erreur se produit, même si les données sont fausses, il est impossible de revenir en arrière après l’exécution du contrat.
L’oracle, un élément essentiel pour le bon fonctionnement des DApps de la DeFi
Avec l’avènement des contrats intelligents, les développeurs ont rapidement reconnu la nécessité de mettre en œuvre des oracles pour surmonter les limites techniques posées par la blockchain. Ces éléments sont essentiels au bon fonctionnement et à l’utilisation de la finance décentralisée.
Par exemple, elle permet de fixer un prix commun pour tous les acteurs, alors que l’API de tarification fluctue d’un site à l’autre. L’oracle crypto prend les données de toutes les API et les publie sur différentes blockchains.
Il se compose généralement d’un contrat intelligent et d’un élément hors chaîne qui peut interroger l’API d’un site et mettre à jour le contrat.
Les vulnérabilités potentielles de l’oracle crypto
Comme mentionné ci-dessus, les oracles peuvent agir comme une source d’information fiable, en particulier des sources de vérité sur la blockchain. Comme ils sont importants, ils constituent des cibles potentielles pour les acteurs malveillants.
Si vous utilisez un oracle pour fournir des informations, il est important de vérifier où il est utilisé ; le nombre de sources ; surtout s’il s’agit d’informations sensibles. Plus les sources sont diverses, variées et réputées, plus l’oracle sera fiable.
Si l’oracle ne se réfère qu’à une seule source, il peut être manipulé ou être victime d’erreurs et perdre alors qu’il a réellement gagné. N’oubliez pas qu’une fois qu’une transaction a été transmise à la blockchain, elle ne peut plus être modifiée. C’est cette immuabilité de la blockchain qui rend impossible la correction des erreurs une fois qu’elles se sont produites.
Pour aller plus loin, je vous invite à suivre cette vidéo sur YouTube :