Analyse approfondie : comment les Oracle Machines connectent les smart contracts au monde extérieur

robot
Création du résumé en cours

Analyse approfondie de la technologie Oracle Machine

Dans l'écosystème blockchain, l'Oracle Machine joue un rôle clé en reliant les contrats intelligents au monde extérieur. En tant qu'infrastructure, le système Oracle Machine peut fournir aux contrats intelligents sur la chaîne des informations et des données provenant de l'extérieur de la chaîne.

Oracle Machine détaillé série de Chainlink (partie 1)

Par exemple, supposons que nous déployions un contrat intelligent sur le réseau Ethereum qui nécessite d'obtenir des données sur le volume des transactions de pétrole brut pour une certaine date. Étant donné que le contrat intelligent lui-même ne peut pas accéder directement aux données du monde réel hors chaîne, il est nécessaire de recourir à une Oracle Machine pour réaliser cette fonction. Le processus spécifique est le suivant : le contrat intelligent écrit le volume des transactions de pétrole brut pour la date requise dans le journal des événements, puis un processus de surveillance hors chaîne est lancé pour s'abonner à cet événement. Une fois la demande pertinente détectée, ce processus appellera la méthode correspondante du contrat en soumettant une transaction sur la chaîne, transmettant ainsi les informations sur le volume des transactions de pétrole brut pour la date spécifiée au contrat intelligent.

Oracle Machine详解系列之 Chainlink(上)

Parmi de nombreux projets d'oracle, Chainlink occupe une position dominante sur le marché. En tant que solution d'oracle décentralisée, Chainlink s'efforce de fournir des données du monde réel à la blockchain de la manière la plus sécurisée possible. Il a construit un écosystème basé sur le principe fondamental des oracles, autour du token LINK, formant un cycle vertueux grâce à des incitations économiques. Le déclenchement de l'oracle Chainlink nécessite un transfert de token LINK, qui est un contrat ERC677 sur le réseau Ethereum. Les fonctions d'oracle réalisées avec le token LINK ERC677 appartiennent à un modèle de demande/réponse.

Oracle Machine详解系列之 Chainlink(上)

La norme ERC677 ajoute la méthode transferAndCall sur la base de l'ERC20, ce qui combine le paiement et la demande de service en un seul, répondant mieux aux besoins des scénarios d'affaires d'Oracle Machine. Lorsque l'utilisateur effectue un transfert avec transferAndCall, en plus de l'opération de transfert ERC20 habituelle, il vérifiera également si l'adresse de réception est une adresse de contrat. Si c'est le cas, la méthode onTokenTransfer de cette adresse sera appelée.

Oracle Machine détaillé série sur Chainlink (partie 1)

Lors du processus de demande de services d'Oracle Machine, le consommateur doit d'abord confirmer la fiabilité de l'Oracle Machine, car un paiement anticipé est nécessaire avant la fourniture du service. La méthode onTokenTransfer du contrat Oracle Machine effectue une série de vérifications de sécurité, y compris la validation du transfert pour s'assurer qu'il s'agit d'un jeton LINK, la vérification de la longueur des données pour éviter les dépassements, et la validation du sélecteur de fonction, etc. Après vérification, le contrat génère un requestId unique, fixe une date d'expiration et émet un événement OracleRequest contenant les données de la demande.

Oracle Machine détaillé série par Chainlink (partie 1)

Après avoir reçu la demande, le nœud hors chaîne répondra en appelant la méthode fulfillOracleRequest. Cette méthode effectuera une série de vérifications, y compris le contrôle des autorisations de l'appelant, la validation de la validité de la demande, etc. Une fois la validation effectuée, le nœud appellera la fonction de rappel du contrat du demandeur pour renvoyer les données à la partie demandeuse.

Oracle Machine详解系列之 Chainlink(上)

Pour les développeurs, s'ils ont seulement besoin d'utiliser les données de prix des paires de devises existantes, ils peuvent directement appeler l'interface Price Feed fournie par l'officiel. Chaque paire de trading a son propre Price Feed (, c'est-à-dire AggregatorProxy), qui propose plusieurs méthodes de requête, y compris decimals(), description(), version(), getRoundData() et latestRoundData(). Parmi celles-ci, le paramètre answer retourné par la méthode latestRoundData() correspond au dernier prix. Il est à noter que pour les paires de trading cotées en dollars, la précision est généralement uniformément fixée à 8 décimales.

Oracle Machine详解系列之 Chainlink(上)

Grâce à cela, les développeurs peuvent facilement obtenir et utiliser les données de prix en temps réel fournies par l'Oracle Machine sur la chaîne, sans avoir à gérer eux-mêmes des appels API complexes et des processus de validation des données.

Voir l'original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Récompense
  • 5
  • Partager
Commentaire
0/400
AlwaysAnonvip
· Il y a 10h
Il n'y a que l'alcool qui peut éclaircir certaines choses, qu'est-ce que Link comprend ?
Voir l'originalRépondre0
BearMarketGardenervip
· Il y a 11h
Ils copient encore les fonctionnalités de Chainlink..
Voir l'originalRépondre0
WalletAnxietyPatientvip
· Il y a 11h
link bull ah cette vague est stable
Voir l'originalRépondre0
NoodlesOrTokensvip
· Il y a 11h
link chaîne est invincible.
Voir l'originalRépondre0
SchroedingerAirdropvip
· Il y a 11h
链克真是yyds!一把 All in 它
Voir l'originalRépondre0
  • Épingler
Trader les cryptos partout et à tout moment
qrCode
Scan pour télécharger Gate app
Communauté
Français (Afrique)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)